Professional Documents
Culture Documents
54b9f717a Scrum Framework For Requirement Engineering Practices
54b9f717a Scrum Framework For Requirement Engineering Practices
54b9f717a Scrum Framework For Requirement Engineering Practices
Abstract: Nowadays, software development industry has departed from traditional development to Agile
software development. In this paper we have proposed a conceptual framework. The main emphasis in
this framework is to make the requirement engineering process more effective and add to the suppleness
of it. The research method we have used in this research is case studies, expert reviews from the software
industry, existing published reports and articles. The proposed framework has resulted in improving
the previous related work. This framework provides guidelines and an easy to adapt approach for the
software development teams.
————————————————
Received, April 2012; Accepted, September 2013
*Corresponding author: Yaser Hafeez; Email: yasir@uaar.edu.pk
264 Asma Batool et al
sets up guidelines to understand the methodologies phase, task development phase and development
[21]. phase. These five phases are combined together to
Rohit Ramanujam et al describes the study support a vigorous agile requirement engineering
about the multi vendor challenging situations and process [23]. The Standish Group surveyed IT
propose a collaborative framework for agile scrum executive managers for their opinions and found
development. Subject Matter Expert (SME) plays a out that why projects succeeded. The project
vital role in producing successful and collaborative success is based upon three major factors which are
environment. Each team must have its own scrum user involvement, managerial support and a clear
master who is responsible for removing the barriers declaration of requirements [24].
[22].
Shvetha Soundararajan presents the Agile 3. MATERIALS AND METHODS
Requirement Generation Model (Agile RGM) As many organizations move to agile development
that is structured to support the agile requirement and switching from traditional requirement
engineering process. This model helps to choose engineering to agile requirement engineering
the different existing agile methods provides a because of issues and problems faced in the
successful agile requirement engineering process. traditional requirement engineering. In large
Agile RGM consists of five phases, education organization’s requirements are evolving throughout
phase, feature development, story development
Fig. 1. Scrum process flow with respect to roles, activities and artifacts.
266 Asma Batool et al
the development process and due to the iterative side of figure are showing the artifacts of the scrum
nature of agile development. In this context, we approach. The detail description of this process is
have decided to present a framework that combines given below:
the requirement engineering and scrum practices. A The product owner is responsible to define
scrum is a very useful and efficient agile approach the desired outcomes of the project and prioritize
that helps to make the requirement engineering the features of the product. Regulate feature and
process flexible. The proposed framework priority in every iteration, as needed. Product owner
makes certain the efficiency and flexibility of considers the Return On Investment (ROI) and
the requirement engineering process, software responsible for accepting or reject work results.
development removes the issues that are faced in
the traditional requirement engineering process due Scrum master represents the management of the
to changing requirements, lack of communication team and ensures that team is efficient and creative.
and feedback of customers. Our proposed research Resolves the problems and protect the team from
method consists of two parts. First part in Fig. 1 external intervention.
describes the flow of scrum activities and the second Cross-functional team consists of 5-9 people
part in Fig. 2 presents the proposed requirement including programmers, testers, and designers. The
engineering framework with the scrum practice. team is responsible for failure or success of the
product.
3.1 Scrum Process Flow with Respect to Roles,
Product Backlog Contains the requirements that
Activities and Artifacts
are prioritized by the product owner. Requirements
This process hierarchy in Fig. 1 describes the flow are prioritized at the start of each sprint.
of scrum activities in the form of its Roles, Artifacts
Sprint Backlog consists of the requirements
and Activities. Gray boxes on the left side in Fig. 1
that are ready to develop. Each Item on the sprint
are representing the roles, white boxes in the middle
backlog includes description and estimate.
are showing activities and white boxes on the right
User Story is the initial requirements in the stakeholders in every step in the planning phase.
form of story cards and index cards.
In Sprint Planning selects the items from the Phase 2: Approved & well-disposed Requirements
product backlog and creates the sprint backlog. After the identification of preferred requirements,
these are collected in sprint backlogs. In this phase
Sprint Review presents what has been product owner and scrum masters select the team
completed during the sprint in the form of demos of for constructing the selected requirements. Sprint
new features. backlog requirements are ready to implement in
Sprint Retrospective involves all the members running sprints.
i.e. scrum master, product owner, team and Phase 3: Build
stockholders. It has occurred at the end of every Sprint
after review meeting and discusses the experiences In this phase, approved requirements are designed,
and problems faced during development. coded and tested by a cross functional team. The
approved requirements are designed by preparing
3.2 Proposed Scrum framework their class diagram to make them more specific
and understandable for programmers. Then these
The overall structure of our proposed framework designed requirements are coded by choosing a
consists of 5 phases as shown in figure 2. Basically language in which programmer can easily code
these steps show the flow of our work. Each of these them. After implementation requirements are tested.
steps, perform a valid functionality in the proposed Tester applies unit tests to check the functionality
framework. Each and every step is detailed below: and reliability of the system. A daily meeting of 15
Vision: In the vision we describe what we want to minutes duration is arranged to check the efficiency
do with the system. of the team members, only product owner, scrum
master and team members can discuss the status
User stories: User stories are the description of
of work. The output of this phase is the working
requirements expressed by customers that consists
software.
of sufficient information needed by the developers
for the effort estimation and implementation.
Phase 4: Testing
Product owners elicit the requirements by
consulting with the stakeholders in the form of user In this phase, the team itself applies the system
stories. The requirements are taken on story cards. test to finally check the working software. In the
All requirements are not gathered at this stage; they system test team assure that the system is fulfilling
are flexible and can be changed at any given stage. the specified requirements and checks its overall
After gathering the requirements in the form of user performance by deploying software.
stories these raw requirements enter into the first
step which is planning. Phase 5: Handover System
The main objective of this phase is to verify the
Phase 1: Planning product that meets the specified requirements and
Planning consists of prototype modelling, assesses the response of the customers. Product
requirement prioritization and effort estimation. owner, scrum master, team and stakeholders gather
Prototype modelling is not a scrum activity; we to test the deployed software. In sprint retrospective,
integrate it into scrum to make the requirements the team demonstrates the performance of working
clearer. It helps to understand the requirements in software. Acceptance testing is done by the product
the form of user stories. With the agile point of owner and stakeholders. If the product meets its
view Product owner prioritizes the requirements specified requirements and raises the level of
and then estimates the efforts of these prioritized satisfaction then the product will deliver to the
requirements. The input of this phase is the stakeholders otherwise pointed issues are resolved
raw requirements and output is the preferred in the planning phase in the next cycle.
requirements. The product owner engages the
268 Asma Batool et al
development Lifecycle. These mentioned success 3. Sen, A.M. & K. Hemachandran. Elicitation of Goals
factors are necessary for the effective requirement in Requirements Engineering using Agile Methods.
engineering process. From the expert opinions it is Computer Software and Applications Conference
Workshops(COMPSACW), 34th Annual IEEE on
clear that scrum RE is the most effective method of 19-23 July 2010, Seoul, Koera, p. 263-268 (2010).
the requirement engineering process. 4. Wiegers, K.E. Requirements Management: The
Proven Way to Accelerate Development. Principal
Consultant at Process Impact and Sandra McKinsey,
5. concLuSIonS Senior Product Marketing Manager at Serena
Software, Review, www.serena.com (2005).
Requirement engineering is an important and
5. Agile Alliance URL http://www.agilealliance.com/,
difficult phase in a sense that different stakeholders last accessed 11 Dec, 2011.
have different attitude and expectations about the 6. Ramesh, B., L. Cao & R. Baskerville. Agile
system and problem occurs when all requirements requirements engineering practices and challenges:
are elicited at an early stage because at very an empirical study. Information Systems Journal 2010
initial stage customer did not have an idea about - Wiley Online Library 20(5) 449–480 (17th Nov,
2007). DOI: 10.1111/j.1365-2575.2007.00259.x
the system so changes are must throughout the
7. Paetsch, F., A. Eberlein & F. Maurer. Requirements
process. Our main emphasis behind this research Engineering and Agile Software Development.
is to build and evaluate a framework that can Enabling Technologies: Infrastructure for
help the requirement engineers in the requirement Collaborative Enterprises, WET ICE 2003.
engineering process. This framework will minimize Proceedings. 12th IEEE International Workshops on
the complexities and barriers faced during the 9-11 June, 2003, p. 308-313 (2003).
8. Lucia, A.D. and A. Qusef. Requirements Engineering
traditional requirement engineering process. We
in Agile Software Development. Journal of
have evaluated the proposed framework through Emerging Technologies in Web Intelligence 2(3):
the expert judgment opinions on the basis of eight 212-220 (2010).
requirement engineering success factors. This 9. Savolainen, J., J. Kuusela & A. Vilavaara.
framework has established the standard guidelines Transition to Agile Development Rediscovery of
for the effective requirement engineering process. Important Requirements Engineering Practices.
Requirements Engineering Conference (RE), 18th
In future work, we will evaluate the value and
IEEE International Workshops, Sept. 27 2010-Oct. 1
validation of our framework through more case 2010, Sydney, NSW, Australia, p. 289-294 (2010).
studies to make it more effective and applicable in 10. Kavitha, C.R., & S.M. Thomas. Requirement
any kind of project. gathering for small projects using agile methods.
IJCA Special Issue on “Computational Science -
6. REFEREncES New Dimensions & Perspectives” NCCSE, p. 122-
128 (2011).
1. Westfall, L. Software Requirements Engineering: 11. Abrahamsson, P., O. Salo, J. Ronkainen & J. Warsta.
What, Why, Who, When, and How? Software Agile Software Development Methods: Review and
Quality Professional 7(4): 14 (2005). Analysis. VTT Electronics, VTT Publications, p.
2. Nuseibeh, B. & S. Easterbrook. Requirements 107-478 (2002).
Engineering: A Roadmap. Department of Computing. 12. Schwaber, K. & J. Sutherland. Scrum. Internet:http://
Imperial College, London (2000). www.scrum.org/storage/scrumguides/Scrum%20
Guide.pdf, Mar. 30 2011.
270 Asma Batool et al
13. Sutherland, J., & K. Schwaber. The Scrum Papers: 19. Jyothi, V.E. & K.N. Rao. Effective Implementation
Nuts, Bolts, and Origin of an Agile Process. of Agile Practices: Ingenious and Organized
http://scrumtraininginstitute.com/home/stream_ Theoretical Framework. International Journal of
download/scrumpa pers, last accessed 11 Dec 2011. Advanced Computer Science and Applications 2 (3):
14. Hossain, E., M.A. Babar, H. Paik & J. Verner. 41-48 (2011).
Risk Identification and Mitigation Processes for 20. Hossain, E., M.A. Babar, & H. Paik. Using Scrum
Using Scrum in Global Software Development: A in Global Software Development: A Systematic
Conceptual Framework. 16th Asia-Pacific Software Literature Review. Global Software Engineering,
Engineering Conference, 1-3 Dec. 2009, Penang, p. 2009. ICGSE 2009. Fourth IEEE International
457-464 (2009). Conference on 13-16 July 2009, Limerick, p. 175-
15. Patel, C. & M. Ramachandran. Story card maturity 184 (2009).
model (smm): A process improvement framework 21. Overhage, S., S. Schlauderer, & D. Birkmeier. What
for agile requirements engineering practices. Makes IT Personnel Adopt Scrum? A Framework
Journal of Software 4(5): 422-435 (2009). of Drivers and Inhibitors to Developer Acceptance.
16. Lucia, A.D., & A. Qusef. Requirements Engineering System Sciences (HICSS), In: Proceedings 44th
in Agile Software Development. Journal of Hawaii International Conference, 4-7 Jan. 2011,
Emerging Technologies in Web Intelligence 2(3): Kauai, HI, USA, p. 1-10 (2011).
212-220 (2010). 22. Ramanujam, R. & I. Lee. Collaborative and
17. Coram, M. & S. Bohner. The Impact of Agile Methods Competitive Strategies forAgile Scrum Development.
on Software Project Management. Engineering of Network computing and advanced information
Computer-Based System. ECBS ‘05. 12th IEEE management (NCM). In: 7th International
International Conference and Workshops, 4-7 April Conference, 21-23 June 2011, Gyeongju, 123-127
2005, p. 363-370 (2005). (2011).
18. Jun, L., W. Qiuzhen & G. Lin. Application of 23. Soundararajan, S. Agile Requirements Generation
agile requirement engineering in modest-sized Model: A Soft-structured Approach to Agile
information systems development requirements Requirements Engineering. Master’s thesis, Dept.
engineering and agile software development. In: of Computer Science, Virginia Tech, http://scholar.
Proceedings Second WRI World Congress on lib.vt.edu/theses/available/etd- 08132008-193105/ (
Software Engineering. Zhejiang University, City 2008).
College, Hangzhou, China (2010).