Presentation is loading. Please wait.

Presentation is loading. Please wait.

03/12/2001 © Bennett, McRobb and Farmer 2002 1 Modelling Concepts Based on Chapter 5 of Bennett, McRobb and Farmer: Object Oriented Systems Analysis and.

Similar presentations


Presentation on theme: "03/12/2001 © Bennett, McRobb and Farmer 2002 1 Modelling Concepts Based on Chapter 5 of Bennett, McRobb and Farmer: Object Oriented Systems Analysis and."— Presentation transcript:

1 03/12/2001 © Bennett, McRobb and Farmer 2002 1 Modelling Concepts Based on Chapter 5 of Bennett, McRobb and Farmer: Object Oriented Systems Analysis and Design Using UML, (2 nd Edition), McGraw Hill, 2002.

2 © Bennett, McRobb and Farmer 2002 2 In This Lecture You Will Learn: n What is meant by a model n The distinction between a model and a diagram n The UML concept of a model

3 © Bennett, McRobb and Farmer 2002 3 What is a Model n Like a map, a model represents something else n A useful model has the right level of detail and represents only what is important for the task in hand n Many things can be modelled: bridges, traffic flow, buildings, economic policy

4 © Bennett, McRobb and Farmer 2002 4 Why Use a Model? n A model is quicker and easier to build n A model can be used in a simulation n A model can evolve as we learn n We can choose which details to include in a model n A model can represent real or imaginary things from any domain

5 © Bennett, McRobb and Farmer 2002 5 Modelling Organizations Organizations are human activity systems. n The situation is complex n Stakeholders have different views n We have to model requirements accurately, completely and unambiguously n The model must not prejudge the solution

6 © Bennett, McRobb and Farmer 2002 6 What is a Diagram? n Abstract shapes are used to represent things or actions from the real world n Diagrams follow rules or standards n The standards make sure that different people will interpret the diagram in the same way 40°

7 © Bennett, McRobb and Farmer 2002 7 An Example of a Diagram n An activity diagram of the tasks involved in producing a book. Write Chapter Review Chapter AuthorPrinterTypesetterReviewer Typeset Book Correct Proofs Reset Book Print Book [book complete] [book not complete] Revise Chapter

8 © Bennett, McRobb and Farmer 2002 8 Write Chapter Review Chapter AuthorPrinterTypesetterReviewer Typeset Book Correct Proofs Reset Book Print Book [book complete] [book not complete] Revise Chapter Hiding Detail Plan Chapter Produce First Draft Revise Draft [satisfied] [not satisfied] Add Exercises Add References to Bibliography Write Chapter

9 © Bennett, McRobb and Farmer 2002 9 Diagrams in UML n UML diagrams consist of: –icons –two-dimensional symbols –paths –Strings n UML diagrams are defined in the UML specification. Plan Chapter Produce First Draft Revise Draft [satisfied] [not satisfied] Add Exercises Add References to Bibliography Write Chapter

10 © Bennett, McRobb and Farmer 2002 10 Diagrams vs Models n A diagram illustrates some aspect of a system. n A model provides a complete view of a system at a particular stage and from a particular perspective. n A model may consist of a single diagram, but most consist of many related diagrams and supporting data and documentation.

11 © Bennett, McRobb and Farmer 2002 11 Examples of Models n Requirements Model –complete view of requirements –may include other models, such as a Use Case Model –includes textual description as well as sets of diagrams

12 © Bennett, McRobb and Farmer 2002 12 Examples of Models n Behavioural Model –shows how the system responds to events in the outside world and the passage of time –an initial model may just use Collaboration Diagrams –a later model will include Sequence Diagrams and Statecharts

13 © Bennett, McRobb and Farmer 2002 13 Models in UML n A system is the overall thing that is being modelled n A sub-system is a part of a system consisting of related elements n A model is an abstraction of a system or sub-system from a particular perspective n A model is complete and consistent at the chosen level of abstraction

14 © Bennett, McRobb and Farmer 2002 14 Models in UML n Different models present different views of the system, for example: –use case view –design view –process view –implementation view –deployment view (Booch et al., 1999)

15 © Bennett, McRobb and Farmer 2002 15 Packages, Sub-systems and Models n UML has notation for showing sub- systems and models, and also for packages, which are a mechanism for organising models (e.g. in CASE tools) Use CasesUse Case Model Campaign Management PackageModelSub-system

16 © Bennett, McRobb and Farmer 2002 16 Developing Models n During the life of a project using an iterative life cycle, models change along the dimensions of: –abstraction—they become more concrete –formality—they become more formally specified –level of detail—additional detail is added as understanding improves

17 © Bennett, McRobb and Farmer 2002 17 Development of the Use Case Model Iteration 1 Obvious use cases. Simple use case descriptions. Iteration 2 Additional use cases. Simple use case descriptions. Prototypes. Iteration 3 Structured use cases. Structured use case descriptions. Prototypes. Spring Jewellery Campaign 1997 Spring Jewellery Campaign 2001 Spring Jewellery Campaign 2002 Summer Collection 1998 OKQuit Campaign: Campaign Selection Holborn Motors Lynch Properties Yellow Partridge Zeta Systems Client: Yellow Partridge Spring Jewellery Campaign 1997 Spring Jewellery Campaign 2001 Spring Jewellery Campaign 2002 Summer Collection 1998 OKQuit Campaign: Campaign Selection Holborn Motors Lynch Properties Yellow Partridge Zeta Systems Client: Yellow Partridge Spring Jewellery Campaign 2002 OKQuit Campaign: Campaign Selection Holborn Motors Lynch Properties Yellow Partridge Zeta Systems Client: Spring Jewellery Campaign 1997 Spring Jewellery Campaign 2001 Spring Jewellery Campaign 2002 Summer Collection 1998 OKQuit Campaign: Campaign Selection Holborn Motors Lynch Properties Yellow Partridge Zeta Systems Client: Yellow Partridge Spring Jewellery Campaign 1997 Spring Jewellery Campaign 2001 Spring Jewellery Campaign 2002 Summer Collection 1998 OKQuit Campaign: Campaign Selection Holborn Motors Lynch Properties Yellow Partridge Zeta Systems Client: Yellow Partridge Spring Jewellery Campaign 2002 OKQuit Campaign: Campaign Selection Holborn Motors Lynch Properties Yellow Partridge Zeta Systems Client:

18 © Bennett, McRobb and Farmer 2002 18 Summary In this lecture you have learned about: n What is meant by a model n The distinction between a model and a diagram n The UML concept of a model

19 © Bennett, McRobb and Farmer 2002 19 References n Booch, Rumbaugh and Jacobson (1999) (For full bibliographic details, see Bennett, McRobb and Farmer)

20 03/12/2001 © Bennett, McRobb and Farmer 2002 20 Activity Diagrams Based on Chapter 5 of Bennett, McRobb and Farmer: Object Oriented Systems Analysis and Design Using UML, (2 nd Edition), McGraw Hill, 2002.

21 © Bennett, McRobb and Farmer 2002 21 In This Lecture You Will Learn: n The purpose of activity diagrams n The notation of activity diagrams n How to draw activity diagrams

22 © Bennett, McRobb and Farmer 2002 22 Drawing Activity Diagrams n Purpose –to model a task (for example in business modelling) –to describe a function of a system represented by a use case –to describe the logic of an operation –to model the activities that make up the life cycle in the Unified Process

23 © Bennett, McRobb and Farmer 2002 23 Notation of Activity Diagrams n Activities –rectangle with rounded ends –meaningful name n Transitions –arrows with open arrowheads Add a New Client Assign Staff Contact

24 © Bennett, McRobb and Farmer 2002 24 Notation of Activity Diagrams n Start state –black circle n Decision points –diamond n Guard conditions –in square brackets n Final state –black circle in white circle [campaign to add] [no campaign to add] Add a New Client Assign Staff Contact Add New Campaign

25 © Bennett, McRobb and Farmer 2002 25 Notation of Activity Diagrams n Alternative notation for branching: –alternative transitions are shown leaving the activity with guard conditions n Note that guard conditions do not have to be mutually exclusive, but it is advisable that they should be [campaign to add] [no campaign to add] Add a New Client Assign Staff Contact Add New Campaign

26 © Bennett, McRobb and Farmer 2002 26 Notation of Activity Diagrams n Object flows –dashed arrow n Objects –rectangle –with name of object underlined –optionally shows the state of the object in square brackets Record completion of a campaign :Campaign [Active] :Campaign [Completed]

27 © Bennett, McRobb and Farmer 2002 27 Notation of Activity Diagrams n Swimlanes –vertical columns –labelled with the person, organisation or department responsible for the activities in that column Record Completion of a campaign Issue invoice Campaign Manager ClientAccountant Pay invoice Record client payment

28 © Bennett, McRobb and Farmer 2002 28 Drawing Activity Diagrams n What is the purpose? –This will influence the kind of activities that are shown n What is being shown in the diagram? –What is the name of the business process, use case or operation? n What level of detail is required? –Is it high level or more detailed?

29 © Bennett, McRobb and Farmer 2002 29 Drawing Activity Diagrams n Identify activities –What happens when a new client is added in the Agate system? n Add a New Client n Assign Staff Contact n Add New Campaign n Assign Staff to Campaign n Organise the activities in order with transitions

30 © Bennett, McRobb and Farmer 2002 30 Drawing Activity Diagrams Add a New Client Assign Staff Contact Add New Campaign Assign Staff to Campaign

31 © Bennett, McRobb and Farmer 2002 31 Drawing Activity Diagrams n Identify any alternative transitions and the conditions on them –sometimes there is a new campaign to add for a new client, sometimes not –sometimes they will want to assign staff to the campaign, sometimes not n Add transitions and guard conditions to the diagram

32 © Bennett, McRobb and Farmer 2002 32 Drawing Activity Diagrams [no staff to assign] Add a New Client Assign Staff Contact Add New Campaign [campaign to add] [no campaign to add] Assign Staff to Campaign [staff to assign]

33 © Bennett, McRobb and Farmer 2002 33 Drawing Activity Diagrams n Identify any processes that are repeated –they will want to assign staff to the campaign until there are no more staff to add n Add transitions and guard conditions to the diagram

34 © Bennett, McRobb and Farmer 2002 34 Drawing Activity Diagrams [no staff to assign] [no more staff to assign] Add a New Client Assign Staff Contact Add New Campaign [campaign to add] [no campaign to add] Assign Staff to Campaign [staff to assign] [more staff to assign]

35 © Bennett, McRobb and Farmer 2002 35 Drawing Activity Diagrams n Are all the activities carried out by the same person, organisation or department? n If not, then add swimlanes to show the responsibilities n Name the swimlanes n Show each activity in the appropriate swimlane

36 © Bennett, McRobb and Farmer 2002 36 [no staff to assign] Add a New Client Assign Staff Contact Add New Campaign [campaign to add] [no campaign to add] Assign Staff to Campaign [staff to assign] Campaign ManagerAdministrator

37 © Bennett, McRobb and Farmer 2002 37 Drawing Activity Diagrams n Are there any object flows and objects to show? –these can be documents that are created or updated in a business activity diagram –these can be object instances that change state in an operation or a use case n Add the object flows and objects

38 © Bennett, McRobb and Farmer 2002 38 [no staff to assign] Add a New Client Assign Staff Contact Add New Campaign [campaign to add] [no campaign to add] Assign Staff to Campaign [staff to assign] Campaign ManagerAdministrator :Campaign [Commissioned] :Client [New]

39 © Bennett, McRobb and Farmer 2002 39 Summary In this lecture you have learned about: n The purpose of activity diagrams n The notation of activity diagrams n How to draw activity diagrams

40 © Bennett, McRobb and Farmer 2002 40 References n Booch, Rumbaugh and Jacobson (1999) n Rumbaugh, Jacobson and Booch (1999) (For full bibliographic details, see Bennett, McRobb and Farmer)

41 03/12/2001 © Bennett, McRobb and Farmer 2002 41 Development Process Based on Chapter 5 of Bennett, McRobb and Farmer: Object Oriented Systems Analysis and Design Using UML, (2 nd Edition), McGraw Hill, 2002.

42 © Bennett, McRobb and Farmer 2002 42 In This Lecture You Will Learn: n About the Unified Software Develop- ment Process n How phases relate to workflows in an iterative life cycle n An approach to system development n Major activities in the development process

43 © Bennett, McRobb and Farmer 2002 43 Unified Software Development Process n Developed by the team that created UML n Embodies best practice in system development n Adopts an iterative approach with four main phases n Different tasks are captured in a series of workflows

44 © Bennett, McRobb and Farmer 2002 44 Best Practice n Iterative and incremental development n Component-based development n Requirements-driven development n Configurability n Architecture-centrism n Visual modelling techniques

45 © Bennett, McRobb and Farmer 2002 45 Four Phases n Inception n Elaboration n Construction n Transition

46 © Bennett, McRobb and Farmer 2002 46 Phases, Workflows and Iterations n Within each phase activities are grouped into workflows n The balance of effort spent in each workflow varies from phase to phase n Within phases there may be more than one iteration

47 © Bennett, McRobb and Farmer 2002 47 Size of square relative to time spent on workflowh InceptionElaborationConstruction Transition Project Phases 12 3 45678 Iterations within each phase Requirements Analysis Design Implementation Test Workflows

48 © Bennett, McRobb and Farmer 2002 48 Difference from Waterfall Life Cycle n In a waterfall life cycle project the phases and the workflows are linked together n In the Requirements phase, only Requirements workflow activities are carried out n All Requirements activity should be completed before work starts on Analysis n In an iterative life cycle project it is recognised that some Requirements work will be happening alongside Analysis work

49 © Bennett, McRobb and Farmer 2002 49 Requirements Analysis Design Implementation Test Requirements Analysis Design Implementation Test

50 © Bennett, McRobb and Farmer 2002 50 Major Activities of the Development Process ActivityTechniquesKey Deliverables Requirements Capture and Modelling Requirements Elicitation Use Case Modelling Prototyping Use Case Model Requirements List Prototypes Glossary

51 © Bennett, McRobb and Farmer 2002 51 Major Activities of the Development Process ActivityTechniquesKey Deliverables Requirements Analysis Collaboration Diagrams Class and Object Models Analysis Modelling Analysis Models

52 © Bennett, McRobb and Farmer 2002 52 Major Activities of the Development Process ActivityTechniquesKey Deliverables System Design Deployment Modelling Component Modelling Package Modelling Architectural Modelling Overview Design and Implementation Architecture

53 © Bennett, McRobb and Farmer 2002 53 Major Activities of the Development Process ActivityTechniquesKey Deliverables Class DesignClass and Object Modelling Interaction Modelling State Modelling Design Patterns Design Models

54 © Bennett, McRobb and Farmer 2002 54 Major Activities of the Development Process ActivityTechniquesKey Deliverables User Interface Design Class and Object Modelling Interaction Modelling State Modelling Package Modelling Prototyping Design Patterns Design Models with Interface Specification

55 © Bennett, McRobb and Farmer 2002 55 Major Activities of the Development Process ActivityTechniquesKey Deliverables Data Management Design Class and Object Modelling Interaction Modelling State Modelling Package Modelling Design Patterns Design Models with Database Specification

56 © Bennett, McRobb and Farmer 2002 56 Major Activities of the Development Process ActivityTechniquesKey Deliverables ConstructionProgramming Component Re- use Database DDL Programming Idioms Constructed System Documentation

57 © Bennett, McRobb and Farmer 2002 57 Major Activities of the Development Process ActivityTechniquesKey Deliverables TestingProgramming Test Procedures Tested System

58 © Bennett, McRobb and Farmer 2002 58 Major Activities of the Development Process ActivityTechniquesKey Deliverables ImplementationInstalled System

59 © Bennett, McRobb and Farmer 2002 59 Summary In this lecture you have learned about: n The Unified Software Development Process n How phases relate to workflows in an iterative life cycle n An approach to system development n Major activities in the development process

60 © Bennett, McRobb and Farmer 2002 60 References n Jacobson, Booch and Rumbaugh (1999) n Kruchten (1999) n Chapter 22 of Bennett, McRobb and Farmer includes more detail about the Unified Process (For full bibliographic details, see Bennett, McRobb and Farmer)


Download ppt "03/12/2001 © Bennett, McRobb and Farmer 2002 1 Modelling Concepts Based on Chapter 5 of Bennett, McRobb and Farmer: Object Oriented Systems Analysis and."

Similar presentations


Ads by Google