1 SWE 205 - Introduction to Software Engineering Lecture 13 – System Modeling.
-
date post
19-Dec-2015 -
Category
Documents
-
view
219 -
download
0
Transcript of 1 SWE 205 - Introduction to Software Engineering Lecture 13 – System Modeling.
2
Lecture Objectives Data Models
Entity Relationship Model Data Dictionaries
Object Models Inheritance Model
3
Semantic data models Used to describe the logical structure of data
processed by the system. An entity-relation-attribute model sets out the
entities in the system, the relationships between these entities and the entity attributes
4
Semantic data models Widely used in database design. Can
readily be implemented using relational databases.
No specific notation provided in the UML but objects and associations can be used.
5
Library semantic modelSource
titlepublisherissuedatepages
1
Article
titleauthorspdf filefee
has-links
1
Buyer
nameaddresse-mailbilling info
places
fee-payable-to
n
1
n
published-in
delivers in
m n
1
1
1
CopyrightAgencynameaddress
Country
copyright formtax rate
1
Order
order numbertotal paymentdatetax status
in
1
6
Data dictionaries Data dictionaries are lists of all of the names
used in the system models. Descriptions of the entities, relationships and
attributes are also included.
7
Data dictionaries - Advantages
Support name management and avoid duplication; The names of the data entities and
relationships should be used consistently and should not clash.
8
Data dictionaries - Advantages
Store of organisational knowledge linking analysis, design and
implementation; Thus, all information about an entity is
in one place.
10
Object models Object models describe the system in terms
of object classes and their associations. An object class is an abstraction over a set of
objects with common attributes and the services (operations) provided by each object.
11
Object models Natural ways of reflecting the real-world
entities manipulated by the system More abstract entities are more difficult
to model using this approach For example, a software system may not
necessary have simple interface consisting of independent attributes and operations.
12
Object models Object class identification is recognised
as a difficult process requiring a deep understanding of the application domain.
Object classes reflecting domain entities are reusable across systems
13
Object models and the UML The UML is a standard representation
devised by the developers of widely used object-oriented analysis and design methods.
It has become an effective standard for object-oriented modelling.
14
Object models and the UML Notation
Object classes are rectangles with the name at the top, attributes in the middle section and operations in the bottom section;
Relationships between object classes (known as associations) are shown as lines linking objects;
Inheritance is referred to as generalisation and is shown ‘upwards’ rather than ‘downwards’ in a hierarchy.
15
Library class hierarchyCatalogue numberAcquisition dateCostTypeStatusNumber of copies
Library item
Acquire ()Catalogue ()Dispose ()Issue ()Return ()
AuthorEditionPublication dateISBN
Book
YearIssue
Magazine
DirectorDate of releaseDistributor
Film
VersionPlatform
Computerprogram
TitlePublisher
Published item
TitleMedium
Recorded item
16
User class hierarchyNameAddressPhoneRegistration #
Library user
Register ()De-register ()
Affiliation
Reader
Items on loanMax. loans
Borrower
DepartmentDepartment phone
Staff
Major subjectHome address
Student
17
Object models Various object models may be produced
Inheritance models; Aggregation models; Interaction models.