-By
Ratnesh
 Documentation need
 Types
 Requirement documents
 Gathering requirements
 Separating concern
 In Agile
 Story vs requirement doc
 Example with tool
 Diagrams
 Q & A
1/21/2015 Talentica Software
Documentation need
1/21/2015 Talentica Software
Documentation need
1/21/2015 Talentica Software
Documentation need
1/21/2015 Talentica Software
Documentation need
1/21/2015 Talentica Software
Documentation need
 New Ideas
 Impact Analysis
1/21/2015 Talentica Software
Documentation need, Complex
1/21/2015 Talentica Software
Documentation need , Decision making
1/21/2015 Talentica Software
Documentation , How Much ?
1/21/2015 Talentica Software
Documentation , How Much ?
1/21/2015 Talentica Software
Documentation , Agile?
1/21/2015 Talentica Software
Documentation , Agile?
1/21/2015 Talentica Software
Documentation
 Maintenance
 Wiki
 Versioning
 Integration with source control
 Integration with Jira
1/21/2015 Talentica Software
Document , Types
 Requirements
 Architecture/Design
 Technical
 End user
 Marketing
1/21/2015 Talentica Software
Requirement Documents
1/21/2015 Talentica Software
Requirement Documents
 what a particular software does or shall do
 agreement
 produced and consumed by everyone
1/21/2015 Talentica Software
Requirement Documents
 variety of styles, notations and formality
 goal-like (e.g., distributed work environment)
 close to design (e.g., builds can be started by right-
clicking a configuration file and select the 'build'
function)
 anything in between
1/21/2015 Talentica Software
Requirement Documents, Specs
 natural language
 drawn figures
 as detailed mathematical formulas
 as a combination of them all
1/21/2015 Talentica Software
Requirement Documents, challenges
 variation and complexity
 implicit and hard to uncover
 exactly how much and what kind of documentation is
needed
 how much can be left to the architecture and design
documentation
 variety of people
1/21/2015 Talentica Software
Requirement Documents, Need
 complexity of the product
 impact of the product
 life expectancy of the software
1/21/2015 Talentica Software
1/21/2015 Talentica Software
Requirement Documents, Agile
1/21/2015 Talentica Software
Requirement Documents, Agile
1/21/2015 Talentica Software
Requirement Documents, Agile , Why
 Do It For The Team
 Do It For The Users
1/21/2015 Talentica Software
Requirement Documents, Agile, Who
 Hello Product Owner
1/21/2015 Talentica Software
Requirement Documents, Agile, What
Three Steps
 Get the initial list
 Write the user stories
 Add the acceptance criteria
1/21/2015 Talentica Software
Requirement Documents, Agile, What
#1: Initial List
 • Start with the who and what
 Bulleted-list
 Non-technical
 • Start with a story of who is doing what in the
application
 A literal story
1/21/2015 Talentica Software
Requirement Documents, Agile, What
#2: Write the Stories
 As a [role]
 I can [do something]
 So that I [get some benefit]
1/21/2015 Talentica Software
1/21/2015 Talentica Software
Requirement Documents, Agile, What, Stories
Requirement Documents, Agile, What, Stories
 Quick Tip #1
 If you can’t state a benefit, then you might not need
that feature.
1/21/2015 Talentica Software
Requirement Documents, Agile, What
#3: Acceptance Criteria
 • Defines done
 • As much as you need for task breakdown
 • Mockups
 • Design is 1-2 sprints ahead of development
1/21/2015 Talentica Software
Requirement Documents, Agile, When
When We Write
 Write an initial list before the project starts
 Have your high priority stories fleshed out 2-3 sprints
ahead
1/21/2015 Talentica Software
Requirement Documents, Agile, When
 Quick Tip #2
 Try to hold off on writing acceptance criteria until
closer to the time you are going to design or develop a
feature.
1/21/2015 Talentica Software
Requirement Documents, Agile, Example
Tool used
MindMap :- Xmind , MindInject
1/21/2015 Talentica Software
Requirement Documents, Agile, Example
 MindMap Template
1/21/2015 Talentica Software
Requirement Documents, Agile, Example
 Social Network
1/21/2015 Talentica Software
Requirement Documents, Agile, Example
 Start With The Roles
1/21/2015 Talentica Software
Requirement Documents, Agile, Example
 Add Role Details
1/21/2015 Talentica Software
Requirement Documents, Agile, Example
 What Can They Do?
1/21/2015 Talentica Software
Requirement Documents, Agile, Example
 What’s the Benefit?
1/21/2015 Talentica Software
Requirement Documents, Agile, Example
 Quick Tip #3
 If we can describe each role before writing what they
can do, then the what and benefit comes much easier
1/21/2015 Talentica Software
Requirement Documents, Agile, Example
 Use Case?
1/21/2015 Talentica Software
Requirement Documents, Agile, Example
Quick Tip #4
 Donʼt worry about the “so what” part
 More benefits are good
1/21/2015 Talentica Software
Requirement Documents, Agile, Example
 The Full Monty
1/21/2015 Talentica Software
Requirement Documents, Agile, Example
User Story Example
 As a Site Visitor, I can browse marketing pages, so that
I can learn more about the benefits
Acceptance Criteria
 The marketing pages should be controlled by a CMS
 The pages should render in less than 2 seconds
 Should render properly in IE8, FF 3.x, Safari 3.x, and
Google Chrome
1/21/2015 Talentica Software
Requirement Documents, Agile, Story writing
 A user story describes functionality that will be
valuable to either a user or purchaser of a system or
software
1/21/2015 Talentica Software
Requirement Documents, Agile, Story writing
Is
 An agreements between customers and team members to
discuss detail requirements during an iteration
 • Emphasize verbal rather than written communication.
 • Right size for planning
Is not
 A Requirement document, requirement need to be
captured by discussion , if discussion is not possible then
should be augmented by documentation
 UI mockup
1/21/2015 Talentica Software
Requirement Documents, Agile, Story writing
1/21/2015 Talentica Software
Requirement Documents, Agile, Story writing
1/21/2015 Talentica Software
Requirement Documents, Agile, Story writing
1/21/2015 Talentica Software
Requirement Documents, Textual Analysis
1/21/2015 Talentica Software
Requirement Documents, Requirement diagram
1/21/2015 Talentica Software
Requirement Documents, Requirement diagram
1/21/2015 Talentica Software
Requirement Documents, ArchiMate
 visualize relationships within and between different
domains
 domains primarily include products/services,
processes, organization, data applications and
technical infrastructure
1/21/2015 Talentica Software
Requirement Documents, ArchiMate
1/21/2015 Talentica Software
Requirement Documents, ArchiMate
1/21/2015 Talentica Software
Requirement Documents, Requirement grid
1/21/2015 Talentica Software
Requirement Documents, CRC card diagram
1/21/2015 Talentica Software
Requirement Documents, Gathering tips
 accept you will never hit 100% accuracy
 Ask “Why?” Ask it a lot.
 as few people as possible
 a dedicated scribe
 use “dialogue mapping”
 Fast delivery
 Imperfect final report
1/21/2015 Talentica Software
Requirement Documents, Gathering techniques
 One-on-one interviews
 Group interviews
 Facilitated sessions
 Joint application development (JAD)
 Questionnaires
 Prototyping
 Use cases
 Following people around
 Request for proposals (RFPs)
 Brainstorming
1/21/2015 Talentica Software
1/21/2015 Talentica Software