scispace - formally typeset
Search or ask a question

Showing papers on "User story published in 2011"


Book
07 Oct 2011
TL;DR: This insightful book examines how this often misunderstood technique can help your team stay focused on users and their needs without getting lost in the enthusiasm for individual product features.
Abstract: User story mapping is a valuable tool for software development, once you understand why and how to use it. This insightful book examines how this often misunderstood technique can help your team stay focused on users and their needs without getting lost in the enthusiasm for individual product features. Author Jeff Patton shows you how changeable story maps enable your team to hold better conversations about the project throughout the development process. Your team will learn to come away with a shared understanding of what youre attempting to build and why. Get a high-level view of story mapping, with an exercise to learn key concepts quickly Understand how stories really work, and how they come to life in Agile and Lean projects Dive into a storys lifecycle, starting with opportunities and moving deeper into discovery Prepare your stories, pay attention while theyre built, and learn from those you convert to working software

91 citations


Proceedings ArticleDOI
22 Sep 2011
TL;DR: It is shown that such effort estimation works reasonably well if user stories are written in a structured way and if requirements are developed along with the project and only sketched in a rough manner.
Abstract: In this paper, we propose a method for predicting development effort based on user stories. Such approach is well suited for Agile software projects where requirements are developed along with the project and only sketched in a rough manner. We apply the proposed method to two industrial Agile software projects of very different size and structure. We show that such effort estimation works reasonably well if user stories are written in a structured way.

61 citations


Journal ArticleDOI
TL;DR: By drawing on innovation theory it was found that participatory design in agile development bears the characteristics of a successful organizational innovation.
Abstract: – This paper aims to explore a case of customer and user participation in an agile software development project, which produced a tailor‐made information system for workplace support as a step towards a theory of participatory design in agile software development., – Based on an integrated framework for user participation derived from the participatory design literature the research was performed as a case study and semi‐structured, open‐ended interviews were conducted with about a third of the development team and with a representative sample of key players and future users in the customer organization. The interview data were supplemented with company and project documents., – The paper found genuine customer and user participation carried out by onsite customers and by other operational staff in the form of direct and indirect participation and with functional and democratic empowerment. The onsite customers played informative, consultative and participative roles. The analysis revealed that planning games, user stories and story cards, working software and acceptance tests structured the customer and user participation. This form of user participation supported a balance between flexibility and project progress and resulted in a project and a product which were considered a success by the customer and the development organization. The analysis showed that the integrative framework for user participation can also fruitfully be used in a new context to understand what participatory design is and how, when and where it can be performed as an instance of a design process in agile development. As such the paper contributes to an analytical and a design theory of participatory design in agile development. Furthermore the paper explicates why participatory design contributes to the successful completion of the investigated project. By drawing on innovation theory it was found that participatory design in agile development bears the characteristics of a successful organizational innovation. Grounding further explanations in complex adaptive systems theory the paper provides an additional argument why participatory design despite some identified challenges fosters project staff to successfully carry out the agile development project., – The paper presents an exploratory, empirical study of an understudied phenomenon and contributes to theory building.

61 citations


Journal ArticleDOI
TL;DR: An optimization model is developed that generates a release plan taking into account story size, business value, possible precedence relations, themes, and uncertainty in velocity prediction and can be used in practice to enable the customer representative to take more informed decisions faster.
Abstract: Context Extreme Programming (XP) is one of the most popular agile software development methodologies. XP is defined as a consistent set of values and practices designed to work well together, but lacks practices for project management and especially for supporting the customer role. The customer representative is constantly under pressure and may experience difficulties in foreseeing the adequacy of a release plan. Objective To assist release planning in XP by structuring the planning problem and providing an optimization model that suggests a suitable release plan. Method We develop an optimization model that generates a release plan taking into account story size, business value, possible precedence relations, themes, and uncertainty in velocity prediction. The running-time feasibility is established through computational tests. In addition, we provide a practical heuristic approach to velocity estimation. Results Computational tests show that problems with up to six themes and 50 stories can be solved exactly. An example provides insight into uncertainties affecting velocity, and indicates that the model can be applied in practice. Conclusion An optimization model can be used in practice to enable the customer representative to take more informed decisions faster. This can help adopting XP in projects where plan-driven approaches have traditionally been used.

42 citations


Journal ArticleDOI
TL;DR: The aim was to examine the possibilities and limits of involving end-users in applied knowledge-producing settings and the agile method DSDM supposed to enhance user participation as well as improve other aspects of the management of computer system design projects.
Abstract: The aim was to examine the possibilities and limits of involving end-users in applied knowledge-producing settings. Is it possible to have user participation as a part of the design process? The agile method DSDM supposed to enhance user participation as well as improve other aspects of the management of computer system design projects.

29 citations


BookDOI
03 Mar 2011

29 citations


Proceedings ArticleDOI
29 Aug 2011
TL;DR: Key terms in agile development, such as “working product” and “user story”, must be mapped intelligently to terms in requirements engineering — and not simply copied: the “product” of requirements engineering is not the same as the ‘product’ being implemented by developers.
Abstract: While Requirements Engineering textbooks state that a requirements specification must be complete, in real-life projects we are always starting too late, with too few resources, so we can't do everything. The software development community has solved a similar problem (not having enough resources to implement everything that was asked for) by introducing agile development methods, which offer ways of segmenting the overall project, and choosing which parts to allocate resources to. This paper is about how insights from that agile development community can be applied to requirements engineering activities for any (agile or non-agile) development project. Key terms in agile development, such as “working product” and “user story”, must be mapped intelligently to terms in requirements engineering — and not simply copied: the “product” of requirements engineering is not the same as the “product” being implemented by developers.

22 citations


Proceedings ArticleDOI
20 Jun 2011
TL;DR: In this article, an approach moving from the COCOMO (Constructive Cost Model) worked, using the COSMIC measurement method at the micro-level (User Stories) jointly with the quality of the documentation for deploying the functional analysis is proposed.
Abstract: Agile Project Management (APM) is widely used in different software projects from different application domains. APM includes a series of commonly used project management approaches with the intent to handle better uncertainty and unpredictability, which is not always successful. For instance, in a large portion of software projects, accurate planning (and estimating) of whole project lifetime with Agile is difficult. Since a continuously change in (product) requirements occurs as well their incompleteness at the project initialization phase, project plan must be under control and continuously be revised according to its needs and resources. In Agile projects, planning is mainly based on guess estimate of the effort trying to balance the product and the resources not showing the part of each one. In order to improve the guess estimate, this paper proposes an approach moving from the COCOMO (Constructive Cost Model) worked, using the COSMIC measurement method at the micro-level (User Stories) jointly with the quality of the documentation for deploying the functional analysis. The proposed procedure shows that this approach can help the planner to know better why the global effort changes by the time.

21 citations


Proceedings ArticleDOI
03 Nov 2011
TL;DR: In this paper, the COSMIC measurement method is used to analyze and report on the quality of the documentation of user stories, which represent the user requirements, for dynamic project plans.
Abstract: Agile Project Management (APM) must adopt dynamic project plans to better handle the uncertainty and unpredictability associated with the Agile Software Development (ASD) methodologies. For these dynamic project plans, the functional size of the evolving requirements can be measured with COSMIC measurement method. To support this measurement activity, the quality of the documentation of the user stories, which represent the user requirements, is important to be interpreted correctly. In the research reported here, the COSMIC method is used to analyze and report on the quality of the documentation of user stories.

19 citations


Book
07 Oct 2011

18 citations


Proceedings ArticleDOI
11 Mar 2011
TL;DR: Basic methods of agile planning are introduced based on author's practice experience from two aspects: release plan, estimation of iteration, and then three popular agile methodologies are listed: Xp, scrum and crystal.
Abstract: Agile Development is a kind of iterated software development method. Its basic concept is people-centered. Estimate and scheme of Agile Methodologies are different from the traditional ones. Most papers at home and abroad about Agile Development mainly concentrate the contrast and fusion between Agile Development and traditional methods. However, researches about estimate of Agile Development procedure are lesser. This paper introduces basic methods of agile planning based on author's practice experience from two aspects: release plan, estimation of iteration, and then lists three popular agile methodologies: Xp, scrum and crystal. Finally it summarizes the whole paper.

Proceedings ArticleDOI
15 Aug 2011
TL;DR: A holistic approach is proposed that supports management of the development progress in geographically distributed agile projects by identifying and co-ordinating the impact of the technical factors on progress, which will provide distributed agile teams with improved awareness of the actual progress of the software.
Abstract: Progress in agile development is determined by the amount of 'working software' produced. Source code versioning, unit testing, continuous integration and acceptance testing (AT) are technical factors that affect the maturity of the software artefects produced. Therefore, development progress is subject to change due to impact of these technical factors (e.g. modifying source code artefects may affect completed user stories). In co-located agile projects, face-to-face interaction is used to share information about changes that may affect development progress. However, in distributed projects, team members find it harder to maintain an awareness of these changes, which affects their understanding of the development progress. This causes them to rely on less accurate progress information and contributes in producing low quality code and unnecessary rework and delays. In this paper, we propose a holistic approach that supports management of the development progress in geographically distributed agile projects by identifying and co-ordinating the impact of the technical factors on progress, which will provide distributed agile teams with improved awareness of the actual progress of the software.

Book ChapterDOI
20 Jun 2011
TL;DR: This paper first characterize the kind of inconsistencies arising in web applications requirements and then shows how to isolate them using a model-driven approach and with a set of examples it illustrates the approach.
Abstract: Web applications evolve fast. One of the main reasons for this evolution is that new requirements emerge and change constantly. These new requirements are posed either by customers or they are the consequence of users' feedback about the application. One of the main problems when dealing with new requirements is their consistency in relationship with the current version of the application. In this paper we present an effective approach for detecting and solving inconsistencies and conflicts in web software requirements. We first characterize the kind of inconsistencies arising in web applications requirements and then show how to isolate them using a model-driven approach. With a set of examples we illustrate our approach.

Book ChapterDOI
01 Jan 2011
TL;DR: This chapter reviews the functional requirements to specify what an API should do and also specifically covers the creation of use cases and user stories as a way to describe the behavior of the API from the user's point of view.
Abstract: Publisher Summary This chapter focuses on the techniques that result in elegant API design. It analyzes the various qualities that contribute to good API design and looks at standard design patterns that apply to the design of maintainable APIs. It puts all information together and covers the specifics of high-quality API design, from overall architecture planning down to class design and individual function calls. However, good design is worth little if the API doesn't give users the features they need. The chapter reviews the functional requirements to specify what an API should do and also specifically covers the creation of use cases and user stories as a way to describe the behavior of the API from the user's point of view. These different analysis techniques can be used individually or together, but they should always precede any attempt to design the API.

Journal ArticleDOI
TL;DR: This paper proposes an extension to the user story, based on four sub processes related to the CMMI-DEV model, that enhance the ability of user stories to accumulate the information that is mandatory for achieving ISO 9001 certification.
Abstract: For software organizations needing ISO 9001 certification, including those that have adopted agile methodologies, it is important that their software life cycle processes be able to manage the requirements imposed by this certification standard. However, the user stories in the XP agile methodology do not provide auditors with enough evidence that certain steps and activities have been performed in compliance with ISO 9001. This paper proposes an extension to the user story, based on four sub processes related to the CMMI-DEV model: 1) identification of the source of the user story; 2) categorization of the non functional requirements; 3) identification of the user story relationships; and 4) prioritization of the user stories. These sub processes are aligned with the XP release planning phase, and enhance the ability of user stories to accumulate the information that is mandatory for achieving ISO 9001 certification.

Journal Article
TL;DR: This article presents a hands-on design game that focuses in particular on the structuring of opportunities for user participation in requirements definition, and provides an opportunity to raise central questions about communication, knowledge transfer, and the level and timing of user involvement during systems projects.
Abstract: 1. INTRODUCTION Systems analysis and design is a standard course offering within information systems programs and often an important lecture topic in Information Systems core courses. Given the persistent difficulty that organizations experience in implementing systems that meet their requirements, it is important to help students in these courses get a tangible sense of the challenges they will face, whether as Information Systems practitioners or business professionals, in the systems analysis and design process. This article presents a hands-on design game that focuses in particular on the structuring of opportunities for user participation in requirements definition. The game provides an opportunity to raise central questions about communication, knowledge transfer, and the level and timing of user involvement during systems projects. Students are organized into small groups that adopt multiple roles over the course of a simplified "system" development life cycle. Each group begins in the role of users with the initial articulation of a business need or opportunity, which they simulate by creating a model using Lego blocks. The Lego models are then put away, and pairs of teams exchange roles as users and analysts in conversations focused on preparing requirements documents that will give an account of each user team's model. During the subsequent construction phase, programmer teams attempt to use these requirements documents to recreate the original models. Acceptance testing follows, during which the entire class evaluates pairs of models--in each case, the original model representing the users' business requirements and the corresponding model created by the programmer team. The final step in the exercise is a post-project review, when the class discusses the challenges that arose during the game, and the instructor draws parallels to problems in system implementation practice. This exercise has been used and refined over a period of several years in core courses in information technology management at both the undergraduate and graduate levels and in classes in systems analysis and design. Students find the exercise highly engaging, and the divergent mismatches that always surface between "before" and "after" models are the cause of hilarity and good-natured finger-pointing. (See Figure 1a below with a "before" model on the left and the companion "after" model on the right; the requirements document is in Figure 1b.) [FIGURE 1A OMITTED] [FIGURE 1B OMITTED] The full payoff comes in the final phase, when students, with the instructor's guidance, draw out parallels between the difficulties encountered first-hand in the interpersonal communication of the game and the problems that commonly arise in translating business professionals' requirements via systems analysis for software builders. This also provides an opportunity to explore the implications of alternative project structures for user participation, and to make connections more broadly to issues of IT governance and business-side accountability. We begin our discussion here with some theoretical grounding in user participation issues, and we then explain how the Design Game helps to surface problems in this domain. After a summary overview of the game, step-by-step instructions are offered for conducting the exercise. Next, we provide detailed teaching notes to help guide instructors in preparing materials, integrating the exercise within a course plan, facilitating the related class discussion, and making the most of the game as a metaphor for real-world challenges in user participation. We conclude with some observations on learning outcomes, based on our experiences in using the game. 2. USER PARTICIPATION IN SOFTWARE DEVELOPMENT In the 1980s and 1990s system development methodologies relied upon the identification of known requirements (Valusek and Fryback, 1985) in a manner that didn't accurately model the real world as users experienced it (Land, 1982). …

Book ChapterDOI
Elena Tsiporkova1, Tom Tourwé1
31 Oct 2011
TL;DR: A prototype of a software tool implementing an entity resolution method for topic-centered expert identification based on bottom-up mining of online sources and a repository of user profiles to be used for technology scouting purposes is described.
Abstract: This paper describes a prototype of a software tool implementing an entity resolution method for topic-centered expert identification based on bottom-up mining of online sources. The tool extracts and unifies information extracted from a variety of online sources and subsequently builds a repository of user profiles to be used for technology scouting purposes.

Book ChapterDOI
Ken Power1
10 May 2011
TL;DR: This paper describes a technique called Silent Grouping that can be used to compliment Planning Poker, explaining how to apply it so that large sets of user stories can be sized in minutes.
Abstract: User stories are used to describe the functionality delivered in a product or system. Planning Poker is a common technique for sizing user stories, however it has challenges. It can be time consuming and teams can get bogged down in unnecessary discussion. This paper describes a technique called Silent Grouping that can be used to compliment Planning Poker, explaining how to apply it so that large sets of user stories can be sized in minutes. Experiences of seven Scrum teams from Cisco’s Unified Communications Business Unit are used as examples. The paper shows how to apply the technique with co-located teams, and includes an example of how it was used with distributed teams. Silent Grouping has several advantages. It is fast, which in turn leads to significant time and cost savings. It also has more subtle benefits. This paper discusses the techniques, challenges, cost savings and benefits of Silent Grouping.

Book ChapterDOI
01 Jan 2011
TL;DR: This work compared Agile methodologies with interaction and product design methodologies and discovered that both fields have much in common with respect to their underlying principles and values, and improved collaboration support for geographically-dispersed software development teams.
Abstract: Agile processes are gaining popularity in the software engineering community. We investigate how selected design practices and the mind-set they are based on can be integrated into Agile software development processes to make them even stronger. In a first step, we compared Agile methodologies with interaction and product design methodologies and discovered that both fields have much in common with respect to their underlying principles and values. Based on our findings and by applying both methodologies, we improved collaboration support for geographically-dispersed software development teams. We designed and implemented ProjectTalk and CodeTalk as part of our XP-Forums platform. Independently of their geographical location, team members can create and maintain user stories with ProjectTalk. CodeTalk enables team members to efficiently communicate their concerns regarding development artifacts in an informal manner.

01 Jan 2011
TL;DR: Agile communities can potentially benefit from the NORMAP Methodology by utilizing a systematic and risk-driven lightweight engineering process to visually model and plan NFRs as first-class artifacts in agile environments.
Abstract: Agile software development methodologies, such as Scrum, have gained tremendous popularity and proven successful in quickly delivering quality Functional Requirements (FRs). However, agile methodologies have not adequately identified, modeled, and linked Non-Functional Requirements (NFRs) with FRs in early development phases. Researchers agree that NFRs have been generally ignored in conventional methodologies, especially ignored in agile environments. This dissertation develops a conceptual framework for NFR modeling in agile processes. The proposed Non-functional Requirements Modeling for Agile Processes (NORMAP) Methodology investigated the feasibility of identifying, linking, and modeling Agile Loose Cases (ALCs) with Agile Use Cases (AUCs) and Agile Choose Cases (ACCs). AUCs are newly proposed hybrid of use cases and agile user stories. ALCs are proposed—loosely—defined agile NFRs. ACCs are proposed potential solutions (operationalizations) for ALCs. A lightweight adapted version of the NFR Framework was developed including 25 important NFRs selected out of 161 for this study. Further, an enhanced risk-driven agile requirements implementation sequence (NORPLAN) was developed and visualized as a tree-like view (NORVIEW). The NORMAP Methodology was validated through developing NORMATIC--a Java-based agile visual modeling simulation tool and two case studies. NORMATIC utilized Natural Language Processing (NLP) tools to parse requirement sentences and identify potential ALCs. The first case study utilized the Predictor Models in Software Engineering (PROMISE) dataset used in NFRs classification. NORMAP successfully parsed and classified ALCs for 529 out of 607 (87.15%) independent user requirements. The second case study utilized the European Union eProcurement System’s 26 functional requirements. NORMAP successfully parsed and classified ALCs for 50 out of 57 sentences that included possible ALCs (87.71%). Furthermore, requirements quality and project management metrics were used to calculate a risk-driven requirements implementation sequence using three priority schemes. Results showed that Riskiest-Requirements-First priority scheme planned requirements in 17 sprints--two months earlier than the Highest-Business-Value-First scheme (21 sprints) and one month earlier than the Riskiest-Requirements-Last scheme (19 sprints). Agile communities can potentially benefit from the NORMAP Methodology by utilizing a systematic and risk-driven lightweight engineering process to visually model and plan NFRs as first-class artifacts in agile environments.

Proceedings Article
23 Oct 2011
TL;DR: eConference3P is presented, a tool for supporting distributed agile teams who applies the planning poker technique to perform collaborative user story estimation, which results in quick but reliable estimates.
Abstract: Estimating and planning are critical to the success of any software project, also in the case of distributed agile development. Previous research has acknowledged that conventional agile methods need to be adjusted when applied in distributed contexts. However, we argue that also new tools are needed for enabling effective distributed agile practices. Here, we present eConference3P, a tool for supporting distributed agile teams who applies the planning poker technique to perform collaborative user story estimation. The planning poker technique builds on the combination of multiple expert opinions, represented using the visual metaphor of poker cards, which results in quick but reliable estimates.

Proceedings ArticleDOI
Xin Dong, Qiusong Yang, Qing Wang, Jian Zhai, Günther Ruhe1 
05 Dec 2011
TL;DR: A method combining advanced search and risk analysis is proposed to support decision-making for the best set of user stories in extreme Programming (XP), and a set of trade-off solutions is offered as decision support for XP teams.
Abstract: Selection of the right user stories and planning their implementation for the next iteration is critical for success of extreme Programming (XP). Success here is measured by the total business value generated from all user stories implemented within time. The business value of an iteration is composed by the value of the individual user stories selected and additional value created from themes of user stories. In this paper, a method combining advanced search and risk analysis is proposed to support decision-making for the “best” set of user stories. The advanced search technique combines genetic search with subsequent application of the hill climbing technique. The top candidate solutions are further analyzed pro-actively in terms of their risk to be implementable in-time with the available effort. As a proof-of-concept, the applicability of the proposed method is applied for the planning of one iteration in a case study project with 40 user stories. As a result, a set of trade-off solutions is offered as decision support for XP teams.

Proceedings ArticleDOI
05 Sep 2011
TL;DR: This position paper provides a first step towards a systematic analysis of continuous user input by identifying its main challenges and aligning helpful techniques from requirements engineering research to address the challenges in a common framework.
Abstract: Novel requirements elicitation approaches suggest to continuously gather and communicate user input to engineering teams. The resulting data usually consists of a large amount of unstructured information in the form of natural language and may include conflicting user needs that have to be detected and resolved to obtain consistent requirements. This position paper provides a first step towards a systematic analysis of continuous user input by identifying its main challenges and aligning helpful techniques from requirements engineering research to address the challenges in a common framework.


Dissertation
01 Jan 2011
TL;DR: This thesis posits that by appropriate interview question design and the flexibility offered by follow-up questions, the interviews will provide data for a “light” Distributed Cognition analysis compared to the traditional ethnographic approach used by other Distributed cognition researchers.
Abstract: User stories are a simple and direct way of creating and managing software requirements. They are widely used in contemporary practice. This widespread adoption suggests they are providing some benefits when compared to previous methods of managing requirements. But are these benefits realised in practice? If so, can these benefits be explained? This thesis seeks to address these questions by studying how software development teams use user stories in practice and identifying benefits and challenges. The approach proposed in this thesis is to take the view of user stories as part of a Distributed Cognition system that has a goal of developing requirements and implementing these in a software application. In this perspective, the Distributed Cognition system can include any interactions between people, artefacts and aspects of the environment that contribute to these cognitive goals. Distributed Cognition theory is then applied to the user story process to identify cognitive activities distributed through the system and provide some insights and explanations related to practice, benefits and challenges from this perspective. Examples of these are:  As the cards are of roughly equal units of effort, they can be used to illustrate sprint status;  Using the story wall changes what had been an intensive cognitive process into a perceptual one;  Keeping the wall meaningful – up-to-date and easily perceivable. In addition, this thesis documents the user story process from semi-structured interviews with practitioners within an organisation. This detailed description will provide data for a “light” Distributed Cognition analysis compared to the traditional ethnographic approach used by other Distributed Cognition researchers. It is a “light” Distributed Cognition analysis in the sense that the analysis of the interview data limited in the cognitive interactions that are uncovered compared to data based on observation of the actual events. This thesis, however, posits that by appropriate interview question design and the flexibility offered by follow-up questions, the interviews will provide

Book ChapterDOI
01 Jan 2011
TL;DR: In this chapter you will learn all about the Scrum project methodology, which defines a process skeleton containing a set of roles, activities, and artifacts, all focused on supporting a team committed to delivering a product.
Abstract: In this chapter you will learn all about the Scrum project methodology. You will be introduced to the iterative nature of Scrum, which defines a process skeleton containing a set of roles, activities, and artifacts, all focused on supporting a team committed to delivering a product.

Book
06 Dec 2011
TL;DR: This comprehensive guide covers a variety of user experience techniques, such as analyzing user needs and expectations, creating design concepts, prototyping, using agile development, conducting usability testing, developing user interface guidelines, defining user interface patterns, and specifying metrics.
Abstract: Evolve to a user-centered product development philosophy Deliver superior products and escalate your market share by employing real-world user experience success strategies from global corporations. Featuring in-depth case studies from Yahoo!, Siemens, SAP, Haier, Intuit, Tencent, and more, UX Best Practices: How to Achieve More Impact with User Experience offers proven methods for instituting user-centered design in industrial environments. Discover how to integrate user experience activities into product development processes for investment and consumer goods in different regions, reduce product complexity, increase product quality, and boost the bottom line. This comprehensive guide covers a variety of user experience techniques, such as analyzing user needs and expectations, creating design concepts, prototyping, using agile development, conducting usability testing, developing user interface guidelines, defining user interface patterns, and specifying metrics. Communicate objectives and user requirements in design briefs Establish end-to-end UX-centered development policies Foster collaboration between managers, designers, and engineers Integrate user experience metrics into business target frameworks and the product development process Employ agile development and design thinking methods Collect, measure, and analyze usability data Employ a User Experience Evaluation System to identify problems Convey and assess design ideas quickly using prototypes Achieve consistency across products with UI patterns and libraries

Book ChapterDOI
28 Mar 2011
TL;DR: A tentative solution which facilitates end-users requirements elicitation by providing contextual information codified in software product line variability models is proposed, allowing them to specify their needs and to customize, for example, a service-oriented system based on contextual information in variability models.
Abstract: [Context and motivation] Product line variability models have been primarily used for product configuration purposes. We suggest that such models contain information that is relevant for early software engineering activities too. [Question/Problem] So far, the knowledge contained in variability models has not been used to improve requirements elicitation activities. State-of-the-art requirements elicitation approaches furthermore do not focus on the cost-effective identification of individual end-user needs, which, for example, is highly relevant for the customization of service-oriented systems. [Principal idea/results] The planned research will investigate how end-users can be empowered to document their individual needs themselves. We propose a tentative solution which facilitates end-users requirements elicitation by providing contextual information codified in software product line variability models. [Contribution] We present the idea of a "smart" tool for end-users allowing them to specify their needs and to customize, for example, a service-oriented system based on contextual information in variability models.

Book ChapterDOI
01 Jan 2011
TL;DR: This chapter explains why the need for an agile approach to software development has developed, the issues it helps to solve, and the reasons for its rapid rise in popularity.
Abstract: In this chapter you will be introduced to the principles and practices that constitute agile development. You will learn that agile development is as much a philosophical and cultural shift as it is a set of practices and processes. You will understand why the need for an agile approach to software development has developed, the issues it helps to solve, and the reasons for its rapid rise in popularity.

Book ChapterDOI
08 Jun 2011
TL;DR: The application of lean principles and agile project management techniques in the domain of large-scale software product development has gained tremendous momentum over the last decade, which results in empowerment of individuals which leads to increased flexibility but at the same time sacrifices managerial control through traditional steering practices.
Abstract: The application of lean principles and agile project management techniques in the domain of large-scale software product development has gained tremendous momentum over the last decade. This results in empowerment of individuals which leads to increased flexibility but at the same time sacrifices managerial control through traditional steering practices. Hence, the design of adequate incentive schemes in order to align local optimization and opportunistic behavior with the overall strategy of the company is a crucial activity from a business perspective.