ƒ Entity Relationship Models ƒ Class Diagrams (& OO Analysis) ƒ Dataflow diagrams (& Structured Analysis) ƒ UML Activity Diagrams

Size: px
Start display at page:

Download "ƒ Entity Relationship Models ƒ Class Diagrams (& OO Analysis) ƒ Dataflow diagrams (& Structured Analysis) ƒ UML Activity Diagrams"

Transcription

1 Lecture 6: Requirements II What to Model Last Last Week: Week: Enterprises Enterprises General General Issues Issues Human Human Activity, Activity, i* i* etc. etc. This This Week: Week: Modelling Modelling Information Information and and Behaviour Behaviour Information Information Structure Structure Information Information Flow Flow Behaviour Behaviour Information Structure ƒ Entity Relationship Models ƒ Class Diagrams (& OO Analysis) Processes and Information Flow ƒ Dataflow diagrams (& Structured Analysis) ƒ UML Activity Diagrams System Behaviour ƒ Statecharts ƒ Message Sequence Charts ƒ Tabular specifications (e.g. SCR) Next Next Week: Week: Non-functional Non-functional requirements requirements Modelling Modelling NFRs NFRs Analysis Analysis techniques techniques for for NFRs NFRs 1 2 Entity Relationship Diagrams ER diagrams ƒ widely used for information modeling ƒ simple, easy to use Note: this is a notation, not a method! Used in many contexts: ƒ domain concepts objects referred to in goal models, scenarios, etc. ƒ Data to be represented in the for information s ƒ Relational Database design ƒ Meta-modeling name age nationality Actor (0,n) Cast (1,n) Film (a,b) producer director title year Key Entity Attribute Relationship (c,d) Cardinality of relationship Identifier Composite Identifier Class name :patient 0..1 attributes Name Date of Birth 0..1 services Height Weight 0..1 generalization :In-patient Room Bed Physician aggregation :Out-patient Last visit next visit physician Class Diagrams multiplicities 1 :heart Normal bpm Blood type 1..2 :kidney Operational? 0..2 :organ :eye Colour Diameter Correction Natural/artif. Orig/implant donor 3 4 1

2 Generalization vs Aggregation Source: Examples from Bennett, McRobb & Farmer, 2002 Generalization ƒ Subclasses inherit attributes, associations, & operations from the superclass ƒ A subclass may override an inherited aspect Aggregation ƒ This is the Has-a or Whole/part relationship Composition ƒ Strong form of aggregation that implies ownership: if the whole is removed from the model, so is the part. the whole is responsible for the disposition of its parts aggregation Multiplicity A client has exactly one staffmember as a contact person :StaffMember staffname staff# staffstartdate Class associations Multiplicity A staff member has zero or more clients on Name His/her clientlist of the association 1 liaises with 0..* contact ClientList person :Client companyaddress company companyfax companyname companytelephone composition generalization Role The staffmember s role in this association is as a contact person Direction The liaises with association should be read in this direction Role The clients role in this association is as a clientlist 5 6 Association Classes Sometimes the association is itself a class ƒ because we need to retain information about the association ƒ and that information doesn t naturally live in the classes at the ends of the association E.g. a title is an object that represents information about the relationship between an owner and her car :car VIN(vehicle Id Number) YearMade Mileage 0..* owns 1 owner :title yearbought initialmileage PricePaid LicencePlate# :person Name Address DriversLicenceNumber PermittedVehicles Object Oriented Analysis Background ƒ Model the requirements in terms of objects and the services they provide ƒ Grew out of object oriented design But applied to modelling the application domain rather than the program Motivation ƒ OO is (claimed to be) more natural As a evolves, the functions (processes) it performs tend to change, but the objects tend to remain unchanged Hence a model based on functions/processes will get out of date, but an object oriented model will not hence the claim that object-oriented designs are more maintainable ƒ OO emphasizes importance of well-defined interfaces between objects compared to ambiguities of flow relationships NOTE: OO applies to requirements engineering because it is a modeling tool. But we are modeling domain objects, not the design of the new 7 8 2

3 Nearly anything can be an object External Entities ƒ that interact with the being modeled E.g. people, devices, other s Things ƒ that are part of the domain being modeled E.g. reports, displays, signals, etc. Occurrences or Events ƒ that occur in the context of the E.g. transfer of resources, a control action, etc. Roles ƒ played by people who interact with the Source: Adapted from Pressman, 1994, p242 Organizational Units ƒ that are relevant to the application E.g. division, group, team, etc. Places ƒ that establish the context of the problem being modeled E.g. manufacturing floor, loading dock, etc. Structures ƒ that define a class or assembly of objects E.g. sensors, four-wheeled vehicles, computers, etc. Some things cannot be objects: ƒ procedures (e.g. print, invert, etc) ƒ attributes (e.g. blue, 50Mb, etc) Coad-Yourdon ƒ Developed in the late 80 s ƒ Five-step analysis method Variants Shlaer-Mellor ƒ Developed in the late 80 s ƒ Emphasizes modeling information and state, rather than object interfaces Fusion ƒ Second generation OO method ƒ Introduced use-cases Unified Language (UML) ƒ Third generation OO method ƒ An attempt to combine advantages of previous methods 9 10 Example method: Coad-Yourdon Source: Adapted from Pressman, 1994, p242 and Davis 1990, p98-99 Five Step Process: 1. Identify Objects & Classes (i.e. is_a relationships) 2. Identify Structures (i.e. part_of relationships) 3. Define Subjects A more abstract view of a large collection of objects Each classification and assembly structure become one subject Each remaining singleton object becomes a subject (although if there a many of these, look for more structure!) Subject Diagram shows only the subjects and their interactions 4. Define Attributes and instance connections 5a. Define services - 3 types: Occur (create, connect, access, release) These are omitted from the model as every object has them Calculate ( a calculated result from one object is needed by another) Monitor ( an object monitors for a condition or event) 5b. Define message connections These show how services of one object are used by another Shown as dotted lines on object and subject diagrams Each message may contain parameters Unified Language Third generation OO method ƒ Booch, Rumbaugh & Jacobson are principal authors Still in development Attempt to standardize the proliferation of OO variants ƒ Is purely a notation No modeling method associated with it! ƒ But has been accepted as a standard for OO modeling But is primarily owned by Rational Corp. (who sell lots of UML tools and services) Has a standardized meta-model ƒ Use case diagrams ƒ Class diagrams ƒ Message sequence charts ƒ Activity diagrams ƒ State Diagrams (uses Harel s statecharts) ƒ Module Diagrams ƒ Platform diagrams

4 Evaluation of OOA Advantages of OO analysis for RE ƒ Fits well with the use of OO for design and implementation Transition from OOA to OOD smoother than from SA to SD (but is it?) ƒ Removes emphasis on functions as a way of structuring the analysis ƒ Avoids the fragmentary nature of structured analysis object-orientation is a coherent way of understanding the world Disadvantages ƒ Emphasis on objects brings an emphasis on static modeling although later variants have introduced dynamic models ƒ Not clear that the modeling primitives are appropriate are objects, services and relationships really the things we need to model in RE? ƒ Strong temptation to do design rather than problem analysis ƒ Fragmentation of the analysis E.g. reliance on use-cases means there is no big picture of the user s needs ƒ Too much marketing hype! and false claims - e.g. no evidence that objects are a more natural way to think 13 query 1. determine form of travel 3. reserve seats confirmation Dataflow Diagrams (DFDs) travel proposed booked 2. check proposed 4. issue Timetables Fare tables fares Notes: ƒ every process, flow, and store must be labeled ƒ representation is hierarchical each process will be represented separately as a lower level DFD ƒ processes are normally numbered for cross reference ƒ processes transform can t have the same flowing out of a process as flows into it Key process flow (no control implied) store external entity boundary 14 Level 0: Context Diagram confirmation ticket Hierarchies of DFDs query Level 1: Whole System 1. determine form of travel 3. reserve seats Level 2: subprocesses Level n: subprocesses Level n: subprocesses 3.1 check seating prefs 3.1 Proposed reservations 3.1 preferences preferences res. Request id. Req id. res. Request id. Request Req id. id. issue 3.3. Request id collate log confirm 3.2. confirmations track booked seat log timestamps confirmation timestamps track confirmation confirmation query travel proposed booked confirmation 2. check proposed 4. issue Timetables Fare tables fares 15 Structured Analysis Definition ƒ Structured Analysis is a -oriented approach to conceptual modeling ƒ Common feature is the centrality of the flow diagram ƒ Mainly used for information s variants have been adapted for real-time s process: Abstract (essential functions) Concrete (detailed model) indicative (existing ) 2. Current logical 1. Current physical optative (new ) 3. New logical 4. New physical ƒ Model of current physical only useful as basis for the logical model ƒ Distinction between indicative and optative models is very important: Must understand which requirements are needed to continue current functionality, and which are new with the updated 16 4

5 Variants Source: Adapted from Svoboda, 1990, p264-5 Structured Analysis and Design Technique (SADT) ƒ Developed by Doug Ross in the mid-70 s ƒ Uses activity diagrams rather than flow diagrams ƒ Distinguishes control from processing Structured Analysis and System Specification (SASS) ƒ Developed by Yourdon and DeMarco in the mid-70 s ƒ classic structured analysis Structured System Analysis (SSA) ƒ Developed by Gane and Sarson ƒ Notation similar to Yourdon & DeMarco ƒ Adds access diagrams to describe contents of stores Structured Requirements Definition (SRD) ƒ Developed by Ken Orr in the mid-70 s ƒ Introduces the idea of building separate models for each perspective and then merging them Incoming Control Activity Name ID ID Name Transformed Performing mechanism Name ID Name 17 Example method: SASS Source: Adapted from Davis, 1990, p Study current environment ƒ draw DFD to show how flows through current organization ƒ label bubbles with names of organizational units or individuals 2. Derive logical equivalents ƒ replace names (of people, roles, ) with action verbs ƒ merge bubbles that show the same logical function ƒ delete bubbles that don t transform 3. Model new logical ƒ Modify logical DFD to show how info will flow once new is in place but don t distinguish (yet) which components will be automated 4. Define a number of automation alternatives ƒ document each as a physical DFD ƒ Analyze each with cost/benefit trade-off ƒ Select one for implementation ƒ Write the specification 18 Evaluation of SA techniques Source: Adapted from Davis, 1990, p174 Advantages ƒ Facilitates communication. ƒ Notations are easy to learn, and don t require software expertise ƒ Clear definition of boundary ƒ Use of abstraction and partitioning ƒ Automated tool support e.g. CASE tools provide automated consistency checking Disadvantages ƒ Little use of projection even SRD s perspectives are not really projection ƒ Confusion between modeling the problem and modeling the solution most of these techniques arose as design techniques ƒ These approaches model the, but not its application domain ƒ Timing issues are completely invisible UML Activity Diagrams [failed] Cancel Authorize Payment Receive [succeeded] Dispatch [for each line * item on order] Check Line Item [in stock] Assign to Reorder Item [need to reorder]

6 Finance Authorize Payment Activity Diagram with Swimlanes [failed] [succeeded] [stock assigned to all line items and payment authorized] Cancel Dispatch Receive Check Line Item [in stock] * [for each line item on order] Assign to [need to reorder] Processing Reorder Item Choose Outstanding Items * [for each chosen order item] Assign Goods to [all outstanding order items filled] Stock Manager Receive Supply Add Remainder to Stock age :person [age < 18] [age < 65] child [age = 18] adult [age = 65] senior Statecharts Real world object vs. System representation recordbirth() /setdob() child [nowyear-birthyear>18] adult [nowyear-birthyear>65] senior recorddeath() /setdateofdeath() deceased :person dateofbirth dateofdeath recordbirth() setdob() recorddeath() setdateofdeath() States and Transitions A state represents a time period during which ƒ A predicate is true e.g. (budget - expenses) > 0, ƒ An action is being performed, or an event is awaited: e.g. checking inventory for order items e.g. waiting for arrival of a missing order item A state can be on or off. ƒ When a state is on, all its outgoing transitions are eligible to fire. ƒ Transitions take the form: event(parameters) [guard] / action For a transition to fire, its event must occur and its guard must be true. When a transition fires, its action is carried out. States can have associated activities: ƒ do/activity carries out some activity for as long as the state is on ƒ entry/action and exit/action carry out the action ever the state is entered (exited) ƒ include/statediagramname calls another state diagram, allowing state diagrams to be nested 23 Events Events are happenings the needs to know about ƒ Must be relevant to the (or object) being modelled ƒ Must be modellable as an instantaneous occurance (from the s point of view) E.g. completing an assignment, failing an exam, a crash ƒ Are implemented by message passing in an OO Design In UML, there are four types of events: ƒ Change events occur a condition becomes true denoted by the keyword e.g. [balance < 0] ƒ Call events occur an object receives a call for one of its operations to be perfomed ƒ Signal events occur an object receives an explicit (real-time) signal ƒ Elapsed-time events mark the passage of a designated period of time e.g. after[10 seconds] 24 6

7 Superstates States can be nested, to make diagrams simpler ƒa superstate consists of one or more states. ƒsuperstates make it possible to view a state diagram at different levels of abstraction. OR superstates ƒ the superstate is on, only one of its substates is on employed probationary full after [6 months] AND superstates (concurrent substates) ƒ When the superstate is on, all of its states are also on ƒ Usually, the AND substates will be nested further as OR superstates employed on payroll assigned to project createrecord() unborn unmarried single Hierarchical Statecharts registerbirth()/ setdateofbirth() working age widowed divorced adult [age>65] child [age>17] spouse. registerdeath() registerdivorce() senior registerdeath() [ addr = spouse.addr] registermarriage()/setspouse() partnered married separated [ addr spouse.addr] deceased registerdeath() Checking your Statecharts UML Sequence Diagrams Consistency Checks ƒ All events in a statechart should appear as: operations of an appropriate class in the class diagram and incoming messages for this object on a collaboration/sequence diagram ƒ All actions in a statechart should appear as: operations of an appropriate class in the class diagram and outgoing messages for this object on a collaboration/sequence diagram Style Guidelines ƒ Give each state a unique, meaningful name ƒ Only use superstates the state behaviour is genuinely complex ƒ Do not show too much detail on a single statechart ƒ Use guard conditions carefully to ensure statechart is unambiguous Statecharts should be deterministic (unless there is a good reason) You probably shouldn t be using statecharts if: ƒ you find that most transitions are fired the state completes ƒ many of the trigger events are sent from the object to itself ƒ your states do not correspond to the attribute assignments of the class 27 Time Initiator :Person condition Call() What s up?() Give mtg details() Staff :Person Respond() [for all participants] *Inform() Acknowledge() [for all participants] *Remind() Prompt() [decision=ok] ScheduleOK ed() participating object iteration Acknowledge() Show () Scheduler :Person [for all participants] *Inform() Participant :Person 28 7

8 VariableTypeInitial ValueUnitsWarningFlagbooleanfalse-OtherFlagbooleantrueFudgelevelenumeratedone-Waterlevelreal0.0mtemperaturereal0.0degrees CBlipCounterinteger0milesTimeNowreal100.0secAirBrakeAccreal0.0m/sec TypeBaseTypeValuesUnitsWarningLevelenumeratedlow,med,high-Temperatureinteger degrees CWaterlevelinteger0..100metersFlagenumeratedon, off- ConstantTypeValueUnitsLowTempinteger15degrees CHighTempinteger23degrees CMaxTimeOutinteger300millisecReferenceSafetyLevelsafetytypelow-TempMargininteger5degrees C ModesEventsNoFailuretruefalseACFailuretemp > temp0 Four Variable Model: Tabular Specifications: SCR Monitored Variables Dictionaries: System Monitored/Controlled Variables Types Constants input input devices items software Mode Transition Tables CurrentModePoweredonToo ColdTemp OKToo Hot ModeOff@T-t-Ina output items Tables: output devices ModesEventsNoFailurefalsetrueACFailure, HeatFailuretruefa Controlled Variables CurrentModePoweredonToo ColdTemp OKToo HotNew ModeOff@T-t-Inactive@Tt--Heat@T--tACInactive@F---Off-@T--Heat---@TACHeat@F---Off--@T-InactiveAC@F---Off--@T-Inactive Event Tables CurrentModePoweredonToo ColdTemp OKToo HotNew ModeOff@T-t-Inactive@Tt--Heat@T--tACInactive@F---Off-@T--Heat---@TACHeat@F---Off--@T-InactiveTimeout@F---No Failure-ff@TACFailure Condition Tables ModesEventsNoFailure@T(INMODE)neverBlah@T(thingy)@ Enviroment Enviroment also: Assertions, Scenarios,... ModesEventsNoFailure@T(INMODE)neverSensorFail@T(reset=on)@T(INMODE)TimeoutalwaysneverACFailure, HeatFailurenever@T(INMODE)Warning light =OffOn ModesEventsNoFailure@T(INMODE)neverBlah@T(thingy)@T(other)DoodahneveralwaysACFailure, HeatFailurenever@T(INMODE)Heater =OffOn SCR basics Modes and Mode classes ƒ A mode class is a finite state machine, with states called modes Transitions in each mode class are triggered by events ƒ Complex s are described using a number of mode classes operating in parallel System State ƒ A () state is defined as: the is in exactly one mode from each mode class and each variable has a unique value Events ƒ An event occurs any entity changes value An input event occurs an input variable changes value Single input assumption - only one input event can occur at once means c changed from false to true ƒ A conditioned event is an event with a WHEN d means: c became true c was false and d was true SCR Specification 29 Source: Adapted from Heitmeyer et. al SCR Tables Mode Class Tables ƒ Define the set of modes (states) that the software can be in. ƒ A complex will have many different modes classes Each mode class has a mode table showing the conditions that cause transitions between modes ƒ A mode table defines a partial function from modes and events to modes Event Tables ƒ An event table defines how a term or controlled variable changes in response to input events ƒ Defines a partial function from modes and events to variable values Condition Tables ƒ A condition table defines the value of a term or controlled variable under every possible condition ƒ Defines a total function from modes and conditions to variable values Example: Temp Control System Mode transition table: Current Powered Too Cold Temp OK Too Hot New Mode Mode on - t - t t AC Off - - Heat - - AC Off - - Inactive Off - - Inactive Source: Adapted from Heitmeyer et. al Source: Adapted from Heitmeyer et. al

9 Mode transition table: Failure modes Current Mode Powered on Cold Heater Too Cold Warm AC Too Hot New Mode NoFailure t - - HeatFailure t - t ACFailure HeatFailure t - - NoFailure ACFailure t - t NoFailure Event table: Modes never ACFailure, HeatFailure Warning light = Off On Consistency Checks in SCR Syntax ƒ did we use the notation correctly? Type Checks ƒ do we use each variable correctly? Disjointness ƒ is there any overlap between rows of the mode tables? ensures we have a deterministic state machine Coverage ƒ does each condition table define a value for all possible conditions? Mode Reachability ƒ is there any mode that cannot ever happen? Cycle Detection ƒ have we defined any variable in terms of itself? Source: Adapted from Heitmeyer et. al

Requirements & Domain Models. Lecture 13: Object Oriented Modelling. Nearly anything can be an object. Object Oriented Analysis

Requirements & Domain Models. Lecture 13: Object Oriented Modelling. Nearly anything can be an object. Object Oriented Analysis Lecture 3: Object Oriented Modelling Object Oriented Analysis Rationale Identifying Classes Attributes and Operations Class Diagrams Associations Multiplicity Aggregation Composition Generalization Easterbrook

More information

Lecture 7, Part 1: Object Oriented Modelling

Lecture 7, Part 1: Object Oriented Modelling Lecture 7, Part 1: Object Oriented Modelling Object Oriented Analysis Rationale Identifying Classes Attributes and Operations Class Diagrams Associations Multiplicity Aggregation Composition Generalization

More information

Modelling. What!is!Modelling?!

Modelling. What!is!Modelling?! Software Engineering Modelling! Dr. Raimundas Matulevičius University of Tartu rma@ut.ee Partially based on Prof. Steve Easterbrook lecturers on Requirements Engineering, University of Toronto KAOS A.

More information

Structured Modeling Methods. Lecture 15: Advantages and Disadvantages. University of Toronto Department of Computer Science.

Structured Modeling Methods. Lecture 15: Advantages and Disadvantages. University of Toronto Department of Computer Science. Lecture 15: Structured Modeling Methods Basics of Structured Analysis Notations used Modeling Process Variants SADT SASS SSADM SRD Advantages and Disadvantages 2001, Steve Easterbrook CSC444 Lec15 1 Definition

More information

Lecture 7: Requirements Modeling III. Formal Methods in RE

Lecture 7: Requirements Modeling III. Formal Methods in RE Lecture 7: Requirements Modeling III Last Last Week: Week: Modeling Modeling and and (II) (II) Modeling Modeling Functionality Functionality Structured Structured Object Object Oriented Oriented This This

More information

02. (Conceptual) Modeling. F. Dalpiaz & J. Mylopoulos -- OIS Slide 1

02. (Conceptual) Modeling. F. Dalpiaz & J. Mylopoulos -- OIS Slide 1 02. (Conceptual) Modeling F. Dalpiaz & J. Mylopoulos -- OIS 2011-12 Slide 1 Updates about the exam Assignment 1 is due April 20th (was, April 15th) After receiving feedback from the TA, students have 2

More information

Software Service Engineering

Software Service Engineering Software Service Engineering Lecture 4: Unified Modeling Language Doctor Guangyu Gao Some contents and notes selected from Fowler, M. UML Distilled, 3rd edition. Addison-Wesley Unified Modeling Language

More information

UML diagrams. Software artifacts include: SRS, SDS, test cases, source code, technical/user manual, software architecture, etc.

UML diagrams. Software artifacts include: SRS, SDS, test cases, source code, technical/user manual, software architecture, etc. UML Modeling UML diagrams UML (Unified Modeling Language) is a general purpose visual modeling language that provides different types of diagrammatic techniques and notations to specify, visualize, analyze,

More information

Lecture 5 STRUCTURED ANALYSIS. PB007 So(ware Engineering I Faculty of Informa:cs, Masaryk University Fall Bühnová, Sochor, Ráček

Lecture 5 STRUCTURED ANALYSIS. PB007 So(ware Engineering I Faculty of Informa:cs, Masaryk University Fall Bühnová, Sochor, Ráček Lecture 5 STRUCTURED ANALYSIS PB007 So(ware Engineering I Faculty of Informa:cs, Masaryk University Fall 2015 1 Outline ² Yourdon Modern Structured Analysis (YMSA) Context diagram (CD) Data flow diagram

More information

From Analysis to Design. LTOOD/OOAD Verified Software Systems

From Analysis to Design. LTOOD/OOAD Verified Software Systems From Analysis to Design 1 Use Cases: Notation Overview Actor Use case System X System boundary UCBase «extend» UCExt Actor A UCVar1 UCVar2 Extending case Generalization «include» Actor B UCIncl Included

More information

Object-Oriented Analysis Techniques Coad s OOA Technique Short History Terminological Comparison Postscript and Remarks

Object-Oriented Analysis Techniques Coad s OOA Technique Short History Terminological Comparison Postscript and Remarks Object-Oriented Analysis Object-Oriented Analysis Techniques Coad s OOA Technique Short History Terminological Comparison Postscript and Remarks Object-Oriented Analysis -- 1 Object-Oriented Analysis Object-Oriented

More information

MTAT Software Engineering

MTAT Software Engineering MTAT.03.094 Software Engineering Lecture 04: Analysis Dietmar Pfahl Fall 2015 email: dietmar.pfahl@ut.ee Task Resp. Prio Effort Labs This Week Lab 2 Assignment: 1. Project Planning Refinement of requirements

More information

Introduction to Software Engineering. 6. Modeling Behaviour

Introduction to Software Engineering. 6. Modeling Behaviour Introduction to Software Engineering 6. Modeling Behaviour Roadmap > Use Case Diagrams > Sequence Diagrams > Collaboration (Communication) Diagrams > Activity Diagrams > Statechart Diagrams Nested statecharts

More information

12 Tutorial on UML. TIMe TIMe Electronic Textbook

12 Tutorial on UML. TIMe TIMe Electronic Textbook TIMe TIMe Electronic Textbook 12 Tutorial on UML Introduction......................................................2.................................................3 Diagrams in UML..................................................3

More information

Lecturer: Sebastian Coope Ashton Building, Room G.18 COMP 201 web-page:

Lecturer: Sebastian Coope Ashton Building, Room G.18   COMP 201 web-page: Lecturer: Sebastian Coope Ashton Building, Room G.18 E-mail: coopes@liverpool.ac.uk COMP 201 web-page: http://www.csc.liv.ac.uk/~coopes/comp201 Lecture 17 Concepts of Object Oriented Design Object-Oriented

More information

An Introduction To Object Modeling System Concept for Object Modeling The Overall View Components of UML Diagram

An Introduction To Object Modeling System Concept for Object Modeling The Overall View Components of UML Diagram An Introduction To Object Modeling System Concept for Object Modeling The Overall View Components of UML Diagram After studying this chapter you should be able to: Define an object. Understand the terms

More information

Chapter 4. Capturing the Requirements. 4th Edition. Shari L. Pfleeger Joanne M. Atlee

Chapter 4. Capturing the Requirements. 4th Edition. Shari L. Pfleeger Joanne M. Atlee Chapter 4 Capturing the Requirements Shari L. Pfleeger Joanne M. Atlee 4th Edition It is important to have standard notations for modeling, documenting, and communicating decisions Modeling helps us to

More information

Systems Analysis and Design in a Changing World, Fourth Edition

Systems Analysis and Design in a Changing World, Fourth Edition Systems Analysis and Design in a Changing World, Fourth Edition Systems Analysis and Design in a Changing World, 4th Edition Learning Objectives Explain the purpose and various phases of the systems development

More information

Finite State Machine Modeling for Software Product Lines. Finite State Machines and Statecharts

Finite State Machine Modeling for Software Product Lines. Finite State Machines and Statecharts SWE 721 / IT 821 Advanced Software Design: Reusable Software Architectures Finite State Machine Modeling for Software Product Lines Hassan Gomaa Department of Information and Software Engineering George

More information

Software Development Methodologies

Software Development Methodologies Software Development Methodologies Lecturer: Raman Ramsin Lecture 3 Seminal Object-Oriented Methodologies: A Feature-Focused Review (Part 1) 1 Coad-Yourdon Two-phase introduction: Object-Oriented Analysis

More information

0. Database Systems 1.1 Introduction to DBMS Information is one of the most valuable resources in this information age! How do we effectively and efficiently manage this information? - How does Wal-Mart

More information

Lesson 11. W.C.Udwela Department of Mathematics & Computer Science

Lesson 11. W.C.Udwela Department of Mathematics & Computer Science Lesson 11 INTRODUCING UML W.C.Udwela Department of Mathematics & Computer Science Why we model? Central part of all the activities We build model to Communicate Visualize and control Better understand

More information

MAHARASHTRA STATE BOARD OF TECHNICAL EDUCATION (Autonomous) (ISO/IEC Certified)

MAHARASHTRA STATE BOARD OF TECHNICAL EDUCATION (Autonomous) (ISO/IEC Certified) Important Instructions to examiners: 1) The answers should be examined by key words and not as word-to-word as given in the model answer scheme. 2) The model answer and the answer written by candidate

More information

Object-Oriented Software Engineering Practical Software Development using UML and Java

Object-Oriented Software Engineering Practical Software Development using UML and Java Object-Oriented Software Engineering Practical Software Development using UML and Java Chapter 5: Modelling with Classes Lecture 5 5.1 What is UML? The Unified Modelling Language is a standard graphical

More information

Introduction to UML What is UML? Motivations for UML Types of UML diagrams UML syntax Descriptions of the various diagram types Rational Rose (IBM.. M

Introduction to UML What is UML? Motivations for UML Types of UML diagrams UML syntax Descriptions of the various diagram types Rational Rose (IBM.. M Introduction to UML Part I 1 What is UML? Unified Modeling Language, a standard language for designing and documenting a system in an object- oriented manner. It s a language by which technical architects

More information

NOTES ON OBJECT-ORIENTED MODELING AND DESIGN

NOTES ON OBJECT-ORIENTED MODELING AND DESIGN NOTES ON OBJECT-ORIENTED MODELING AND DESIGN Stephen W. Clyde Brigham Young University Provo, UT 86402 Abstract: A review of the Object Modeling Technique (OMT) is presented. OMT is an object-oriented

More information

MULTIPLE CHOICE. Choose the one alternative that best completes the statement or answers the question.

MULTIPLE CHOICE. Choose the one alternative that best completes the statement or answers the question. Exam Name MULTIPLE CHOICE. Choose the one alternative that best completes the statement or answers the question. 1) A process has a: 1) A) pronoun label B) noun phrase label C) verb phrase label D) adjective

More information

OBJECT ORIENTED MODELLING & DESIGN 1

OBJECT ORIENTED MODELLING & DESIGN 1 OBJECT ORIENTED MODELLING & DESIGN 1 Contents 1. OBJECT ORIENTED CONCEPTS... 6 OBJECT... 6 CLASS... 6 CLASS vs OBJECT... 6 WHAT IS OBJECT ORIENTED?... 6 OBJECT ORIENTED METHODOLOGY... 7 ADVANTAGES OF OBJECT

More information

Requirements Analysis 1: Requirements and Classes

Requirements Analysis 1: Requirements and Classes Requirements Analysis 1: Requirements and Classes Based on Chapter 7 of Bennett, McRobb and Farmer: Object Oriented Systems Analysis and Design Using UML, (4th Edition), McGraw Hill, 2010. 1 In This Lecture

More information

Combined Modeling and Programming with State Machines

Combined Modeling and Programming with State Machines Combined Modeling and Programming with State Machines Kjetil Andresen Master s Thesis Spring 2014 Combined Modeling and Programming with State Machines Kjetil Andresen 1st May 2014 ii Abstract As part

More information

UML Fundamental. OutLine. NetFusion Tech. Co., Ltd. Jack Lee. Use-case diagram Class diagram Sequence diagram

UML Fundamental. OutLine. NetFusion Tech. Co., Ltd. Jack Lee. Use-case diagram Class diagram Sequence diagram UML Fundamental NetFusion Tech. Co., Ltd. Jack Lee 2008/4/7 1 Use-case diagram Class diagram Sequence diagram OutLine Communication diagram State machine Activity diagram 2 1 What is UML? Unified Modeling

More information

CHAPTER 1. Topic: UML Overview. CHAPTER 1: Topic 1. Topic: UML Overview

CHAPTER 1. Topic: UML Overview. CHAPTER 1: Topic 1. Topic: UML Overview CHAPTER 1 Topic: UML Overview After studying this Chapter, students should be able to: Describe the goals of UML. Analyze the History of UML. Evaluate the use of UML in an area of interest. CHAPTER 1:

More information

Dynamic Modeling - Finite State Machines

Dynamic Modeling - Finite State Machines Dynamic Modeling - Finite State Machines SWE 321 Fall 2014 Rob Pettit 1 Finite State Machines Finite number of states Only in one state at a time Transition Change of state Caused by event Transition to

More information

Object-Oriented Analysis and Design. Pre-UML Situation. The Unified Modeling Language. Unification Efforts

Object-Oriented Analysis and Design. Pre-UML Situation. The Unified Modeling Language. Unification Efforts Object-Oriented Analysis and Design Analysis vs. Design Analysis Activities Finding the Objects/ Classes An Analysis Example The Unified Modeling Language Pre-UML Situation Early 90s Explosion of OO methods/notations

More information

INTRODUCTION TO UNIFIED MODELING MODEL (UML) & DFD. Slides by: Shree Jaswal

INTRODUCTION TO UNIFIED MODELING MODEL (UML) & DFD. Slides by: Shree Jaswal INTRODUCTION TO UNIFIED MODELING MODEL (UML) & DFD Slides by: Shree Jaswal What is UML? 2 It is a standard graphical language for modeling object oriented software. It was developed in mid 90 s by collaborative

More information

Object Oriented Modeling

Object Oriented Modeling Overview UML Unified Modeling Language What is Modeling? What is UML? A brief history of UML Understanding the basics of UML UML diagrams UML Modeling tools 2 Modeling Object Oriented Modeling Describing

More information

06. Analysis Modeling

06. Analysis Modeling 06. Analysis Modeling Division of Computer Science, College of Computing Hanyang University ERICA Campus 1 st Semester 2017 Overview of Analysis Modeling 1 Requirement Analysis 2 Analysis Modeling Approaches

More information

Entity-Relationship Modelling. Entities Attributes Relationships Mapping Cardinality Keys Reduction of an E-R Diagram to Tables

Entity-Relationship Modelling. Entities Attributes Relationships Mapping Cardinality Keys Reduction of an E-R Diagram to Tables Entity-Relationship Modelling Entities Attributes Relationships Mapping Cardinality Keys Reduction of an E-R Diagram to Tables 1 Entity Sets A enterprise can be modeled as a collection of: entities, and

More information

Darshan Institute of Engineering & Technology for Diploma Studies

Darshan Institute of Engineering & Technology for Diploma Studies REQUIREMENTS GATHERING AND ANALYSIS The analyst starts requirement gathering activity by collecting all information that could be useful to develop system. In practice it is very difficult to gather all

More information

Chapter : Analysis Modeling

Chapter : Analysis Modeling Chapter : Analysis Modeling Requirements Analysis Requirements analysis Specifies software s operational characteristics Indicates software's interface with other system elements Establishes constraints

More information

COMP Instructor: Dimitris Papadias WWW page:

COMP Instructor: Dimitris Papadias WWW page: COMP 5311 Instructor: Dimitris Papadias WWW page: http://www.cse.ust.hk/~dimitris/5311/5311.html Textbook Database System Concepts, A. Silberschatz, H. Korth, and S. Sudarshan. Reference Database Management

More information

UML 2.0 UML 2.0. Scott Uk-Jin Lee. Division of Computer Science, College of Computing Hanyang University ERICA Campus

UML 2.0 UML 2.0. Scott Uk-Jin Lee. Division of Computer Science, College of Computing Hanyang University ERICA Campus UML 2.0 Division of Computer Science, College of Computing Hanyang University ERICA Campus Introduction to UML 2.0 UML Unified Modeling Language Visual language for specifying, constructing and documenting

More information

Exercise Unit 2: Modeling Paradigms - RT-UML. UML: The Unified Modeling Language. Statecharts. RT-UML in AnyLogic

Exercise Unit 2: Modeling Paradigms - RT-UML. UML: The Unified Modeling Language. Statecharts. RT-UML in AnyLogic Exercise Unit 2: Modeling Paradigms - RT-UML UML: The Unified Modeling Language Statecharts RT-UML in AnyLogic Simulation and Modeling I Modeling with RT-UML 1 RT-UML: UML Unified Modeling Language a mix

More information

Engineering Design w/embedded Systems

Engineering Design w/embedded Systems 1 / 40 Engineering Design w/embedded Systems Lecture 33 UML Patrick Lam University of Waterloo April 4, 2013 2 / 40 What is UML? Unified Modelling Language (UML): specify and document architecture of large

More information

Methods for requirements engineering

Methods for requirements engineering Methods for requirements engineering Objectives To explain the role of methods and techniques in requirements engineering To introduce data-flow modelling To introduce semantic data modelling To introduce

More information

Chapter 2: Entity-Relationship Model

Chapter 2: Entity-Relationship Model Chapter 2: Entity-Relationship Model! Entity Sets! Relationship Sets! Design Issues! Mapping Constraints! Keys! E-R Diagram! Extended E-R Features! Design of an E-R Database Schema! Reduction of an E-R

More information

MechEng SE3 Lecture 7 Domain Modelling

MechEng SE3 Lecture 7 Domain Modelling MechEng SE3 Lecture 7 Domain Modelling Simon Gay (slides by Phil Gray) 17 February 2010 1 This week s supplementary reading Zero Balances and Zero Responsibility Michael Bolton http://www.developsense.com/essays/zero.html

More information

Object-Oriented and Classical Software Engineering

Object-Oriented and Classical Software Engineering Slide 16.1 Object-Oriented and Classical Software Engineering Seventh Edition, WCB/McGraw-Hill, 2007 Stephen R. Schach srs@vuse.vanderbilt.edu CHAPTER 16 Slide 16.2 MORE ON UML 1 Chapter Overview Slide

More information

Object Oriented System Development

Object Oriented System Development Object Oriented System Development Ratna Wardani Semester Genap, 2012 2/26/2012 Ratna W/PSBO2012 1 About This Course It shows how to apply OOAD technique to analyze and develop systems.. It gives you an

More information

Database Systems. A Practical Approach to Design, Implementation, and Management. Database Systems. Thomas Connolly Carolyn Begg

Database Systems. A Practical Approach to Design, Implementation, and Management. Database Systems. Thomas Connolly Carolyn Begg Database Systems A Practical Approach to Design, Implementation, and Management For these Global Editions, the editorial team at Pearson has collaborated with educators across the world to address a wide

More information

Unified Modeling Language 2

Unified Modeling Language 2 Unified Modeling Language 2 State machines 109 History and predecessors 1950 s: Finite State Machines Huffmann, Mealy, Moore 1987: Harel Statecharts conditions hierarchical (and/or) states history states

More information

Advanced Software Engineering

Advanced Software Engineering Dev Bhoomi Institute Of Technology LABORATORY MANUAL PRACTICAL INSTRUCTION SHEET EXPERIMENT NO. ISSUE NO. : ISSUE DATE: REV. NO. : REV. DATE : PAGE: 1 LABORATORY Name & Code: Advanced Software Engineering

More information

Chapter 6: Entity-Relationship Model. The Next Step: Designing DB Schema. Identifying Entities and their Attributes. The E-R Model.

Chapter 6: Entity-Relationship Model. The Next Step: Designing DB Schema. Identifying Entities and their Attributes. The E-R Model. Chapter 6: Entity-Relationship Model The Next Step: Designing DB Schema Our Story So Far: Relational Tables Databases are structured collections of organized data The Relational model is the most common

More information

MTAT Software Engineering. Written Exam 17 January Start: 9:15 End: 11:45

MTAT Software Engineering. Written Exam 17 January Start: 9:15 End: 11:45 MTAT.03.094 Software Engineering Written Exam 17 January 2014 Start: 9:15 End: 11:45 Important Notes: The exam is open book and open laptop. Web browsing is allowed, but you are not allowed to use e mail

More information

Requirements Analysis

Requirements Analysis Requirements Analysis Based on K. E Wiegers Software Requirements, Chap 5, 14 D. Leffingwell & D. Widrig, Managing Software Requirements A use case approach, Chap 5 Requirements Analysis The process of

More information

The Unified Modeling Language (UML)

The Unified Modeling Language (UML) The Unified Modeling Language (UML) A Very Distilled Introduction to The Unified Modeling Language (UML). A quick introduction to UML is given. Thereafter, the surface of class and activity diagrams and

More information

Ch t 8 Chapter 8. System Models

Ch t 8 Chapter 8. System Models Ch t 8 Chapter 8. System Models Objectives To explain why the context t of a system should be modelled d as a part of requirements engineering process To describe behavioural modelling, data modelling

More information

The Next Step: Designing DB Schema. Chapter 6: Entity-Relationship Model. The E-R Model. Identifying Entities and their Attributes.

The Next Step: Designing DB Schema. Chapter 6: Entity-Relationship Model. The E-R Model. Identifying Entities and their Attributes. Chapter 6: Entity-Relationship Model Our Story So Far: Relational Tables Databases are structured collections of organized data The Relational model is the most common data organization model The Relational

More information

Topics. Overview- The UML Functional Model. Structural Model. Behavioral Models. Use Case Diagram (essential and system)

Topics. Overview- The UML Functional Model. Structural Model. Behavioral Models. Use Case Diagram (essential and system) Topics Overview- The UML Functional Model Use Case Diagram (essential and system) Structural Model Class/object, Component and Deployment Diagram Behavioral Models Activity, State chart, sequence /collaboration

More information

Object-Oriented Systems Development: Using the Unified Modeling Language

Object-Oriented Systems Development: Using the Unified Modeling Language Object-Oriented Systems Development: Using the Unified Modeling Language Chapter 5: Unified Modeling Language Goals Modeling. Unified modeling language. Class diagram. Use case diagram. Interaction diagrams.

More information

Chapter 5, Analysis: Dynamic Modeling

Chapter 5, Analysis: Dynamic Modeling Chapter 5, Analysis: Dynamic Modeling Using UML, Patterns, and Java Object-Oriented Software Engineering Dynamic Modeling with UML Diagrams for dynamic modeling Interaction diagrams describe the dynamic

More information

Meltem Özturan

Meltem Özturan Meltem Özturan www.mis.boun.edu.tr/ozturan/samd 1 2 Modeling System Requirements Object Oriented Approach to Requirements OOA considers an IS as a set of objects that work together to carry out the function.

More information

Chapter 9. Process Modeling. McGraw-Hill/Irwin. Copyright 2007 by The McGraw-Hill Companies, Inc. All rights reserved.

Chapter 9. Process Modeling. McGraw-Hill/Irwin. Copyright 2007 by The McGraw-Hill Companies, Inc. All rights reserved. Chapter 9 Process Modeling McGraw-Hill/Irwin Copyright 2007 by The McGraw-Hill Companies, Inc. All rights reserved. Objectives Define systems modeling and differentiate logical and physical models. Define

More information

SE 1: Software Requirements Specification and Analysis

SE 1: Software Requirements Specification and Analysis SE 1: Software Requirements Specification and Analysis Lecture 4: Basic Notations Nancy Day, Davor Svetinović http://www.student.cs.uwaterloo.ca/ cs445/winter2006 uw.cs.cs445 U Waterloo SE1 (Winter 2006)

More information

CSIT5300: Advanced Database Systems

CSIT5300: Advanced Database Systems CSIT5300: Advanced Database Systems L01: Entity Relationship (ER) Model Dr. Kenneth LEUNG Department of Computer Science and Engineering The Hong Kong University of Science and Technology Hong Kong SAR,

More information

Chapter 2 ENTITY RELATIONSHIP MODEL

Chapter 2 ENTITY RELATIONSHIP MODEL INTRODUCTION Chapter 2 ENTITY RELATIONSHIP MODEL Data model is used to describe data, data relationship and constraints on data. A number of different data models have proposed. They can broadly be classified

More information

CS 370 REVIEW: UML Diagrams D R. M I C H A E L J. R E A L E F A L L

CS 370 REVIEW: UML Diagrams D R. M I C H A E L J. R E A L E F A L L CS 370 REVIEW: UML Diagrams D R. M I C H A E L J. R E A L E F A L L 2 0 1 5 Introduction UML Unified Modeling Language Very well recognized specification for modeling architectures, use cases, etc. UML

More information

Object-Oriented Systems Development: Using the Unified Modeling Language

Object-Oriented Systems Development: Using the Unified Modeling Language Object-Oriented Systems Development: Using the Unified Modeling Language Chapter 4: Object-Oriented Methodologies Goals Object-Oriented Methodologies The Rumbaugh et al. OMT The Booch methodology Jacobson's

More information

Chapter 10. Object-Oriented Analysis and Modeling Using the UML. McGraw-Hill/Irwin

Chapter 10. Object-Oriented Analysis and Modeling Using the UML. McGraw-Hill/Irwin Chapter 10 Object-Oriented Analysis and Modeling Using the UML McGraw-Hill/Irwin Copyright 2007 by The McGraw-Hill Companies, Inc. All rights reserved. Objectives 10-2 Define object modeling and explain

More information

Object-Oriented Analysis and Design Using UML

Object-Oriented Analysis and Design Using UML Object-Oriented Analysis and Design Using UML An Introduction to Unified Process and Design Patterns Mahesh P. Matha Object-Oriented Analysis and Design Using UML Object-Oriented Analysis and Design Using

More information

Software Modeling & Analysis. - Introduction to SASD - Structured Analysis. Lecturer: JUNBEOM YOO

Software Modeling & Analysis. - Introduction to SASD - Structured Analysis. Lecturer: JUNBEOM YOO Software Modeling & Analysis - Introduction to SASD - Structured Analysis Lecturer: JUNBEOM YOO jbyoo@konkuk.ac.kr References Modern Structured Analysis, Edward Yourdon, 1989. Introduction to System Analysis

More information

administrivia today UML start design patterns Tuesday, September 28, 2010

administrivia today UML start design patterns Tuesday, September 28, 2010 administrivia Assignment 2? promise to get past assignment 1 back soon exam on monday review slides are posted your responsibility to review covers through last week today UML start design patterns 1 Unified

More information

LABORATORY 1 REVISION

LABORATORY 1 REVISION UTCN Computer Science Department Software Design 2012/2013 LABORATORY 1 REVISION ================================================================== I. UML Revision This section focuses on reviewing the

More information

Computer Science 520/620 Spring 2013 Prof. L. Osterweil" Use Cases" Software Models and Representations" Part 4" More, and Multiple Models"

Computer Science 520/620 Spring 2013 Prof. L. Osterweil Use Cases Software Models and Representations Part 4 More, and Multiple Models Computer Science 520/620 Spring 2013 Prof. L. Osterweil Software Models and Representations Part 4 More, and Multiple Models Use Cases Specify actors and how they interact with various component parts

More information

Computer Science 520/620 Spring 2013 Prof. L. Osterweil" Software Models and Representations" Part 4" More, and Multiple Models" Use Cases"

Computer Science 520/620 Spring 2013 Prof. L. Osterweil Software Models and Representations Part 4 More, and Multiple Models Use Cases Computer Science 520/620 Spring 2013 Prof. L. Osterweil Software Models and Representations Part 4 More, and Multiple Models Use Cases Specify actors and how they interact with various component parts

More information

In This Lecture You Will Learn: Specifying Control. Statechart. Event, State and Transition

In This Lecture You Will Learn: Specifying Control. Statechart. Event, State and Transition In This Lecture You Will Learn: Specifying Control Lecture 11 How to identify requirements for control in an application How to model object life cycles using statecharts How to develop statechart diagrams

More information

SOFTWARE DESIGN COSC 4353 / Dr. Raj Singh

SOFTWARE DESIGN COSC 4353 / Dr. Raj Singh SOFTWARE DESIGN COSC 4353 / 6353 Dr. Raj Singh UML - History 2 The Unified Modeling Language (UML) is a general purpose modeling language designed to provide a standard way to visualize the design of a

More information

For 100% Result Oriented IGNOU Coaching and Project Training Call CPD: ,

For 100% Result Oriented IGNOU Coaching and Project Training Call CPD: , Q.1 What is Object Orientation? Explain the concept of class, objects, instance, generalization, and associations. Ans :-- In the past, information systems used to be defined primarily by their functionality:

More information

SEEM4570 System Design and Implementation Lecture 11 UML

SEEM4570 System Design and Implementation Lecture 11 UML SEEM4570 System Design and Implementation Lecture 11 UML Introduction In the previous lecture, we talked about software development life cycle in a conceptual level E.g. we need to write documents, diagrams,

More information

Modelling with Classes. CITS1220 Software Engineering

Modelling with Classes. CITS1220 Software Engineering Modelling with Classes CITS1220 Software Engineering Lecture Overview Classes and UML Associations between classes Special types of association: is-a, has-a, is-part-of Modelling Example Implementing associations

More information

Software Engineering. Page 1. Objectives. Object-Behavioural Modelling. Analysis = Process + Models. Case Study: Event Identification

Software Engineering. Page 1. Objectives. Object-Behavioural Modelling. Analysis = Process + Models. Case Study: Event Identification Software Engineering Object-Oriented Analysis (State and Interaction Diagrams) James Gain (jgain@cs.uct.ac.za) http://people.cs.uct.ac.za/~jgain 1. Show the object-behaviour design process Objectives 2.

More information

Unified Modeling Language (UML)

Unified Modeling Language (UML) Unified Modeling Language (UML) Troy Mockenhaupt Chi-Hang ( Alex) Lin Pejman ( PJ ) Yedidsion Overview Definition History Behavior Diagrams Interaction Diagrams Structural Diagrams Tools Effect on Software

More information

Unit-1 INTRODUCTION 1.1 CATEGORIES OF INFORMATION SYSTEMS SYLLABUS:

Unit-1 INTRODUCTION 1.1 CATEGORIES OF INFORMATION SYSTEMS SYLLABUS: Unit-1 INTRODUCTION SYLLABUS: Categories of Information systems-traditional paradigm vs. Object oriented paradigm-objects and Classes-Inheritance-Object relationship-examples of UML class modeling-unified

More information

Chapter 4. Enhanced Entity- Relationship Modeling. Enhanced-ER (EER) Model Concepts. Subclasses and Superclasses (1)

Chapter 4. Enhanced Entity- Relationship Modeling. Enhanced-ER (EER) Model Concepts. Subclasses and Superclasses (1) Chapter 4 Enhanced Entity- Relationship Modeling Enhanced-ER (EER) Model Concepts Includes all modeling concepts of basic ER Additional concepts: subclasses/superclasses, specialization/generalization,

More information

Practical UML - A Hands-On Introduction for Developers

Practical UML - A Hands-On Introduction for Developers Practical UML - A Hands-On Introduction for Developers By: Randy Miller (http://gp.codegear.com/authors/edit/661.aspx) Abstract: This tutorial provides a quick introduction to the Unified Modeling Language

More information

Object-Oriented Systems Analysis and Design Using UML

Object-Oriented Systems Analysis and Design Using UML 10 Object-Oriented Systems Analysis and Design Using UML Systems Analysis and Design, 8e Kendall & Kendall Copyright 2011 Pearson Education, Inc. Publishing as Prentice Hall Learning Objectives Understand

More information

Chapter 6: Entity-Relationship Model

Chapter 6: Entity-Relationship Model Chapter 6: Entity-Relationship Model Database System Concepts, 5th Ed. See www.db-book.com for conditions on re-use Chapter 6: Entity-Relationship Model Design Process Modeling Constraints E-R Diagram

More information

22/09/2012 INFO2110. Copyright Warning. Revision of class diagram. Overview. Purpose of class diagram. Generalization Relationship

22/09/2012 INFO2110. Copyright Warning. Revision of class diagram. Overview. Purpose of class diagram. Generalization Relationship 22/09/202 INFO20 Copyright Warning System Analysis and Modelling Semester 2, 202 Lecture 8, Structural Modelling (II) COMMONWEALTH OF AUSTRALIA Copyright Regulations 969 WARNING This material has been

More information

Structured Analysis and Structured Design

Structured Analysis and Structured Design Structured Analysis and Structured Design - Introduction to SASD - Structured Analysis - Structured Design Ver. 1.5 Lecturer: JUNBEOM YOO jbyoo@konkuk.ac.kr http://dslab.konkuk.ac.kr References Modern

More information

Enhanced Entity- Relationship Models (EER)

Enhanced Entity- Relationship Models (EER) Enhanced Entity- Relationship Models (EER) LECTURE 3 Dr. Philipp Leitner philipp.leitner@chalmers.se @xleitix LECTURE 3 Covers Small part of Chapter 3 Chapter 4 Please read this up until next lecture!

More information

Software Development Methodologies

Software Development Methodologies Software Development Methodologies Lecturer: Raman Ramsin Lecture 3 Seminal Object-Oriented Methodologies: A Feature-Focused Review 1 Responsibility-Driven Design (RDD) Introduced in 1990; a UML-based

More information

Object-Oriented Software Engineering Practical Software Development using UML and Java. Chapter 5: Modelling with Classes

Object-Oriented Software Engineering Practical Software Development using UML and Java. Chapter 5: Modelling with Classes Object-Oriented Software Engineering Practical Software Development using UML and Java Chapter 5: Modelling with Classes 5.1 What is UML? The Unified Modelling Language is a standard graphical language

More information

Business Process Modelling

Business Process Modelling CS565 - Business Process & Workflow Management Systems Business Process Modelling CS 565 - Lecture 2 20/2/17 1 Business Process Lifecycle Enactment: Operation Monitoring Maintenance Evaluation: Process

More information

Ans 1-j)True, these diagrams show a set of classes, interfaces and collaborations and their relationships.

Ans 1-j)True, these diagrams show a set of classes, interfaces and collaborations and their relationships. Q 1) Attempt all the following questions: (a) Define the term cohesion in the context of object oriented design of systems? (b) Do you need to develop all the views of the system? Justify your answer?

More information

State Machine Diagrams

State Machine Diagrams State Machine Diagrams Introduction A state machine diagram, models the dynamic aspects of the system by showing the flow of control from state to state for a particular class. 2 Introduction Whereas an

More information

System Analysis & design

System Analysis & design Assiut University Faculty of Computers and Information System Analysis & design Year 2 Academic Year 2014/ 2015 Term (2) 5 A PICTURE IS WORTH A 1,000 WORDS A process model is a graphical way of representing

More information

Practical UML : A Hands-On Introduction for Developers

Practical UML : A Hands-On Introduction for Developers Borland.com Borland Developer Network Borland Support Center Borland University Worldwide Sites Login My Account Help Search Practical UML : A Hands-On Introduction for Developers - by Randy Miller Rating:

More information

Managing Change and Complexity

Managing Change and Complexity Managing Change and Complexity The reality of software development Overview Some more Philosophy Reality, representations and descriptions Some more history Managing complexity Managing change Some more

More information

Process Modeling. Wei-Tsong Wang 1 IIM, NCKU

Process Modeling. Wei-Tsong Wang 1 IIM, NCKU Process Modeling Based on Chapter 9 of Whitten, Bentley, and Dittman: Systems Analysis and Design for the Global Enterprise (7th Ed). McGraw Hill. 2007 Wei-Tsong Wang 1 IIM, NCKU 2 Models: Logical and

More information

Page 1. Dynamic Modeling. How do you find classes? Dynamic Modeling with UML. UML Interaction Diagrams. UML State Chart Diagram.

Page 1. Dynamic Modeling. How do you find classes? Dynamic Modeling with UML. UML Interaction Diagrams. UML State Chart Diagram. Dynamic Modeling How do you find classes? We have already established several sources for class identification: Application domain analysis: We find classes by talking to the client and identify abstractions

More information