Object-Oriented Software Engineering CS288 Paul Krause.

Slides:



Advertisements
Similar presentations
Withdrawal Transaction Use Case Primary Actor: Customer Pre-conditions: The customer must have a valid ATM card and PIN. Post-conditions: The customer.
Advertisements

Lecture 10 Enterprise Systems Development ( CSC447 ) COMSATS Islamabad Muhammad Usman, Assistant Professor.
Introduction to Software Testing Chapter 2.6 Graph Coverage for Use Cases Paul Ammann & Jeff Offutt
Use Case Modeling SJTU. Unified Modeling Language (UML) l Standardized notation for object-oriented development l Needs to be used with an analysis and.
USE CASE – ATM EXAMPLE Actors: ATM Customer ATM Operator Use Cases: The customer can withdraw funds from a checking or savings account query the balance.
Chapter 22 Object-Oriented Systems Analysis and Design and UML Systems Analysis and Design Kendall and Kendall Fifth Edition.
Unified Modeling Language
Introduction to Software Testing Chapter 2.6 Graph Coverage for Use Cases Paul Ammann & Jeff Offutt
1 Chapter 4 Dynamic Modeling and Analysis (Part I) Object-Oriented Technology From Diagram to Code with Visual Paradigm for UML Curtis H.K. Tsang, Clarence.
Sequence Diagrams. Introduction A Sequence diagram depicts the sequence of actions that occur in a system. The invocation of methods in each object, and.
CS3773 Software Engineering Lecture 03 UML Use Cases.
Software Modeling Jerry Lebowitz.
1 Chapter 4 Dynamic Modeling and Analysis (Part I) Object-Oriented Technology From Diagram to Code with Visual Paradigm for UML Curtis H.K. Tsang, Clarence.
Interaction Diagrams Activity Diagram State Machine Diagram
L4-1-S1 UML Overview © M.E. Fayad SJSU -- CmpE Software Architectures Dr. M.E. Fayad, Professor Computer Engineering Department, Room #283I.
Using UML, Patterns, and Java Object-Oriented Software Engineering Chapter 5, Analysis: Dynamic Modeling.
Object-Oriented Software Engineering More Modelling with Classes Paul J Krause.
1 SWE Introduction to Software Engineering Lecture 25 – Object-Oriented Design (Chapter 14)
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,
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 14 Slide 1 Object-oriented design 2.
Executable UML The Models are the Code - Executable UML Lecture 2 - Using Executable UML Paul Krause.
©Ian Sommerville 2006Software Engineering, 7th edition. Chapter 14 Slide 1 Object-oriented Design.
© Copyright Eliyahu Brutman Programming Techniques Course.
Object-oriented Design CSCI 5801: Software Engineering.
The Models are the Code - Executable UML
1COM6030 Systems Analysis and Design © University of Sheffield 2005 COM 6030 Software Analysis and Design Lecture 4 - System modelling Dr Richard Clayton.
Chapter 8: Modelling Interactions and Behaviour UML Activity Diagram
PowerDesigner 与对象建模. 2 Why Using UML? Visually define and communicate the structure and behavior of an application Represent systems using Object-Oriented.
Systems Analysis and Design in a Changing World, Fifth Edition
UML Diagrams: Class Diagrams The Static Analysis Model Instructor: Dr. Hany H. Ammar Dept. of Computer Science and Electrical Engineering, WVU.
Page 1  Copyright © 1997 by Rational Software Corporation Computer System Business Process Order Item Ship via “ Modeling captures essential parts of.
Faculty of Computer & Information Software Engineering Third year
USE CASE Bayu Adhi Tama, MTI Faculty of Computer Science, University of Sriwijaya Slides are adapted from Petrus Mursanto
Sommerville 2004,Mejia-Alvarez 2009Software Engineering, 7th edition. Chapter 8 Slide 1 System models.
ניתוח מערכות מידע 1 Unified Modeling Language (UML) § § The Unified Modeling Language (UML) is the industry-standard language for: Specifying, Visualizing,
L6-S1 UML Overview 2003 SJSU -- CmpE Advanced Object-Oriented Analysis & Design Dr. M.E. Fayad, Professor Computer Engineering Department, Room #283I College.
Introduction To OOP 1.0 Fundamentals Of Java Programming Language 2.0 Exception Handling 3.0 Classes, Inheritance And Polymorphism © 2011 | PN AZRINA.
1 System Analysis and Design Using UML INSTRUCTOR: Jesmin Akhter Lecturer, IIT, JU.
Business Analysis with For PG MDI, Gurgaon Kamna Malik, Ph.D.
SWT - Diagrammatics Lecture 4/4 - Diagramming in OO Software Development - partB 4-May-2000.
1/26 On-demand Learning Series Software Engineering of Web Application - Object-Oriented Development & UML Hunan University, Software School.
1 Graph Coverage (6). Reading Assignment P. Ammann and J. Offutt “Introduction to Software Testing” ◦ Section
ATM Adv. SW Engineering
Lecture 9-1 : Intro. to UML (Unified Modeling Language)
UML (Unified Modeling Language)
Fall 2007 Week 9: UML Overview MSIS 670: Object-Oriented Software Engineering.
Object-Oriented Software Engineering CS288. UniS 2 Lecture 1 - Object-Orientation & UML Contents  Overview  Classifiers  Dynamic Behaviour  Static.
Introduction to UML and Rational Rose UML - Unified Modeling Language Rational Rose 98 - a GUI tool to systematically develop software through the following.
UML. Model An abstract representation of a system. Types of model 1.Use case model 2.Domain model 3.Analysis object model 4.Implementation model 5.Test.
Requirements Document for the Banking System
1 Object-Oriented Static Modeling of the Banking System - III Lecture # 33.
1 IS 0020 Program Design and Software Tools Unified Modeling Language Lecture 13 April 13, 2005.
1 IS 0020 Program Design and Software Tools Unified Modeling Language Lecture 13 November 30, 2004.
1 Case Study and Use Cases for Case Study Lecture # 28.
UML(Unified Modeling Language)
UNIT 1.
Paul Ammann & Jeff Offutt
Use Case Modeling - II Lecture # 27.
ATM OO Design and Implementation Case Study
Dynamic Modeling of Banking System Case Study - I
Object-Oriented Static Modeling of the Banking System - I
Dynamic Modeling of Banking System Case Study - II
Chapter 8: Modelling Interactions and Behaviour UML Activity Diagram
Unified Modeling Language
Paul Ammann & Jeff Offutt
CIS 375 Bruce R. Maxim UM-Dearborn
Software Design Lecture : 14.
CS 425 Software Engineering
CS 425/625 Software Engineering
UML Diagrams: StateCharts The Dynamic Analysis Model
Presentation transcript:

Object-Oriented Software Engineering CS288 Paul Krause

Lecture 1 - Object-Orientation & UML Contents  Overview  Classifiers  Static Modelling  Dynamic Behaviour  Summing Up

Unified Modelling Language  Visual modelling language Specify Specify Visualise Visualise Construct Construct Document Document  UML can be used to capture information about: Static structure Static structure Dynamic behaviour Dynamic behaviour Environmental aspects Environmental aspects Organisational aspects Organisational aspects

Overview height: Real age: Real Person Male_PersonFemale_Person Static View

Overview Locked Available Sold timed out lock unlock buy Behavioural View: Single Object

Overview customercredit servicevendor request item show availability select item demand payment insert card charge card Dynamic behaviour: communication patterns

Overview CreditCardCharges ItemSeller ManagerInterface ItemDB SalesServer CustomerInterface Client ServiceInterface SalesTerminal 1 * 1 * Deployment View

Lecture 2 - Object-Orientation & UML Contents  Overview  Classifiers  Static Modelling  Dynamic Behaviour  Summing Up

Classifiers ClassifierFunctionNotation actor An outside user of the system class A concept from the modelled system component A physical piece of the system data type A descriptor of a set of primitive values that lack identity Name node A computational resource subsystem A package that is treated as a unit with a specification, implementation and identity use case A specification of the behaviour of an entity in its interaction with outside agents Name >

Lecture 2 - Object-Orientation & UML Contents  Overview  Classifiers  Static Modelling  Dynamic Behaviour  Summing Up

Class Tuner class name Channel Frequency attributes Get_Frequency Set_Frequency operations

Inheritance Hierarchy Tuner A/V TunerFM Tuner

Aggregation Surf List Surf List Size Add Surf Channel Delete Surf Channel Set Surf Channel Source ID Preset Number Preset Name Edit Preset Number Edit Preset Name 0..*

Association Tuner Surf List 1 1

Putting it all together A/V Source Front EndExternal Source Surf List Source ID 0..* 1 1 Tuner 1..* is tuned to

Lecture 1 - Object-Orientation & UML Contents  Overview  Classifiers  Static Modelling  Dynamic Behaviour  Summing Up

State  A condition or situation during the life of an object during which it satisfies some condition, performs some action, or waits for some event. The Unified Modelling Reference Manual The Unified Modelling Reference Manual

Representation of a State Help entry/ display help screen exit / remove help screen

Events trigger Transitions Closed DownIdle startup closedown Top-level Statechart for ATM Control

Full Label for a Transition StateAStateB e1 [cond] / action1;action2 event name guard condition actions

More ATM Control Closed Down Idle Entry / display Welcome startupclosedown Processing Customer Input card inserted / get pin validation received [invalid card] / confiscate Terminating Transaction Processing Transaction withdrawal selected [valid card] / display wait

Use Cases ATM Customer Validate PIN > Withdraw Cash Query Account Order Statement Operator Add Cash Startup Shutdown

Sequence Chart ATM Customer ATM CardATM Control Customer Interface Bank Server Card Inserted Get Pin PIN Prompt PIN Input Card Request Card Data PIN Entered Validate PIN

Lecture 1 - Object-Orientation & UML Contents  Overview  Classifiers  Static Modelling  Dynamic Behaviour  Summing Up

Summing Up  UML is a visual modelling language that covers a range of aspects of systems analysis and design  We have seen examples of modelling static structure and dynamic behaviour  Environmental and Organisational aspects can be covered too ______________  Use it!