Author of Software Maintenance Management and SQA books, Dr. April is an associate professor at the Software Engineering and IT department at ÉTS Engineering University (Montréal, Canada). His research interests are in small software maintenance (see http://www.s3m.ca), BPM, Cloud Computing and SQA. Dr. April has worked in Banking and Telecommunications industries for more than twenty five years. He is contributing to the IEEE-Computer Society SWEBOK and many ISO committee (ISO9126 and SC38 on Cloud Computing). He is also actively involved as chair of the plagiarism and misconduct committee at the IEEE Computer Society in the USA. Dr April is also proud to be the president of the Rosemere Curling Club (www.curlingrosemere.com).
Abstract: Written by experts in this area, Software Maintenance Management explores the domain of software maintenance in depth and describes the critical overlaps with software development. It presents a new way of capturing the uniqueness of software maintenance activities in a model-based process improvement approach. The focus of this book is, therefore, on the uniqueness of software maintenance activities, on how to assess the software maintenance using the Software Maintenance Maturity Model (S3m model) and how to figure out improvement paths.
Abstract: Cloud Computing is an emerging technology for processing and storing very large amounts of data. Sometimes anomalies
and defects affect part of the cloud infrastructure, resulting in a performance degradation of the cloud. This paper
proposes a performance measurement framework for Cloud Computing systems, which integrates software quality
concepts from ISO 25010.
Abstract: For the software industry, legal risk management is a growing concern. In some cases it can be a serious threat to the commercial and financial success of software systems. Software engineers cannot find guidance on legal assurance, as it is not covered in the software best practice frameworks and international standards. Project Management standards, such as the Project Management Instituteâs PMBOK (Project Management Body of Knowledge), the Maturity models (MM) such as the CMMI and ISO/IEC 15504 and the international standards such as ISO/IEC 12207 do not currently offer explicit guidance for software engineers on the topic of legal assurance. This paper proposes extensions to the current international standards life-cycle processes and maturity models to add legal management processes targeted to provide guidance for the management of the legal risks associated with systems and software. A case study using these extensions is also presented. Our findings indicate that a formalized legal management process is a suitable way for helping companies in mitigating, diminishing or avoiding legal risks in software development projects.
Abstract: ISO 14143-1 specifies that a functional size measurement (FSM) method must provide measurement procedures to quantify the functional user requirements (FURs) of software. Such quantitative information, functional size, is typically used, for instance, in software estimation. One of the international standards for FSM is the COSMIC FSM method â ISO 19761â which was designed to be applied both to the business application (BA) software domain and to the real-time software domain. A recurrent problem in FSM is the availability and quality of the inputs required for measurement purposes; that is, well documented FURs. Business process (BP) models, as they are commonly used to gather requirements from the early stages of a project, could be a valuable source of information for FSM. In a previous article, the feasibility of such an approach for the BA domain was analyzed using the Qualigram BP modeling notation. This paper complements that work by: 1) analyzing the use of BPMN for FSM in the BA domain; 2) presenting notation-independent guidelines for the BA domain; and 3) analyzing the possibility of using BP models to perform FSM in the real-time domain. The measurement results obtained from BP models are compared with those of previous FSM case studies.
Abstract: A number of important tasks in software maintenance require up-to-date requirements traceability matrix (RTM), change impact analysis, determination of test cases to execute for regression testing, etc. The generation and maintenance of RTMs are tedious and error-prone and they are hence often not done. In this paper we present Requirements TRacing On-target (RETRO) a special purpose requirements tracing tool. We discuss how RETRO automates the generation of RTMs and present the results of a study comparing manual RTM generation to RTM generation using RETRO. The study showed that RETRO found significantly more correct links than manual tracing and took one third of the time to do so.
Abstract: At a time when software quality is increasingly becoming a subject of concern, and process approaches are maturing and gaining acceptance in companies, the use of International Organization for Standardization (ISO) systems and software engineering standards remains limited to a few of the most popular ones. However, these standards were not written for enterprises with fewer than 25 employees in mind. As they are difficult to apply in such settings, a new international standardization project has been mandated to address some of those difficulties by developing profiles and by providing guidance for compliance with ISO software engineering standards in very small enterprises (VSEs). A survey was conducted to ask very small enterprises about their utilization of ISO/IEC JTC 1/SC7 information technology (IT) standards and to collect data to identify problems and potential solutions to help them apply standards.
Abstract: In this first part of this paper ? on obtaining better service levels from CMMS suppliers ? help is offered in identifying Service Level Agreement conditions which will push CMMS suppliers (whether in-house or under contract) to be more responsive when a failure occurs in their software. In Part 2 (to be published in the next issue) guidance will be offered indefining Service Level Agreement clauses aimed at ensuring better management of the supplierÂs product and acceleration of the rate of enhancements to it.
Abstract: At a time when software quality is increasingly becoming a subject of concern, and process approaches are maturing and gaining acceptance in companies, the use of ISO systems and software engineering standards remains limited to a few of the most popular ones. However, these standards were not written for enterprises with fewer than 25 employees in mind. As they are difficult to apply in such settings, a new international standardization project has been mandated to address some of those difficulties by developing profiles and by providing guidance for compliance with ISO software engineering standards in very small enterprises. A survey was conducted to ask very small enterprises about their utilizationof ISO/IEC JTC 1/SC7 IT standards and to collect data to identify problems and potential solutions to help them apply standards.
Abstract: Many important factors are involved in the successful operation, support and maintenance of CMMS software. In Part 1 of this paper (published in the last issue), on obtaining betterservice levels from CMMS suppliers, help was offered in identifying Service Level Agreement (SLA) conditions which will constrain a CMMS supplier (whether internal or external to the organisation) to be more responsive when a failure occurs in their software. Here, in Part 2, the complexity of the Service Level Agreement architecture is explained, as well as the process that needs to be in place for a successful implementation of an SLA.
Abstract: In Europe, 85% of IT sector companies have between 1 and 10 employees [1]. A survey of the Montr.al area in Canada has revealed that close to 80% of companies that develop software have fewer than 25 employees, as illustrated in Table 1 [2]. Over 50% have fewer than 10 employees. There is a need to help these organizations, which are defined as very small enterprises (VSEs), to understand and use the concepts, processes and practices proposed by the ISOÃs international software engineering standards.
Abstract: Software accounts now for a increasing share of the content of modern equipments and tools, and must similarly be maintained to ensure its continuous operational efficiency. Although the maintenance of the equipments is discussed extensively, very little is published about software maintenance and how it affects us. This paper presents an overview of key topics of software engineering maintenance.
Abstract: Software accounts now for a increasing share of the content of modern equipments and tools, and must similarly be maintained to ensure its continuous operational efficiency. Although the maintenance of the equipments is discussed extensively, very little is published about software maintenance and how it affects us. This paper presents an overview of key topics of software engineering maintenance.
Abstract: A controlled experiment was conducted comparing information retrieval using a Galois lattice structure with two more conventional retrieval methods: navigating in a manually built hierarchical classification and Boolean querying with index terms. No significant performance difference was found between Boolean querying and the Galois lattice retrieval method for subject searching with the three measures used for the experiment: user searching time, recall and precision. However, hierarchical classification retrieval did show significantly lower recall compared to the two other methods. This experiment suggests that retrieval using a Galois lattice structure may be an attractive alternative since it combines a good performance for subject searching along with browsing potential.
Abstract: This chapter is the updated version of the Software Maintenance generally accepted knowledge to be used as a consistent view of this software engineering topic worldwide. It characterize the content of this discipline. Once in operation, anomalies are uncovered, operating environment change, and new user requirements surface. The maintenance phase of the life cycle commences upon delivery, but maintenance activities occur much earlier. The Software Maintenance Knowledge Area is divided into four subareas. The first one presents Software Maintenance Fundamentals. The second subarea groups together the Key Issues in Software Maintenance. The third subarea describes that Maintenance Process. Techniques for Maintenance constitute the fourth subarea.
Abstract: This chapter is the updated version of the Software Configuration Management (SCM) generally accepted knowledge to be used as a consistent view of this software engineering topic worldwide. It characterize the content of this discipline. Software Configuration Management is the discipline of identifying the configuration of software at distinct points in time for the purpose of systematically controlling changes to the configuration and of maintaining the integrity and traceability of the configuration throughout the system life cycle. This Knowledge Area contains six subareas: The first subarea is Management of the SCM process. The second is Software Configuration Identification. The third subarea is Software Configuration Control. Software Configuration Status follow as the fourth subarea. The fifth subarea is Software Configuration Auditing. The last subarea is Software Release Management.
Abstract: In the Guide to the Software Engineering Body of Knowledge (SWEBOK Guide), the measurement topics, and their underlying concepts, are unevenly distributed throughout the ten knowledge areas of the SWEBOK Guide, which makes it challenging to develop an overall understanding of the role of measurement in software engineering. This paper proposes a framework for all the measurement concepts contained in the knowledge areas of the SWEBOK Guide.
Abstract: Measurement is fundamental to sciences and to the engineering disciplines. In the 2004 version of the Guide to the Software Engineering Body of Knowledgeâthe SWEBOK Guideâthe software measurement topic is dispersed throughout the Guide and discussed in every knowledge area. To facilitate and improve teaching and use of measurement in software engineering, an integrated and more comprehensive view of software measurement has been built in the form of a software measurement body of knowledge. This entry presents this integrated view on software measurement. In the 2010 version of the SWEBOK Guide, it has been proposed that software measurement be assigned its own knowledge area.
Abstract: Measurement is fundamental to sciences and to the engineering disciplines. In the 2004 version of the Guide to the Software Engineering Body of Knowledge â the SWEBOK Guide - the software measurement topic is dispersed throughout the Guide and discussed in every knowledge area. To facilitate and improve teaching and use of measurement in software engineering an integrated and more comprehensive view of software measurement has been build in the form of a software measurement body of knowledge. This article presents this integrated view on software measurement. In the 2010 version of the SWEBOK Guide it has been proposed that software measurement be assigned its own knowledge area.
Abstract: The software engineering process is concerned with the definition, implementation, measurement, change, and improvement of software processes. This short article presents software engineering process knowledge along the lines of the software engineering body of knowledge (International Organization for Standardization & International Electrotechnical Commission [ISO/IEC], 2005b). The objective of the software engineering process is to implement new or better processes in current software engineering practice.
Abstract: he panorama of information systems quality / Evan W. Duggan, Han Reichgelt -- An overview of software quality concepts and management issues / Alain April, Claude Y. Laporte -- The different views of software quality / Bernard Wong -- Making real progress with the requirements defects problem / R. Geoff Dromey -- User participation in the quality assurance of requirements specifications : an evaluation of traditional models and animated systems engineering techniques / Heinz D. Knoell -- Academic storytelling : the development of user-driven scenarios / Robert Cox -- Process-centered contributions to information systems quality / Evan W. Duggan, Richard Gibson -- Developer-driven quality : guidelines for implementing software process improvements / Gina C. Green, Rosann Webb Collins, Alan R. Hevner -- Improving quality through the use of agile methods in systems development : people and values in the quest for quality / Julie E. Kendall, Kenneth E. Kendall, Sue Kong -- Quality metrics and Bayesian analysis : the case of extreme programming / Francisco Macias, Mike Holcombe -- Building IT risk management approaches : an action research method / Jacob H. Iversen, Lars Mathiassen, Peter A. Nielsen -- Examining the quality of evaluation frameworks and metamodeling paradigms of information systems development methodologies / Eleni Berki -- Software quality and open source process / Sameer Verma -- Creating IS quality in government settings / Catherine Horiuchi -- ERP quality : do individuals matter? An Australian case / Jenine Beekhuyzen.
Abstract: This chapter of the SWEBOK describes the accepted software engineering knowledge in quality assurance achieving concensus by the profession on a core body of knowledge as a key milestone in the Software Engineering discipline.
Abstract: This chapter of the SWEBOK describes the accepted software engineering knowledge achieving concensus by the profession on a core body of knowledge as a key milestone in the Software Engineering discipline.
Abstract: We share our experience over the last 10 years for finding, deploying and evaluating software engineering (SE) technologies in an undergraduate program at the ETS in Montreal, Canada. We identify challenges and propose strategies to integrate technologies into an SE curriculum. We demonstrate how technologies are integrated throughout our program, and provide details of the integration in two specific courses.
Abstract: Business process (BP) models can be useful for requirements elicitation, among other uses. Software development is dependent on the quality of the requirements elicitation activities; therefore, it is critical to adequately model the BPs. One key factor for achieving this is the active participation of all the stakeholders and the development of a shared vision of the BPs. Unfortunately; organizations often end up with inconsistent BPs not covering all stakeholdersâ needs and constraints. The use of multiple levels of abstraction (MLA) may facilitate the consolidation of various stakeholdersâ requirements. This article contributes to the research of using MLA in business process modeling (BPM) for software requirements by reviewing the theoretical foundations of MLA and their use in various BP-oriented approaches.
Abstract: Hadoop is a set of utilities and frameworks for the development and storage of distributed applications in cloud computing, the core component of which is the Hadoop Distributed File System (HDFS). NameNode is a key element of its architecture, and also its âsingle point of failureâ. To address this issue, we propose a replication mechanism that will protect the NameNode data in case of failure. The proposed solution involves two distinct components: the creation of a BackupNode cluster that will use a leader election function to replace the NameNode, and a mechanism to replicate and synchronize the file system namespace that is used as a recovery point.
Abstract: Abstract. Business process models (BPM) have proved to be useful for soft-ware requirements elicitation. Software development depends on the quality of the requirements specifications, and so generating a high-quality BPM is criti-cal. A key factor in achieving this is the right choice of modeling language. A good one should be complete, and allow all the relevant phenomena in the do-main to be modeled. One ontological approach to measure the completeness of BPM languages is the Bunge-Wand-Weber (BWW) representational analysis. The BWW representation model, being an upper-level ontology, often needs to be refined for a given domain. This paper presents a number of such refinements based on an analysis of the Guide to the Business Analysis Body of Knowledge (BABOK) recommendations for software requirements elicitation. Using the BWW, the completeness of two BPM languages is assessed to see whether or not the relevant concepts for software requirements elicitation are well represented.
Abstract: Hadoop is a set of utilities and frameworks for the development and storage of distributed applications in cloud computing, the core component of which is the Hadoop Distributed File System (HDFS). NameNode is a key element of its architecture, and also its âsingle point of failureâ. To address this issue, we propose a replication mechanism that will protect the NameNode data in case of failure. The proposed solution involves two distinct components: the creation of a BackupNode cluster that will use a leader election function to replace the NameNode, and a mechanism to replicate and synchronize the file system namespace that is used as a recovery point.
Abstract: Business process models (BPM) can be useful for requirements elicitation, among other uses. Since the active participation of all stakeholders is a key factor for successful requirements engineering, it is important that BPM be shared by all stakeholders. Unfortunately, organizations may end up with inconsistent BPM not covering all stakeholdersâ needs and constraints. The use of multiple levels of abstraction (MLA), such as at the strategic, tactical and operational levels, is often used in various process-oriented initiatives to facilitate the consolidation of various stakeholdersâ needs and constraints. This article surveys the use of MLA in recent BPM research publications and reports on a BPM action-research case study conducted in a Canadian organization, with the aim of exploring the usefulness of the strategic level.
Abstract: This paper is a follow-up of the product of a workshop held in Amsterdam during the Software Technology and Practice Conference. The purpose of the paper is to propose Bloomâs taxonomy levels for the Guide to the Software Engineering Body of Knowledge (SWEBOK) topics for three software engineer profiles: a new graduate, a graduate with four years of experience, and an experienced member
of a software engineering process group. Bloomâs taxonomy levels are proposed for the software maintenance topic Knowledge Area of the SWEBOK Guide. By proposing Bloomâs taxonomy in this way, the paper aims to illustrate how such profiles could be used as a tool in defining job descriptions, software engineering role descriptions within a software engineering process definition, professional
development paths, and training programs.
Abstract: Increasing litigation in the software industry is a growing concern for software engineers. In some cases it can be a serious threat to the software commercial and financial success. Looking at current software best practice frameworks and international standards we have not found any guidance on legal assurance for software engineers. Project Management standards such as the Project Management Instituteâs PMBOK (Project Management Body of Knowledge), Maturity models (MM) such as the CMMI and ISO/IEC 15504 and international standards such as ISO/IEC 12207 do not currently offer guidance for software engineers on the topic of legal assurance This paper proposes the addition of a legal management process as an additional management process within international standards life-cycle processes and maturity models, in order to provide guidance for the management of inherent legal risks associated with systems and software.
Abstract: AbstractâEvidence shows that proposals for new modeling notations emerge and evolution of current ones are becoming more complex, often in an attempt to satisfy the many different modeling perspectives required by each stakeholder. This paper presents a method to identify the specific notation construct requirements, at multiple levels of abstraction, which satisfy the needs of a stakeholder when performing a specific task. Initially the focus is on two different stakeholders: software engineers (SE) and business analysts (BA), and one specific software engineering activity: requirements eliciting and analysis. The specific body of knowledge of the two stakeholders (Software Engineering Book of Knowledge (SWEBOK) for the SE, and Business Analysis Body of Knowledge (BABOK) for the BA) are used to identify each stakeholder specific notation construct requirements, at multiple levels of abstraction, in order to propose a simplification of their notation and constructs set. This paper presents solution avenues to simplify business
process modeling notations by identifying the specific constructs preferred by different stakeholders.
Abstract: This paper describes approaches used in two different software engineering courses, where the goal is to give students some experience in the major aspects of real world software projects. The first course is a capstone project course, part of an undergraduate short program in software engineering. The second course is a course on software maintenance and testing, part of a full undergraduate program on software engineering. Each course's content, general organization and student workflow is described. In the case of the capstone project course, graduate students are used as experts/clients in the context of a course in their own program. For the software maintenance and testing course, the emphasis is put on laboratory work. Both courses are considered to have succeeded with respect to the stated objectives. The positive aspects and major challenges with each course are also summarized.
Abstract: Software maintenance and evolution constitutes an important part of the total cost of the life cycle of software. Some even argue this is the most important fraction of the cost. The added value of software maintenance and evolution is often not fully understood by the customer leading to a perception that software maintenance organizations are costly and inefficient. A common view of maintenance and evolution is that it merely fixes bugs. However, studies over the years have indicated that in many organizations the majority of the maintenance effort is devoted to value-added activities. To improve customer perceptions it is important to provide them with better insight into the activities performed by the maintenance organization and to document such performance with objective measures of software maintenance activities.
In this paper, software maintenance trend analysis is used as a basis for improvement. First, the differences between software maintenance activities and the Information System (IS) department development projects are described. Then a trend model is developed as a mean to manage the expectations of customers. To conclude, some remarks are made regarding the application of trend analysis by maintenance work categories for software maintenance managers.
Abstract: This paper describes approaches used in two software maintenance courses, where the goal is to give students some experience in the major aspects of the real world of IT. The courses are: 1) a software project course and 2) a course on software maintenance and testing, part of a full undergraduate program on software engineering. The course's content, general organization and student workflow is described. In the software maintenance and testing course, the emphasis is put on theory and applied laboratory work. This course is considered to have succeeded with respect to the stated objectives. The positive aspects and major challenges with the course is also summarized.
Abstract: Maintaining and supporting the software of an organization is not an easy task, and software maintainers do not currently have access to decision support systems (DSS) to evaluate strategies for improving specific software maintenance activities. This article presents a DSS designed to help locate exemplary practices offered by the software maintenance maturity model (S3m). The contribution of this paper is to instrument a maturity model with a DSS tool to assist software maintenance practitioners with locating specific best practices that could help them solve software maintenance problems.
Abstract: Maturity models assess the organizationâs processes to determine their level of maturity and capability. There is an implicit assumption that a higher level of maturity (or more capability) leads to higher level of productivity and quality. Based on this assumption, maintenance organizations that implement a number of exemplary practices should show an improvement in both. In this article, we use data from a maintenance organization to verify this assumption. The introduction presents the challenges associated with the measurement of software maintenance productivity and quality. We then introduce our methodology, followed by an analysis of the data, and, finally, lessons learned and future work.
Abstract: Functional size measurement (FSM) is an important component of a software project. It provides information to estimate the effort required for developing the measured software. For planning purposes, FSM should be performed during the early stages of the project. On the other hand, one common use of business process models is to gather requirements since the early stages of the project. Therefore, a business process model could be a valuable source of information for FSM at an early stage. This article analyzes the feasibility of such an approach for the business application domain, deriving the modeling conditions, and the rules to map the modeling constructs of a business process modeling language into the COSMIC FSM method concepts. The results are compared with those of a previous FSM case study.
Abstract: Maintaining and supporting the software of an organization is not an easy task, and software maintainers do not currently have access to decision support systems (DSS) to evaluate strategies for improving the specific activities of software maintenance. This article presents a DSS which helps in locating best practices offered by a software maintenance maturity model (S3m). The contributions of this paper are: 1) to instrument a maturity model with a DSS tool to aid software maintenance practitioners in locating specific best practices that could help them answer their questions.
Abstract: Evaluation and continuous improvement of software maintenance are key contributors to improve software quality. The software maintenance function suffers from a scarcity of the management models that would facilitate its evaluation, management and continuous improvement. This paper presents an overview the measurements practices that are being introduced for level 3 and higher to the software maintenance maturity model (S3m).
Abstract: The software industry is an important economic activity in industrial countries. Nowadays the investment in this field measured in millions of dollars, the IT organizations varies in their size and role. An area of concern to IT organizations is implementing and adopting Software Process Improvement (SPI) models. For many years, researchers have developed several SPI model, most of which like CMM, CMMI1 and SPICE (ISO/IEC 15504) have been developed to fulfill large organizations needs, but they do not take into consideration the Very Small Enterprises2 (VSE) needs. This has encouraged a number of researchers to study the SPI for VSE and try to find suitable models that fit to VSE needs. Our document explores the main processes concerning the VSE to discover which processes are the weakest, which we found to be the quality assurance, and shed light on it. This was shown by three rounds of consecutive assessments with about 10 VSE assessments each time. It confirms previous studies that have already done [4] [10] [11] [14].
Abstract: In 2006, the most important Canadian distributor and retailer of hardware products was faced with formalizing its internal processes in responseto the requirements of the Sarbanes-Oxley Act. This publication is a follow-up information to our first paper on process conformance and audits [7]. Thesoftware testing process and how conformance to the documented process was achieved within 3 months is described. This research paper presents anintroduction, the testing process itself, the process conformance measurement and the results obtained during the first three months of measurement.
Abstract: Maintaining and supporting the software of an organization is not an easy task, and software maintainers do not currently have access to tools to evaluate strategies for improving the specific activities of software maintenance. This article presents a knowledge-based system which helps in locating best practices in a software maintenance capability maturity model (S3m). The contributions of this paper are: 1) To formalise the software maintenance ontology, 2) to instrument the maturity model with a support tool to aid software maintenance practitioners in locating specific best practices; and 3) to describe the knowledge-based approach and system overview used by the research team.
Abstract: This paper investigates image vector attributes weights in order to detect a scene change in a video. Another objective is the development of an MPEG-7 library for annotating and presenting MPEG-7 documents. The contributions of this paper are: an exploration of the limits of scene identification technique, using the Oracle 10 g database, describing an annotation technique to generate MPEG-7 annotations
Abstract: The software industry recognizes the value of very small enterprises (VSEs) in contributing valuable products and services. As software quality increasingly becomes a subject of concern, and process approaches are maturing and gaining the confidence of companies, the use of ISO standards is spreading in organizations of all sizes. However, these standards were not written for small projects, small development organizations, or companies with between 1 and 25 employees, and are consequently difficult to apply in such settings. Moreover,
the current international Life Cycle Standard ISO/IEC 12207 and its associated guide do not explicitly address the needs of VSEs. This new international standardization project proposes to address some of those difficulties by developing profiles and by providing guidance for compliance with ISO software engineering standards such as ISO/IEC 12207 and ISO 9001.
Abstract: This S3m maintenance maturity assessment model is divided into four process domains containing 18 Key Process Area", each in turn containing "Roadmaps". Roadmaps are bodies of knowledge containing recommended practices that are linked to one another. Using the S3m software maintenance maturity model, this paper describes the assessment process and results of an individual maintainer process maintaining a key software application within a larger software maintenance organization."
Abstract: This paper investigates image vector attributes weights in order to detect a scene change in a video. Another objective is the development of an MPEG-7 library for annotatingand presenting MPEG-7 documents. The contributions of this paper are: an exploration of the limits of scene identification technique, using the Oracle 10g database, describing anannotation technique to generate MPEG-7 annotations.
Abstract: The software industry recognizes the value of very small enterprises (VSEs) in contributing valuable products and services. As software quality increasingly becomes a subject of concern, and process approaches are maturing and gaining the confidence of companies, the use of ISO standards is spreading in organizations of all sizes. However, these standards were not written for small projects, small development organizations, or companies with between 1 and 25 employees, and are consequently difficult to apply in such settings. Moreover, the current international Life Cycle Standard ISO/IEC 12207 and its associated guide do not explicitly address the needs of VSEs. This new international standardization project proposes to address some of those difficulties by developing profiles and by providing guidance for compliance with ISO software engineering standardssuch as ISO/IEC 12207 and ISO 9001.
Abstract: Maintaining and supporting the software of an organization is not an easy task, and software maintainers do not currently have access to tools to evaluate strategies for improving the specific activities of software maintenance. This article presents a web-based training approach using a knowledge-based system which helps in locating best practices in a software maintenance capability maturity model (S3m). The contributions of this paper are: 1) To define a task analysis, 2) to instrument the maturity model with a support tool to aid software maintenance practitioners in locating specific best practices; and 3) to describe the web-based training approach and system overview used by the research team.
Abstract: This paper presents the creation of an MPEG-7 compliant annotation using a commercial multimedia database. The contributions of this paper is first identifying the most effective weights, for low level image characteristics, with Oracle Intermedia. Second, describing a video scene identification technique using an Oracle 10g multimedia database.
Abstract: Maintaining and supporting the software of an organization is not an easy task, and software maintainers do not currently have access to tools to evaluate strategies for improving the specific activities of software maintenance. This article presents a knowledge-based system which helps in locating best practices in a software maintenance capability maturity model (S3m). It presents an XML-based usage of the knowledge base to measure the concepts most often employed by software maintainers. The contributions of this paper are: 1) to instrument the maturity model with a support tool to aid software maintenance practitioners in locating specific best practices; and 2) to describe an XML-based measurement approach to locate the concepts most often accessed by users.
Abstract: The software industry recognizes the value of very small enterprises (VSEs) in contributing valuable products and services. ISO International standards were not written for small projects, small development organizations, or companies with between 1 and 25 employees, and are consequently difficult to apply in such settings. Moreover, the current international Life Cycle Standards, ISO/IEC 12207 and ISO/IEC 15288, and their associated guides, do not explicitly address the needs of VSEs. This new international standardization project proposes to address some of those difficulties by developing profiles and by providing guidance for compliance with ISO software engineering standards such as ISO/IEC 12207 and ISO 9001.
Abstract: Maintaining and supporting the software of an organization is not an easy task, and software maintainers do not currently have access to tools to evaluate strategies for improving the specific activities of software maintenance. This article presents a knowledge-based system which helps in locating best practices in a software maintenance capability maturity model (SMmm). The contributions of this paper are: 1) to instrument the maturity model with a support tool to aid software maintenance practitioners in locating specific best practices; and 2) to describe the knowledge-based approach and system overview used by the research team.
Abstract: Software maintenance function suffers from a scarcity of management models that would facilitate its evaluation, management and continuous improvement. This paper is part of a series of papers that presents a Software Maintenance Capability Maturity Model (SMCMM). The contributions of this specific paper are: 1) to describe the key references of software maintenance; 2) to present the model update process conducted during 2003; and 3) to present, for the first time, the updated architecture of the model.
Abstract: Software maintenance constitutes an important part of the total cost of the lifecycle of software. Some even argue this is the most important fraction of the cost (50-80 percent according to Tony Scott [14], 75% according to Rand P. Hall [5]). The added value of software maintenance is often not fully understood by the customer leading to a perception that software maintenance organizations are costly and inefficient. A common view of maintenance is that it is merely fixing bugs. However, studies over the years have indicated that in many organizations the majority, over 80%, of the maintenance effort is dedicated to value added activities (Sommerville[15], Pressman[13], Pigoski[12]). To improve customer perceptions of software maintenance it is important to provide them with better insights into the activities performed by the maintenance organization and to document such performance with objective measures of software maintenance activities.In this paper the prerequisites for Software Maintenance productivity analysis are described with the use of the experiences at the Bahrain Telecommunications Company (Batelco) during the years 2001-2. First the differences between software maintenance activities and IS development projects are described. Then a basic trend model is applied as well as ways to manage the expectations of the customers. To conclude, some remarks are made regarding the application of productivity analysis for the software maintenance managers.
Abstract: Maintaining and supporting the software of an organization is not an easy task, and software maintenance managers do not currently have access to tools to evaluate strategies for improving the specific activities of software maintenance. This article presents the new architecture (version 2.0) of the software maintenance capability maturity model (SMCMM). The contributions of this paper are: 1) to present a categorization of the software maintenance processes using a representation similar to that in ISO12207; and 2) present the new architecture of the model, which highlights the unique processes of the maintainers.
Abstract: Quality needs for both customer and software supplier have become more complex and critical than ever. This paper presents the current ISO software products and process quality standards and our positioning of these standards as software quality engineering instruments, including the phases of product development to which they map. The first generation of these product-related and process-related standards are currently in their final ISO publication stage but, having been developed independently, their usage by practitioners will be particularly challenging. While ISO software experts are already at work defining strategies to develop the next generation of these standards, help is needed by practitioners to understand, deploy and leverage ISO standards that are now becoming available to them.This paper addresses first the immediate need for integrating these process and product related standards in the development process through our quality engineering approach which maps them at the detailed level of the life cycle. Then, work in progress at the ISO level to develop the next generation of these software quality related standards is presented.
Abstract: Software maintenance constitutes an important part of the total cost of the lifecycle of software. Some even argue that this might be the most important component of the cost, even though customers often do not perceive the added value of software maintenance. A proposed approach to highlighting the added value of maintenance is to provide the customer with process performance measures aligned with the key activities performed by the maintenance organization. Such performance measures could then form the basis for a clear agreement on the expectations, and outcomes, of these activities. Process Performance management and measurement requires that processes be chosen based on their impact on the quality and the performance of the software maintenance organization It also requires that measures be identified and established and that a reference point (baseline) and a target be set for each measure. Finally, they require that data be collected in order to develop and use process performance prediction models. In this paper, we introduce best practices, for the first three maturity levels, to help the maintainer organization assess its process performance. These practices constitute a subset of our proposed Software Maintenance Capability Maturity Model (SM-CMM).
Abstract: Software maintenance constitutes an important part of the total cost of the lifecycle of a software application. Some even argue this might be the most important fraction of the cost (50-80 % according to Tony Scott, 75% according to Rand P. Hall, 60% Freedman). The added value of software maintenance is often not perceived by the customers. While the introduction of a new software application clearly shows new benefits, the work being done to maintain an existing application is usually only apparent when the application breaks down or small changes are being implemented (which sometimes also causes some downtime). This results in a negative perception of the software maintenance section. A proposed approach to turn this around is to provide the customer with insights in the activities performed by the maintenance section and to come to a clear agreement on the results and expectations of these activities.The Service Level Agreement (SLA) originates from the practice of the specifications of results found in the contractual agreements of the large computing centres of the 50Âs (McBride 1990). Service Level Agreements could be the used by software maintenance for better managing customers expectations by specifying with the customer what the service results will be. Until a few years ago, this management practice had been limited to operations and support services: the literature search about agreements on Software maintenance turned out some references to Software Maintenance Agreements (for instance Mueller 1994) but most of the agreements reported were limited to helpdesk support, bug fixes and the distribution of new releases. No detailed agreements were reported to include the full spectrum of maintenance services, including the management of the quality of the service.In this paper the application of Service Level Agreements to the field of Software Maintenance is described, based on the experiences at Batelco. First, key differences between software maintenance and IT development are described, together with the difficulties of viewing software maintenance as an IT Service, and related challenges to tackle them in the design of an SLA. The context at Batelco is presented next, together with a description of the various aspects of the SLA implemented. Lessons learned on the application of SLAs on software Maintenance are presented as well as recommendations for future improvements.
Abstract: The quality of the services Batelco offers to its customers is more and more related to the quality of the software products and systems acquired. Real time services like IP and ecommerce will now be totally software dependant, real-time with a 7days 24hours-availability objective. We realize that software acquisitions in this area have to be of the highest quality. IP or ecommerce services that fail in operations and in the hands of customers will mean dissatisfaction, revenue loss and potentially lost market share.To minimize the acquisition risks, the IP billing project is considering the introduction of a software product assessment process and associated tools to obtain maximum insights on the software quality characteristics during the selection process. This new direction requires the usage of sophisticated source code analysis tools where key software measures are extracted from the candidate software and are readily available for interpretation. As a first step the product assessment will aim principally in assessing the as much as possible of the software product quality characteristics as defined by the ISO-9126 standard.This paper first presents the Software Acquisition Life Cycle where intended software product assessment activities are to take place. Second we describe the software assessment process then provide a mapping to ISO9126 of the pilot measures and describe how they can be used to assess a supplier software.
Abstract: During 1997, A large Information System (IS) Division of a Canadian Phone Company implemented formal process assurance in its Quality Assurance group. This status report presents a new perspective on the measurement of process assurance and the lessons learned after one year of assessing the individual conformance [1] of software development projects to the Corporate Software Development Process (CSDP) of the organization. This status report presents the assurance process overview, goals, benefits and scope, as well as the 1997 results overview, followed by the lessons learned, for the 1998 audit program.
Abstract: During 1997, the Information System (IS) Division of the Bahrain Telecommunications Company (Batelco) implemented a millennium compliance program. This experience report presents additional configuration management requirements implemented to manage the millennium project associated with the IBM-MVS applications. Included is a definition of compliance for Year 2000 projects, conversion approaches, additional configuration management requirements, Year 2000 Components Tracking System (Y2KCTS) process overview followed by the lessons learned. At the time of writing this paper there is 1 year 8 months and 24 days left before the new century. The year 2000 project is a significant undertaking and an absolutely no-choice project for Batelco.
Abstract: Function Points are generally used for measuring software functional size from a user perspective. This paper is concerned with the problem of counting function points from source code using the Function Point Analysis proposed by the International Function point User Group (IFPUG) 1994 standards. This paper presents the Automated FP counting scope andobjective, the presentation of an existing semi-formal model and the required extensions for the definition of four IFPUG rules. Then we propose reverse engineering techniques to address those four rule.
Abstract: The mapping of draft standards work in the area of product quality measurement to industry practice has lead to a discussion on the importance of the previous knowledge of the design and support environment is necessary for correct interpretation of static source code metrics. We have found no intersection between the proposed internal metrics of the ISO9126 draft standard and the one extracted with our tool (Datrix). This has lead us to present a mapping and rationale for each Datrix Domain for the four ISO 9126 maintainabilty sub-characteristics.
Abstract: Since 1982 Bell Canada has been developing a model to assess the software development process of existing and prospective suppliers as a means to minimize the risks involved and ensure both the performance and timely delivery of software systems purchased. This paper presents the revised Trillium model (version 3.0). The basis of the process assessment models for software relies on benchmarking, e.g. comparing your practices with the best and successful organizations. It is also a basic tool that you will find in the TQM literature. For software assessment we have used initially two levels of benchmarks to develop the model: professional, national and international standards; and comparisons with other organizations in the same market segment. The software assessment model should therefore map to existing engineering standards as well as quality standards. It should also provide an output that can be used easily to benchmark against âbest-in-classâ organizations
Abstract: Since the early 70Âs Bell Canada has carried out vendor assessments covering commercial and quality issues. The quality assessment has been traditionally oriented toward manufacturing and customer support functions. In the early 80Âs, with the growing importance of the software component in all products, the development part of the lifecycle saw its significance increase. The increasing complexity and dimension of telecommunication software.s has led to numerous research activities and the development of quality tools intelecommunication product and services development. Since 1982 Bell Canada has invested toward developing a model to assess the software development process of existingand prospective suppliers as a mean to minimize the risks involved and ensure both the performance and timely delivery of software systems purchased.This paper presents the revised 1995 Trillium assessment model (version 3.0).
Abstract: The software industry recognizes the value of very small enterprises (VSEs) in contributing valuable products and services. ISO International standards were not written for small projects, small development organizations, or companies with between 1 and 25 employees, and are consequently difficult to apply in such settings. Moreover, the current international Life Cycle Standards, ISO/IEC 12207 and ISO/IEC 15288, and their associated guides, do not explicitly address the needs of VSEs. This new international standardization project proposes to address some of those difficulties by developing profiles and by providing guidance for compliance with ISO software engineering standards such as ISO/IEC 12207 and ISO 9001.
Abstract: The document will involve a real application (Light system control software) detailed design and unit testing as trial for addressing part of the system engineering (electronics hardware and software integration) for one key process area (software evolution and correction) through support to evolution engineering to be able to be achieved in CMMI.
Abstract: This evaluation or study is made to a companyâs maintenance project in a Colombian bank. First thereâs a description of the company, its history and evolution, as well as its main software product. The second part of the work describes the project of maintenance in this bank, beginning with the description of the client and describing all characteristics of the project: the scope of the contrat of maintenance, the environments available for the software life cycle in maintenace, description of process for hardware and software maintenance (third party) and the main evaluated software maintenance with all its process and procedures for its management.
With the description of the types of maintenance, the evaluated process and procedures, the software life-cycle and the workflow used to begins the evaluation of what is different in this projectâs methodology versus the International Standard ISO/IEC 14764 â Sofware Maintenace.
Finally, thereâs a comparative analysis of the types and process of maintenance, how is the project and the company affected with execution of its own methodology. Conclusions and recommandations for its improvement are given.
Abstract: We need to understand CMMi model as we are going to identify the generic practices that apply to Software Maintenance by using the CMMi generic practices concept to help us understand what they are and how they relate to the CMMi.
Weâll discover shared generic practices between the CMMi and the software maintenance maturity model; of course CMMi generic practices canât cover all processes of software maintenance, which enforces us to discover some new generic practices that are unique to this IT domain.
Abstract: Several commercial and open source tools allow the evaluation of software quality, using measurements on the source code. This document describes the quality assessment of a software named S3MDSS by using the open source code analyzer âSONARâ, in order to detect problems and to identify recommendations that will help improve code quality.
Abstract: This document presents an analysis and proposed amendments to the Trial version of the SWEBOK Guide describing the software maintenance Knowledge Area. The scope of the proposed amendments is first to broaden the set of maintenance topics identified to improve coverage of the body of knowledge on software maintenance, as well as to recommend additional references and, secondly, to propose for each topic within the Software Maintenance Knowledge Area (KA), the expected level of knowledge for a graduate plus four years of experience"."
Abstract: Initiated as a SPICE project (ISO 15504), the study of software evolution and maintenance process maturity has become an emerging research topic. Software evolution and maintenance processes have been and continue to be an unexplored domain. Current process models and standards do not cover the whole evolution and maintenance domain. As a result, the software community still possesses a blurred understanding of its scope, an unclear picture of how various processes are interrelated, how they impact each other and the product. The software community is also insecure about how to adapt evolution and maintenance processes to new methods and technologies. This workshop aims at discussing the challenges, problems and evolution and maintenance process models according to the latest findings.
Abstract: For several years, BPM (Business Process Management) has become a major priority for companies, especially for SMEs (small and medium enterprises) that seek continuously new strategies to stand out, improve their performance and better meet the needs of customer growth. However, the literature and methodology, associated to the business process model, presumes that the companies have a certain level of maturity or documented business procedures. Generally, SMEs seeking to initiate such à project start from scratch.
This problem has led us to propose a methodology to describe companiesâ business process that specifically targets those looking to implement a standard model from the very beginning. We have then established our hypotheses of research:
⢠Does the BPM at the strategic, tactical and operational abstraction level facilitate the integration, in a coherent way, perspectives of business process asked by the different stakeholders?
⢠Can the business process concepts be represented by each of these three levels of abstraction?
Following these hypotheses, we have described a work methodology based on the review of the literature, combining the three levels of abstraction (strategic, tactical and operational) by Robert Anthony and BPMN and Qualigram notations, to discover what notation is the favorite of stakeholders.
Finally, we presented the results of experimentation of the cyclic process of «action-research» (experimentation methodology) that was used to test the proposed methodology.
Abstract: The ISO-15504 is a standard used to assess software processes. A number of process assessment models were created inspired on this international standard.
This thesis develops the software maintenance maturity model (S3M) assessment mehod using the ISO-15504 requirements. In order to do this it is important to take into account the small size of the maintenance organization units into consideration by adjusting the number of activities and effort required to conduct a process assement in this context.
Abstract: Software has entered our lives in many different ways e.g. the internet, driving supports in cars, tools helping with our tax declaration etc. The development of new tools and equipment has not stopped, yet. In fact, it is still increasing and taking over more and more functions of our everyday life. This also implies increasing the effort required for maintenance purposes.
Therefore Process Improvement (PI) and Process Capability Determination (PCD) have gained increasing importance over the years.
Most of the past effort, though, was spent in developing improvement models and best practices that address the software development process.
However, the domain of maintenance and its function was largely overlooked [April03] even though it is considered to be an important factor contributing to the total cost of a system life-cycle [Hanna93]. Still, the maintenance domain does not get the researchers attention it is entitled to.
In spite of some extensive discussions about the maintenance issue, not much information about software maintenance practices and its affects on the user are available up to now [April04a]. This also results in the existence of only a few capability maturity models considering the maintenance function [April04].
Those that do exist are regarded as limited in their coverage of the software maintenance domain complexity [April03].
Nevertheless, the interest in the maintenance domain starts to awaken.
However, the models needed for the development process differ from those needed for the maintenance process. Therefore new models have to be built addressing the specific needs of the maintenance domain. A task that is not easy to fulfill because maintenance addresses very complex issues and because the SW engineering as a whole is not a completely mature discipline, yet [April04a].
An initiative to change the lack of best practices and models in this domain of maintenance is undertaken through the Software Maintenance Maturity Model (SMmm) developed by Alain April, Alain Abran and Reiner Dumke [April04]. The SMmm provides a capability maturity model that addresses the specific aspects and needs of the software maintenance function.
This model is also to be used as a Reference Process Model (RPM) which complies with the international standard ISO/IEC15504.
The objective is to provide a complete model for the SW maintenance function that enables companies and assessors to carry out assessments in the software maintenance domain which will be fully compliant to the ISO/IEC15504 standard. To support such assessment activities it is helpful to apply appropriate tools similar to those already available e.g. for SW â development assessments.
Such a support tool would be useful in many ways:
- To provide the environment that is based on a standard against which the assessment is carried out,
- To record the data,
- To store the data for later use or as evidence should questions concerning the results arise
- the results can be used to perform comparisons among the different companies
- the results show where weaknesses still exist so that improvement actions can be undertaken in those specific cases
- the results can be used to show customers that the company cares about process improvement and process capability and that it is willing to improve continually their practices to decrease costs & time and to increase quality & customer satisfaction
Abstract: Invited by Kyungjo Lee of Bankware Global and presided by Yong-Kyung Lee, Phd - Member of the National Assembly and responsible for Information Technology in Korea, this presentation is a summary of the challenges that face software maintainers currently and in the future. It presents a summary of the concepts published in the bool: Software Maintenance Management: Evaluation and Continuous Improvement by Dr. Alain April and Dr.Alain Abran (Isbn: 978-0470-14707-8).
Notes: See Software Maintenance Management: Evaluation and Continuous Improvement by Dr. Alain April and Dr.Alain Abran (Isbn: 978-0470-14707-8)