0% found this document useful (0 votes)
211 views21 pages

UFCEPM-15-M Object-Oriented Design and Programming: Jin Sa

This document provides an introduction to an object-oriented design and programming module. It outlines the aims of the module, which are to understand object-oriented concepts, use UML for analysis and design, and implement designs in Java. It describes key topics that will be covered like objects, classes, relationships, inheritance, and GUI programming. Schedules and readings are provided. Common UML diagrams like use case diagrams, class diagrams, and sequence diagrams are introduced along with their notations. In-class exercises are mentioned, like producing a use case diagram for a cinema case study and getting familiar with the NetBeans IDE.
Copyright
© Attribution Non-Commercial (BY-NC)
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPT, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
211 views21 pages

UFCEPM-15-M Object-Oriented Design and Programming: Jin Sa

This document provides an introduction to an object-oriented design and programming module. It outlines the aims of the module, which are to understand object-oriented concepts, use UML for analysis and design, and implement designs in Java. It describes key topics that will be covered like objects, classes, relationships, inheritance, and GUI programming. Schedules and readings are provided. Common UML diagrams like use case diagrams, class diagrams, and sequence diagrams are introduced along with their notations. In-class exercises are mentioned, like producing a use case diagram for a cinema case study and getting familiar with the NetBeans IDE.
Copyright
© Attribution Non-Commercial (BY-NC)
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPT, PDF, TXT or read online on Scribd
You are on page 1/ 21

UFCEPM-15-M Object-oriented

Design and Programming


Jin Sa
• Start NetBeans (Start  Programming)
• Login to Blackboard
Unit1: Object-oriented design and
programming
Introduction and Use cases
Jin Sa
Aims of the module
• Gain an understanding of object-oriented
concepts: analyse, design and implement
systems.
• Be able to use UML to analyse and design an
object-oriented system.
• Use a typical object-oriented programming
language (e.g. Java) to implement an object-
oriented design
Useful Reading
• “UML Distilled: A Brief Guide to the Standard
Object Modelling Language (Object Technology
S.)”, by Martin Fowler and Kendall Scott, ISBN
number is: 0321193687.
• “Introduction to Java Programming –
Comprehensive version, 6/e” (or 7/e) by Daniel
Liang
• “Java Software Solution” by Lewis and Loftus
• Course notes
• Well known website
Content and schedule
• Unit 1 : Object-oriented design: introduction and use cases
• Unit 2: Object-oriented programming: getting started with Java
• Unit 3: Object-oriented design: objects and classes
• Unit 4: Object-oriented design: class relationship
• Unit 5: Assignment element 1
• Unit 6: Object-oriented programming: objects and classes
• Unit 7: Object-oriented design: interaction modelling
• Unit 8: Object-oriented design and programming: inheritance and polymorphism
• Unit 9: Object-oriented design and programming: abstract classes and interfaces
• Unit 10: Assignment element 2
• Unit 11: Object-oriented programming: graphic user interface (GUI)
• Unit 12: Object-oriented programming: event-driven programming
• January Exam
Object-orientation
• What is an object?
– Knows something: data
– Has a behaviour or does something: function
• Objects make up systems
Object-orientation lifecycle - simplified
• Use cases capture system functionalities
• Class model, interaction model and
state/activity models capture the logical
design of the system
• Use cases bridges the gap between
requirement documents and the logical design
• Using the logical design, we create physical
implementation using a specific language such
as Java
Design is art!
• There are many ways to achieve the same end
result.
• Design is opinionated.
• Design is subject to fashion!
The important things are:
• Rationale and justification
• Reflection
UML
• “The Unified Modelling Language (UML) is a
language for specifying, visualizing,
constructing, and documenting the artefacts
of a software-intensive system.” [UML
Specification 2.0]
• Reference:
See student activity 1.2 in unit 1. (in own time)
UML Diagrams
• Two types: Structure and Behaviour
• Structure: static view , not about order of
interaction, e.g. class diagram
• Behaviour: dynamic behaviour,
– e.g. use case diagram illustrate how users interact
with the system
– e.g. sequence diagram focusing on interaction
between objects and the sequence of these
interaction
Diagram notations
Use case diagram Class diagram
Diagram notations (2)
• Sequence diagram
In class exercises
• Read the case study in Section E – UweFlix
Cinema
– Through out this module, you maybe asked to
design and implement various aspects of this case
study
Use Cases and Actor
• Use case is “… a means for specifying required
usages of a system” [UML spec. v2.0].
• Software designer
– maps groups of related scenarios to a series of use
cases (captures the functional requirements)
– establishes who (actors) interact with the use cases,
and which use cases work with each other
• “An actor specifies a role played by a user or any
other system that interacts with the subject.”
[UML spec. v2.0]
Notation in UML
Content of Use Case
• A textual narrative that describes the functionality or
requirements that the use case represents.
• For example, a use case that represented the process
of buying an item would be given a name like
“Purchase Item”. The contents would be a description
describing of the process of purchasing an item.
• This description normally describes a series of
interactions between the system and the actor. This
process normally yields a result that is of value to the
actor.
Example of a Use Case Description
Buy a Product (Taken from UML Distilled p101)
 
Main Success Scenario:
1. Customer browses catalogue and selects item to buy.
2. Customer goes to the check out.
3. Customer fills in shipping information
4. System presents full pricing information
5. Customer fills in credit card information
6. system authorizes purchase
7. System confirms sale
8. System sends confirming email to customer
Example of a Use Case Description (2)
Extensions
3a: Customer is a regular customer
.1 System displays current shipping
information
.2 Customer may accept or override
6a: System fails to authorize credit purchases
.1 Customer may re-enter credit card
information or may cancel
In Class exercise
• Refer to the course notes section F student
activity 1.4
• Produce a Use case diagram for UWEFlix.
• Discussion about the Use Cases
Getting Familiar with NetBeans
• Refer to the course notes on this topic:
Section G. Follow the activities set in the
course notes.
• Do student activity 1.5

You might also like