From 2f80d95dfde42d831690ef287f5b05499abddaf2 Mon Sep 17 00:00:00 2001 From: Shikha-Nandal <141818785+Shikha-Nandal@users.noreply.github.com> Date: Mon, 11 Sep 2023 20:40:27 +0100 Subject: [PATCH] Pull Request to merge my blog on UserStories (#53) * Added snandal + test post * Updated example post * Renamed posts to _posts * Move example post to the right directory * Update1 2023-08-15-test-post.md * Update2 2023-08-15-test-post.md * Update3 2023-08-15-test-post.md * Update4 2023-08-15-test-post.md * Update5 2023-08-15-test-post.md * Update6 2023-08-15-test-post.md * Update7 2023-08-15-test-post.md * Add files via upload * Add files via upload * Delete Pic.png * Delete Pic1.jpg * Add files via upload * Update7 2023-08-15-test-post.md * Update8 2023-08-15-test-post.md * Update8 2023-08-15-test-post.md * Update9 2023-08-15-test-post.md * Update10 2023-08-15-test-post.md * renamed test post file * Update 2023-08-18-the-power-of-a-well-written-user-story.md * Removed double heading * update timestamp * Update related.yml to link more posts for the-power-of-a-well-written-user-story * Update11 2023-08-18-the-power-of-a-well-written-user-story.md * Update12 2023-08-18-the-power-of-a-well-written-user-story.md * Update13 2023-08-18-the-power-of-a-well-written-user-story.md * correct typo * Implemented review comment to replace test analyst with test engineer * update post dates * delete previous post * push the correct version of the post * update the date --------- Co-authored-by: tja103 Co-authored-by: taddison-scottlogic <142303275+taddison-scottlogic@users.noreply.github.com> --- _data/authors.yml | 5 ++ _data/related.yml | 3 + ...-the-power-of-a-well-written-user-story.md | 69 ++++++++++++++++++ snandal/atom.xml | 5 ++ snandal/feed.xml | 5 ++ snandal/index.html | 6 ++ snandal/picture.jpg | Bin 0 -> 25790 bytes 7 files changed, 93 insertions(+) create mode 100644 _posts/2023-09-11-the-power-of-a-well-written-user-story.md create mode 100644 snandal/atom.xml create mode 100644 snandal/feed.xml create mode 100644 snandal/index.html create mode 100644 snandal/picture.jpg diff --git a/_data/authors.yml b/_data/authors.yml index ff7ba9c908..ac6f633001 100644 --- a/_data/authors.yml +++ b/_data/authors.yml @@ -101,6 +101,7 @@ active-authors: - slinsley - smartin - smendis-scottlogic + - snandal - ssibanda - swoods - tclarke-scottlogic @@ -699,6 +700,10 @@ authors: name: Stephen Linsley picture: picture.jpg author-summary: '

Marketing Channels Coordinator at Scott Logic, with a background in SaaS marketing.

' + snandal: + name: 'Shikha Nandal' + picture: picture.jpg + author-summary: 'Senior Test Engineer at Scott Logic' sobrien: name: "Siobhan O'Brien" author-summary: 'UX Designer' diff --git a/_data/related.yml b/_data/related.yml index 5ac4ff8841..6337ae8a7c 100644 --- a/_data/related.yml +++ b/_data/related.yml @@ -2443,3 +2443,6 @@ /26/08/2014/StrongTypingWithAngularJS.html: - /02/06/2015/StrongTypingWithKnockoutJSAndRequireJS.html - /2014/08/08/signalr-typed.html +/2023/09/11/the-power-of-a-well-written-user-story.html: + - /2014/09/18/the-agile-mindset.html + - /2014/08/11/a-piecemeal-approach-to-introducing-agile.html diff --git a/_posts/2023-09-11-the-power-of-a-well-written-user-story.md b/_posts/2023-09-11-the-power-of-a-well-written-user-story.md new file mode 100644 index 0000000000..2878dc96d7 --- /dev/null +++ b/_posts/2023-09-11-the-power-of-a-well-written-user-story.md @@ -0,0 +1,69 @@ +--- +title: The Power of a Well Written User Story - A Test Engineer's Perspective +date: 2023-09-11 14:00:00 Z +categories: +- Testing +tags: +- testing +summary: User stories are a pivotal component of Agile Software Development, serving as concise and user-centric descriptions of desired software functionality. Hence, here I am, discussing how crucial it is to put user stories right for setting the foundation for a well-structured, user-focused, and efficient development process. +author: snandal +--- + +At the heart of our modern software development process, lies the humble yet powerful concept of **"User Stories"** - the simplest way to capture what a user needs. *User Stories* serve as the bridge between the business stakeholders and the development team, providing a shared understanding of what the software should achieve. + +Over the last decade, as I worked on multiple projects, there has been one very common challenge that I faced almost everywhere. And that is - Despite having such a vital role in delivering high-quality software products, so little emphasis is given to putting the *User Stories* right. + +Thus, I would like to discuss the importance of logging adequate and accurate information in *User Stories* and its potential impact on the success of software projects. + +*User Stories* are the building blocks that transform user needs into Functional Software by : + +### Ensuring User-Centric Approach +*User Stories* keep the focus on the end user, ensuring that features developed align with real user needs and goals. A well-written *User Story* provides a clear understanding of what needs to be built and why. It outlines the user's needs, the context of the functionality, and the expected outcome. Information logged in the *User Story* helps the team grasp the scope and objectives, reducing the chances of misinterpretations, ensuring that the development efforts align with customer requirements and expectations. + +### Promoting Collaboration and Communication +Adequate information in *User Stories* fosters collaboration between the team and other stakeholders. It promotes discussions and clarifications, ensuring that everyone is aligned with the requirements and the expected outcome, and hence directly impacts the end product's quality and alignment with customer needs, which eventually leads to better understood and met user expectations. + +### Quality Assurance +When it comes to testing, *User Stories* act as a foundation for test planning. Accurate information in the user story enables the test engineer to identify the necessary testing approaches and develop appropriate test strategies. It aids in determining the testing scope, risk areas, testing priorities, and helps the test engineer ensure comprehensive test coverage by understanding the user's expectations. + +## Why Does it Impact Test Engineers in Particular? +While Agile methodologies offer opportunities for test engineer to continuously improve and collaborate closely with the team, these also bring their own set of challenges. + +With continuously evolving requirements, there always stands a need for quick adaptability. +Also, in many places, the *User Stories* are collectively estimated; however, no matter how much we stress allocating sufficient time for testing activities or ensure earliest start for the same, majority time is consumed in building the functionality, and lots of things are pushed to test engineers last minute, adding an immense amount of pressure. + +Not having the latest information readily available in this continuously changing and stressful environment would unnecessarily slow down the delivery and could also have an impact on the overall quality of the product. Hence it is extremely important from a test engineer point of view that all necessary information is carefully recorded and available as part of the *User Story*. + +It is true that Agile values working software over comprehensive documentation, but it does not mean documentation is completely disregarded. Agile does promote "just enough" documentation, which means creating the necessary documentation to support the development process without excessive overhead. And that makes it even more important that adequate and accurate information is captured as part of the *User Stories* and also updated regularly (as required). + +## Essentials in any User Story +Below are the essential components that make up a robust *User Story*, ensuring a shared understanding and smooth development process. + +**Description:** The purpose of the *User Story* clearly stated in simple and concise language, including - the user role or persona it pertains to, the actions while interacting with the system, the benefit or value added - why the user wants to perform this action and how it contributes to their overall experience. + +A *User Story* typically follows a straightforward template: + +"As a [type of user], I want [an action] so that [benefit or value]." + +For instance: "As a *registered user*, I want to *reset my password* so that *I can regain access to my account*." + +**Dependencies:** Any assumptions or dependencies that could impact the development and testing of the *User Story*, such as other *User Stories*, any external factors. Noting these down helps ensure that everyone is aware of potential hurdles and can plan accordingly. + +**Business Rules:** Any specific business rules or constraints that must be adhered to. + +**Acceptance Criteria:** The conditions that must be met for the functionality to be considered working as expected. + +These criterias must be specific and measurable, including both functional and non-functional requirements along with usability or accessibility requirements (as applicable). Include attachments and examples (where applicable), mockups or reference links to provide visual context for the *User Story*. Visual aids help align everyone's understanding of the feature's appearance and behavior. + +**Size or Estimation:** Rough, collectively agreed-upon estimation of the effort required to implement the *User Story*. + +**Definition of Done:** The conditions that must be met for the *User Story* to be considered complete, including aspects of design, testing, and documentation. + +**Acceptance Sign-Off:** People/Team who will approve the acceptance criteria and sign off on the completion of the *User Story*. + + +Additionally, it is important to keep the *User Story* updated with any significant changes in any of the above components. + +An efficient way of making sure that the *User Stories* do not miss any important information is to use an internally agreed upon *User Story* template. Not Every *User Story* would need each one of the above components; however, having added these in the template would act as a checklist and ensure that the information will not me missed. + +**As a test engineer, it is important to understand the critical role that *User Stories* play in guiding the testing process and ensuring the delivery of high-quality software. And hence we need to ensure that each *User Story* is capable of not only meeting its acceptance criteria but also contributing to the overall excellence of the product.** \ No newline at end of file diff --git a/snandal/atom.xml b/snandal/atom.xml new file mode 100644 index 0000000000..0f107742c4 --- /dev/null +++ b/snandal/atom.xml @@ -0,0 +1,5 @@ +--- +author: snandal +layout: atom_feed +--- + diff --git a/snandal/feed.xml b/snandal/feed.xml new file mode 100644 index 0000000000..284fdff1ff --- /dev/null +++ b/snandal/feed.xml @@ -0,0 +1,5 @@ +--- +author: snandal +layout: rss_feed +--- + diff --git a/snandal/index.html b/snandal/index.html new file mode 100644 index 0000000000..7d440dc245 --- /dev/null +++ b/snandal/index.html @@ -0,0 +1,6 @@ +--- +title: Shikha Nandal +author: snandal +layout: default_author +--- + diff --git a/snandal/picture.jpg b/snandal/picture.jpg new file mode 100644 index 0000000000000000000000000000000000000000..872dfc8e8b1f2ff744a0740a86f894140cd16089 GIT binary patch literal 25790 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