an agile-based framework for development of e-government projects

2 downloads 0 Views 781KB Size Report
The case study provides a guide to utilize the agile methodology based on ... Application of Agile software methodologies for e-government projects were ...
IJICIS, Vol. 12, No. 1, JANUARY 2012

AN AGILE-BASED FRAMEWORK FOR DEVELOPMENT OF E-GOVERNMENT PROJECTS A. T. Raslan

F. A. El-Licy

Department of Computer and Information Sciences, Institute of Statistical Studies and Research, Cairo University, GizaEgypt [email protected] [email protected]

Abstract: E-government projects have become extremely dynamic, which, necessitates rapid responses for adaptation and modification. The traditional approaches for developing E-governmental project are useful, only, in fixed requirements and resources [1, 2]. Agile methodologies, however, provide approaches for rapid responses in a dynamic environment. Frameworks for E-government projects must be amenable for rapid changes in both requirements and resources. The goal of this paper is to present an agile based framework for e-government projects. The framework is formulated to idealize the characteristics and properties of the government projects. It is developed based on software product management, extreme programming and SCRUM, with the initial selection of an appropriate agile methodology according to project scope. The framework was exercised through a practical case study at a government organization.1 Keywords: E-Government, Agile, Extreme Programming (XP), SCRUM, Software Product Management (SPM), Requirements Refinery, 4-Dimensional Analytical Tools (4-DAT).

1. Introduction Agile is a group of software development processes that are iterative, incremental, self-organizing and emergent [3]. Agile software development process encourages modularity on development process level, provides iterative approach with short cycles, supports adaptive processes, guarantees risk minimization, enforces people collaboration and, minimizes development cost. The Agile Manifesto was introduced in 2001 [4]. Since then, several agile software developments methodologies have introduced into practice [5]. Examples of such methodologies are Extreme Programming (XP) [6], SCRUM [7], Feature Driven Development (FDD) [8], and Dynamic Systems Development Method (DSDM) [9]. In the last few years, agile methodologies have proven to be successful in a large number of projects [10-12]. Research has shown that, the use of XP and SCRUM within a project could be, significantly, beneficial [13] [15]. Dynamic changes in governmental project requirements enforce a dynamic approach that support adaptive development environment during project execution. The very nature of e-government project necessitates a development approach that, among others, supports the manipulation of the project scale and be sustainable for requirement changes. This paper presents an integrated approach for software development for e-government. It adopts two of the major agile methodologies, namely, extreme programming (XP) and SCRUM. The integrated approach is based upon agile software product management (SPM) [16-18], which improves the 1

Business Sector Information Center in Cairo (BSIC)

57

Raslan and El-Licy: An Agile-Based Framework For Development Of E-Government Projects

handling of large-scale requirements in the e-government projects environment. The framework was exercised through experimental case study in a government organization (Business Sector Information Center in Cairo (BSIC)). The case study provides a guide to utilize the agile methodology based on SPM to improve the quality and the handling of a large amount of requirements in e-government projects. The paper is structured as follows: Section 2, includes a description of the proposed framework based on extreme programming and SCRUM methodologies. Section 3, describes the proposed framework processes, and introduces a method to compare and select the appropriate methodology to be applied at each level of software development. Section 4, discusses the practical application of the proposed framework as a field experiment. Section 5, presents and analyses the experiment results. Section 6, provides the paper conclusions.

2. The Framework Application of Agile software methodologies for e-government projects were executed through Software Product Management, (SPM). The framework is built upon requirement refining and effort estimation, followed by the selection of an appropriate methodology based on the task’s scope. The appropriate methodology is elected by applying the data analysis tool 4-DAT [19, 20]. The proposed framework is based, mainly, on the default extreme programming (XP), SCRUM process, Software Product Managements SPM, and 4-DAT tool. 2.1 Framework Description Figure 1, illustrates the E-government framework, it adopts agile SPM approach for requirements refinery, which, provides a solution for managing large requirements such as that of governmental projects. Agile requirement refinery includes four stages, namely: the vision, the theme, the concept, and the definition. Vision is the main idea of the project, which was brought up by the government agency, customers, and/or stakeholder. A product manager converts the vision from the generic terms to a set of theme(s). In this stage the vision is described in more detail to define the business problem and the main issues that fall within the theme scope. The product manager defines the functionality, estimates the investment, and determines the involved customers. The themes are reviewed by the development team(s) to ensure its technical feasibility. Each theme is refined further into a set of concept(s), which includes the set of solution stories. The solution stories constitute the set of backlogs to be achieved. Each of these backlogs is to be examined through the 4-DAT tool to select the appropriate development approach. Table 1, shows the criteria for selecting either Scrum or XP development process. The feedback, in the framework, is provided to update the backlogs, if necessary. System integration and testing conclude the development cycle. Figure 2, illustrates the requirement definition phases, which would be performed in three steps. In the first step the SPM team translates the concepts into a list of requirement definitions. In the second step, the defined requirements are to be described and justified to obtain the constraints that must be met during requirement implementation. In the third step, the development teams refine the requirement definition and describe the requirements functionality, technical specifications, and information about the requirements implementation.

58

IJICIS, Vol. 12, No. 1, JANUARY 2012

Figure 1: E-government Framework

3. The Framework Process Based on the meta-modeling technique, Figure 3 shows the framework process. In this Figure, the deliverable side has been omitted in order to focus on the process aspect. Its notation is based on a UML activity diagram. The process starts with a vision, which refer to the main idea that is define in a generic terms, brought up by the government agency, a customer or the stakeholders. The next step is to manipulate this vision through SPM to refine the requirements and to generate managed Product Backlog (PB). SPM team initiates the development phase by selecting a task from PB and determines a suitable agile development methodology. The development methodology for a given PB is determined according to the PB properties and the selection criteria based on the first dimension in 4-DAT, as shown in Table 1.

3.1 XP Process Under SPM Figure 4, shows the XP process based on SPM which includes: SPM phase, Iteration to release, Maintenance phase, and Productionizing phase. The SPM phase is responsible for managing government requirements that include the requirement refinery. After approving the requirement definitions, the costs and business value are to be calculated by SPM team. Each requirement is valued and prioritized into an ordered list and placed in the PB, where, it is used for deciding when features will be developed. After prioritizing the requirements, time is allocated to each requirement or concept to allow the determination of a sprint planning. When requirements are clear and precise, they are to be assigned to the development teams. Typically, several iterations of the system are executed before the production of the first release. Each task is broken down into number of iterations, each of which will be implemented in a time span of one to two weeks.

59

Raslan and El-Licy: An Agile-Based Framework For Development Of E-Government Projects

Figure 2: Requirement Definition Phases

Table 1: Scope evaluation of XP and SCRUM

Criteria

XP

SCRUM

Task size

≤ 40 Hours

> 40 Hours

Team

≤ 10

>10 or Distributed

Code style

Clean and simple

Not specified

Quick feedback required

Not specified

Physical environment

Co-located

Distributed

Business culture

Collaborative

Not specified

Technology environment (Tools, compilers… etc.)

The first iteration, though, creates the architecture of the whole task. The customer performs the functional tests to exercise the release after the completion of the iteration. The productionizing phase includes extra testing and checking of the performance of the task. In this phase, new changes may, still, be needed and a decision has to be made if they are to be included in the current release, or, rather, to be fed back into another iteration. The maintenance phase keeps the system in the production running, while, producing new iterations. The death phase occurs when the system satisfies customer requirements.

60

IJICIS, Vol. 12, No. 1, JANUARY 2012

Figure 3: Framework processes

3.2 SCRUM Process Under SPM Figure 5, shows SCRUM process based on SPM, which includes: SPM in outer box, and SCRUM development process in the inner box. The outer cycle refers to the SPM process, whereas, the inner cycle refers to scrum development process. The outer and inner processes are, both, working in sprints, while, the team perform tasks according to a product backlog and a sprint backlog. In the outer SPM cycle, project manager produces a product backlog to be fed into the SCRUM development process, while, developers, in the inner cycle, produce a release of the system. Development sprint is an iterative cycle of about two to six weeks, in which, the actual development of the product is performed. The development process is initiated by a sprint planning meeting to decide the tasks to be developed in the current sprint. A sprint is closed with a sprint review meeting to revise and demonstrate the fulfilled progress in that sprint. Accordingly, adjustments are to be performed as a feed back to the project as necessary.

61

Raslan and El-Licy: An Agile-Based Framework For Development Of E-Government Projects

Figure 4: XP process based on SPM

A backlog is a prioritized list of all items relevant to a specific product. This list includes customer requested enhancements, competitive product functionality, competitive edge functionality, technology upgrades, as well as the discovered bugs’ resolution, when presented. Each team that participates in the software development process maintains their own development sprint backlog.

Figure 5 : SCRUM process based on SPM

62

IJICIS, Vol. 12, No. 1, JANUARY 2012

4. The Experiment in BSIC A real time experiment was carried out to apply the framework in a governmental organization sector in Arab Republic of Egypt. This experiment is established as a case study in a production environment in the Business Sector Information Center (BSIC) 2 in Cairo. Data have been collected to answer the research questions. The data are gathered by means of: Interviews, bookkeeping and document analysis. An introductory survey was performed to study previous projects in BSIC, which included several projects over the last five years. The study reflects the size, scope and types of the projects implemented by the BSIC (www.bsic.gov.eg). The interviews were carried out with the development team in BSIC, including: Computer department manager, Requirement engineering, Quality assurance tester, and Database administrator. The framework is applied on BSIC portal to develop a training center services. The training center services includes: Course finding, Online booking, New courses identification, Lessons library, Center’s journal, Educational forum, and the News. The experiment was initiated by several workshops to train the team members for the application of the framework, as well as, the implementation of the agile methodologies. A close supervision was maintained to support the team members and to ensure the accuracy and completeness of the collected data through the team activities’ logs. 4.1 Roles and Responsibilities There are two identifiable roles in this experiment; each has his own tasks and purposes during the development process: SPM team, and Development team.  SPM Team is responsible for managing project requirements. The SPM team includes the scrum master, and the customer [18]. SPM practice provides requirement refinery, Product Backlog (PB), effort estimation, product management sprint, sprint planning meeting, product management sprint backlog, and daily meeting.  Development Team (DT) is responsible for producing a working version of the software. The team performs tasks according to a Product Backlog (PB) and sprint backlog. In e-government projects the DT includes developers (often four), a quality assurance tester (QAT), a database administrator (DBA), a system architect, a technical writer, and customers or end-users (often two). 4.2 Working Method The portal project development cycle was achieved based on the concept of alternating sprints. Concurrently, the SPM team(s) delivers an updated PB, while the development teams develop the next candidate product release. Based on the release candidate, SPM redefines the PB, resulting in continuous double-loop feedback. The project was developed according to the presented framework as follows:  Vision Stage: The vision was determined through a several interviews and meetings with the manager of training center and the team work in BSIC. The vision included a preliminary plan to develop the training services in BSIC. 2

BSIC arranges a complete information system which includes public sector companies and economic organizations. In addition it prepares international decisions and financial analysis. Recently, presents digital information services (via a web site) including job reports, training services, bid and tenders consolations, financial and industrial data.

63

Raslan and El-Licy: An Agile-Based Framework For Development Of E-Government Projects

 Themes Stage: In this stage, the vision is described in more details, as shown in Figure 6. The Figure depicts the BSIC training portal vision details, which includes: Identification system, Employee’s services, Supervisor’s services, and Training department services.  Requirement Definition Stage: In this stage, the concepts were translated into a set of requirement definitions, through which, the similar relationships among all the concepts were defined to reduce the number of tasks. Afterword, the requirement definitions were described in more details by using data modeling techniques such as UML. These stages were concluded by preparing two reports, namely, a project backlogs PB(s) and a technical report. Table 2, illustrates the project backlogs, including names, descriptions, estimated times and priorities for the tasks in the backlog. The technical report states the technologies utilized in the design and implementation of the backlog, such as: tools, hardware, software, and networks. The 4DAT tool is applied to help in selecting the appropriated agile methodologies (XP or SCRUM) to implement the selected backlog [14]. Table 3, presents the results of 4-DAT tool, which illustrates the portal project tasks with its backlogs and their selected implementation methodologies. Table 4, shows the a sample of a backlog that was accomplished during December 2010 which includes sprint title, start and end dates, and information about the tasks, their estimated and executed time table and their states. The remaining work hours for the tasks (at the beginning of each work day) is calculated and presented in the last row. Figure 8, shows the sprint burndown chart, which illustrates the remaining time in hours versus working days for the sample sprit in Table 4.

Figure 6: BSIC training portal vision

64

IJICIS, Vol. 12, No. 1, JANUARY 2012

5. Experiment Analysis and Results The data were collected from software backlogs starting from December 2010 to Aug 2011 3. The data-set consisted of fifteen sprint backlogs. For each sprint, the backlogs were grouped according to their characteristics. The backlogs characteristics are determined by the IT manager in BSIC. The information received from the BSIC was analyzed to detect any anomalies in the backlogs. The detected anomalies –when presented - were removed from the dataset. Table 5, displays statistics about the sprints included in this experiment. The first column in this table presents the sprint number; the second column, shows the time period, the third column shows the total number of tasks in this time period. The fourth column shows three sub-columns, each, specifies the period of times in hours. That includes the hours estimated for those tasks, the actual hours consumed in finishing those tasks, and the amount of unfinished work hours at the end of the sprint. The last column shows the sprint efficiency- effectivity-score. It is obtained by calculating the reduction in hours assigned to all the tasks as follows:

Where: Estimated hours: are the planned hours determined in the requirements refinery in SPM, Unfinished hours: are the over/under estimated hours recorded at the end of the sprint.

Table 2: Training center Portal Backlogs PB(s)

Task

Owned by

Priority High

1

Defining database

1.1-1.4

Entity Relational Schema, Relational Schema, Normalization, Database implementation using SQL server Design the GUI

Mr. Ezzat, Mr. Atef Tayh, Mr. Mohamed, Ms. Nglaa, Mr. Magdy

Banner animation, Home page, Admin page, Web services page, Today courses, Courses Register, Center ‘s Journal, Educational forum, Lessons Library, Center News, About us page Coding

Ms. Nglaa, Mr. Ezzat, Mr. Mohamed, Mr. Atef Tayh

Home page, Admin page, Users login, Password recovery, Edit profile, Unsubscribe, Logout, contact Us, Search, Today courses, Courses Registration, Center Journal, Educational forum, Lessons Library, About us page Test and integration

Ms. Nglaa, Mr. Mohamed, Mr. Ezzat, Mr. Atef Tayh

Home page, Admin page, Users login, Password recovery, Edit profile, Unsubscribe, Logout, contact Us, Search, Today courses, Courses Registration, Center Journal, Educational forum, Lessons Library, About us page Site Map

Ms. Nglaa, Mr. Ezzat, Mr. Mohamed, Mr. Atef Tayh

Low

Mr. Ezzat

Low

2 2.1- 2.11

3 3.1-3.16

4 4.1-4.16

5

3

Task Name

High HighMedium

Medium Medium

Low

The work was suspended over the period of Jan 24th to April 30th, due to national events

65

High

Raslan and El-Licy: An Agile-Based Framework For Development Of E-Government Projects

The bottom three rows in Table 5, present the average, the lowest and the highest scores for all items. The average of effectivity scores is computed as the weighted average of the effectivity of all the sprints according to their estimated working hours, as follows:

Where: N: number of sprints, Ei: effectivity of the ith sprint H: number of estimated working hours in the ith sprint. Table 3: 4-DAT results for methodology selection of the portal project # 1

2

Main Task Defining database Design the GUI

Task name Database implementation using SQL server Entity Relational Schema , Relational Schema, Normalization Home page, Admin page, Center ‘s Journal, Educational forum

SCRUM 

 

Banner animation, Web services page, Today courses, Courses Register, Lessons Library, Center News, About us page 3

Coding

4

Testing & integration

5

Planning the training requirements portal in training center Site map

6

XP 



Home page, Admin page, Password recovery, Edit profile, Unsubscribe, Search, Today courses, Courses Registration, Center Journal, Educational forum, Lessons Library About us page, contact Us, Users login, Logout



Home page, Admin page, Users login, Password recovery, Edit profile, Unsubscribe, Logout, contact Us, Search, Today courses, Courses Registration, Center Journal, Educational forum, Lessons Library, About us page Homepage, users login, verification module , user control panel(UCP), supervisors control panel (SCP) ,list of values (LOV), Courses registration, help, previous courses , Password recovery, Edit profile, Unsubscribe, Logout, contact Us, Search, Reports. Site map structure













The average sprint performance may be computed as the weighted average of the effectivity scores of all the sprints according to the sprint size (number of tasks), as indicated in Equation (3). The performance of the project development, could then, be evaluated according to the average of effectivity scores, Equation (2) and the average sprint performance, Equation (3).

66

IJICIS, Vol. 12, No. 1, JANUARY 2012

Where:

N: number of sprints, Ei: effectivity of ith sprint Si: number of tasks in the ith sprint. Table 4: Sample Sprint Timeline Task Title Start Date T#i 1 2 3 4 5 6 7 8

Defining Database December 5th 2010

5 Hours Working hours per day December 14th, 2010 End Date Sprint Siii M T W H S M T 5 5 0 0 0 0 0 0 5 5 3 0 0 0 0 0 5 3 5 4 5 4 3 5 5 5 3 5 5 5 5 5 20 17 8 9 8 10 8 15 115 95 78 70 61 53 45 35

Estii 15 10 10 20 15 15 10 10 105

Task Name Entity Relational Schema Relational schema Normalization Create tables Create Views Create Sequences Create Indices Create Synonyms Total Remaining Time

W 0 0

H 0 0

3 5 5 13 20

4 3 7 7

Actual 10 13 08 21 18 18 14 13 115

State Acpiv Acp Acp Acp Acp Acp Acp Acp

i. T#: Task Number, ii. Est: Estimated time, iii. S, M… H: week’s working days Sunday-to-Thursday, iv. Acp: accepted

Table 5: Sprints efficiency S. N.

Period Start date

End date

# Tasks

Hours

Results

Estimated

Actual

Unfinished

Effectivity

1

5-Dec-10

14-Dec-10

8

105

115

10

90.48%

2

15-Dec-10

24-Dec-10

17

200

212

12

94.00%

3

25-Dec-10

3-Jan-11

6

60

75

15

75.00%

4

4-Jan-11

13-Jan-11

10

85

85

0

100.00%

5

14-Jan-11

23-Jan-11

20

250

285

35

86.00%

6

1-May-11

10-May-11

12

135

175

40

70.37%

7

11-May-11

20-May-11

14

160

190

30

81.25%

8

21-May-11

30-May-11

16

150

140

0

100.00%

9

1-June-11

10-June-11

12

140

170

30

78.57%

10

11-June-11

20-June-11

15

165

198

33

80.00%

11

21-June-11

30-June-11

13

145

140

0

100.00%

12

1-July-11

10-July-11

16

160

210

50

68.75%

13

11-July-11

20-July-11

10

80

85

5

93.75%

14

21-July-11

30-July-11

15

110

120

10

90.91%

15

1-Aug-11

10-Aug-11

10

77

80

3

96.10%

The average value

12.93

134.80

152.00

18.20

86.49%

The minimum value

6.00

60.00

75.00

0.00

68.75%

The maximum value

20.00

250.00

285.00

50.00

100.00%

67

Raslan and El-Licy: An Agile-Based Framework For Development Of E-Government Projects

Table 6: Sprints workload

Period Start date End date

# Tasks

Results Avg. hours per task

Avg. tasks per person

Avg. Hours per person

5-Dec-10

14-Dec-10

8

13.13

1.6

21

15-Dec-10

24-Dec-10

17

11.76

3.4

40

25-Dec-10

3-Jan-11

6

10.00

1.2

12

4-Jun-11

13-Jun-11

10

8.50

2.0

17

14-Jun-11

23-Jun-11

20

12.50

4.0

50

1-May-11

10-May-11

12

11.25

2.4

27

11-May-11

20-May-11

14

11.43

2.8

32

21-May-11

30-May-11

16

9.38

3.2

30

1-Jun-11

10-Jun-11

12

11.67

2.4

28

11-Jun-11

20-Jun-11

15

11.00

3.0

33

21-Jun-11

30-Jun-11

13

11.15

2.6

29

1-Jul-11

10-Jul-11

16

10.00

3.2

32

11-Jul-11

20-Jul-11

10

8.00

2.0

16

21-Jul-11

30-Jul-11

15

7.33

3.0

22

1-Aug-11

10-Aug-11

10

7.70

2.0

15.4

The average value

12.93

10.42

2.59

26.96

The minimum value

6.00

7.33

1.20

12.00

The maximum value

20.00

13.13

4.00

50.00

The experimental results indicate that the average sprint performance is 87.0%, which approximates that of the effectivity score. The workload in each sprint is tabulated in Table 6. It includes the averages of: hours per task, tasks per person, and hours per person. The averages are calculated according to the estimated hours other than the actual hours.

6.

Conclusions

An e-government framework for project development was derived based on agile methodologies to accommodate the working environment and the project’s development scope of governmental organization. The selection of the appropriate agile methodology, was, an added flexibility in the framework that made it versatile to handle projects with several scopes. 4-DAT analytical tool was adopted and applied to establish the mentioned framework flexibility and to enhance the effectiveness of agile approach. The selection was based upon the size of a given sprint and the characteristics of the methodologies. The framework adopts two of agile methodologies, namely XP and SCRUM. The possibility of integrating agile methodologies to meet the rapid changing in requirements and resources, were demonstrated in the framework through the backlog update in the feedback. The framework was exercised through a field experiment in a governmental sector. The collaborative efforts of the leaders of Business Sector Information Center in Cairo, (BSIC) and the

68

IJICIS, Vol. 12, No. 1, JANUARY 2012

authors were dedicated to implement the experiment. The Head of the computer department of BSIC took the lead as a customer and provide the human resources as actors to execute the experiment. The framework was exercised to design and implement a solution to the BSIC’s training requirements. The training services were developed as a portal for planning and forecasting the training requirements for BSIC employees, as well as, the external audiences. The experiment was initiated as a workshop training sessions, then, developed to be a new practice for the BSIC team under the supervision of one of the authors. The team members established and implemented the project according to the proposed framework by using the SPM method and applying agile methodology standards. Table 2, shows the training center portal backlogs details with the team active members. Table 3, indicates the results of applying the analytical 4-DAT tool on the backlogs to select the appropriate development methodologies. Table 4, shows a sample sprint timeline, whereas, Figure 7, shows the burndown chart for that sample. Tables 5 and 6, demonstrate the results of applying the proposed framework on the training center of BSIC. The results indicated that the average of sprints’ time efficiency- effectivity score- is 86.49%. The average performance of the sprint as a number of scheduled tasks is 87%, which is an approximation of the effectivity score. One may claim that the effectivity score could be a fair measure for evaluating the progress of a project development contributed by the selected development methodologies.

Remaining Time (hours)

Burndown chart 140 120 100 80 60 40 20 0

Working Days Figure 7: Sprint burndown chart

69

Raslan and El-Licy: An Agile-Based Framework For Development Of E-Government Projects

References 1. Pekka Abrahamsson, Nilay Oza and Mikko T. Siponen, “Agile Software Development,” ISBN: 978-3-642-12574-4, pp. 31-59, 2010. 2. M. A. Awad, “A Comparison between Agile and Traditional Software Development Methodologies,” Master Thesis, Western Australia University, 2005. 3. John Hunt, “Agile software construction,” Springer, ISBN-10: 1-85233-944-6, 2006. 4. “http://agilemanifesto.org/iso/en/principles.html”, last visited in October 2011. 5. Ann L. Fruhling, Alvin E. Tarrell, “Best Practices for Implementing Agile Methods,” IBM center for the Business government, 2008. 6. Rostislav Fojtik, “Extreme Programming in Development of Specific Software,” Procedia Computer Science, V. 3, pp. 1464-1468, 2011. 7. “http://www.scrumalliance.org/”, visited in October 2011. 8. Stephen R. Palmer , John M. Felsing, “A Practical Guide to Feature-Driven Development,” Prentice Hall, ISBN: 978-0130676153, 2002. 9. David Cohen, Mikael Lindvall, Patricia Costa, “An Introduction to Agile Methods,” Advances in computers, Elsevier, V. 62, pp. 20-22, 2004. 10. Dr. Dobb’s, “http://www.ambysoft.com/surveys/”, last visited in October 2011. 11. Dr. Dobb’s, “http://www.agilemodeling.com/essays/proof.htm”, last visited in October 2011. 12. Narasimhaiah Gorla, Shang-Che Lin, “Determinants of software quality: A survey of information systems project managers,” Information and Software Technology, V. 52, Issue 6, pp. 602-610, June 2010. 13. Robert R. Kessler, “Strengthening the Case for Pair Programming,” IEEE Software, V. 17, Issue 4, 2000. 14. E. Hannay, Tore Dybå, Erik Arisholm, Dag I.K. Sjøberg, “The Effectiveness of Pair Programming,” Information and Software Technology, V. 51, Issue 7, pp. 1110-1122, 2009. 15. Mike Cohn, “Software Development Using Scrum,” Addison-Wesley, ISBN: 978-0321579362, 2009. 16. Kevin Vlaanderen, Sjaak Brinkkemper, Slinger Jansen, Erik Jaspers, “Applying SCRUM Principles to Software Product Management,” Information and Software Technology, V. 53, Issue 1, pp. 58-70, 2011. 17. Roman Pichler, “Agile Project Management with Scrum,” Addison-Wesley, ISBN: 978-0-32160578-8, 2007. 18. I. Vandeweerd, S. Brinkkemper, R. Nieuwenhuis, J. Versendaal, and L. Bijlsma, “Towards a reference framework for software product management,” in Proceedings of The 14th IEEE International Requirements Engineering Conference, 2006. 19. Bashir Nasr-Azadani, Reza Mohammad Doost, “Estimation of Agile Functionality in Software Development,” in Proceedings of the International Multi Conference of Engineers and Computer Scientists, V. 1, 2008. 20. A. Qumer, B. Henderson-Sellers, “An evaluation of the degree of agility in six agile methods and its applicability for method engineering,” Information and Software Technology, V. 50, Issue 4, pp. 280-295, 2008.

70

Suggest Documents