26
IS0514 Slide 1 IS0514 Lecture - Week 1 (Semester 2) Business Systems Development Tools and Techniques

IS0514Slide 1 IS0514 Lecture - Week 1 (Semester 2) Business Systems Development Tools and Techniques

Embed Size (px)

Citation preview

IS0514 Slide 1

IS0514 Lecture - Week 1(Semester 2)

Business Systems Development Tools and Techniques

IS0514 Slide 2

Learning Outcomes6. Discuss an object-oriented development lifecycle and the role

of UML techniques within it.7. Explain fundamental principles of object-orientation as

applied during analysis and design.8. Specify system requirements in analysis by means of use

cases and use case diagrams.9. Identify classes in a domain and allocate responsibilities to

them.10. Interpret a realistic domain model in UML class diagram

notation.11. Use UML class diagram notation for simple modelling tasks

such as producing a simple class diagram of domain concepts or extending/changing existing models.

IS0514 Slide 3

Business Systems Development Tools and Techniques

• Semester 2– Unified Modelling Language (UML)

– Unified Process

– Object Orientation

– Use case Diagrams

– Class Diagrams

– CRC Cards

IS0514 Slide 4

Assignments

• One assignment– Set Week 7

– Due 12/05/2008

• Object Oriented Modelling Exercise

IS0514 Slide 5

Module Team

• Module Tutor– Paula Brumby

• Team– Dr Akhtar Ali Room PB101 Ext 3521

• Please contact us at the seminar / lecture in the first instance

• Please see module tutor for admin issues

IS0514 Slide 6

Today's Lecture

• What is modelling?• Why model?• Introduction to UML.

IS0514 Slide 7

What is modelling?

• Information System Development is too complex to carry out in your head

• Analysis and design produce models• In Information System Development, models are:

– Abstract / None physical

• Software in non-tangible

– Visible

• You wish to visualise non-tangible items

IS0514 Slide 8

What is a model?

Some definitions:• A hypothetical description of a complex entity or

process • A simplified representation or description of a

system under investigation• The act of representing something • A representation of some aspect of external reality in

a program

IS0514 Slide 9

Exercise 1

• In groups of 3-4 spend 5 minutes discussing and identifying – Diagrams you have come across

– What purpose they serve

– Are they sufficient in themselves?

• At the end of that time you will be asked to share your thoughts with the rest of the group.

IS0514 Slide 10

Exercise 1 – Possible Suggestions

IS0514 Slide 11

Exercise 1

• Also need– Data– Documentation

• Street signs• Material information / craft skill

– OK so how do I build this wall here?

• Organisation knowledge– What does a managing director do?

• Technical information– Is this in Java?– Is the database oracle or access?

IS0514 Slide 12

Aims of modelling

• Aims in modelling :1. helps visualise the system as it is, or as we want it to be

2. permits the specification of the structure and behaviour of the system

3. provides a template which guides construction of the system

4. documents the decisions that have been made

5. provides a common language for all stakeholders

6. facilitates clarity and understanding

IS0514 Slide 13

Principles of modelling• What is modelled affects:

– How problems are attacked?– How the solution is shaped?

• Every model may be expressed at different levels of – Detail – amount modelled– Precision – how much information supplied

• The best models are connected to reality• No single model is sufficient.

– non-trivial system is best approached through a small set of nearly independent models

– we need several model types representing different views

• Each model has different diagram(s) – we need several diagrams to model different views

IS0514 Slide 14

Object Oriented Modelling

• In systems, there are two main ways to approach modelling:– Structured – focuses on processing, data and time aspects – separate

but related decompositions of these

– Object Oriented – based on objects and classes

• object – a “thing” of interest, which has uniqueness, state and behaviour (i.e. processing & data)

• class – description of a group of objects

• We are looking at Object-oriented modelling in this module

IS0514 Slide 15

Why Model?• A model is a simplification of reality

– Choose details to represent

– Choose details to ignore

• A model can evolve as our understanding does

• A model can represent real and abstract things

• Creating models allow a system to be better understood

• A model can be used to communicate ideas

• The larger the system the more important the models

• A model can be used to simulate a real system

• A model is quicker and easier to build than a real system!

IS0514 Slide 16

Exercise 2

• In groups of 3-4 spend 5 minutes discussing models you have come across – What is the difference between a diagram and a model

• At the end of that time you will be asked to share your thoughts with the rest of the group.

IS0514 Slide 17

Exercise 2 - Answer

IS0514 Slide 18

Brief History of Modelling tools

• Up to late 1980s– Structured System Analysis and Design (SSADM) /

Yourdon / etc

– Focus upon processes and data

• Late 1980s-1997– Rise of Object Oriented Technologies

– Useful / disparate – need for standardisation

• 1995 – now– Unified Modelling Language (UML)

IS0514 Slide 19

Why UML?

• Best practice model– Consolidation of other languages (e.g., OMT, OOSE)

• Internationally accepted – ISO standard - ISO/IEC 19501

• UK government mandate– e-Government Interoperability Framework (e-GIF)

• Intuitive• Tool support• Widely Used

IS0514 Slide 20

Use of UML

• Surveys of development managers show– 20% of organisations use UML on all development

projects

– 59% of organisations use UML on some development projects

– 18% of organisations never use UML

– 3% of organisations have used UML in the past and have no plans to use it again

– (Skidmore S (2004))

IS0514 Slide 21

Introducing the Unified Modelling Language (UML)

• UML is a language for – visualising

• communication

• complexity

– specifying

• models which are precise, unambiguous and complete

– constructing

• maps to a programming language like C++, JAVA

– documentation

IS0514 Slide 22

Where UML is used?• banking and financial systems• telecommunications• transportation and distribution• defence and aerospace• retail• medical electronics• scientific systems• distributed web-based services• business modelling• government• computer industry

IS0514 Slide 23

Diagrams / Models

• In UML a model is a collection of diagrams which describe a system from different views

• Need to check– Consistency

– Completeness – show all that is required

– Simplicity of representation

– Hierarchical representation

• Different diagrams showing different amounts of detail

IS0514 Slide 24

UML in this module

• use case modelling – for requirements• identification/analysis of candidate objects• class diagrams – for specifying classes &

relationships• Class, Responsibility, Collaboration (CRC) cards –

for responsibilities & interactions

IS0514 Slide 25

This weeks reading

SUPPORTING READINGDennis A, Wixom B, and Tegarden D (2005) System

Analysis and Design with UML version 2 second edition, Wiley – Pages 29-35

Bennett S., McRobb, S. and Farmer, R. (2002) Object-Oriented Systems Analysis and Design using UML, 2nd Edition, McGraw-Hill – Chapter 5

CRaG Systems (2004) A UML Introduction Tutorial– Available at: http://www.cragsystems.co.uk/ITMUML/– Accessed 27/01/2008

Priestley M. (2003) Practical object-oriented design with UML, 2nd Edition, McGraw-Hill – Chapter 1

IS0514 Slide 26

Summary

• What is modelling• Why modelling• Introduction to UML

• Next Week– Best Practice Development Methodology