270 likes | 717 Views
Agile documentation development methodology. Giby Panicker and Judith Benjamin 1-Dec-2012. Agenda. Software Engineering Process Models Waterfall vs Agile-a comparison Agile evolution and principles Scrum - an Agile method Agile Best Practices Benefits of working in Agile.
E N D
Agile documentation development methodology Giby Panicker and Judith Benjamin1-Dec-2012
Agenda Software Engineering Process Models Waterfall vs Agile-a comparison Agile evolution and principles Scrum - an Agile method Agile Best Practices Benefits of working in Agile
Software Engineering Process Models Waterfall model Spiral model Agile development
Waterfall vs Agile Requirements Requirements Time Time Analysis Design Voice of the Customer 2-4 weeks iteration Implementation Test Deployment Deployment Agile method Waterfall flow
Agile Evolution Working software over comprehensive documentation Individuals and interactions over processes and tools Customer collaboration over contract negotiation Responding to change over following a plan Moving quickly and lightly
Principles of Manifesto Early and continuous delivery of working software Satisy the customer Adapting to change even late in the cycle Change in requirements Deliver fully tested working software with 2-4 weeks iteration Deliver working software frequently Work together throughout the project Work together daily Build projects around motivated individuals and motivate them Work around motivated individuals The most efficient and effective method of conveying information to and within a team Face-to-face conversation
Principles of Manifesto (contd…) Working software is the primary measure of progress Working software Promote sustainable development. Maintain constant pace. Sustainable development Continuous attention to technical excellence Continuous attention Simplicity is essential Simplicity Scrum teams Self organizing teams The team reflects on how to become more effective, then tunes and adjusts its behavior accordingly Tunes and adjusts to the product behavior
Crystal XP Scrum Lean Kanban DSDM FDD and others... Agile - Many methods
Scrum- an Agile method Product Owner Product Backlog
Agile http://www.youtube.com/watch?v=nVdScd4m-x8
Agile Documentation Best Practices Planning R E L E A S E • The techniques and documentation deliverables are well suited for documenting products developed in agile environment. Documentation Verification
Planning Best Practices Plan it well • Estimate the features • Consult the development team • Answer standard questions • Conduct a doc planning poker session • Collaborate on estimates with other writers • Reduce rework Use the right tool • Get access to the same planning tool that the Agile development team is using • JIRA, Rally or XPlanner • Documentation, development and QA tasks.
Planning Best Practices • Create documentation tasks • House all documentation stories in “Tech Pubs Documentation” • Create “Tech Pubs Overhead” component to log overhead tasks • Clarify on the number of iterations the documentation can be completed after the development team’s completion of the feature Manage your tasks • Topic-oriented writing is authoring concise, self-contained units of information about a specific topic • Use a topic-oriented approach such as the Darwin Information Typing Architecture (DITA) or Information MappingTM • Using Information Mapping and DITA enables to produce right documentation at the right time Adapt right methodologies
Documentation Best Practices Prioritize • Work on high-priority, low risk items • Return to lower-priority or higher-risk items • Aligning to feature priorities • Convert user stories to task-oriented topics • Task-oriented writing complements development’s use of user stories • Task-oriented writing is a necessity given the short iteration cycle and often limited number of writing resources • Helps writers achieve minimalism Focus on content
Verification Best Practices Collaborate • For each task, ask the QA team to create an equivalent task for reviewing • Request a “hardening” iteration • Establish processes such as verification process, peer writer install process, peer review process etc. • Cross-functional review • Face-to-face communication • Attend daily stand up meetings, sprint meetings, demos etc • For teams that are not co-located find ways to communicate as personally as possible in real-time: • Instant Messaging • Web cameras with video conferencing Communicate
Working Together as a Team planning poker session create user stories similar to product access to feature tracking tool Planning Ongoing Communication at all phases reduce rework topic oriented writing prioritize the doc tasks convert user stories into topics Documentation establish new processes request for hardening iteration create tasks for QA to review Verification
Benefits of working in Agile • Better integration of documentation with product • Incremental development; reviews in chunks • Early feedback from users • Timely sharing and resolution of impediments in authoring • Comprehensive insight into product changes and development • Greater teamwork • Improved quality • Lowered cost