Anda di halaman 1dari 90

Module

System analysis and design


1. The objective of module:

Provide:
System Visions of Managers,
Users, Technicians
Basic knowledge of systems’ life
cycle
System analysis and design
techniques
Some analysis and design skills
and experiences
2. Module
“Requirements to learners”

Basic knowledge of system and


Information technology
Ability to understand and executive
the supporting tool of analysis and
design
Interest in analysis and design fields
3. System development
Life-cycle

The principal phases in the system


development:
•Investigation
•Analysis
•Design
•Implementation
Recommended percentage distribution:
•Investigation, Analysis, Design: 50%-60%
•Implementation: 40%-50%
4. Main contents of module:

Chapter 1: Introduction to Systems


1.1. Overview
1.2. System approach
1.3. Example
Chapter 2: Systems Analysis
2.1. Analysis of Structured System
2.2. Information analysis, data model
2.3. Strengthening of Information structure –
Relationship model
2.4. Completion of Information analysis
2.5. Summary of analysis process
4. (continue)

Chapter 3: System Design


3.1 The overall designing specifications
3.2 Structured design as process
3.3 User- Computer interface design
3.4 System monitoring design
3.5 Organizing the system’s components
3.6 Analysis of data usage and logical navigation
3.7 Design of databases
3.8 Example
References
Index
1.1. OVERVIEW

Definition of System

Participants to system development

System development life – cycle


Participants to system development

•User
•Management
•Auditors, quality assurance people, and
‘standards bearers”
•Systems analysts
•Systems designers
•Programmers
•Operations personnel
System development
life – cycle

•Initial investigation
•Feasibility study
•General design
•Detailed design
•Implementation
•System audit
1.2 System approach

System approach
The system's requirements
Users requirements
Technical requirements
Some principals Investigation methods
Survey report
System approach

The WaterFall Model


•Systems analysis;
•Systems design;
•Systems build and test;
•Systems introduction and transition;
•Maintenance of production status systems.
The Spiral Model
•Incremental approach to systems
development
•System divided into smaller sub-sets for
development and delivery.
•End-users’ functionality provided at
regular intervals, rather than at the end of
a waterfall development.
The system's requirements

Suitable with the general strategies


Supporting decision maker
Competition edge
Return on Investment
Supporting operational management
Improving information communication
Impacts of information products
Ability to implement more quickly and
better.
Users requirements
Easy access;
System must be:
• Solid and stable;
• Accurate information;
• Easy to maintain and restructure;
• Quick in identifying and correcting
mistakes;
Interface:
• Suitable with users’ working style of users;
• Stable;
• Easy to control data;
• Independent and flexible.
Technical requirements
Information technology equipment
must be
suitable with the volume of information
that is to
be processed;
Everyday information requires special
care;
Accuracy of information is important;
New system is required to resolve
issues that
current system fails to process due to
information
complexity
Popular issues:
Some principals Investigation methods

1. Survey methods: Interview


2. Observation methods:
•Official observation
•Unofficial observation
3. Questionnaire method: (complicated and
ineffective for inexperienced analyzers)
•Objectives and main contents
•Categories of data that will be used
•Data contents in each category.
Survey report

Main items:
•Objectives of the system;
•Inter-connection between related departments;
•Details of the current system;
•Future system and sketchy estimate of costs
and benefits;
•Advice;
•Time frame and plan for system development;
•General description (non-technical);
•Original document;
•Evaluation of current system in:
organizational structure, technology,
information system, users’ IT skills, policy
renovation...
Example
Library management system of Institute of
Information Technology (IOIT)
Survey main contents
•Relations between the current library management
system and other library management systems;
•Main jobs of the library management system;
•Necessary improvements expected in the new
computer system.
Interview questions:
•What are the main jobs of the library management
system?
•What is the function of each job?
•How are the jobs currently done?
•Who is responsible for them?
•What are the restraints and difficulties in each job?
•Whom does the library serve? and so on
2.1 Analysis of Structured
System

System analysis
Nature of analysis
Importance of analysis in system’s life cycle
Roles and requirement of system analysts
Analysis supporting tools
Functional diagram (FD)
Data flow diagram: describe the information
flow in the system
Main components of data flow diagram
2.1. (Continue)

Data dictionary
Process specification
Data flow diagrams in the example of library
management system
Entity relationship diagram (ERD)
Entity relationship diagrams in the example of
library management system
System analysis

Structural system analysis’ main characteristics:


Developed in “top – down” order;
Analyze the current system and new
requirements of users;
Define a format for the future system;
Major tools used in structural system
analysis:
•function diagram
•data flow diagram
•data dictionary
•process specification
•entity relationship diagram;
System Analysis (Continue)

•Acknowledge users’ role in different steps


of system development;
•Supported by advanced technology in both
hardware and software, this method is less
complicated
•Structural analysis together with prototype
method give ideas of the new system and
help make best use of both methods.
Nature of analysis

Main steps of system analysis process


Identify the operation of the existing system;
Understand what the existing system is doing;
Understand the need of the users;
Decide on what the new system should be doing;
Decide on how the new system will function.
Tool for analysis;
Importance of analysis in system’s life
cycle

Main phases:
•Survey
•Analysis
•Design
•Implementation
•System testing and approving
•Installation and maintenance.
Main subjects of system
users, mangers and technical experts
(including analysis, design and program
specialist...)
Roles and requirements of systems
analyst

System analysts’ roles

System analysts’ required

qualifications
System analysts’ roles

Archaeologist and scribe


Innovator
Mediator
Project leader
System analysts’ required qualifications

More than just the ability to draw flowchart and other


technical diagrams;
Skills to interview users, mediate disagreements;
Application knowledge to understand and appreciate the
user’s business;
Computer skills to understand the potential uses of
computer hardware and software in the user’s business;
Able to view a system from many different perspectives;
Able to partition it into levels of subsystems;
Able to think of a system in abstract terms as well as
physical terms.
Analysis supporting tools

Functioning diagram
Data flow diagram
Relationship diagram...
Analysts using models to:
Concentrate on important features of the
system, pay less attention to less important
ones;
Able to respond to changes or changes in
user’s requirements with low cost and risk;
Properly understand users’ environment
and write documents in the same way that
designers and programmers construct the
system.
Functional diagram (FD)

•Functional diagram is a process of division,


from a higher function to appropriate smaller
functions.
•Diagrams need to be presented clearly, simply,
exactly, fully and balancely.
•Functions of the same level has the same level
of difficulty need to be on the same page.
•The function hierarchy diagram in the current
example
Example (FD)

Library
Management
System

Readers Doc uments Doc uments B/R ticket System


Management Management Lookin g up Management Reports

Books
New reader Documents B/R ticket Document
looking up
receiving Classifying Receiving Report
Magazines Department
Dept_no New books
looking up Checking Report
Checking Inserting
New New
Overdue
department magazines Replying
Readers
register inserting
Reader_no
allocating

Function Hierarchy Diagram


Data flow diagram: describe the
information flow in the system

Data flow diagram supports 4 main activities:


•Analysis: DFD used to determine
requirements of users
•Design: DFD used to map out plan and
illustrate solutions to analysts and users while
designing a new system
•Communication: DFD is simple and easy to
understand to analysts and users;
•Documents: DFD used to provide special
description of requirements and system
design.
DFD (Continue)

Data flow diagram can be described in the


following ways:
•What functions should the system perform?
•Interaction between functions?
•What does the system have to transfer?
•What inputs are transferred to what outputs?
•What type of work does the system do?
•Where does the system get information from
to work?
•And where does it give work results to?
Main components of
data flow diagram
• Process
• Flow
• Storage
• External factors
• Internal factors.
You can construct DFD of system with the following
guidelines:
• Choose meaningful names for processes, flows,
stores, and terminators
• Number of processes
• Re-draw the DFD many times
• Avoid overly complex DFD
• Make sure the DFD is consistent internally and
with any associated DFD
Data dictionary
Data dictionary defines the data elements by doing the
followings:
• Describing the meaning of the flows and stores
shown in the data flow diagrams;
• Describing the composition of aggregate packets
of data moving along the flow;
• Describing the composition of packets of data in
stores;
• Specifying the relevant values and units of
elementary chunks of information in the data
flows and data stores.
• Describing the details of relationships between
stores that are highlighted in an entity-
relationship diagram.
Process specification

Tools used in process specification:


•Decision tables
•Structured English
•Pre/post conditions
•Flowcharts, and so on.
•Process specification expressed in a form
that can be verified by the user and the
systems analysts;
Process specification expressed in a form that
can be effectively communicated to the various
audiences involved.
Data flow diagrams in the example of library
management system

Readers register 1
Readers Manage Readers
Reply (with reader_ no) Readers
Look up
Le nd Check Return
documents
Or & doc_no
R ep ly G iv e
To B ack update
R ead er d oc ume nt s
3
4 Look up
Process Check readers Dept /Readers documents
Borrowing/ Look
Returning Check documents up
ticket

Documents
B/R ticket B/R ticket
Documents
suppliers
Supply
documents 2 5
Manage Report about
documents Borrow
Library System excess
Report Report time
limit
Leader of Departments in
Institute Institute Readers

Data flowdiagramhigh level


Entity relationship diagram
(ERD)

Main components:
Entity

Attribute

Relationship

One - one relationship

One - many relationship

Many - many relationship


Entity relationship diagrams in the
example of library management system
BOOKS
#BOOK_ NO LANGUAGES
COL LECTIONS * BOOK_ NAME #LA NG_NO
#COLL _NO
* SIZE * LA NG_NAME
* COLL _NAM E
* TI ME_ PUBL * LA NG_VN
* Y E AR_ PUBL * LA NG_SY S
* PUB_ HOUSE
o COST
SPECIALITY * AUTHOR
#SPE C_ NO o CHIEF_AUTH
* SPE C_ NAME o COMP_AUTH
NATIONS
o REV_ AUTH
#NATI ON_NO
* LA NG_ NO
* NATI ON_NAME
* NATI ON_NO
* NATI ON_VN
DEPARTMENTS * SPE C_ NO
* COLL _NO
#DEPT_ NO
o KW_MASTER
* DEPT_ NAME
o KW_SLAVE
o COMMENT

READERS
#READER_ NO
* READER_ NAME B/R BOOK_TICKETS
* DEPT_ NO #READER_NO
o ADDRESS #BOOK_ NO Comment:
o BI RT H_DATE #BORROW_DATE #: Primary key
o COMMENT o RETURN_DAT E *: Not null
o COMMENT o: Option

Entityrelationship diagram (Books)


2.2. Information analysis,
data model

 Data model
 The advanced data modeling
Data model

Two steps to develop a data model:


• Defining entity types
• Defining relationships
• 1st approach: using 3 types of information to
decide which entities need storing details about
•Information relating to one of the objects of the
system;
•Information relating to the major assets or
resources used in the system;
•Information about planning and controlling.
•2nd approach (most popular)
Based on the surveys on the current system and
projections of the future system, analysts choose the
right words to describe the system’s operation (its
functioning)
The advanced data modeling

Some contexts where modeling techniques are not

enough to display in models and yet more

techniques are required:


• Optional relationship

• Abstract data type

• Recursive relationships
2.3 Strengthening of
Information structure –
Relationship model

Strengthening of information structure -


relationship model
Identifying attributes
Normalization
EXAMPLE - Normalization process
Defining relationships and Models comparison
Strengthening of information structure -
relationship model

Main steps of creating a relationship model and using it to


test data model:
.Define necessary attributes in the to-be-built system;
.Define type of entity suitable to attributes to limit
copying and data redundancy (normalization
technique);
.Define potential relationships within the lists of
established attributes for every entity by choosing
linking attributes.
.With known attributes, types of entity and
relationship, it is possible to construct a scheme similar
to intuition data model.
.Estimate quantity of entity for every table via
relationship normalization
Identifying attributes

Basis to identify entity attributes’ details:


Interviewing users;
Examining report forms and other
documents
Estimation or intuitional identification of
attributes is formed.
Analysts’ experience and knowledge in
the field under question
Normalization

A process of surveying lists of attributes and


applying a range of analysis principles to the lists
in order to make them meet the followings:
•Minimization of repetition;
•Avoidance of redundancy;
•Elimination of ambiguity.
Three essential normalizations
•First normal form (1NF)
•Second normal form (2NF)
•Third normal form (3NF)
Normalization (continue)

Analyst must double check the following points:


•Is each entity in 0NF, 1NF, 2NF or 3NF?
•Check optionality of relationships
•Make sure that no two entities have the
same unique identifier
•Remove “attributes” which are really M to
1 relationships.
Normalization (continue) *

In short, to normalize, analysts must finish the


following steps:
•Create a list of data items
•Identify derived items
•Choose a unique identifier (a “key”)
•Remove repeating groups for that key
(and copy across original key)
•Remove “part - key” dependencies (and
copy across that part of the original key)
•Remove non-key dependencies
•Bring together data items with the same
key.
Defining relationships

Tools : Entity / Key matrix.......

Models comparison

Between

• Outline of the intuitive data model

• Relationship model
2.4. Completion of information
analysis

Completion of information analysis

EXAMPLE: Outcomes of professional

rule analysis
Completion of information analysis

Main contents:

•Corporation of new requirements

•Supporting tools and materials

•Summary of analysis process


EXAMPLE: Outcomes of professional rule
analysis

.The library manages two main kinds of


document - books and magazines.
.All information about books is stored in a
book table which includes a list of attributes.
.All information about magazine is stored in a
magazine table which includes a list of
attributes:
.A new documents will be registered in the
finding fields (for readers to look up) in the
library card.
.Library manages other activities
Summary of analysis process
Main contents of summary:
•Contents and scale of system analysis
•Summary of management work
•Function diagram
•Data flow diagram
•Data model
•Relationship model
•Process description
•Data dictionary
Result of this phase is the 3 important diagrams used
in System Design
•Function Hierarchy Diagram
•Data Flow Diagram
•Entity Relationship Diagram.
3.1 The overall designing
specifications

 Definition of structured design


 Relationship between system analysis
and design
 Some guidelines on selection of
design methodology
 Tools and Techniques of design
 Example
Definition of structured design

Several definitions
Guidelines to maximize the benefit of
introducing Structured Design into an
organization:
Make it clear from the start that Structured
Design is not a remedy for any problems of
the organization
Obtain support from anyone who may be
affected by this change
Emphasize the flexibility that Structured
Design provides and downplay the
misconception that it is restrictive
Relationship between system analysis
and design

Demonstrated in models used in both


Analysis and Design phases
Some guidelines on selection of design
methodology

Necessary considerations when selecting a tool:


Will it help the team arrive at an understanding
of the system underdevelopment;
Is it easy to learn? Easy to use?
Will it serve user-analyst communication?
What does it cost?
What data structures does it use?
What data flow and control features does it
have?
Is the technique manageable?
Tools and Techniques of design

Major selected tools:


Information System Design and Optimization
System (ISDOS)
Pseudo-code
Structured design (SD)
Jackson Design methodology (JDM)
Hierarchy Plus Input, Process, and Output (HIPO)
Structured Analysis and Design Technique (SADT)
Entity Relationship Model (E-R Model)
Data Structure Diagram (DSD)
Semantic Data Model (SDM)
CASE*Method
Example

Inputs of system design phase (outputs of system


analysis phase):
-Function Hierarchy Diagram
-Data Flow Diagram
-Entity Relationship Diagram
Example (Continue)

Main tasks in system design:


1. Define which functions have to be done by human, and
which functions have to be carried out by computer, so
we have DFD system (half-physical)
2. Design database
3. Design the human/computer interface
With the library management system, the system design
phase concentrates on the following main parts:
-determines the computer system
-designs modules
-designs database
3.2 Structured design as
process

The phases of Structured Design

Logical Design Phase

Physical Design Phase

Identification of the computer system


The phases of Structured Design

Logical Design development

Physical Design development


Logical Design Phase

The activities occuring during the Logical design


phase:
Develop preliminary design
Define the man-machine and machine-
machine boundaries on DFD
Transform E-R-A Model into Relational
Model
Normalize Relational Model
Prepare Database access Model
Verify against Normalized Relational Model
Transform leveled DFDs into first-cut
structure chart
Logical Design Phase (c)

Refine structure Chart using coupling, cohesion


and adding additional functions, as necessary.
Develop pseudo-code(structured English)
Revise Event Mode
Revise Relational Model
Update Lifecycle Dictionary
Perform consistency check among Structure
Charts, pseudo-code, Event Model, E-R
diagrams, Relational Model. Ensure that all
parts of the design are accurate and mutually
supportive.
Physical Design Phase
Develop Detailed Design
Review Preliminary Design Package
Develop final Structure Chart
Update Lifecycle Dictionary to reflect
physical
characteristics
Revise pseudo-code
Perform coupling and cohesion analysis
Revise Event Model
Reconcile all elements of module
design package
Map to DBMS Data Model
Identification of the computer system

Define borderline between computers and

users

Determines the computer system in presented

example
example

1.2
Check Readers
Dept_no New
reader_no
A llocate
1.1 new
reader_no
Receive L ook up
(if
New reader had 1.4
dept) Allocate
Dept/Readers A llocate
new dept Reader_no
(if
not A llocate
register have new
dept) reader_no
update
Readers
1.3
Register new
department Dept/Readers
update
User Computer

Data flow diagram (Function 1).


3.3 User – computer interface
design

User - Computer interface design

Example
User - Computer interface design

Dialogue design
Significant criteria for the evaluation of
dialogue type:
Easy to use
Easy to learn
Processing and responding speed
Easy to develop
Significant types of user-computer
interface design
User - Computer interface design (c)

Display design
Three main types of display:
-Menu display
-Dialogue display
-Data entry display
User - Computer interface design (cc)

Outputs Design
Basic design principles of outputs design:
Notes, headings, and output formats should be
standardized whenever possible.
The arrangement of information should be logical.
Acronyms and abbreviations in output should be
avoided especially when the output will serve
novice users.
Algorithms and assumptions on which
calculations are based should be available to users
of the output.
The user should be able to locate needed data
quickly without having to search through all of the
data.
Example

Screen design:
General requirement of modules: Modules must
have a common toolbar, including the following
buttons:
Design the looking up document function
Design output
The output of the library management system is three
main reports
Report about document
Report about lending and giving back
documents of departments
Report about overdue readers: listing all readers
who are overdue now.
3.4 System monitoring design

 System monitoring design

 Method of analyzing controls


System monitoring design

Significant aspects should be protected by


control:
Accuracy
Safety
Privacy
The most popular method of
analyzing
controls is based on the data flow
diagram (DFD).
Method of analyzing controls

 Define the threat of the system.

 Design necessary controls.


3.5. Organizing the system’s
components

Organize the program in sub-systems.

Grouping criteria

Designing approach

Tools and modelization techniques


Grouping criteria
Entity group
Events group
Accuracy group
Three general situations where the grouping of
modules and programs are possible:
Modules on batch and online appear in the
same area, or have the same relationship with
a type of data
Users in different responsibility levels
working
on the same data
Each user has different responsibilities relating
Designing approach

Two modules types:

• functional module

• intersection module
Tools and modelization techniques

The two models popularly used in this phase. These 2


diagrams must be fully consistent and this one is used
to test, modify and improve the other.
System diagram based on computer
Computer data flow diagram.
Difference between computer DFD and system DFD:
the non-computer process is presented in system DFD
become “internal factor” of new model.
The main components of the diagram:
Internal and External factor on top of the
diagram
Intersection modules
Functional modules
Relating files
3.6. Analysis of data usage and
logical navigation

 Analysis of data usage and logical navigation

 Path analysis diagram

 Navigation model
Analysis of data usage and logical
navigation

The three main tools:


Path analysis diagram
Navigation model
Data usage schema
Path analysis diagram

Main purposes of path analysis diagram:


To check whether the necessary
information for the process can be
achieved by using data model
To describe the complication of the
process and the data model already built,
whereby assisting physical database
designer to optimize his data structure.
Navigation model
Navigation model will give an overview of data usage
throughout the system; it gathers information of individual
access paths in different processes and links them to the
data model already built in the analysis phase.
Navigation model is a data model of the system with
individual access paths added.
Navigation model is used in necessary cases.
Data usage schema
This chart contains:
Details of each entity type that get accessed in the model
Number of entities that may be accessed to
Frequency, features used for access
Other aspects assisting designers to build up the database.
3.7 Design of database

 Design of Databases
 Physical database design
 Most of a First – cut Data Design
 Physical storage structure design
 Privacy
 Integrity sub-system designing
 Database design in presented example
Design of Databases

Main components of a database:


Conceptual schema
Database schema
Physical schema
Physical storage structure
Back-up and Recovery System
User interface
Mapping module from logical to physical
Privacy sub-systems
Integrity sub-system
Physical database design

Objective of this phase is to give the system


definitions of data and to build data structure
(file/table) ready for installation base on the
following information:
Constraints of user’s system implementation
Details of data usage analysis: data model,
relationship model, path analysis diagram,
navigation model and data usage chart.
a First – cut Data Design

Some basic mappings:


Entities become tables
Attributes become columns
Unique identifiers become primary and
unique key constraints.
Relationships become foreign key columns
and constraints.
Note: Producing the first – cut is only the first
stage in building a complete data design.
Physical storage structure design
Important aspects in designing the physical storage
structure:
Data independence
 All relationships between entities described in
conceptual schema are demonstrated by effective
accessing paths in the physical storage structure
 All accessing requirements by application
programs sent to physical schema are presented by a
logical language independent with the data structure
being used, including physical storage structure.
Advantages of an independent data database:
New application programs can be added to the
system at minimum costs.
The installation environment can be changed more
easily
Privacy
Main functions of private module:
Identify users
List components of database schema corresponding
to the components of database that users wish to have
access to
Check accessing ties to see whether an access is legal
- Ids, passwords or magnetic cards
The most popular kinds of constraints:
Privacy constraints depicted as users’ accessing
authority exclusively to the parts of physical storage
structure, such as limiting access to records of data
table
Some constraints limit the access to several functions
of the program or relevant data files.
Other constraints may require special procedure and
are often located at in/out application program.
Integrity sub-system designing

Integrity sub-system is responsible for


maintaining the integrity by protecting database
against illegal changes and damages in the whole
system, which may cause data errors.
Data errors can be seen in the following cases:
Data are not updated frequently.
Data are updated simultaneously
Data are damaged while being coded,
changed or transmitted from a distance
Data are damaged while being stored due to
hardware faults.
Integrity sub-system designing (c)

One of the most important aspect to secure the


database against errors is to back-up the data
regularly and recover the data when necessary
Lock strategy
Data back up
Recovery
Database design in presented example

Base on the entity diagrams in the system


analysis phase, we continually design the tables
correspondent with them as the following rules:

Entity becomes Table


Attribute becomes Column (field)
unique identifier becomes primary key