+ All Categories
Home > Documents > Documentation in Agile Development

Documentation in Agile Development

Date post: 01-Feb-2016
Category:
Upload: irish
View: 55 times
Download: 0 times
Share this document with a friend
Description:
Documentation in Agile Development. Christina Gu Jason Lee Stephen Smith. Agenda. Background Problem Statement Methodology Agile Overview Literature Search Case Studies Scrum Agile Document Development Framework (S.A.D.D.) DoD’s effort to embrace Agile Conclusion and Recommendation - PowerPoint PPT Presentation
Popular Tags:
31
Documentation in Agile Development Christina Gu Jason Lee Stephen Smith
Transcript
Page 1: Documentation in Agile Development

Documentation in Agile DevelopmentChristina GuJason LeeStephen Smith

Page 2: Documentation in Agile Development

Agenda• Background• Problem Statement• Methodology • Agile Overview• Literature Search• Case Studies • Scrum Agile Document Development Framework (S.A.D.D.)• DoD’s effort to embrace Agile• Conclusion and Recommendation• Website • Reference • Questions?

Page 3: Documentation in Agile Development

Background• The current economic situation is driving contractors to look

at more lean operating methods for project development.• Especially true for government contractors working with the

Department of Defense.• One method pursued is to switch from a waterfall model to

the more lean Agile method.

Figure 1: Defective and Wasteful Requirements in Traditional Development Process [4]

Page 4: Documentation in Agile Development

Problem Statement

• Sponsor: Boeing

• Problem statement:• Is Agile sufficient for satisfying documentation needs on DoD

mission-critical systems?• How is documentation impacted by adopting an Agile

methodology?

• Deliverables:• Report on Agile’s ability to meet documentation needs with a

framework developed for documentation generation.

Page 5: Documentation in Agile Development

What is a mission critical system?

• Systems critical to DoD’s ability to meet its responsibilities and include command and control systems, satellite systems, inventory management systems, transportation management systems, medical systems and equipment, and pay and personnel systems

Page 6: Documentation in Agile Development

Documents of primary interest

Milestone Review (Per DoD 5000)

Documentation of Relevance

SRR SSS – System/Subsystem Specification

SRS – Software Requirements Specification

IRS – Interface Requirements Specification

PDR SSDD–System/Subsystem Design Description

SDD – Software Design Description

IDD – Interface Design Description

CDR TEMP- Test and Evaluation Management Plan

SEP- System Engineering PlanFigure 2: Technology or Initiative Transition to Program of Records (MITRE, 2010)

Page 7: Documentation in Agile Development

Methodology

• Literature research• Ideas behind the Agile method and how it impacts

documentation• Existing methods for generating documentation in Agile

• Case studies• Interview various companies with regards to projects using Agile.• A look at the approach to documentation used in each of the

projects.

Page 8: Documentation in Agile Development

What is Agile

• A set of software best practices strung into an official set of principles in 2001 as the Agile Manifesto.

• Principles of Agile:• Individual and interactions over processes and tools• Working software over comprehensive documentation • Customer collaboration over contract negotiation• Respond to change over following a plan

Page 9: Documentation in Agile Development

Key Aspects of any Agile Methodology

Page 10: Documentation in Agile Development

Agile Misconception

1. Agile is a “Pizza Box” Methodology2. Agile is an All-or-Nothing Methodology3. Traditional Development is Inferior4. Becoming Agile Only Affects the Developers

Page 11: Documentation in Agile Development

Scrum Agile

• Key Components of Scrum Agile:• Cross-Functional Teams• Product Backlog• Timeboxed Development Iterations• End of Cycle

• Origins of Scrum• Japanese OR Advancements• Incremental Development in the U.S.• Object Oriented technologies in software

Page 12: Documentation in Agile Development

Scrum Agile

http://www.scrumalliance.com/pages/what_is_scrum

Page 13: Documentation in Agile Development

Traditional Systems Engineering Document Generation vs. Agile Systems Engineering

Traditional Systems

Engineering Documents

Generation

Agile Systems

Engineering Document

Generation

Page 14: Documentation in Agile Development

DoD’s Effort to Embrace Agile

The DoD is in the process of changing its Defense Acquisition Guideline to better serve Agile Software System Development

Figure 3: MITRE’s suggested DoD IT Acquisition Process [2]

Page 15: Documentation in Agile Development

Principles of Agile Documentation

• Generate “just enough” documentation• Should satisfy the objectives of the use for the

documentation.• Do not generate if not planning to be used.

• Used to transfer knowledge in the team and between teams.• Agile tends to keep knowledge within the team.• Knowledge transfer is essential for add-on projects

Page 16: Documentation in Agile Development

Two Approaches to Documentation in Agile

• Method 1: Adapted Agile• Use DoD standards as binding constraints to the Agile

effort.• Documentation must be generated to support periods

of customer reviews• Full and complete documentation expected• Plan a full documentation update with each

appropriate iteration with emphasis on the last iteration to generate complete deliverable documents.

• Ideal for contracts already in work with waterfall style program management.

Page 17: Documentation in Agile Development

Two Approaches to Documentation in Agile

• Method 2: Aligned Agile• Documentation is generated as needed during the

Agile implementation.• Customer understanding of the differences in Agile

method is essential.• Customer must agree to less documentation that is

generated only to meet documentation objectives.• In-progress reviews and supporting documentation

are also broken down to match better with shorter development iterations.

• Ideal when terms of documentation can be negotiated with the customer.

• Suggested for company-wide migration towards the use of Agile methods.

Page 18: Documentation in Agile Development

Project Case 1

• Raytheon• Method: Scrum Agile• Documentation method: Adapted Agile• Size of Project: 6 months• Notes: emphasis on generating documentation

to meet customer review dates, heavy on documentation updates on the last iteration

Page 19: Documentation in Agile Development

Project Case 2

• MITRE• Method: Hybrid Scrum Agile• Documentation method: Adapted Agile • Size of project: 3 years• Notes: Used a requirements governance council.

Phased project according to spiral development ideas but fit with Agile development on every spiral.

Page 20: Documentation in Agile Development

Project Case 3

• MITRE• Method: Hybrid Scrum Agile• Documentation method: Aligned Agile • Size of project: 1 year• Notes: Most documentation was done after the

fact to reflect the true state of the system and to reduce rework on documentation. Placed heavy emphasis on labeling documentation as complete only if it can transfer knowledge to a team that has not previously worked on project.

Page 21: Documentation in Agile Development

Project Case 4

• MITRE• Method: Hybrid Scrum Agile• Documentation method: Aligned Agile• Size of project: 2 years with 4-week long sprint

cycles• Notes: Used a requirements committee to

continuously align with customer needs. Heavy emphasis on documenting requirement changes.

Page 22: Documentation in Agile Development

Key Concepts of the Framework

• Designed to align with Scrum Agile

• Integrates to become a seamless part of Scrum Agile

The Core Concept:• Definition of Done

Page 23: Documentation in Agile Development

Framework Detail (1 of 2)

• Examine Required DocumentsPerform detailed analysis of projects documentation

requirements defined by stakeholders

• Finalize Contract AgreementReflect any changes/additions and finalize contract in terms of

documentation requirements

• Develop Product BacklogAdd relevant tasks associated with documentation to Product

Backlog

Page 24: Documentation in Agile Development

Framework Detail (2 of 2)

• SprintWork on document(s)

• End of Cycle ReviewEvaluate completed work on document against definition of

done. Present current work to stakeholders for review. If completed, handle accordingly, if not, prep for next sprint.

Page 25: Documentation in Agile Development

Conclusions

• The Agile methodology can be used to satisfy documentation needs for mission-critical software development for the department of defense with some modifications from its pure form.

• Customer interaction and acknowledgement of the differing needs for documentation using Agile is key.

Page 26: Documentation in Agile Development

Website• For more information please visit our website at:

http://mason.gmu.edu/~slee32/index.html

Page 27: Documentation in Agile Development

Reference

• Larson, E., Peters, J. Preparing the U.S. Army for Homeland Security: Concepts, Issues, and Options, Issue 1251. RAND Corporation, 2001.

• D. K. M. R. B. M. C. Carlton Northern, Handbook for Implementing Agile in Department of Defense Information Technology Acquisition, The MITRE Corporation, 2010.

• Standish Group. (2010). Chaos summary 2010. Boston, MA: Author.

• Session R. (2009). The IT complexity crisis: Danger and opportunity, Houston, TX: Object Watch.

• Beck, K., Beedle, M., Bennekum, A., Cockburn, A., Cunningham, W., Fowler, M., et al. (2001). Manifesto for Agile Software Development. http://agilemanifesto.org/ Accessed April 24, 2013.

Page 28: Documentation in Agile Development

Reference- cont.

• Scrum Is an Innovative Approach to Getting Work Done. The SCRUM Alliance (2010)http://www.scrumalliance.org/pages/what_is_scrum Accessed April 27, 2013.

• Burton, D., Hammons, C., Lapham, M., Schenker, A., Williams, R. (2010) “Considerations for Using Agile in DoD Acquisition.” http://www.sei.cmu.edu/reports/10tn002.pdf Accessed March 19, 2013.

• I. G. Stamelos and P. Sfetsos, Agile Software Development Quality Assurance, Idea Group Inc (IGI), 2007. [also steve figure 1]

• C. G. Cobb, Making Sense of Agile Project Management: Balancing Control and Agility, John Wiley & Sons, 2011.

• P. Schuh, Integrating Agile Development in the Real World, Charles River Media, INC, 2005.

Page 29: Documentation in Agile Development

Reference- cont.

• K. S. Rubin, Essential Scrum: A Practical Guide to the Most Popular Agile Process, Addison-Wesley, 2012.

• Ralph Hughes and the Ceregenics Data Management Team, Agile Data Warehousing, Delivering World-Class Business Intelligence Systems using Scrum and XP, iUniverse, 2008.

• Forward, A. (2002) Software Documentation – “Building and Maintaining Artifacts of Communication,” www.site.uottawa.ca/~tcl/gradtheses/aforward/aforward_thesis.doc Accessed March 30, 2013.

• DAGS (Defense Acquisition Management System), Enclosure 2 of DoD Instruction 5000.02, Operation of the Defense Acquisition System, Defense Acquisition Guidebook

• Dr Steven J. Hutchison, Achieving Enterprise Agility in DoD IT Acquisition, 2010

Page 30: Documentation in Agile Development

Reference- cont.

• K. A. Saleh, Software Engineering, J. Ross Publishing, 2009.

• R. Mall, Fundamentals of Software Engineering, PHI Learning Pvt. Ltd., 2009.

• D. Panchal, "Scrum Alliance," 03 September 2008. [Online]. Available: http://www.scrumalliance.org/articles/105-what-is-definition-of-done-dod. [Accessed 27 April 2013].

• Scrum Alliance, "Scrum Alliance, Transforming the World of Work," [Online]. Available: http://www.scrumalliance.org/pages/scrum_artifacts. [Accessed 4 April 2013].

Page 31: Documentation in Agile Development

Questions & Comment


Recommended