Upload
parool-jain
View
226
Download
0
Embed Size (px)
Citation preview
8/3/2019 System Analysis and Design by Parool Jain
1/62
Structured analysis
8/3/2019 System Analysis and Design by Parool Jain
2/62
2
Problem Analysis and Fact Collection
Objectives determine the organizational structure and its purpose, the
problem areas, the environment around the organisation and
identify the boundaries of the problem
establish a detailed specification of the problem
validate the gathered information
Techniques for Fact Collection documentation review, interviewing, questioning, observation,
measuring
Preliminary Fact Documentation Matrices, Flowcharts, etc.
8/3/2019 System Analysis and Design by Parool Jain
3/62
Traditional approach
Traditional approach of organize and convert the
data through system flowcharts.
Flowchart only represent a physical rather than
logical systems. it makes difficult to distinguish
between what happens and how it happens
pros & cons of traditional approach
1. No accurate comm. with user. They have nolanguage in common.
2. No tools avail to structure and control the
details(business and technical)
8/3/2019 System Analysis and Design by Parool Jain
4/62
Definition of Structured analysis
Structured analysis is a set of techniques and
graphical tools that allow the analyst to
develop a new kind of system specification
that are easily understandable to the user.
Analysts work primarily with their wits, pencil
and paper. [Kendall 1996]
8/3/2019 System Analysis and Design by Parool Jain
5/62
Goals of Structured Analysis
Improve Quality and reduce the risk of system failure
Establish concrete requirements specifications and
complete requirements documentation.
Focus on Reliability, Flexibility, and Maintainability ofsystem
Use graphics to communicate better to user.
8/3/2019 System Analysis and Design by Parool Jain
6/62
8/3/2019 System Analysis and Design by Parool Jain
7/62
Tools of structured analysis
DFD (data flow diagram)
Also known as bubble chart Clarify system requirement & identify major
transformations.-that will become programs in
system design
DFD describe what data flow (logical)rather than how
they are processed so it does not depend on
hardware software, data structure or file organization
8/3/2019 System Analysis and Design by Parool Jain
8/62
8
DFD
SYMBOLS
A square defines a source or destination of system data:
An arrow identifies data flow-data in motion: it is a pipeline
through which info. Flow
A circle or a bubble represents process that transform
incoming data flow (s) in to outgoing data flow(s).
An open rectangle is a data store-data at rest or temporaryrepository of data.
8/3/2019 System Analysis and Design by Parool Jain
9/62
Why do we use DFDs?
It is a way of taking the physical view and converting itinto a logical view.
The physical view - all documents involved. The logical view - the data they contain. Their main purpose is to communicate with the user, the
analysts understanding of the scope of the requiredsystem
Constructing DFD:
1. Process should be named and numbered for easyreference
2. The direction of flow from top to bottom and from left toright
3. When a process is exploded into lower level details,they
are numbered ex:process 5 is exploded in tosubprocesses 5.1 and 5.24. The names of data stores ,sources,destinations,are
written in capital letters5. Process and data flow names have the first letter of each
word capital
8/3/2019 System Analysis and Design by Parool Jain
10/62
Central Concepts
Process (data transformation) activities that transform data
related by dataflows to other processes, data
store, and external entities.
Data flow indicate passage of data from output of one
entitie to input of another
represent a data group or data element
Data store a place where data is held for later use
Data stores are passive: no transformations
are performed on the data
External entity An activity outside the target system
Acts as source or destination for dataflows
that cross the system boundary
External entities cannot interact directly with
data stores
Data group A cluster of data represented as a single
dataflow
Consists of lower level data groups, or
individual elements
Data element a basic unit of data
8/3/2019 System Analysis and Design by Parool Jain
11/62
Sources(external entities)
Any class of people, anorganization, or anothersystem which existsoutside the system youare studying.
Form the boundaries ofthe system.
The system and external
entities exchange data inthe form of data flows.
Must be named, titlespreferred to names of
individuals - use a noun
source/
8/3/2019 System Analysis and Design by Parool Jain
12/62
Data Flows data in motion marks movement of data through the
system - a pipeline to carry data connects the processes, external
entities and data stores Unidirectional originate OR end at a process (or both) name as specifically as possible -
reflect the composition of the data - anoun
do not show control flow! Control flowis easy to identify- a signal with onlyone byte - (on/off).
HINT: if you can't name it: either it'scontrol flow, doesn't exist or you needto get more information!
8/3/2019 System Analysis and Design by Parool Jain
13/62
Processes transform incoming data
flows into outgoing dataflows
represent with a bubble orrounded square
name with a strongVERB/OBJECTcombination; examples:
create_exception_reportvalidate_input_characters
calculate_discount
process
8/3/2019 System Analysis and Design by Parool Jain
14/62
Data Stores data at rest represents holding areas for
collection of data, processesadd or retrieve data fromthese stores
name using a noun (do notuse file)
only processes are connectedto data stores
show net flow of databetween data store and
process. For instance, whenaccess a DBMS, show onlythe result flow, not therequest
8/3/2019 System Analysis and Design by Parool Jain
15/62
Data Flow Diagram Donts
1. BLACK HOLES
2. MIRACLES
4. Leave things UNLABELED
(corollary: labels should have meaning)
5. Data stores that are SOURCES6. Data flows that are UNASSOCIATED with
a PROCESS
7. Expect your diagram to be perfect thefirst time!
8/3/2019 System Analysis and Design by Parool Jain
16/62
Data Flow Diagram Donts
processstuff
1. Black Hole
processstuff
2. Its a Miracle
8/3/2019 System Analysis and Design by Parool Jain
17/62
Data Flow Diagram Donts
4. Leave Things Unlabeled
Corollary: Labels Should
Have Meaning
8/3/2019 System Analysis and Design by Parool Jain
18/62
Data Flow Diagram Donts
data store 5. Miracle datasource
data store 5. Black hole datasource
8/3/2019 System Analysis and Design by Parool Jain
19/62
Data Flow Diagram Donts
6. Data Flows Unassociated With a Process
entity toentitydata store
to entity -or reverse
data storeto datastore
8/3/2019 System Analysis and Design by Parool Jain
20/62
Diagramming A System
multiple DFDs are required to represent a system
DFDs are created at increasing levels of detail
Advantages of DFD
Represents data flows
Provides good system documentation.
Process bubbles can be hierarchically decomposed into sub-DFDs; the inputs
and outputs must match at all levels of decomposition, so the design has
validation.
Easily understand after a brief orientation.
Disadvantages
Weak in its display of input and output details.
Major problem is large number of iterations that are require forcomplete solution.
8/3/2019 System Analysis and Design by Parool Jain
21/62
Level n: subprocesses
3.1
request
res.
3.2.
log 3.3.
track
booking
system
Request id.Request id.
timestamps booking
confirmation
bookingrequest
preferences
Level n: subprocesses
3.1
request
res.
3.2.
log 3.3.
track
booking
system
Request id.Request id.
timestamps booking
confirmation
booking
requestpreferences
Level 2: subprocesses
3.1
request
reser-
vations
3.2.
confirm
booking
3.3.
collate
confirm-
ations
booking
systemReq id.
Req id.
seat
data
booking
confirmation
booking
request
seating prefs
Hierarchies of DFDs
ticket
system
booking
system
customer
ticketsbooking
confirmation
booking
request
customer
query
Level 0: Context Diagram
check
schedule
issue
tickets
Proposed
itinerary
booked
itinerary
booking request
1.
determine
form of
travel
2.
check
schedule
3.
reserve
seats4.
issue tickets
Timetables
Fare tables
customer
booking
systemcustomer
travel
request
customer
query
schedule
proposed
itinerary
proposeditinerary
booked
itinerary
fares
tickets
booking
confirmation
booking
request
Level 1: Whole System
8/3/2019 System Analysis and Design by Parool Jain
22/62
Data dictionary
It is a structured repository ofdata about
data. Although we give descriptive names to
the data flows, process and data stores in a
DFD, it does not give the details. Hence tokeep the details of the contents of data flows,
process and data stores we also require a Data
Dictionary.It clearly documents the list ofcontents of all data flows, processes and data
stores.
8/3/2019 System Analysis and Design by Parool Jain
23/62
The three classes to be defined in data dictionaryare:
Data Elements: - this is the smallest unit of data.
Further decomposition is not possible. Data Structure: - this is a group of Data Elements
which together form as a unit in a data structure.For ex BOOK DETAIL is a data structure
consisting ofdata elementsauthor name , title ,publisher name ,quantity etc.
Data flows and Data stores: - data flows are datastructures in motion.
Data Stores are data structures at rest or in store .(Data structures in a data store - a data store is alocation where data structures are temporarilylocated.)
8/3/2019 System Analysis and Design by Parool Jain
24/62
Logical data description hierarchy
Smallest unit of data
Group of data element
Groups of data
structures
8/3/2019 System Analysis and Design by Parool Jain
25/62
Describing data elements The description of data elements should include the
Name , description & an alias(synonym)
Ex- AUTHOR NAME:
-first
-middle
-last-alias
2. description should be summary of data element
We may include whether or not the data element has:.
3. A different name or alias for ex:purchase order mayexist as P.O or PUR.ORDER.
8/3/2019 System Analysis and Design by Parool Jain
26/62
Describing data elements..(cont..)4. Usage characterstics ,such as range of value , value is a
code that represent a meaning
Here 2 types of data elements:-a)Those that take a value within a range ex:-a check
amount between rs.1 and 10,000rs is called continuousvalue.
b)Those tat have a specific value:-for ex-department in afirm may be coded 100(accounting),110(personnel)etc.
In data dictionary it is describe as follows: 100 meansAccountingdepartment
101 means accounts receivable section
In either type values are coded that represent a meaning.
5.Control information such as the source , date oforigin,users,or access authorization.
8/3/2019 System Analysis and Design by Parool Jain
27/62
Describing data structure
Data structure are group of data element ex-
BOOK DETAIL
We describe data structure by specifying the
name of each data structure and the elements
it represents. Some elements are mandatory where else
some are optional.
8/3/2019 System Analysis and Design by Parool Jain
28/62
illustrate it with example BOOK DETAILS
mandatory optional
Data structure BOOK-DETAILS
Data elements AUTHOR NAME X
TITLE OF BOOK X
EDITION X
ISBN(international
standard book number)
X
PUBLISHER NAME X
QUANTITY ORDERED X
8/3/2019 System Analysis and Design by Parool Jain
29/62
Complete DFD ,showing
accounts receivable routineof book ordering system
8/3/2019 System Analysis and Design by Parool Jain
30/62
Describing data flows and data stores The contents of a data flow may be described by the
name of the data structures that passes along it(label
name of data flow is the name of content it carry withit).
EX-
BOOK DETAILS expresses the content of the data flow that leads toprocess 4
Additionally we may specify source of data flow , the destination and thevolume.
8/3/2019 System Analysis and Design by Parool Jain
31/62
Using BOOK ORDER example data flow may be
describe as follows:-
Data flow comments
BOOK-DETAILS From new comb hall book store(SOURCE)
AUTHOR-NAME
TITLE OF BOOK
EDITION Recent edition required
QUANTITY Minimum 40 copies
8/3/2019 System Analysis and Design by Parool Jain
32/62
Data store
Data store may be describe by the data
structures found in it and the data flows thatfeed it or are extracted from it.
For example: the data store BOOKSTORE-ORDER
is described by the following contents:Comments
ORDER
ORDER-NUMBER Data flow/data structure feeding data store
CUSTOMER-DETAILS Content of data store
BOOK-DETAIL Data flow/data structure extracted from
data store
Describing processes
8/3/2019 System Analysis and Design by Parool Jain
33/62
Describing processes Describing process is a logical description.
We want to specify input and output for the
process and summarize the logic of the system.
in figure process EDIT-ORDER can be described
as shown:-
1.Name of process Edit order is O.K.
2.Short description Verify and decide whether customer
credit is OK for authorising shipment
3.input logic Output
ORDER Look up customer
payment record
If new bookstore
,clear credit rating
Credit OK,no
balance remainder
Customer payment
file
8/3/2019 System Analysis and Design by Parool Jain
34/62
Decision Tree What is it?
A structure that can be used to divide up a large
collection of records into successively smaller sets of
records by applying a sequence of simple decision rules
A decision tree model consists of a set of rules fordividing a large heterogeneous population into smaller,
more homogeneous groups with respect to a particular
target variable
Decision tree has many branches as there are logical
alternatives
8/3/2019 System Analysis and Design by Parool Jain
35/62
Example - Grades
Percent >= 90%?
Yes Grade = A
No 89% >= Percent >= 80%?
Yes Grade = B
No 79% >= Percent >= 70%?
Yes Grade = C
No Etc...
8/3/2019 System Analysis and Design by Parool Jain
36/62
Decision Tree Template Drawn top-to-bottom or left-
to-right
Top (or left-most) node =
Root Node Descendent node(s) = Child
Node(s)
Bottom (or right-most)
node(s) = Leaf Node(s)
Unique path from root to
each leaf = Rule
Root
Child Child Leaf
LeafChild
Leaf
8/3/2019 System Analysis and Design by Parool Jain
37/62
Decision Tree Advantages
1. Easy to understand,construct and update
2. Map nicely to a set of business rules
3. Applied to real problems
4. Make no prior assumptions about the data
5. Able to process both numerical and
categorical data
8/3/2019 System Analysis and Design by Parool Jain
38/62
Decision Tree Disadvantages
1. Output attribute must be categorical
2. Limited to one output attribute
3. Trees created from numeric datasets can be
complex
4. Lack of information in its format to tell us
what other combination of condition to test.
Decision tree -Example
8/3/2019 System Analysis and Design by Parool Jain
39/62
Decision tree -Example
discountSize oforder
Type ofcustomer
Discountpolicy
Book store
6 or more 25%
Less that 6 nil
Libraries or
individual
50 or more
20-49
10%
6-19
5%
15%
Less than 6nil
8/3/2019 System Analysis and Design by Parool Jain
40/62
Structured English Structured English borrows heavily from
structured programming . It uses logical construction to carryout instruction
for action.
Decisions are made through IF THEN ELSE and SOstatement.
In this tool ,the logic of the processes of thesystem is expressed by using the capitalized
keywords Sentence should also be clear ,concise, and
precise in wording and meaning
8/3/2019 System Analysis and Design by Parool Jain
41/62
Example of structured english(compute discount)
COMPUTE DISCOUNT
Add up the number of copies per book title
IF order is from book store
and IF order is for 6 copies or more per book title
THEN :Discount is 25%.
ELSE (order is for fewer than 6 copies per book title)SO:no discount is allowed.
Else (order is from libraries or individual customers)
So-IF order is for 50 copies or more per book titlediscount is 15%....
ELSE IF
ELSE IF.
8/3/2019 System Analysis and Design by Parool Jain
42/62
Decision tables Decision table is a table of contingencies for
defining a problem and the action to be taken
It is a single representation of the relationshipbetween condition and actions.
Decision table consist of two parts: stub andentry.
The stub part is divided into an upper quadrantcalled the condition stub and the lower quadrantcalled action stub
The entry part is also divided into an upperquadrant called the condition entry and the lowerquadrant called action entry
8/3/2019 System Analysis and Design by Parool Jain
43/62
8/3/2019 System Analysis and Design by Parool Jain
44/62
System performance and its phase
A system required performance is defined by
describing its output in a user acceptable
format and at a higher level of detail.
This involve three steps:-
1.Statement of constraints
2.Identification of specific system objectives
3.Description of outputs.
1 Statements of constraints
8/3/2019 System Analysis and Design by Parool Jain
45/62
1.Statements of constraints Constraints are the factors that limits the solution of the problem
Constraints are factors that lie outside - but have a direct impact on - thesystem design effort. Constraints may be:
Laws and regulations - for example, State, Federal (central or national ), orindependent regulatory agencies may require specific design approachesfor new systems or mandate specific changes to existing systems.
Technological - for example, new equipment must be compatible withexisting equipment;
Financial - for example, proposed development and implementation costsmust remain within a specified budget.
Operational - for example, space, staffing levels, skill mix, and capabilityand competence factors may limit system options.
However, system constraints should not be used to artificially restrict ordirect the system. The objective is to plan the best system for the problemto be solved, not to fabricate and impose constraints that limit the systemalternatives.
As with objectives, system constraints are critical to ensuing phases of thefeasibility study. They can affect system requirements and theacceptability of alternatives.
2.Identification of specific system objectives
8/3/2019 System Analysis and Design by Parool Jain
46/62
2.Identification of specific system objectives
Analyst identify the systems specific performance objectives.
Specific objective are derived from initial investigation and system benefitsare then translated into measurable objective.
In example of safe deposit billing system ,the candidate systems benefitsare :-
a. Improved collection schedule:- collection is improved be billing 30 daysin advance of the box renewal date and one more notice is sent within 2weeks
b. Cost reduction:-online billing require less labor and work hour.
c. Physical space reduction:-replace one computer in place of 4 desks.d. improved customer service:-place box rental info online. Provide forms
online reduce waiting time.
These information is used as a basis for preparing specific objective forcandidate system:-
To establish a billing system with six-five days cycles per month
To mail customer a reminder two week after the initial statement for boxrenewal
To examine the availability of boxes by size, rental fees and location
D i ti f t t
8/3/2019 System Analysis and Design by Parool Jain
47/62
Description of output
Final step in system performance definition is
Describing the output required by the user An actual format and content of report
Media used , frequency , size and number of
copies required are prepared at this point. Specifying exactly what the output will look
like leads to an estimate of computer storagerequirement that form the basis for file
design. The analyst is now evaluate feasibility of
candidate system to produce these outputs
8/3/2019 System Analysis and Design by Parool Jain
48/62
Kendall & Kendall Copyright 2002 by Prentice Hall, Inc. 3-48
Feasibility
A feasibility study assesses the operational,
technical, and economic merits of the
proposed project
There are three types of feasibility:
Technical feasibility
Economic feasibility
Operational feasibility
8/3/2019 System Analysis and Design by Parool Jain
49/62
Kendall & Kendall Copyright 2002 by Prentice Hall, Inc. 3-49
Technical Feasibility
Technical feasibility assesses whether the
current technical resources are sufficient for
the new system
If they are not available, can they be upgraded
to provide the level of technology necessary
for the new system
T h i l F ibili
8/3/2019 System Analysis and Design by Parool Jain
50/62
Technical Feasibility:
Can We Build It?
Users and analysts familiarity with the
business application area
Familiarity with technology
Have we used it before? How new is it?
Project size
Number of people, time, and features
Compatibility with existing systems
8/3/2019 System Analysis and Design by Parool Jain
51/62
2 - 51
Can we build it? Feasibility
Technical
Do we have the capability to develop the system?
Does the necessary tech exist? Can it be acquired?
Does the proposed equipment have the right capacity for the
data?
Does the propose have the right: response time, interface,
Can the system be expanded?
Are the accuracy, reliability, ease of use, ease of access, security
ok?
8/3/2019 System Analysis and Design by Parool Jain
52/62
Kendall & Kendall Copyright 2002 by Prentice Hall, Inc. 3-52
Economic Feasibility
Economic feasibility determines whether the
time and money are available to develop the
system
Includes the purchase of
New equipment
Hardware
Software
E i F ibilit
8/3/2019 System Analysis and Design by Parool Jain
53/62
Economic Feasibility
ShouldWe Build It?
Identify costs and benefits
Assign values to costs and benefits
Determine cash flow
Assess financial viability
Net present value
Return on investment
Break even point
8/3/2019 System Analysis and Design by Parool Jain
54/62
2 - 54
Should we build it?
Economic
Is there an economic payoff?
include cost to conduct full systems integration
cost of hardware/software/ other
benefits in terms of reduced costs
opportunity costs
8/3/2019 System Analysis and Design by Parool Jain
55/62
Kendall & Kendall Copyright 2002 by Prentice Hall, Inc. 3-55
Operational Feasibility
Operational feasibility determines if the
human resources are available to operate the
system once it has been installed
Users that do not want a new system may
prevent it from becoming operationally
feasible
Feasibility study
8/3/2019 System Analysis and Design by Parool Jain
56/62
Feasibility study
It is the measure and the study of how beneficial the
development of the system would be to theorganization. This is known as feasibility study. Themeasurement of feasibility is known as feasibility study.There are number of aspects which are taken into
consideration while the feasibility studies. Firstly theproject team is formed then with the help offlowcharts and other forms of documentations thecharacteristics of the system are identified. The systemis evaluated and measured against the expectedperformance. A suitable candidate is selected for thejob and a final report is made and presented to themanagement for further evaluations.
Steps in feasibility analysis
8/3/2019 System Analysis and Design by Parool Jain
57/62
Steps in feasibility analysisThere are number of steps in the feasibility study, some of them are:-
1) Forming a team for the specific project and appointing a suitable leader.
2) Preparing layouts and flowcharts of the system :-charts bring up
importance of input , output, and data flow
3) Enumerate(list, detail ,catalog) the candidate systems:- consideration of
hardware that can handle the total system requirements. There are large
number of computers with different processing sizes, main memory
capabilities and software support . The project team may contact vendorsfor information on processing capabilities of the system available.
4 ) Identify and describe the characteristics of the candidate systems:-from
the candidate system considered(number of candidate systems)the team
begins to evaluate to reduce them into manageable number determine
what each candidate system can or cannot do.
St i f ibilit l i ( t )
8/3/2019 System Analysis and Design by Parool Jain
58/62
Steps in feasibility analysis(cont.)
5) Determining the performance and cost effectiveness of eachcandidate system:-each candidate system performance is evaluatedagainst the system performance requirements set prior to
feasibility study. there has to be as close a match as practicable.Costs are easily determined when benefits of system are tangible and
measurable.
Evaluation criteria IBM PC HP 100 APPLE III
Performance
Response time Very good Very good Very good
User friendly excellent Very good Very good
Costs
System
development
good Very good Good
User training excellent good good
6) Reviewing the performance of the system and performing the cost data:-in somecases performance and cost data for each candidate system show which system is
8/3/2019 System Analysis and Design by Parool Jain
59/62
cases ,performance and cost data for each candidate system show which system isbest choice. This outcome terminate the feasibility study. but some situation arenot clear cut so the next step is to weight the importance of each criterion byapplying the rating figure. Then the candidate with high score is selected.
The procedure for weighting candidate system is simple
1. Assign the weighting factor to each evaluating criteria based on the criteriaeffect on the success of the system
2. Assign a quantitative rating to each criterions qualitative rating for ex(good,fair)may be assign values (1,2,3,4,5)
3. Multiply the weight assign to each criterion by the relative rating to determinethe score
4. Sum the score column of each candidate.
Evaluation
criterion
Weighting
factor
IBM PC HP 100 APPLE III
Rating score Rating score Rating score
performance
Response time 2 4 8 3 6 4 8
User friendly 3 5 15 4 12 4 12
Costs
System
development
5 3 15 2 10 4 20
User friendly 3 5 15 3 6 5 25
8/3/2019 System Analysis and Design by Parool Jain
60/62
7) Selecting the best candidate for the system
8)preparing the final report for the management
Feasibility report
8/3/2019 System Analysis and Design by Parool Jain
61/62
Feasibility reportIt is a formal document for management brief enough and sufficiently
non technical to be understandable. No standard format forpreparing feasibility report. The report contain the following
section:- 1. Abstract : shows general findings .
2. Summary
3. Contents list (specifies various parts of report)
4. Glossary (dictionary,vocabulory,wordbook)
5. Introduction or overview (purpose and scope)
6. Discussion (the main body providing the evidence /outline themethod used in present system also provide objective ,generalprocedure, output, report ,cost and benefits use appendixes ifnecessary)
8/3/2019 System Analysis and Design by Parool Jain
62/62
Feasibility report(cont..)
7. economic justification details: point by point costcomparisons and preliminary cost estimates fordevelopment and operation of candidate system.
8. Recommendations (flowing naturally from theconclusions) and Conclusions (flowing naturally from thediscussion)
9. References (if necessary)
10. Appendixes (document all data and memos and datacompiled during the investigation. They are placed at theend for reference.)