02291: System Integration

Size: px
Start display at page:

Download "02291: System Integration"

Transcription

1 02291: System Integration Week 2 Hubert Baumeister huba@dtu.dk DTU Compute Technical University of Denmark Spring 2018

2 Contents Requirements Model Domain model Use Case and Use Case Diagram

3 Activities in Software Developement Understand and document what kind of the software the customer wants Requirements Analysis external behaviour: what not how Determine how the software is to be built Design Build the software Implementation Validate that the software solves the customers problem Testing Verification Evaluation: e.g. User friendlieness

4 User Requirements vs System Requirements 1. User Requirements Used for business decision: go / no-go Used to solicit offers from software houses Done by the customer 2. System Requirements Define how the system is to be built Foundation for planning the project and cost estimations Done by the software house

5 Example of user requirements vs system requirements Ian Sommerville, Software Engineering - 9

6 Travel Agency Example: User requirements The travel agency TravelGood comes to you as software developers with the following proposal for a software project: Problem Description TravelGood wants to offer a trip-planning and booking application to its customers. The application should allow the customer to plan trips consisting of flights and hotels. First the customer should be able to assemble the trip, before he then books all the flights and hotels in on step. The user should be able to plan several trips. Furthermore it should be possible to cancel already booked trips.

7 Types of Requirements Functional Requirements Describe what the system should do The user should be able to plan and book a trip Non-functional Requirements Everything which is not functionality Where should the software run (e.g. operating system, software environment,... ) What kind of UI the user prefers (e.g. stand alone application, Web application, command line interface, graphical interface,... )

8 Categories of non-functional requirements Ian Sommerville, Software Engineering - 9

9 Characteristics of good requirements Testable Test whether the system satisfies the requirements or not Measurable Makes non-functional requirements testable

10 Example of measurable requirements The system should be easy to use by medical staff and should be organised in such a way that user errors are minimised

11 Example of measurable requirements The system should be easy to use by medical staff and should be organised in such a way that user errors are minimised Better: Medical staff shall be able to use all the system functions after four hours of training. After this training, the average number of errors made by experienced users shall not exceed two per hour of system use.

12 Possible measures Ian Sommerville, Software Engineering - 9

13 Requirements engineering process Ian Sommerville, Software Engineering - 9

14 Requirements Engineering Process: Techniques Elicitation Interviews Domain Model Use Cases / User Stories Specification Domain Model Use Cases / User Stories Validation Criteria: Validity, Consistent, Complete, Realistic,... Techniques: Inspection, Test-case generation, Prototyping

15 Requirements documentation How to document requirements 1 Use cases for functional requirements 2 Domain model (class diagram, glossary,... ) to explain the domain 3 Non-functional requirements Requirements documentation are important to record the requirements to agree upon requirements with the customer

16 Requirements issues As a developer:refrain from inventing requirements Problem descriptions can be very vague Discuss with the customer Customer knows what he does not want Requirements can change e.g. after the customer has seen a first version of the software the business situation has changed (cf. finance crises)

17 Contents Requirements Model Domain model Use Case and Use Case Diagram

18 Domain model Capture the customer s knowledge of the problem domain Common language Necessary to define the concepts used Glossary Relationships between concepts: class diagram business processes: UML Activity Diagrams

19 Glossary List of terms with explanations Terms can be nouns (e.g. those mentioned in a problem description) but also verbs or adjectives e.t.c. Warning Capture only knowledge relevant for the application Don t try to capture all possible knowledge

20 Example Part of a glossary for a library application Book A book is a is a conceptual entity in a library. A book is defined by its title, the name of his authors, the publisher and the edition. A library can have several copies of the same book. Copy... A copy is a physical copy of a particular book. For example, the library has three copies of the book Using UML by Perdiate Stevens....

21 Concepts and their relations Class diagrams Usually Classes (for nouns) Associations: for static relationships Generalizations Often without attributes and operations Warning customer knowledge Not be biased by implementation

22 Domain model (terms and their relations)

23 Activity Diagram: Business Processes Ian Sommerville, Software Engineering 9, 2010 Helps finding the requirements of a system Next week more on activity diagrams

24 Contents Requirements Model Domain model Use Case and Use Case Diagram

25 Definition Use Case Introduced by Ivar Jacobson in the early 1990 s Travel Agency Plan Trip Customer Use Case A Use Case is a scenarios describing the interaction of one or several actors with the system serving a common goal. Do something : verb + noun Interaction Anything the actor does with the system System responses Effects visible/important to the customer Don t: How the system works

26 Use Case Different views on the same concept 1. Use case diagrams Graphical notation Overview over actors and use cases 2. Detailed use case description Textuel notation Interaction of the actors with the system: scenarios Follows a use case template

27 Use Case Diagrams Concepts Use case diagram = special type of class diagram

28 Another example of a use case diagram

29 Relations between use cases extend: used to extract variant behaviour include: used to factor common behaviour of use cases UML User Guide, Grady Booch et al Use extend and include sparingly; if in doubt, don t use

30 Generalisation between actors

31 Types of use cases a) Business use cases (kite level use case (from Alistair Cockburn)) b) System use cases / sea level use case / fish level (from Alistair Cockburn) Detailed use cases: lowest level only UML Destilled, Martin Fowler

32 Example Business Use Cases TravelAgency Plan Trip Manage Flights Book Trip Manage Hotels Administrator User Manage Trip Cancel Trip

33 Example System Use Cases Plan trip use cases TravelAgency Search Avaialbe Flights Manage trip use cases TravelAgency Add Flight to Trip Save Trip Search Available Hotels Delete Trip Book Trip User Add Hotel to Trip Delete Hotel from Trip Delete Flight from Trip User Cancel Trip Edit Trip List Trip

34 Don ts of Use case diagrams Use case diagrams don t explain how a use case works, this is part of the detailed use case description Travel Agency Login Select Trip Delete Selected Trip User User Travel Agency Delete Trip «include» «include» Login Select Trip Travel Agency Delete Trip User

35 Use case refinement System boundary is important Deriving requirements of subsystems Example: Mobile Multi-User Dungeon (MUD) Game

36 Use case refinement Decompose the system into subsystems MUD Phone * 1 Game Server Determine use cases for the subsystems GameSever Join Player to Game Phone

37 Travel Agency: detailed use case list available flights name: list available flights description: the user checks for available flights actor: user main scenario: 1. The user provides information about the city to travel to and the arrival and departure dates 2. The system provides a list of available flights with prices and booking number alternative scenario: 1a. The input data is not correct (see below) 2. The sytem notifies the user of that fact and terminates and starts the use case from the beginning 2a. There are no flights matching the users data 3. The use case starts from the beginning note: The input data is correct, if the city exists (e.g. is correctly spelled), the arrival date and the departure date are both dates, the arrival date is before the departure date, arrival date is 2 days in the future, and the departure date is not more then one year in the future

38 Detailed use cases: Template Template to be used in this course for detailed use case descriptions name: The name of the use case description: A short description of the use case actor: One or more actors who interact with the system precondition: Possible assumptions on the system state to enable the use case (optoinal) main scenario: A description of the main interaction between user and system Note: should only explain what the system does from the user s perspective alternative scnearios: Secondary scenarios; fail scenarios (optional) postcondition: What has been achieved after the use case has been executed? (optional) note: Used for everything that does not fit in the above categories

39 How to use pre-conditions name: Delete trip actor: User main scenario: 1. login user 2. select trip 3. delete selected trip alternative scenario: 1. login user fails 2. systems reports that trips cannot be deleted without being logged in

40 How to use pre-conditions name: Delete trip actor: User main scenario: 1. login user 2. select trip 3. delete selected trip alternative scenario: 1. login user fails 2. systems reports that trips cannot be deleted without being logged in Issue: The user has to login each time

41 How to use pre-conditions name: Delete trip actor: User main scenario: 1. login user 2. select trip 3. delete selected trip alternative scenario: 1. login user fails 2. systems reports that trips cannot be deleted without being logged in Issue: The user has to login each time name: Delete trip actor: User precondition: user is logged in main scenario 1. login user 2. select trip 3. delete selected trip Now the user has to be logged in, but does not have to login each time

42 Very Important Use cases in use case diagrams and detailed use cases are the same Names of use cases and actors have to match Include/extends relationship needs to be visible in the detailed use case description

43 Use Case Benefits Technique for capturing the functional requirements of a system Easy to understand Easy to check for completness Use case diagram Use case main vs. alternative scenarios: catch all possible interactions Test Cases (System, User Acceptance and Functional) can be directly derived from the use cases

44 Use Case Limitations Not good for capturing non-interaction based requirements e.g. algorithm or mathematical requirements non-functional requirements (such as platform, performance, timing, or safety-critical aspects) Abstracts away from the GUI Use case theory suggests that UI not be reflected in use cases but GUI mock ups (paper based, powerpoint based, etc.), prototypes may be more useful than abstract functionality

45 Tools Two classes: simple drawing tools and meta-model based modelling tools Drawing tools UMLet (Eclipse plugin Visio (Windows only; available though DTU agreement with Microsoft) Modeling tools Papyrus (htttps:// MagicDraw ( VisualParadigm (academic license file on CampusNet) ( (to be renewed)...

46 Exercise: MUD Game Task: Modelling of a multi-user dungeon game Three parts 1. Requirements: 2 weeks 2. Design: Walking Skeleton : 3 weeks 3. Design validation: Execution of the use cases: 2 weeks Exam Project: 4 weeks

Software Engineering I (02161)

Software Engineering I (02161) Software Engineering I (02161) Week 4 Assoc. Prof. Hubert Baumeister DTU Compute Technical University of Denmark Spring 2018 Contents Requirements Activity Diagrams Domain model Use Cases Requirements

More information

Development Process and Analysis. LTOOD/OOAD - Verified Software Systems 1

Development Process and Analysis. LTOOD/OOAD - Verified Software Systems 1 Development Process and Analysis LTOOD/OOAD - Verified Software Systems 1 Software Crisis Declared in the late 60 s Expressed by delays and failures of major software projects (unreached goals, unpredictable

More information

Software Engineering I (02161)

Software Engineering I (02161) Software Engineering I (02161) Week 1 Assoc. Prof. Hubert Baumeister DTU Compute Technical University of Denmark Spring 2018 Contents Course Introduction Introduction to Software Engineering Practical

More information

Product Requirements Documentation: Use Cases

Product Requirements Documentation: Use Cases Product Documentation: Use Cases Software Engineering and Databases Group Department of Computer Languages and Systems University of Seville November 2013 Learning objectives Know the use cases technique.

More information

Software Engineering Fall 2014

Software Engineering Fall 2014 Software Engineering Fall 2014 (CSC 4350/6350) Mon.- Wed. 5:30 pm 7:15 pm ALC : 107 Rao Casturi 11/05/2014 Student Registration System (SRS) RC University Management Board approved a new Student Registration

More information

Requirements elicitation: Finding the Voice of the Customer

Requirements elicitation: Finding the Voice of the Customer Requirements elicitation: Finding the Voice of the Customer Establishing customer requirements for a software system Identify sources of user requirements on your project Identify different classes of

More information

Essentials of IBM Rational Requirements Composer, v3. Module 4: Creating a use-case model

Essentials of IBM Rational Requirements Composer, v3. Module 4: Creating a use-case model Essentials of IBM Rational Requirements Composer, v3 Module 4: Creating a use-case model Copyright IBM Corporation 2010, 2011 Module overview After completing this module, you should be able to: Explain

More information

Requirements Engineering. Massimo Felici Room 1402, JCMB, KB

Requirements Engineering. Massimo Felici Room 1402, JCMB, KB Requirements Engineering Massimo Felici Room 1402, JCMB, KB 0131 650 5899 mfelici@inf.ed.ac.uk Administration SEOC1 Tutorials start in week 3 SEOC1 Communications: Mailing List: seoc1-students@inf.ed.acuk

More information

Requirements Engineering

Requirements Engineering Dr. Michael Eichberg Software Engineering Department of Computer Science Technische Universität Darmstadt Introduction to Software Engineering Requirements Engineering The following slides are primarily

More information

Requirements Analysis. Overview

Requirements Analysis. Overview Requirements Analysis Overview What is requirement? Classification of requirements Iterative and evolutionary requirements analysis Use Cases Domain models N. Meng, B. Ryder 2 1 Requirements Definition

More information

Requirements Engineering. Andreas Zeller Saarland University

Requirements Engineering. Andreas Zeller Saarland University Requirements Engineering Software Engineering Andreas Zeller Saarland University Communication project initiation requirements gathering Planning estimating scheduling tracking Waterfall Model (1968) Modeling

More information

Object-Oriented Analysis/Design and Use Cases Object Oriented Analysis and Design

Object-Oriented Analysis/Design and Use Cases Object Oriented Analysis and Design Object-Oriented Analysis/Design and Use Cases Object Oriented Analysis and Design Aron Trauring T++ Technical Skills Training Program CUNY Institute for Software Design & Development (CISDD) New York Software

More information

Requirements Engineering Unit 4: Requirements modeling, specification & prioritization

Requirements Engineering Unit 4: Requirements modeling, specification & prioritization Unit 4: Requirements modeling, specification & prioritization Department of Computer Science / Rijksuniversiteit Groningen (RUG) http://www.cs.rug.nl/~liangp/teaching/courses/re2009fall/ 9/29/2009 1 9/29/2009

More information

Information Technology Audit & Cyber Security

Information Technology Audit & Cyber Security Information Technology Audit & Cyber Security Use Cases Systems & Infrastructure Lifecycle Management OBJECTIVES Understand the process used to identify business processes and use cases. Understand the

More information

status Homework 2 posted: https://people.cs.umass.edu/~rjust/courses/2017fall/cs520/hw2.pdf

status Homework 2 posted: https://people.cs.umass.edu/~rjust/courses/2017fall/cs520/hw2.pdf Requirements status Everyone s working hard on projects Project progress meetings: November 9 Tomorrow (Oct 27), 9 AM, you will receive an email for signing up for meeting slots Homework 2 posted: https://people.cs.umass.edu/~rjust/courses/2017fall/cs520/hw2.pdf

More information

Introduction to Software Engineering

Introduction to Software Engineering Introduction to Software Engineering 2. Requirements Collection Mircea F. Lungu Based on a lecture by Oscar Nierstrasz. Roadmap > The Requirements Engineering Process > Functional and non-functional requirements

More information

Use-Case Diagram. Contents. Introduction. 1. Introduction. User-Centred Design (UCD) Users Requirements

Use-Case Diagram. Contents. Introduction. 1. Introduction. User-Centred Design (UCD) Users Requirements Contents Use-Case Diagram MIT, Walailak University by Dr.Wichian Chutimaskul Introduction Business Model using Activity Diagram Domain Analysis using Use-Case Description Documenting Requirements using

More information

REQUIREMENTS ENGINEERING

REQUIREMENTS ENGINEERING 1 REQUIREMENTS ENGINEERING Chapter 4- by Ian Sommerville TOPICS COVERED Functional and non-functional requirements The software requirements document Requirements specification Requirements engineering

More information

Use cases. Paul Jackson. School of Informatics University of Edinburgh

Use cases. Paul Jackson. School of Informatics University of Edinburgh Use cases Paul Jackson School of Informatics University of Edinburgh Use cases An important part of any requirements document for a system is a description of the system s behaviour from the viewpoint

More information

User Stories and Use Cases

User Stories and Use Cases 1/19 User Stories and Use Cases Mikael Svahnberg 1 2017-03-23 1 Mikael.Svahnberg@bth.se 2/19 User Stories User Stories are the currently preferred way in agile of writing requirements. Simpler structure

More information

Requirements Engineering with Use Cases

Requirements Engineering with Use Cases Requirements Engineering with Use Cases Csaba Veres Outline What are use cases? What do they tell us? How can you write them (properly)? What is a use case? A use case specifies the behavior of a system

More information

Babu Madhav Institute of Information Technology, UTU 2017

Babu Madhav Institute of Information Technology, UTU 2017 Five Years Integrated M.Sc. (IT) Semester 3 Question Bank 060010312 CC9 Software Engineering Unit 1 Introduction to Software Engineering and Object-Oriented Concepts 1. What is software? 2. Which documents

More information

Requirements Engineering

Requirements Engineering Requirements Engineering Software Engineering Andreas Zeller Saarland University Requirements Engineering The Real World Requirements Engineering A description of what the system should do (but not how)

More information

Software Engineering I (02161)

Software Engineering I (02161) Software Engineering I (02161) Week 8 Assoc. Prof. Hubert Baumeister Informatics and Mathematical Modelling Technical University of Denmark Spring 2011 c 2011 H. Baumeister (IMM) Software Engineering I

More information

An Introduction to Use Cases

An Introduction to Use Cases An Introduction to Use Cases Geri Schneider and Jason P. Winters Wyyzzk, Inc. Santa Clara, CA 95051 1 Abstract Use cases, also referred to as user stories, enable the functional requirements of a software

More information

Software Processes. Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 4 Slide 1

Software Processes. Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 4 Slide 1 Software Processes Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 4 Slide 1 Objectives To introduce software process models To describe three generic process models and when they may be

More information

CS/IT Secure Software Construction

CS/IT Secure Software Construction CS/IT 328 - Secure Software Construction Chapter 4 UML the Unified Modeling Language Book: Fowler, UML Distilled, chap. 1.. 4 Notation: Notations and Meta-Models a graphical representation of a model,

More information

Software Engineering (CSC 4350/6350) Rao Casturi

Software Engineering (CSC 4350/6350) Rao Casturi Software Engineering (CSC 4350/6350) Rao Casturi Recap UML Introduction Basic UML concepts 2 Basic Notations of UML Requirement Phase Analysis Phase Design Phase Object Design Phase 1. Use Case Diagrams

More information

Requirements Analysis

Requirements Analysis Requirements Analysis Analysis and Design? Analysis emphasizes an investigation of the problem and requirements, rather than a solution. Analysis = requirements analysis + object analysis. Requirement

More information

Lecture 5: Requirements Engineering II. COSI 120b, Principles of Software Engineering

Lecture 5: Requirements Engineering II. COSI 120b, Principles of Software Engineering Lecture 5: Requirements Engineering II COSI 120b, Principles of Software Engineering Your Requirements Customer UI Designer Tester Sales End User Your Requirements What did they look like? How specific

More information

Software Processes. Objectives. Topics covered. The software process. Waterfall model. Generic software process models

Software Processes. Objectives. Topics covered. The software process. Waterfall model. Generic software process models Objectives Software Processes To introduce software process models To describe three generic process models and when they may be used To describe outline process models for requirements engineering, software

More information

Lecture 7. Safety Analysis: Failure Modes and Effect Analysis (FMEA) Functional Hazard Assessment (FHA)

Lecture 7. Safety Analysis: Failure Modes and Effect Analysis (FMEA) Functional Hazard Assessment (FHA) Lecture 7 Safety Analysis: Failure Modes and Effect Analysis (FMEA) Functional Hazard Assessment (FHA) Failure Modes and Effect Analysis FMEA is a well-known inductive safety analysis technique For each

More information

Use cases. Version 2.6 November 2015

Use cases. Version 2.6 November 2015 Use cases Version 2.6 November 2015 Maurizio Morisio, Marco Torchiano, 2014 Requirements Document 1. Purpose and scope 2. The terms used / Glossary 3. The use cases 4. The technology to be used 5. Other

More information

Requirements Use Cases

Requirements Use Cases Requirements Engineering Requirements Use Cases Software Lifecycle Activities Requirements Analysis Software Design Implementation System Engineering Computer Science Department Baylor University Evolution

More information

Software Engineering with Objects and Components. Massimo Felici Room 1402, JCMB, KB

Software Engineering with Objects and Components. Massimo Felici Room 1402, JCMB, KB Software Engineering with Objects and Components Massimo Felici Room 1402, JCMB, KB 0131 650 5899 mfelici@inf.ed.ac.uk Administration SEOC webpage http://www.inf.ed.ac.uk/teaching/courses/seoc/ Course

More information

making money from customer use of kiosk attracting more customers to the store saving money if the kiosk replaces manual operations

making money from customer use of kiosk attracting more customers to the store saving money if the kiosk replaces manual operations Business Requirements Business requirements collected from multiple sources might conflict. For example, consider a kiosk product with embedded software that will be sold to retail stores and used by the

More information

Object-Oriented Modeling: A Roadmap

Object-Oriented Modeling: A Roadmap University of Paderborn Leiden University Object-Oriented Modeling: A Roadmap University of Paderborn Leiden University Software Development: Traditional (?) Approach implementation June 8, 2000 ICSE 2000:

More information

CHAPTER 3 Use Cases. 3. Use Cases

CHAPTER 3 Use Cases. 3. Use Cases CHAPTER 3 Use Cases Introduction When, Why, Where, What Iteratively Developing Use Cases Inception + Scope Definition + Risk Identification + Actors & Use cases + Project Plan Elaboration + Primary & Secondary

More information

CHAPTER 3 Use Cases. 3. Use Cases

CHAPTER 3 Use Cases. 3. Use Cases CHAPTER 3 Use Cases Introduction When, Why, Where, What Iteratively Developing Use Cases Inception + Scope Definition + Risk Identification + Actors & Use cases + Project Plan Elaboration + Primary & Secondary

More information

Scope and Coverage. Learning Outcomes. V1.0 Visuals Handout Page 1. This topic will cover: By the end of this topic, students will be able to:

Scope and Coverage. Learning Outcomes. V1.0 Visuals Handout Page 1. This topic will cover: By the end of this topic, students will be able to: Topic 11: Needs Analysis Needs Analysis Topic 11-11.2 Scope and Coverage This topic will cover: Client and system requirements Investigation/analytical techniques Problems/limitations obe o s with current/new

More information

Requirements Verification and Validation

Requirements Verification and Validation SEG3101 (Fall 2010) Requirements Verification and Validation SE502: Software Requirements Engineering 1 Table of Contents Introduction to Requirements Verification and Validation Requirements Verification

More information

System Goal Modelling using the i* Approach in RESCUE. Centre HCI Design 24th March 2003

System Goal Modelling using the i* Approach in RESCUE. Centre HCI Design 24th March 2003 System Goal Modelling using the i* Approach in RESCUE Centre HCI Design 24th March 2003 Tutorial Timetable A simple timetable Monday 24th March 2003 Am: Pm: Develop Strategic Rationale Models Practice

More information

KF5008 Program Design & Development. Introduction to the Module

KF5008 Program Design & Development. Introduction to the Module KF5008 Program Design & Development Introduction to the Module Why Program Design? Up to now the programs you have written have been quite small even if you don t think so! How big do you think real programs

More information

Requirement Engineering. L3 The requirement study. Change is constant. Communication problem? People are hard to understand!

Requirement Engineering. L3 The requirement study. Change is constant. Communication problem? People are hard to understand! Requirement Engineering L3 The requirement study Fang Chen Requirement are ubiquitous part of our lives Understand the requirement through communication Requirement Creation Communication problem? People

More information

Functional requirements and acceptance testing

Functional requirements and acceptance testing Functional requirements and acceptance testing Lecture 3 Software Engineering TDDC88/TDDC93 autumn 2007 Department of Computer and Information Science Linköping University, Sweden Message from the course

More information

SYSTEM AND SOFTWARE DESIGN USING THE UNIFIED MODELING LANGUAGE (UML)

SYSTEM AND SOFTWARE DESIGN USING THE UNIFIED MODELING LANGUAGE (UML) Michael Weintraub And Frank Tip SYSTEM AND SOFTWARE DESIGN USING THE UNIFIED MODELING LANGUAGE (UML) Thanks go to Martin Schedlbauer and to Andreas Zeller for allowing incorporation of their materials

More information

Software Engineering (CSC 4350/6350) Rao Casturi

Software Engineering (CSC 4350/6350) Rao Casturi Software Engineering (CSC 4350/6350) Rao Casturi Recap What is software engineering? Modeling Problem solving Knowledge acquisition Rational Managing Software development Communication Rational Management

More information

Software Development Methodologies. CSC 440: Software Engineering Slide #1

Software Development Methodologies. CSC 440: Software Engineering Slide #1 Software Development Methodologies CSC 440: Software Engineering Slide #1 Topics 1. The Waterfall Model 2. Agile Software Development 3. The Unified Process 4. Object-Oriented Analysis and Design 5. The

More information

UC Santa Barbara. CS189A - Capstone. Chandra Krintz Department of Computer Science UC Santa Barbara

UC Santa Barbara. CS189A - Capstone. Chandra Krintz Department of Computer Science UC Santa Barbara CS189A - Capstone Chandra Krintz Department of Computer Science http://www.cs.ucsb.edu/~ckrintz/ The software requirements document The official statement of what is required of the system developers Includes

More information

It will also enable you to manage the expectations of your clients or management, as they will know exactly what to expect.

It will also enable you to manage the expectations of your clients or management, as they will know exactly what to expect. Functional Specification / Requirement Document (FSD / FRD) The Functional Specification Document (FSD) in software development is a formal document that describes the functions of the software/system

More information

Chapter 3 Prescriptive Process Models

Chapter 3 Prescriptive Process Models Chapter 3 Prescriptive Process Models - Generic process framework (revisited) - Traditional process models - Specialized process models - The unified process Generic Process Framework Communication Involves

More information

The Use Case Technique: An Overview

The Use Case Technique: An Overview The Use Case Technique: An Overview Sponsored by: Karl Wiegers Principal Consultant, Process Impact www.processimpact.com Sponsor: CEG Save 20% on training* with promo code: MAWEB14 Free BA online training

More information

Conceptual Modeling. Conceptual Modeling. Class diagrams (POS Example) Modeling the Problem Domain

Conceptual Modeling. Conceptual Modeling. Class diagrams (POS Example) Modeling the Problem Domain Conceptual Modeling Modeling the Problem Domain Conceptual Modeling Decompose problem space into comprehensible concepts. Clarify the terminology or vocabulary of the problem domain. Includes concepts,

More information

EE 446 EMBEDDED ARCHITECTURE Embedded System in UML

EE 446 EMBEDDED ARCHITECTURE Embedded System in UML EE 446 EMBEDDED ARCHITECTURE Embedded System in UML Airs Lin UML (UNIFIED MODELING LANGUAGE) 1 What is UML? Created and developed by Grady Booch, Ivar Jacobson, and James Rumbaugh at Rational Software

More information

Process, Models, Methods, Diagrams Software Development Life Cyles. Part - II

Process, Models, Methods, Diagrams Software Development Life Cyles. Part - II Process, Models, Methods, Diagrams Software Development Life Cyles Part - II A bench-mark for measuring the maturity of an organization s software process CMM defines 5 levels of process maturity based

More information

Requirements Engineering Processes. Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 7 Slide 1

Requirements Engineering Processes. Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 7 Slide 1 Requirements Engineering Processes Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 7 Slide 1 Objectives To describe the principal requirements engineering activities and their relationships

More information

Requirements Engineering

Requirements Engineering Requirements Engineering Professor Ray Welland Department of Computing Science University of Glasgow E-mail: ray@dcs.gla.ac.uk The Importance of Requirements Identifying (some) requirements is the starting

More information

Virtual Foundation Business Analyst Course Outline

Virtual Foundation Business Analyst Course Outline Virtual Foundation Business Analyst Course Outline General Description We all know that the validity and accuracy of the requirements can make or break a project, yet often insufficient time and effort

More information

Requirements Knowledge Model. Business. Event. Business. responding. Business. Use Case 1.. Business tracing * * * * Requirement

Requirements Knowledge Model. Business. Event. Business. responding. Business. Use Case 1.. Business tracing * * * * Requirement Requirements Knowledge Model This model provides a language for communicating the knowledge that you discover during requirements-related activities. We present it here as a guide to the information you

More information

Prerequisites It is recommended that the participants have a working knowledge of traditional Business Analysis tasks and techniques.

Prerequisites It is recommended that the participants have a working knowledge of traditional Business Analysis tasks and techniques. BA31 - Unified Modeling Language (UML) for Business Analysts This course will provide Business Analysts with new capabilities to improve their skills with using visual modeling techniques to document requirements.

More information

Chapter 4 Requirements Elicitation

Chapter 4 Requirements Elicitation Object-Oriented Software Engineering Using UML, Patterns, and Java Chapter 4 Requirements Elicitation Outline Today: Motivation: Software Lifecycle Requirements elicitation challenges Problem statement

More information

Software Lifecycle Activities

Software Lifecycle Activities Software Lifecycle Activities Requirements Elicitation Requirements Analysis System Design Object Design Implementation Testing Expressed in Terms Of Implemented Structured By Realized By By Verified By

More information

Software Architecture and Engineering Requirements Elicitation Peter Müller

Software Architecture and Engineering Requirements Elicitation Peter Müller Software Architecture and Engineering Requirements Elicitation Peter Müller Chair of Programming Methodology Spring Semester 2018 2. Requirements Elicitation Main Activities of Software Development 2 Requirements

More information

Conceptual model (Larman)

Conceptual model (Larman) Conceptual model (Larman) Following process as outlined by Larman analysis based on concepts (or objects) not function purpose: to make a model that decomposes the problem and communicates the important

More information

Change is constant. Obstacle to RE: Why requirement study? Limitation of the designers Different knowledge domains Not expertise Ubiquitous nature

Change is constant. Obstacle to RE: Why requirement study? Limitation of the designers Different knowledge domains Not expertise Ubiquitous nature Design the right thing! Fang Chen Change is constant Requirement Design Creation What makes the change? Human nature Society Organization i Competitors Human nature: never satisfy ) 4 Why requirement study?

More information

Requirements Analysis and Design Definition. Chapter Study Group Learning Materials

Requirements Analysis and Design Definition. Chapter Study Group Learning Materials Requirements Analysis and Design Definition Chapter Study Group Learning Materials 2015, International Institute of Business Analysis (IIBA ). Permission is granted to IIBA Chapters to use and modify this

More information

version NDIA CMMI Conf 3.5 SE Tutorial RE - 1

version NDIA CMMI Conf 3.5 SE Tutorial RE - 1 Requirements Engineering SE Tutorial RE - 1 What Are Requirements? Customer s needs, expectations, and measures of effectiveness Items that are necessary, needed, or demanded Implicit or explicit criteria

More information

Requirements Engineering

Requirements Engineering Requirements Engineering Software Engineering Theory Kristian Sandahl / Lena Buffoni Department of Computer and Information Science What is a software requirement? 2 Intuitively: A property or behaviour

More information

Course Organization. Lecture 1/Part 1

Course Organization. Lecture 1/Part 1 Course Organization Lecture 1/Part 1 1 Outline About me About the course Lectures Seminars Evaluation Literature 2 About me: Ing. RNDr. Barbora Bühnová, Ph.D. Industrial experience Research Quality of

More information

System Sequence Diagrams

System Sequence Diagrams Dr. Michael Eichberg Software Engineering Department of Computer Science Technische Universität Darmstadt Software Engineering System Sequence Diagrams The following slides make extensive use of material

More information

Software Reuse. Ian Sommerville 2006 MSc module: Advanced Software Engineering Slide 1

Software Reuse. Ian Sommerville 2006 MSc module: Advanced Software Engineering Slide 1 Software Reuse Ian Sommerville 2006 MSc module: Advanced Software Engineering Slide 1 Objectives To explain the benefits of software reuse and some reuse problems To discuss several different ways to implement

More information

Dr. Aldo Dagnino ABB, Inc. US Corporate Research Center October 21 st, Requirements Engineering

Dr. Aldo Dagnino ABB, Inc. US Corporate Research Center October 21 st, Requirements Engineering Dr. Aldo Dagnino ABB, Inc. US Corporate Research Center October 21 st, 2003 Requirements Engineering Class Objectives Students will be able to define the two process areas associated with the Requirements

More information

Software Architecture and Engineering Requirements Elicitation Peter Müller

Software Architecture and Engineering Requirements Elicitation Peter Müller Software Architecture and Engineering Requirements Elicitation Peter Müller Chair of Programming Methodology Spring Semester 2017 2. Requirements Elicitation Main Activities of Software Development 2 Requirements

More information

CHAPTER 3: REQUIREMENT ANALYSIS

CHAPTER 3: REQUIREMENT ANALYSIS CHAPTER 3: REQUIREMENT ANALYSIS 3.1 Requirements Gathering At the start of the project, the travel management process handled by the admin department was studied in detail by using the basic requirement

More information

Business modelling with UML

Business modelling with UML Business modelling with UML Aljaž Zrnec, Marko Bajec, Marjan Krisper Fakulteta za računalništvo in informatiko Univerza v Ljubljani Tržaška 25, 1000 Ljubljana, Slovenija aljaz.zrnec@fri.uni-lj.si Abstract

More information

Requirements: Eliciting, Analyzing and Modeling for Success!

Requirements: Eliciting, Analyzing and Modeling for Success! Requirements: Eliciting, Analyzing and Modeling for Success! Sonja Almlie, CCBA, PMP, PMI-ACP RMC Senior Instructor 2013 RMC Project Management, Inc. Eliciting and Modeling Requirements Who uses requirements?

More information

An Introduction to Use-Case Modeling

An Introduction to Use-Case Modeling An Introduction to Use-Case Modeling The process of modeling a system s functions in terms of business events who initiated the events how the system responds to those events An approach that facilitates

More information

Chapter 1. Contents. What is Software Engineering 9/9/13. Shari L. Pfleeger Joanne M. Atlee. 4 th Edition

Chapter 1. Contents. What is Software Engineering 9/9/13. Shari L. Pfleeger Joanne M. Atlee. 4 th Edition Chapter 1 What is Software Engineering Shari L. Pfleeger Joanne M. Atlee 4 th Edition Contents 1.1 What is Software Engineering? 1.2 How Successful Have We Been? 1.3 What Is Good Software? 1.4 Who Does

More information

ACS 3907 E-Commerce. Instructor: Kerry Augustine January 24 th Bowen Hui, Beyond the Cube Consulting Services Ltd.

ACS 3907 E-Commerce. Instructor: Kerry Augustine January 24 th Bowen Hui, Beyond the Cube Consulting Services Ltd. ACS 3907 E-Commerce Instructor: Kerry Augustine January 24 th 2019 1 Building an E-commerce Site: A Systematic Approach Develop clear understanding of your business objectives What information needs to

More information

Elizabeth Larson, CBAP, PMP, CSM CEO, Watermark Elizabeth Larson

Elizabeth Larson, CBAP, PMP, CSM CEO, Watermark Elizabeth Larson Elizabeth Larson, CBAP, PMP, CSM CEO, Watermark Learning info@watermarklearning.com Enhanced 1 Performance. Enduring Results. @e_larson Elizabeth Larson Describe the essential models to use during requirements

More information

By: Ronny Trefftzs CSCI 5828: Foundations of Software Engineering Spring 2012 Professor: Kenneth Anderson

By: Ronny Trefftzs CSCI 5828: Foundations of Software Engineering Spring 2012 Professor: Kenneth Anderson By: Ronny Trefftzs CSCI 5828: Foundations of Software Engineering Spring 2012 Professor: Kenneth Anderson WATERFALL? XP? SCRUM? While there is really no standard solution, the following presentation will

More information

[Name] [ ID] [Contact Number]

[Name] [ ID] [Contact Number] [Name] [Email ID] [Contact Number] THIS IS ONLY MODEL RESUME - DO NOT COPY AND PASTE INTO YOUR RESUME. PROFILE SUMMARY 15+ years of IT experience in Consulting and worked with the Major clients for the

More information

10/17/2014. Elizabeth Larson, CBAP, PMP, CSM CEO, Watermark Enhanced 1 Performance. Enduring Results.

10/17/2014. Elizabeth Larson, CBAP, PMP, CSM CEO, Watermark Enhanced 1 Performance. Enduring Results. Elizabeth Larson, CBAP, PMP, CSM CEO, Watermark Learning info@watermarklearning.com Enhanced 1 Performance. Enduring Results. @e_larson Describe the essential models to use during requirements analysis

More information

L2 The requirement study. Requirement Engineering. Fang Chen

L2 The requirement study. Requirement Engineering. Fang Chen L2 The requirement study Fang Chen Requirement Engineering Requirement are ubiquitous part of our lives Understand the requirement through communication People are hard to understand! Requirement Creation

More information

MSO Analysis & UML 2

MSO Analysis & UML 2 MSO Analysis & UML 2 Hans Philippi (based on the course slides of Wouter Swierstra) August 30, 2018 Analysis & UML 2 1 / 32 Recap & topics Last lecture: we have met with UML class diagrams Today: sequence

More information

! To solve problems. ! To take up new opportunities. ! Requirements - descriptions of. " Behavior. " Data. " Constraints (eg. cost and schedule)

! To solve problems. ! To take up new opportunities. ! Requirements - descriptions of.  Behavior.  Data.  Constraints (eg. cost and schedule) COMP3110/6311, Software Analysis and Design Why do we Develop Software? To solve problems To take up new opportunities The value of Requirements "#$"%&'(%)#*+"%#)&),'$&+)& '()#-&)'$./,0.&+%/&.%1"*(%2.%#

More information

Requirements Engineering and Software Architecture Project Description

Requirements Engineering and Software Architecture Project Description Requirements Engineering and Software Architecture Project Description Requirements Engineering Project Description The project is student-driven. There will be external sponsors, users, and others that

More information

Introduction to Software Engineering

Introduction to Software Engineering Introduction to Software Engineering Lecture 1 Dr Eliane L. Bodanese 1 Agenda Introductions Ground Rules What is the course about & course information Course texts Lecture and Exercises Assessment Coursework

More information

Chapter 1. What is Software Engineering. Shari L. Pfleeger Joanne M. Atlee. 4 th Edition

Chapter 1. What is Software Engineering. Shari L. Pfleeger Joanne M. Atlee. 4 th Edition Chapter 1 What is Software Engineering Shari L. Pfleeger Joanne M. Atlee 4 th Edition Contents 1.1 What is Software Engineering? 1.2 How Successful Have We Been? 1.3 What Is Good Software? 1.4 Who Does

More information

The software process

The software process Software Processes The software process A structured set of activities required to develop a software system Specification; Design; Validation; Evolution. A software process model is an abstract representation

More information

VANCOUVER Chapter Study Group. BABOK Chapter 6 Requirements Analysis

VANCOUVER Chapter Study Group. BABOK Chapter 6 Requirements Analysis VANCOUVER Chapter Study Group BABOK Chapter 6 Requirements Analysis February 24, 2016 Hossam Saleh, CBAP Introduction PD Hours Presentation and quizzes at IIBA Vancouver Chapter website Certification Update

More information

Objectives. The software process. Topics covered. Waterfall model. Generic software process models. Software Processes

Objectives. The software process. Topics covered. Waterfall model. Generic software process models. Software Processes Objectives Software Processes To introduce software process models To describe three generic process models and when they may be used To describe outline process models for requirements engineering, software

More information

Four threads 8 Aug 11

Four threads 8 Aug 11 Principles of Software Construction: Objects, Design, and Concurrency (Part 2: Designing (Sub-)Systems) What to build? Christian Kästner Charlie Garrod School of Computer Science Learning Goals High-level

More information

Topics covered. Software process models Process iteration Process activities The Rational Unified Process Computer-aided software engineering

Topics covered. Software process models Process iteration Process activities The Rational Unified Process Computer-aided software engineering Software Processes Objectives To introduce software process models To describe three generic process models and when they may be used To describe outline process models for requirements engineering, software

More information

Comp435 Object-Oriented Design. Requirements and Use Cases. Requirements Analysis. Outline. Requirements Analysis. Requirements change

Comp435 Object-Oriented Design. Requirements and Use Cases. Requirements Analysis. Outline. Requirements Analysis. Requirements change Comp435 Object-Oriented Design Requirements and Use Cases Week 2 Computer Science PSU HBG 1 3 Outline Requirements Analysis Types of Requirements Requirements in Iterative Development Requirements Artifacts

More information

Objectives. Rapid software development. Topics covered. Rapid software development. Requirements. Characteristics of RAD processes

Objectives. Rapid software development. Topics covered. Rapid software development. Requirements. Characteristics of RAD processes Objectives Rapid software development To explain how an iterative, incremental development process leads to faster delivery of more useful software To discuss the essence of agile development methods To

More information

Use cases. Version October 2013

Use cases. Version October 2013 Use cases Version 2.3 20 October 2013 Maurizio Morisio, Marco Torchiano, 2012 Requirements Document 1. Purpose and scope 2. The terms used / Glossary 3. The use cases 4. The technology to be used 5. Other

More information

Test Management: Part I. Software Testing: INF3121 / INF4121

Test Management: Part I. Software Testing: INF3121 / INF4121 Test Management: Part I Software Testing: INF3121 / INF4121 Summary: Week 6 Test organisation Independence Tasks of the test leader and testers Test planning and estimation Activities Entry and exit criteria

More information