system analysis and design
TRANSCRIPT
ModuleModule
System analysis and designSystem 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
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
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%
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
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
1.1. OVERVIEW1.1. OVERVIEW
Definition of SystemDefinition of System
Participants to system development
System development life – cycle
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
System developmentSystem developmentlife – cyclelife – cycle
Initial investigationInitial investigation
Feasibility studyFeasibility study
General designGeneral design
Detailed designDetailed design
ImplementationImplementation
System audit System audit
1.2 System approach1.2 System approach
System approach
The system's requirements
Users requirements
Technical requirements
Some principals Investigation methods
Survey report
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.
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.
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.
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
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.
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...
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
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
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
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;
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.
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;
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...)
Roles and requirements of systems Roles and requirements of systems analystanalyst
System analysts’ roles
System analysts’ required
qualifications qualifications
System analysts’ rolesSystem analysts’ roles
Archaeologist and scribeArchaeologist and scribe
InnovatorInnovator
MediatorMediator
Project leader Project leader
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.
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.
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
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
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.
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?
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
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.
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.
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
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
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
2.2. Information analysis,2.2. Information analysis, data model data model
Data model
The advanced data modeling
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)
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
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
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
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
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)
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.
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.
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
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
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
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
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.
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
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
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
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?
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
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
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
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
The phases of Structured DesignThe phases of Structured Design
Logical Design development Logical Design development
Physical Design developmentPhysical Design development
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
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.
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.
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
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
3.3 User – computer interface3.3 User – computer interface design design
User - Computer interface design
Example
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
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
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.
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.
3.4 System monitoring design3.4 System monitoring design
System monitoring design
Method of analyzing controls
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).
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.
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
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
Designing approachDesigning approach
Two modules types:Two modules types:
functional module functional module
intersection moduleintersection module
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
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
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
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.
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.
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
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
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.
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.
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
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.
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.
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
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