Title: CIF 102 FIF 102 Session 3 Modelling the system
1CIF 102 / FIF 102 Session 3Modelling the system
2Outcomes
- To understand how to create a conceptual model of
the system - To understand how to capture the data required
- To have a basic understanding of and be able to
apply some of the techniques used in Soft Systems
Analysis and design methodology (SSADM)
3Introduction
- SSADM
- What is a Data Flow Diagram?
- Why do we use DFDs?
- The Elements
- Conventions
- Decomposition and Abstraction
- Process and Data Stores
- External Entity
- Data Flow
- The Levels
- Rules
4S.S.A.D.M.
- S.S.A.D.M. - Structured Systems Analysis and
Design Method - Uses different techniques to model a system
- Data Flow Diagrams
- Entity Relational Model (Logical Data Stores)
- Normalisation
5What is a Data Flow Diagram?
- Known as DFDs
- A way to model a real world situation
- They model the real world situation which aids
discussion and clarity amongst users, analysts
and designers.
6Why do we use DFDs?
- It is a method used to transform the physical
view and convert it into a logical view. - The physical view - all documents involved
- The logical view - the data they contain
- All models such as SSADM aim to communicate with
the user the analysts understanding of the scope
of the required system
7Constructing DFDs
- The Document Flow Diagram
- The Context Diagram
- Draw the external entities and data stores
- Level 1 Physical DFD
- Example Flatmates media system Physical DFD
8Levelling
- Levels determine the amount of information shown
- Context diagrams show environment
- Each level shows more info. than the last
- DFDs are expanded or decomposed into levels.
- Separating each process into sub processes
- Uncovers more and more detail - we will be
dealing with level 1 only
9Conventions
- Balancing
- Process at lower level should have identical data
flows if they flow out of a process - Modelling Data Stores
- Only use DATA STORES used within this process on
the diagram - Numbering
- 1 - 1.1 - 1.1.1
- 1.2 - 1.2.1
- Labels
- Should carry as much meaning as possible
10The Elements
- The four main elements of DFDs notation
- Data Flows, with a label to indicate what data is
flowing - Processes, that handle the data
- Data stores, within the system (diary, filing
cabinet or computer file) - External entities, outside sources of data
11Process and Data Stores
- A process is made up of Data Stores
Destination (Place or Name)
Process Number
Process description Should be descriptive,
starting with a verb.
Can be M for manual or D for computer base data
stores.
Name of Store
M1
12External Entity
- Is anything outside the system that is of
interest to the system. Can be a person, a
company or another system.
Customer a
Outside entity shows the Name and a lowercase
alpha character is used to uniquely identify it.
Customer a
If an outside entity is repeated for the purpose
of neat layout a line is added across the top.
13Data Flow
- Is shown by a line with an arrowhead, indicating
the direction of the flow of data. - Each data flow should be named to indicate what
data is being passed. - Nouns or adjectives only no verbs are permitted.
14The Levels
- Context - Overview - contains only one process
- Level 1 - Utilises all four elements
- Level 2 - A breakdown of a level 1 process
- Level 3 - A breakdown of a level 2 process
- There is no rule as to how many levels of DFD
that can be used.
15Rules
- It is a method for Identifying major processes
- Sequence not important - getting the Process
correct is - Context or Level 0 - Identifies the system/
boundary/External Links - Level 1 - Overview of function
- Level 2 - Breakdown to Understand
-
16Constructing DFDs
- Draw a document flow diagram of the current
system - Draw a system boundary around the parts of
interest for your database - Draw a context diagram
- Identify processes (transactions) in the system
- Complete the Level 1 current physical DFD
17The context diagram
- Examine the diagram to see which agencies are
going to contain data stored in your system - Put a box around this part- this is the context
diagram - There are other entities-we need to separate
those external to the system - The entities in the bubbles are external to the
system we are going to design and data about them
will not be stored by the system. The flatmates
are all owners-what are the entities in the
flatmates (owner) system?
Store
Friend
Owner
Maintains book and DVD data
18Activity
- From this description of part of the current
system, draw the external entities, process
diagrams and datastores - --------------------------------------------------
--------------------------------- - At present when each flatmate buys a book or DVD,
they store the receipt in a filing cabinet. When
a flatmate borrows a book or DVD she/he notes the
name on a post-it. When someone borrows a book or
DVD she/he notes the name and item on a post-it. - The flatmates would like a system for a computer
that will allow them to keep track of items- who
a particular book or DVD belongs to and who has
borrowed which item.
19Draw the external entities and the datastores
Owner
1
Friend
Sales receipts
M1
Maintains records of bought items
Owner
2
Store
Keeps track of items lent to and borrowed from
friends.
Collection of post-it notes
M2
20Connect the external entities and the data stores
Sales record data
Owner
receipt
1
Store a
M1
Sales receipts
Maintains records of bought items
Who owns what data
Owner
2
Verbal request
Loan data
Keeps track of items lent to and borrowed from
other flatmates
Friend b
Collection of post-it notes
M2
Returned item data
M1 and M2 are manual storage systems you can
also have digital storage denoted by D1 etc.
These data stores will eventually be the tables
in your database. The replacement logical,
electronic database will have entities that
relate to these tables. The external entities are
not represented in the system friend could be
someone not a flatmate.
21What are the links between the DFDs and the
Entity Relation Diagram?
- Look at the ERD from last session
Owner
owns
owns
Is owned by
is owned by
DVD
DVD
Book
is lent to
is lent to
Borrowed by
Borrowed by
DVDs lent out
Books lent out
22Linking the DFDs to the ERD
- The post-it notes and sales receipts become data
entered into the DVD and Book tables. - The process diagrams become processes within the
system - so for example Process 2 maintain records will be
the process for entering data into the books or
DVDs lent out tables.
23Summary of logical database design
methodology(adapted from the Chapter 17,the
PerfectPets worked example in Database Solutions,
Connolly and Begg, 2005)
- Identify entities
- Identify relationships
- Identify attributes for each entity
- Identify data types for each attribute
- Determine the primary keys for each entity
- Check the model supports the transaction
requirements (processes in the system). - Create tables
- Check tables support transactions
24Design first!
- The last slide showed guidelines for working on a
new database like your group assignment. You can
hack together a set of linked tables without
going through this process but then find that
after a lot of effort something major has to be
changed and you may have lost a lot of time. - The moral is design it properly from the start.
- We did not go through the process for the
flatmates system because you needed to quickly
learn the basics of using the Microsoft Access
interface. - You may be able to think of better ways to
construct the logical data model for the
flatmates system.
25Further reading and practical work
- Tutorial session 5 from the booklet.
- You can read the PerfectPets case study in
Connolly and Begg for a detailed step-by-step
example of how to design a database - Note that the diagrams use the 1 notation for
one to many relationships and similar notation
for other types of relationships. This is because
it has been constructed using a proprietary
design package. - You can use either notation for your assignment.