SlideShare a Scribd company logo
Lightweight Documentation:
An Agile Approach
DC Scrum User Group (DCSUG) meeting 18-Aug-2014
August 19, 2014
• Excella Consulting for food, refreshments
and space
Thanks
Stephen Ritchie
◊ 20+ years of experience in software
development
◊ Focused on Agile since 2007
– Commercial software development
– .NET software engineering & Agile
principles
– Agile coaching & mentoring
◊ Organizer of the DC Alt.Net User Group
◊ stephen.ritchie@excella.com
◊ @ruthlesshelp
What could
possibly go wrong
with detailed
specification?
Introduction
“Documentation is not
anti-agile. If it were, then
there would not be any
agile books, articles, or
blogs.”
- Robert “Uncle Bob” Martin, 9-Mar-2006
Why do we
document?
Valid reasons
Questionable
One principle
Communicate, communicate, communicate
Traditional SDLC Phases
• Definition
• Analysis
• Design
• Construction
• Test
• Transition and Migration
• Production
Traditional SDLC Phases
• Definition => Detailed Project Plan
• Analysis => Detailed Specification
• Design => System Architecture
• Construction => Detailed Design Spec
• Test => Test Plans and Test Scripts
• Transition and Migration => Installation
Manuals
• Production => Operation Manuals
Who, What,
and Why?
Exercise
• In your group
• List of traditional SDLC documents.
• For each document
– Who is the audience(s) for the document?
– What is the reader looking for in the
document?
– Why does the reader want the document?
• In order to avoid something
• In order to have/obtain/achieve something
Who, What, and Why?
Who, What, and Why?
Debrief
Traditional vs. Agile
• Executable Specification (Gherkin)
• Document Stable Things (Final Concept)
• Generate System Docs (Rev. Engineer)
• Just Simple Enough (Not Too Simple)
• Display Information Publicly (Wiki)
• Purpose, Audience, Sufficiency
• Iterate, Iterate, Iterate
• Find A Better Communication Medium
• Start With Diagrams The Team Already Uses
Agile Docs: Best Practices
• Traditional
– Project Plans
– Schedules
– Costs
– Resources
Planning
• Agile
– Product Vision
– Product Roadmap
– Releases
– Sprints
– Team Charter
– Individuals
• Core
• Peripheral
• Traditional
– The System Shall
– Features
– Functional Specs
– Non-functional
– Screen Specs
– Rules
Requirements
• Agile
– Product Vision
– Product Roadmap
– User Stories
– Wireframes
– Style Guidelines
– Spec By Example
– Definition of Ready
• Traditional
– Architecture
– System Overview
– Detailed Design
Design
• Agile
– Working Software
– Unit Tests
– Diagrams
– Repository/Wiki
• ReadMe
• Developer
Handbook
• Release Notes
• Traditional
– Configuration Guide
– Installation
Instructions
– Administration
Guide
– User Manual
Support, Ops, and User
• Agile
– Working Software
• Installer
• Context Help
• User Experience
– Wiki
• ReadMe
• Release Notes
Build a better
document
Exercise
• In your group
• Iteration 1: Topic-Oriented Writing
– Using Post-It Notes Write 1 Topic
– Limit The Topic To 1 to 3 Words
• Review
• Iteration 2: Reader Stories
– As a (reader) … I want (content) … So that …
(I avoid something or I have something)
• Review
Build a better document
Build a better document
Debrief
• Agile/Lean Documentation: Strategies for Agile
Software Development,
Scott W. Ambler
http://www.agilemodeling.com/essays/agileDocumentati
on.htm
• Agile Technical Documentation,
Jean-Luc Mazet
http://writersua.com/articles/Agile_doc/
• Writing User Documentation in an Agile
Development Environment,
Anne Gentle
http://justwriteclick.com/2007/07/02/writing-end-user-
documentation-in-an-agile-development-environment/
More Info
• Let’s Go Around The Room
• One Idea
– Ways to improve the exercises
– Topics I should cover
– What could be done better next time
One More Thing
DC Software
Craftsman User
Group
(DCSCUG)
DC Scrum User
Group
Alt .NET
DC
International
Institute of
Business
Analysis (IIBA)
User Experience
Professionals
Association
(UXPA DC)
Agile Defense
Proponents Team
(ADAPT)
DC Continuous
Delivery Group
(DCCD)
Agile Leadership
Network
(ALN-DC)
django-district
DC Business
Intelligentsia
(DCBI)
Our Community
Excella founded or leads local IT organizations and Meetups. Join us for an
event!
Need space for your event?
Contact Us: info@excella.com
• .Net/C#, Python, Java, Ruby Developers
• Ux Designers
• ScrumMasters
• Agile Coaches
• IT Project Manager & Program Analyst
• Business Analysts (BA)
• Business Intelligence (BI)
Excella is Hiring
• Excella Upcoming Classes/Events
– CSM in College Park, MD
• 8/18 – 8/19
– Automated Acceptance Tests for BA
• 9/8 – 9/12
– Advance CSPO
• 9/15 – 9/16
– CSM
• 9/22 – 9/23
– Agile BI Training
• 10/7
– DC Business Analyst Development Day
• 10/10
User Group discount code, contact organizer
Training/Events
• AgileDC
– http://agiledc.org/
– 21 OCT 2014
Events
• DC Business Analyst Development Day (DCBADD) on
– Friday, October 10, 2014
– Westin Arlington Gateway​
• Conference will bring together Business Analysts, Project
Managers, and Agile Practitioners to learn valuable skills for
succeeding in an Agile environment. Topics will include:​
– Emotional intelligence​
– Change management​
– Agile requirements​
– Agile techniques in the Federal Government​
• Register - http://www.eventbrite.com/o/excella-
consulting-2232953017
Events

More Related Content

What's hot

Top 10 challenges faced by the scrum master
Top 10 challenges faced by the scrum masterTop 10 challenges faced by the scrum master
Top 10 challenges faced by the scrum master
David Tzemach
 
full-stack agile - Scrum Basics
full-stack agile -  Scrum Basicsfull-stack agile -  Scrum Basics
full-stack agile - Scrum Basics
Ashley-Christian Hardy
 
01. problem statement
01. problem statement01. problem statement
01. problem statementAinul Yaqin
 
Kanban of Thrones - Manual do Facilitador
Kanban of Thrones - Manual do FacilitadorKanban of Thrones - Manual do Facilitador
Kanban of Thrones - Manual do Facilitador
Eduardo Peres
 
Papeis Ágeis - uma proposta operacional Scrum
Papeis Ágeis - uma proposta operacional ScrumPapeis Ágeis - uma proposta operacional Scrum
Papeis Ágeis - uma proposta operacional Scrum
Kleitor Franklint Correa Araujo
 
Extreme Programming
Extreme ProgrammingExtreme Programming
Extreme Programming
Universitas Teknokrat Indonesia
 
Sprint review and Retrospective
Sprint review and RetrospectiveSprint review and Retrospective
Sprint review and Retrospective
R. Gesit Prasasti Alam, PSM®
 
Apresentação Metodologia Ágil: Família Crystal de Cockburn
Apresentação Metodologia Ágil: Família Crystal de CockburnApresentação Metodologia Ágil: Família Crystal de Cockburn
Apresentação Metodologia Ágil: Família Crystal de Cockburn
Vanessa Finoto
 
Rpl 07 - pembuatan prototipe perangkat lunak
Rpl   07 - pembuatan prototipe perangkat lunakRpl   07 - pembuatan prototipe perangkat lunak
Rpl 07 - pembuatan prototipe perangkat lunakFebriyani Syafri
 
Makalah perancangan web (website 5 k lapak)
Makalah perancangan web (website 5 k lapak) Makalah perancangan web (website 5 k lapak)
Makalah perancangan web (website 5 k lapak)
Roni Darmanto
 
Rad, Agile & Extreme Programming
Rad, Agile & Extreme ProgrammingRad, Agile & Extreme Programming
Rad, Agile & Extreme Programming
Raka Auramuwahid
 
Penerapan decision support system dalam perusahaan
Penerapan decision support system dalam perusahaanPenerapan decision support system dalam perusahaan
Penerapan decision support system dalam perusahaan
putrirakhma13
 
Terms of Reference
Terms of ReferenceTerms of Reference
Terms of Reference
Ghifaroza Rahmadiana
 
Project Charter
Project CharterProject Charter
Project Charter
wida dwitiayasa
 
Peran teknologi informasi dalam bidang perdagangan melalui jaringan elektronik
Peran teknologi informasi dalam bidang perdagangan melalui jaringan elektronikPeran teknologi informasi dalam bidang perdagangan melalui jaringan elektronik
Peran teknologi informasi dalam bidang perdagangan melalui jaringan elektronikImron Imron
 
Introduction agile scrum methodology
Introduction agile scrum methodologyIntroduction agile scrum methodology
Introduction agile scrum methodology
Amit Verma
 
[RPL2] Deployment Diagram
[RPL2] Deployment Diagram[RPL2] Deployment Diagram
[RPL2] Deployment Diagram
rizki adam kurniawan
 
[Node js] frameworks de testes end to-end baseados em nodejs
[Node js] frameworks de testes end to-end baseados em nodejs [Node js] frameworks de testes end to-end baseados em nodejs
[Node js] frameworks de testes end to-end baseados em nodejs
Bárbara Cabral da Conceição, CTFL
 
Scrum basics
Scrum basicsScrum basics

What's hot (20)

Top 10 challenges faced by the scrum master
Top 10 challenges faced by the scrum masterTop 10 challenges faced by the scrum master
Top 10 challenges faced by the scrum master
 
full-stack agile - Scrum Basics
full-stack agile -  Scrum Basicsfull-stack agile -  Scrum Basics
full-stack agile - Scrum Basics
 
01. problem statement
01. problem statement01. problem statement
01. problem statement
 
Kanban of Thrones - Manual do Facilitador
Kanban of Thrones - Manual do FacilitadorKanban of Thrones - Manual do Facilitador
Kanban of Thrones - Manual do Facilitador
 
Papeis Ágeis - uma proposta operacional Scrum
Papeis Ágeis - uma proposta operacional ScrumPapeis Ágeis - uma proposta operacional Scrum
Papeis Ágeis - uma proposta operacional Scrum
 
Extreme Programming
Extreme ProgrammingExtreme Programming
Extreme Programming
 
Sprint review and Retrospective
Sprint review and RetrospectiveSprint review and Retrospective
Sprint review and Retrospective
 
Apresentação Metodologia Ágil: Família Crystal de Cockburn
Apresentação Metodologia Ágil: Família Crystal de CockburnApresentação Metodologia Ágil: Família Crystal de Cockburn
Apresentação Metodologia Ágil: Família Crystal de Cockburn
 
Rpl 07 - pembuatan prototipe perangkat lunak
Rpl   07 - pembuatan prototipe perangkat lunakRpl   07 - pembuatan prototipe perangkat lunak
Rpl 07 - pembuatan prototipe perangkat lunak
 
Makalah perancangan web (website 5 k lapak)
Makalah perancangan web (website 5 k lapak) Makalah perancangan web (website 5 k lapak)
Makalah perancangan web (website 5 k lapak)
 
Rad, Agile & Extreme Programming
Rad, Agile & Extreme ProgrammingRad, Agile & Extreme Programming
Rad, Agile & Extreme Programming
 
Penerapan decision support system dalam perusahaan
Penerapan decision support system dalam perusahaanPenerapan decision support system dalam perusahaan
Penerapan decision support system dalam perusahaan
 
Terms of Reference
Terms of ReferenceTerms of Reference
Terms of Reference
 
Project Charter
Project CharterProject Charter
Project Charter
 
Peran teknologi informasi dalam bidang perdagangan melalui jaringan elektronik
Peran teknologi informasi dalam bidang perdagangan melalui jaringan elektronikPeran teknologi informasi dalam bidang perdagangan melalui jaringan elektronik
Peran teknologi informasi dalam bidang perdagangan melalui jaringan elektronik
 
Introduction agile scrum methodology
Introduction agile scrum methodologyIntroduction agile scrum methodology
Introduction agile scrum methodology
 
[RPL2] Deployment Diagram
[RPL2] Deployment Diagram[RPL2] Deployment Diagram
[RPL2] Deployment Diagram
 
[Node js] frameworks de testes end to-end baseados em nodejs
[Node js] frameworks de testes end to-end baseados em nodejs [Node js] frameworks de testes end to-end baseados em nodejs
[Node js] frameworks de testes end to-end baseados em nodejs
 
Form wawancara keseluruhan
Form wawancara keseluruhanForm wawancara keseluruhan
Form wawancara keseluruhan
 
Scrum basics
Scrum basicsScrum basics
Scrum basics
 

Similar to Lightweight Documentation: An Agile Approach

Lightweight Documentation
Lightweight DocumentationLightweight Documentation
Lightweight Documentation
Stephen Ritchie
 
Agile ux fullday-uxpa2016
Agile ux fullday-uxpa2016Agile ux fullday-uxpa2016
Agile ux fullday-uxpa2016
UXPA International
 
Lean Analytics: How to get more out of your data science team
Lean Analytics: How to get more out of your data science teamLean Analytics: How to get more out of your data science team
Lean Analytics: How to get more out of your data science team
Digital Transformation EXPO Event Series
 
Adf and ala design c sharp corner toronto chapter feb 2019 meetup nik shahriar
Adf and ala design c sharp corner toronto chapter feb 2019 meetup nik shahriarAdf and ala design c sharp corner toronto chapter feb 2019 meetup nik shahriar
Adf and ala design c sharp corner toronto chapter feb 2019 meetup nik shahriar
Nilesh Shah
 
State of Agile 2017
State of Agile 2017State of Agile 2017
State of Agile 2017
Tze Chin Tang
 
Implimenting and Mitigating Change with all of this Newfangled Technology
Implimenting and Mitigating Change with all of this Newfangled TechnologyImplimenting and Mitigating Change with all of this Newfangled Technology
Implimenting and Mitigating Change with all of this Newfangled Technology
Indiana Online Users Group
 
AgileDC15 I'm Using Chef So I'm DevOps Right?
AgileDC15 I'm Using Chef So I'm DevOps Right?AgileDC15 I'm Using Chef So I'm DevOps Right?
AgileDC15 I'm Using Chef So I'm DevOps Right?
Rob Brown
 
Nimble Framework - Software architecture and design in agile era - PSQT Template
Nimble Framework - Software architecture and design in agile era - PSQT TemplateNimble Framework - Software architecture and design in agile era - PSQT Template
Nimble Framework - Software architecture and design in agile era - PSQT Templatetjain
 
Pre-Conference Course: UX and Agile: Making a Great Experience -
Pre-Conference Course: UX and Agile: Making a Great Experience - Pre-Conference Course: UX and Agile: Making a Great Experience -
Pre-Conference Course: UX and Agile: Making a Great Experience -
UXPA International
 
Andriy bahlay
Andriy bahlay   Andriy bahlay
Andriy bahlay
Lviv Startup Club
 
Going Agile: Brought to You by the Public Broadcasting System - Atlassian Sum...
Going Agile: Brought to You by the Public Broadcasting System - Atlassian Sum...Going Agile: Brought to You by the Public Broadcasting System - Atlassian Sum...
Going Agile: Brought to You by the Public Broadcasting System - Atlassian Sum...
Atlassian
 
Getting agile with drupal
Getting agile with drupalGetting agile with drupal
Getting agile with drupal
Promet Source
 
Road to rockstar system analyst
Road to rockstar system analystRoad to rockstar system analyst
Road to rockstar system analyst
Mizno Kruge
 
Two to Tango - Agile Meets DITA
Two to Tango - Agile Meets DITATwo to Tango - Agile Meets DITA
Two to Tango - Agile Meets DITA
Nabayan Roy
 
Agile Meets DITA: Developing User Documentation in an Agile Environment
Agile Meets DITA: Developing User Documentation in an Agile EnvironmentAgile Meets DITA: Developing User Documentation in an Agile Environment
Agile Meets DITA: Developing User Documentation in an Agile Environment
Nabayan Roy
 
Holistic Product Development
Holistic Product DevelopmentHolistic Product Development
Holistic Product Development
Gary Pedretti
 
Turning Human Capital into High Performance Organizational Capital
Turning Human Capital into High Performance Organizational CapitalTurning Human Capital into High Performance Organizational Capital
Turning Human Capital into High Performance Organizational Capital
John Willis
 
Technical Excellence Doesn't Just Happen--Igniting a Craftsmanship Culture
Technical Excellence Doesn't Just Happen--Igniting a Craftsmanship CultureTechnical Excellence Doesn't Just Happen--Igniting a Craftsmanship Culture
Technical Excellence Doesn't Just Happen--Igniting a Craftsmanship Culture
Allison Pollard
 
Scaling r&d org while maintaining quality
Scaling r&d org while maintaining qualityScaling r&d org while maintaining quality
Scaling r&d org while maintaining quality
Aviran Mordo
 
Designing your SharePoint Internet site: The basics
Designing your SharePoint Internet site: The basicsDesigning your SharePoint Internet site: The basics
Designing your SharePoint Internet site: The basics
C/D/H Technology Consultants
 

Similar to Lightweight Documentation: An Agile Approach (20)

Lightweight Documentation
Lightweight DocumentationLightweight Documentation
Lightweight Documentation
 
Agile ux fullday-uxpa2016
Agile ux fullday-uxpa2016Agile ux fullday-uxpa2016
Agile ux fullday-uxpa2016
 
Lean Analytics: How to get more out of your data science team
Lean Analytics: How to get more out of your data science teamLean Analytics: How to get more out of your data science team
Lean Analytics: How to get more out of your data science team
 
Adf and ala design c sharp corner toronto chapter feb 2019 meetup nik shahriar
Adf and ala design c sharp corner toronto chapter feb 2019 meetup nik shahriarAdf and ala design c sharp corner toronto chapter feb 2019 meetup nik shahriar
Adf and ala design c sharp corner toronto chapter feb 2019 meetup nik shahriar
 
State of Agile 2017
State of Agile 2017State of Agile 2017
State of Agile 2017
 
Implimenting and Mitigating Change with all of this Newfangled Technology
Implimenting and Mitigating Change with all of this Newfangled TechnologyImplimenting and Mitigating Change with all of this Newfangled Technology
Implimenting and Mitigating Change with all of this Newfangled Technology
 
AgileDC15 I'm Using Chef So I'm DevOps Right?
AgileDC15 I'm Using Chef So I'm DevOps Right?AgileDC15 I'm Using Chef So I'm DevOps Right?
AgileDC15 I'm Using Chef So I'm DevOps Right?
 
Nimble Framework - Software architecture and design in agile era - PSQT Template
Nimble Framework - Software architecture and design in agile era - PSQT TemplateNimble Framework - Software architecture and design in agile era - PSQT Template
Nimble Framework - Software architecture and design in agile era - PSQT Template
 
Pre-Conference Course: UX and Agile: Making a Great Experience -
Pre-Conference Course: UX and Agile: Making a Great Experience - Pre-Conference Course: UX and Agile: Making a Great Experience -
Pre-Conference Course: UX and Agile: Making a Great Experience -
 
Andriy bahlay
Andriy bahlay   Andriy bahlay
Andriy bahlay
 
Going Agile: Brought to You by the Public Broadcasting System - Atlassian Sum...
Going Agile: Brought to You by the Public Broadcasting System - Atlassian Sum...Going Agile: Brought to You by the Public Broadcasting System - Atlassian Sum...
Going Agile: Brought to You by the Public Broadcasting System - Atlassian Sum...
 
Getting agile with drupal
Getting agile with drupalGetting agile with drupal
Getting agile with drupal
 
Road to rockstar system analyst
Road to rockstar system analystRoad to rockstar system analyst
Road to rockstar system analyst
 
Two to Tango - Agile Meets DITA
Two to Tango - Agile Meets DITATwo to Tango - Agile Meets DITA
Two to Tango - Agile Meets DITA
 
Agile Meets DITA: Developing User Documentation in an Agile Environment
Agile Meets DITA: Developing User Documentation in an Agile EnvironmentAgile Meets DITA: Developing User Documentation in an Agile Environment
Agile Meets DITA: Developing User Documentation in an Agile Environment
 
Holistic Product Development
Holistic Product DevelopmentHolistic Product Development
Holistic Product Development
 
Turning Human Capital into High Performance Organizational Capital
Turning Human Capital into High Performance Organizational CapitalTurning Human Capital into High Performance Organizational Capital
Turning Human Capital into High Performance Organizational Capital
 
Technical Excellence Doesn't Just Happen--Igniting a Craftsmanship Culture
Technical Excellence Doesn't Just Happen--Igniting a Craftsmanship CultureTechnical Excellence Doesn't Just Happen--Igniting a Craftsmanship Culture
Technical Excellence Doesn't Just Happen--Igniting a Craftsmanship Culture
 
Scaling r&d org while maintaining quality
Scaling r&d org while maintaining qualityScaling r&d org while maintaining quality
Scaling r&d org while maintaining quality
 
Designing your SharePoint Internet site: The basics
Designing your SharePoint Internet site: The basicsDesigning your SharePoint Internet site: The basics
Designing your SharePoint Internet site: The basics
 

More from Stephen Ritchie

Overview of .NET Best Practices
Overview of .NET Best PracticesOverview of .NET Best Practices
Overview of .NET Best Practices
Stephen Ritchie
 
Agile Engineering Sparker GLASScon 2015
Agile Engineering Sparker GLASScon 2015Agile Engineering Sparker GLASScon 2015
Agile Engineering Sparker GLASScon 2015
Stephen Ritchie
 
DevOps Requires Agility
DevOps Requires AgilityDevOps Requires Agility
DevOps Requires Agility
Stephen Ritchie
 
Continuous Integration - NoVA CodeCamp 2014-10-11
Continuous Integration - NoVA CodeCamp 2014-10-11Continuous Integration - NoVA CodeCamp 2014-10-11
Continuous Integration - NoVA CodeCamp 2014-10-11Stephen Ritchie
 
Continuous Integration: Blueprint, Toolbox, Master Craft
Continuous Integration: Blueprint, Toolbox, Master CraftContinuous Integration: Blueprint, Toolbox, Master Craft
Continuous Integration: Blueprint, Toolbox, Master Craft
Stephen Ritchie
 
Dc scrum agile_eng_20130923
Dc scrum agile_eng_20130923Dc scrum agile_eng_20130923
Dc scrum agile_eng_20130923
Stephen Ritchie
 
Test Driven Development: Blueprint, Toolbox, and Master Craft
Test Driven Development: Blueprint, Toolbox, and Master CraftTest Driven Development: Blueprint, Toolbox, and Master Craft
Test Driven Development: Blueprint, Toolbox, and Master Craft
Stephen Ritchie
 
Agile Testing Best Practices
Agile Testing Best PracticesAgile Testing Best Practices
Agile Testing Best Practices
Stephen Ritchie
 
Continuous Integration: Blueprint, Toolbox, Master Craft
Continuous Integration: Blueprint, Toolbox, Master CraftContinuous Integration: Blueprint, Toolbox, Master Craft
Continuous Integration: Blueprint, Toolbox, Master Craft
Stephen Ritchie
 
Continuous Integration DCAEC12
Continuous Integration DCAEC12Continuous Integration DCAEC12
Continuous Integration DCAEC12
Stephen Ritchie
 
An Overview of .NET Best Practices
An Overview of .NET Best PracticesAn Overview of .NET Best Practices
An Overview of .NET Best Practices
Stephen Ritchie
 
Advanced Code Analysis with .NET
Advanced Code Analysis with .NETAdvanced Code Analysis with .NET
Advanced Code Analysis with .NET
Stephen Ritchie
 
Overcoming the Obstacles, Pitfalls, and Dangers of Unit Testing
Overcoming the Obstacles, Pitfalls, and Dangers of Unit TestingOvercoming the Obstacles, Pitfalls, and Dangers of Unit Testing
Overcoming the Obstacles, Pitfalls, and Dangers of Unit Testing
Stephen Ritchie
 
An Overview of .NET Best Practices
An Overview of .NET Best PracticesAn Overview of .NET Best Practices
An Overview of .NET Best Practices
Stephen Ritchie
 
DCDNUG 10/16/2012 Automated testing obstacles pitfalls dangers
DCDNUG 10/16/2012 Automated testing obstacles pitfalls dangersDCDNUG 10/16/2012 Automated testing obstacles pitfalls dangers
DCDNUG 10/16/2012 Automated testing obstacles pitfalls dangersStephen Ritchie
 
Automated Testing: Obstacles, Pitfalls, and Dangers
Automated Testing: Obstacles, Pitfalls, and DangersAutomated Testing: Obstacles, Pitfalls, and Dangers
Automated Testing: Obstacles, Pitfalls, and DangersStephen Ritchie
 
Advanced Code Analysis In .NET
Advanced Code Analysis In .NETAdvanced Code Analysis In .NET
Advanced Code Analysis In .NET
Stephen Ritchie
 
Automated Testing with Databases
Automated Testing with DatabasesAutomated Testing with Databases
Automated Testing with DatabasesStephen Ritchie
 

More from Stephen Ritchie (18)

Overview of .NET Best Practices
Overview of .NET Best PracticesOverview of .NET Best Practices
Overview of .NET Best Practices
 
Agile Engineering Sparker GLASScon 2015
Agile Engineering Sparker GLASScon 2015Agile Engineering Sparker GLASScon 2015
Agile Engineering Sparker GLASScon 2015
 
DevOps Requires Agility
DevOps Requires AgilityDevOps Requires Agility
DevOps Requires Agility
 
Continuous Integration - NoVA CodeCamp 2014-10-11
Continuous Integration - NoVA CodeCamp 2014-10-11Continuous Integration - NoVA CodeCamp 2014-10-11
Continuous Integration - NoVA CodeCamp 2014-10-11
 
Continuous Integration: Blueprint, Toolbox, Master Craft
Continuous Integration: Blueprint, Toolbox, Master CraftContinuous Integration: Blueprint, Toolbox, Master Craft
Continuous Integration: Blueprint, Toolbox, Master Craft
 
Dc scrum agile_eng_20130923
Dc scrum agile_eng_20130923Dc scrum agile_eng_20130923
Dc scrum agile_eng_20130923
 
Test Driven Development: Blueprint, Toolbox, and Master Craft
Test Driven Development: Blueprint, Toolbox, and Master CraftTest Driven Development: Blueprint, Toolbox, and Master Craft
Test Driven Development: Blueprint, Toolbox, and Master Craft
 
Agile Testing Best Practices
Agile Testing Best PracticesAgile Testing Best Practices
Agile Testing Best Practices
 
Continuous Integration: Blueprint, Toolbox, Master Craft
Continuous Integration: Blueprint, Toolbox, Master CraftContinuous Integration: Blueprint, Toolbox, Master Craft
Continuous Integration: Blueprint, Toolbox, Master Craft
 
Continuous Integration DCAEC12
Continuous Integration DCAEC12Continuous Integration DCAEC12
Continuous Integration DCAEC12
 
An Overview of .NET Best Practices
An Overview of .NET Best PracticesAn Overview of .NET Best Practices
An Overview of .NET Best Practices
 
Advanced Code Analysis with .NET
Advanced Code Analysis with .NETAdvanced Code Analysis with .NET
Advanced Code Analysis with .NET
 
Overcoming the Obstacles, Pitfalls, and Dangers of Unit Testing
Overcoming the Obstacles, Pitfalls, and Dangers of Unit TestingOvercoming the Obstacles, Pitfalls, and Dangers of Unit Testing
Overcoming the Obstacles, Pitfalls, and Dangers of Unit Testing
 
An Overview of .NET Best Practices
An Overview of .NET Best PracticesAn Overview of .NET Best Practices
An Overview of .NET Best Practices
 
DCDNUG 10/16/2012 Automated testing obstacles pitfalls dangers
DCDNUG 10/16/2012 Automated testing obstacles pitfalls dangersDCDNUG 10/16/2012 Automated testing obstacles pitfalls dangers
DCDNUG 10/16/2012 Automated testing obstacles pitfalls dangers
 
Automated Testing: Obstacles, Pitfalls, and Dangers
Automated Testing: Obstacles, Pitfalls, and DangersAutomated Testing: Obstacles, Pitfalls, and Dangers
Automated Testing: Obstacles, Pitfalls, and Dangers
 
Advanced Code Analysis In .NET
Advanced Code Analysis In .NETAdvanced Code Analysis In .NET
Advanced Code Analysis In .NET
 
Automated Testing with Databases
Automated Testing with DatabasesAutomated Testing with Databases
Automated Testing with Databases
 

Recently uploaded

GraphSummit Paris - The art of the possible with Graph Technology
GraphSummit Paris - The art of the possible with Graph TechnologyGraphSummit Paris - The art of the possible with Graph Technology
GraphSummit Paris - The art of the possible with Graph Technology
Neo4j
 
Fundamentals of Programming and Language Processors
Fundamentals of Programming and Language ProcessorsFundamentals of Programming and Language Processors
Fundamentals of Programming and Language Processors
Rakesh Kumar R
 
Launch Your Streaming Platforms in Minutes
Launch Your Streaming Platforms in MinutesLaunch Your Streaming Platforms in Minutes
Launch Your Streaming Platforms in Minutes
Roshan Dwivedi
 
Enterprise Resource Planning System in Telangana
Enterprise Resource Planning System in TelanganaEnterprise Resource Planning System in Telangana
Enterprise Resource Planning System in Telangana
NYGGS Automation Suite
 
Orion Context Broker introduction 20240604
Orion Context Broker introduction 20240604Orion Context Broker introduction 20240604
Orion Context Broker introduction 20240604
Fermin Galan
 
May Marketo Masterclass, London MUG May 22 2024.pdf
May Marketo Masterclass, London MUG May 22 2024.pdfMay Marketo Masterclass, London MUG May 22 2024.pdf
May Marketo Masterclass, London MUG May 22 2024.pdf
Adele Miller
 
2024 eCommerceDays Toulouse - Sylius 2.0.pdf
2024 eCommerceDays Toulouse - Sylius 2.0.pdf2024 eCommerceDays Toulouse - Sylius 2.0.pdf
2024 eCommerceDays Toulouse - Sylius 2.0.pdf
Łukasz Chruściel
 
Artificia Intellicence and XPath Extension Functions
Artificia Intellicence and XPath Extension FunctionsArtificia Intellicence and XPath Extension Functions
Artificia Intellicence and XPath Extension Functions
Octavian Nadolu
 
AI Pilot Review: The World’s First Virtual Assistant Marketing Suite
AI Pilot Review: The World’s First Virtual Assistant Marketing SuiteAI Pilot Review: The World’s First Virtual Assistant Marketing Suite
AI Pilot Review: The World’s First Virtual Assistant Marketing Suite
Google
 
openEuler Case Study - The Journey to Supply Chain Security
openEuler Case Study - The Journey to Supply Chain SecurityopenEuler Case Study - The Journey to Supply Chain Security
openEuler Case Study - The Journey to Supply Chain Security
Shane Coughlan
 
A Study of Variable-Role-based Feature Enrichment in Neural Models of Code
A Study of Variable-Role-based Feature Enrichment in Neural Models of CodeA Study of Variable-Role-based Feature Enrichment in Neural Models of Code
A Study of Variable-Role-based Feature Enrichment in Neural Models of Code
Aftab Hussain
 
Graspan: A Big Data System for Big Code Analysis
Graspan: A Big Data System for Big Code AnalysisGraspan: A Big Data System for Big Code Analysis
Graspan: A Big Data System for Big Code Analysis
Aftab Hussain
 
GOING AOT WITH GRAALVM FOR SPRING BOOT (SPRING IO)
GOING AOT WITH GRAALVM FOR  SPRING BOOT (SPRING IO)GOING AOT WITH GRAALVM FOR  SPRING BOOT (SPRING IO)
GOING AOT WITH GRAALVM FOR SPRING BOOT (SPRING IO)
Alina Yurenko
 
Automated software refactoring with OpenRewrite and Generative AI.pptx.pdf
Automated software refactoring with OpenRewrite and Generative AI.pptx.pdfAutomated software refactoring with OpenRewrite and Generative AI.pptx.pdf
Automated software refactoring with OpenRewrite and Generative AI.pptx.pdf
timtebeek1
 
Quarkus Hidden and Forbidden Extensions
Quarkus Hidden and Forbidden ExtensionsQuarkus Hidden and Forbidden Extensions
Quarkus Hidden and Forbidden Extensions
Max Andersen
 
OpenMetadata Community Meeting - 5th June 2024
OpenMetadata Community Meeting - 5th June 2024OpenMetadata Community Meeting - 5th June 2024
OpenMetadata Community Meeting - 5th June 2024
OpenMetadata
 
Empowering Growth with Best Software Development Company in Noida - Deuglo
Empowering Growth with Best Software  Development Company in Noida - DeugloEmpowering Growth with Best Software  Development Company in Noida - Deuglo
Empowering Growth with Best Software Development Company in Noida - Deuglo
Deuglo Infosystem Pvt Ltd
 
Using Xen Hypervisor for Functional Safety
Using Xen Hypervisor for Functional SafetyUsing Xen Hypervisor for Functional Safety
Using Xen Hypervisor for Functional Safety
Ayan Halder
 
AI Genie Review: World’s First Open AI WordPress Website Creator
AI Genie Review: World’s First Open AI WordPress Website CreatorAI Genie Review: World’s First Open AI WordPress Website Creator
AI Genie Review: World’s First Open AI WordPress Website Creator
Google
 
A Sighting of filterA in Typelevel Rite of Passage
A Sighting of filterA in Typelevel Rite of PassageA Sighting of filterA in Typelevel Rite of Passage
A Sighting of filterA in Typelevel Rite of Passage
Philip Schwarz
 

Recently uploaded (20)

GraphSummit Paris - The art of the possible with Graph Technology
GraphSummit Paris - The art of the possible with Graph TechnologyGraphSummit Paris - The art of the possible with Graph Technology
GraphSummit Paris - The art of the possible with Graph Technology
 
Fundamentals of Programming and Language Processors
Fundamentals of Programming and Language ProcessorsFundamentals of Programming and Language Processors
Fundamentals of Programming and Language Processors
 
Launch Your Streaming Platforms in Minutes
Launch Your Streaming Platforms in MinutesLaunch Your Streaming Platforms in Minutes
Launch Your Streaming Platforms in Minutes
 
Enterprise Resource Planning System in Telangana
Enterprise Resource Planning System in TelanganaEnterprise Resource Planning System in Telangana
Enterprise Resource Planning System in Telangana
 
Orion Context Broker introduction 20240604
Orion Context Broker introduction 20240604Orion Context Broker introduction 20240604
Orion Context Broker introduction 20240604
 
May Marketo Masterclass, London MUG May 22 2024.pdf
May Marketo Masterclass, London MUG May 22 2024.pdfMay Marketo Masterclass, London MUG May 22 2024.pdf
May Marketo Masterclass, London MUG May 22 2024.pdf
 
2024 eCommerceDays Toulouse - Sylius 2.0.pdf
2024 eCommerceDays Toulouse - Sylius 2.0.pdf2024 eCommerceDays Toulouse - Sylius 2.0.pdf
2024 eCommerceDays Toulouse - Sylius 2.0.pdf
 
Artificia Intellicence and XPath Extension Functions
Artificia Intellicence and XPath Extension FunctionsArtificia Intellicence and XPath Extension Functions
Artificia Intellicence and XPath Extension Functions
 
AI Pilot Review: The World’s First Virtual Assistant Marketing Suite
AI Pilot Review: The World’s First Virtual Assistant Marketing SuiteAI Pilot Review: The World’s First Virtual Assistant Marketing Suite
AI Pilot Review: The World’s First Virtual Assistant Marketing Suite
 
openEuler Case Study - The Journey to Supply Chain Security
openEuler Case Study - The Journey to Supply Chain SecurityopenEuler Case Study - The Journey to Supply Chain Security
openEuler Case Study - The Journey to Supply Chain Security
 
A Study of Variable-Role-based Feature Enrichment in Neural Models of Code
A Study of Variable-Role-based Feature Enrichment in Neural Models of CodeA Study of Variable-Role-based Feature Enrichment in Neural Models of Code
A Study of Variable-Role-based Feature Enrichment in Neural Models of Code
 
Graspan: A Big Data System for Big Code Analysis
Graspan: A Big Data System for Big Code AnalysisGraspan: A Big Data System for Big Code Analysis
Graspan: A Big Data System for Big Code Analysis
 
GOING AOT WITH GRAALVM FOR SPRING BOOT (SPRING IO)
GOING AOT WITH GRAALVM FOR  SPRING BOOT (SPRING IO)GOING AOT WITH GRAALVM FOR  SPRING BOOT (SPRING IO)
GOING AOT WITH GRAALVM FOR SPRING BOOT (SPRING IO)
 
Automated software refactoring with OpenRewrite and Generative AI.pptx.pdf
Automated software refactoring with OpenRewrite and Generative AI.pptx.pdfAutomated software refactoring with OpenRewrite and Generative AI.pptx.pdf
Automated software refactoring with OpenRewrite and Generative AI.pptx.pdf
 
Quarkus Hidden and Forbidden Extensions
Quarkus Hidden and Forbidden ExtensionsQuarkus Hidden and Forbidden Extensions
Quarkus Hidden and Forbidden Extensions
 
OpenMetadata Community Meeting - 5th June 2024
OpenMetadata Community Meeting - 5th June 2024OpenMetadata Community Meeting - 5th June 2024
OpenMetadata Community Meeting - 5th June 2024
 
Empowering Growth with Best Software Development Company in Noida - Deuglo
Empowering Growth with Best Software  Development Company in Noida - DeugloEmpowering Growth with Best Software  Development Company in Noida - Deuglo
Empowering Growth with Best Software Development Company in Noida - Deuglo
 
Using Xen Hypervisor for Functional Safety
Using Xen Hypervisor for Functional SafetyUsing Xen Hypervisor for Functional Safety
Using Xen Hypervisor for Functional Safety
 
AI Genie Review: World’s First Open AI WordPress Website Creator
AI Genie Review: World’s First Open AI WordPress Website CreatorAI Genie Review: World’s First Open AI WordPress Website Creator
AI Genie Review: World’s First Open AI WordPress Website Creator
 
A Sighting of filterA in Typelevel Rite of Passage
A Sighting of filterA in Typelevel Rite of PassageA Sighting of filterA in Typelevel Rite of Passage
A Sighting of filterA in Typelevel Rite of Passage
 

Lightweight Documentation: An Agile Approach

  • 1. Lightweight Documentation: An Agile Approach DC Scrum User Group (DCSUG) meeting 18-Aug-2014 August 19, 2014
  • 2. • Excella Consulting for food, refreshments and space Thanks
  • 3. Stephen Ritchie ◊ 20+ years of experience in software development ◊ Focused on Agile since 2007 – Commercial software development – .NET software engineering & Agile principles – Agile coaching & mentoring ◊ Organizer of the DC Alt.Net User Group ◊ stephen.ritchie@excella.com ◊ @ruthlesshelp
  • 4. What could possibly go wrong with detailed specification? Introduction
  • 5. “Documentation is not anti-agile. If it were, then there would not be any agile books, articles, or blogs.” - Robert “Uncle Bob” Martin, 9-Mar-2006
  • 9. Traditional SDLC Phases • Definition • Analysis • Design • Construction • Test • Transition and Migration • Production
  • 10. Traditional SDLC Phases • Definition => Detailed Project Plan • Analysis => Detailed Specification • Design => System Architecture • Construction => Detailed Design Spec • Test => Test Plans and Test Scripts • Transition and Migration => Installation Manuals • Production => Operation Manuals
  • 12. • In your group • List of traditional SDLC documents. • For each document – Who is the audience(s) for the document? – What is the reader looking for in the document? – Why does the reader want the document? • In order to avoid something • In order to have/obtain/achieve something Who, What, and Why?
  • 13. Who, What, and Why? Debrief
  • 15. • Executable Specification (Gherkin) • Document Stable Things (Final Concept) • Generate System Docs (Rev. Engineer) • Just Simple Enough (Not Too Simple) • Display Information Publicly (Wiki) • Purpose, Audience, Sufficiency • Iterate, Iterate, Iterate • Find A Better Communication Medium • Start With Diagrams The Team Already Uses Agile Docs: Best Practices
  • 16. • Traditional – Project Plans – Schedules – Costs – Resources Planning • Agile – Product Vision – Product Roadmap – Releases – Sprints – Team Charter – Individuals • Core • Peripheral
  • 17. • Traditional – The System Shall – Features – Functional Specs – Non-functional – Screen Specs – Rules Requirements • Agile – Product Vision – Product Roadmap – User Stories – Wireframes – Style Guidelines – Spec By Example – Definition of Ready
  • 18. • Traditional – Architecture – System Overview – Detailed Design Design • Agile – Working Software – Unit Tests – Diagrams – Repository/Wiki • ReadMe • Developer Handbook • Release Notes
  • 19. • Traditional – Configuration Guide – Installation Instructions – Administration Guide – User Manual Support, Ops, and User • Agile – Working Software • Installer • Context Help • User Experience – Wiki • ReadMe • Release Notes
  • 21. • In your group • Iteration 1: Topic-Oriented Writing – Using Post-It Notes Write 1 Topic – Limit The Topic To 1 to 3 Words • Review • Iteration 2: Reader Stories – As a (reader) … I want (content) … So that … (I avoid something or I have something) • Review Build a better document
  • 22. Build a better document Debrief
  • 23. • Agile/Lean Documentation: Strategies for Agile Software Development, Scott W. Ambler http://www.agilemodeling.com/essays/agileDocumentati on.htm • Agile Technical Documentation, Jean-Luc Mazet http://writersua.com/articles/Agile_doc/ • Writing User Documentation in an Agile Development Environment, Anne Gentle http://justwriteclick.com/2007/07/02/writing-end-user- documentation-in-an-agile-development-environment/ More Info
  • 24. • Let’s Go Around The Room • One Idea – Ways to improve the exercises – Topics I should cover – What could be done better next time One More Thing
  • 25. DC Software Craftsman User Group (DCSCUG) DC Scrum User Group Alt .NET DC International Institute of Business Analysis (IIBA) User Experience Professionals Association (UXPA DC) Agile Defense Proponents Team (ADAPT) DC Continuous Delivery Group (DCCD) Agile Leadership Network (ALN-DC) django-district DC Business Intelligentsia (DCBI) Our Community Excella founded or leads local IT organizations and Meetups. Join us for an event! Need space for your event? Contact Us: info@excella.com
  • 26. • .Net/C#, Python, Java, Ruby Developers • Ux Designers • ScrumMasters • Agile Coaches • IT Project Manager & Program Analyst • Business Analysts (BA) • Business Intelligence (BI) Excella is Hiring
  • 27. • Excella Upcoming Classes/Events – CSM in College Park, MD • 8/18 – 8/19 – Automated Acceptance Tests for BA • 9/8 – 9/12 – Advance CSPO • 9/15 – 9/16 – CSM • 9/22 – 9/23 – Agile BI Training • 10/7 – DC Business Analyst Development Day • 10/10 User Group discount code, contact organizer Training/Events
  • 29. • DC Business Analyst Development Day (DCBADD) on – Friday, October 10, 2014 – Westin Arlington Gateway​ • Conference will bring together Business Analysts, Project Managers, and Agile Practitioners to learn valuable skills for succeeding in an Agile environment. Topics will include:​ – Emotional intelligence​ – Change management​ – Agile requirements​ – Agile techniques in the Federal Government​ • Register - http://www.eventbrite.com/o/excella- consulting-2232953017 Events

Editor's Notes

  1. We are active in our local community and always looking for new opportunities to connect! Join us at any of the user groups we participate in, or contact us if you know of of another group looking for space or sponsors. Our current list of events and speaking engagements is available on our website.