1 CMPT 275 Software Engineering Requirements Analysis Phase Overview of Requirements Analysis Activity System Context Diagrams.

Slides:



Advertisements
Similar presentations
Bernd Bruegge & Allen Dutoit Object-Oriented Software Engineering: Conquering Complex and Changing Systems 1 Software Engineering September 12, 2001 Capturing.
Advertisements

Conquering Complex and Changing Systems Object-Oriented Software Engineering Chapter 4, Requirements Elicitation.
Information System Design IT60105 Lecture 3 System Requirement Specification.
Human Computer Interaction G52HCI
 Need to Gather requirements and other related information  Use case Modeling ◦ What the system will do for the users.
CT1404 Lecture 2 Requirement Engineering and Use Cases 1.
The Unified Software Development Process - Workflows Ivar Jacobson, Grady Booch, James Rumbaugh Addison Wesley, 1999.
Requirements Specification
Lecture 11: Chapter 22 Topics –Object Oriented Modeling –UML –Use case.
Documenting Requirements using Use Case Diagrams
1 CS 425 Software Engineering Project Preparation Use Case Modeling [Based on Chapters 3 & 4, Arlow and Neustadt, “UML and the Unified Process,” Addison-Wesley,
Introduction to Software Engineering Dr. Basem Alkazemi
APPLICATION DEVELOPMENT BY SYED ADNAN ALI.
1 CSC-3324: Chapter 4 Title: What is a requirement? Mandatory reading: Sommerville 6, 7 th ed., Chap.: 7.
1 Software Requirements Specification Lecture 14.
Software engineering Olli Alm Lecture 2: requirements, modelling & representation.
1 REQUIREMENTS ENGINEERING and SYSTEMS ANALYSIS Elements and Definitions.
1 CMPT 275 Software Engineering Requirements Analysis Process Janice Regan,
Slide 1 Requirements Workflow. Slide 2 The Phases/Workflows of the Unified Process Figure 3.1 l Phase is Business context of a step Workflow is Technical.
CMPT 275 Software Engineering
Use Case Diagrams Week 1 – Lab 1.
USE Case Model.
CMPT 275 Software Engineering
WP6: Grid Authorization Service Review meeting in Berlin, March 8 th 2004 Marcin Adamski Michał Chmielewski Sergiusz Fonrobert Jarek Nabrzyski Tomasz Nowocień.
Requirements Elicitation. Requirement: a feature or constraint that the system must satisfy Requirements Elicitation: specification of the system that.
CS 4310: Software Engineering Lecture 3 Requirements and Design.
Lesson 7 Guide for Software Design Description (SDD)
1 REQUIREMENT ENGINEERING Chapter 7. 2 REQUIREMENT ENGINEERING Definition Establishing what the customer requires from a software system. OR It helps.
1 CMPT 275 Phase: Design. Janice Regan, Map of design phase DESIGN HIGH LEVEL DESIGN Modularization User Interface Module Interfaces Data Persistance.
1 CMPT 275 Software Engineering Requirements Analysis Phase Requirements Analysis Activity (Identifying Objects, Scenarios) Janice Regan,
Requirement Engineering. Review of Last Lecture Problems with requirement Requirement Engineering –Inception (Set of Questions) –Elicitation (Collaborative.
CMPT 275 Software Engineering
INFO 425 Week 21 INFO 425 Design Problem I Week 2 – SRS Improvements Glenn Booker.
What is a Business Analyst? A Business Analyst is someone who works as a liaison among stakeholders in order to elicit, analyze, communicate and validate.
Using UML, Patterns, and Java Object-Oriented Software Engineering Chapter 4, Requirements Elicitation.
USE CASE Bayu Adhi Tama, MTI Faculty of Computer Science, University of Sriwijaya Slides are adapted from Petrus Mursanto
Requirements Analysis Visual Modeling] Lab 02 Visual Modeling (from Visual Modeling with Rational Rose and UML) A way of thinking about problems using.
1 CMPT 275 Software Engineering Requirements Gathering Activity Janice Regan,
Lecture 7: Requirements Engineering
Lecture 3 Uses Cases Topics UML Use Cases pop quiz Readings: Chapter 3 January 24, 2008 CSCE 492 Software Engineering.
1 CMPT 275 Software Engineering Requirements Analysis Phase Requirements Analysis activity Janice Regan,
® IBM Software Group © 2006 IBM Corporation Writing Good Use Cases Module 1: Introduction to Use-Case Modeling.
Yarmouk University Department of Computer Information Systems CIS 499 Yarmouk University Department of Computer Information Systems CIS 499 Yarmouk University.
1 15 quality goals for requirements  Justified  Correct  Complete  Consistent  Unambiguous  Feasible  Abstract  Traceable  Delimited  Interfaced.
CPSC 203. Use Case Diagram  A description of a system’s behavior as it responds to a request that originates from outside of that system. Specifies the.
Use Case Diagram The purpose is to communicate the system’s functionality and behaviour to the customer or end user. Mainly used for capturing user requirements.
1 CMPT 275 High Level Design Phase Modularization.
Capturing the requirements  Requirement: a feature of the system or a description of something the system is capable of doing in order to fulfill the.
Requirements Engineering Lesson 2. Terminologies:  Software Acquisition is where requirement engineering significantly meets business strategy.  Software.
Software Engineering 1 Object-oriented Analysis and Design Applying UML and Patterns An Introduction to Object-oriented Analysis and Design and Iterative.
1 Chapter 8 Building the Analysis Model (1) Analysis Concepts and Principles.
Requirement Engineering. Recap Elaboration Behavioral Modeling State Diagram Sequence Diagram Negotiation.
Identification Of Requirements From a Given Problem Statement.
Lecture 14 22/10/15. The Object-Oriented Analysis and Design  Process of progressively developing representation of a system component (or object) through.
Software Requirements Specification Document (SRS)
UML Course Instructor: Rizwana Noor. Overview  Modeling  What is UML?  Why UML?  UML Diagrams  Use Case  Components  Relationships  Notations.
17 January Requirements. The Plan Quick Pass on Software Engineering “Just enough” context Start with what you need for your first deliverables Back up.
ISMT221 Information Systems Analysis and Design Use case diagram Lab 4 Tony Tam.
Requirement Elicitation Review – Class 8 Functional Requirements Nonfunctional Requirements Software Requirements document Requirements Validation and.
Requirement Classification Nisa’ul Hafidhoh Teknik Informatika
TA: Shreya Rawal.  A use case is a description of a system’s behavior as it responds to a request that originates from outside of that system (Usually.
An Overview of Requirements Engineering Tools and Methodologies*
Classifications of Software Requirements
System.
CMPE 280 Web UI Design and Development August 29 Class Meeting
Chapter 4 – Requirements Engineering
Topic for Presentaion-2
Requirements Elicitation and Elaboration
Start at 17th March 2012 end at 31th March 2012
Chapter 1 (pages 4-9); Overview of SDLC
Presentation transcript:

1 CMPT 275 Software Engineering Requirements Analysis Phase Overview of Requirements Analysis Activity System Context Diagrams

Janice Regan, Requirements Gathering/Specification Client/User Software Developer Project Description Informal Scenarios Questions Requirements Specification Document Client meeting 8 Client requirements review meeting

Janice Regan, Project: Requirements Analysis  Requirements gathering and specification will allow you to build an ‘analysis model’. This model represents the user’s/client’s view of the system  You will end up with a list of functional requirements.  Each requirement will represent one function/activity  This is your ‘analysis model’  Functional requirements are not dependent on specific methods of implementation

Janice Regan, Project: Requirements Analysis  Y our list of functional requirements will  Describe the required interactions between the system and its environment (independent of implementation)  You will also need a list of non-functional requirements  QUALITY REQUIREMENTS: Usability, reliability, performance, maintainability  CONSTRAINTS or PSEUDO REQUIREMENTS: Implementation (tools, languages), interface (to external systems), operation (admin, management), packaging, Legal

Janice Regan, Project: Requirements Analysis  You requirements must be  Complete: all required features must be described  Consistent: no two requirements in the specification may contradict each other  Unambiguous: no requirement can be interpreted in two different and contradictory ways  Correct: Only features desired by the client / developer are included not unintended extra features (problems)

Janice Regan, Class Project: Requirements Analysis  Next you will proceed using use case centered development (UCCD) to your requirements model  System Context Diagram  Identifying Actors and developing Use Cases  Primary classes  Use cases and Scenarios (formal and informal)  Use case Diagram  Class (object) Diagram  State Diagrams

Janice Regan, Requirements Analysis Activity Software Developer Client/User Update SRS Questions Use Case Centered Development (UCCD) System Context Diagram Use Cases Primary Classes Use Case Diagram State Diagram Class Diagram Scenarios

Janice Regan, Roles  Participants are people associated with the project (software system)  Client, developer, manager, end user  A set of related tasks that are assigned to a participant is a role  A student (role) is assigned a group of related tasks: registers in classes, receives grades  A teacher (role) is assigned a group of related tasks: gives classes, marks student work, gives grades

Janice Regan, Actor  Entity outside the software system  interacts with the system  Operates on objects in the system but cannot be operated upon by objects in the system.  Human, hardware device, another software system  Represents coherent role played by users  e.g.: In an automated registration system teacher, student, registrations data base

Janice Regan, Actor  A user of software system may take on more than 1 role, usually at different times  e.g.: Eva interacts with the system not only as a student actor but also as a teacher actor  Eva teaches math, but is a student of French  An actor may represent more than one user  e.g.: Both Eva and John may take the role of a student

Janice Regan, Primary and Secondary Actors  Primary Actors  Actors who initiate a scenario (use case) causing the system to achieve a goal  automated registration system example the student or teacher is a primary actor  Secondary Actors  Actors supporting the system so primary users goals can be completed (do not initiate the use case or scenario)  automated registration system example the registration data base is a secondary actor

Janice Regan, Primary and Secondary Actors  It is possible for an Actor to be a primary (initiating) actor in one scenario and a (non-initiating) or secondary actor in another scenario in the same system  For example in the automated registration system example  When Eva registers in a French class she is the primary actor (student) and the registration data base is the secondary actor.  Periodically the registration data base (primary actor) uses the registration data base to print notifications of registration to be sent to students.

Janice Regan, System Context Diagram: LMS Librarian Patron Resources (Books, CDs..) Software System Being created Web Libraries Student Information Repository (DB) Employee Information Repository (DB) Online Journals Show how the software system interacts with its environment Resource Information Repository (DB)

Janice Regan, System Context Diagram: LMS Librarian Patron Resources (Books, CDs..) Software System Being created Web Online Journals Show how the software system interacts with its environment DB components are custom components developed specifically for this application and are thus part of this application