8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 1/227
Chapter 1
Introduction to SystemsDesign and Analysis
Systems Analysis and Design
Kendall and Kendall
Sixth Edition
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 2/227
1-2
Readings & Major Topics
Readings
Chapter 1 (p. 1) in the textbook
Major Topics
Information systems
SDLC (Systems Development Life Cycle)
Phases of analysis and design
CASE tools
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 3/227
1-3
Information
What is information?
Domain dependent
Facts, concepts, or instructions; any sort of knowledgeor supposition which can be communicated.
Organizational resource
Must be managed as carefully as other resources (e.g.,raw material, labor)
Costs are associated with information processing
Production, distribution, security, storage, retrieval, …
Information processing must be managed to take fulladvantage of its potential
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 4/227
1-4
Systems Analysis & Design
Goals Analyze data input, processing or
transforming data, data storage, andinformation output within the context of aparticular business
Analyze, design, and implement
improvements in the functioning of abusiness via the use of computerizedinformation systems
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 5/227
1-5
How can we Analyze and DesignSystems?
Intuitive approach
Pros and Cons?
Systematic approach
Pros and cons?
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 6/227
1-6
Systems Analysis and Design inthis Course
Systematic approach to identifyingproblems, opportunities, and objectives;
analyzing the information flows inorganizations; and designingcomputerized information systems to
solve a problem
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 7/2271-7
Systems Analyst
Performs systems analysis and design
Assesses how businesses function byexamining the inputting and processingof data and the outputting of information with the intent of improving
organizational processes
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 8/2271-8
Different Types of Systems Analysts
Two major types
Outside consultants to businesses
Hired specifically to address information systems issues
within a business
Supporting experts (within a business you are regularlyemployed)
Not a full-blown systems project, but rather entails a smallmodification or decision affecting a single department
Your role as a systems analyst: agent of change
Catalyst for change (i.e., improvements to the businessthat can be done via information systems)
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 9/2271-9
Interactions of a Systems Analyst
A systems analyst interacts with usersat different levels in the organization
User managersOperations workers
Systems managers
Systems designers
Programmers
….
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 10/2271-10
Qualities of a Systems Analyst
Analysts are problem solvers.
Communication skills
Analysts must be ethical with users and customers ACM‟s (Association of Computing Machinery) code of
ethics
…
respect the privacy of others
Give comprehensive and thorough evaluations of computer systems and their impacts, including
analysis of possible risks
…..
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 11/2271-11
Systems Development LifeCycle (SDLC)
SDLC is a systematic approach tosolving business problems
It is divided into seven phasesEach phase has unique activities
A phase is never accomplished as a
separate phaseSeveral activities can occur simultaneously
Activities may be repeated
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 12/2271-12
Phase 1: Identifying problems,opportunities, and objectives
Identifying
Problems: don‟t want to address the wrong
problemsOpportunities: situations that can be improved
Objectives: how can the organization reach itsobjectives via computerized IS
Personnel involved
Analyst
User managers
Systems managers
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 13/2271-13
Phase 2: Determining InformationRequirement
Understand how the business functions and havecomplete information on the people, goals, data, andprocedures
Interview management, operations personnel
Gather systems/operating documents
Use questionnaires
Observe the system and personnel involved
Learn the details of the current system functions:who (people involved), what (business activities),where (environment in which the work takes place),when (timing), how (procedures), and the why (why
is it done this way)
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 14/227
1-14
Phase 2: Determining InformationRequirement (cont‟d)
Personnel involved
Analyst
User managers
Operations workers
Systems managers
Information Analyst (phases 1 and 2)
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 15/227
1-15
Phase 3: Analyzing SystemsNeeds
Analyzing system needs
Create data flow diagrams
Document procedural logic for data flow diagramprocesses
Complete the data dictionary
Analyze structured decisions
Make semistructured decisions (decisions takenunder risk)
Prepare and present the system proposal
Recommend the optimal solution to management
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 16/227
1-16
Phase 3: Analyzing SystemsNeeds (cont‟d)
Analyst makes recommendations tomanagement
Management decide whether to continueor not
Personnel involved Analyst
User managers
Systems managers
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 17/227
1-17
Phase 4: Designing theRecommended System
Accomplish the logical design of theinformation system
Design the user interfaceDesign output
Design input
Design files and/or database
Design control and backup procedures Produce decision trees or tables
Produce program specifications
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 18/227
1-18
Phase 4: Designing theRecommended System (cont‟d)
Personnel involved
Analyst
System designer
User managers
Operations workers
Systems managers
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 19/227
1-19
Phase 5: Developing andDocumenting Software
Develop any original software that is needed
Design computer programs using structure
charts, Nassi-Schneiderman charts, andpseudocode
Walkthrough program design
Write computer programsDocument software with help files, procedure
manuals, and Web sites with Frequently AskedQuestions (FAQs)
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 20/227
1-20
Phase 5: Developing andDocumenting Software (cont‟d)
Personnel involved
Analyst
System designer
Programmers
Systems managers
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 21/227
1-21
Phase 6: Testing and Maintainingthe system
Testing and maintaining the system
Test and debug computer programs
Test the computer system Enhance system
Personnel involved
Analyst
System designer
Programmers
Systems management
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 22/227
1-22
System Maintenance
Maintenance: starts in phase 6 butcarried out routinely throughout the life
of the ISSystem maintenance isRemoving undetected errors, and
Enhancing existing softwareTime spent on maintenance typically
ranges from 48-60 percent of total time
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 23/227
1-23
System Enhancements
Systems are enhanced for the followingreasons:
Adding additional features to the system
Business and governmental requirementschange over time
Technology, hardware, and software arerapidly changing
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 24/227
1-24
Phase 7: Implementing andEvaluating the System
Implementing and evaluating the system
Plan conversion from the old system to the
new oneTrain users
Purchase and install new equipment
Convert files
Install system
Review and evaluate system: whether theintended users are indeed using the system
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 25/227
1-25
Phase 7: Implementing andEvaluating the System (cont‟d)
Personnel involved
Analyst
System designer
Programmers
User managers
Operations workersSystems managers
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 26/227
1-26
CASE Tools
Computer-Aided Software Engineering (CASE)
CASE tools are automated, microcomputer-basedsoftware packages for systems analysis anddesign
Four reasons for using CASE tools are:
To increase analyst productivity
Facilitate communication among analysts and users
Providing continuity between life cycle phases
To assess the impact of maintenance
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 27/227
1-27
CASE Tool Categories
CASE tools may be divided into severalcategories
Upper CASE (also called front-end CASE)tools, used to perform analysis and design
Lower CASE (also called back-end CASE).
These tools generate computer languagesource code from CASE design
Integrated CASE, performing both upperand lower CASE functions
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 28/227
1-28
Upper CASE
Upper CASE tools
Create and modify the system design
Store data in a project repository
The repository is a collection of records,elements, diagrams, screens, reports, and
other project informationThese CASE tools model organizational
requirements and define systemboundaries
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 29/227
1-29
Lower CASE
Lower CASE tools generate computersource code from the CASE design
Source code may usually be generatedin several languages
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 30/227
1-30
Lower CASE: Advantages of Generating Code
Time to develop new systems decreases
The time to maintain generated code is less
than to maintain traditional systemsComputer programs may be generated in more
than one language
CASE design may be purchased from third-
party vendors and tailored to organizationalneeds
Generated code is free from program coding
errors
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 31/227
1-31
Reverse Engineering
Reverse engineering is generating theCASE design from computer program
codeSource code is examined, analyzed, and
converted into repository entities
Uses Computer-Assisted Reengineering(CARE) software
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 32/227
1-32
Reverse Engineering Produces
Depending on the tool set used:
Data structures and elements, describing
the files, records, and fieldScreen designs, if the program is online
Report layouts for batch programs
A structure chart showing the hierarchy of the modules in the program
Database design and relationships
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 33/227
1-33
Advantages of ReverseEngineering
It has the following advantages:
Reduced system maintenance time
Program documentation is produced forloosely documented programs
Structured programs may be generated fromunstructured, older programs
Future system maintenance is easier toimplement
Unused portions of programs may be
eliminated
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 34/227
Chapter 2
Information Gathering:Interactive Methods
Systems Analysis and Design
Kendall and Kendall
Sixth Edition
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 35/227
4-35
Readings & Major Topics
Readings
Chapter 4 in the textbook (p. 89)
Major Topics
Interviewing techniques
Joint Application Design (JAD)
Questionnaires
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 36/227
4-36
Information Gathering in SDLC
Phase 1 Identifyingproblems, opportunities,
and objectives
Phase 2 Determining
information requirements
Phase 3 Analyzingsystems needs
Phase 4 Designing the
recommended system
Phase 5 Developing anddocumenting software
Phase 6 Testing andmaintaining the system
Phase 7 Implementing
and evaluating thesystem
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 37/227
4-37
Information Gathering:Two Approaches
Interactive: talking with and listening topeople in the organization through a series of carefully composed questions Example: interviewing
Unobtrusive: do not require the same degreeof interactivity between analysts and users Example: observing
Our focus: Interactive methods Interviewing JADQuestionnaires
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 38/227
4-38
Interviewing
Important method for collecting data oninformation system requirements
Directed conversation with a specific purposethat uses Q&A format
Reveals information about
Interviewee opinions
Feelings about the current state of the system
Organizational and personal goals
Informal procedures
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 39/227
4-39
Planning the Interview
Five steps in planning the interview are
Reading background material
Establishing interview objectives
Deciding whom to interview
Preparing the interviewee
Deciding on question types and structure
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 40/227
4-40
Before the Interview
Contact the interviewee and confirm theinterview
Dress appropriately
Arrive a little early
Affirm that you are present and readyto begin the interview
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 41/227
4-41
Recording the Interview
Interviews can be recorded with taperecorders or notes
Audio recording should be done withpermission and understanding
Ad t f A di
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 42/227
4-42
Advantages of AudioRecording the Interview
Providing a completely accurate record of
what each person saidFreeing the interviewer to listen and
respond more rapidly
Allowing better eye contact and betterrapport
Allowing replay of the interview for otherteam members
Di d t f A di
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 43/227
4-43
Disadvantages of AudioRecording the Interview
Possibly making the interviewee nervous
and less apt to respond freelyDifficulty in locating important passages on
a long tape
N t T ki D i
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 44/227
4-44
Note Taking DuringInterviews: Pros and Cons
Pros
Keeping the interviewer alert
Aiding recall of important interview trendsShowing interviewer interest in the interview
Cons
Losing vital eye contactLosing the train of conversation
Causing excessive attention to facts and less
attention to feelings
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 45/227
4-45
Beginning the Interview
Shake hands
Remind them of your name and why
you are there
Take out note pad or tape recorder
Make sure tape recorder is working
correctly
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 46/227
4-46
Opening Questions
Start with pleasant conversation
Listen closely to early responses
Pick up on vocabulary
Look for metaphors
“The accounting department is a zoo”
“We‟re one big family here”
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 47/227
4-47
During the Interview
The interview should not exceed 45minutes to one hour
Make sure that you are understandingwhat the interviewee is telling you
Ask for definitions if needed
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 48/227
4-48
Closing the Interview
Always ask “Is there anything else thatyou would like to add?”
Ask whom you should talk with next
Set up any future appointments
Thank them for their time and shake
hands
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 49/227
4-49
Interview Report
Write as soon as possible after theinterview
Provide an initial summary, then moredetail
Review the report with the respondent
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 50/227
4-50
Question Types
There are two basic types of interviewquestions:
Open-endedClosed
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 51/227
4-51
Open-Ended Questions
Allow interviewees to respond how theywish, and to what length they wish
E.g.: Once the data is submitted via the Website, how is it processed?
Appropriate when the analyst is interestedin breadth and depth of reply
Advantages of Open Ended
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 52/227
4-52
Advantages of Open-EndedQuestions
Putting the interviewee at ease
Allowing the interviewer to pick up on the
interviewee's vocabularyProviding richness of detail
Revealing avenues of further questioning
that may have gone untapped Allows more spontaneity
Useful if the interviewer is unprepared
Disadvantages of Open Ended
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 53/227
4-53
Disadvantages of Open-EndedQuestions
May result in too much irrelevant detail
Possibly losing control of the interview
May take too much time for the amount of useful information gained
Potentially seeming that the interviewer is
unpreparedPossibly giving the impression that the
interviewer is on a "fishing expedition”
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 54/227
4-54
Closed Interview Questions
Limit the number of possibleresponses
E.g.: On average, how many calls does thecall center receive monthly?
Appropriate for generating precise,reliable data which is easy to analyze
Advantages of Closed
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 55/227
4-55
Advantages of ClosedInterview Questions
Saving interview time
Easily comparing interviews
Getting to the pointKeeping control of the interview
Covering a large area quickly
Getting to relevant data
Disadvantages of Closed
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 56/227
4-56
Disadvantages of ClosedInterview Questions
Boring for the interviewee
Failure to obtain rich detailMissing main ideas
Failing to build rapport between
interviewer and interviewee
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 57/227
4-57
Bipolar Questions
Questions that may be answered with a „yes‟ or „no‟ or „agree‟ or „disagree‟
E.g.: Do you want to receive a printout of your account status every month?
E.g.: Do you agree or disagree thatecommerce on the Web lacks security?
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 58/227
4-58
Probing Questions
Elicit more detail about previous questions
The purpose of probing questions is
To get more meaning To clarify
To draw out and expand on the interviewee'spoint
E.g.: Please give an illustration of the securityproblems you‟re experiencing with your onlinesystems?
Tradeoffs: Open ended and
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 59/227
4-59
Tradeoffs: Open-ended andClosed Questions
Reliability of data
Efficient use of time
Precision of data Breadth and depth
Interviewer skill required
Ease of analysis
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 60/227
4-60
Question Pitfalls
Leading questions: imply an answer
Tend to guide interviewees into responses apparentlydesired by the interviewer
Should be avoided to reduce bias and improve reliabilityand validity
E.g.: You agree with other managers that inventorycontrol should be computerized, don‟t you?
Double-barreled questions: two questions in one Interviewees may answer only one question, leading to
difficulties in interpretation
E.g.: What decisions are made during a typical day and
how do you make them?
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 61/227
4-61
Question Sequencing
There are three basic ways of structuring interviews:
PyramidFunnel
Diamond
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 62/227
4-62
Pyramid Structure
Begins with very detailed, often closedquestions
Expands by allowing open-endedquestions and more generalizedresponses
Is useful if interviewees need to bewarmed up to the topic or seemreluctant to address the topic
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 63/227
4-63
Funnel Structure
Begins with generalized, open-endedquestions
Concludes by narrowing the possibleresponses using closed questions
Provides an easy, non-threatening way
to begin an interviewIs useful when the interviewee feels
emotionally about the topic
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 64/227
4-64
Diamond Structure
A diamond-shaped structure begins in avery specific way
Then more general issues are examinedConcludes with specific questions
Is useful in keeping the interviewee's
interest and attention through a varietyof questions
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 65/227
4-65
Joint Application Design (JAD)
Can replace a series of 1-on-1 interviews
Allows the analyst to accomplish
requirements analysis and design the userinterface with the users in a group setting
Systems analysts (SAs): passive role
SAs Should be present
May give expert opinions about anydisproportionate costs of solutions
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 66/227
4-66
Topics Discussed in JAD
Requirements analysis and user interfacedesign But could be used at any appropriate phase of
SDLC
Address topics such as Planning, receiving, receipt processing/tacking,
monitoring and assigning, processing, recording,
sending, and evaluating For each topic, ask:
Who, what, how, where, and why
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 67/227
4-67
JAD Personnel
Analysts
Users, executives, … (8 to 12)
Observers (technical experts) A scribe: write down everything
A session leader
Senior person: visible symbol of organizationalcommitment
May be outside management consultant
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 68/227
4-68
Preparing a JAD Session
Two-to-four-day sessions offsite
If possible, away from the organization, in
comfortable surroundingsMinimize the daily distractions and
responsibilities of the participants‟ regular work
Use of group decision support facilities (e.g.,
networked computers, projection system, …) Make use everybody will be able to attend
Orientation meeting (1/2 day) a week before the workshop
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 69/227
4-69
When to Use JAD
Users are restless and want somethingnew
The organizational culture supports jointproblem-solving behaviors
Analysts forecast an increase in thenumber of ideas using JAD
Personnel may be absent from their jobsfor the length of time required
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 70/227
4-70
Benefits of JAD
Time is saved, compared with traditional
interviewing (15%)Rapid development of systems
Improved user ownership of the system
Creative idea production is improved
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 71/227
4-71
Drawbacks of Using JAD
Requires a large block of time be availablefor all session participants
If preparation is incomplete, the sessionmay not go very well
If the follow-up report is incomplete, thesession may not be successful
The organizational skills and culture maynot be conducive to a JAD session
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 72/227
4-72
Questionnaires
Also called Surveys Respondent: person answering a
questionnaire (or survey)
Useful in gathering information from keyorganization members about Attitudes: what people say they want (in the new
system)
Beliefs: what people think is actually true Behaviors: what organizational members do Characteristics: properties of people or things
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 73/227
4-73
When to Use Questionnaires
Organization members are widely dispersedMany members are involved with the project Exploratory work is needed: quantify what was
found in interviewsHow widespread or limited an opinion expressed in aninterview really is
Problem solving prior to interviews is necessaryRaise important issues before interviews are scheduled
May be used in conjunction with interviewsFollow-up unclear questionnaire responses withinterviews
Design questionnaires based on what was discovered ininterviews
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 74/227
4-74
Question Types
Questions are designed as either
Open-ended
Try to anticipate the response you will get
Well suited for getting opinions
Useful in explanatory situations
Useful when it is impossible to list effectively all possibleresponses to a question
ClosedUse when all the options may be listed
When the options are mutually exclusive
Open-Ended vs.
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 75/227
4-75
Open Ended vs.Closed Questions
Open-ended Closed
Slow Speed of completion FastHigh Exploratory nature Low
High Breadth and depth Low
Easy Ease of preparation Difficult
Difficult Ease of analysis Easy
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 76/227
4-76
Questionnaire Language
Simple: use the language of respondents wheneverpossible
Specific and short questionsFree of bias
Not patronizing: avoid low-level language choices
Technically accurate
Right question to the right person: addressed tothose who are knowledgeable
Appropriate for the reading level of the respondent
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 77/227
4-77
Using Scales in Questionnaires
Assigning numbers or other symbols to anattribute/characteristic for the sake of
measuring that attribute/characteristic
Devised to have respondents act as judges
for the subject of the questionnaire
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 78/227
4-78
Measurement Scales
There are four different forms of measurement scales:
NominalOrdinal
Interval
Ratio
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 79/227
4-79
Nominal Scales
Nominal scales are used to classify
things into categories
What type of software do you use the most?
1 = Word Processor
2 = Spreadsheet3 = Database
4 = An Email Program
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 80/227
4-80
Ordinal Scales
Allow classification
Ordinal scales also imply rank orderingThe support staff of the Technical Support Group is:
1. Extremely Helpful
2. Very Helpful
3. Moderately Helpful
4. Not Very Helpful
5. Not Helpful At All
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 81/227
4-81
Interval Scales
An interval scale is used when the
intervals are equalThere is no absolute zero
How useful is the support given by the Technical Support Group?
NOT USEFUL EXTREMELY
AT ALL USEFUL
1 2 3 4 5
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 82/227
4-82
Ratio Scales
The intervals between numbers areequal
Ratio scales have an absolute zeroApproximately how many hours do you spend on the Internet daily?
0 2 4 6 8
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 83/227
4-83
Guidelines for Using Scales
Use a ratio scale when intervals areequal and there is an absolute zero
Use an interval scale when intervals areequal but there is no absolute zero
Use an ordinal scale when the intervals
are not equal but classes can be rankedUse a nominal scale when classifying
but not ranking
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 84/227
4-84
Validity and Reliability
Reliability: Consistency in response
Getting the same results if the samequestionnaire was administered againunder the same conditions
Validity: Degree to which the questionmeasures what the analyst intends tomeasure
Problems Associated With Poorly
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 85/227
4-85
Problems Associated With PoorlyConstructed Scales
Leniency: caused by easy raters
Central tendency: respondents rate
everything as averageHalo effect: impression formed in one
question carries into the next question
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 86/227
4-86
Questionnaire Format
Allow ample white space
Allow enough space for responses to betyped for open-ended questions
Ask respondents to clearly mark theiranswers
Be consistent in style
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 87/227
4-87
Order of Questions
Most important questions go first
Similar topics should be clustered
together
Controversial questions should bepositioned after less controversial
questions
Methods of Administering
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 88/227
4-88
gQuestionnaires
Convening All concerned respondentstogether at one time
Personally administering the questionnaire
Allowing respondents to self-administer thequestionnaire
Mailing questionnaires: supply deadlines,instructions, and return postage
Administering over the Web or via email
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 89/227
Chapter 3Data Flow Diagrams
Systems Analysis and Design
Kendall and KendallSixth Edition
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 90/227
90
Readings & Major Topics
ReadingsChapter 7 in the textbook (p. 191)
Major TopicsData flow diagram symbols
Data flow diagram levels
Creating data flow diagramsPhysical and logical data flow diagrams
Partitioning
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 91/227
91
Data Flow Diagrams in SDLC
Phase 1 Identifying
problems, opportunities,
and objectives
Phase 2 Determining
information requirements
Phase 3 Analyzingsystems needs
Phase 4 Designing the
recommended system
Phase 5 Developing and
documenting software
Phase 6 Testing and
maintaining the system
Phase 7 Implementing
and evaluating the
system
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 92/227
92
Data Flow Diagrams (DFDs)
One of the main methods available foranalyzing data-oriented systems
DFD: a graphical representation of datamovement through the organizationProcesses
Transforming of data as it moves through a
variety of processes within the enterprise
Inputs/outputs
Data storage
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 93/227
93
Why DFDs?
Freedom from committing to the technical
implementation too earlyUnderstanding of the interrelationships of
systems and subsystems
Communicating current system knowledgeto users
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 94/227
94
Basic Symbols in DFDs
A double square for an external entity--a
source or destination of data An arrow for movement of data from one
point to another
A rectangle with rounded corners for theoccurrence of transforming process
An open-ended rectangle for a data store
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 95/227
95
External Entities
Represent people or organizationsoutside of the system being studied
Shows the initial source and finalrecipient of data and information
Should be named with a noun,
describing that entityCustomer
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 96/227
96
External Entities (cont‟d)
External entities may be
A person, such as CUSTOMER or STUDENT
A company or organization, such as BANK or SUPPLIER
Another department within the company,such as ORDER FULFILLMENT
Another system or subsystem, such as theINVENTORY CONTROL SYSTEM
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 97/227
97
Processes
Represent either:
A whole system
A subsystemWork being done, an activity
Names should be in the form verb-
adjective-nounThe exception is a process that represents
an entire system or subsystem
1
Add New
Customer
2
CustomerInquiry
Subsystem
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 98/227
98
Data Stores
Name with a noun, describing the data
Data stores are usually given a unique
reference number, such as D1, D2, D3 Include any data stored, such as:
A computer file or database
A transaction file A set of tables
A manual file of records
D1CustomerMaster
New Customer
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 99/227
99
Data Flow
Shows the data about a person, place,or thing that moves through the system
Names should be a noun that describesthe data moving through the system
Arrowhead indicates the flow direction
Use double headed-arrows only when aprocess is reading data and updatingthe data on the same table or file
Customer Record
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 100/227
100
Data Flow Diagram Levels
Data flow diagrams are built in levels
The top level is the Context level DFD
Each process may explode to a lowerlevel
The lower level diagram number is the
same as the parent process numberProcesses that do not create a child
diagram are called primitive
Data Flow Diagram Levels
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 101/227
101
g(cont‟d)
Different levels of DFDs
One (1) Context level DFD
One (1) Diagram 0One or more Child Diagrams
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 102/227
102
Context Level DFD
Contains only one process, representing theentire system to be designed/analyzed
Highest-level diagram
Overview including basic inputs, the generalsystem, and basic outputs
The process is given the number zero (0)
Includes all external entities as well as majordata flow to and from them
The diagram does not contain any data stores
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 103/227
103
Diagram 0
Diagram 0 is the explosion of thecontext level diagram (i.e., process 0)
Should include up 9 processes Any more will result in a cluttered diagram
Processes are numbered with an integer
The major data stores and all externalentities are included in Diagram 0
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 104/227
104
Child Diagrams
Each process on diagram zero may be (if notprimitive) exploded to create a child diagram
Each process on a lower-level diagram maybe (if not primitive) exploded to createanother child diagram
A diagram found below Diagram 0 is given
the same number as its parent processProcess 3 in Diagram 0 would explode to
Diagram 3
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 105/227
105
Child Diagrams (cont‟d)
Each process is numbered with the parentdiagram number, a period, and a unique childnumber
Examples are:On Diagram 3, the processes would be
numbered 3.1, 3.2, 3.3 and so on
3.2 on Diagram 3, a child of process 3
5.2.7 on Diagram 5.2, a child of process 5.2
3.2
Edit
Customer
5.2.7
CalculateCustomerDiscount
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 106/227
106
Child Diagrams (cont‟d)
External entities are usually not shownon the child diagrams below Diagram 0
If the parent process has data flowconnecting to a data store, the childdiagram may include the data store as
well
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 107/227
107
Child Diagrams (cont‟d)
A lower-level diagram may contain data storesnot shown on the parent process, such as
A file containing a table of information (such asa tax table)
A file linking two processes on the child diagram
Minor data flow, such as an error line, may be
included on a child diagramHandling of exceptions is generally ignored for
the first two levels
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 108/227
108
Child Diagrams (cont‟d)
Vertical Balancing rule
A child diagram cannot produce output or
receive input that the parent process doesnot also produce or receive
Must be respected while designingDFDs
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 109/227
109
Child Diagrams (cont‟d)
An interface data flow is data that areinput or output from a child diagram
that matches the parent diagram dataflow
Processes that do not create a child
diagram are called primitive processesLogic is written for these processes (will be
discussed in another chapter)
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 110/227
110
Data Flow Diagram Errors
A process with only input data flow or
only output data flow from it
AddNewCustomer
1
AddNewCustomer
2
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 111/227
111
Data Flow Diagram Errors (cont‟d)
Data stores or external entities are connecteddirectly to each other, in any combination
Customer D1 Customer
Vendor D2 Vendor Master
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 112/227
112
Data Flow Diagram Errors (cont‟d)
Incorrectly labeling data flow or objects
Examples are
Labels omitted from data flow or objects
Data flow labeled with a verb
Processes labeled with a noun
Too many processes on a data flowdiagram
Nine is the suggested maximum
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 113/227
113
Data Flow Diagram Errors (cont‟d)
Omitting data flow from the diagram
Unbalanced decomposition between a
parent process and a child diagramThe data flow in and out of a parent
process must be present on the childdiagram
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 114/227
114
Guidelines for Developing DFDs
Create the context level diagram, includingall external entities and the major dataflow to or from them
Create Diagram 0 by analyzing the majoractivities within the context process
Include the external entities and major
data stores
Create a child diagram for each complexprocess on Diagram 0
Guidelines for Developing
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 115/227
115
p gDFDs (cont‟d)
Detailed DFDs (child or Diagram 0) may bedeveloped by
Making a list of business activities
Analyzing what happens to an input data flowfrom an external entity
Analyzing what is necessary to create an outputdata flow to an external entity
Examining the data flow to or from a data store
Unclear areas of a data flow diagram should benoted and investigated
E t D i DFD
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 116/227
116
Event Driven DFDs
An input flow from an external entity iscalled a trigger
It starts processesEvents are activities that happen within
the system
E t D i DFD ( t‟d)
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 117/227
117
Event Driven DFDs (cont‟d)
Another approach used to create a dataflow fragment
Analyze events, which are summarized in anevent table
Events are either
External, coming from outside the system, orTemporal, which occur at fixed times
E t T bl
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 118/227
118
Event Tables
An event table is used to create a dataflow diagram by analyzing each event
and the data used and produced by theevent
Every row in an event table represents
a unique activity and is used to createone process on the data flow diagram
DFD P i
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 119/227
119
DFD Progression
The progression of creating DFDs is
Create a logical DFD of the current system
Next add all the data and processes not inthe current system which must be presentin the new system
Finally derive the physical data flowdiagram for the new system
L i l DFD
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 120/227
120
Logical DFDs
Logical data flow diagrams show howthe business operates
Represent features that would exist nomatter what the physical means of doing business are.
Processes that would exist regardless of the type of system implemented
L i l DFD Ad t
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 121/227
121
Logical DFDs Advantages
Better communication with users
More stable systems, since the design is
based on a business framework Increased understanding of the business
by analysts
Elimination of redundancy
Ph i l DFD
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 122/227
122
Physical DFDs
Show how the system operates or how the newsystem will be implemented
Physical DFDs include
Clarifying which processes are manual/automatic
Describing processes in greater detail
“Sequencing processes” to rearrange the order of records
“Validation processes” for ensuring accurate data input
Intermediate data stores
Actual document and file names
Controls to ensure accuracy and completeness
CRUD M t i
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 123/227
123
CRUD Matrix
Physical DFDs include processes foradding, reading, changing, and deleting
recordsCRUD is an acronym for Create, Read,
Update, Delete
A CRUD matrix shows which processesadd, read, update, or delete master filerecords
Pa titioning
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 124/227
124
Partitioning
Process of analyzing a DFD and derivinga series of manual procedures and
computer programs A dashed line is drawn around a group
of processes that are included in each
computer program or manual procedure
Manual Procedures
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 125/227
125
Manual Procedures
Performed by people
Have manual input and manual output
Computer processing not used withmanual processes
Batch Processes
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 126/227
126
Batch Processes
If the data flow into and out of aprocess is entirely computer
information, the process is called abatch process
Batch processes do not require any
human intervention A job stream is several separate
programs running back-to-back, usuallya series of batch processes
User Interface
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 127/227
127
User Interface
A user interface represents a screen, adata entry operation, a report, or some
other means for persons to interact witha computer
It occurs when the data flow links a
manual and an automated process
Reasons for Partitioning
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 128/227
128
Reasons for Partitioning
Different user groups should have differentprograms
Processes that execute at different times must be in
separate programs Processes may be separated into different programs
for security
Similar tasks may be included in the same program
Several batch processes may be included in thesame program for efficiency
Several processes may be included in the sameprogram or job stream for consistency of data
Using DFDs
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 129/227
129
Using DFDs
Unexploded data flow diagrams are useful to identifyinformation requirements
Exploded data flow diagrams can be used forpresentation, education, and gathering feedback information from users
DFDs may be used to analyze the system to ensurethat the design is complete
DFDs are used to partition the system into programs
Data flow diagrams can be used for the systemdocumentation
Chapter 4
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 130/227
Chapter 4
Analyzing SystemsUsing Data Dictionaries
Systems Analysis and Design
Kendall and KendallSixth Edition
Readings & Major Topics
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 131/227
131
Readings & Major Topics
ReadingsChapter 8 in the textbook (p. 245)
Major TopicsData dictionary concepts
Defining data flow
Defining data structures
Defining elements
Defining data stores
Data Dictionaries in SDLC
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 132/227
132
Data Dictionaries in SDLC
Phase 1 Identifying
problems, opportunities,
and objectives
Phase 2 Determining
information requirements
Phase 3 Analyzingsystems needs
Phase 4 Designing the
recommended system
Phase 5 Developing and
documenting software
Phase 6 Testing and
maintaining the system
Phase 7 Implementing
and evaluating the
system
Data Dictionary
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 133/227
133
Data Dictionary
Reference work of data about data(metadata)
Main method for analyzing data flowsand data stores
Collects, coordinates, and confirms
what a specific data term means todifferent people in the organization
Reasons for Using a DataDictionary
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 134/227
134
Dictionary
Some reasons
Provide documentation
Eliminate redundancy
Validate the data flow diagram
Provide a starting point for developing screensand reports
Develop the logic for DFD processes
Automated dictionaries (CASE tools)
Cross-reference data items
The Repository
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 135/227
135
The Repository
A data repository is a large collection of project information
It includes
Information about system data
Procedural logic
Screen and report design
Project requirements and deliverables
Project management information (e.g.,delivery schedules, achievements, …)
Data Dictionary Contents
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 136/227
136
Data Dictionary Contents
Data dictionaries contain data about
Data flow
Data flow description formData structures
Data Elements
Element description form
Data stores
Data store description form
Data Flow Description Form
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 137/227
137
Data Flow Description Form
Each data flow should be defined withdescriptive information and it's
composite structure or elementsIncludes:
ID - identification number
Unique name for the data flow: shouldappear on the DFD
A general description of the data flow
Data Flow Description Form(cont‟d)
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 138/227
138
(cont d)
Includes:
The source of the data flow
This could be an external entity, a process, or adata flow coming from a data store
The destination of the data flow
Type of data flow, either
A record entering or leaving a file
Containing a report, form, or screen
Internal - used between processes
Data Flow Description Form(cont‟d)
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 139/227
139
(cont d)
Includes:
The name of the data structure or
elementsThe volume per unit time
This could be records per day or any other unitof time
An area for further comments andnotations about the data flow
Data Flow Description Form -Example
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 140/227
140
Example
Name Customer Order
Description Contains customer order information and is used
to update the customer master and item files and
to produce an order record.
Source Customer External Entity
Destination Process 1, Add Customer Order
Type Screen
Data Structure Order Information
Volume/Time 10/hourComments An order record contains information for one
customer order. The order may be received by
mail, fax, or by telephone.
Defining Data Structures
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 141/227
141
Defining Data Structures
Data structures are a group of smallerstructures and elements
An algebraic notation is used torepresent the data structure
Algebraic Notation
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 142/227
142
Algebraic Notation
The symbols used are
Equal sign, meaning “consists of”
Plus sign, meaning "and”
Braces {} meaning repetitive elements,also called repeating groups or tables
Brackets [] for an either/or situation
The elements listed inside are mutuallyexclusive
Parentheses () for an optional element
Repeating Groups
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 143/227
143
Repeating Groups
A repeating group may be A sub-form A screen or form table A program table, matrix, or array
There may be one repeating element or severalwithin the group
The repeating group may have A fixed number of repetitions
12 {Monthly Sales}Upper and lower limits for the number of
repetitions {Order Line}5
1
Structural Records
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 144/227
144
Structural Records
A structure may consist of elements or smallerstructural records
These are a group of fields, such as
Customer Name, Address, Telephone
Each of these must be further defined until onlyelements remain
Structural records and elements used within manydifferent systems should be given a non-system-specific name
E.g.: street, city, and zip
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 145/227
Logical Data Structures
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 146/227
146
Logical Data Structures
Data structures may be either logical orphysical
Logical data structures indicate thecomposition of the data familiar to theuser
Physical Data Structures
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 147/227
147
Physical Data Structures
Include elements and informationnecessary to implement the system
Additional physical elements includeKey fields used to locate records
Codes to indicate record status
Codes to identify records when multiplerecord types exist on a single file
Etc.
Data Structure Example
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 148/227
148
Data Structure Example
Customer Order = Customer Number +
Customer Name +
Address +
Telephone +
Catalog Number +
Order Date +{Order Items} +
Merchandise Total +
(Tax) +
Shipping and Handling +
Order Total +Method of Payment +
(Credit Card Type) +
(Credit Card Number) +
(Expiration Date)
Element Description Forms
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 149/227
149
Element Description Forms
Data elements should be defined withdescriptive information, length and type
of data information, validation criteria,and default values
Each element should be defined once inthe data dictionary
Element Description Forms -Attributes
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 150/227
150
Attributes
Element ID. This is an optional entry thatallows the analyst to build automated datadictionary entries
The name of the element, descriptive andunique
It should be what the element is commonlycalled in most programs or by the major user of the element
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 151/227
Element Description Forms – Attributes (cont‟d)
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 152/227
152
Attributes (cont d)
Whether the element is base or derived
A base element is one that has been initiallykeyed into the system
A derived element is one that is created by aprocess, usually as the result of a calculation orsome logic
Element Description Forms -Attributes (cont‟d)
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 153/227
153
Attributes (cont d)
The length of an element Some elements have standard lengths, such as a
state abbreviation, zip code, or telephone number
For other elements, the length may vary and theanalyst and users must decide the final length
Numeric amount lengths should be determined byfiguring the largest number the amount willcontain and then allowing room for expansion
Totals should be large enough to accommodatethe numbers accumulated into them
It is often useful to sample historical data todetermine a suitable length
Element Description Forms -Attributes (cont‟d)
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 154/227
154
Attributes (cont d)
Percent of data that will
Element Length fit within the length (US)
Last Name 11 98%
First Name 18 95%
Company Name 20 95%
Street 18 90%
City 17 99%
Element Description Forms -Attributes (cont‟d)
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 155/227
155
Attributes (cont d)
The length of an element (cont‟d)
Data Truncation
If the element is too small, the data will betruncated
The analyst must decide how this will affect thesystem outputs
If a last name is truncated, mail would usuallystill be delivered
A truncated email address or Web address isnot usable
Element Description Forms -Attributes (cont‟d)
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 156/227
156
Attributes (cont d)
The type of data
Numeric, date, alphabetic or alphanumeric orother microcomputer formats
Input and output formats should be included,using coding symbols:
Z – Leading Zeros or spaces
9 - Number
X - Character
X(8) - 8 characters
Etc.
Element Description Forms -Attributes (cont‟d)
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 157/227
157
Attributes (cont d)
Validation criteria
Discrete, meaning they have fixed values
Discrete elements are verified by checking thevalues within a program
They may search a table of codes
Continuous, with a smooth range of values
Continuous elements are checked that the datais within limits or ranges
Element Description Forms -Attributes (cont‟d)
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 158/227
158
Attributes (cont d)
Default value
The default value is displayed on entryscreens
Reduces the amount of keying
Comments
This might be used to indicate the formatof the date, special validation that isrequired, etc.
Data Element Example
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 159/227
159
Data Element Example
Name Customer Number
Alias Client Number
Alias Receivable Account Number
Description Uniquely identifies a customer that has made any business
transaction within the last five years.
Length 6Input Format 9(6)
Output Format 9(6)
Default Value
Continuous/Discrete Continuous
Type Numeric
Base or Derived DerivedUpper Limit <999999
Lower Limit >18
Discrete Value/Meaning
Comments The customer number must pass a modulus-11 check-digit test.
Data Store Description Form
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 160/227
160
Data Store Description Form
Data stores contain a minimal of all baseelements as well as some derived elements
Data stores are created for each different
data entity, that is, each different person,place, or thing being stored
Since a data flow may only show part of thecollective data, called the user view, you may
have to examine many different data flowstructures to arrive at a complete data storedescription
Data Store Description Form -Attributes
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 161/227
161
Attributes
The Data Store ID
The Data Store Name: descriptive and unique
An Alias for the file
A short description of the data store
The file type:Manual or computerized
If the file is computerized, the file formatdesignates whether the file is a database file orthe format of a traditional flat file
Data Store Description Form – Attributes (cont‟d)
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 162/227
162
bu ( o d)
The maximum and average number of records on the file
The growth per year
Predict the amount of disk space required
The data set name specifies the table or filename, if known
In the initial design stages, this may be leftblank
The data structure should use a name foundin the data dictionary
Data Store Description Form – Attributes (cont‟d)
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 163/227
163
( )
Primary and secondary keys must beelements (or a combination of elements)found within the data structure
Example: Customer Master FileCustomer Number is the primary key, which
should be unique
The Customer Name, Telephone, and Zip Codeare secondary keys
Comments
Data Store Example - Part 1
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 164/227
164
p
ID D1
Name Customer Master File
Alias Client Master File
Description Contains a record for each customerFile Type Computer
File Format Database
Record Size 200
Maximum Records 45,000
Average Records 42,000
Percent Growth/Year 6%
Data Store Example - Part 2
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 165/227
165
p
Data Set/Table Name Customer
Copy Member Custmast
Data Structure Customer Record
Primary Key Customer NumberSecondary Keys Customer Name, Telephone, Zip Code
Comments The Customer Master file records are
copied to a history file and purged if the customer has not
purchased an item within the past five years. A customer
may be retained even if he or she has not made a purchase
by requesting a catalog.
Data Dictionary and Data FlowDiagram Levels
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 166/227
166
g
Data dictionary entries vary according to the levelof the corresponding DFD
Data dictionaries are created in a top-down
manner Whole structures, such as the whole report or screen, are
used on the top level of the DFD
Data structures are used on intermediate-level DFD
Elements are used on lower-level data flow diagrams Data dictionary entries may be used to validate
parent and child DFD level balancing
Creating Data Dictionaries
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 167/227
167
g
1. Information from interviews and JADsessions is summarized on Input andOutput Analysis Forms
This provides a means of summarizingsystem data and how it is used
2. Each structure or group of elementsis analyzed
Creating Data Dictionaries
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 168/227
168
g
3. Each element should be analyzed byasking the following questions:
A. Are there many of the field?If the answer is yes, indicate that the field is a
repeating field using the { } symbols
B. Is the element mutually exclusive of
another element?If the answer is yes, surround the two fields
with the [ | ] symbols
Creating Data Dictionaries
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 169/227
169
g
C. Is the field an optional entry oroptionally printed or displayed?
If so, surround the field with parenthesis ( )
4. All data entered into the system mustbe stored
Create one file or database file for each
different type of data that must be stored Add a key field that is unique to each file
Determining Data StoreContents
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 170/227
170
Data stores may be determined byanalyzing data flows
Each data store should consist of elements on the data flows that arelogically related, meaning they describethe same entity
Maintaining the DataDictionary
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 171/227
171
y
To have maximum power, the datadictionary should be tied into otherprograms in the system
When an item is updated or deletedfrom the data dictionary it isautomatically updated or deleted fromthe database
Using the Data Dictionary
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 172/227
172
g y
Data dictionaries may be used to
Generate computer program source code
Create reports, screens, and forms Analyze the system design for completion
and to detect design flaws
Creating Reports, Screens,Forms
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 173/227
173
To create screens, reports, and forms
Use the element definitions to create fields
Arrange the fields in an aestheticallypleasing screen, form, or report, usingdesign guidelines and common sense
Repeating groups become columns
Structural records are grouped together onthe screen, report, or form
Data Dictionary Analysis
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 174/227
174
The data dictionary may be used in conjunction with thedata flow diagram to analyze the design, detecting flawsand areas that need clarification
Some considerations for analysis are
All base elements on an output data flow must be presenton an input data flow to the process producing the output
Base elements are keyed and should never be created by aprocess
A derived element should be output from at least one
process that it is not input into The elements that are present on a data flow into or coming
from a data store must be contained within the data store
Chapter 5Describing Process
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 175/227
g
Specifications and StructuredDecisions
Systems Analysis and Design
Kendall and KendallSixth Edition
Readings & Major Topics
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 176/227
176
Readings Chapter 9 in the textbook (page 283)
Major TopicsProcess specifications
Decision tables
Other Types of SpecificationsStructured English
Decision trees
Process Specification in SDLC
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 177/227
177
Phase 1 Identifying
problems, opportunities,
and objectives
Phase 2 Determininginformation requirements
Phase 3 Analyzing
systems needs
Phase 4 Designing the
recommended system
Phase 5 Developing and
documenting software
Phase 6 Testing and
maintaining the system
Phase 7 Implementing
and evaluating the
system
Process Specifications
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 178/227
178
Process specifications (minispecs) arecreated for primitive processes and
some higher level processes on a DFDDocumenting and analyzing the logic of
structured decisions
Structured English
Decision trees
Decision tables
Goals of Creating ProcessSpecifications
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 179/227
179
Reduce process ambiguity
Obtain a precise description of what isaccomplished
Validate the system design, including dataflow diagrams and the data dictionary
No Process Specifications For
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 180/227
180
Physical input and/or output processes
Processes that represent simple datavalidation
Processes for which prewritten codealready exists
Process Logic
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 181/227
181
Process descriptions may exist on a formor within a CASE tool repository
Process logic may be represented as
Structured English
A decision table
A decision tree
Any combination of the above
Process Specification Format
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 182/227
182
The process number, which must matchthe process ID on the data flow diagram
This allows an analyst to work or review any
process and easily locate the DFD containingthe process
The process name, the same as displayswithin the process symbol on the DFD
A brief description of what the processaccomplishes
Process Specification Format(cont‟d)
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 183/227
183
A list of input and output data flow, usingthe names found on the data flow diagram
Data names used in the formulae or logic
should match the data dictionary, forconsistency and good communication
An indication of the type of process
Batch, online or manual
All online processes require screen designs
All manual processes should have well-definedprocedures for employees performing theprocess tasks
Process Specification Format(cont‟d)
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 184/227
184
If the process has prewritten code for it,include the name of the subprogram orfunction
A reference to further information, such asa structured English description, a decisiontable or tree depicting the logic
List any unresolved issuesThese form the basis of the questions used for
a follow-up interview
Process Specification ExamplePart 1
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 185/227
185
Number 1
Name Add Customer Order
Description Key and add the Customer Order.
The order should be edited for correct information.Customer and Item master files are updated.
Input Data Flow
Customer Order Form from the CustomerCustomer Record from data store D1, Customer Master File
Item Record from data store D2, Item Master File
Process Specification ExamplePart 2
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 186/227
186
Output Data Flow
Pending Order to data store D3, Order File
Backordered Item Record to the Inventory Control Department
Updated Customer and Item records
Type of process Online
Decision Tables
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 187/227
187
Decision tables provide a way toexamine, describe, and documentdecisions using a table
They are used to
Describe the conditions
Identify possible decision alternatives
Indicate actions should be performed, and
Describe actions
Decision Tables
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 188/227
188
Decision tables help analysts ensurecompleteness and accuracy
Four main problems that can occur indeveloping decision tables
Incompleteness
Impossible situations
Contradictions
Redundancy
Parent Process Specifications
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 189/227
189
If a process explodes to a childdiagram, the process becomes a controlmodule when the computer programrepresenting the process is written
The logic of the process shows thesequence that the child diagram
processes must be executed in
Program Process Specification
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 190/227
190
All the process specifications areconsolidated for a computer programand are included in the specificationpacket given to the computerprogrammer
Since they are developed for one
process, the logic is easier tounderstand
Horizontal Balancing
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 191/227
191
Horizontal balancing means that alloutput data flow must be either oninput data flow or described in theprocess logic
It is used to verify that each processhas the required data dictionary entries
defined and the formulas and logicnecessary to produce the output
Rules for Horizontal Balancing
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 192/227
192
Rules for horizontal balancing are
All base elements on an output data flowmust be present on an input data flow
All derived elements on an output dataflow must be either
Present on an input data flow, or
Created by the process
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 193/227
Chapter 7Designing Databases
Systems Analysis and Design
Kendall and KendallSixth Edition
Database Design in SDLC
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 194/227
194
Phase 1 Identifying
problems, opportunities,
and objectives
Phase 2 Determininginformation requirements
Phase 3 Analyzing
systems needs
Phase 4 Designing the
recommended system
Phase 5 Developing and
documenting software
Phase 6 Testing and
maintaining the system
Phase 7 Implementing
and evaluating the
system
Readings & Major Topics
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 195/227
195
Readings Chapter 13 in the textbook (page 443)
Major TopicsDatabases
ER Model
Relational Model
NormalizationKey design
Objectives of EffectiveDatabases
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 196/227
196
Ensuring that data can be shared among users fora variety of applications
Maintaining data that are both accurate andconsistent
Ensuring all data required for current and futureapplications will be readily available
Allowing the database to evolve and the needs of the users to grow
Allowing users to construct their personal view of the data without concern for the way the data arephysically stored
Metadata
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 197/227
197
Metadata is the information thatdescribes data in the database
Used to help users understand the formand structure of the data
Also called “schema” in databases
Entity-Relationship (ER) Concepts
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 198/227
198
Entities are objects or events for whichdata is collected and stored
person, place, thing, event, unit of time, …
Relationships are associations betweenentities
Entities
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 199/227
199
A distinct collection of data for oneperson, place, thing, or event
Customer
Attributes, Records, and Keys
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 200/227
200
Attributes are a characteristic of anentity, sometimes called a field Also called data item
Records are a collection of data itemsthat have something in commonInstance of an entity
Keys are data items in a record used toidentify the record
Keys
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 201/227
201
Primary key, unique for the record
Secondary key, a key which may not beunique
Concatenated key, a combination of two ormore data items for the key
Foreign key, a data item in one record that
is the key of another record
Entity Subtype
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 202/227
202
An entity subtype represents data (fields)about an entity that may not be found onevery instance of an entity
Preferred customers may have special fieldscontaining discount information
Eliminates null fields
Preferred
Customer
Attributive Entity
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 203/227
203
Attributive Entity - describes attributes,especially repeating elements
Attributive entities tables, table files ordatabase code tables
Book
Subject
Relationships
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 204/227
204
Relationships may be
One-to-one
One-to-many
Many-to-many
A single vertical line represents one
A circle represents zero or none A crows foot represents many
Relationships
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 205/227
205
Many One
Many NoneO
Ordinality
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 206/227
206
The ordinality is the minimum numberthat can occur in a relationship
If the ordinality is zero, it means that itis possible to have none of the entity
O OrderItem
Self-Join
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 207/227
207
A self-join is when a record has arelationship with another record on the
same entityStudent partners with another student on a
project
Associative Entity
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 208/227
208
Associative Entity - links two entities
An associative entity can only exist between twoentities
The relationship line between a many-to-manyrelationship becomes an associative entity,sometimes called a composite entity or gerund
OrderItem
Associative Entity Connections
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 209/227
209
Each entity end has a “one” connection
The associative entity has a “many”
connection on each side
Associative Entity Keys
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 210/227
210
The key fields for the associative entityare
The primary key for each “one” end is aforeign key on the associative entity
Both foreign keys concatenated togetherbecome the primary key
ER Diagram and Record Keys
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 211/227
211
The ER diagram may be used todetermine record keys
When the relationship is one-to-many, the
primary key of the file at the one end of the relationship should be contained as aforeign key on the file at the many end of the relationship
A many-to-many relationship should bedivided into two one-to-many relationshipswith an associative entity in the middle
Databases
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 212/227
212
A database is intended to be shared bymany users
There are three structures for storingdatabase files:
Hierarchical database structures
Network database structures
Relational database structures
Normalization
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 213/227
213
Normalization is the transformation of complex user views and data to a set of smaller, stable, and easily maintainable
data structuresNormalization creates data that are
stored only once on a file
The exception is key fieldsThis eliminates redundant data storage
Three Steps of DataNormalization
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 214/227
214
Unnormalized Relationship
Normalized Relations (1NF)
Second Normal Form
Relations (2NF)
Third Normal Form Relations (3NF)
User View
Remove repeating groups
Remove partial dependencies
Remove transitive dependencies
Data Model Diagrams
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 215/227
215
Data model diagrams are used to showrelationships between attributes
An oval represents an attribute
A single arrow line represents one
A double arrow line represents many
CustomerNumber
SalespersonNumber
First Normal Form (1NF)
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 216/227
216
Remove any repeating groups
All repeating groups are moved into anew table
Foreign keys are used to link the tables
When a relation contains no repeating
groups, it is in the 1 NFKeys must be included to link the
relations, tables
Second Normal Form (2NF)
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 217/227
217
Remove any partial dependencies
A partial dependency is when the data areonly dependent on a part of a key field
A relation is created for the data thatare only dependent on part of the keyand another for data that are
dependent on both parts
Third Normal Form (3NF)
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 218/227
218
Remove any transitive dependencies
A transitive dependency is when a relationcontains data that are not part of the entity
The problem with transitivedependencies is updating the data
A single data item may be present on
many records
Guidelines for Creating MasterFiles or Database Relations
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 219/227
219
Guidelines for creating master files ordatabase relations are
Each separate entity should have it's own
master file or database relation
A specific, nonkey data field should existon only one master file or relation
Each master file or relation should haveprograms to create, read, update, anddelete records
Integrity Constraints
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 220/227
220
There are three integrity constraintsthat help to ensure that the databasecontains accurate data:
Entity integrity constraints, which governthe composition of primary keys
Referential integrity, which governs the
denature of records in a one-to-manyrelationship
Domain integrity
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 221/227
Referential Integrity
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 222/227
222
Referential integrity governs thedenature of records in a one-to-manyrelationship
Referential integrity means that allforeign keys in one table (the childtable) must have a matching record in
the parent table
Referential Integrity
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 223/227
223
Referential integrity includes
You cannot add a record without amatching foreign key record
You cannot change a primary key that hasmatching child table records
A child table that has a foreign key for adifferent record
You cannot delete a record that has childrecords
Referential Integrity
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 224/227
224
A restricted database updates ordeletes a key only if there are nomatching child records
A cascaded database will delete orupdate all child records when a parentrecord is deleted or changed
The parent triggers the changes
Domain Integrity
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 225/227
225
Domain integrity defines rules thatensure that only valid data are storedon database records
Domain integrity has two forms:
Check constraints, which are defined at thetable level
Rules, which are defined as separate objectsand may be used within a number of fields
Retrieving and PresentingDatabase Data
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 226/227
226
Guidelines to retrieve and present data
Choose a relation from the database
Join two relations together
Project columns from the relation
Select rows from the relation
Derive new attributes
Index or sort rowsCalculate totals and performance measures
Present data
Thank you...
8/3/2019 Systems Analysis and Design by Keval
http://slidepdf.com/reader/full/systems-analysis-and-design-by-keval 227/227