What do you mean by Requirements?
A requirement is:
A condition or capability needed by a stakeholder to solve a problem or achieve an objective.
A condition or capability that must be met or possessed by a solution or solution component to satisfy a contract , standard, specification, or other formally imposed documents.
A documented representation of a condition or capability as mentioned above.
Risks are potential problems that might affect the successful completion of a software project. Risks involve uncertainty and potential losses. Risk analysis and management are intended to help a software team understand and manage uncertainty during the development process. The important thing is to remember that things can go wrong and to make plans to minimize their impact when they do. The work product is called a Risk Mitigation, Monitoring, and Management Plan (RMMM).
These PPT presentation help to understand waterfall model in SDLC. The Waterfall model is the earliest SDLC approach that was used for software development. There are five steps in the waterfall model.
Software design is a process through which requirements are translated into a ― blueprint for constructing the software.
Initially, the blueprint shows how the software will look and what kind of data or components will be required to in making it.
The software is divided into separately named components, often called ‘MODULES’, that are used to detect problems at ease.
This follows the "DIVIDE AND CONQUER" conclusion. It's easier to solve a complex problem when you break it into manageable pieces.
This Presentation contains all the topics in design concept of software engineering. This is much more helpful in designing new product. You have to consider some of the design concepts that are given in the ppt
Requirements analysis, also called requirements engineering, is the process of determining user expectations for a new or modified product. These features, called requirements, must be quantifiable, relevant and detailed. In software engineering, such requirements are often called functional specifications. Requirements analysis is an important aspect of project management.
Following presentation answers:
- Why do we need evolution?
- What happens if we do not evolve the software?
- What are the types of software evolution?
- What are Lehman's laws
- What are the strategies for evolution?
SDLC is the acronym of Software Development Life Cycle. It is also called as Software development process. The software development life cycle (SDLC) is a framework defining tasks performed at each step in the software development process.
Risks are potential problems that might affect the successful completion of a software project. Risks involve uncertainty and potential losses. Risk analysis and management are intended to help a software team understand and manage uncertainty during the development process. The important thing is to remember that things can go wrong and to make plans to minimize their impact when they do. The work product is called a Risk Mitigation, Monitoring, and Management Plan (RMMM).
These PPT presentation help to understand waterfall model in SDLC. The Waterfall model is the earliest SDLC approach that was used for software development. There are five steps in the waterfall model.
Software design is a process through which requirements are translated into a ― blueprint for constructing the software.
Initially, the blueprint shows how the software will look and what kind of data or components will be required to in making it.
The software is divided into separately named components, often called ‘MODULES’, that are used to detect problems at ease.
This follows the "DIVIDE AND CONQUER" conclusion. It's easier to solve a complex problem when you break it into manageable pieces.
This Presentation contains all the topics in design concept of software engineering. This is much more helpful in designing new product. You have to consider some of the design concepts that are given in the ppt
Requirements analysis, also called requirements engineering, is the process of determining user expectations for a new or modified product. These features, called requirements, must be quantifiable, relevant and detailed. In software engineering, such requirements are often called functional specifications. Requirements analysis is an important aspect of project management.
Following presentation answers:
- Why do we need evolution?
- What happens if we do not evolve the software?
- What are the types of software evolution?
- What are Lehman's laws
- What are the strategies for evolution?
SDLC is the acronym of Software Development Life Cycle. It is also called as Software development process. The software development life cycle (SDLC) is a framework defining tasks performed at each step in the software development process.
Medeil is an easy to use, quick to deploy pharmacy management software system that increases visibility and control of all pharmacy management processes. Medeil customers benefit from increased accuracy, improved service levels and reduced inventory management costs.
Betaleadership De Gestores de Recursos Humanos a Makers de Interacciones HumanasSylvain Loubradou
En el plenario de Factor Huma #plenariFH ponencia sobre la evolución necesaria de Recursos Humanos en este mundo de complejidad. Como pasar de gestores a Makers, del discurso a las acciones.
1.1.7 Система огнестойких проходок VulcanIgor Golovin
Кабельные проходки – это общее название заделки мест прохождения кабеленесущих лотков и кабель-каналов, пластиковых труб и отдельных кабелей через стены, потолочные перекрытия, либо специальные противопожарные преграды. Заделка кабельной проходки может выполняться различным способом и с применением различных материалов.
Основные требования, предъявляемые к кабельным проходкам в нормативных документах:
• негорючесть материала;
• возможность замены кабеля в уже установленной кабельной проходке.
1.1.9 Система Angara и дренажные трубы Igor Golovin
Система предназначена для прокладки трасс кондиционирования, отопления и водоснабжения. Короба устанавливаются как в жилых и офисных, так и производственных помещениях, а также по фасадам зданий. Прокладка коммуникаций осуществляется как по стенам – в коробах настенного типа, так и по полу – в коробах плинтусного типа. Короба гармонично вписываются в интерьеры помещений и рассчитаны на длительную эксплуатацию. Одним из отличий профессиональных коробов от обычных электротехнических коробов является специальная конструкция с округлой крышкой, охватывающей короб с 3-х сторон. Такая конструкция облегчает монтаж системы и позволяет ей идеально вписываться в любые интерьеры за счет полного отсутствия щелей на внешней поверхности короба. Также в ассортименте присутствует набор специализированных аксессуаров, которые обеспечивают как удобный монтаж системы, так и удобство последующей эксплуатации.
A relatively unique concept put forth by Chu & Choi (2005), \'Active\' procrastination looks at the \'effective\' and \'efficient\' kind of procrastination characterized by the actives \'deliberate\' and \'intentional\' desire to procrastinate. With high self -awareness and skillful use of unstructures time, the active procrastinator gets his work done on time (inspite of procrastinating) and is actually satisfied with the outcome.
Onlangs heeft het bestuur van Stichting Draagt Elkanders Lasten besloten haar activiteiten te staken. De stichting is in 1919 opgericht om gezondheidszorg voor iedereen toegankelijk te maken. In een brief heeft secretaris Pieter de Vente van Vakcentrale CNV de donateurs bedankt voor de bijdragen die geschonken zijn om de doelstelling van de stichting te bereiken. Donaties aan het CNV worden nu aangewend voor CNV Internationaal, dat zich inzet voor vakbondswerk in ontwikkelingslanden.
All of us must have heard this proverb umpteen number of times in our lives. However, when it comes to elicitation, we tend to forget the same.Elicitation is possibly the most important job we business analysts do. I am surprised that many of us understand only few facets of elicitation such as requirements gathering and recording.Elicitation is much more than requirements gathering and recording. A good elicitation activity can significantly reduce effort in changes in requirements and subsequent changes to design, construction and testing activities.Here is an attempt to make our elicitation exercises more effective.
These CBAP sample questions are taken from CBAP question bank, published by Techcanvass. These questions are provided to all our students, who are preparing for the CBAP/CCBA certification examination.
Techcanvass offers these types of questions along with case study based questions to the students, who enroll with us. This is one of the resources, which are available for the following courses:
CBAP certification course - http://techcanvass.com/Courses/IIBA-CBAP-certification-training.aspx
CCBA certification course - http://techcanvass.com/Courses/IIBA-CCBA-Certification-course.aspx
Software engineering is an engineering branch associated with development of software product using well-defined scientific principles, methods and procedures. The outcome of software engineering is an efficient and reliable software product
Product Owner in Agile/Scrum is the single person responsible for maximizing the return on investment (ROI) of the development effort
Responsible for product vision
Constantly re-prioritizes the Product Backlog, adjusting any long-term expectations such as release plans
Final arbiter of requirements questions
Decides whether to release
Decides whether to continue the development
Considers stakeholder interests
May contribute as a team member
Has a leadership role
Must be available to the Team at any time
What Is Servant Leadership?
Characteristics of Servant Leadership
Myths Of Servant Leadership
Best Servant Leaders
Benefits of Servant Leadership
Do's and Don'ts of Being a Servant Leader
Servant Leadership at the Workplace
The servant-leader is servant first and then conscious choice brings one to aspire to lead.
Servant leaders involve others in decision-making that enhances the growth of people while improving the quality of organizational life.
Servant leaders ensure that their team’s needs are met while they focus on helping individuals make better decisions and be more innovative.
Servant leadership is not about gaining–it is about giving and serving.
Characteristics of Servant Leadership
Valuing People
Humility: People First
Listening
Empathy
Stewardship
Trust & Caring
Persuasion
Building Community
Myths Of Servant Leadership
1) Servant leadership means giving up power to employees.
Servant leadership is about sharing power and decision-making with employees to enable the business to be successful.
Servant leadership doesn’t mean that employees can do whatever they want, or that every decision within the organization is made by consensus.
2) A servant leader is abdicating responsibility for success.
Servant leader understands that they are ultimately responsible for the success of their employees and the success of their business.
Sometimes decisions need to be made that only the leader can make; the tough calls that might be unpopular.
#Leadership
#ServantLeadership
#ServantLeaders
#Agile
#Scrum
#DecisionMaking
#Empathy
#Persuasion
#projectmanagement
#OrganizationalLife
#Innovation
#Growth
#ManoharPrasad
#AgileCoaching
#ServantLeader
#organization
#ResponsibilityForSuccess
#BusinessSuccess
#PopularDecision
Agile Retrospective by Manohar Prasad
Topics which are covered -
Agile Manifesto
Agile Principles
Scrum Values
What is Retrospective
Why Retrospectives
How to perform Retrospectives
Best Retrospective Practices
Best Retrospective Methods
“Scrum Master” & “Agile Project Manager”: A Tale of Two Different Roles by Manohar Prasad, CSP®-SM, CSP®-PO, CSM®, CSPO®, PSM I®, Agile Coach
“The Scrum Master is responsible for ensuring Scrum is understood and enacted. Scrum Masters do this by ensuring that the Scrum Team adheres to Scrum theory, practices, and rules.”
“The Scrum Master helps those outside the Scrum Team understand which of their interactions with the Scrum Team are helpful and which aren’t. The Scrum Master helps everyone change these interactions to maximize the value created by the Scrum Team.”
Agile in sales takes sales management strategies from the Agile world. One such framework is called the Scrum. The Scrum components include sprints, sprint planning, daily stand-ups, sprint review, sprint retrospective and constant iteration and applies all of them to selling. This methodology helps sales teams be more flexible, cross-functional, and effective which ultimately increases the sales.
Agile is a software development methodology in which the development is carried out iteratively and the requirements evolve through continuous inspection and adaptation. Some of the most commonly used agile software development methods/frameworks are: Adaptive Software Development (ASD), Extreme Programming (XP), Scrum and Kanban.
Scrum is an efficient framework within which you can develop software with teamwork. It is based on agile principles.
This presentation will help you understand agile development in general and Scrum in specific. You will get familiar with its associated terminology along with appropriate examples.
Identify the key components of e-commerce business models.
A successful business model effectively addresses eight key elements:
●Value proposition - how a company's product or service fulfills the needs of customers. Typical e-commerce value propositions include personalization, customization, convenience, and reduction of product search and price delivery costs.
●Revenue model -- how the company plans to make money from its operations. Major e-commerce revenue models include the advertising model, subscription model, transaction fee model, sales model, and affiliate model.
●Market opportunity -- the revenue potential within a company's intended marketspace.
●Competitive environment-the direct and indirect competitors doing business in the same marketspace, including how many there are and how profitable they are.
●Competitive advantage - the factors that differentiate the business from its competition, enabling it to provide a superior product at a lower cost.
●Market strategy -- the plan a company develops that outlines how it will enter a market and attract customers.
●Organizational development - the process of defining all the functions within a business and the skills necessary to perform each job, as well as the process of recruiting and hiring strong employees.
●Management team - the group of individuals retained to guide the company's growth and expansion.
Training & development evaluation is a continual and systematic process of assessing the value or potential value of a training program, course, activity or event. Results of the evaluation are used to guide decision-making around various components of the training (e.g. delivery, results) and its overall continuation, modification, or elimination.
Search engine optimization is a methodology of strategies, techniques and tactics used to increase the visitors to a website by obtaining a high-ranking placement in the search results page of a search engine -- including Google, Bing, Yahoo and other search engines. SEO helps to ensure that a site is accessible to a search engine and improves the chances that the site will be found by the search engine.
Digital Marketing is an alternative terms for online marketing or e-marketing. There is no difference between online marketing and digital marketing but a few experts also make a few difference between both type marketing as they have said that digital marketing bears of virtual products but online marketing carries virtual and physical products. Business and marketing has been redirected to online presence either physical or digital products because World Wide Web has become common household name around the globe. Normally customers and clients check their needs online either physical products or digital products.
Custom Healthcare Software for Managing Chronic Conditions and Remote Patient...Mind IT Systems
Healthcare providers often struggle with the complexities of chronic conditions and remote patient monitoring, as each patient requires personalized care and ongoing monitoring. Off-the-shelf solutions may not meet these diverse needs, leading to inefficiencies and gaps in care. It’s here, custom healthcare software offers a tailored solution, ensuring improved care and effectiveness.
Understanding Nidhi Software Pricing: A Quick Guide 🌟
Choosing the right software is vital for Nidhi companies to streamline operations. Our latest presentation covers Nidhi software pricing, key factors, costs, and negotiation tips.
📊 What You’ll Learn:
Key factors influencing Nidhi software price
Understanding the true cost beyond the initial price
Tips for negotiating the best deal
Affordable and customizable pricing options with Vector Nidhi Software
🔗 Learn more at: www.vectornidhisoftware.com/software-for-nidhi-company/
#NidhiSoftwarePrice #NidhiSoftware #VectorNidhi
Code reviews are vital for ensuring good code quality. They serve as one of our last lines of defense against bugs and subpar code reaching production.
Yet, they often turn into annoying tasks riddled with frustration, hostility, unclear feedback and lack of standards. How can we improve this crucial process?
In this session we will cover:
- The Art of Effective Code Reviews
- Streamlining the Review Process
- Elevating Reviews with Automated Tools
By the end of this presentation, you'll have the knowledge on how to organize and improve your code review proces
Navigating the Metaverse: A Journey into Virtual Evolution"Donna Lenk
Join us for an exploration of the Metaverse's evolution, where innovation meets imagination. Discover new dimensions of virtual events, engage with thought-provoking discussions, and witness the transformative power of digital realms."
First Steps with Globus Compute Multi-User EndpointsGlobus
In this presentation we will share our experiences around getting started with the Globus Compute multi-user endpoint. Working with the Pharmacology group at the University of Auckland, we have previously written an application using Globus Compute that can offload computationally expensive steps in the researcher's workflows, which they wish to manage from their familiar Windows environments, onto the NeSI (New Zealand eScience Infrastructure) cluster. Some of the challenges we have encountered were that each researcher had to set up and manage their own single-user globus compute endpoint and that the workloads had varying resource requirements (CPUs, memory and wall time) between different runs. We hope that the multi-user endpoint will help to address these challenges and share an update on our progress here.
In 2015, I used to write extensions for Joomla, WordPress, phpBB3, etc and I ...Juraj Vysvader
In 2015, I used to write extensions for Joomla, WordPress, phpBB3, etc and I didn't get rich from it but it did have 63K downloads (powered possible tens of thousands of websites).
Need for Speed: Removing speed bumps from your Symfony projects ⚡️Łukasz Chruściel
No one wants their application to drag like a car stuck in the slow lane! Yet it’s all too common to encounter bumpy, pothole-filled solutions that slow the speed of any application. Symfony apps are not an exception.
In this talk, I will take you for a spin around the performance racetrack. We’ll explore common pitfalls - those hidden potholes on your application that can cause unexpected slowdowns. Learn how to spot these performance bumps early, and more importantly, how to navigate around them to keep your application running at top speed.
We will focus in particular on tuning your engine at the application level, making the right adjustments to ensure that your system responds like a well-oiled, high-performance race car.
May Marketo Masterclass, London MUG May 22 2024.pdfAdele Miller
Can't make Adobe Summit in Vegas? No sweat because the EMEA Marketo Engage Champions are coming to London to share their Summit sessions, insights and more!
This is a MUG with a twist you don't want to miss.
OpenMetadata Community Meeting - 5th June 2024OpenMetadata
The OpenMetadata Community Meeting was held on June 5th, 2024. In this meeting, we discussed about the data quality capabilities that are integrated with the Incident Manager, providing a complete solution to handle your data observability needs. Watch the end-to-end demo of the data quality features.
* How to run your own data quality framework
* What is the performance impact of running data quality frameworks
* How to run the test cases in your own ETL pipelines
* How the Incident Manager is integrated
* Get notified with alerts when test cases fail
Watch the meeting recording here - https://www.youtube.com/watch?v=UbNOje0kf6E
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.
GraphSummit Paris - The art of the possible with Graph TechnologyNeo4j
Sudhir Hasbe, Chief Product Officer, Neo4j
Join us as we explore breakthrough innovations enabled by interconnected data and AI. Discover firsthand how organizations use relationships in data to uncover contextual insights and solve our most pressing challenges – from optimizing supply chains, detecting fraud, and improving customer experiences to accelerating drug discoveries.
Do you want Software for your Business? Visit Deuglo
Deuglo has top Software Developers in India. They are experts in software development and help design and create custom Software solutions.
Deuglo follows seven steps methods for delivering their services to their customers. They called it the Software development life cycle process (SDLC).
Requirement — Collecting the Requirements is the first Phase in the SSLC process.
Feasibility Study — after completing the requirement process they move to the design phase.
Design — in this phase, they start designing the software.
Coding — when designing is completed, the developers start coding for the software.
Testing — in this phase when the coding of the software is done the testing team will start testing.
Installation — after completion of testing, the application opens to the live server and launches!
Maintenance — after completing the software development, customers start using the software.
Top Features to Include in Your Winzo Clone App for Business Growth (4).pptxrickgrimesss22
Discover the essential features to incorporate in your Winzo clone app to boost business growth, enhance user engagement, and drive revenue. Learn how to create a compelling gaming experience that stands out in the competitive market.
2. Agenda:
• What do you mean by requirements
• Requirements roles and responsibilities
• Requirements classifications
• Business requirements
• Stakeholder requirements
• Solution requirements
• Transition requirements
• Use case
• Elements of use case
• Use case diagram
• Use Case description
2Requirements & Use Cases by Manohar Prasad
3. Requirements
What do you mean by Requirements?
A requirement is:
• A condition or capability needed by a stakeholder
to solve a problem or achieve an objective.
• A condition or capability that must be met or
possessed by a solution or solution component to
satisfy a contract , standard, specification, or other
formally imposed documents.
• A documented representation of a condition or
capability as mentioned above.
3Requirements & Use Cases by Manohar Prasad
4. Slide Title
• Make Effective Presentations
• Using Awesome Backgrounds
• Engage your Audience
• Capture Audience Attention
Requirements
A requirement may be unstated, implied by or derived
from other requirements or directly stated or managed.
One of the key objectives of business analysis is to ensure
that requirements are visible to and understood by all
stakeholders.
The requirements serve as the foundation for the
software solution to the business needs. It is essential
that the requirements must be complete, clear, correct
and consistent.
Typically, requirements are identified throughout the
elicitation, analysis, verification and validation activities.
4Requirements & Use Cases by Manohar Prasad
5. Requirements
For example, requirements may be elicited in
interviews or requirements workshops. Later, when
those requirements are used to build and verify
model(s), gaps in the requirements may be
discovered. This will then require eliciting details of
those newly identified requirements.
5Requirements & Use Cases by Manohar Prasad
6. Slide Title
Product A
• Feature 1
• Feature 2
• Feature 3
• Feature 4
Product B
• Feature 1
• Feature 2
• Feature 3
• Feature 4
Requirement Roles to People
Roles of Requirements
• Customers: Show what should be delivered;
• Managers: A scheduling / progress indicator
• Designers: Provide a spec to design
• Programmers: List a range of acceptable
implementations / output
• QA / Testers: Provide a basis for testing, validation,
and verification
6Requirements & Use Cases by Manohar Prasad
7. Requirements Classification
A classic way to categorize requirements are :
• Business Requirements
• Stakeholder Requirements
• Solution Requirements
Functional Requirements
Non-functional Requirements
• Transition Requirements
7Requirements & Use Cases by Manohar Prasad
8. Business Requirements
Business requirements are higher-level statement of the
goals, objectives, or needs of the enterprise.
It describes the reasons why a project has been initiated,
the objectives that the project will achieve, and the
metrics that will be used to measure its success.
Business requirements describe needs of the organization
as a whole and not groups or stakeholders within it. They
are developed and defined through Enterprise Analysis.
8Requirements & Use Cases by Manohar Prasad
9. Stakeholder Requirements
Stakeholder requirements are statements of the needs of a
particular stakeholder or class of stakeholders.
They describe the needs that a given stakeholder has and
how that stakeholder will interact with a solution.
Stakeholder requirements serve as a bridge between
business requirements and the various classes of solution
requirements. They are developed and defined through
requirements analysis.
9Requirements & Use Cases by Manohar Prasad
10. Solution Requirements
Solution requirements describe the characteristics of a
solution that meet business requirements and stakeholder
requirements.
They are developed and defined through requirement
analysis. They are further divided into sub-categories,
particularly when the requirements describe a software
solution:
• Functional Requirements
• Non-functional Requirements
10Requirements & Use Cases by Manohar Prasad
11. Functional Requirements
Functional requirements describe the behavior and
information that the solution will manage. They describe
capabilities the system will be able to perform in terms of
behaviors or operations – specific information technology
application actions or responses.
Example of functional requirements:
The user shall be able to search either all of the initial
set of databases or select a subset from it.
11Requirements & Use Cases by Manohar Prasad
12. Non-functional requirements
Non-functional requirements covers the conditions that do
not directly relate to the behavior or functionality of the
solution, but rather describe environmental conditions
under which the solution must remain effective or qualities
that the system must have.
Non-functional requirements include requirements related
to Capacity, Performance, Security, Speed and the
information architecture and presentation of the user
interface.
Example of non-functional requirements:
The system shall not disclose any personal information of the
customers apart from their name and reference number to the
operators of the system.
12Requirements & Use Cases by Manohar Prasad
13. Transition Requirements
Transition requirements describe capabilities that the
solution must have in order to facilitate transition from the
current state of the enterprise to a desired future state,
but that will not be needed once that transition is
complete.
Transition requirements are always temporary in nature.
They typically cover data conversion from existing systems,
skill gaps that must be addressed, and other related
changes to reach the desired future state.
They are developed and defined through Solution
Assessment and Validation.
13Requirements & Use Cases by Manohar Prasad
14. Use Cases
A use case is a description of a set of interactions between
a system and one or more actors (where actor can be
people or other systems. Ex. Both online shoppers and
PayPal can be actors).
A use case describes the possible outcomes of an attempt
to accomplish a particular goal that the solution will
support. It is created as a Use Case document.
Use cases describe the interactions between the primary
actor, the solution, and any secondary actors needed to
achieve the primary actor’s goal.
14Requirements & Use Cases by Manohar Prasad
15. Use Cases
Use Cases are written from the point of view of the actor
and avoid describing the internal workings of the solution.
Use Case Diagram
A use case diagram is a graphical representation of the
relationships between actors and one or more use cases
supported by the solution.
A use case diagram visually depicts the scope of the
solution, by showing the actors who interact with the
solution, which use cases they interact with, and any
relationships between the use cases.
15Requirements & Use Cases by Manohar Prasad
17. Actors
What is an actor?
An actor is any person or system external to the solution
that interacts with that solution. Each actor is given a
unique name that represents the role they play in
interactions with the solution.
A use case is started by an actor, referred to as the
primary actor for that use case. Other actors who
participate in the use case in a supporting role are called
secondary actors.
17Requirements & Use Cases by Manohar Prasad
18. 18
Use Case: Name & Goal
Name: The use case has a unique name. The name
generally includes a verb that describes the action taken
by the actor and a noun that describes either what is
being done or the target of action.
Goal: The goal is a brief description of a successful
outcome of the use case from the perspective of the
primary actor. This acts as a summary of the use case.
Requirements & Use Cases by Manohar Prasad
19. 19
Use Case: Preconditions, Trigger
Preconditions: A precondition is any fact that must be
true before the use case can begin. The precondition is
not tested in the use case but acts as a constraint on its
execution.
Trigger: A trigger is an event that initiates the flow of
events for a use case. The most common trigger is an
action taken by the primary actor.
Requirements & Use Cases by Manohar Prasad
20. Use Case: Flow of Events
The flow of events is the set of steps performed by the
actor and the solution during the execution of the use
case.
Most use case descriptions separate out a basic, primary,
or main success flow that represents the shortest or
simplest successful path that accomplishes the goal of the
actor.
Use cases may also include alternative and exception flows.
Alternative flows describe other paths that may be
followed to allow the actor to successfully achieve the goal
of the use case. Exception flows describe the desired
response by the solution when the goal is unachievable
and the use case cannot be successfully completed.
20Requirements & Use Cases by Manohar Prasad
21. Use Case: Post-conditions
The post-condition is any fact that must be true when the
use case is complete. The post conditions must be true for
all possible flows through the use case, including both the
primary and alternative flows.
The use case may describe separate post-conditions that
are true for successful and unsuccessful executions of the
use case. These can be called guarantees; the success
guarantee describes the post-conditions for success.
21Requirements & Use Cases by Manohar Prasad
22. Qualities of a good Use Case
A good use case:
• Starts with a request from an actor to the system
• Ends with the production of all the answers to the
request.
• Defines the interactions (between system and actors)
related to the function
• Takes into account the actor's point of view, not the
system's
• Focuses on interaction, not internal system activities
• Doesn't describe the GUI in detail
• Has 3-9 steps in the main success scenario
• Is easy to read
22Requirements & Use Cases by Manohar Prasad
23. Styles of Use Cases
1. Actor / Goal list or UML use case diagram
shows all use cases in system
2. Informal use case
3. Formal use case
Let's examine each of these in detail...
23Requirements & Use Cases by Manohar Prasad
24. 1. Actor / Goal List
It can be useful to create a list or table of actors and their
"goals" (use cases they start):
ACTORS USE CASE
Club Member Initiates Submit Promotion Order
Submit Regular Order
Potential Member Initiates Submit New Subscription
Past Member Initiates Submit Subscription Renewal
Membership Services Dept. Initiates Request Membership
Marketing Department Initiates Create New Monthly Promotion
Create New Seasonal Promotion
Create New Subscription Program
Request Promotion Reports
Request Sales Reports
Membership Services System Initiates Send New Subscription Offer
Send Club Promotion
Send Subscription Renewal
24
Requirements & Use Cases by Manohar Prasad
25. Use Case Summary Diagrams
The overall list of your system's use cases can be drawn as
high-level diagrams, with:
actors as stick-men, with their names below
use cases as ellipses with their names below or inside
association indicated by lines, connecting an actor to a
use case in which that actor participates
use cases can be connected to other cases that they
use / rely on
25Requirements & Use Cases by Manohar Prasad
26. Use Case Summary Diagram
26Requirements & Use Cases by Manohar Prasad
27. Use Case Summary Diagram 2
27Requirements & Use Cases by Manohar Prasad
28. Use Case Summary: Diagram 3
28Requirements & Use Cases by Manohar Prasad
29. Example use case
Use Case 12. Buy stocks over the web
Primary Actor: Purchaser (user) Scope: PAF
Level: user goal Precondition: User already has PAF open.
Guarantees: sufficient log information exists that PAF can detect what went wrong.
Success Guarantees: remote web site acknowledged purchase, user's portfolio updated.
Main success scenario:
1. User selects to buy stocks over the web.
2. PAF gets name of web site to use (E*Trade, Schwabb, etc.)
3. PAF opens web connection to the site, retaining control.
4. User browses and buys stock from the web site.
5. PAF intercepts responses from the web site, and updates the user's portfolio.
6. PAF shows the user the new portfolio standing.
Extensions:
2a. User wants a web site PAF does not support:
2a1. System gets new suggestion from user, with option to cancel use case.
29Requirements & Use Cases by Manohar Prasad
30. Use case tables
Formal use cases can also be written as a table:
USE CASE NAME Submit Promotion Order
ACTOR Club Member
DESCRIPTION Describes the process when a club member submits a club promotion order to either
indicate the products they are interested in ordering or declining to order during this
promotion
Normal Course 1. This use is initiated when the club member submits the promotion order to be
proceeded
2. The club member's personal information such as address is validated against what is
currently recorded in member services
3. The promotion order is verified to see if product is being ordered
4. The club member's credit status is checked with Accounts Receivable to make sure no
payments are outstanding
5. For each product being ordered, validate the product number
6. For each product being ordered, check the availability in inventory and record the
ordered information which includes "quantity being ordered" and give each ordered
product a status of "open"
7. Create a Picking Ticket for the promotion order containing all ordered products which
have a status "open"
8. Route the picking ticket to the warehouse
PRECONDITION Use case send club promotion has been processed
POST CONDITION Promotion order has been recorded and the picking ticket has been routed to the
warehouse
ASSUMPTIONS
30Requirements & Use Cases by Manohar Prasad
31. Use case exercises
Consider the case of a video store that wants a kiosk
with intelligent software that can replace human
checkout workers. A customer with an account can
simply use their membership and credit card with a
reader at the kiosk to check out a video.
Come up with 5 use case names for such
software, and draw a UML use case diagram of
these cases and their actors.
Write a formal (complete) use case for the
Customer Checks Out a Movie scenario.
31Requirements & Use Cases by Manohar Prasad
32. How do use cases fit in?
"Hub and spokes" model puts use cases as central to all
requirements
Adolph's "Discovering" Requirements in New Territory
What do you think?
use cases help us
discover functional
requirements in our
system and
document them
Do use cases affect
UI design decisions?
32Requirements & Use Cases by Manohar Prasad
33. Pros and Cons of Use Cases
Pros:
• They hold functional requirements in an easy-to-read text
format
• They make a good framework for non-functional
requirements & scheduling
Cons:
• They show only the functional requirements
• Design is not done only in use case units
33Requirements & Use Cases by Manohar Prasad
34. 4. Describe failure-handling
Recoverable extensions rejoin main course
example: low credit + valued customer -> accept
example: low stock + reduce quantity -> accept
Non-recoverable extensions fail directly
not a valued customer -> decline order
out of stock -> decline order
Each scenario goes from trigger to completion
"extensions" are merely a writing shorthand
can write "if" statements
can write each scenario from beginning to end
Exercise: Let's do this for the
Customer Returns a Movie scenario.
34Requirements & Use Cases by Manohar Prasad
35. 3. List the failure extensions
Usually, almost every step can fail
example: customer has bad credit
example: item is not in stock in desired quantity
Note the failure condition separately, after the
main success scenario
Exercise: Let's do this for the
Customer Returns a Movie scenario.
35Requirements & Use Cases by Manohar Prasad
36. 2. Write the success scenario
Main success scenario is the preferred "happy" case
example: customer=good credit and item=in stock
easiest to read and understand
everything else is a complication on this
Capture each actor's intent and responsibility, from
trigger to goal delivery
say what information passes between them
number each line
Exercise: Let's do this for the
Customer Returns a Movie scenario.
36Requirements & Use Cases by Manohar Prasad
37. 1. Identify actors and goals
Ask oneself the following questions:
what computers, subsystems and people will drive our
system? (actors)
examples: Customer, Clerk, Corporate Mainframe
what does each actor need our system to do?
each need may show up as a trigger to a use case
result: a list of use cases, a sketch of the system
short, fairly complete list of usable system function
can now draw UML use case diagram for reference
37
Requirements & Use Cases by Manohar
Prasad
38. One method to do use cases
Now that we know the syntax for doing use cases,
what 4 steps does Cockburn recommend
when actually brainstorming and writing our
use cases?
1. identify actors and their goals
2. write the main success scenario
3. identify and list possible failure extensions
4. describe how the system handles each failure
Let's look at each step in detail...
38
Requirements & Use Cases by Manohar
Prasad
39. Identify actors/goals example
Exercise:
Together, let's identify some major actors and their
goals for software for a video store kiosk system.
The software can be used for looking up movies and
actors by keywords, as well as usable to check out
movies from the kiosk to known customers, without
a cashier present.
A customer can check out up to 3 movies at a time,
for up to 5 days each.
If a movie is returned late, late fees can be paid at
the time of return or time of next checkout.
39
Requirements & Use Cases by Manohar
Prasad