system analysis and design

90
Module Module System analysis and design System analysis and design

Upload: api-3719303

Post on 13-Nov-2014

33 views

Category:

Documents


3 download

TRANSCRIPT

Page 1: System Analysis and Design

ModuleModule

System analysis and designSystem analysis and design

Page 2: System Analysis and Design

1. The objective of module:1. The objective of module:

Provide: System Visions of Managers,System Visions of Managers, Users, Technicians Users, TechniciansBasic knowledge of systems’ lifeBasic knowledge of systems’ life cycle cycleSystem analysis and designSystem analysis and design techniques techniquesSome analysis and design skillsSome analysis and design skills and experiences and experiences

Page 3: System Analysis and Design

2. Module 2. Module “Requirements to learners”“Requirements to learners”

Basic knowledge of system andBasic knowledge of system and Information technology Information technologyAbility to understand and executiveAbility to understand and executive the supporting tool of analysis and the supporting tool of analysis and design designInterest in analysis and design fieldsInterest in analysis and design fields

Page 4: System Analysis and Design

3. System development Life-cycle

The principal phases in the systemThe principal phases in the system development: development:

InvestigationInvestigationAnalysisAnalysisDesignDesignImplementationImplementation

Recommended percentage distribution:Recommended percentage distribution:Investigation, Analysis, Design: 50%-60%Investigation, Analysis, Design: 50%-60%Implementation: Implementation: 40%-50% 40%-50%

Page 5: System Analysis and Design

4. Main contents of module:

Chapter 1Chapter 1: Introduction to Systems: Introduction to Systems1.1. 1.1. Overview1.2. 1.2. System approach1.3. 1.3. ExampleChapter 2Chapter 2: Systems Analysis: Systems Analysis2.1. 2.1. Analysis of Structured System2.2. 2.2. Information analysis, data model2.3. 2.3. Strengthening of Information structure – – Relationship model Relationship model2.4. 2.4. Completion of Information analysis2.5. 2.5. Summary of analysis process

Page 6: System Analysis and Design

4. (continue)

Chapter 3Chapter 3: System Design: System Design3.1 3.1 The overall designing specifications3.2 3.2 Structured design as process3.3 3.3 User- Computer interface design3.4 3.4 System monitoring design3.5 3.5 Organizing the system’s components3.6 3.6 Analysis of data usage and logical navigation3.7 3.7 Design of databases3.8 Example3.8 ExampleReferences References Index Index

Page 7: System Analysis and Design

1.1. OVERVIEW1.1. OVERVIEW

Definition of SystemDefinition of System

Participants to system development

System development life – cycle

Page 8: System Analysis and Design

Participants to system developmentParticipants to system development

UserUser

ManagementManagement

Auditors, quality assurance people, and Auditors, quality assurance people, and

‘standards bearers”‘standards bearers”

Systems analystsSystems analysts

Systems designersSystems designers

ProgrammersProgrammers

Operations personnelOperations personnel

Page 9: System Analysis and Design

System developmentSystem developmentlife – cyclelife – cycle

Initial investigationInitial investigation

Feasibility studyFeasibility study

General designGeneral design

Detailed designDetailed design

ImplementationImplementation

System audit System audit

Page 10: System Analysis and Design

1.2 System approach1.2 System approach

System approach

The system's requirements

Users requirements

Technical requirements

Some principals Investigation methods

Survey report

Page 11: System Analysis and Design

System approachSystem approach

The WaterFall ModelThe WaterFall ModelSystems analysis;Systems analysis;Systems design;Systems design;Systems build and test;Systems build and test;Systems introduction and transition;Systems introduction and transition;Maintenance of production status systems.Maintenance of production status systems.

The Spiral ModelThe Spiral ModelIncremental approach to systemsIncremental approach to systems development developmentSystem divided into smaller sub-sets forSystem divided into smaller sub-sets for development and delivery. development and delivery. End-users’ functionality provided atEnd-users’ functionality provided at regular intervals, rather than at the end of regular intervals, rather than at the end of a waterfall development. a waterfall development.

Page 12: System Analysis and Design

The system's requirementsThe system's requirements

Suitable with the general strategiesSuitable with the general strategies

Supporting decision makerSupporting decision maker

Competition edgeCompetition edge

Return on InvestmentReturn on Investment

Supporting operational managementSupporting operational management

Improving information communicationImproving information communication

Impacts of information productsImpacts of information products

Ability to implement more quickly andAbility to implement more quickly and

better. better.

Page 13: System Analysis and Design

Users requirementsUsers requirements

Easy access;Easy access;System must be:System must be:

Solid and stable;Solid and stable; Accurate information;Accurate information; Easy to maintain and restructure;Easy to maintain and restructure; Quick in identifying and correcting Quick in identifying and correcting mistakes;mistakes;

Interface: Interface: Suitable with users’ working style of users;Suitable with users’ working style of users; Stable;Stable; Easy to control data;Easy to control data; Independent and flexible.Independent and flexible.

Page 14: System Analysis and Design

Technical requirementsTechnical requirements

Information technology equipment Information technology equipment must be must be suitable with the volume of information suitable with the volume of information that is tothat is to be processed; be processed;Everyday information requires special Everyday information requires special care;care;Accuracy of information is important;Accuracy of information is important;New system is required to resolve New system is required to resolve issues thatissues that current system fails to process due to current system fails to process due to informationinformation complexity complexity

Popular issues:Popular issues:IncompatibilityIncompatibilityShortcomingsShortcomingsLow reliabilityLow reliabilityPoor resourcesPoor resourcesBad supportBad support

Page 15: System Analysis and Design

Some principals Investigation methods

11. Survey methods: Interview. Survey methods: Interview

22. Observation methods: . Observation methods:

Official observationOfficial observation

Unofficial observationUnofficial observation

33. Questionnaire method:. Questionnaire method: (complicated and(complicated and

ineffective for inexperienced analyzers) ineffective for inexperienced analyzers)

Objectives and main contentsObjectives and main contents

Categories of data that will be usedCategories of data that will be used

Data contents in each category.Data contents in each category.

Page 16: System Analysis and Design

Survey reportSurvey report

Main items:Main items:Objectives of the system;Objectives of the system;Inter-connection between related departments;Inter-connection between related departments;Details of the current system;Details of the current system;Future system and sketchy estimate of costsFuture system and sketchy estimate of costs and benefits; and benefits;Advice;Advice;Time frame and plan for system development;Time frame and plan for system development;General description (non-technical);General description (non-technical);Original document;Original document;Evaluation of current system in:Evaluation of current system in: organizational structure, technology, organizational structure, technology, information system, users’ IT skills, policy information system, users’ IT skills, policy renovation... renovation...

Page 17: System Analysis and Design

ExampleExampleLibrary management system of Institute of Library management system of Institute of Information Technology (IOIT)Information Technology (IOIT)

Survey main contentsSurvey main contents Relations between the current library management Relations between the current library management system and other library management systems;system and other library management systems;Main jobs of the library management system;Main jobs of the library management system;Necessary improvements expected in the new Necessary improvements expected in the new computer system.computer system.

Interview questionsInterview questions::What are the main jobs of the library management What are the main jobs of the library management system?system?What is the function of each job?What is the function of each job?How are the jobs currently done?How are the jobs currently done?Who is responsible for them?Who is responsible for them?What are the restraints and difficulties in each job?What are the restraints and difficulties in each job?Whom does the library serve? and so onWhom does the library serve? and so on

Page 18: System Analysis and Design

2.1 Analysis 2.1 Analysis of Structuredof Structured System 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: describe the information

flow in the system flow in the system

Main components of data flow diagram

Page 19: System Analysis and Design

2.1. (Continue)2.1. (Continue)

Data dictionary

Process specification

Data flow diagrams in the example of library of library

management system management system

Entity relationship diagram (ERD) (ERD)

Entity relationship diagrams in the example of of

library management system library management system

Page 20: System Analysis and Design

System analysis System analysis

Structural system analysis’ main characteristics:Structural system analysis’ main characteristics:Developed in “top – down” order;Developed in “top – down” order;Analyze the current system and newAnalyze the current system and new requirements of users; requirements of users;Define a format for the future system;Define a format for the future system;Major tools used in structural systemMajor tools used in structural system analysis: analysis:

function diagramfunction diagramdata flow diagramdata flow diagramdata dictionarydata dictionaryprocess specificationprocess specificationentity relationship diagram;entity relationship diagram;

Page 21: System Analysis and Design

System Analysis (Continue)System Analysis (Continue)

Acknowledge users’ role in different stepsAcknowledge users’ role in different steps of system development; of system development;Supported by advanced technology in bothSupported by advanced technology in both hardware and software, this method is less hardware and software, this method is less complicated complicated Structural analysis together with prototypeStructural analysis together with prototype method give ideas of the new system and method give ideas of the new system and help make best use of both methods. help make best use of both methods.

Page 22: System Analysis and Design

Nature of analysisNature of analysis

Main steps of system analysis processMain steps of system analysis process

Identify the operation of the existing system;Identify the operation of the existing system;

Understand what the existing system is doing;Understand what the existing system is doing;

Understand the need of the users;Understand the need of the users;

Decide on what the new system should be doing;Decide on what the new system should be doing;

Decide on how the new system will function.Decide on how the new system will function.

Tool for analysis;Tool for analysis;

Page 23: System Analysis and Design

Importance of analysis in system’s life Importance of analysis in system’s life cyclecycle

Main phases:Main phases: SurveySurveyAnalysisAnalysisDesignDesignImplementationImplementationSystem testing and approvingSystem testing and approvingInstallation and maintenance. Installation and maintenance.

Main subjects of systemMain subjects of system users, mangers and technical experts users, mangers and technical experts (including analysis, design and program (including analysis, design and program specialist...)specialist...)

Page 24: System Analysis and Design

Roles and requirements of systems Roles and requirements of systems analystanalyst

System analysts’ roles

System analysts’ required

qualifications qualifications

Page 25: System Analysis and Design

System analysts’ rolesSystem analysts’ roles

Archaeologist and scribeArchaeologist and scribe

InnovatorInnovator

MediatorMediator

Project leader Project leader

Page 26: System Analysis and Design

System analysts’ required qualificationsSystem analysts’ required qualifications

More than just the ability to draw flowchart and otherMore than just the ability to draw flowchart and other

technical diagrams; technical diagrams;Skills to interview users, mediate disagreements;Skills to interview users, mediate disagreements;Application knowledge to understand and appreciate theApplication knowledge to understand and appreciate the

user’s business; user’s business;Computer skills to understand the potential uses ofComputer skills to understand the potential uses of

computer hardware and software in the user’s business; computer hardware and software in the user’s business;Able to view a system from many different perspectives;Able to view a system from many different perspectives;Able to partition it into levels of subsystems;Able to partition it into levels of subsystems;Able to think of a system in abstract terms as well asAble to think of a system in abstract terms as well as

physical terms. physical terms.

Page 27: System Analysis and Design

Analysis supporting toolsAnalysis supporting tools

Functioning diagramFunctioning diagramData flow diagramData flow diagramRelationship diagram...Relationship diagram...

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

Page 28: System Analysis and Design

Functional diagram (FD)Functional diagram (FD)

Functional diagram is a process of division, Functional diagram is a process of division,

from a higher function to appropriate smaller from a higher function to appropriate smaller

functions. functions. Diagrams need to be presented clearly, simply,Diagrams need to be presented clearly, simply,

exactly, fully and balancely. exactly, fully and balancely. Functions of the same level has the same levelFunctions of the same level has the same level

of difficulty need to be on the same page. of difficulty need to be on the same page. The function hierarchy diagram in the currentThe function hierarchy diagram in the current

example example

Page 29: System Analysis and Design

Example (FD)Example (FD)

LibraryManagement

System

ReadersManagement

DocumentsManagement

DocumentsLooking up

B/R ticketManagement

SystemReports

New readerreceiving

Dept_noChecking

Newdepartment

registerReader_noallocating

DocumentsClassifying

New booksInserting

New magazinesinserting

Bookslooking up

Magazineslooking up

B/R ticketReceiving

Checking

Replying

DocumentReport

DepartmentReport

OverdueReaders

Function Hierarchy Diagram

Page 30: System Analysis and Design

Data flow diagram: describe the Data flow diagram: describe the information flow in the systeminformation flow in the system

Data flow diagram supports 4 main activities:Data flow diagram supports 4 main activities:Analysis: DFD used to determine Analysis: DFD used to determine requirements of usersrequirements of usersDesign: DFD used to map out plan and Design: DFD used to map out plan and illustrate solutions to analysts and users while illustrate solutions to analysts and users while designing a new systemdesigning a new systemCommunication: DFD is simple and easy to Communication: DFD is simple and easy to understand to analysts and users;understand to analysts and users;Documents: DFD used to provide special Documents: DFD used to provide special description of requirements and system description of requirements and system design.design.

Page 31: System Analysis and Design

DFD (Continue)DFD (Continue)

Data flow diagram can be described in the Data flow diagram can be described in the following ways:following ways:

What functions should the system perform? What functions should the system perform? Interaction between functions?Interaction between functions?What does the system have to transfer? What does the system have to transfer? What inputs are transferred to what outputs?What inputs are transferred to what outputs?What type of work does the system do? What type of work does the system do? Where does the system get information from Where does the system get information from to work? to work? And where does it give work results to?And where does it give work results to?

Page 32: System Analysis and Design

Main components ofMain components ofdata flow diagramdata flow diagram

ProcessProcess FlowFlow StorageStorage External factorsExternal factors Internal factors.Internal factors.

You can construct DFD of system with the following You can construct DFD of system with the following guidelines:guidelines:

Choose meaningful names for processes, flows,Choose meaningful names for processes, flows, stores, and terminators stores, and terminators Number of processesNumber of processes Re-draw the DFD many times Re-draw the DFD many times Avoid overly complex DFDAvoid overly complex DFD Make sure the DFD is consistent internally andMake sure the DFD is consistent internally and with any associated DFD with any associated DFD

Page 33: System Analysis and Design

Data dictionaryData dictionary

Data dictionary defines the data elements by doing the Data dictionary defines the data elements by doing the followings:followings:

Describing the meaning of the flows and storesDescribing the meaning of the flows and stores shown in the data flow diagrams; shown in the data flow diagrams; Describing the composition of aggregate packetsDescribing the composition of aggregate packets of data moving along the flow; of data moving along the flow; Describing the composition of packets of data inDescribing the composition of packets of data in stores; stores; Specifying the relevant values and units ofSpecifying the relevant values and units of elementary chunks of information in the data elementary chunks of information in the data flows and data stores. flows and data stores. Describing the details of relationships betweenDescribing the details of relationships between stores that are highlighted in an entity- stores that are highlighted in an entity- relationship diagram. relationship diagram.

Page 34: System Analysis and Design

Process specificationProcess specification

Tools used in process specification: Tools used in process specification: Decision tablesDecision tablesStructured EnglishStructured EnglishPre/post conditionsPre/post conditionsFlowcharts, and so on.Flowcharts, and so on.Process specification expressed in a form Process specification expressed in a form that can be verified by the user and the that can be verified by the user and the systems analysts;systems analysts;

Process specification expressed in a form that Process specification expressed in a form that can be effectively communicated to the various can be effectively communicated to the various audiences involved.audiences involved.

Page 35: System Analysis and Design

Data flow diagrams in the example of library Data flow diagrams in the example of library management systemmanagement system

1ManageReaders

5Report about

Library System

2Manage

documents

3Look up

documents

4Process

Borrowing/Returning

ticket

Readers

Documentssuppliers

Dept/Readers

B/R ticket

Readers register

Reply (with reader_ no)

Le nd

OrGiveB ack

doc ume nt s

R eplyTo

R eader

Documents

Check&update

Readers

Look updocuments Return

doc_no

Lookup

Supplydocuments

Report

Check readers

Check documents

B/R ticket

Leader ofInstitute Readers

Borrowexcesstimelimit

Data flow diagram high level

Departments inInstitute

Report

Page 36: System Analysis and Design

Entity relationship diagramEntity relationship diagram (ERD) (ERD)

Main components:Main components:

EntityEntity

AttributeAttribute

RelationshipRelationship

One - one relationshipOne - one relationship

One - many relationshipOne - many relationship

Many - many relationshipMany - many relationship

Page 37: System Analysis and Design

Entity relationship diagrams in the Entity relationship diagrams in the example of library management systemexample of library management system

BOOKS# BOOK_NO* BOOK_NAME* SIZE* TIME_PUBL* YEAR_PUBL* PUB_HOUSEo COST* AUTHORo CHIEF_AUTHo COMP_AUTHo REV_AUTH* LA NG_NO* NATION_NO* SPEC_NO* COLL _NOo KW_MASTERo KW_SLAVEo COMMENT

LANGUAGES# LA NG_NO* LA NG_NAME* LA NG_VN* LA NG_SYS

NATIONS# NATION_NO* NATION_NAME* NATION_VN

SPECIALITY# SPEC_NO* SPEC_NAME

COLLECTIONS# COLL _NO* COLL _NAME

B/R BOOK_TICKETS# READER_NO# BOOK_NO# BORROW_DATEo RETURN_DATEo COMMENT

READERS# READER_NO* READER_NAME* DEPT_NOo ADDRESSo BIRTH_DATEo COMMENT

DEPARTMENTS# DEPT_NO* DEPT_NAME

Entity relationship diagram (Books)

Comment:#: Primary key*: Not nullo: Option

Page 38: System Analysis and Design

2.2. Information analysis,2.2. Information analysis, data model data model

Data model

The advanced data modeling

Page 39: System Analysis and Design

Data model Data model

Two steps to develop a data model:Two steps to develop a data model: Defining entity typesDefining entity types Defining relationshipsDefining relationships 11stst approach: using 3 types of information to approach: using 3 types of information to decide which entities need storing details about decide which entities need storing details about

Information relating to one of the objects of the Information relating to one of the objects of the system;system;Information relating to the major assets or Information relating to the major assets or resources used in the system;resources used in the system;Information about planning and controlling.Information about planning and controlling.

22ndnd approach (most popular) approach (most popular)Based on the surveys on the current system and Based on the surveys on the current system and projections of the future system, analysts choose the projections of the future system, analysts choose the right words to describe the system’s operation (its right words to describe the system’s operation (its functioning) functioning)

Page 40: System Analysis and Design

The advanced data modelingThe advanced data modeling

Some contexts where modeling techniques are not Some contexts where modeling techniques are not

enough to display in models and yet more enough to display in models and yet more

techniques are required:techniques are required:

Optional relationshipOptional relationship

Abstract data typeAbstract data type

Recursive relationshipsRecursive relationships

Page 41: System Analysis and Design

2.3 Strengthening 2.3 Strengthening ofof Information structure – Information structure – Relationship model Relationship model

Strengthening of information structure - - relationship model relationship model

Identifying attributes

Normalization

EXAMPLE - Normalization processEXAMPLE - Normalization process

Defining relationships and Models comparisonDefining relationships and Models comparison

Page 42: System Analysis and Design

Strengthening of information structure - Strengthening of information structure - relationship modelrelationship model

Main steps of creating a relationship model and using it to Main steps of creating a relationship model and using it to test data model:test data model:

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

Page 43: System Analysis and Design

Identifying attributesIdentifying attributes

Basis to identify entity attributes’ details:Basis to identify entity attributes’ details:

Interviewing users; Interviewing users;

Examining report forms and otherExamining report forms and other

documents documents

Estimation or intuitional identification ofEstimation or intuitional identification of

attributes is formed. attributes is formed.

Analysts’ experience and knowledge inAnalysts’ experience and knowledge in

the field under question the field under question

Page 44: System Analysis and Design

NormalizationNormalization

A process of surveying lists of attributes and A process of surveying lists of attributes and

applying a range of analysis principles to the lists applying a range of analysis principles to the lists

in order to make them meet the followings:in order to make them meet the followings:Minimization of repetition;Minimization of repetition;Avoidance of redundancy;Avoidance of redundancy;Elimination of ambiguity.Elimination of ambiguity.

Three essential normalizationsThree essential normalizationsFirst normal form (1NF)First normal form (1NF)Second normal form (2NF)Second normal form (2NF)Third normal form (3NF)Third normal form (3NF)

Page 45: System Analysis and Design

Normalization (Normalization (continuecontinue))

Analyst must double check the following points:Analyst must double check the following points:

Is each entity in 0NF, 1NF, 2NF or 3NF?Is each entity in 0NF, 1NF, 2NF or 3NF?

Check optionality of relationshipsCheck optionality of relationships

Make sure that no two entities have the Make sure that no two entities have the

same unique identifier same unique identifier

Remove “attributes” which are really M to Remove “attributes” which are really M to

1 relationships.1 relationships.

Page 46: System Analysis and Design

Normalization (Normalization (continuecontinue) *) *

In short, to normalize, analysts must finish the In short, to normalize, analysts must finish the following steps:following steps:

Create a list of data itemsCreate a list of data itemsIdentify derived itemsIdentify derived itemsChoose a unique identifier (a “key”)Choose a unique identifier (a “key”)Remove repeating groups for that key Remove repeating groups for that key (and copy across original key)(and copy across original key)Remove “part - key” dependencies (and Remove “part - key” dependencies (and copy across that part of the original key)copy across that part of the original key)Remove non-key dependenciesRemove non-key dependenciesBring together data items with the same Bring together data items with the same key.key.

Page 47: System Analysis and Design

Defining relationshipsDefining relationships

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

Models comparisonModels comparison

BetweenBetween

Outline of the intuitive data modelOutline of the intuitive data model

Relationship modelRelationship model

Page 48: System Analysis and Design

2.4. Completion of information2.4. Completion of information analysis analysis

Completion of information analysis

EXAMPLE: Outcomes of professional: Outcomes of professional

rule analysis rule analysis

Page 49: System Analysis and Design

Completion of information analysisCompletion of information analysis

Main contents:Main contents:

Corporation of new requirementsCorporation of new requirements

Supporting tools and materialsSupporting tools and materials

Summary of analysis processSummary of analysis process

Page 50: System Analysis and Design

EXAMPLE: Outcomes of professional rule EXAMPLE: Outcomes of professional rule analysis analysis

.The library manages two main kinds of.The library manages two main kinds of document - books and magazines. document - books and magazines..All information about books is stored in a.All information about books is stored in a book table which includes a list of attributes. book table which includes a list of attributes. .All information about magazine is stored in a.All information about magazine is stored in a magazine table which includes a list of magazine table which includes a list of attributes: attributes: .A new documents will be registered in the.A new documents will be registered in the finding fields (for readers to look up) in the finding fields (for readers to look up) in the library card. library card..Library manages other activities.Library manages other activities

Page 51: System Analysis and Design

Summary of analysis processSummary of analysis process

Main contents of summary: Main contents of summary: Contents and scale of system analysisContents and scale of system analysisSummary of management workSummary of management workFunction diagramFunction diagramData flow diagramData flow diagramData modelData modelRelationship modelRelationship modelProcess descriptionProcess descriptionData dictionaryData dictionary

Result of this phase is the 3 important diagrams used Result of this phase is the 3 important diagrams used in System Designin System Design

Function Hierarchy DiagramFunction Hierarchy DiagramData Flow DiagramData Flow DiagramEntity Relationship Diagram. Entity Relationship Diagram.

Page 52: System Analysis and Design

3.1 The overall designing3.1 The overall designing specifications specifications

Definition of structured design Relationship between system analysis

and design Some guidelines on selection of

design methodology Tools and Techniques of design

Example

Page 53: System Analysis and Design

Definition of structured designDefinition of structured design

Several definitionsSeveral definitionsGuidelines to maximize the benefit of Guidelines to maximize the benefit of introducing Structured Design into an introducing Structured Design into an organization: organization:

Make it clear from the start that StructuredMake it clear from the start that Structured Design is not a remedy for any problems of Design is not a remedy for any problems of the organization the organizationObtain support from anyone who may beObtain support from anyone who may be affected by this change affected by this changeEmphasize the flexibility that StructuredEmphasize the flexibility that Structured Design provides and downplay the Design provides and downplay the misconception that it is restrictive misconception that it is restrictive

Page 54: System Analysis and Design

Relationship between system analysis Relationship between system analysis and design and design

Demonstrated in models used in both Demonstrated in models used in both Analysis and Design phasesAnalysis and Design phases

Page 55: System Analysis and Design

Some guidelines on selection of design Some guidelines on selection of design methodology methodology

Necessary considerations when selecting a tool:Necessary considerations when selecting a tool:Will it help the team arrive at an understandingWill it help the team arrive at an understanding of the system underdevelopment; of the system underdevelopment;Is it easy to learn? Easy to use?Is it easy to learn? Easy to use?Will it serve user-analyst communication?Will it serve user-analyst communication?What does it cost?What does it cost?What data structures does it use?What data structures does it use?What data flow and control features does itWhat data flow and control features does it have? have?Is the technique manageable?Is the technique manageable?

Page 56: System Analysis and Design

Tools and Techniques of designTools and Techniques of design

Major selected tools:Major selected tools: Information System Design and OptimizationInformation System Design and Optimization System (ISDOS) System (ISDOS)Pseudo-codePseudo-codeStructured design (SD) Structured design (SD) Jackson Design methodology (JDM)Jackson Design methodology (JDM)Hierarchy Plus Input, Process, and Output (HIPO)Hierarchy Plus Input, Process, and Output (HIPO)Structured Analysis and Design Technique (SADT)Structured Analysis and Design Technique (SADT)Entity Relationship Model (E-R Model)Entity Relationship Model (E-R Model)Data Structure Diagram (DSD)Data Structure Diagram (DSD)Semantic Data Model (SDM)Semantic Data Model (SDM)CASE*MethodCASE*Method

Page 57: System Analysis and Design

ExampleExample

Inputs of system design phase (outputs of system Inputs of system design phase (outputs of system

analysis phase):analysis phase):

-Function Hierarchy DiagramFunction Hierarchy Diagram

-Data Flow DiagramData Flow Diagram

-Entity Relationship DiagramEntity Relationship Diagram

Page 58: System Analysis and Design

Example (Example (ContinueContinue))

Main tasks in system design:Main tasks in system design:

1. Define which functions have to be done by human, and1. Define which functions have to be done by human, and

which functions have to be carried out by computer, so which functions have to be carried out by computer, so

we have DFD system (half-physical) we have DFD system (half-physical)

2. Design database2. Design database

3. Design the human/computer interface3. Design the human/computer interface

With the library management system, the system designWith the library management system, the system design

phase concentrates on the following main parts: phase concentrates on the following main parts:

-determines the computer systemdetermines the computer system

-designs modulesdesigns modules

-designs databasedesigns database

Page 59: System Analysis and Design

3.2 Structured design as3.2 Structured design as process process

The phases of Structured Design

Logical Design Phase

Physical Design Phase

Identification of the computer system

Page 60: System Analysis and Design

The phases of Structured DesignThe phases of Structured Design

Logical Design development Logical Design development

Physical Design developmentPhysical Design development

Page 61: System Analysis and Design

Logical Design PhaseLogical Design Phase

The activities occuring during the Logical design The activities occuring during the Logical design phase:phase:

Develop preliminary designDevelop preliminary designDefine the man-machine and machine-Define the man-machine and machine- machine boundaries on DFD machine boundaries on DFDTransform E-R-A Model into RelationalTransform E-R-A Model into Relational Model ModelNormalize Relational ModelNormalize Relational ModelPrepare Database access ModelPrepare Database access ModelVerify against Normalized Relational ModelVerify against Normalized Relational ModelTransform leveled DFDs into first-cutTransform leveled DFDs into first-cut structure chart structure chart

Page 62: System Analysis and Design

Logical Design Phase (Logical Design Phase (cc))

Refine structure Chart using coupling, cohesionRefine structure Chart using coupling, cohesion and adding additional functions, as necessary. and adding additional functions, as necessary.Develop pseudo-code(structured English)Develop pseudo-code(structured English)Revise Event ModeRevise Event ModeRevise Relational ModelRevise Relational ModelUpdate Lifecycle DictionaryUpdate Lifecycle DictionaryPerform consistency check among StructurePerform consistency check among Structure Charts, pseudo-code, Event Model, E-R Charts, pseudo-code, Event Model, E-R diagrams, Relational Model. Ensure that all diagrams, Relational Model. Ensure that all parts of the design are accurate and mutually parts of the design are accurate and mutually supportive. supportive.

Page 63: System Analysis and Design

Physical Design PhasePhysical Design Phase

Develop Detailed DesignDevelop Detailed DesignReview Preliminary Design PackageReview Preliminary Design PackageDevelop final Structure ChartDevelop final Structure ChartUpdate Lifecycle Dictionary to reflect Update Lifecycle Dictionary to reflect physicalphysical characteristics characteristicsRevise pseudo-codeRevise pseudo-codePerform coupling and cohesion analysisPerform coupling and cohesion analysisRevise Event ModelRevise Event ModelReconcile all elements of module Reconcile all elements of module design packagedesign packageMap to DBMS Data ModelMap to DBMS Data ModelOptimize DBMS schema access costsOptimize DBMS schema access costsRevise implementation estimates.Revise implementation estimates.

Page 64: System Analysis and Design

Identification of the computer systemIdentification of the computer system

Define borderline between computers andDefine borderline between computers and

users users

Determines the computer system in presentedDetermines the computer system in presented

example example

Page 65: System Analysis and Design

exampleexample

1.2Check

Dept_no

1.1Receive

New reader

1.3Register newdepartment

1.4Allocate

Reader_no

Readers

register

A llocatenew dept

(ifnot

havedept)

A llocatenew

reader_no(if

haddept)

Dept/Readers

Look up

Dept/Readers

Readers

update

A llocatenewreader_no

Newreader_no

update

Data flow diagram (Function 1).

User Computer

Page 66: System Analysis and Design

3.3 User – computer interface3.3 User – computer interface design design

User - Computer interface design

Example

Page 67: System Analysis and Design

User - Computer interface designUser - Computer interface design

Dialogue designDialogue designSignificant criteria for the evaluation of Significant criteria for the evaluation of dialogue type:dialogue type:

Easy to useEasy to useEasy to learnEasy to learnProcessing and responding speedProcessing and responding speedEasy to developEasy to developSignificant types of user-computerSignificant types of user-computer interface design interface design

Page 68: System Analysis and Design

User - Computer interface design (User - Computer interface design (cc))

Display designDisplay design

Three main types of display:Three main types of display:

-Menu displayMenu display

-Dialogue displayDialogue display

-Data entry displayData entry display

Page 69: System Analysis and Design

User - Computer interface design (User - Computer interface design (cccc))

Outputs DesignOutputs DesignBasic design principles of outputs design:Basic design principles of outputs design:

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

Page 70: System Analysis and Design

ExampleExample

Screen design:Screen design:General requirement of modules: Modules must General requirement of modules: Modules must have a common toolbar, including the following have a common toolbar, including the following buttons:buttons:

Design the looking up document functionDesign the looking up document functionDesign outputDesign outputThe output of the library management system is three The output of the library management system is three main reportsmain reports

Report about documentReport about documentReport about lending and giving backReport about lending and giving back documents of departments documents of departmentsReport about overdue readers: listing all readersReport about overdue readers: listing all readers who are overdue now. who are overdue now.

Page 71: System Analysis and Design

3.4 System monitoring design3.4 System monitoring design

System monitoring design

Method of analyzing controls

Page 72: System Analysis and Design

System monitoring designSystem monitoring design

Significant aspects should be protected by Significant aspects should be protected by

control:control:

AccuracyAccuracy

SafetySafety

PrivacyPrivacy

The most popular method of The most popular method of

analyzinganalyzing

controls is based on the data flow controls is based on the data flow

diagram (DFD). diagram (DFD).

Page 73: System Analysis and Design

Method of analyzing controlsMethod of analyzing controls

Define the threat of the system.Define the threat of the system.

Design necessary controls.Design necessary controls.

Page 74: System Analysis and Design

3.5. Organizing the system’s3.5. Organizing the system’s components components

Organize the program in sub-systems.Organize the program in sub-systems.

Grouping criteria

Designing approach

Tools and modelization techniques

Page 75: System Analysis and Design

Grouping criteriaGrouping criteria

Entity groupEntity groupEvents groupEvents groupAccuracy groupAccuracy group

Three general situations where the grouping of Three general situations where the grouping of modules and programs are possible:modules and programs are possible:

Modules on batch and online appear in theModules on batch and online appear in the same area, or have the same relationship with same area, or have the same relationship with a type of data a type of dataUsers in different responsibility levels Users in different responsibility levels workingworking on the same data on the same dataEach user has different responsibilities relatingEach user has different responsibilities relating to various functions to various functions

Page 76: System Analysis and Design

Designing approachDesigning approach

Two modules types:Two modules types:

functional module functional module

intersection moduleintersection module

Page 77: System Analysis and Design

Tools and modelization techniquesTools and modelization techniques

The two models popularly used in this phase. These 2 The two models popularly used in this phase. These 2 diagrams must be fully consistent and this one is used diagrams must be fully consistent and this one is used to test, modify and improve the other. to test, modify and improve the other.

System diagram based on computer System diagram based on computer Computer data flow diagram. Computer data flow diagram.

Difference between computer DFD and system DFD: Difference between computer DFD and system DFD: the non-computer process is presented in system DFD the non-computer process is presented in system DFD become “internal factor” of new model.become “internal factor” of new model.The main components of the diagram:The main components of the diagram:

Internal and External factor on top of theInternal and External factor on top of the diagram diagramIntersection modulesIntersection modulesFunctional modulesFunctional modulesRelating filesRelating files

Page 78: System Analysis and Design

3.6. Analysis of data usage and3.6. Analysis of data usage and logical navigation logical navigation

Analysis of data usage and logical navigation

Path analysis diagram

Navigation model

Page 79: System Analysis and Design

Analysis of data usage and logical Analysis of data usage and logical navigationnavigation

The three main tools:The three main tools:

Path analysis diagramPath analysis diagram

Navigation modelNavigation model

DataData usage schemausage schema

Page 80: System Analysis and Design

Path analysis diagramPath analysis diagram

Main purposes of path analysis diagramMain purposes of path analysis diagram::

To check whether the necessaryTo check whether the necessary

information for the process can be information for the process can be

achieved by using data model achieved by using data model

To describe the complication of theTo describe the complication of the

process and the data model already built, process and the data model already built,

whereby assisting physical database whereby assisting physical database

designer to optimize his data structure. designer to optimize his data structure.

Page 81: System Analysis and Design

Navigation modelNavigation model

Navigation model will give an overview of data usage Navigation model will give an overview of data usage throughout the system; it gathers information of individual throughout the system; it gathers information of individual access paths in different processes and links them to the access paths in different processes and links them to the data model already built in the analysis phase. data model already built in the analysis phase.Navigation model is a data model of the system withNavigation model is a data model of the system with individual access paths added. individual access paths added.

Navigation model is used in necessary cases.Navigation model is used in necessary cases.Data usage schemaData usage schemaThis chart contains:This chart contains:Details of each entity type that get accessed in the modelDetails of each entity type that get accessed in the modelNumber of entities that may be accessed toNumber of entities that may be accessed toFrequency, features used for accessFrequency, features used for access

Other aspects assisting designers to build up the database.Other aspects assisting designers to build up the database.

Page 82: System Analysis and Design

3.7 Design of database3.7 Design of database

Design of DatabasesDesign of Databases

Physical database designPhysical database design

Most of a First – cut Data Design Most of a First – cut Data Design

Physical storage structure designPhysical storage structure design

PrivacyPrivacy

Integrity sub-system designingIntegrity sub-system designing

Database design in presented exampleDatabase design in presented example

Page 83: System Analysis and Design

Design of Databases Design of Databases

Main components of a databaseMain components of a database::Conceptual schemaConceptual schemaDatabase schemaDatabase schemaPhysical schemaPhysical schemaPhysical storage structurePhysical storage structureBack-up and Recovery SystemBack-up and Recovery SystemUser interfaceUser interfaceMapping module from logical to physicalMapping module from logical to physicalPrivacy sub-systemsPrivacy sub-systemsIntegrity sub-systemIntegrity sub-system

Page 84: System Analysis and Design

Physical database designPhysical database design

Objective of this phase is to give the system Objective of this phase is to give the system

definitions of data and to build data structure definitions of data and to build data structure

(file/table) ready for installation base on the (file/table) ready for installation base on the

following information:following information:

Constraints of user’s system implementationConstraints of user’s system implementation

Details of data usage analysis: data model, Details of data usage analysis: data model,

relationship model, path analysis diagram, relationship model, path analysis diagram,

navigation model and data usage chart.navigation model and data usage chart.

Page 85: System Analysis and Design

a First – cut Data Design a First – cut Data Design

Some basic mappings:Some basic mappings:Entities become tablesEntities become tablesAttributes become columnsAttributes become columnsUnique identifiers become primary andUnique identifiers become primary and

unique key constraints. unique key constraints.Relationships become foreign key columnsRelationships become foreign key columns

and constraints. and constraints.

Note: Producing the first – cut is only the first Note: Producing the first – cut is only the first

stage in building a complete data design. stage in building a complete data design.

Page 86: System Analysis and Design

Physical storage structure designPhysical storage structure design

Important aspects in designing the physical storage Important aspects in designing the physical storage structure:structure:Data independenceData independence

All relationships between entities described inAll relationships between entities described in conceptual schema are demonstrated by effective conceptual schema are demonstrated by effective accessing paths in the physical storage structure accessing paths in the physical storage structure All accessing requirements by applicationAll accessing requirements by application programs sent to physical schema are presented by a programs sent to physical schema are presented by a logical language independent with the data structure logical language independent with the data structure being used, including physical storage structure. being used, including physical storage structure.

Advantages of an independent data databaseAdvantages of an independent data database::New application programs can be added to theNew application programs can be added to the system at minimum costs. system at minimum costs.The installation environment can be changed moreThe installation environment can be changed more easily easily

Page 87: System Analysis and Design

PrivacyPrivacy

Main functions of private moduleMain functions of private module::Identify usersIdentify usersList components of database schema correspondingList components of database schema corresponding to the components of database that users wish to have to the components of database that users wish to have access to access toCheck accessing ties to see whether an access is legalCheck accessing ties to see whether an access is legal - Ids, passwords or magnetic cards - Ids, passwords or magnetic cards

The most popular kinds of constraintsThe most popular kinds of constraints::Privacy constraints depicted as users’ accessingPrivacy constraints depicted as users’ accessing authority exclusively to the parts of physical storage authority exclusively to the parts of physical storage structure, such as limiting access to records of data structure, such as limiting access to records of data table tableSome constraints limit the access to several functionsSome constraints limit the access to several functions of the program or relevant data files. of the program or relevant data files. Other constraints may require special procedure andOther constraints may require special procedure and are often located at in/out application program. are often located at in/out application program.

Page 88: System Analysis and Design

Integrity sub-system designingIntegrity sub-system designing

Integrity sub-system is responsible for Integrity sub-system is responsible for maintaining the integrity by protecting database maintaining the integrity by protecting database against illegal changes and damages in the whole against illegal changes and damages in the whole system, which may cause data errors. system, which may cause data errors. Data errors can be seen in the following cases:Data errors can be seen in the following cases:

Data are not updated frequently.Data are not updated frequently.Data are updated simultaneouslyData are updated simultaneouslyData are damaged while being coded,Data are damaged while being coded, changed or transmitted from a distance changed or transmitted from a distanceData are damaged while being stored due toData are damaged while being stored due to hardware faults. hardware faults.

Page 89: System Analysis and Design

Integrity sub-system designing (Integrity sub-system designing (cc))

One of the most important aspect to secure the One of the most important aspect to secure the

database against errors is to back-up the data database against errors is to back-up the data

regularly and recover the data when necessaryregularly and recover the data when necessary

Lock strategyLock strategy

Data back upData back up

RecoveryRecovery

Page 90: System Analysis and Design

Database design in presented exampleDatabase design in presented example

Base on the entity diagrams in the system Base on the entity diagrams in the system

analysis phase, we continually design the tables analysis phase, we continually design the tables

correspondent with them as the following rules:correspondent with them as the following rules:

EntityEntity becomes becomes TableTable

Attribute Attribute becomes Column (field) becomes Column (field)

unique identifier unique identifier becomes becomes primary keyprimary key