Upload
clifford-hall
View
215
Download
0
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 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 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 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