scispace - formally typeset
Search or ask a question

Showing papers in "Software Process: Improvement and Practice in 2005"


Journal ArticleDOI
TL;DR: It is argued that cardinality-based feature models can be interpreted as a special class of context-free grammars, and a semantic interpretation is provided by assigning an appropriate semantics to the language recognized by the corresponding grammar.
Abstract: Feature modeling is an important approach to capture the commonalities and variabilities in system families and product lines. Cardinality-based feature modeling integrates a number of existing extensions of the original feature-modeling notation from Feature-Oriented Domain Analysis. Staged configuration is a process that allows the incremental configuration of cardinality-based feature models. It can be achieved by performing a step-wise specialization of the feature model. In this article, we argue that cardinality-based feature models can be interpreted as a special class of context-free grammars. We make this precise by specifying a translation from a feature model into a context-free grammar. Consequently, we provide a semantic interpretation for cardinality-based feature models by assigning an appropriate semantics to the language recognized by the corresponding grammar. Finally, we give an account on how feature model specialization can be formalized as transformations on the grammar equivalent of feature models. Copyright © 2005 John Wiley & Sons, Ltd.

630 citations


Journal ArticleDOI
TL;DR: This article proposes a cardinality-based notation for feature modeling, which integrates a number of existing extensions of previous approaches, and introduces and motivate the novel concept of staged configuration.
Abstract: Feature modeling is a key technique for capturing commonalities and variabilities in system families and product lines. In this article, we propose a cardinality-based notation for feature modeling, which integrates a number of existing extensions of previous approaches. We then introduce and motivate the novel concept of staged configuration. Staged configuration can be achieved by the stepwise specialization of feature models or by multilevel configuration, where the configuration choices available in each stage are defined by separate feature models. Staged configuration is important because, in a realistic development process, different groups and different people make product configuration choices in different stages. Finally, we also discuss how multilevel configuration avoids a breakdown between the different abstraction levels of individual features. This problem, sometimes referred to as 'analysis paralysis', easily occurs in feature modeling because features can denote entities at arbitrary levels of abstraction within a system family. Copyright © 2005 John Wiley & Sons, Ltd.

473 citations


Journal ArticleDOI
TL;DR: The results of CMMI software process appraisal work with six small-to-medium sized software development companies are described and a finer grained framework which encompasses the notion of perceived value within specific practices is presented.
Abstract: In this paper we describe the results of CMMI software process appraisal work with six small-to-medium sized software development companies. Our analysis of six CMMI Process Areas appraised within each of these organisations is presented. Commonly practiced or not practiced elements of the model are identified, leading to the notion of perceived value associated with each specific CMMI practice. A finer grained framework which encompasses the notion of perceived value within specific practices is presented. We argue that such a framework provides incentive to small-to-medium sized enterprises starting process improvement programmes.

72 citations


Journal ArticleDOI
TL;DR: In this paper, the authors propose a conceptual framework for an intention-driven modeling of flexible workflow applications, where the purpose of the underlying modeling formalism is to define an integration/orchestration for islands of business process chunks and their support systems in order to create and maintain the fit between them.
Abstract: During the early 1990s, workflow technologies were the only ones to offer a transversal integration capacity to the enterprise applications, thus allowing the representation and the enactment of business processes. However, the formalisms developed for workflow specifications were almost systematically activity oriented. Consequently, the resulting process definitions have the advantage to be easily transformable in executable code, but the disadvantage of being prescriptive and rigid. Recent works underline the needs in term of flexible and adaptive workflows, whose execution can evolve according to situations that cannot always be prescribed. In fact, a flexible representation of business processes is an asset to maintain the fit between business processes and their supporting systems in an evolving environment. This article proposes a conceptual framework for an intention-driven modeling of flexible workflow applications. The purpose of the underlying modeling formalism is to define an integration/orchestration for islands of business process chunks and their support systems in order to create and to maintain the fit between them. The modeling framework offers the ability to represent in the same business process definition the well-structured process chunks as well as the ill-structured or ad hoc ones. Copyright © 2005 John Wiley & Sons, Ltd.

51 citations


Journal ArticleDOI
TL;DR: This article examines the process relationships within and between three distinct but related OSSD project communities: Mozilla, a Web artifact consumer; the Apache HTTP server that handles the transactions of Web artifacts to consumers such as the Mozilla browser; and NetBeans, a Java-based integrated development environment (IDE) for creating Web artifacts and application systems.
Abstract: Web-based open source software development (OSSD) project communities provide interesting and unique opportunities for software process modeling and simulation. While most studies focus on analyzing processes in a single organization, we focus on modeling software development processes both within and across three distinct but related OSSD project communities: Mozilla, a Web artifact consumer; the Apache HTTP server that handles the transactions of Web artifacts to consumers such as the Mozilla browser; and NetBeans, a Java-based integrated development environment (IDE) for creating Web artifacts and application systems. In this article, we look at the process relationships within and between these communities as components of a Web information infrastructure. We employ expressive and comparative techniques for modeling such processes that facilitate and enhance understanding of the software development techniques utilized by their respective communities and the collective infrastructure in creating them. Copyright © 2005 John Wiley & Sons, Ltd.

48 citations


Journal ArticleDOI
TL;DR: This article will discuss how postmortems can be used to capture tacit experiences in projects, and compare two kinds of postmortem outcomes – traditional reports and stories.
Abstract: The most popular unit of work in organizations is a project. Managing knowledge in and about projects is salient for successful project management. In this article, we will discuss how postmortems can be used to capture tacit experiences in projects. Conducting a postmortem, either after a milestone or at the end of a project, is salient in order to gauge what has been learnt, what were the main issues faced, and what can be used to improve the processes of work in the future. The conducting of postmortems aids in articulation of tacit experiences into explicit forms. This enables for experiences to be better re-used in the future. Re-using of postmortem findings depends heavily on the nature of the postmortem outcome. We will compare two kinds of postmortem outcomes – traditional reports and stories. Both types have their pros and cons, and management must choose the right kind of postmortem report to calibrate, depending on the project and learning outcomes. The article will also highlight lessons learnt from conducting postmortem reviews in several software organizations. Copyright  2005 John Wiley & Sons, Ltd.

42 citations


Journal ArticleDOI
TL;DR: The different constructs in a SimSE process model are described, the associated model-builder tool is introduced, how to built an initial model of a waterfall process is described, and the underlying trade-offs and issues involved are discussed.
Abstract: SimSE is an educational software engineering simulation game that uses a unique software process modeling approach. This approach combines both predictive and prescriptive aspects to support the creation of dynamic, interactive, graphical models for software engineering process education. This article describes the different constructs in a SimSE process model, introduces the associated model-builder tool, describes how we built an initial model of a waterfall process, and discusses the underlying trade-offs and issues involved in our approach. Copyright © 2005 John Wiley & Sons, Ltd.

41 citations


Journal ArticleDOI
Pnina Soffer1
TL;DR: The article presents a taxonomy of modifications that can be made to a process model and characterizes different modification types in terms of possible scopes of the changes made.
Abstract: Organizations often change their business processes in reaction to changes in the environment or as a result of improvement efforts. These changes lead to adjustments in the Business Process Support (BPS) system. The impact of a change in a business process may extend beyond the specific point that has been changed, affecting preconditions required for other activities, outputs to be created, or requiring new inputs. This article introduces a concept of a scope of a change, whose identification facilitates focused efforts when adjusting the BPS system to changes in business processes. The article presents a taxonomy of modifications that can be made to a process model and characterizes different modification types in terms of possible scopes of the changes made. Copyright © 2005 John Wiley & Sons, Ltd.

30 citations


Journal ArticleDOI
TL;DR: In this paper, a tool-based approach to cope with product-support technology changes is described, which utilizes established capabilities such as descriptive process modeling and the creation of reference models.
Abstract: To remain viable and thrive, software organizations must rapidly adapt to frequent and, often, rather far-ranging changes to their operational context. These changes typically concern many factors, including the nature of the organization's marketplace in general, its customers' demands, and its business needs. In today's most highly dynamic contexts, such as web services development, other changes create additional, severe challenges. Most critical are changes to the technology in which a software product is written or which the software product has to control or use to provide its functionality. These product-support technology changes are frequently relatively ‘small’ and incremental. They are, therefore, often handled by relatively ‘small’, incremental changes to the organization's software processes. However, the frequency of these changes is high, and their impact is elevated by time-to-market and requirements change demands. The net result is an extremely challenging need to create and manage a large number of customized process variants, collectively having more commonalities than differences, and incorporating experience-based, proven ‘best practices’. This paper describes a tool-based approach to coping with product-support technology changes. The approach utilizes established capabilities such as descriptive process modeling and the creation of reference models. It incorporates a new, innovative, tool-based capability to analyze commonalities and differences among processes. The paper includes an example-based evaluation of the approach in the domain of Wireless Internet Services as well as a discussion of its potentially broader application. Copyright © 2005 John Wiley & Sons, Ltd.

30 citations


Journal ArticleDOI
TL;DR: An analysis of the support from OSS-derived data to previously developed qualitative simulation models, which were inspired by observations from the domain of proprietary systems, suggests that the study of the relationship between size and complexity and its interaction via feedback loops has a role in explaining the long-term evolutionary behaviour of OSS systems.
Abstract: Simulation modelling of growth trends and other empirical data from software systems can reveal the main drivers of software evolution and help improve understanding and management of the software evolution phenomenon. This article reports on the application of qualitative abstraction techniques to data from 25 open source software (OSS) systems. After justifying the use of qualitative simulation techniques for the software process domain, the article presents an analysis of the support from OSS-derived data to previously developed qualitative simulation models, which were inspired by observations from the domain of proprietary systems. The analysis involved comparison of model output and qualitatively abstracted growth trends. The analysis also involved the comparison of the transitions in trends of functional size and complexity to those predicted by the models in a sub-set of 21 systems for which complexity data was available. The results indicate that models are able to replicate some of the features in the data. This, in turn, suggests that the study of the relationship between size and complexity and its interaction via feedback loops has a role in explaining the long-term evolutionary behaviour of OSS systems. This is not surprising since it is well known that the evolution of all type of real-world software systems, proprietary and OSS, is driven by feedback from their stakeholders

27 citations


Journal ArticleDOI
TL;DR: The article outlines a framework for classifying, evaluating, and comparing process architecture methods from four different views: contents, form, purpose, and lifecycle, and suggests how it might be refined.
Abstract: Piecemeal identification, development, and support of an organisation's processes may lead to problems: first, it may be difficult to identify which processes should be supported, and, second, it is unlikely that processes developed piecemeal will either optimise the achievement of an organisation's objectives, or work well together. One solution involves identifying and modelling an organisation's process architecture, and then using it to develop and subsequently support the constituent processes. However, this solution leads to a new challenge: a number of different types of process architecture method have been proposed, but it is not clear which should be used in a given situation. To address this challenge, the article outlines a framework for classifying, evaluating, and comparing process architectures. Following the work of Rolland et al.(1998), the proposed framework considers process architecture methods from four different views: contents, form, purpose, and lifecycle. To partially validate the framework, it was used to classify and evaluate Riva (Ould 2005), a particular process architecture method. The result of this application of the framework suggests how it might be refined. It could then be used for comparing other process architecture methods. Such a comparative analysis should help practitioners choose between process architecture methods. Copyright © 2005 John Wiley & Sons, Ltd.

Journal ArticleDOI
TL;DR: An approach to introducing business process orientation is suggested, called a ‘reverse’ evolutionary approach, which could be suitable for some business contexts, which is described and explains difficulties related to the marketing of such systems and introducing them into operational practice.
Abstract: Business process orientation requires some kind of a business processes support system. However, building a proper system is not enough for introducing process orientation, the organization should ensure that the system is routinely used by all people involved in the processes. The latter task may be more complicated than the one of building the system. This article summarizes an experience of building business process support systems and introducing them into operational practice acquired over some period of time. The article describes and explains difficulties related to the marketing of such systems and introducing them into operational practice, and gives examples that show how these difficulties could be overcome. In conclusion, it suggests an approach to introducing business process orientation, called a ‘reverse’ evolutionary approach, which could be suitable for some business contexts. Copyright © 2005 John Wiley & Sons, Ltd.

Journal ArticleDOI
TL;DR: Results are presented on analyzing two such families and their derivation processes found in a descriptive case study on software product families and some hypotheses on the success factors for configurableSoftware product families are proposed.
Abstract: Configurable software product families are a subclass of software product families that are customized in a product individual derivation process without design or programming. This article presents results on analyzing two such families and their derivation processes found in a descriptive case study on software product families. Some characteristics particular to such product families and their derivation seem to emerge: There is a configurable product base that is configured to the customer requirements. The variability has two distinct levels, of which the first is visible to the customer at sales. The derivation process consists of requirements specification, configuring, delivery, installing, and tailoring activities. Derivation is very flexible and efficient. Most derivations can be carried out without programming. The activities primarily require application domain understanding, system administrator skills, and understanding of the family. The product developers can be separated organizationally from product derivators. We further proposed some hypotheses on the success factors for configurable software product families: A large enough number of derivations, understanding and stability of the application domain, and clear software product family–oriented culture and processes. However, very advanced or software product family–oriented software engineering methods or similar methods do not seem a prerequisite for success. We also suggest further research on configurable software product families. Copyright © 2005 John Wiley & Sons, Ltd.

Journal ArticleDOI
TL;DR: In this paper, the authors explore a strategy of mutual adaptation between the information system and the business process, facilitated by the iterative and incremental mechanisms of modern SW engineering frameworks, and build on a longitudinal case study from a large public auditing organization that developed a new audit process in parallel with the construction of a new information system to support it.
Abstract: This article explores a strategy of mutual adaptation between the information system and the business process, facilitated by the iterative and incremental mechanisms of modern SW engineering frameworks. The concept of mutual adaptation implies that the real innovation of an information systems project is not the software, but the working solution after implementation. Too little is known about this phenomenon: What are the dynamics of mutual adaptation? To what extent is it possible to control? Which organisational mechanisms facilitate it? Should planned mutual adaptation be part of an information systems development project, or is it outside the reasonable scope of such projects? The article builds on a longitudinal case study from a large public auditing organisation that developed a new audit process in parallel with the construction of a new information system to support it. The project is described through seven iterations as it experiments with different organisational mechanisms to achieve mutual adaptation. The dynamics of mutual adaptation is described by a window of opportunity, where both the information system and the business process are malleable. Copyright © 2005 John Wiley & Sons, Ltd.

Journal ArticleDOI
TL;DR: A method for analysing requirements for their scope, and for their potential to be candidate requirements for a product family–oriented development is introduced.
Abstract: Product lines have a long and successful history of hardware component reuse, but large-scale reuse of software has been much more difficult to establish. The difficulties inherent in building software systems for product families have been widely recognised. This article introduces a method for analysing requirements for their scope, and for their potential to be candidate requirements for a product family–oriented development. The article also discusses the results and lessons learned from an industrial application (high-end consumer electronic products). Our approach to product line is a combination of integrating and leveraging the existing product line. The method also emphasises product line evolution using well-engineered components. Copyright © 2005 John Wiley & Sons, Ltd.

Journal ArticleDOI
TL;DR: The method proposed in this publication, which documents the design rationales for each role in the analyzed business process, can be verified before being automated with the BPS system.
Abstract: Enterprises need to create and maintain the fit between their business processes and their business process support (BPS) systems. This frequently requires re-engineering of business processes. If the business processes design ration-ales are made explicit, the re-engineering of the existing business processes is easier. Making the design rationales ex-plicit is useful to understand why things exist as they are, and to understand if and how they can be changed. The most common way to capture design rationales is to list the design decisions underlying the business process. In the method proposed in this publication, we capture design rationales through role modeling. We document the design rationales for each role in the analyzed business process. The roles are described as the compositions of base func-tionalities. A base functionality is the specification of a role (or of a part of a role) from the viewpoint of one of the specific specialists who design the business process. These base functionalities are composed together to describe the roles of the participants to the business process. As a result, a business process modeler can understand who is respon-sible of what in the business processes. In collaboration with the specialists, the business modeler can then ensure that no important part of the business process is missing or is unnecessary. Thanks to this work, the business process can be verified before being automated with the BPS system.

Journal ArticleDOI
TL;DR: The analysis of the performed simulations was able to determine optimal, heuristic strategies to the integrated management of the product line and identify strategies and guidelines that can be employed by practitioners in order to improve the success of their management of a software product line.
Abstract: Software product lines can effectively facilitate large-scale reuse and can thus bring about order of magnitude improvements in terms of time to market (TTM), costs, and quality. This comes at the price of a more complex development environment in which many interdependencies are created through shared generic assets. Owing to this complexity, the specific strategy chosen for product line development can be expected to have a strong impact on the benefits that can be gained from product line development. This is systematically studied in this work, as we vary different strategies and apply them to various forms of products lines. On the basis of the analysis of the performed simulations, we were able to determine optimal, heuristic strategies to the integrated management of the product line. As a result of the analysis, we identify strategies and guidelines that can be employed by practitioners in order to improve the success of their management of a software product line. Copyright © 2005 John Wiley & Sons, Ltd.

Journal ArticleDOI
TL;DR: A set of patterns to direct the improvement of the software inspection process involves an evaluation of the inspection process capability, setting an overall goal for the improvement and updating the process according to pre-defined actions.
Abstract: Concrete guidelines are often helpful when planning software process improvement. Small companies, in particular, need detailed and unambiguous instructions detailing what process areas to improve, and how to achieve the improvement. This article introduces a set of patterns to direct the improvement of the software inspection process. The pattern approach has been applied, since it has been used very successfully for knowledge-sharing purposes and other areas of software engineering. The approach involves an evaluation of the inspection process capability, setting an overall goal for the improvement and updating the process according to pre-defined actions. Experiments with initial patterns show that the method provides a feasible and quick way of making inspections more effective. Using patterns may also be beneficial when launching more wide-ranging SPI activities, as companies can run preliminary trials of the improvement process on a smaller scale first. Copyright © 2005 John Wiley & Sons, Ltd.

Journal ArticleDOI
TL;DR: A simulator concept is presented that lets its user act in the role of a software-producing organization's top-level manager and is used by all stakeholders involved in software development to better understand the various aspects of software engineering, their interdependencies, and the resulting complex dynamics of the software- producing organization's operations.
Abstract: A software-producing organization is a complex system. An interactive simulation that allows playful exploration and experimenting can enhance the understanding of such complex systems. Therefore, a simulator concept is presented that lets its user act in the role of a software-producing organization's top-level manager. In this role, business measures must be monitored and investment decisions need to be made. The model is developed as a feasibility investigation with the premise of maximal abstraction, using concepts of the Capability Maturity Model Integration (CMMI) and balanced scorecards: 15 process areas deduced from CMMI serve as states and investment fields and 27 business performance indicators form the outputs. Simulations of different scenarios illustrate that the model is capable of reflecting underlying strategies for advancing or maintaining an organization's processes. Moreover, the iterative and interactive investment approach and the graphical and historical result presentation can give valuable insight into complex process dependencies. Therefore, the simulator can serve as a tool to playfully enhance the appreciation of software engineering practices. It can be used by all stakeholders involved in software development to better understand the various aspects of software engineering, their interdependencies, and the resulting complex dynamics of the software-producing organization's operations. Copyright © 2005 John Wiley & Sons, Ltd.

Journal ArticleDOI
Pierre America1, D.K. Hammer, Mugurel T. Ionita, Henk Obbink1, Eelco Rommes1 
TL;DR: This paper presents a systematic approach towards decision making for variability in product families in the context of uncertainty using a multi-view variation modeling technique, the selection of several scenarios of different kinds, and a quantitative analysis of quality aspects for these scenarios.
Abstract: In this article, we present a systematic approach towards decision making for variability in product families in the context of uncertainty. Our approach consists of the following ingredients: A suitable set of architectural views that bridge the gap between customer needs and available technology, a multiview variation modeling technique, the selection of several scenarios of different kinds, and a quantitative analysis of quality aspects for these scenarios. Copyright © 2005 John Wiley & Sons, Ltd.

Journal ArticleDOI
TL;DR: This article proposes several weaker properties that are still useful for characterizing good components of well-formed process components in context of the RHODES environment.
Abstract: RHODES is an environment for modelling software processes, in which software processes are described by using a Process Modelling Language called PBOOL+. In this environment, a software process is built from PBOOL+ process components that can be reused to construct other processes. To identify well-formed process components, we study properties to be able to characterize topological structure of the components. These properties should relate intrinsically to cohesion of a component, and coupling between components. We will consider two classical properties that originated from graph theory, which are connection and transitive closure. These two properties are sometimes too strict to be applied, so we propose several weaker properties that are still useful for characterizing good components. The article aims to present these topological properties and their applications to reusable process components in context of the RHODES environment. Copyright © 2005 John Wiley & Sons, Ltd.

Journal ArticleDOI
TL;DR: This article introduces the mechanism of structural constraints as a way of managing the variability of customizable systems, and presents the central element of the automated runtime customization approach, the concept of composable components.
Abstract: Self-customizable systems must adapt themselves to evolving user requirements or to their changing environment. One way to address this problem is through automatic component composition, systematically (re-)building systems according to the current requirements by composing reusable components. Our work addresses requirements-driven composition of multi-flow architectures. This article presents the central element of our automated runtime customization approach, the concept of composable components: the internal configuration of a composable component is not fixed, but is variable in the limits of its structural constraints. In this article, we introduce the mechanism of structural constraints as a way of managing the variability of customizable systems. Composition is performed in a top–down stepwise refinement manner, while recursively composing the internal structures of the composable components according to external requirements over the invariant structural constraints. The final section of the article presents our cases of practical validation. Copyright © 2005 John Wiley & Sons, Ltd.

Journal ArticleDOI
TL;DR: In order to manage the complexity of the alignment problem, the construct of workpractices is introduced as the main unit of analysis.
Abstract: In order to manage the complexity of the alignment problem, we introduce the construct of workpractices as the main unit of analysis. A workpractice is a meaningful, goal oriented social entity whe ...

Journal ArticleDOI
TL;DR: The problems resulting from the aforementioned mismatch are presented, the relevant decision dimensions that define the space of alternatives are presented and a framework for selecting the best alternative for each decision dimension based on a three-stage adoption model is presented.
Abstract: Several approaches to implement the concepts of software product families exist, but there is a tendency towards a revolutionary adoption. A revolutionary adoption of software product families is, however, a high-risk undertaking that may easily fail. Even if an iterative, evolutionary adoption is applied, there is a substantial risk that mismatches may develop in the organization due to a sub-optimal adoption approach. Mismatches between the optimal approach and the one currently used by an organization may lead to several problems, such as a high degree of erosion, mismatches between product needs and shared components, organizational ‘noise’ and inefficient knowledge management. This article (1) presents the problems resulting from the aforementioned mismatch, (2) presents the relevant decision dimensions that define the space of alternatives, (3) discusses the advantages and disadvantages of each alternative and (4) presents a framework for selecting the best alternative for each decision dimension based on a three-stage adoption model. Copyright © 2005 John Wiley & Sons, Ltd.

Journal ArticleDOI
Claudia Fritsch1, Burkhardt Renz
TL;DR: This work presents the four meta-level mechanisms which it has developed for the design of this software product line of legal expert system that separate domain descriptions from technical code in the following areas: data reference and access, input and output control, application and domain logic, and user command control.
Abstract: For more than ten years we have developed and maintained a software product line of legal expert systems. They share certain func- tionality, such as interaction with the user by means of a graphical in- terface, capturing data, storing information in a database, and printing documents. They differ mainly in two points: Domain descriptions and technical infrastructure. When we designed the architecture for this software product line, we focused on two requirements in particular: Domain experts should be involved in development, but should not have to learn a general-purpose programming language. Changes in domain descriptions should leave technical code untouched - and vice versa. Using a meta-level architecture we achieved a sound decoupling: Domain descriptions are kept in the meta level. Appropriate engines included in the base level act according to these descriptions. We present the four meta-level mechanisms which we have developed for the design of this software product line. They separate domain de- scriptions from technical code in the following areas: data reference and access, input and output control, application and domain logic, and user command control.

Journal ArticleDOI
TL;DR: This work illustrates the use of heuristic algorithms to improve the verification and validation of software process simulation models by formulated to guide a heuristic search algorithm that will attempt to locate particular combinations of parameter values that yield surprising results.
Abstract: This work illustrates the use of heuristic algorithms to improve the verification and validation of software process simulation models. To use this approach, an optimization problem is formulated to guide a heuristic search algorithm that will attempt to locate particular combinations of parameter values that yield surprising results. These surprising results often help the modeler to identify flaws in the model logic that would otherwise remain undetected. The general concepts are discussed and a simple example is provided. Copyright © 2005 John Wiley & Sons, Ltd.

Journal ArticleDOI
TL;DR: It is shown how pure priorities provided by the use of group AHP can be augmented by structuring the elements that were prioritized on the basis of an understating of the linkages between the process change requests.
Abstract: We present a prioritization scheme (based on the analytic hierarchy process (AHP)) to obtain individual and aggregate ranks of process improvement ideas as a part of software process improvement in an organization. This is a problem that organizations entering or operating in high maturity (CMM and CMMI levels 4 and 5) tend to face. In particular, we present the application of group AHP and interpretive structural modeling (ISM) to the problem of choosing process change requests (PCRs) in a software process improvement (SPI) program at IBM Global Services. [We are grateful to the quality group at IBM Global Services for their contribution to and participation in this project.] In eliciting PCRs, it is crucial to ensure that all PCRs are addressed and evaluated in a transparent and contextually relevant manner. In order to include diverse opinions and constituencies, the group-based approach is most appropriate. However, there are numerous variants that can be applied to such situations for group decision-making. In order to implement the option chosen by IBM, we developed a Java-based system and added a spreadsheet add-on for the ISM component. Specifically, we have shown how pure priorities provided by the use of group AHP can be augmented by structuring the elements that were prioritized on the basis of an understating of the linkages between the process change requests. Specifically, we have shown how complementarities (potential for synergy) between combinations of PCRs can be identified by integrating AHP and ISM. Copyright © 2005 John Wiley & Sons, Ltd.


Journal ArticleDOI
TL;DR: The issue combines a set of regular articles with a special focus featuring the approach encapsulated in software product lines, a feasible paradigm for software development, allowing the industry to benefit from significant improvements in cost, quality and business drivers.
Abstract: Welcome to another issue of SPIP. In this issue, we can once again see the diversity of activity in the process area. The issue combines a set of regular articles with a special focus featuring the approach encapsulated in software product lines. A product line is a set of software-intensive systems that shares a common and managed set of features satisfying the specific needs of a particular market segment or mission that is developed from a common set of core assets (where a core asset may be a software component, a process model, a plan, a document or any other useful artefact) in a prescribed way. The concept of software product lines is emerging as a feasible paradigm for software development, allowing the industry to benefit from significant improvements in cost, quality and business drivers. The investment in product lines is spread across the entire range, or family, of products. The engineering of product lines can therefore provide the flexibility and speed required to operate in a rapid and responsive market environment while also offering the capability for mass customisation of high quality products. The widely reported adoption of product lines techniques by many leading companies is fuelling greater interest in the technology and its potential, and we are delighted to dedicate a significant part of this issue to further this discussion. The regular articles included in this issue also offer plenty of food for thought with a range of topics covering various aspects of capturing knowledge, conducting post-mortems, adopting maturity