IFS231 Unit5-SystemsAnalysis
IFS231 Unit5-SystemsAnalysis
Systems analysis
Orientation for online teaching and learning programme
Agenda
1. Introduction to
systems analysis
2. Introduction to UML Welcome to IFS231 – 2021
3. Databases
2. Introduction to UML
3. Databases
Where are we?
• Describe systems analysis and relate it to the concepts we have learnt so far in this
module.
• Use (a) systems analysis approach(es) to solve business systems problems.
• Identify and describe the building blocks of information systems.
• Elicit and illustrate class diagrams and entity relationship diagrams.
SYSTEMS ANALYSIS AND DESIGN METHODS 6th Edition Whitten Bentley Dittman
Repository
Model-Driven Methods
Structured analysis – a model-driven, process-centered technique used to either analyze
an existing system, define business requirements for a new system, or both. The models
are pictures that illustrate the system’s component pieces: processes and their associated
inputs, outputs, and files.
Object – the encapsulation of the data (called properties) that describes a discrete person,
object, place, event, or thing, with all the processes (called methods) that are allowed to use
or update the data and properties. The only way to access or update the object’s data is to
use the object’s predefined processes.
2. Introduction to UML
3. Databases
Introducing UML
Sequence and
collaboration
diagrams are
interchangeable
Statechart diagram
https://www.conceptdraw.com/helpdesk/how-to-draw-bank-uml-diagram
https://en.wikipedia.org/wiki/File:BankAccount1.svg
https://www.sparxsystems.eu/fileadmin/user_upload/Screenshots/Buch_figures/en/Images/Fig_53_Simple_example_of_a_sequence_diagram.png
https://www.researchgate.net/profile/Durga-Mohapatra-3/publication/220299153/figure/fig3/AS:667587973238791@1536176784476/Statechart-Diagram-of-ATM_W640.jpg
Overall view of UML Diagrams (2)
1
Statecharts Diagrams Use Cases diagrams
Collaboration diagram
Dynamic modelling, Functional modelling
Dynamic modelling,
focusing on an object.
focusing on spatial
Activities done in each
relationships between
state correspond to
objects
operations
Class Diagrams
Static modelling Sequence Diagrams
System’s structure Dynamic modelling of
scenarios
Objects Diagrams
Static modelling
Context
Activity Diagrams
Dynamic modelling,
focusing on an activity
Use Case and Class Diagrams
Names
Our main concern for this module
Attributes
Responsibilities, Anything
that a class knows or does e.g.
withdraws money, checks
balance
Class Names
ClassName The name of the class is the only required tag in the graphical representation of a class.
e.g. Appears in the top-most compartment.
Customer
Attributes e.g. An attribute is a named property of a class that describes the object being modeled. In
+ CustomerId: int the class diagram, attributes appear in the second compartment just below the name-
+ Name: Char compartment. Attributes can be:
+ PhoneNumber: String + public
# protected
Operations e.g. - private
+ DepositMoney(): int / derived
+ OpenAccount(): string
+ ClossAccount(): boolean Operations describe the class behavior and appear in the third compartment.
+ ApplyMortgage(): string
--
Software Design (UML)
Drawing classes
Relationships
Or
A Student has one or more Instructors
Student Instructor
1..*
Associations
membership Or
Student Memberships
Team
1..* 1..*
member of
1..* 1..* Or
Student Team Dual associations
1 president of 1..*
Associations
CourseSchedule
Associations can also be objects themselves,
Course called link classes or an association classes.
add(c : Course)
remove(c : Course)
next
A class can have a self association.
LinkedListNode
previous
Associations: Aggregations and associations
Scrollbar
A composition indicates a strong 1 1
ownership and coincident lifetime of
parts by the whole (i.e., they live and die Window Titlebar
1 1
as a whole). Compositions are denoted
by a filled-diamond adornment on the Menu
association. 1 1 .. *
Dependencies
Student
Student Employee
TeachingAssistant
Back to our Mortgage Application
Unit 5 lecture topics
1. Introduction to systems analysis
2. Introduction to UML
3. Databases
Databases (1)
• Database system provides a framework in which strict procedures and standards are
enforced
• Role of human changes from programming to managing organization’s resources
• Database system enables more sophisticated use of the data
• A database serves many applications by centralizing data and controlling redundant
data
• Data in a database is logically organised by using associations.
• Associations, also known as relationships are used to relate (connect) data between
tables and are needed to retrieve information
34
Databases (2)
• Data structures created within the database and their relationships determine
effectiveness
• A DBMS eliminates most of file system’s problems
• Current generation stores data structures & relationships between structures &
access paths
• Takes care of defining, storing, managing all access paths and components
Customer table
10 Jane Wilson London Road Oxford
Primary 11 John Smith Quai d’Orsay Paris
key 12 Jane Wilson London Road Oxford
13 Desmond Paton Marshall Street Johannesburg
14 Susan Haynes Baker Street London
Foreign key
Order table
101 Coat rack R15 Silver 11
102 White board R23 White 12
103 Computer desk R150 Brown 13
104 Filing cabinet R50 Gray 14
TB-42
Non-relational databases
The answer:
Why socialone
would media involves
want many social
to store different
file types, and the information is not easily
media data in a non-relational database?
organized into tables of columns and rows.
Database fundamentals (1)
A field/attribute
45
Fields (attributes)
46
Database fundamentals (3)
47
Entities / Classes
48
Database design (1)
• Database design focuses on design of database structure used for end-user data
• A detailed, logical representation of the entities, associations and data elements for
an organization or business
• Used to show associations between entities
• Important when designing complex databases.
• A DBMS is the interface between the user and the database AND between
applications and the physical data files in the database
• DBMS manage structure, control access and enables data to be shared
• Separates the logical view from the physical view of data
• A DBMS includes all the other tools that make it easier to work with (manage) your
data, e.g. a query language, a way of defining structure, methods of indexing the
data for faster access, etc.
• DBMS solves problems caused by traditional file environment
• Reduces redundancy, eliminates inconsistency, uncouples programs and data,
enables organisations to centrally manage data and data security
51
Advantages of the DBMS
Increased costs
Management complexity
Vendor dependence
Database
• Current DBMS accept end-user requests via
communication multiple different network environments
interfaces
_no
_id
_code
_num
_number
Step 6. Primary keys for our example
• Identify or create a primary key for each class, you can use one
of the following indicators:
Employee Employee
Number
Supervisor Supervisor
Number
Project Project
Number
Step 8. Draw Fully-Attributed Class Diagram
• If you introduced new classes and attributes in step 5, you
need to redraw the Class diagram.
• When you do so, try to rearrange it so no lines cross by putting
the classes with the most relationships in the middle.
Complete Fully-Attributed Class
Diagram
Step 9. Check Results
• Look at your diagram from the point of view of a system owner
or user.
• Is everything clear?
• Check through the Multiplicity pairs. Also, look over the list of
attributes associated with each class to see if anything has
been omitted.
Videos
• https://www.youtube.com/watch?v=FR4QIeZaPeM
• https://www.youtube.com/watch?v=NvrpuBAMddw
• https://www.youtube.com/watch?v=eXiCza050ug
• Access: https://www.youtube.com/watch?v=PBhftKTmdHI (4
parts)