The document discusses writing user stories for agile software development. It defines what user stories and epics are, provides templates for writing user stories, and discusses characteristics like INVEST. Hands-on exercises are included where participants work in groups to write epics, stories and acceptance criteria for creating a search engine. The key points are that user stories should be small and focused on the user perspective, and writing acceptance criteria helps ensure stories meet the intended goal.
User stories are a key technique in agile requirements that combine written, verbal, and visual communication. A user story consists of a brief written description of a software feature from the perspective of an end user. It includes just enough detail to estimate the story and allows additional details to be discussed as needed. Good user stories are independent, negotiable, valuable, estimatable, small, and testable.
User stories are a key technique in agile requirements that combine written, verbal, and visual communication. A user story consists of a brief written description of a software feature from the perspective of an end user. It includes just enough detail to estimate the story and allows additional details to be discussed as needed. Good user stories are independent, negotiable, valuable, estimatable, small, and testable.
This document discusses writing effective user stories for agile software development. It defines what user stories are, how they follow the INVEST model, and how to gather and manage user stories through techniques like user role modeling, interviews, observation, and workshops. It also covers pros and cons of the user story approach.
This document discusses how to write effective user stories. It provides examples of good user stories that follow a template of "As a <user role>, I want <goal> so that <benefit>". Some key criteria for good user stories are that they are independent, negotiable, valuable, estimable, small in scope, and testable. The document also provides examples of better and worse ways to write user stories.
This document discusses user stories and their role in software development projects. It begins by outlining the typical process of planning, storytelling, coding, testing, and implementation. It then focuses on composing effective user stories, noting they should be concise written descriptions of functionality valuable to users. The document provides guidelines for writing user stories, including using a role-action-context structure for headings and including just enough detail to estimate, plan and evolve the system.
User story can be described as functional increment and it is a key element in agile environment. This presentation introduces fundamentals about user stories that can be used to educate teams or simply to review the basics.
The document discusses software requirements and communication between business and development teams. It states that requirements are a communication problem and both sides must work together. It warns that if either side dominates, the business loses value. It provides examples of problems that can occur if developers or the business side dominate requirements and decision making. The document advocates for spreading decision making across the project timeline rather than one large set of decisions. It discusses using user stories and examples to help capture requirements in a way that is understandable to both business and development.
Right amount of details to the user storyRamyaShastri1
The document discusses user stories, providing details on what they are, how they should be structured, and best practices for writing them. It notes that a user story is a brief description of a product feature from the user's perspective. An effective user story follows the "INVEST" criteria - being independent, negotiable, valuable, estimable, small, and testable. It emphasizes that a user story's purpose is to invite further conversation, and should therefore avoid being too detailed or specifying solutions.
User stories are a key technique in agile requirements that combine written, verbal, and visual communication. A user story consists of a brief written description of a software feature from the perspective of an end user. It includes just enough detail to estimate the story and allows additional details to be discussed as needed. Good user stories are independent, negotiable, valuable, estimatable, small, and testable.
User stories are a key technique in agile requirements that combine written, verbal, and visual communication. A user story consists of a brief written description of a software feature from the perspective of an end user. It includes just enough detail to estimate the story and allows additional details to be discussed as needed. Good user stories are independent, negotiable, valuable, estimatable, small, and testable.
This document discusses writing effective user stories for agile software development. It defines what user stories are, how they follow the INVEST model, and how to gather and manage user stories through techniques like user role modeling, interviews, observation, and workshops. It also covers pros and cons of the user story approach.
This document discusses how to write effective user stories. It provides examples of good user stories that follow a template of "As a <user role>, I want <goal> so that <benefit>". Some key criteria for good user stories are that they are independent, negotiable, valuable, estimable, small in scope, and testable. The document also provides examples of better and worse ways to write user stories.
This document discusses user stories and their role in software development projects. It begins by outlining the typical process of planning, storytelling, coding, testing, and implementation. It then focuses on composing effective user stories, noting they should be concise written descriptions of functionality valuable to users. The document provides guidelines for writing user stories, including using a role-action-context structure for headings and including just enough detail to estimate, plan and evolve the system.
User story can be described as functional increment and it is a key element in agile environment. This presentation introduces fundamentals about user stories that can be used to educate teams or simply to review the basics.
The document discusses software requirements and communication between business and development teams. It states that requirements are a communication problem and both sides must work together. It warns that if either side dominates, the business loses value. It provides examples of problems that can occur if developers or the business side dominate requirements and decision making. The document advocates for spreading decision making across the project timeline rather than one large set of decisions. It discusses using user stories and examples to help capture requirements in a way that is understandable to both business and development.
Right amount of details to the user storyRamyaShastri1
The document discusses user stories, providing details on what they are, how they should be structured, and best practices for writing them. It notes that a user story is a brief description of a product feature from the user's perspective. An effective user story follows the "INVEST" criteria - being independent, negotiable, valuable, estimable, small, and testable. It emphasizes that a user story's purpose is to invite further conversation, and should therefore avoid being too detailed or specifying solutions.
User stories are short descriptions of features or functionality that provide value to end users. They are written from the perspective of the user and follow a standard template of "As a <role>, I want <goal> so that <benefit>". User stories should be independent, negotiable, valuable, estimable, small, and testable. They provide a way for customers to influence development without formal requirements documents. Acceptance criteria define how a story will be considered complete. User stories are used in agile methodologies like Scrum to plan and track work in sprints.
User stories are used in agile methodologies to describe desired system functionality from the perspective of users. A good user story includes: the user role, desired outcome, optional quality requirements, and business value. It should be simple, focus on what needs to be done rather than how, and target components relevant to the project scope. While user stories provide high-level needs, additional requirements like acceptance criteria are still needed to fully specify the solution.
Introduction To User Stories For Agile Product Developmentzenpdm
The document discusses user stories, which describe functionality or features a product will deliver to users. It explains that a user story should have an independent central character and plot, with a clear outcome. The document outlines best practices for writing user stories according to the INVEST criteria - ensuring stories are independent, negotiable, valuable, estimable, small, and testable. It concludes by inviting the reader to a workshop to further discuss techniques for identifying user stories.
The document discusses user stories and how they can be used to improve communication between those building software and those wanting the software. It provides examples of well-structured user stories that include a template, acceptance criteria, and details on how specific and granular stories should be. Technical user stories are also discussed, which focus on non-functional requirements like infrastructure and refactoring rather than end-user functionality. The key benefits of user stories are outlined as being short and modifiable, allowing projects to be broken into small increments, and making effort estimation and development planning easier.
Ten Concrete Techniques to Split User StoriesNight Wolf
The document discusses various techniques for splitting user stories into smaller stories. It provides examples of how to split stories based on workflows, data elements, different cases or scenarios, interfaces and storage, dynamic parameters, multiple options, acceptance criteria, and investigative spikes. The goal is to create granular, independently testable stories that can be planned and delivered incrementally. Links to additional resources on story splitting techniques are also included.
Splitting Stories with the Hamburger Method - A Simple 5 Step ProcessStephen Tucker
The document discusses Adzic's Hamburger Method for vertically splitting user stories into smaller stories. It provides an overview of the method, which involves identifying layers or types of tasks needed to complete the story, then identifying options for each task from least to greatest value. The first "bite" or user story combines the least valuable option from each task. Subsequent bites build on prior bites by enhancing them. The document includes an example application of the method and a quiz.
Art of Writing in Agile : STC Summit 2017Shikha Saxena
Please find enclosed the presentation on "Art of Writing in Agile" that I recently presented, during #STCSummit2017 #stc #stc2017 in Washington DC on 9th May, 2017.
This document discusses user stories, which are short descriptions of a software feature written from the perspective of an end user. User stories help plan requirements in an agile development process. They are not technical specifications, but instead focus on the user's goal and how it provides business value. Good user stories have a clear user role, function or behavior, and acceptance criteria to define when the story is complete. The document provides guidelines for writing effective independent, negotiable, valuable and estimatable user stories.
This document discusses user stories, which provide short descriptions of what users need from a product. It covers the key questions of what, why, who, when and how for user stories. User stories should be independent, negotiable, valuable, estimable, small, and testable. They ensure teams work on high priority tasks and provide clear focus and direction. User stories are refined through constant iteration until they are specific and detailed enough with acceptance criteria.
This document provides instructions on writing for Batxillerat (Spanish high school) and discusses the importance of structure, purpose, and reader when writing a paragraph. It notes that a text's structure and content should depend on the intended purpose and reader, as the purpose will determine what information to include and how to present it. Different writing styles are suitable for different goals, such as selling, informing, or reporting information. The document stresses that writers should define their purpose and intended reader to help guide what content to cover.
The document discusses 21 patterns for splitting user stories into multiple stories. Some common patterns include splitting based on workflow steps, use case scenarios, different data types or operations on an entity, core functionality versus enhancements, and manual versus automated processes. The goals of splitting are to prioritize work, create smaller stories, and reduce dependencies between stories. The document provides descriptions and examples of when to use each pattern.
This document discusses techniques for splitting large user stories into smaller stories for an agile team. It provides examples of splitting stories by workflow, business rules, operations, data, performance, and interface. Some key techniques include focusing first on the happy path, starting with foundational capabilities like create/read, prioritizing the most important rules, and keeping the interface simple initially. Splitting stories properly allows teams to learn, adapt, and deliver working functionality in short iterations.
The document discusses what user stories are and how they are used in agile software development. It defines user stories as high-level descriptions of requirements that provide just enough information for developers to estimate the effort to implement them. It emphasizes that user stories are not detailed specifications, but rather focus on capturing the user's perspective and defining value. The document also covers best practices for writing effective user stories, including using the INVEST criteria of being Independent, Negotiable, Valuable, Estimable, Small, and Testable. It discusses other agile planning techniques like epics and themes that group related user stories.
The document discusses common smells and anti-patterns related to user stories. It identifies 9 major issues: 1) forgetting about conversation, 2) thinking everything needs to be a user story, 3) thinking a user story needs to include everything, 4) skipping acceptance criteria, 5) not having a definition of done, 6) taking on stories that are too big or risky, 7) splitting stories incorrectly, 8) not having a definition of ready, and 9) skipping product backlog refinement. Examples are provided for each issue.
User Story Slicing - easy way to split user stories Arto Eskelinen
This is a presentation from Scrum Gathering 2014 in Berlin. It describes a technique called "User Story Slicing" to make smaller, valuable slices out of a bigger story or epic.
This document introduces Behavior Driven Development (BDD). It defines BDD as starting with human-readable sentences that describe a feature and how it should work before implementing it in software. It discusses the principles of BDD, including being example-based, specifying features better, and having a shared understanding through discussion. An example feature is provided that uses the Given, When, Then structure to define a scenario for changing an application's status through specific steps. The document also notes that BDD leads to better defined acceptance criteria and living documentation.
This document provides guidance on writing scripts for online videos. It discusses key factors that influence how content spreads online like timing, significance, proximity, prominence and human interest. It also provides statistics on online video consumption and notes that video marketing is a top priority for marketers. The document offers tips for writing video scripts like knowing your audience, keeping the video short, using tight and memorable sentences, including a call to action, and optimizing the script for search engine optimization. It also covers commercial, PSA and formal video script formats.
How do we know... I mean, really _know_ when our project is finally _done_...? Particularly in this world of Agile Development practices, where the client can change his mind at any moment and add or remove things from the project, willy-nilly... What a mess! Welcome to (one of) the answers: Acceptance Criteria!
The document discusses user stories in agile development. It defines a user story, explaining that it is a short description of a feature from the perspective of a user. It provides an example user story template and examples. It also discusses what a good user story should contain, how to write acceptance criteria and test cases, and the INVEST principles for user stories. It explains who can write user stories, when they are written, and how to split large user stories into smaller ones. It distinguishes user stories from tasks and defines what "definition of ready" and "definition of done" mean for user stories.
In this simple presentation, the logic of sub-tasking a User story is explained and an example is provided. Interesting information for teams trying to understand why they should be doing it and the thinking process to accomplish the logic.
User stories are short descriptions of features or functionality that provide value to end users. They are written from the perspective of the user and follow a standard template of "As a <role>, I want <goal> so that <benefit>". User stories should be independent, negotiable, valuable, estimable, small, and testable. They provide a way for customers to influence development without formal requirements documents. Acceptance criteria define how a story will be considered complete. User stories are used in agile methodologies like Scrum to plan and track work in sprints.
User stories are used in agile methodologies to describe desired system functionality from the perspective of users. A good user story includes: the user role, desired outcome, optional quality requirements, and business value. It should be simple, focus on what needs to be done rather than how, and target components relevant to the project scope. While user stories provide high-level needs, additional requirements like acceptance criteria are still needed to fully specify the solution.
Introduction To User Stories For Agile Product Developmentzenpdm
The document discusses user stories, which describe functionality or features a product will deliver to users. It explains that a user story should have an independent central character and plot, with a clear outcome. The document outlines best practices for writing user stories according to the INVEST criteria - ensuring stories are independent, negotiable, valuable, estimable, small, and testable. It concludes by inviting the reader to a workshop to further discuss techniques for identifying user stories.
The document discusses user stories and how they can be used to improve communication between those building software and those wanting the software. It provides examples of well-structured user stories that include a template, acceptance criteria, and details on how specific and granular stories should be. Technical user stories are also discussed, which focus on non-functional requirements like infrastructure and refactoring rather than end-user functionality. The key benefits of user stories are outlined as being short and modifiable, allowing projects to be broken into small increments, and making effort estimation and development planning easier.
Ten Concrete Techniques to Split User StoriesNight Wolf
The document discusses various techniques for splitting user stories into smaller stories. It provides examples of how to split stories based on workflows, data elements, different cases or scenarios, interfaces and storage, dynamic parameters, multiple options, acceptance criteria, and investigative spikes. The goal is to create granular, independently testable stories that can be planned and delivered incrementally. Links to additional resources on story splitting techniques are also included.
Splitting Stories with the Hamburger Method - A Simple 5 Step ProcessStephen Tucker
The document discusses Adzic's Hamburger Method for vertically splitting user stories into smaller stories. It provides an overview of the method, which involves identifying layers or types of tasks needed to complete the story, then identifying options for each task from least to greatest value. The first "bite" or user story combines the least valuable option from each task. Subsequent bites build on prior bites by enhancing them. The document includes an example application of the method and a quiz.
Art of Writing in Agile : STC Summit 2017Shikha Saxena
Please find enclosed the presentation on "Art of Writing in Agile" that I recently presented, during #STCSummit2017 #stc #stc2017 in Washington DC on 9th May, 2017.
This document discusses user stories, which are short descriptions of a software feature written from the perspective of an end user. User stories help plan requirements in an agile development process. They are not technical specifications, but instead focus on the user's goal and how it provides business value. Good user stories have a clear user role, function or behavior, and acceptance criteria to define when the story is complete. The document provides guidelines for writing effective independent, negotiable, valuable and estimatable user stories.
This document discusses user stories, which provide short descriptions of what users need from a product. It covers the key questions of what, why, who, when and how for user stories. User stories should be independent, negotiable, valuable, estimable, small, and testable. They ensure teams work on high priority tasks and provide clear focus and direction. User stories are refined through constant iteration until they are specific and detailed enough with acceptance criteria.
This document provides instructions on writing for Batxillerat (Spanish high school) and discusses the importance of structure, purpose, and reader when writing a paragraph. It notes that a text's structure and content should depend on the intended purpose and reader, as the purpose will determine what information to include and how to present it. Different writing styles are suitable for different goals, such as selling, informing, or reporting information. The document stresses that writers should define their purpose and intended reader to help guide what content to cover.
The document discusses 21 patterns for splitting user stories into multiple stories. Some common patterns include splitting based on workflow steps, use case scenarios, different data types or operations on an entity, core functionality versus enhancements, and manual versus automated processes. The goals of splitting are to prioritize work, create smaller stories, and reduce dependencies between stories. The document provides descriptions and examples of when to use each pattern.
This document discusses techniques for splitting large user stories into smaller stories for an agile team. It provides examples of splitting stories by workflow, business rules, operations, data, performance, and interface. Some key techniques include focusing first on the happy path, starting with foundational capabilities like create/read, prioritizing the most important rules, and keeping the interface simple initially. Splitting stories properly allows teams to learn, adapt, and deliver working functionality in short iterations.
The document discusses what user stories are and how they are used in agile software development. It defines user stories as high-level descriptions of requirements that provide just enough information for developers to estimate the effort to implement them. It emphasizes that user stories are not detailed specifications, but rather focus on capturing the user's perspective and defining value. The document also covers best practices for writing effective user stories, including using the INVEST criteria of being Independent, Negotiable, Valuable, Estimable, Small, and Testable. It discusses other agile planning techniques like epics and themes that group related user stories.
The document discusses common smells and anti-patterns related to user stories. It identifies 9 major issues: 1) forgetting about conversation, 2) thinking everything needs to be a user story, 3) thinking a user story needs to include everything, 4) skipping acceptance criteria, 5) not having a definition of done, 6) taking on stories that are too big or risky, 7) splitting stories incorrectly, 8) not having a definition of ready, and 9) skipping product backlog refinement. Examples are provided for each issue.
User Story Slicing - easy way to split user stories Arto Eskelinen
This is a presentation from Scrum Gathering 2014 in Berlin. It describes a technique called "User Story Slicing" to make smaller, valuable slices out of a bigger story or epic.
This document introduces Behavior Driven Development (BDD). It defines BDD as starting with human-readable sentences that describe a feature and how it should work before implementing it in software. It discusses the principles of BDD, including being example-based, specifying features better, and having a shared understanding through discussion. An example feature is provided that uses the Given, When, Then structure to define a scenario for changing an application's status through specific steps. The document also notes that BDD leads to better defined acceptance criteria and living documentation.
This document provides guidance on writing scripts for online videos. It discusses key factors that influence how content spreads online like timing, significance, proximity, prominence and human interest. It also provides statistics on online video consumption and notes that video marketing is a top priority for marketers. The document offers tips for writing video scripts like knowing your audience, keeping the video short, using tight and memorable sentences, including a call to action, and optimizing the script for search engine optimization. It also covers commercial, PSA and formal video script formats.
How do we know... I mean, really _know_ when our project is finally _done_...? Particularly in this world of Agile Development practices, where the client can change his mind at any moment and add or remove things from the project, willy-nilly... What a mess! Welcome to (one of) the answers: Acceptance Criteria!
The document discusses user stories in agile development. It defines a user story, explaining that it is a short description of a feature from the perspective of a user. It provides an example user story template and examples. It also discusses what a good user story should contain, how to write acceptance criteria and test cases, and the INVEST principles for user stories. It explains who can write user stories, when they are written, and how to split large user stories into smaller ones. It distinguishes user stories from tasks and defines what "definition of ready" and "definition of done" mean for user stories.
In this simple presentation, the logic of sub-tasking a User story is explained and an example is provided. Interesting information for teams trying to understand why they should be doing it and the thinking process to accomplish the logic.
Through the webinar, she will give an introduction to the user story concept. How to create them? How they can help us build better products for our customers. Do's and Don'ts.
User Story Writing & Estimation For Testers By Mahesh VaradharajanAgile Testing Alliance
This session aims to introduce the critical aspects of user story formulation like INVEST principle, requirements hierarchy in Agile - with focus on aspects related to Agile Testing, such that it fits into the overall theme of the event. Through an exercise, with Lego blocks, the session will address the following aspects: Testability of user stories and importance of acceptance criteria. Handling NFRs - either as part of acceptance criteria or a new user stories. DoD and accommodating testing efforts as part of user story estimation; Defects as user stories. Dependency management between user stories via story maps.
Talk including Demo for the learning objectives outlined above
Re-uploading my User Story Splitting workshop; it seems to have gone missing.
This is a slide deck I have used for helping people learn various user story splitting techniques.
Gathering and defining software requirements is difficult.
One Agile technique to help address this challenge is writing user stories, which are short descriptions of functions that an end-user would want.
While user stories help convert concepts into functions, writing good user stories is easier said than done.
Gathering and defining software requirements is difficult. One Agile technique to help address this challenge is writing user stories, which are short descriptions of functions that an end-user would want. While user stories help convert concepts into functions, writing good user stories is easier said than done.
What you’ll learn in this presentation:
• The basics of user stories.
• How user stories fit into the overall Agile planning process.
• How to write a user story.
* Team velocity is 24 story points per iteration
* Total backlog size is 256 story points
* To calculate the number of iterations:
- Total backlog size / Team velocity
- 256 / 24 = 10.67 iterations (round up to 11 iterations)
* Adding a 35% buffer to the backlog size:
- Backlog size * (1 + Buffer percentage)
- 256 * (1 + 0.35) = 345.6 story points
* With the buffered backlog size:
- Buffered backlog size / Team velocity
- 345.6 / 24 = 14.4 iterations (round up to 15 iterations)
Therefore, the number of iterations without buffer is 11 and with 35%
The document discusses user stories and acceptance criteria for product requirements. It provides examples of user stories written in common formats, including as a user I want to do X so that Y. It also discusses best practices for writing acceptance criteria using a Given, When, Then structure. Breaking down stories and acceptance criteria into testable tasks is covered.
Xp 2016 superchargeyourproductbacklogwithuserstories-suzannelazLaz Allen
This document summarizes a workshop on supercharging a product backlog with user stories. The workshop covers defining user stories, examples of user stories, splitting large stories into smaller ones, acceptance criteria, and product backlog refinement. Attendees participate in hands-on exercises to practice writing, critiquing, and splitting user stories. The document emphasizes that user stories should describe features from the perspective of users or stakeholders and focus on value and benefits.
User Stories Writing - Codemotion 2013Fabio Armani
Stefano Leli (Freelance) - Fabio Armani (OpenWare)
Scrivere user stories dovrebbe essere facile...almeno in teoria. In realtà nella pratica ci troviamo troppo spesso a combattere con storie vaghe o troppo tecniche, storie che non possono essere testate o addirittura che non portano alcun valore. In questo workshop cercheremo assieme di comprendere la differenza tra requisiti funzionali e User Story, tra User Story e Use Case, mediante dei case study.
User stories writing - Codemotion 2013Stefano Leli
The document provides information on user stories, including what they are, how to write them, and best practices. Some key points:
- A user story is a high-level definition of a requirement written from the user's perspective that provides enough information for developers to estimate effort. It focuses on who needs what and why, not how.
- User stories should follow the INVEST criteria: independent, negotiable, valuable, estimable, sized appropriately, and testable. Acceptance criteria define when a story is complete.
- Epics are large stories that need to be broken down into smaller stories over multiple iterations. Themes group related stories.
- Best practices for writing stories include keeping them
This document discusses user stories and requirements elicitation. It defines user stories and explains the three parts - the card, conversation, and confirmation. The card is a simple statement written in a certain format. The conversation involves discussion to clarify and expand on the user story. The confirmation is a test case to validate that the goal of the user story is met. An example user story is provided for a video uploading feature on YouTube. Requirements and test steps are added during the conversation and confirmation parts. The document also discusses using user stories to capture requirements and ensure they are independent, negotiable, valuable, estimable, small, and testable.
This document discusses epics and user stories in agile software development. It defines epics as large features or requirements too big to complete in a single sprint that need to be broken down into smaller user stories. User stories are simple descriptions of features written from the perspective of the end user that follow a who, what, why template. The document provides examples of epics and user stories and guidelines for when and how to split large stories or epics into smaller independent stories that can be estimated and implemented within a sprint.
This document provides an overview of key concepts for product owners in agile development, including:
- The product vision, roadmap, and backlog help define what to build and guide decision making. User stories written in INVEST format further describe features.
- Acceptance criteria and tasks provide developers with a shared understanding of what constitutes complete work. Gherkin specifications connect stories to automated tests.
- The product owner spends time both internally with the team and externally with stakeholders to refine the backlog, discover new stories, and ensure the product meets user needs.
Defining work items is a challenge. We could argue that a work item is anything that is delivered to the customer.
As much as we've been trying and done some good work on defining user stories over the last decade it’s still a major source of confusion for a lot of projects.
Let’s try another way using examples or scenarios.
E-commerce Application Development Company.pdfHornet Dynamics
Your business can reach new heights with our assistance as we design solutions that are specifically appropriate for your goals and vision. Our eCommerce application solutions can digitally coordinate all retail operations processes to meet the demands of the marketplace while maintaining business continuity.
8 Best Automated Android App Testing Tool and Framework in 2024.pdfkalichargn70th171
Regarding mobile operating systems, two major players dominate our thoughts: Android and iPhone. With Android leading the market, software development companies are focused on delivering apps compatible with this OS. Ensuring an app's functionality across various Android devices, OS versions, and hardware specifications is critical, making Android app testing essential.
Measures in SQL (SIGMOD 2024, Santiago, Chile)Julian Hyde
SQL has attained widespread adoption, but Business Intelligence tools still use their own higher level languages based upon a multidimensional paradigm. Composable calculations are what is missing from SQL, and we propose a new kind of column, called a measure, that attaches a calculation to a table. Like regular tables, tables with measures are composable and closed when used in queries.
SQL-with-measures has the power, conciseness and reusability of multidimensional languages but retains SQL semantics. Measure invocations can be expanded in place to simple, clear SQL.
To define the evaluation semantics for measures, we introduce context-sensitive expressions (a way to evaluate multidimensional expressions that is consistent with existing SQL semantics), a concept called evaluation context, and several operations for setting and modifying the evaluation context.
A talk at SIGMOD, June 9–15, 2024, Santiago, Chile
Authors: Julian Hyde (Google) and John Fremlin (Google)
https://doi.org/10.1145/3626246.3653374
UI5con 2024 - Keynote: Latest News about UI5 and it’s EcosystemPeter Muessig
Learn about the latest innovations in and around OpenUI5/SAPUI5: UI5 Tooling, UI5 linter, UI5 Web Components, Web Components Integration, UI5 2.x, UI5 GenAI.
Recording:
https://www.youtube.com/live/MSdGLG2zLy8?si=INxBHTqkwHhxV5Ta&t=0
UI5con 2024 - Boost Your Development Experience with UI5 Tooling ExtensionsPeter Muessig
The UI5 tooling is the development and build tooling of UI5. It is built in a modular and extensible way so that it can be easily extended by your needs. This session will showcase various tooling extensions which can boost your development experience by far so that you can really work offline, transpile your code in your project to use even newer versions of EcmaScript (than 2022 which is supported right now by the UI5 tooling), consume any npm package of your choice in your project, using different kind of proxies, and even stitching UI5 projects during development together to mimic your target environment.
Graspan: A Big Data System for Big Code AnalysisAftab Hussain
We built a disk-based parallel graph system, Graspan, that uses a novel edge-pair centric computation model to compute dynamic transitive closures on very large program graphs.
We implement context-sensitive pointer/alias and dataflow analyses on Graspan. An evaluation of these analyses on large codebases such as Linux shows that their Graspan implementations scale to millions of lines of code and are much simpler than their original implementations.
These analyses were used to augment the existing checkers; these augmented checkers found 132 new NULL pointer bugs and 1308 unnecessary NULL tests in Linux 4.4.0-rc5, PostgreSQL 8.3.9, and Apache httpd 2.2.18.
- Accepted in ASPLOS ‘17, Xi’an, China.
- Featured in the tutorial, Systemized Program Analyses: A Big Data Perspective on Static Analysis Scalability, ASPLOS ‘17.
- Invited for presentation at SoCal PLS ‘16.
- Invited for poster presentation at PLDI SRC ‘16.
Hand Rolled Applicative User ValidationCode KataPhilip Schwarz
Could you use a simple piece of Scala validation code (granted, a very simplistic one too!) that you can rewrite, now and again, to refresh your basic understanding of Applicative operators <*>, <*, *>?
The goal is not to write perfect code showcasing validation, but rather, to provide a small, rough-and ready exercise to reinforce your muscle-memory.
Despite its grandiose-sounding title, this deck consists of just three slides showing the Scala 3 code to be rewritten whenever the details of the operators begin to fade away.
The code is my rough and ready translation of a Haskell user-validation program found in a book called Finding Success (and Failure) in Haskell - Fall in love with applicative functors.
E-commerce Development Services- Hornet DynamicsHornet Dynamics
For any business hoping to succeed in the digital age, having a strong online presence is crucial. We offer Ecommerce Development Services that are customized according to your business requirements and client preferences, enabling you to create a dynamic, safe, and user-friendly online store.
Software Engineering, Software Consulting, Tech Lead, Spring Boot, Spring Cloud, Spring Core, Spring JDBC, Spring Transaction, Spring MVC, OpenShift Cloud Platform, Kafka, REST, SOAP, LLD & HLD.
What is Augmented Reality Image Trackingpavan998932
Augmented Reality (AR) Image Tracking is a technology that enables AR applications to recognize and track images in the real world, overlaying digital content onto them. This enhances the user's interaction with their environment by providing additional information and interactive elements directly tied to physical images.
Microservice Teams - How the cloud changes the way we workSven Peters
A lot of technical challenges and complexity come with building a cloud-native and distributed architecture. The way we develop backend software has fundamentally changed in the last ten years. Managing a microservices architecture demands a lot of us to ensure observability and operational resiliency. But did you also change the way you run your development teams?
Sven will talk about Atlassian’s journey from a monolith to a multi-tenanted architecture and how it affected the way the engineering teams work. You will learn how we shifted to service ownership, moved to more autonomous teams (and its challenges), and established platform and enablement teams.
SMS API Integration in Saudi Arabia| Best SMS API ServiceYara Milbes
Discover the benefits and implementation of SMS API integration in the UAE and Middle East. This comprehensive guide covers the importance of SMS messaging APIs, the advantages of bulk SMS APIs, and real-world case studies. Learn how CEQUENS, a leader in communication solutions, can help your business enhance customer engagement and streamline operations with innovative CPaaS, reliable SMS APIs, and omnichannel solutions, including WhatsApp Business. Perfect for businesses seeking to optimize their communication strategies in the digital age.
Transform Your Communication with Cloud-Based IVR SolutionsTheSMSPoint
Discover the power of Cloud-Based IVR Solutions to streamline communication processes. Embrace scalability and cost-efficiency while enhancing customer experiences with features like automated call routing and voice recognition. Accessible from anywhere, these solutions integrate seamlessly with existing systems, providing real-time analytics for continuous improvement. Revolutionize your communication strategy today with Cloud-Based IVR Solutions. Learn more at: https://thesmspoint.com/channel/cloud-telephony
E-Invoicing Implementation: A Step-by-Step Guide for Saudi Arabian CompaniesQuickdice ERP
Explore the seamless transition to e-invoicing with this comprehensive guide tailored for Saudi Arabian businesses. Navigate the process effortlessly with step-by-step instructions designed to streamline implementation and enhance efficiency.
3. What we will achieve?
• What is story and the criteria's.
• Common mistake of stories.
• Examples and examples.
• Hands on story writing.
We will enjoy and have fun together
4.
5. What is story?
User stories are short, simple descriptions of a feature told
from the perspective of the person who desires the new
capability, usually a user or customer of the system.
6. User Stories Template
User stories are often written using the following template:
As a <Role>, I want <Task> so that I <Goal>
7. User Stories
• Who are we building it for, who the user is?
— As a <type of user>
• What are we building, what is the intention?
— I want <some goal or objective >
• Why are we building it, what value it bring for the user.?
— So that <benefit, value>
8. What Is Epic?
• When a story is too large, it is called an epic.
• An Epic can not be completed in a week time, or any work
which will take a full sprint to complete. By observation 5-10
user stories comprise of one Epic in agile methodology.
• For release planning, epics should be broken down into
smaller chunks.
10. User Story Example
As a customer, I want to be able to create an account so
that I can see the purchases I made in the last year to help
me budget for next year.
11. Why Write User Stories?
Simply listing a set of tasks for your team, while sometimes
effective, can be confusing.
This can stem from a number of causes:
•Vague context
•Unclear expectations
•Being overly technical
12. Characteristics Of A User Story
• A story should be small enough to be coded and tested within
an iteration.
• We should focus on what the user is doing or getting out of the
story.
• The goal is that when the user story is done, the user can do
something of value to them.
13. COS (Condition Of Satisfaction)
• COS provide the Definition of Done for the story.
• As details about the story evolve, capture the critical ones as
acceptance criteria.
• List as many acceptance criteria as possible in order to clarify the
intent of the story.
• Once an iteration has begun, testers can formalize acceptance criteria
into acceptance tests.
• By using bullet points, you can keep each criteria item brief and clear.
17. 1 Stories for user
As its name suggests, a user story describes how a
customer or user employs the product;
It should be written from the user’s
perspective.
18. 1. Stories For User (cont.)
Example: "As a user I want to be able to manage ads, so that I can remove
expired and erroneous ads.“
What’s Wrong With it ?
20. Now What is wrong here?
"As an commercial advertiser I want to
have filtering option.”
21. No Acceptance Criteria or Conditions of
Satisfaction
• Not having COS can cause the whole chain of mistakes starting
with wrong definition of development tasks or wrong estimation.
• Story can failed the tests or Test Cases will cover different
criteria due to lack of understanding.
• Asking questions such as
‘What if … ?’, ‘Where …?’, ‘When …?’, ‘How …?’
• Use examples and simple drawings to remove assumptions
22. 2. Stories For Developer
‘As a commercial user I want the system to allow me run multiple
searches at the same time, so that I can do my job faster.’
• Re-factor search handling mechanism to allow multiple threads for single use
• Update java version to 64-bit one.
Acceptance criteria need to define some measurable and testable definition of improvement like:
‘Single user can run 5 searches at the same time.’
‘Search returns results in less than 4 seconds.’
23. COS Example
As a conference attendee, I want to be able to register
online, so I can register quickly and cut down on
paperwork.
• A user cannot submit a form without completing all the mandatory fields.
• Information from the form is stored in the registrations database.
• Protection against spam is working.
• Payment can be made via credit card.
• An acknowledgment email is sent to the user after submitting the form.
33. Stories?
• Make DB tables to store search User data (IP and
keyword)
• Search keywords (Type the keyword and get result)
• Result Listing.
• Performance. (will find within 1 sec)
37. Why we need smaller stories?
• Small stories provide focus and a short horizon for the team.
• Smaller stories enable more frequent handoffs and allow testers to work
on smaller chunks of code.
• Small stories give you the flexibility to reconfigure and adapt to new
discoveries or changes.
• Small stories provide more feedback opportunities at all levels of the
system and more opportunities for personal satisfaction.
• Large stories increase the risk that your team will deliver nothing at the
end of the iteration.
Independent - We want to be able to develop in any sequence.
Negotiable - Avoid too much detail, keep them flexible so the team can adjust how much of the story to implement.
Valuable - Users or customers get some value from the story.
Estimable - The team must be able to use them for planning.
Small - Large stories are harder to estimate and plan. By the time of iteration planning, the story should be able to be designed, coded, and tested within the iteration.
Testable - Document acceptance criteria, or the definition of done for the story, which lead to test cases.
If you don’t know who the users and customers are and why they would want to use the product, then you should not write any user stories. Carry out the necessary user research first, for example, by observing and interviewing users. Otherwise, you take the risk of writing speculative stories that are based on beliefs and ideas—but not on data and empirical evidence.
This case what is missing is persona or role mentioned.
At the first glance you don’t see any issues with that User Story, because all the required elements are present.
Now tell me who is the user for whom you are going to build that feature of ads management and what does he understand ads management?
Is that a portal administrator, who wants to have possibly of database clean-up and ads moderation?
Or maybe it is an advertiser, who wants to have list of all ads he submitted to the side and have possibility of removing ads when they are not needed any longer or there was error found in the content?
As you may noticed, I mentioned only two different roles with different expectations from the system. I this case what is missing is persona or role mentioned.
No Business Value or Benefit for Customer
We have the role, we have the need, but reason and business value are missing.
Why does an commercial advertiser want to have filtering option?
What does he want to achieve?
This typical example of Story for a Technical Backlog or technical requirement representation.
Sometimes User Stories like this one are also part of so called technical debt.
Technical debt consists of necessary maintenance tasks like software updates, re-factoring, changing frameworks and so on.
They are totally rightful to be implemented, but represented like in the example above they do not represent value for the customer and you will not get a buy-in from Product Owner.
Also from the ‘agile point of view’, you need to deliver a business value at the end of every iteration and the team needs to be able to present it to the stakeholders on the review meeting.
How to write such a story correctly? Rewrite it from a user point of view with persona on role.
Example: ‘As a commercial user I want the system to allow me run multiple searches at the same time, so that I can do my job faster.’
Task to go with it can be: ‘Re-factor search handling mechanism to allow multiple threads for single user.’, ‘Update java version to 64-bit one.’ Acceptance criteria need to define some measurable and testable definition of improvement like: ‘Single user can run 5 searches at the same time.’ and ‘Search returns results in less than 4 seconds.’
Small stories provide focus and a short horizon for the team. It’s easier to get lost in the details with a larger story.
When you still have development to test handoffs (i.e. before you start doing ATDD(Acceptance Test Driven Development), smaller stories enable more frequent handoffs and allow testers to work on smaller chunks of code.
Small stories give you the flexibility to reconfigure and adapt to new discoveries or changes. Perhaps the PO discovers that an existing story is now irrelevant; or while coding you discover a surprise. Small stories make it easier to adapt.
Small stories provide more feedback opportunities at all levels of the system and more opportunities for personal satisfaction; think of the small dopamine rush that happens every time you complete something!
Large stories increase the risk that your team will deliver nothing at the end of the iteration.
Your team has a capacity like a drain pipe and just like a pipe the larger the object you try to push through it the more likely it is that blockages and bottlenecks will occur. Perhaps one person who is tied up in the large story may also be the only person who can complete a key piece of another story.