Upload
phungnhan
View
218
Download
1
Embed Size (px)
Citation preview
Art of Writing in Agile
Writing User Stories in Agile
Shikha Saxena,
Senior Technical Writer,
Pune, India
#stc17
Agenda
▪ History of Agile
▪ Agile and DevOps
▪ Agile Artifacts: Themes, Epics and User Story
▪ Art of writing User Stories
▪ Shu-Ha-Ri Model of Learning
▪ My Story
▪ Conclusion
▪ References
▪ Message.
#stc17
What is Agile Methodology
▪ Agile is group of software development methodologies based on iterative and incremental development where requirement and solution evolve through collaboration between self-organizing, cross-functional teams.
▪ Agile methods promote disciplined project management process with frequent inspection and adaptation.
▪ A leadership philosophy that encourage teamwork, self-organization and accountability.
▪ It is a set of engineering practices that allow rapid delivery of high quality software.
▪ It is a business approach which aligns development with customer needs and company goals.
▪ Agile development refers to development process aligned to concepts of Agile Manifesto and following Agile principles.
#stc17
Themes
▪ Themes are collection of related user stories
▪ They are used to organize stories into releases
▪ They organize user stories for sub-teams to work
▪ For example, University registration system have themes around:
▪ students,
▪ course management,
▪ financial processing,
▪ Grade administration,
▪ Transcript generation.
#stc17
Epics
▪ Epics are the vision of the product
▪ Epics are large user story
▪ Too big to implement in single iteration
▪ Disintegrated into smaller stories
▪ Epics take low priority in product backlog stack
▪ They make their way towards the top by reorganizing into smaller stories.
▪ Model on Just-in-time basis.
#stc17
User Story
▪ User Stories are primary development artifacts for Scrum & XP
▪ They are high-level requirement containing just enough information as who, what and why require a feature
▪ They contain a written sentence or two
▪ In agile approach it helps discussion around the requirement
▪ Help to carry out conversation about desired functionality
▪ Written on story cards or agile tools online
▪ Written in a specific format.
#stc17
Writing User Stories
▪ User Stories are short, simple, descriptions of a feature told from user perspective who desire a specific functionality
▪ User Stories are written in following format:
As a <user>I want<some goal>, so that<benefit>
#stc17
User Story format▪ Formula of 3C to
capture components of a user story was given by Ron Jeffery.
#stc17
Writing Great User Stories▪ Identify stories by considering the goals of each user role in using the system.
▪ Split story into smaller ones that cut through all layers of application.
▪ Create constraints cards and tape to wall or write tests to ensure they are not violated.
▪ Write smaller stories that are going to be implemented soon as place holder for conversation.
▪ Write broad stories for functionality further down in the stack.
▪ Keep the user interface out of the story for as long as possible.
▪ Include user role while writing story.
▪ Write stories in active voice
▪ Write stories for single user for clarity.
▪ Have the customer rather than developer help you out in framing the story.
▪ Do not number stories.
#stc17
User Story Prioritization
MoSCoW prioritization
▪ Must
▪ Should
▪ Could
▪ Won’t
Prototyping
▪ Creation of prototypes of the system under development at an early stage of the project.
▪ It enables early discovery of shortcoming in the system and allow future users to ‘test drive’ the system.
#stc17
User story Estimation
▪ A good story can be estimated.
▪ Exact estimate is not required though.
▪ It should give just enough idea, to help customer to rank and schedule story for implementation.
▪ Being estimable means being negotiable.
▪ It is a function of story size as bigger stories are tough to estimate.
▪ Sometime stories are split into spike to give team enough information to make a decent estimate.
#stc17
Acceptance Criteria
User Story
▪ As an Employee, I want to view an outline for a course I am interested in so that I can learn more about the course and decide if it is right for me.
Acceptance Criteria
▪ User can download the outline for later viewing
▪ User can print the outline directly from the application
▪ User can view mandatory outline sections as course title, location, schedule, instructor, pre-requisites, learning objectives, course goals and so on.
▪ User can view optional sections when applicable, as course number, courseware/books, learning resources, evaluation and so on.
▪ All predetermined font and style guidelines should apply to outline.
#stc17
Shu-Ha-Ri Model of Learning ▪ Alistair Cockburn one of the initiators of Agile movement,
in software development, introduced the Japanese martial art concept of learning, in agile, from Beginner to level of Mastery.
#stc17
My Story
▪ Traditional Documentation > Time taking, perfect, and complete delivery of product at the end of development with final release.
▪ Iterative documentation > Fast pace documentation for different sprints in each release along side development.
▪ Agile team > As a part of Agile team continuously create user stories, write acceptance criteria in fast changing environment, for development and testing and later documenting user manuals for working product.
#stc17
Conclusion
▪ Technical Writing is a mix of art and technical excellence. Leverage both qualities into documentation style.
▪ Follow Shu-Ha-Ri Model , learn, improvise and gain mastery in the art of writing in Agile.
▪ Focus on creating quality document through collaboration with product team, and march towards one common goal of delivering, faster and better product to customer, which is simple, just-in-time, short and crisp.
▪ Contribute in Agile transformation journey, by learning fast and sharing knowledge gained on the way, till you reach destination!
#stc17
References
▪ Cohen, Mike. User Stories Applied (For Agile Software Development, Indian Edition, 2016).
▪ Adzic, Gozco and Evans, David, Fifty Quick Ideas to improve your user stories.
▪ Patton Jeff, User Story Mapping.
▪ Shore, James and Warden, Shane, The Art of Agile Development (Tenth Indian Reprint, February 2017)
▪ Ambler, Scott, and Associates. http://www.agilemodeling.com/essays/agileDocumentation.htm
▪ Goncalves, Ester F. “A Roadmap to Agile Documentation”, LinkedIn Blog. (July 15, 2015).
▪ Cockburn, Alistair “Agile Software Development” (2001). http://alistair.cockburn.us/Shu+Ha+Ri
▪ Shu-Ha-Ri: the stages of Learning to Mastery (July 21, 2011).http://www.3coast.com/shuhari-the-stages-of-learning-to-mastery/
▪ Agile Alliance 2015.https://www.agilealliance.org/agile101/the-agile-manifesto/