14th slide set of CECS 542
Non-functional requirements, namely the subcategories of quality requirements, process requirements, and system constraints
Complete course: http://foss2serve.org/index.php/Requirements_Engineering,_CSU_Long_Beach,_Penzenstadler
Requirements Engineering - Scaling RE & Requirements RefinementBirgit Penzenstadler
12th slide set of CECS 542
How to scale requirements engineering for different project settings
How to decompose and refine requirements for subsystems
Complete course available at http://foss2serve.org/index.php/Requirements_Engineering,_CSU_Long_Beach,_Penzenstadler
15th slide set of CECS 542
Quality models for software and for documentation
Complete course: http://foss2serve.org/index.php/(Re-)Engineering_a_system_vision_(Activity)
14th slide set of CECS 542
Non-functional requirements, namely the subcategories of quality requirements, process requirements, and system constraints
Complete course: http://foss2serve.org/index.php/Requirements_Engineering,_CSU_Long_Beach,_Penzenstadler
Requirements Engineering - Scaling RE & Requirements RefinementBirgit Penzenstadler
12th slide set of CECS 542
How to scale requirements engineering for different project settings
How to decompose and refine requirements for subsystems
Complete course available at http://foss2serve.org/index.php/Requirements_Engineering,_CSU_Long_Beach,_Penzenstadler
15th slide set of CECS 542
Quality models for software and for documentation
Complete course: http://foss2serve.org/index.php/(Re-)Engineering_a_system_vision_(Activity)
13th slide set of CECS 542
Overview of requirements engineering tools
Entire course: http://foss2serve.org/index.php/Requirements_Engineering,_CSU_Long_Beach,_Penzenstadler
17th slide set of CECS 542
Requirements management, specifically the topics of
Change management and
Risk management
Complete course: http://foss2serve.org/index.php/Requirements_Engineering,_CSU_Long_Beach,_Penzenstadler
Requirements Engineering - Present and Future Hot Research TopicsBirgit Penzenstadler
19th slide set of CECS 542
An overview of current and future research topics in the area of requirements engineering
An exploration of the two seminal papers on research roadmaps for requirements engineering:
First Nuseibeh and Easterbrook from 2000,
Then the 10 year later follow-up paper by Cheng and Atlee
Complete course: http://foss2serve.org/index.php/Requirements_Engineering,_CSU_Long_Beach,_Penzenstadler
An introduction to software engineering, based on the first chapter of "A (Partial) Introduction to Software Engineering
Practices and Methods" By Laurie Williams
Software life cycle model: The descriptive and diagrammatic representation of the software life cycle
It represent all the activities performed on software product from the inception to retirement
It also depicts the order in which these activities are to be undertaken
More than one activity can be carried out in a single phase
The primary advantage of adhering to a life cycle model is that it encourages development of software in a systematic and disciplined manner
When a program is developed by a single programmer ,he has the freedom to decide the exact steps through which he will develop the program
Iterative Linear Sequential Model
This is for all those who want to explore the business analyst career path and are curious to know what a business analyst does, the role and importance in organization, why a business analyst is needed and how they can develop their skills to become a great business analyst
The Business Analyst Roadmap, How a Business Analyst learn and prepare for his interview and career.
Presentation is created on behalf of BETA Business Analyst team --> http://beta-analyst.com/
presentation contains the most important part of the software development engineering which is Requirement Analysis and Specification.
Take a look may be it is helpfull for you.
Thank you
In systems engineering and software engineering, requirements analysis encompasses those tasks that go into determining the needs or conditions to meet for a new or altered product or project, taking account of the possibly conflicting requirements of the various stakeholders, analyzing, documenting, validating and managing software or system requirements.
20th and last slide set of CECS 542
Recap of the 2nd half of the semester for preparing for the final
Complete course: http://foss2serve.org/index.php/Requirements_Engineering,_CSU_Long_Beach,_Penzenstadler
Software engineering is a detailed study of engineering to the design, development and maintenance of software. Software engineering was introduced to address the issues of low-quality software projects.
13th slide set of CECS 542
Overview of requirements engineering tools
Entire course: http://foss2serve.org/index.php/Requirements_Engineering,_CSU_Long_Beach,_Penzenstadler
17th slide set of CECS 542
Requirements management, specifically the topics of
Change management and
Risk management
Complete course: http://foss2serve.org/index.php/Requirements_Engineering,_CSU_Long_Beach,_Penzenstadler
Requirements Engineering - Present and Future Hot Research TopicsBirgit Penzenstadler
19th slide set of CECS 542
An overview of current and future research topics in the area of requirements engineering
An exploration of the two seminal papers on research roadmaps for requirements engineering:
First Nuseibeh and Easterbrook from 2000,
Then the 10 year later follow-up paper by Cheng and Atlee
Complete course: http://foss2serve.org/index.php/Requirements_Engineering,_CSU_Long_Beach,_Penzenstadler
An introduction to software engineering, based on the first chapter of "A (Partial) Introduction to Software Engineering
Practices and Methods" By Laurie Williams
Software life cycle model: The descriptive and diagrammatic representation of the software life cycle
It represent all the activities performed on software product from the inception to retirement
It also depicts the order in which these activities are to be undertaken
More than one activity can be carried out in a single phase
The primary advantage of adhering to a life cycle model is that it encourages development of software in a systematic and disciplined manner
When a program is developed by a single programmer ,he has the freedom to decide the exact steps through which he will develop the program
Iterative Linear Sequential Model
This is for all those who want to explore the business analyst career path and are curious to know what a business analyst does, the role and importance in organization, why a business analyst is needed and how they can develop their skills to become a great business analyst
The Business Analyst Roadmap, How a Business Analyst learn and prepare for his interview and career.
Presentation is created on behalf of BETA Business Analyst team --> http://beta-analyst.com/
presentation contains the most important part of the software development engineering which is Requirement Analysis and Specification.
Take a look may be it is helpfull for you.
Thank you
In systems engineering and software engineering, requirements analysis encompasses those tasks that go into determining the needs or conditions to meet for a new or altered product or project, taking account of the possibly conflicting requirements of the various stakeholders, analyzing, documenting, validating and managing software or system requirements.
20th and last slide set of CECS 542
Recap of the 2nd half of the semester for preparing for the final
Complete course: http://foss2serve.org/index.php/Requirements_Engineering,_CSU_Long_Beach,_Penzenstadler
Software engineering is a detailed study of engineering to the design, development and maintenance of software. Software engineering was introduced to address the issues of low-quality software projects.
This ppt covers the following topics:
Introduction
Data design
Software architectural styles
Architectural design process
Assessing alternative architectural designs
Thus it covers Architectural Design
16th slide set of CECS 542
Quality assurance for requirements documentation
Complete course: http://foss2serve.org/index.php/Requirements_Engineering,_CSU_Long_Beach,_Penzenstadler
Performance evaluation of a multi-core system using Systems development meth...Yoshifumi Sakamoto
I propose to apply Systems development method utilizing Reverse modeling and Model-based Simulation(SRMS), in order to solve the issues of derivational development. Derivational development is a development method for developing derived products based on products already been released. Many organizations developing embedded system have been applying derivational development to improve development efficiency, time-to-market, and product quality.
However, applying derivational development to large-scale embedded systems in a traditional way to performanec requirements of higher functionality is of high risk. In addition, as requirements of embedded systems for dependability are extremely high, the dependability of development process and safety of the product must be proven by evidence. Therefore, there is a possibility to significantly inhibit the evidence of dependability on embedded systems by continuing derivational development over many years. We apply SRMS in order to solve these issues.
In this presentation, I propose a methodology to solve issues of derivational development by applying SRMS to an SoC Equipped Multi Function Peripheral/Printer. Performance evaluation and energy consumption estimation of SoC are performed in the early stages of the SoC development. Estimating the performace and the energy consumption by a high level of abstraction model-based simulation. Because at the early stages of SoC development, modeling with a high level of abstraction is required for both the system architecture of the SoC and the behavior of the System.
The proposed method is applied for an actual embedded system in an MFP - Multi Function Peripheral/Printer. Proposed method SRMS is promising to solve the issues of derivational developmnrt in the embedded system development.
Third AssignmentDescribe in 100 – 200 words an application with .docxrandymartin91030
Third Assignment
Describe in 100 – 200 words an application with which you are familiar. This should be an application with which other students and the course instructor are likely to be familiar. An example would be Microsoft Word. Then, select one of the architectural design styles given in the presentation on Architectural Design. Explain why this style is appropriate for the application you described. Then apply this style to the application and explain the result in enough detail that your fellow students are likely to understand.
Organization of your submission
Third Assignment
Your name
Submission Date
Application Description
Style you have selected
Why this style is appropriate for this application
The application’s architecture using this style
Explanation of this architecture (show how some common tasks for this application might be performed using this architecture)
Grading Rubric
Criterion
Points
Application description is well-organized
5
Style choice is one of the styles described
2
Style choice is effectively justified
8
Presented architecture uses the selected style
3
Presented architecture is complete
4
Architecture is described clearly
8
Chapter 7:
Design: Architecture and Methodology
1
Design Topics Covered
Architectural vs. detailed design
“Common” architectural styles, tactics, and reference architectures
Basic techniques for detailed design
Basic issues with user-interface design
2
Design
Starts mostly from/with requirements (evolving mostly from functionalities and other non-functional characteristics).
How is the software solution going to be structured?
What are the main components—(functional comp)?
Often directly from requirements’ functionalities
(use cases).
How are these components related?
Possibly re-organize the components (composition/decomposition).
Two main levels of design:
Architectural (high level)
Detailed design
How should we depict design—notation/language?
3
Relationship between Architecture and Design
Detailed Design
Comes from
Requirements &
Architecture
4
Software Architecture
Structure(s) of the solution, comprising:
Major software elements
Their externally visible properties
Relationships among elements
Every software system has an architecture.
May have multiple structures!
Multiple ways of organizing elements, depending on the perspective
External properties of components (and modules)
Component (module) interfaces
Component (module) interactions, rather than internals of components and modules
5
Views and Viewpoints
View – representation of a system structure
4+1 views (by Krutchen)
Logical (OO decomposition – key abstractions)
Process (run-time, concurrency/distribution of functions)
Subsystem decomposition
Physical architecture
+1: use cases
Other classification (Bass, Clements, Kazman)
Module
Run-time
Allocation (mapping to development environment)
Different views for different people
6
Architectural Styles/Patterns
Pipes a.
BECC Closing Plenary: EmPowering Storytelling with Interaction.
This talk was given by me at BECC 2023 in Sacramento in a session moderated by Beth Karlin.
“I’ve learned that people will forget what you said, people will forget what you did, but people will never forget how you made them feel.” Maya Angelou
The trek towards sustainability - truth, tale, or transition?Birgit Penzenstadler
This is the keynote given at the European Conference of Software Architecture, ECSA 2023, in Istanbul, Turkey. You may have heard about sustainability and the Sustainable Development Goals and the Global Reporting Initiative that now requires bigger companies to adjust their reporting in order to increase transparency. At the same time, you may have a funky feeling that there’s quite a bit of hot air and greenwashing going on around there. So how do we truly transition towards more sustainability? Why may we also want to think about more resilience? And what inner transition is required to make this big outer shift? In this talk, I give a brief (necessarily incomplete) overview of the last decade of sustainability research in and outside of software engineering and sketch a vision of what’s to come if we truly embrace a transition, and what may happen if we don’t.
Equality and equity - navigating the gender imbalance in informaticsBirgit Penzenstadler
Equity refers to fairness or justice in the way people are treated, and especially freedom from bias or favoritism, as in “governed according to the principle of equity.” Equality refers to the quality or state of having the same rights and opportunities, as in “women’s struggle for equality.” Women are underrepresented in Informatics at all levels, from undergraduate and graduate studies to participation and leadership in academia and industry. The main aim and objective of EUGAIN is to improve gender balance in Informatics at all levels through the creation of a European network of colleagues working on the forefront of the efforts for gender balance in Informatics in their countries and research communities.
Gender is most talked about in Sweden.
There are other dimensions, so I open it up a bit because the most vulnerable population is in the intersectionality.
We talk about recruitment and retention as well as various tools and practices to support this, and the big challenges on the way.
I'm still learning on this path, and here I share what I have learned so far.
Keynote at EclipseCon 2023: We have made it through a couple of intense years, with physical and mental health challenges. We know that we embed the values we hold into the systems we design, and these systems happen to run our world. Consequently, as software engineers and researchers we carry a special impact on society and the world at large.
Under stress we tend to disconnect from our values - e.g., when I am really stressed, I may have a harder time being kind.
That means taking care of our wellbeing and resilience not only ensures that we don’t burn out or bug out, but also that we develop better and more adequate systems to support a sustainable lifestyle.
This presentation combines research results from my sustainability over the past decade plus more recent research from the past 3 years in wellbeing and resilience, both of which we need to transition to a sustainable human lifestyle for the future.
Requirements for Sustainability: Imagining the sustainable societyBirgit Penzenstadler
Lecture on Requirements for Sustainability at the
ICT4S summer school at the Lorentz Center in Leiden, Netherlands (lorentzcenter.nl)
This summer school belongs to the International Conference Series on Information and Communication Technology for Sustainability: http://www.ict4s.org/
18th slide set of CECS 542
How to put everything from this course together and make use of it.
Complete course: http://foss2serve.org/index.php/Requirements_Engineering,_CSU_Long_Beach,_Penzenstadler
Innovating Inference - Remote Triggering of Large Language Models on HPC Clus...Globus
Large Language Models (LLMs) are currently the center of attention in the tech world, particularly for their potential to advance research. In this presentation, we'll explore a straightforward and effective method for quickly initiating inference runs on supercomputers using the vLLM tool with Globus Compute, specifically on the Polaris system at ALCF. We'll begin by briefly discussing the popularity and applications of LLMs in various fields. Following this, we will introduce the vLLM tool, and explain how it integrates with Globus Compute to efficiently manage LLM operations on Polaris. Attendees will learn the practical aspects of setting up and remotely triggering LLMs from local machines, focusing on ease of use and efficiency. This talk is ideal for researchers and practitioners looking to leverage the power of LLMs in their work, offering a clear guide to harnessing supercomputing resources for quick and effective LLM inference.
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.
Mobile App Development Company In Noida | Drona InfotechDrona Infotech
Looking for a reliable mobile app development company in Noida? Look no further than Drona Infotech. We specialize in creating customized apps for your business needs.
Visit Us For : https://www.dronainfotech.com/mobile-application-development/
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.
Unleash Unlimited Potential with One-Time Purchase
BoxLang is more than just a language; it's a community. By choosing a Visionary License, you're not just investing in your success, you're actively contributing to the ongoing development and support of BoxLang.
Globus Connect Server Deep Dive - GlobusWorld 2024Globus
We explore the Globus Connect Server (GCS) architecture and experiment with advanced configuration options and use cases. This content is targeted at system administrators who are familiar with GCS and currently operate—or are planning to operate—broader deployments at their institution.
We describe the deployment and use of Globus Compute for remote computation. This content is aimed at researchers who wish to compute on remote resources using a unified programming interface, as well as system administrators who will deploy and operate Globus Compute services on their research computing infrastructure.
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).
Globus Compute wth IRI Workflows - GlobusWorld 2024Globus
As part of the DOE Integrated Research Infrastructure (IRI) program, NERSC at Lawrence Berkeley National Lab and ALCF at Argonne National Lab are working closely with General Atomics on accelerating the computing requirements of the DIII-D experiment. As part of the work the team is investigating ways to speedup the time to solution for many different parts of the DIII-D workflow including how they run jobs on HPC systems. One of these routes is looking at Globus Compute as a way to replace the current method for managing tasks and we describe a brief proof of concept showing how Globus Compute could help to schedule jobs and be a tool to connect compute at different facilities.
Providing Globus Services to Users of JASMIN for Environmental Data AnalysisGlobus
JASMIN is the UK’s high-performance data analysis platform for environmental science, operated by STFC on behalf of the UK Natural Environment Research Council (NERC). In addition to its role in hosting the CEDA Archive (NERC’s long-term repository for climate, atmospheric science & Earth observation data in the UK), JASMIN provides a collaborative platform to a community of around 2,000 scientists in the UK and beyond, providing nearly 400 environmental science projects with working space, compute resources and tools to facilitate their work. High-performance data transfer into and out of JASMIN has always been a key feature, with many scientists bringing model outputs from supercomputers elsewhere in the UK, to analyse against observational or other model data in the CEDA Archive. A growing number of JASMIN users are now realising the benefits of using the Globus service to provide reliable and efficient data movement and other tasks in this and other contexts. Further use cases involve long-distance (intercontinental) transfers to and from JASMIN, and collecting results from a mobile atmospheric radar system, pushing data to JASMIN via a lightweight Globus deployment. We provide details of how Globus fits into our current infrastructure, our experience of the recent migration to GCSv5.4, and of our interest in developing use of the wider ecosystem of Globus services for the benefit of our user community.
AI Genie Review: World’s First Open AI WordPress Website CreatorGoogle
AI Genie Review: World’s First Open AI WordPress Website Creator
👉👉 Click Here To Get More Info 👇👇
https://sumonreview.com/ai-genie-review
AI Genie Review: Key Features
✅Creates Limitless Real-Time Unique Content, auto-publishing Posts, Pages & Images directly from Chat GPT & Open AI on WordPress in any Niche
✅First & Only Google Bard Approved Software That Publishes 100% Original, SEO Friendly Content using Open AI
✅Publish Automated Posts and Pages using AI Genie directly on Your website
✅50 DFY Websites Included Without Adding Any Images, Content Or Doing Anything Yourself
✅Integrated Chat GPT Bot gives Instant Answers on Your Website to Visitors
✅Just Enter the title, and your Content for Pages and Posts will be ready on your website
✅Automatically insert visually appealing images into posts based on keywords and titles.
✅Choose the temperature of the content and control its randomness.
✅Control the length of the content to be generated.
✅Never Worry About Paying Huge Money Monthly To Top Content Creation Platforms
✅100% Easy-to-Use, Newbie-Friendly Technology
✅30-Days Money-Back Guarantee
See My Other Reviews Article:
(1) TubeTrivia AI Review: https://sumonreview.com/tubetrivia-ai-review
(2) SocioWave Review: https://sumonreview.com/sociowave-review
(3) AI Partner & Profit Review: https://sumonreview.com/ai-partner-profit-review
(4) AI Ebook Suite Review: https://sumonreview.com/ai-ebook-suite-review
#AIGenieApp #AIGenieBonus #AIGenieBonuses #AIGenieDemo #AIGenieDownload #AIGenieLegit #AIGenieLiveDemo #AIGenieOTO #AIGeniePreview #AIGenieReview #AIGenieReviewandBonus #AIGenieScamorLegit #AIGenieSoftware #AIGenieUpgrades #AIGenieUpsells #HowDoesAlGenie #HowtoBuyAIGenie #HowtoMakeMoneywithAIGenie #MakeMoneyOnline #MakeMoneywithAIGenie
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
Utilocate offers a comprehensive solution for locate ticket management by automating and streamlining the entire process. By integrating with Geospatial Information Systems (GIS), it provides accurate mapping and visualization of utility locations, enhancing decision-making and reducing the risk of errors. The system's advanced data analytics tools help identify trends, predict potential issues, and optimize resource allocation, making the locate ticket management process smarter and more efficient. Additionally, automated ticket management ensures consistency and reduces human error, while real-time notifications keep all relevant personnel informed and ready to respond promptly.
The system's ability to streamline workflows and automate ticket routing significantly reduces the time taken to process each ticket, making the process faster and more efficient. Mobile access allows field technicians to update ticket information on the go, ensuring that the latest information is always available and accelerating the locate process. Overall, Utilocate not only enhances the efficiency and accuracy of locate ticket management but also improves safety by minimizing the risk of utility damage through precise and timely locates.
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."
Atelier - Innover avec l’IA Générative et les graphes de connaissancesNeo4j
Atelier - Innover avec l’IA Générative et les graphes de connaissances
Allez au-delà du battage médiatique autour de l’IA et découvrez des techniques pratiques pour utiliser l’IA de manière responsable à travers les données de votre organisation. Explorez comment utiliser les graphes de connaissances pour augmenter la précision, la transparence et la capacité d’explication dans les systèmes d’IA générative. Vous partirez avec une expérience pratique combinant les relations entre les données et les LLM pour apporter du contexte spécifique à votre domaine et améliorer votre raisonnement.
Amenez votre ordinateur portable et nous vous guiderons sur la mise en place de votre propre pile d’IA générative, en vous fournissant des exemples pratiques et codés pour démarrer en quelques minutes.
3. Usage Model
• Def.: A usage model describes the
system behavior from the point of
view of the user („Black box“) by
modeling interac=on sequences.
• It specifies the use cases
(from the system vision)
• Why? Understanding of intended
uses by means of the system.
• Nota=ons:
– Use case overview diagram
– Structured text (templates)
– UML ac=vity diagrams
– Message Sequence Charts
Dr. Birgit Penzenstadler 3
Context Layer
System Layer
Requirements Layer
Stakeholder Model Objectives
& Goals
Constraints
& Rules
!
!
!
!
!
Data Model
E
A
A
A
E
System Vision
Functional
Hierarchy
Architecture Overview
System
Function Model
Fun 1
Fun 2
Component Model
C C
Data Model
E
A
A
A
E
Behaviour Model
Business Case
Deployment Requirements
System Constraints
Domain Model
Service ModelUsage Model
Quality Requirements
Risk List
Project Scope
Process Requirements
Glossary
Glossary
Glossary
7. Elabora=on of a Usage Model
• Deducing the Use Cases
– Iden=fica=on of Use Case by
business processes
– Analysis of business processes
• Task distribu=on to actors
• Iden=fica=on of usage func=ons
• Defini=on of the role of the system, e.g.:
– Passive support (data administra=on),
– Ac=ve support (task performance)
– Informal start: What are the system features?
• Stepwise descrip=on and refinement of the scenarios and their interac=on
– Focus on analysis and modeling of
• Informa=on flow (for later data modeling)
• Interac=on and control flow at the system border
7
Usage
Model
Business Processes
... ... ...
User System
External
Systems
Stake
holder
10. Rela=on: Use Cases and Scenarios
Dr. Birgit Penzenstadler 10
Use Case
Scenario
(1) (2)
• For each „bubble“ in the overview diagram:
• Use Cases summarize a set of scenarios to a
specific usage of the system.
– Use Case:
Task, objec=ve, causal rela=on (pre- and
post-condi=ons)
– Scenario:
Sequence of Events (steps, events,
interac=on)
Itera&ve Elabora&on
(compare to refinement and abstrac=on of
goals in the earlier lecture)
(1) Cluster scenarios to tasks
(2) Elicit task-specific scenarios,
analyse and walk through them
14. • Use Case: <number> <the name should be the goal as a short ac=ve verb phrase>
• CHARACTERISTIC INFORMATION
– Goal in Context: <a longer statement of the goal, if needed>
– Scope: <what system is being considered black-box under design>
– Level: <one of: Summary, Primary task, Subfunc=on>
– Precondi=ons: <what we expect is already the state of the world>
– Success End Condi=on: <the state of the world upon successful comple=on>
– Failed End Condi=on: <the state of the world if goal abandoned>
– Primary Actor: <a role name for the primary actor, or descrip=on>
– Trigger: <the ac=on upon the system that starts the use case, may be =me event>
• MAIN SUCCESS SCENARIO
– <put here the steps of the scenario from trigger to goal delivery, and any cleanup aner>
– <step #> <ac=on descrip=on>
• EXTENSIONS
– <put here there extensions, one at a =me, each refering to the step of the main
scenario>
– <step altered> <condi=on> : <ac=on or sub.use case>
– <step altered> <condi=on> : <ac=on or sub.use case>
• SUB-VARIATIONS
– <put here the sub-varia=ons that will cause eventual bifurca=on in the scenario>
– <step or varia=on # > <list of sub-varia=ons>
– <step or varia=on # > <list of sub-varia=ons> Dr. Birgit Penzenstadler 14
1 of 2
15. • RELATED INFORMATION (op=onal)
– Priority: <how cri=cal to your system / organiza=on>
– Performance Target:
<the amount of =me this use case should take>
– Frequency: <how onen it is expected to happen>
– Superordinate Use Case:
<op=onal, name of use case that includes this one>
– Subordinate Use Cases:
<op=onal, depending on tools, links to sub use cases>
– Channel to primary actor:
<e.g. interac=ve, sta=c files, database>
– Secondary Actors:
<list of other systems needed to accomplish use case>
– Channel to Secondary Actors:
<e.g. interac=ve, sta=c, file, database, =meout>
• OPEN ISSUES (op=onal)
– <list of issues about this use cases awai=ng decisions>
• SCHEDULE
– Due Date: <date or release of deployment>
2 of 2
Dr. Birgit Penzenstadler 15
16. • Use Case: 1 withdraw money
• CHARACTERISTIC INFORMATION
– Goal in Context: user withdraws money from the ATM
– Scope: ATM
– Level: Primary task
– Precondi=ons: user has an ATM card and has access to ATM
– Success End Condi=on: user gets money
– Failed End Condi=on: user doesn’t get money
– Primary Actor: customer (= user)
– Trigger: ATM card entered by user
• MAIN SUCCESS SCENARIO
1. User enters card
2. System prompts for PIN
3. User enters PIN
4. System prompts op=ons for withdrawal / transfer / deposit money
5. User selects withdraw
6. System prompts for amount
7. User enters amount
8. System returns money
• EXTENSIONS
– 5. condi&on selec=on of different account: ac&on Withdraw from different account
– <step altered> <condi=on> : <ac=on or sub.use case>
– <step altered> <condi=on> : <ac=on or sub.use case>
• SUB-VARIATIONS
– 4. condi&on user entered wrong PIN: ac&on system displays error message
– 8. not enough money: system displays error message
– <step or varia=on # > <list of sub-varia=ons>
• RELATED INFORMATION (op=onal)
– Priority: cri=cal
– Performance Target: one minute
– Frequency: very onen (depends on loca=on of ATM)
– Superordinate Use Case: <op=onal, name of use case that includes this one>
– Subordinate Use Cases: <op=onal, depending on tools, links to sub.use cases>
– Channel to primary actor: interac=ve
– Secondary Actors: <list of other systems needed to accomplish use case>
– Channel to Secondary Actors: <e.g. interac=ve, sta=c, file, database, =meout>
• OPEN ISSUES (op=onal)
– <list of issues about this use cases awai=ng decisions>
• SCHEDULE
– Due Date: May 2014
Example
Use Case
ATM
Dr. Birgit Penzenstadler 16
21. Sequence Diagram
Dr. Birgit Penzenstadler 21
the getFigureAt() method call’s return is shown labeled with the name of the object
that was returned. A common practice, as we have done in Figure A1.7, is to leave
off the return arrow when a void method has been called, since it clutters up the di-
850 APPENDIX 1 AN INTRODUCTION TO UML
:MouseListener :Drawing :GraphicsaFigure:Figure
.setColor(red)
.highlight(graphics)
.getFigureAt(point)
.mouseClicked(point)
aFigure
.drawRect (x,y,w,h)
.drawString(s)
FIGURE A1.7
A sample
sequence
diagram