Professional Documents
Culture Documents
and Design
Chapter 9
Structuring System Data Requirements
9-2
9-3
9-4
9-5
Sample Conceptual
Data Model
9-6
Entity-Relationship Modeling
Data entities
Relationships
Attributes
9-7
Attribute:
named
property or
characteristic
of an entity
(e.g. a
column or a
field in a
table)
ERD Example
Entities?
_________________________________
Relationship?
_________________________
Attributes?
_________________________
9-9
Identifier Attributes
Candidate key
Identifier
Next Slide
Identifier
Identifier Attributes
(cont.)
Employee_Name
Employee_ID
EMPLOYEE
Identifier attribute showing
each employee has a unique
ID (underlined).
9-12
Primary
key
A Sample Table
Entity or
table name
Attributes
(columns
or fields)
Entity
instances
(rows or
records)
Entity
Field or attribute
Column in a table
Characteristic of an entity
Primary key
Record
Row in a table
Collection of related data fields
9-14
Degree of Relationship
Degree: number of entity types that participate in a
relationship
Three cases
9-15
1:1
1:M
9-16
M:M
Cardinality
Count or number of instances of entity B that can or
must be associated with each instance of entity A
1:1
or
1:M
or
M:M
Minimum Cardinality
Maximum Cardinality
9-17
Cardinality Symbols
vertical hash mark
oval
9-18
Associative Entities
An entity type that associates the instances of one or
more entity types and contains attributes that are
peculiar to the relationship between those entity
instances.
An associative entity is:
An entity
A relationship
as an associative entity
9-23
The diamond is
included within the
entity rectangle as a
reminder that the entity
was derived from the
relationship.
Ternary relationship
as an associative entity
Identifier:
Shipment_ID
9-24
Supertype
Subtype
Example
9-25
Total specialization
an entity instance of the supertype must be an
instance of one of the subtypes
Partial specialization
an entity instance of the supertype may or may not be
an instance of one of the subtypes
Total specialization is shown on the ERD by a double
line from the supertype to the circle.
Partial specialization is shown on the ERD by a single
line from the supertype to the circle.
9-26
9-27
Supertypes/
Subtypes
9-28
Which attributes
are relevant for
PERSON, and
only for
STUDENT (i.e.
inheritance)?
Previous Slide
Universal
Applicable to nearly any business or organization, e.g.
Industry-specific
Benefits
9-30
Packaged data
models provide
generic models
that can be
customized for a
particular
organizations
business rules
9-31
SDLC
Design Phase:
Selection of a
solution and
specification of
hardware, software,
etc. for that solution
9-33
9-34
9-35
9-36
Interface Methods
Interface: the method by which a user interacts
with IS, including both software and hardware
Common interaction methods
Command-line
Menu
Form
Object-based (GUI)
Natural language (speech-recognition)
Multitouch and wearable
Augmented reality
Gesture-recognition
Holographic
9-37
Command-line Interaction
9-38
Menu Interaction
9-39
Drop-down menu
9-40
Form Interaction
9-41
9-42
9-43
Speech-recognition
Multitouch
Wearable interface
OmniTouch
Demo (1st minute):
http://www.youtube.com/watch?v=Pz17lbjOFn8
Augmented reality
http://www.youtube.com/watch?v=9c6W4CCU9M4&feature=player_embedded
9-45
Gesture-recognition
Holographic
Microsoft HoloLens
https://www.youtube.com/watch?v=Qm2gnnyyvEg
9-46
9-47
Dialogue Diagramming
A formal method for designing and representing humancomputer dialogues using box and line diagrams
9-48
Dialogue
diagrams
depict the
sequence,
selection
(conditional
branching),
and iteration
(repetition of
dialogues).
9-49
9-50
Design
in
Action
Googles homepage
Apple
9-51
Demo: http://www.objectifiedfilm.com/objectified-trailer/
9-53
Deliverable
9-54
Ambiguous?
What is the product?
Information about the timing of the messages is not
clear.
Requirement itself is incomplete
Description lacks information necessary for the
9-55
1. Status Messages
9-56
Characteristics of Quality
Requirement Statements
Correct
accurately describe functionality to develop
Feasible
possible within time and resource constraints
Necessary
something the users really need
Prioritized: ranked based on level of importance
Unambiguous: clear to anyone who reads the description
Verifiable: possible to determine if requirement has been
met
9-57
Interface requirements
User/hardware/software/communication interfaces
System features
Nonfunctional requirements
Other requirements
9-58
Supporting
diagrams and models
Evolutionary prototyping
Throwaway prototyping
9-59
Prototyping
Prototyping is the construction of a model of a system
Practice is borrowed from engineering, whereby there
is construction of scale models of objects to be built
Prototyping allows developers and users to test
certain aspects of the overall design, checking
functionality, appearance, and usability
Iterative process
Two kinds
Evolutionary prototyping: iterations result in refinements
and changes based on design tests of model; prototype
then serves as the basis for the production system itself
Throwaway prototyping: prototype serves only as a
model, which is used as a reference for the construction of
the actual system and is then discarded after it has been
used
9-61
Evolutionary Prototyping
Begin by modeling parts of the target system.
If successful, evolve remaining system from prototype.
Prototype becomes actual production system.
Often, difficult parts of the system are prototyped first.
Exception handling must be added to prototype.
Prototypes only handle typical cases so exceptional
cases have to added to the prototype as it is converted
to the production system
9-62
Throwaway Prototyping
Agile Methodologies
Requirements functional design code
Design specifications come from code instead
of verbal text descriptions
e.g. eXtreme Programming
Pair programming
Teams of two programmers who continuously code and
test
Two techniques:
Simple design: uncomplicated program component
to solve current (not anticipated) problem
Refactoring: make a program simpler after new
features have been added (since additional features
complicate the existing system and its code)
9-65
Traditional
Size
Smaller
Larger
Criticality
Dynamism
High dynamism
High stability
Personnel
Experts needed
throughout
Experts only
needed earlier
Culture
High degree of
freedom
Well-established
procedures
9-66
9-68
9-69
Coding
Testing
Installation
Documentation
Training
Support
Testing
Installation
9-70
incremental fashion
Test cases
9-71
Beta testing
9-72
Security testing
Stress testing
Performance testing
9-73
Installation
17.74
9-74
Direct Installation
Parallel Installation
Single-location installation (or pilot)
Phased Installation
Turning off the old system when the new one is turned on
9-75
or pilot installation
User Documentation
9-79
9-80
9-81
By far
9-82the most common training method is informal, via
interaction with an in-house expert on the software
Help desk
One approach is through automation
9-83
Project Close-Down
Evaluate team
9-84
Formal signoff
9-86
9-87
Corrective maintenance
Adaptive maintenance
9-89
Preventive maintenance
9-90
Maintenance Tasks
Backup procedures
Monitor system performance
Identify and solve problems
Update software and hardware to meet
changing needs
etc.
9-92
9-93
Separate
Maintenance group consists of different personnel than
development group.
Combined
Developers also maintain systems.
Functional
Maintenance personnel work within the functional
business unit.
9-94
Advantages
Disadvantages
Separate
Improved system
Ignorance of critical
and documentation undocumented
quality
information
Combined
Functional
Personnel have
vested interest
9-95
Number of failures
Time between each failure
Type of failure
9-97
9-98
Configuration Management
The process of assuring that only authorized
changes are made to the system
Baseline modules
System librarian
9-99