Collecting Project Problem Requirements The ATCS Modeling Project: Informal Picture Follows.

Slides:



Advertisements
Similar presentations
Requirements Engineering Process
Advertisements

©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 14 Slide 1 Object-oriented Design 1.
Chapter 7 Structuring System Process Requirements
SWE Introduction to Software Engineering
©Ian Sommerville 2006Software Engineering, 8th edition. Chapter 8 Slide 1 System models.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 7 Slide 1 Requirements Engineering Processes.
Modified from Sommerville’s originalsSoftware Engineering, 7th edition. Chapter 8 Slide 1 System models.
©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 6 Slide 1 Requirements Engineering Processes l Processes used to discover, analyse and.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 8 Slide 1 System models September 29, 2008.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 14 Slide 1 Object-oriented design 2.
©Ian Sommerville 2000Software Engineering, 6/e, Chapter 61 Requirements Engineering Processes l Processes used to discover, analyse and validate system.
Modified from Sommerville’s originalsSoftware Engineering, 7th edition. Chapter 8 Slide 1 System models.
Overview of Software Requirements
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 7 Slide 1 Requirements Engineering Processes.
Software Requirements and the Requirements Engineering Process Chapters 5 and 6.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 8 Slide 1 System modeling 1.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 7 Slide 1 Requirements Engineering Processes 1.
Chapter 7: The Object-Oriented Approach to Requirements
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 27 Slide 1 Quality Management 1.
Requirements Engineering Processes
® IBM Software Group © 2006 IBM Corporation Rational Software France Object-Oriented Analysis and Design with UML2 and Rational Software Modeler 06. Requirements.
©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 6 Slide 1 Chapter 6 Requirements Engineering Process.
©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 7 Slide 1 System models l Abstract descriptions of systems whose requirements are being.
Chapter 4 System Models A description of the various models that can be used to specify software systems.
©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 10Slide 1 Chapter 10 Architectural Design.
Chapter 5: Requirement Engineering Process Omar Meqdadi SE 2730 Lecture 5 Department of Computer Science and Software Engineering University of Wisconsin-Platteville.
©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 6 Slide 1 Requirements Engineering Processes l Processes used to discover, analyse and.
©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 6 Slide 1 Requirements Engineering Processes l Processes used to discover, analyze and.
Requirements Elicitation. Who are the stakeholders in determining system requirements, and how does their viewpoint influence the process? How are non-technical.
 To describe the principal requirements engineering activities and their relationships  To introduce techniques for requirements elicitation and analysis.
Software Requirements Engineering CSE 305 Lecture-2.
©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 10Slide 1 Architectural Design l Establishing the overall structure of a software system.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 7 Slide 1 Requirements Engineering Processes.
Chapter 4 Requirements Engineering Processes Objectives l To describe the principal requirements engineering activities and their relationships l To.
©Ian Sommerville 1995/2000 (Modified by Spiros Mancoridis 1999) Software Engineering, 6th edition. Chapter 7 Slide 1 System models l Abstract descriptions.
Faculty of Computer & Information Software Engineering Third year
©Ian Sommerville 2006Software Engineering, 8th edition. Chapter 8 Slide 1 Object-oriented and Structured System Models.
Modified by Juan M. Gomez Software Engineering, 6th edition. Chapter 7 Slide 1 Chapter 7 System Models.
Software Engineering, 8th edition Chapter 8 1 Courtesy: ©Ian Somerville 2006 April 06 th, 2009 Lecture # 13 System models.
Sommerville 2004,Mejia-Alvarez 2009Software Engineering, 7th edition. Chapter 8 Slide 1 System models.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 14 Slide 1 Object-oriented Design.
Use Case Modeling Chapter 7 Part of Requirements Modeling Designing Concurrent, Distributed, and Real-Time Applications with UML Hassan Gomaa (2001)
1 Software Requirements l Specifying system functionality and constraints l Chapters 5 and 6 ++
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 7 Slide 1 Requirements Engineering Processes.
Software Engineering, 8th edition. Chapter 7 1 Courtesy: ©Ian Sommerville 2006 March 20 th, 2008 Lecture # 12 Requirements Engineering Processes.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 7 Slide 1 Requirements Engineering Processes.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 7 Slide 1 Requirements Engineering Processes.
Architecture View Models A model is a complete, simplified description of a system from a particular perspective or viewpoint. There is no single view.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 7 Slide 1 Requirements Engineering Processes.
Requirements Engineering Process
©Ian Sommerville 2006Software Engineering, 8th edition. Chapter 7 Slide 1 Requirements Engineering Processes.
Andreas S. Andreou CS603 – Advanced Software Engineering Slide 1 Requirements Engineering Processes l Processes used to discover, analyse and validate.
UML (Unified Modeling Language)
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 7 Slide 1 Requirements Engineering Processes.
21/1/ Analysis - Model of real-world situation - What ? System Design - Overall architecture (sub-systems) Object Design - Refinement of Design.
CSIS 4850: CS Senior Project – Spring 2009 CSIS 4850: Senior Project Spring 2009 Object-Oriented Design.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 7 Slide 1 Requirements Engineering Processes.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 7 Slide 1 Requirements Engineering Processes.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 7 Slide 1 Requirements Engineering Processes.
Viewpoint Oriented Requirement Definition (VORD) Amna Shifia Nisafani Department of Information Systems Subject : Requirement Engineering.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 6 Slide 1 Software Requirements (utvalgte foiler fra Kap 6 og 7 i Sommerville)
CS 240, Prof. Sarwar Slide 1 CS 240: Software Project Fall 2003 Sections 1 & 2 Dr. Badrul M. Sarwar San Jose State University Lecture #6.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 8 Slide 1 System models.
©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 2Slide 1 Chapter2: Systems Engineering l Designing, implementing, deploying and operating.
Requirements Analysis Requirements Engineering (CI 2323) Daniel Siahaan.
©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 6 Slide 1 Requirements Engineering Processes l Processes used to discover, analyse and.
VOSE / VORD Lecture 08.
Requirements Engineering Process
Requirement Management
SNS College of Engineering Coimbatore
Presentation transcript:

Collecting Project Problem Requirements The ATCS Modeling Project: Informal Picture Follows

©Ian Sommerville 1995 Software Engineering, 5th edition. Chapter 31. Slide ## An Example of one ATC System Architecture

Requirements Collection and Organization Scope the extent of the (ATCS) Collect and organize the following ATCS information: 1. ATC Organizational Structure 2. Roles within the ATC Organization 3. Services/Functions Per ATCS Role 4. Existing (non-human) Supporting ‘Systems’ within the ATC Organization

Layers of ATCS Components – Top Layer Problem (Requirements) Layer – The set of all ATC system functions is partitioned into disjoint subsets of functions/services – components In the final deliverable in UML/UMP these system functions are called ‘use cases’. The components are represented as ‘packages’. Related ATCS components can themselves be encapsulated into packages (of packages) called or stereotyped ‘sub-systems.’ In the final UML/UMP model all of these components (packages) appear in the Use Cases View Layer.

Roles, Actors and Viewpoints Organizational Divisions (Units) AccountantControllerInformation Specialist Air Traffic Control - Air Traffic Control Units Administration -Administration Units Communications -Communications Units A ATC System’s Functions are Partitioned into Disjoint Components (View Points): Simple Example

Requirements Questions What are the steps in deriving components as disjoint subsets of system functions/services? Answer. System functions are introduced from the systems’ stakeholders having a ‘vested interest’ in the system. Equivalent stakeholders determine one disjoint subset of system functions. Then, what causes these disjoint subsets to sometimes have relationships? Connectivity? Answer. One disjoint subset of functions/services may ‘need’ certain functions from another disjoint subset. Then, what may cause conflicts or inconsistencies among stakeholders and their subsets? Answer. Contentions.

UML Modeling & Programming Review Chapters 5-6 Related Material

Originating requirements analysis process ATC VORD Chapter 6 Modeling

Viewpoint-oriented elicitation The scope of system development is first established, e.g. the total population of stakeholders The scope is stratified into sets of stakeholders. Stakeholders represent different ways of looking at a problem or problem viewpoints This multi-perspective analysis is important as there is no single correct way to analyse all kinds of system requirements Perspective, viewpoint, view VORD Applied to produce full set of users’ requirements

Banking ATM system requirements The example used here is an auto-teller system which provides some automated banking services I use a very simplified system which offers some services to customers of the bank who own the system and a narrower range of services to other customers Services include cash withdrawal, message passing (send a message to request a service), ordering a statement and transferring funds

Some Auto-teller Viewpoints Bank customers Representatives of other banks Hardware and software maintenance engineers Marketing department Bank managers and counter staff Database administrators and security staff Communications engineers Personnel department

Types of viewpoints Data sources or sinks –Viewpoints are responsible for producing or consuming data. Analysis involves checking that data is produced and consumed and that assumptions about the source and sink of data are valid Representation frameworks –Viewpoints represent particular types of system model. These may be compared to discover requirements that would be missed using a single representation. Particularly suitable for real-time systems Receivers of services –Viewpoints are external to the system and receive services from it. Most suited to interactive systems

External viewpoints Natural to think of end-users as receivers of system services Viewpoints are a natural way to structure requirements elicitation It is relatively easy to decide if a viewpoint is valid Viewpoints and services may be used to structure non-functional requirements

General Method-based Analyses Widely used approach to requirements analysis. Depends on the application of a structured method to understand the system Methods have different emphases. Some are designed for requirements elicitation, others are close to design methods A viewpoint-oriented method (VORD) is used as an example here. It also illustrates the use of viewpoints

The VORD method: Our Method Start Here! Finish Modeling!

VORD process model activities ATMS Viewpoint identification –Discover viewpoints which receive system services and identify the services provided to each viewpoint ATMS Viewpoint structuring –Group related viewpoints into a hierarchy. Common services are provided at higher-levels in the hierarchy ATMS Viewpoint documentation –Refine the description of the identified viewpoints and services ATMS Viewpoint-system mapping –Transform the analysis to a UML object-oriented design

VORD standard capture forms

ATMS Viewpoint identification

ATMS Viewpoint service information

ATMS Viewpoint data/control

ATMS Viewpoint hierarchy: Information Structure

ATMS Customer/cash withdrawal templates

A Requirement is a Complete USE CASE in the Model WHO? The persons using this system service (Think of Roles in a Unit) WHAT? The name of the system service WHERE? The location in the system of the service (Think of the Unit) HOW? The way the service is accessed WHY? Is this service necessary? WHEN? The time in the system of the service usage HOW WELL? The quality of the service

Missing Use Case Information WHO? Is this missing? View Point/Actor Classes? WHAT? Is this missing? Service/Use Case Name? WHERE? Is this missing? Unit/Package Name? HOW? Is this missing? Scenario/Script? WHY? Is this missing? Rationale? WHEN? Is this missing? Before, During? After? HOW WELL? Is this missing? Performance?

QUESTION. UML Diagram Model Programming INPUT {See Figs 5.1, 5.10, 5.11 and 5.12 Row 1} Given the following paragraph of Requirements (index numbered ‘shall’ simple sentence format) for a Car Dashboard Display system, translate these requirements into an equivalent UML Use Cases model program. In doing the translation, first translate each sentence in the given requirements into equivalent UML Use Case Diagram modeling format. Note: Your answer here MUST be diagrammatically correct Rational Rose ‘code’, i.e. must pass through the model and access violations checkers. 1. There shall be a car dashboard display The car dashboard display shall be comprised of warning lights The warning lights shall be oil pressure level, doors state and fuel level The services of warning lights shall be turn_on warning lights and turn_off warning lights.

Problem Requirements Analysis WHO? WHAT? WHERE? HOW? WHY? WHEN? HOW WELL? Missing ‘Driver’ Car Dashboard Display Car Dashboard Display System Visualizing Access Missing ‘Rational’ Missing ‘Time’ Missing ‘Performance’

Services Included in Car Dashboard Display (CDD) Warning Lights Specialized Kinds of Warning Lights Specialized Services of Each Warning Light Parts of CDD Oil Pressure Level, Doors State, Fuel Level Turn_On, Turn_Off

Summary of Problem Information for Modeling View Point/Actor Classes – Driver Class Services/Use Cases – Car Dashboard Display, Warning Lights, Oil Pressure Level, Doors State, Fuel Level, Turn_On, Turn_Off Unit/System Package – Car Dashboard Display

UML Program Structures Generalization/Specialization Aggregation/Inclusion/Whole-Parts Access/Unidirectional Association Nested Packages/System-Subsystems View these in the Tools/Create Menu and Vertical Programming Bar