21/1/16 1. 2 Analysis - Model of real-world situation - What ? System Design - Overall architecture (sub-systems) Object Design - Refinement of Design.

Slides:



Advertisements
Similar presentations
Ch:8 Design Concepts S.W Design should have following quality attribute: Functionality Usability Reliability Performance Supportability (extensibility,
Advertisements

Chapter 4 - Object-Oriented Analysis and Design in a Nutshell1 Chapter 4 Object-Oriented Analysis and Design in a Nutshell.
Requirements Engineering n Elicit requirements from customer  Information and control needs, product function and behavior, overall product performance,
CS3773 Software Engineering Lecture 03 UML Use Cases.
Object-Oriented Analysis and Design
Introduction To System Analysis and Design
Use-case Modeling.
Systems Analysis and Design in a Changing World, Fourth Edition
©Ian Sommerville 2006Software Engineering, 8th edition. Chapter 8 Slide 1 System models.
L4-1-S1 UML Overview © M.E. Fayad SJSU -- CmpE Software Architectures Dr. M.E. Fayad, Professor Computer Engineering Department, Room #283I.
Development Processes UML just is a modeling technique, yet for using it we need to know: »what do we model in an analysis model? »what do we model in.
Modified from Sommerville’s originalsSoftware Engineering, 7th edition. Chapter 8 Slide 1 System models.
Modified from Sommerville’s originalsSoftware Engineering, 7th edition. Chapter 8 Slide 1 System models.
1/31 CS 426 Senior Projects Chapter 1: What is UML? Chapter 2: What is UP? [Arlow and Neustadt, 2005] January 22, 2009.
1 CS 426 Senior Projects Chapter 1: What is UML? Chapter 2: What is UP? [Arlow and Neustadt, 2002] January 26, 2006.
Object Oriented Analysis and Design Using the UML
Chapter 7: The Object-Oriented Approach to Requirements
System Analysis & Design
Introduction To System Analysis and design
Bernd Bruegge & Allen H. Dutoit Object-Oriented Software Engineering: Using UML, Patterns, and Java 1 Introduction to Software Engineering CEN 4010.
UML - Development Process 1 Software Development Process Using UML (2)
CS 4310: Software Engineering Lecture 3 Requirements and Design.
Software Engineering CS B Prof. George Heineman.
Requirements Analysis
©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.
System models Abstract descriptions of systems whose requirements are being analysed Abstract descriptions of systems whose requirements are being analysed.
Software Requirements Engineering CSE 305 Lecture-2.
Copyright 2002 Prentice-Hall, Inc. Modern Systems Analysis and Design Third Edition Jeffrey A. Hoffer Joey F. George Joseph S. Valacich Chapter 20 Object-Oriented.
Systems Analysis and Design in a Changing World, Fifth Edition
Introduction To System Analysis and Design
©Ian Sommerville 1995/2000 (Modified by Spiros Mancoridis 1999) Software Engineering, 6th edition. Chapter 7 Slide 1 System models l Abstract descriptions.
Programming in Java Unit 3. Learning outcome:  LO2:Be able to design Java solutions  LO3:Be able to implement Java solutions Assessment criteria: 
UML Diagrams: Sequence Diagrams The Requirements Model, and The Dynamic Analysis Model Instructor: Dr. Hany H. Ammar Dept. of Computer Science and Electrical.
Copyright 2002 Prentice-Hall, Inc. Chapter 2 Object-Oriented Analysis and Design Modern Systems Analysis and Design Third Edition Jeffrey A. Hoffer Joey.
Approaching a Problem Where do we start? How do we proceed?
Chapter 7 System models.
System models l Abstract descriptions of systems whose requirements are being analysed.
Pertemuan 19 PEMODELAN SISTEM Matakuliah: D0174/ Pemodelan Sistem dan Simulasi Tahun: Tahun 2009.
Modified by Juan M. Gomez Software Engineering, 6th edition. Chapter 7 Slide 1 Chapter 7 System Models.
Systems Analysis and Design in a Changing World, 3rd Edition
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.
Requirements as Usecases Capturing the REQUIREMENT ANALYSIS DESIGN IMPLEMENTATION TEST.
Unified Modeling Language* Keng Siau University of Nebraska-Lincoln *Adapted from “Software Architecture and the UML” by Grady Booch.
UML Use Case Diagramming Guidelines. What is UML? The Unified Modeling Language (UML) is a standard language for specifying, visualizing, constructing,
L6-S1 UML Overview 2003 SJSU -- CmpE Advanced Object-Oriented Analysis & Design Dr. M.E. Fayad, Professor Computer Engineering Department, Room #283I College.
7 Systems Analysis and Design in a Changing World, Fifth Edition.
Yarmouk University Department of Computer Information Systems CIS 499 Yarmouk University Department of Computer Information Systems CIS 499 Yarmouk University.
What is Object-Oriented?  Organization of software as a collection of discreet objects that incorporate both data structure and behavior.
Unified Modeling Language User Guide Section 4 - Basic Behavioral Modeling Chapter 16 - Use Cases Chapter 17 - Use Case Diagrams.
Software Design Process
© 2006 Pearson Addison-Wesley. All rights reserved 2-1 Chapter 2 Principles of Programming & Software Engineering.
Lecture 9-1 : Intro. to UML (Unified Modeling Language)
Architecture View Models A model is a complete, simplified description of a system from a particular perspective or viewpoint. There is no single view.
1 Technical & Business Writing (ENG-715) Muhammad Bilal Bashir UIIT, Rawalpindi.
Chapter 5 System Modeling. What is System modeling? System modeling is the process of developing abstract models of a system, with each model presenting.
Lecture 14 22/10/15. The Object-Oriented Analysis and Design  Process of progressively developing representation of a system component (or object) through.
CS223: Software Engineering
UML Course Instructor: Rizwana Noor. Overview  Modeling  What is UML?  Why UML?  UML Diagrams  Use Case  Components  Relationships  Notations.
 To explain why the context of a system should be modelled as part of the RE process  To describe behavioural modelling, data modelling and object modelling.
Fall 2007 Week 9: UML Overview MSIS 670: Object-Oriented Software Engineering.
CSCI 383 Object-Oriented Programming & Design Lecture 7 Martin van Bommel.
Engineering, 7th edition. Chapter 8 Slide 1 System models.
Engineering Quality Software Week02 J.N.Kotuba1 SYST Engineering Quality Software.
Unified Modeling Language
Unified Modeling Language
Software Design Lecture : 15.
Software Development Process Using UML Recap
Presentation transcript:

21/1/16 1

2 Analysis - Model of real-world situation - What ? System Design - Overall architecture (sub-systems) Object Design - Refinement of Design - Algorithms/data structures to implement each class Implementation - Translation of object classes and relationships to a particular object-oriented language time Object Model - Static structure of objects and their relationships (object diagram) Dynamic Model - Control aspects of the system (state diagrams) Functional Model - Data value transforamtions (dataflow diagrams) System

 Class Model ◦ static structure ◦ what objects are in the system? ◦ how are they related?  Dynamic Model ◦ behavioral aspects ◦ what events occur in the system ◦ when do they occur and in what order?  Functional Model ◦ data transformations ◦ “what” does the system do  Data-Oriented  Action-Oriented  Both Data and Actions 3

 the most appropriate programming structures should be based on relevant objects of the application domain.  Organize software as a collection of objects containing ◦ data structure ◦ behaviour  Build an object model of an application domain  Add implementation details to the model during design 4

StageActivity Analysis produce a document specifying what the system must do, not how to do it start with a problem statement build a real-world models of application domain concepts verify, iterate and refine the models System Design high-level design of the architectural structure to solve the problem strategy for allocating software/hardware resources to the problem organize problem components into subsystems consider performance and concurrency characteristics Object Design produce a design document using the same classes defined by analysis. Avoid using any particular programming language Objects derived from analysis may require additional details before implementation. Where necessary add: data structures algorithms Implementation transform classes into a particular hardware and software code programming language database hardware 5

 a general-purpose visual modelling language designed to specify, visualize, construct and document the artefacts of a software system  a visual modelling language that depicts the structure of the code at a level just above the code itself  independent of any particular programming language and development process  with extensibility and specialization mechanisms  that provides a formal basis for understanding the model 6

 A widely-accepted notational system for modelling object-oriented concepts.  Unified Modelling Language is intended to describe both the real-world and software 7

The Analysis phase consists of the following steps: 1. Establish Project Scope 2. Develop Context Diagram 3. Develop a simple business process model using UML activity diagram ◦ This may include modelling as-is processes and the applications that support them and would-be models of reengineered processes or implementation of the system 4. Identify the actors and use cases: ◦ Who is (or will be) using the system? 5. Develop the use cases ◦ What the users are (or will be) doing with the system? ◦ Diagram and description ◦ Explain complex uses cases using internal activity diagrams, if needed

© Lunn: Software development with UML StakeholdersProcess mapBusiness processes Requirements Analysis Use Case Diagram GUI prototype Use Case descriptions

 Functional Requirements What Systems do Inputs, Outputs, Process Non-Functional Requirements Constraints on system Performance, Volume, Security etc.

 A use case (or scenario) is a related sequence of steps, both automated and manual, for the purpose of completing a single business task ◦ Eg. Sales order approval, invoice production  Use case is not considered a functional requirement (but the story told consists of requirements)  Advantages ◦ Facilitates user involvement ◦ Gives a view of functionality from an external viewpoint ◦ Creates a tool for validating requirements & testing ◦ Provides an effective communication tool

 Does not model the system from the inside  Are not effective in capturing the non- functional requirements  Is not the same as functional decomposition  Are not inherently object oriented  Describe WHAT a system accomplished not how 12