System Analysis and Design Syllabus
SYSTEM ANALYSIS AND DESIGN Module 1: Data and Information (3) Types of information: operational, tactical, strategic and statutory why do we need information systems management structure requirements of information at different levels of management functional allocation of management requirements of information for various functions qualities of information small case study.
Module 2: Systems Analysis and Design Life Cycle (3) Requirements determination requirements specifications feasibility analysis final specifications hardware and software study system design system implementation system evaluation system modification. Role of systems analyst attributes of a systems analyst tools used in system analysis
Module 3: Information gathering (3) Strategies methods case study documenting study system requirements specification from narratives of requirements to classification of requirements as strategic, tactical, operational and statutory. Example case study
Module 4: Feasibility analysis (3) Deciding project goals examining alternative solutions cost benefit analysis quantifications of costs and benefits payback period system proposal preparation for managements parts and documentation of a proposal tools for prototype creation
Module 5: Tools for systems analysts (3) Data flow diagrams case study for use of DFD, good conventions leveling of DFDs leveling rules logical and physical DFDs software tools to create DFDs
Module 6: Structured systems analysis and design (3) Procedure specifications in structured English examples and cases decision tables for complex logical specifications specification oriented design vs procedure oriented design
Module 7: Data oriented systems design (3) Entity relationship model E-R diagrams relationships cardinality and participation normalizing relations various normal forms and their need some examples of relational data base design.
Module 8: Data input methods (3) Coding techniques requirements of coding schemes error detection of codes validating input data input data controls interactive data input
Module 9: Designing outputs (2) Output devices designing output reports screen design graphical user interfaces interactive I/O on terminals.
V.Rajaraman/IISc, Bangalore V1/1-6-04/1
System Analysis and Design Syllabus
Module 10: Object oriented systems modeling (4) What are objects? Why objects? Objects and their properties classes inheritance polymorphism how to identify objects in an application how to model systems using objects some cases of object oriented system modeling
Module 11: Control audit and security of information systems (4) Audit and security of information systems why controls are needed objectives of control techniques used in control auditing information systems auditing around, through and with the computer testing information systems types of tests how to generate tests security of information systems disaster recovery business process continuity
Module 12: Systems analysis and design in the era of electronic commerce (3) B2B, B2C and C2C e-commerce advantages and disadvantages of e-commerce. E-commerce system architecture physical networks, logical network, World Wide Web, web-services html, XML.
Module 13: Electronic data interchange (2) EDI standards virtual private networks XML and EDI.
Module 14: Security of e-commerce transactions, firewalls (3) Encryption methods symmetric and asymmetric encryption digital signature certifying authorities for signatures legal status of e-commerce transactions
Module 15: Payment systems in e-commerce (2) Cheque payment, credit card payments, e-cash payments.
Module 16: Complete system analysis and design case studies (5) A system for journal acquisition in libraries walk through the entire life cycle
V.Rajaraman/IISc, Bangalore V1/1-6-04/2
System Analysis and Design Syllabus
Lecture Plan
Hours Total Modules Learning Units per topic Hours
1. Data and 1. Types of information: operational, tactical, 0.5 Information strategic and statutory
2. Why do we need information systems, management structure, requirements of information at different levels of management
1 3
3. Functional allocation of management, requirements of information for various functions
1
4. Qualities of information small case study 0.5 2. Systems 5. Systems Analysis and Design life Cycle: Analysis and Requirements determination, requirements 1 Design Life specifications 3 Cycle 6. Feasibility analysis, final specifications,
hardware and software study, system design, system implementation, system evaluation, system modification.
1
7. Role of systems analyst attributes of a 1 systems analyst tools used in system analysis
3. Information 8. Information gathering, strategies, methods 1
3 gathering 9. Case study/documenting study, system
requirements specification, from narratives of requirements to classification of requirements 2 as strategic, tactical, operational and statutory. Example case study
4. Feasibility 10. How to formulate project goals and quantify 1 analysis them
3 11. Examining alternative solutions and evaluating
proposed solutions a) Technical feasibility 1 b) Operational feasibility c) Economic feasibility
12. Cost benefit analysis, Documenting feasibility 1 report
5. Tools for systems analysts
13. Developing Data Flow Diagrams (DFD) a) What are DFDs? b) Symbols used in DFD c) Rules of data flow d) Good style in drawing DFD
1.5 3
14. Describing systems with DFD & Leveling 1 DFD
15. Logical & Physical DFDs 0.5
V.Rajaraman/IISc, Bangalore V1/1-6-04/3
System Analysis and Design Syllabus
6. Structured 16. Structured English specification 1 systems analysis 17. Decision table based specification 1 and design
4.5
18. Detecting 19. Incompleteness 20. Ambiguity 21. Contradictions 1 22. Redundancy 23. in decision table specification
24. Eliminating redundancy in specifications 1 25. Decision trees for specification 0.5
7. Data oriented 26. Entity-relationship (E-R) modeling 1 systems design 27. of data elements of an application
28. Organization of data as relations 0.5 529. Normalization of relations 1
30. Creation of logical relational database 1 31. Objectives of database management system 1
(DBMS) 32. Overview of DBMS 0.5
8. Data input 33. Data input methods, coding techniques, 1 methods requirements of coding schemes
334. Error detection of codes, validating input data 1 35. Input data controls interactive data input 1
9. Designing 36. Designing outputs, output devices, designing 1 outputs output reports
237. Screen design, graphical user interfaces, Interactive I/O on terminals.
1
10. Object 38. Object oriented systems modeling 0.5
4
oriented systems modeling
39. What are objects? Why objects? 0.5 40. Objects and their properties, classes,
inheritance, polymorphism 1
41. How to identify objects in an application, how 1 to model systems using objects
42. Some cases of object oriented system 1 modeling
11. Control-audit and
43. Control, audit and security of information system
0.5
security of 44. Why controls are needed, objectives of control, 0.5 information techniques used in control
4systems 45. Auditing information systems, auditing around, through and with the computer
1
46. Testing information systems, types of tests, 1 how to generate tests
V.Rajaraman/IISc, Bangalore V1/1-6-04/4
System Analysis and Design Syllabus
47. Security of information systems, disaster 1 recovery, business process continuity
12. Systems 48. Systems analysis and design in the era of 0.5 analysis and electronic commerce design in the era 49. B2B, B2C and C2C e-commerce, advantages 0.5 of electronic and disadvantages of e-commerce. 4 commerce 50. E-commerce system architecture 1
51. Physical networks, logical network, world 2 wide web, web-services html, XML
13. Electronic data interchange
52. Electronic data interchange, EDI standards 1 253. Virtual private networks XML and EDI. 1
14. Security of e- 54. Security of e-commerce transactions, firewalls, commerce encryption methods, symmetric and 1.5 transactions, asymmetric encryption, 3 firewalls 55. Digital signature, certifying authorities for
signatures, legal status of e-commerce transactions
1.5
15. Payment 56. Payment systems in e-commerce, cheque systems in e- payment, credit card payments, e-cash 2 2 commerce payments. 16. Complete 57. Complete system analysis and design case system analysis studies, a system for journal acquisition in 5 5 and design case libraries, walk through the entire life cycle studies
V.Rajaraman/IISc, Bangalore V1/1-6-04/5
System Analysis and Design/ Data and Information Learning Objectives
Learning Objectives
Distinction between Data and Information
Description of types of Information: Tactical, Operational, Strategic and
Statutory.
Division of Management into different hierarchical levels.
Type of Information needed at different levels of management.
Division of organizations into several functional areas and their information
Requirements
Attributes of Information.
V. Rajaraman/IISc. Bangalore //V1/June 04/1
System Analysis and Design / Data and Information Motivation
Motivation
Large number of jobs today for computer science and engineering graduates is in
creating information systems for managing organizations we thus need methods to
design complex systems.
Students should know what information is and how it is different from data.
Should know types of information needed to manage organizations.
Should know nature of organizations and their structure to design appropriate
information system.
Should know management structure and needs of each level of management.
Should know functional areas of management information needs for each area.
V. Rajaraman/IISc. Bangalore //V1/July 04/1
V.Rajaraman SAD/M1/LU1/V1/2004 1
Data and Information
Data : Raw Material
Data collection costs money
Collect only necessary and sufficient data
Data is generally used by machines
Data is useless unless it is processed to
create Information
V.Rajaraman SAD/M1/LU1/V1/2004 2
Data and Information
Information : Processed data
Data processed by machines giving information
Information is used to run an organization efficiently
Information used by managers to initiate actions
V.Rajaraman SAD/M1/LU1/V1/2004 3
Example of Informationneeded by a Shopkeeper
Daily sales account
List of low stock items to be re-ordered
List of overstock items
Long overdue payments
Profit and loss account
Used to streamline day to day operations called
Operational information
V.Rajaraman SAD/M1/LU1/V1/2004 4
Example of Informationneeded by a Shopkeeper (Contd)
Slow or fast moving items
Reliable supplier of items
Sales trends
Used to improve profitability of shop called
Tactical information
V.Rajaraman SAD/M1/LU1/V1/2004 5
Example of Informationneeded by a Shopkeeper (Contd)
Whether to stock different varieties of items
Whether to diversify
Whether to start a new branch in a different locality
Whether to start an e-shop
Information to expand business and explore new opportunities
Known as Strategic Information
V.Rajaraman SAD/M1/LU1/V1/2004 6
Example of Information needed by a Shopkeeper (Contd)
Income tax account
Sales tax account
Used to provide information to the government
Known as Statutory Information
V.Rajaraman SAD/M1/LU1/V1/2004 7
Types of Information
Strategic : Needed for long range planning and directions.
This is less structured.
Tactical : Needed to take short range decisions to improve
profitability and performance.
V.Rajaraman SAD/M1/LU1/V1/2004 8
Types of Information
Operational : Needed for day to day operations
of the organization.
Eg: Daily Sales, Billing.
Statutory : Needed by law to sent to government
authorities.
Eg: Sales tax return.
V.Rajaraman SAD/M1/LU1/V1/2004 9
Management Hierarchy and Information Needs
Volume ofInformation
Type ofInformation
TopManagers
MiddleManagers
Line managers
Strategic-Long range planning
TacticalShort range improvement
OperationalDay to day policies
Lowcondensed
Unstructured
Mediummoderatelyprocessed
Moderatelystructured
LargeDetailed Reports
Highlystructured
SAD/M1/LU2/V1/2004 1V.Rajaraman
Need forInformation Systems
Increasing size of organizations thus data volume increases
Timely processing for fast action
Better competitiveness with better information
Increasing of complexity of organizations requireinnovative processing
Distributed organizations
Same data can be processed in different ways
SAD/M1/LU2/V1/2004 2V.Rajaraman
Management Structure
Chief Executive (Strategical)
Marketingmanager
Human Resourcemanager
Financemanager
Materialsmanager
Productionmanager
(Tactical)
Line managers(Operational)
SAD/M1/LU2/V1/2004 3V.Rajaraman
Management Structure(Contd)
Top Management
Chief Executive known as CEO
Executive Directors for each functional areas such as
Production, Finance, HRD etc.
Take strategic decisions
SAD/M1/LU2/V1/2004 4V.Rajaraman
Management Structure(Contd)
Middle Management
General managers, divisional managers, Vice presidents etc
Each functional area may have 2 to 3 middle level
managers reporting to top management
Take Tactical decisions
SAD/M1/LU2/V1/2004 5V.Rajaraman
Management Structure(Contd)
Line Managers
Group managers, Assistant Group managers, Assistant managers
Each functional area may have several line managers reporting to
middle level managers.
Take Operational decisions
V.Rajaraman 1SAD/M1/LU3/V1/2004
Management Structure(Contd)
Functional Areas
Production
Marketing
Materials Purchase, Stores
Finance Accounts
Human Resource Development (hrd)
Research And Development (R&D)
V.Rajaraman 2SAD/M1/LU3/V1/2004
Management Structure(Contd)
Functional Areas
All organizations need not have identical functional areas
However some are common such as
- Marketing
- Finance
- Human Resource Development (hrd)
V.Rajaraman 3SAD/M1/LU3/V1/2004
Information for Management
Production Management
Strategic Information
Yearly and monthly production quotas and alternate
schedules
Policies on machine replacement, augmentation,
and modernization.
Identifying best product mix.
V.Rajaraman 4SAD/M1/LU3/V1/2004
Information for ManagementProduction Management
Tactical Information
Identifying and controlling areas of high cost.
Identifying critical bottlenecks in production.
Identifying alternate production schedules based on tools,
machines etc.
Performance measures of machines to decide replacement.
V.Rajaraman 5SAD/M1/LU3/V1/2004
Information for ManagementProduction Management
Operational Information
Monitoring up to date production information by examining
assemblies, detecting likely shortages and giving early warning.
Scheduling better production dynamically.
Preventive maintenance schedules.
Monitoring tool, machine and personnel availability
V.Rajaraman 6SAD/M1/LU3/V1/2004
Information for Management
Marketing Management
Strategic Information
Search for new markets and marketing strategies.
Analysis of competitors strategy.
Technology and demographic forecasts and
product changes.
V.Rajaraman 7SAD/M1/LU3/V1/2004
Information for ManagementMarketing Management
Advertising techniques and analysis of their impact.
Customer preference surveys.
Correlation of prices and sales.
Sales force deployment and targets.
Exploring alternate marketing channels.
Timing of special sales campaigns.
Tactical Information
V.Rajaraman 8SAD/M1/LU3/V1/2004
Information for ManagementMarketing Management
Operational Information
Sales analysis by regions, customer class, sales person. Sales target versus achievement. Market share and trends. Seasonal variations. Effect of model changes. Performance of sales outlets Costs of campaigns and benefit.
V.Rajaraman 9SAD/M1/LU3/V1/2004
Information for Management
Material Management
Strategic Information
Developing vendors for critical items.
Determining optimal levels of inventory
Determining proportion of material needed
Reducing varieties of inventory.
V.Rajaraman 10SAD/M1/LU3/V1/2004
Information for ManagementMaterial Management
Tactical Information
Developing vendor performance measures.
Determining optimal reorder levels.
Determining issues of items to shops versus standard needs.
Controlling high value of inventory.
Determining impact on material cost and procurement with
design changes and new product introduction.
V.Rajaraman 11SAD/M1/LU3/V1/2004
Information for ManagementMaterial Management
Operational Information
List of excess & deficient items received.
List of items rejected.
Critical items received.
Stores in transit and in inspection.
Value of inventory in hand.
Goods received, rejected and issued.
V.Rajaraman 12SAD/M1/LU3/V1/2004
Information for Management
Finance Management
Strategic Information
Methods of financing.
Pricing policies.
Tax planning.
V.Rajaraman 13SAD/M1/LU3/V1/2004
Information for Management
Finance Management
Tactical Information
Variations between budget and expenses. Large outstanding payments/Receipts. Credit and payment status. Cost increases and pricing. Impact of taxation on pricing
V.Rajaraman 14SAD/M1/LU3/V1/2004
Information for Management
Finance Management
Operational Information
Periodic financial report. Budget status to all functional managers. Tax returns. Share transfers. Profit and loss account. Payments and receipts. Payroll, provident fund accounts.
V.Rajaraman 15SAD/M1/LU3/V1/2004
Information for Management
Human Resource Management
Strategic Information
Long range human resource requirements
at different levels.
Policies on human resource development and training
Policies on personnel welfare and facilities
V.Rajaraman 16SAD/M1/LU3/V1/2004
Information for ManagementHuman Resource Management
Tactical Information
Performance appraisal. Demographic make-up of personnel and its
impact on retirement. Production incentives. Morale of personnel. Absentee reduction. Leave and overtime policies. Personnel deployment policies.
V.Rajaraman 17SAD/M1/LU3/V1/2004
Information for ManagementHuman Resource Management
Operational Information
Routine assessment.
Skills inventory.
Loan/advances and recoveries.
Leave record.
V.Rajaraman 18SAD/M1/LU3/V1/2004
Information for Management
Research Design & development Management
Strategic Information
Which products are to be developed?
What types of improvements are required?
What long range research is more promising?
What technical collaboration would be appropriate?
V.Rajaraman 19SAD/M1/LU3/V1/2004
Information for Management
Research Design & development Management
Tactical Information
Setting intermediate goals. Checking availability of equipment & appropriate selection Determining proportions of resources to be allocated to different projects.
Deployment of personnel to projects. Information on similar and related researchprojects undertaken by other companies
V.Rajaraman 20SAD/M1/LU3/V1/2004
Information for Management
Research Design & development Management
Operational Information
Progress against goals.
Budgeted expenses versus actual expenses.
Status of outstanding orders for equipment and
components.
SAD/M1/LU4/V1/2004 1V.Rajaraman
Qualities of Information
Quality How to ensure quality
Accurate Ensure correct input and processing rules.
Complete Include all data.
Timely Give at right time
SAD/M1/LU4/V1/2004 2V.Rajaraman
Qualities of Information
Quality How to ensure quality
Trustworthy Do not hide unpleasantinformation.
Relevant Understand user needs.
Brief Summarize relevant
information.
SAD/M1/LU4/V1/2004 3V.Rajaraman
Qualities of Information
Quality How to ensure quality
Up-to-date Include all data up topresent time.
Significance Use attractive format & graphical charts.
SAD/M1/LU5/V1/2004 1V.Rajaraman
Varieties ofInformation Systems
Business Data processing
Operational information
Management information system
Tactical information
Decision support system(DSS)
Strategic information
SAD/M1/LU5/V1/2004 2V.Rajaraman
Business DataProcessing System
Enter data to be processed
Edit, check input data
Control check to see if the data is correct and
reasonable
Store clean data as an organized data base in a storage
SAD/M1/LU5/V1/2004 3V.Rajaraman
Business Data Processing
There are 2 methods of business data processing1. On-line transaction processing (OLTP)2. Batch processingOLTP is used for query processing and rapid actions to requestsExample: Finding balance in ones bank account
Booking railway ticketsBatch processing used for periodic data processing of massive dataExample: Processing university exam results at the end of
each semester Payroll computation each month
SAD/M1/LU5/V1/2004 4V.Rajaraman
OnlineTransaction Processing
Database (or master file) available online on disk
Request in specified format accepted from requestor
Check request for validity
Retrieve record from database
Take appropriate action
SAD/M1/LU5/V1/2004 5V.Rajaraman
Batch Processing
Collect a batch of requests
Key in
Validate
Create request file
Called transaction file
Update master file using transaction file
Create result file
Print responses for requests
SAD/M1/LU5/V1/2004 6V.Rajaraman
OLTP Vs Batch
Response time - OLTP Fast Throughput
(No of transaction/unit time) - Batch High Enquiry systems - Online Periodic Processing - Batch
Once a day - Stores Issues Once a month - Payroll
SAD/M1/LU5/V1/2004 7V.Rajaraman
ManagementInformation System
Analyze outputs of routine data processing using
statistical or operations research tools
Eg: -Observe periodic demands by statistical analysis &
use for tactical decisions
- Use operations research tools to decide product mix
using demand and cost data to maximize profit
SAD/M1/LU5/V1/2004 8V.Rajaraman
Decision Support System
Unstructured and difficult to obtain precise information
Use of analytical and simulation models
Aids to conceptualise through graphs ,animation etc
Use of archival data to infer trends and rules
Some artificial intelligence tools may be used
SAD/M1/LU5/V1/2004 9V.Rajaraman
Decision Support System
Data mining a useful tool
What is data mining?
Data collected during routine data processing archived
over a long period-massive amount (Tera Bytes)
Some hypothetical rules guessed by experienced managers
and correlated with archival data-called data mining
SAD/M1/LU5/V1/2004 10V.Rajaraman
Decision Support System
Example of data mining From archival data a rule guessed by managers
that in some months there are long waiting lists for sleeperberths is verified-Data mining gives precise quantitative data
Action
Increase number of sleeper coachesor
Introduce special trains
Unexpected results of analysis of archival data morevaluable for DSS
System Analysis and Design/Systems Analysis and Design Life Cycle Learning Objectives
V. Rajaraman/IISc. Bangalore //V1/June 04/1
Learning Objectives
Nine Steps in designing Information Systems Tasks performed in each step. Nature of tasks performed by Systems Analysts. The attributes of Systems Analysts. The tools used by Systems Analysts
System Analysis and Design/System Analysis and Design Life Cycle Motivation
V. Rajaraman //V1/July 04/1
Motivation Designing Information system for an organization is very complex job.
Students should know how to logically divide a complex job into smaller
manageable steps. Each step must have a logical beginning and end and must be self contained.
Division of large jobs into logical steps will
Enable one to assess progress at the end of each step Steps may be assigned to persons with specialized competence Allocation of human and financial resources appropriate for each step can
be planned
V.Rajaraman SAD/M2/LU1/V1/2004 1
Steps involved in Analysis and Design
Life Cycle Of Systems Analysis And Design
1. Requirements Determinations2. Requirements Specifications3. Feasibility Analysis4. Final Specifications5. Hardware Study6. System Design7. System Implementation8. System Evaluation9. System Modification
V.Rajaraman SAD/M2/LU1/V1/2004 2
Life Cycle Of Systems Analysis And Design
Step 1 : Requirements Determination
Arrived at by a consensus among managers
Priorities among applications determined
Pick high priority applications.
V.Rajaraman SAD/M2/LU1/V1/2004 3
Life Cycle Of Systems Analysis And Design
Step 2 : Requirements Specification
Known as System Requirements Specification (SRS) Understand the existing System Applications where a system is required are listed Arrive at the specifications of the users Requirements
after discussions with the user
A system may encompass several applications
V.Rajaraman SAD/M2/LU2/V1/2004 1V.Rajaraman SAD/M2/LU2/V1/2004 1
Step 3 : Feasibility Analysis
Life Cycle Of Systems Analysis And Design
Formulate Goals of the system and quantify goals Find alternative methods of meeting the goals For each alternative assess resources needed
- Human Resources
- Time and Money
- Equipment needed
Assess cost of each alternativeFind the best alternative method subject to resource
constraints
V.Rajaraman SAD/M2/LU2/V1/2004 2V.Rajaraman SAD/M2/LU2/V1/2004 2
Life Cycle Of Systems Analysis And Design
Step 4 : Final Specifications
Specifications would state what the system wouldachieve.
Specification drawn up are improved forimplementation.
SRS written- given to user and agreementreached
V.Rajaraman SAD/M2/LU2/V1/2004 3V.Rajaraman SAD/M2/LU2/V1/2004 3
Life Cycle Of Systems Analysis And Design
Step 5 : Hardware Study
Determine Hardware and Software requiredto execute the application.
Determine Response time,Volume of data to be processed, Frequency of reports etc & then
pick the hardware.
V.Rajaraman SAD/M2/LU2/V1/2004 4V.Rajaraman SAD/M2/LU2/V1/2004 4
Life Cycle Of Systems Analysis And Design
Step 6 : System Design
Logical Design of the System Objects Identified Database Designed Program Specification drawn up Implementation Plan Drawn up Test Plan
V.Rajaraman SAD/M2/LU2/V1/2004 5V.Rajaraman SAD/M2/LU2/V1/2004 5
Life Cycle Of Systems Analysis And Design
Step 7 : System Implementation
Write Programs Create Database Document System Train Users Trial run of the system Test and Accept
V.Rajaraman SAD/M2/LU2/V1/2004 6V.Rajaraman SAD/M2/LU2/V1/2004 6
Life Cycle Of Systems Analysis And Design
Step 8 : System evaluation
Find out from Users whether the Systemmeets specified requirements.
List areas of dissatisfaction and find reasons Suggest if there has to be any improvements to
the system
V.Rajaraman SAD/M2/LU2/V1/2004 7V.Rajaraman SAD/M2/LU2/V1/2004 7
Life Cycle Of Systems Analysis And Design
Step 9 : System Modification
Fix errors Add/Delete features as required by users Tune the Syste Continuously monitor system and assess
performance
V.Rajaraman SAD/M2/LU2/V1/2004 8V.Rajaraman SAD/M2/LU2/V1/2004 8
RequirementsDetermination
RequirementsSpecification
FeasibilityAnalysis
SystemImplementation
SystemDesign
SystemSpecification
Analysis
HardwareStudy
SystemEvaluation
SystemMaintenance Improved System
RevisedRequirements
Budget & schedule
PhysicalRequirements
ConfigurationData
LogicalDesign
UserRequirements
FeasibilityStudyFunctional
Specifications
Decision toDesign Information System
Revised PrioritizedRequirements Specifications
Test Plan
System Life Cycle Diagram
System
V.Rajaraman SAD/M2/LU3/V1/2004 1
Role Of Systems Analyst Defining Requirements
- Involves Interviewing Users
Prioritizing Requirements- Obtain Users Consensus
Fact Gathering- Data, Facts, Opinions of Managers
- Lower level Users should be consulted
V.Rajaraman SAD/M2/LU3/V1/2004 2
Role Of Systems Analyst Analysis and evaluation
- Arrive at appropriate system
Solving problems- Hazy requirements converted into specific requirements
- Suggest many alternative solutions
- Quantify cost and benefits
V.Rajaraman SAD/M2/LU3/V1/2004 3
Role Of Systems Analyst
Drawing up specifications- Functional Specifications
- Understood by users and programmers
- Accepted by users
- Precise and detailed
- Account for possible changes
V.Rajaraman SAD/M2/LU3/V1/2004 4
Role Of Systems Analyst
System Design
Logical design of system- Objects identification
- Normalizing database
- Test plan
Design must be modular to accommodate change
V.Rajaraman SAD/M2/LU3/V1/2004 5
Role Of Systems Analyst
Evaluating Systems - Evaluation after use for sometime
- Plan periodicity for evaluation
- Modify as needed
V.Rajaraman SAD/M2/LU3/V1/2004 6
Attributes Of A Systems Analyst
Knowledge Of Organisation- Knowing users jargon & practices
- Know Management functions.
Knowledge Of Computers And Software - Knowledge of system design tools
- Keep abreast of modern developments
V.Rajaraman SAD/M2/LU3/V1/2004 7
Attributes Of A Systems Analyst
Good Interpersonnal Relations- Need to work as team member
- Lead smaller teams
- Interface with programmers & Users
- Motivator.
Ability To Communicate- Oral Presentation
- Report Writing
- Answer queries
V.Rajaraman SAD/M2/LU3/V1/2004 8
Attributes Of A Systems Analyst
Analytical Mind- Problem solving attitude
- Ability to assess trade offs
- Sound commonsense
- Curiosity to learn about new organizations
Breadth Of Knowledge- Broad Liberal Knowledge
- Variety of jobs to be tackled in diverse organizations
V.Rajaraman SAD/M2/LU3/V1/2004 9
Tools Used By Systems Analyst
Data Flow Diagram Decision Tables Modeling Language such as UML Normalization of Databases Testing tools ISO/CMM procedure manuals
System Analysis and Design/ Information gathering Learning Objectives
V. Rajaraman/IISc. Bangalore //V1/June 04/1
Learning Objectives
Strategy to gather information for computerization. Various sources of information. Methods of searching for information. Interviewing techniques to gather information from line managers to top
management.
Methods of consensus for formulating requirements. Use of document flow diagrams to depict flow of documents in an organization Specification of Operational, tactical and strategic information which will be
provided by the system
Use of dataflow diagrams to specify flow of records and how they will be processed to create reports
System Analysis and Design/Information Gathering Motivation
V. Rajaraman //V1/July 04/1
Motivation
The Information system designed for an organization must meet the requirements of the end users of the organization.
To obtain what an end user expects from the Information System the designer must gain complete knowledge of the organizations working.
It is important for the student to know the information gathering techniques so that no information is overlooked and the nature and functions of an organization
are clearly understood
The main purpose of gathering information is to determine the information requirements of an organization.
Information requirements are often not stated precisely by management. Analysts responsibility to prepare a precise Systems Requirement Specifications
understood (SRS) by users.
SRS document is a vital document before starting a project.
V. Rajaraman SAD/M3/LU1/V1/2004 1
InformationGathering Strategies
Identify Information sources
Evolve a method of obtaining information from
the identified sources.
Use Information flow model of organization.
V. Rajaraman SAD/M3/LU1/V1/2004 2
Information Sources
Users of System
Forms and Documents used in the organization
Procedure manuals, rule books etc.
Reports used by the organization
Existing computer programs(If Any).
V. Rajaraman SAD/M3/LU1/V1/2004 3
Information Sources
Interviews are very important
Use organization chart
Understand the importance of the people who
operate the system-Clerks,Line managers.
Gather information from Middle level persons who have lot of
experience
Gather both qualitative and quantitative
information & Observe how the organization works.
V. Rajaraman SAD/M3/LU2/V1/2004 1
InformationGathering Methods
Searching for information
Individual Interviews
Group discussions
Several Interviews needed.
V. Rajaraman SAD/M3/LU2/V1/2004 2
Planning an Interview
Make a list of people to be interviewed and in what order
Plan and note down a list of questions to be asked
Plan several interviews with same person-mainly to
clarify doubts
Interview groups as appropriate
V. Rajaraman SAD/M3/LU2/V1/2004 3
Interviewing Technique
Make appointment
Allot time
Read background material
State purpose of interview
Be punctual and pay attention to what user says
Do not use computer jargon
V. Rajaraman SAD/M3/LU2/V1/2004 4
Interviewing Technique
Obtain both quantitative and qualitative Information
Discriminate between essential and desirable requirements
State what you understand and get it confirmed
Do not prolong interview
Summarize information gathered and get it checked by the
interviewee
V. Rajaraman SAD/M3/LU2/V1/2004 5
Use of Questionnaires
Questionnaires useful for statistical data collection
Useful when large number of persons have to respond
Make questionnaires short
Design questionnaires by enumerating objectives and
data needed to meet the objectives
Several follow-ups/personal interviews may be required to
get questionnaires back from respondents
V. Rajaraman SAD/M3/LU2/V1/2004 1
Existing system(If any)
Systems in similar organization
Observe workflow in workplace
Case repository in own organization
InformationGathering other Methods
V. Rajaraman SAD/M3/LU3/V1/2004 1
SystemRequirements Specification
System requirements specification specifies what
Information requirements will be provided.
It does not specify how the system will be designed
SRS is obtained after excessive discussions with the user.
Developing SRS is most important and difficult task of
a Systems analyst
V. Rajaraman SAD/M3/LU3/V1/2004 2
System RequirementsSpecification
Analyst examines the current system if any.
Analyst finds out the shortcomings of the system as
seen by the user.
Analysts aim is to develop SRS which is understandable by the
user and which can be used for detailed design of the system.
How SRS is Developed
V. Rajaraman SAD/M3/LU3/V1/2004 3
System RequirementsSpecification
Complete and Unambiguous.
Specifies operational,tactical, and strategic information
requirements
Eliminates possible later disputes between users and Analyst
Uses Graphical aids understood by users who are not
computer literate and will also be useful in design.
Jargon Free.
Ideal characteristics of SRS
V. Rajaraman SAD/M3/LU3/V1/2004 4
From WordStatement to Srs
Narratives of requirements by users too long and imprecise
Needs conversion to precise specifications
Step1: Analyse statement
Step2: Identify physical entities such as vendors,
receiving office, Inspection office etc.
Step3: Identify documents which are received/sent by
each office
Step4: Draw a physical document
V. Rajaraman SAD/M3/LU3/V1/2004 5
Developing aDocument Flow Diagram
Example Word Statement:
Our company receives many items from several vendors each
accompanied by a delivery note. A receiving office receives the
item and checks the delivery note with corresponding order.
Any discrepancy is reported to purchase office. The items received
along with items received note (with details of items) is sent to the
inspection office.
V. Rajaraman SAD/M3/LU3/V1/2004 6
Entities Identified - Vendors, Receiving office, Inspection office
Documents Identified - Delivery note, discrepancy note, Items
Received note.
Using these a document flow diagram is drawn
Developing aDocument Flow Diagram
V. Rajaraman SAD/M3/LU3/V1/2004 7
System RequirementsSpecification
Physical document flow diagram.
Logical Data flow Diagram (abbreviated as DFD)
Document flow diagram depicts various entities or offices &
documents generated/transmitted by these entities
Graphical Specification Tools
V. Rajaraman SAD/M3/LU3/V1/2004 8
Entities represented by Rectangles, Document flow by lines,
direction is shown by arrows.
Document flow lines are labeled by name of the document
Dashed lines used to depict flow of physical items.
Document flow diagram depicts various entities and
documents generated and/or transmitted by these entities
SystemRequirements Specification
V. Rajaraman SAD/M3/LU3/V1/2004 9
Document Flow Diagram
Vendor ReceivingOffice
Inspection office
Purchase Office
Delivery note ItemsReceived note
Discrepancynote
Delivered Items
Entities in the Document flow diagram given above are Vendor,
receiving office, Inspection office and purchase office
Documents are:Delivery note,items received note and discrepancy note
Physical flows are delivered items
V. Rajaraman SAD/M3/LU3/V1/2004 10
Document Flow Diagram (Contd)
Vendor ReceivingOffice
Inspection office
Purchase Office
Delivery note ItemsReceived note
Delivered Items
Discrepancynote
Delivered Items
V. Rajaraman SAD/M3/LU3/V1/2004 11
The diagram is interpreted as follows:1) Vendors deliver items to receiving office accompanied
by a delivery note2) Receiving Office sends items to inspection office along
with an items received note3) Receiving office sends discrepancy note to Purchase
officeEntities: Vendor,Receiving office,Inspection office and purchase officeDocuments : Delivery note,Items received note and discrepancy note
Document Flow Diagram (Contd)
V. Rajaraman SAD/M3/LU3/V1/2004 12
Data Flow Diagram (Dfd)
DFD also has entities and data flows
Besides this DFD specifies processing performed by some of the
entities
Data flow diagrams specify which entities generate documents
Details of documents and their flow
Processing performed by some entities
Data stores which are referred while processing data and in
which processed data may be written or stored
V. Rajaraman SAD/M3/LU3/V1/2004 13
Data Flow Diagram (Dfd)
VendorReceiving
Process
InspectionOffice
PurchaseOffice
Orders
Delivery note
ItemsReceivednote
Discrepancy note
V. Rajaraman SAD/M3/LU3/V1/2004 14
Entities are, originators of data and consumers of data
Vendor, Inspection office and purchase office are entities in
the above diagram
Data flows are delivery note, items received note
and discrepancy note
A circle is used to depict a process
A pair of parallel lines depict a store
Data FlowDiagram (Dfd) Contd.
V. Rajaraman SAD/M3/LU3/V1/2004 15
Data Flow Diagram (Contd)
VendorReceivingProcess
InspectionOffice
PurchaseOffice
Orders
Delivery note
ItemsReceivednote
Discrepancy note
V. Rajaraman SAD/M3/LU3/V1/2004 16
1) Data in a store may be read by a process
2) Processed data may also be written in a store
3) Circles depicting process are detailed separately
using Structured English Algorithms Or decision tables
4) Data flows are expanded to detail the data elements
5) Contents of the data stores are also detailed
Data Flow Diagram (Contd)
V. Rajaraman SAD/M3/LU3/V1/2004 17
Data Elementsin Data Flow & Store
Delivery note:
Order no,Vendor code,Vendor name and address,Item name,
Item code, Delivery date,Quantity supplied,units.
Items Received note:
Order no, Item name, Item code, Delivery date, quantity
supplied, units.
V. Rajaraman SAD/M3/LU3/V1/2004 18
Discrepancy note:Order no,Vendor code, Vendor name and address, Item name,Item code,Order date, Delivery date, quantity supplied, units,excess/deficiency, No of days late/early.Receiving office order file:Order no, Order date, Item name, Item code,Vendor code, VendorName and address, Quantity ordered, delivery period.
Data Elementsin Data Flow & Store
V. Rajaraman SAD/M3/LU3/V1/2004 19
Processing Rule
English statement
1. Compare order no in delivery note with that in order file. If no
match return item to vendor.
2. If order no matches then compare item codes, if no match return
item to the vendor.
3. If order number matches compare qty delivered with quantity
ordered. If excess or deficient send discrepancy note to purchase
office.
V. Rajaraman SAD/M3/LU3/V1/2004 20
4. If order number matches compare date of delivery with
expected date. If late or early send discrepancy note to
purchase office.
In case3 and case4 send items received note to inspection
office.
The above statements are shown to the user for his approval.
Processing Rule
V. Rajaraman SAD/M3/LU4/V1/2004 1
Operational, Tacticaland Strategic Information
For this simple examples are:Operational: Automatic checking of delivery against order and create
discrepancy note.Note discrepancy (if any) of each order.Tactical: Evolve vendor performance index based on discrepancy in
supplies and quality inspection.Strategic: Use performance index to decide proportion of order for an
item to be placed with each vendor.Develop new vendors if all existing vendors performance are poor.
V. Rajaraman SAD/M3/LU4/V1/2004 2
Steps In System Analysisand Design
Study currentsystem
DesignLogicalsystem
New System model
User statedrequirements
Physical document flow diagram
Logical data flow diagram
Feasibility document
New logicalDFD
Data DictionaryProcessing
rules
DescriptiveStatement of Information
V. Rajaraman SAD/M3/LU4/V1/2004 3
Modularizing Requirements Specifications
SRS Document now consists of:
Document flow diagrams (as many as needed).
Data Flow Diagrams.
Data elements of each data flow and Data Store
SRS Document
V. Rajaraman SAD/M3/LU4/V1/2004 4
Modularizing Requirements Specifications
Processing rules carried out in each circle of DFD.
A descriptive statement of operational,tactical,strategic
information will be provided
A data dictionary which consolidates all data elements
in the document and data store.
SRS Document ( Continued)
System Analysis and Design/ Feasibility analysis Learning Objectives
Learning Objectives
How to formulate the goals to be met by the information system to be designed How to quantify the goals How to obtain alternative solutions to satisfy the goals How to assess the feasibility of implementing alternative solutions. How to compute cost vs benefits of each alternative feasible solution How to prepare a system proposal for the potential users of the system
V. Rajaraman/IISc. Bangalore //V1/June 04/1
System Analysis and Design/ Feasibility analysis Motivation
Motivation
Before a management decides to implement a computer based system they should know the goals which will be met by the system
These goals should primarily be quantitative goals so that when the system is implemented it is possible to compare quantitatively the achievements with the
original goals set.
Analysts should also be able to estimate what hardware and human resources will be needed to implement a system to meet the goals
Analyst must examine alternative methods to implement the system and their resource needs.
A cost-benefit analysis should be carried out for each alternative and given to the management
This analysis will be essential for a management to decide which solution they would like to implement
Feasibility of meeting goals with available technology and human resource and cost/benefit are important parameters for informed management decision making.
V. Rajaraman/IISc, Bangalore //V1/July 04/1
V.Rajaraman SAD/M4/LU1/V1/2004 1
Feasibility Analysis
The following are the results of the Information gathering phase:
Deficiency of the current system are found Consensus is arrived at on requirements SRS Document is prepared
V.Rajaraman SAD/M4/LU1/V1/2004 2
Steps In Feasibility Analysis
Evaluate feasibility of alternative solutions taking into account constraints on resources.
Rank order alternatives and discuss with user.
Prepare a system proposal for management approval
V.Rajaraman SAD/M4/LU1/V1/2004 3
Feasibility Analysis (Contd.)
Send bill within 5 days of month end
Find out whether it is possible to meet these goals.
Determine the cost of meeting each goal
Find cost benefit if quantified
V.Rajaraman SAD/M4/LU1/V1/2004 4
Guidelines For Searching Goals
Identify the deficiency by pinpointing-Missing Functions
-Unsatisfactory performance
-Excessive cost of operations
Set Goals to remove deficiency and provide competitive advantage
V.Rajaraman SAD/M4/LU1/V1/2004 5
Characterstics Of a Goal
Must be quantified Realizable with the constraints of the organization and the system
Broken down into Sub-Goals Agreeable to all concerned In general goals must not only remove deficiency but also give a system which is superior to those of the competitors of the organization
V.Rajaraman SAD/M4/LU1/V1/2004 6
Case Study-hostelInformation System
(Detailed description of case is given in module3)
DEFICIENCIES OF CURRENT SYSTEM IDENTIFIED
MISSING FUNCTIONS
1.1 Stores requirement not forecast
1.2 Purchases not consolidated
1.3 Daily rate calculation not frequently updated
1.4 Menu not planned for balanced nutrition and low cost
V.Rajaraman SAD/M4/LU1/V1/2004 7
Case Study-hostelInformation System
DEFICIENCIES (BAD PERFORMANCE) UNSATISFACTORY PERFORMANCE
2.1 Billing not accurate and prompt
2.2 Student bills not itemized
2.3 Stores issue to cooks arbitrary
2.4 Payments to vendors not prompt
2.5 Large variations in mess bills every month
V.Rajaraman SAD/M4/LU1/V1/2004 8
Case Study-hostelInformation System
DEFICIENCIES (HIGH OPERATIONAL COST)
3.1Unpaid and long outstanding bills from students
3.2 Extras and rebates not reflected in stores issues
3.3 Frequent small purchases at high cost
3.4 High transport cost due to not consolidating stores requirements
V.Rajaraman SAD/M4/LU1/V1/2004 9
Case Study-hostelInformation System
FORMULATIOIN OF GOALS
MAIN GOALS
Ml . Send bill to students within 5 days of the end of month
M2. Control inventory of items in stores & issues to cooks to bring down mess bill by 10%
M3. Balance menu to meet nutritional requirements
M4. Cost of new menu not to exceed current cost
V.Rajaraman SAD/M4/LU1/V1/2004 10
Case Study-hostelInformation System
Formulation Of Sub-goals
S1.1 Itemize bills showing extras and rebates with dates
S1.2 Ensure less than 5% variations of bills from month to month
SI.3 Bills not paid within 10 days of issue brought to the attention of chief warden
S1.4 Update daily rates every day
Main goals M1 and sub-goals S1.1,S1.2,S1.3 remove deficiencies 1.3,2.1,1.2.2,2.5,3.1
V.Rajaraman SAD/M4/LU1/V1/2004 11
Case Study-hostelInformation System
FORMULATION OF SUB-GOALS
S2.1 Ensure payment to vendors within five days of
supply of items
S2.2 Maximum 4 trips per month for purchases.
Cartage less than 1% of item cost
V.Rajaraman SAD/M4/LU1/V1/2004 12
Case Study-hostel Information System (Contd.)
S2.3 Reduce inventory level. Level not more than 10% of requirements in a month
52.4 Issue to cooks every day not to exceed 5% of calculated values
Main goals M1& sub-goals above remove deficiencies1.1,1.2,2.3,2.4,3.2,3.3,3.4
V.Rajaraman SAD/M4/LU2/V1/2004 1
ExaminingAlternative Solutions
HOSTEL INFORMATION SYSTEM
ALTERNATIVE SOLUTIONS
A: Improve manual system
B: Use PC based periodic update system
C: An on-line system with server and several clients
V.Rajaraman SAD/M4/LU2/V1/2004 2
Solution A:Manual System (Contd.)
Calculate standard quantities needed and use for vendor order
Track student payments to find overdue payments
Solution does not ensure reduction in bill variations and prompt payment to vendors
Solution not scalable to large student population
V.Rajaraman SAD/M4/LU2/V1/2004 3
Solution B
Use a single PC to
Prepare students bills-itemize bills
Prepare number of members who will eat for next two days
Alert warden when bill not paid within 10 days of issue
Vendor order generation
Inventory control of store
Menu planning
V.Rajaraman SAD/M4/LU2/V1/2004 4
Solution B (Contd.)
PC configuration needed based on data base sizes PC with 20 MB disk, 1.2 MB floppy sufficient However minimum configuration available today(2004) is PC with 128 MB main memory, 40 GB disk 1.2MB floppy & CD R/W costs Rs. 25,000.Systems software(Windows XP+MSOffice+anti-virus) will cost around Rs.25,000.
Total cost=Rs 50,000 Need PC+ printer+uninterrupted power supply cost Rs. 70,000
V.Rajaraman SAD/M4/LU2/V1/2004 5
Solution C
Use a server which is accessed by 3 clients one each in the mess, the stores and the accounts sections; perform on-line transaction processing.
Advantage: Up to the minute status can be found
Number of transactions small and does not justify 4 computers
Solution unnecessarily expensive and rejected 0
V.Rajaraman SAD/M4/LU2/V1/2004 6
Evaluating Alternative Solutions
Determine Technical feasibility of each solution,in other words is technology mature to implement a solution
Determine Operational feasibility of each solution.In other words,for a given organizational structure will the solution fit in.Will it provide right information at the right time to users
V.Rajaraman SAD/M4/LU2/V1/2004 7
EvaluatingAlternative Solutions (Contd.)
Determine Economic feasibility of each solution.In other words, are finances available to implement system?Will it be cost effective?Will the money spent be recovered by savings or by better services to users
V.Rajaraman SAD/M4/LU2/V1/2004 8
Technical AndOperational Feasibility
Solution B is selected for further consideration
It is technically feasible as PC of necessary configuration is easily available.
It is also operationally feasible as clerks in hostel office can be easily trained to use a PC. The necessary problems will be written by system analyst/ programmer hired for this purpose.
V.Rajaraman SAD/M4/LU1/V1/2004 1
Cost-benefit Analysis
Needed to find economic feasibility of proposed solution Objective to find whether returns by implementing a system
justify the cost Found by listing all costs direct and indirect
V.Rajaraman SAD/M4/LU1/V1/2004 2
Cost-benefit Analysis (Contd.)
Direct cost- Cost of computer, software, space, human resource,material, travel, training etc.
Indirect cost- Time spent by persons and data gathering Benefit- Tangible- measurable
Intangible - better management- better user satisfaction
V.Rajaraman SAD/M4/LU1/V1/2004 3
Benefits
Direct - Savings due to reduced inventory, early collection of outstanding payments, reduced wastage,faster production, increased production
Indirect Increased work done with same human resource
Intangible - better service to customers
- superior product quality
- accurate,reliable,timely and up-to-date
strategic,tactical and operational information to
management
V.Rajaraman SAD/M4/LU1/V1/2004 4
Cost Benefits Analysis
CASE STUDY OF HOSTEL INFORMATION SYSTEM
COST : PC,UPS,Printer+Systems analyst+programmer
Capital 70,000 +60,000 =1,30,000
Cost(Recurring) : Stationery, maintenance,floppy etc.
Rs. 2000 per month
V.Rajaraman SAD/M4/LU1/V1/2004 5
Cost Benefits Analysis (Contd.)
Benefits : - Inventory reduction 5% of mess bill of 400 students
Daily rate=Rs 45Savings= 45*0.05*30*400=Rs 27,000- Transport cost saving=Rs 800 per month- Savings due to early payment=material cost*1.2%=37.5*400*30*0.012=Rs 5400 - Savings due to early collection =40*1350*0.01=Rs 540
V.Rajaraman SAD/M4/LU1/V1/2004 6
Cost Benefits Analysis
Direct saving=33740
Indirect benefit : student satisfaction due to itemized bill,
predictable daily rate,better menu
Net Direct Saving per month= 33740-2000
=R31740
Total capital cost=l,30,000
V.Rajaraman SAD/M4/LU1/V1/2004 7
Pay Back Period
SIMPLE: Cost 1,30,000
Saving 31,740 per month
Cost recovered in 130000/31740 = 4.1 months
Using interest on capital:
Monthly interest=0.015* 1,30,000
=Rs 1950 per month
Saving per month=31740-1950=29790
Cost recovered in 130000/29790 = 4.4 months
V.Rajaraman SAD/M4/LU1/V1/2004 8
Present Value Method
Accounts for the fact that a benefit accruing n months later will be lower today as the money if available today would have earned interest
If r = Interest rate in % per month.
n = number of months
x = benefit
Present value of benefit accruing n months later is:
Present value = x/(1+r)n
System Analysis and Design/ Tools for systems analysts Learning Objectives
Learning Objectives
What are Data Flow Diagrams (DFDs)? Why they are useful? How are they developed? How to level DFDs? Good style conventions in developing DFDs Difference between Logical and Physical DFDs Tools available to draw DFDs
V. Rajaraman/IISc. Bangalore //V1/June 04/1
System Analysis and Design/ Tools for systems analysts Motivation
Motivation
WHY DFD ?
Provides an overview of
-What data a system processes
-What transformations are performed
-What data are stored
-What results are produced and where they flow
Graphical nature makes it a good communication tool between
-User and analyst
-Analyst and System designer
Structure of DFD allows starting from a broad overview and expand it to a hierarchy of
detailed diagrams
V. Rajaraman/IISc, Bangalore //V1/July 04/1
V.Rajaraman SAD/M5/LU1/V1/2004 1
Data Flow Diagrams
WHAT ARE DATA FLOW DIAGRAMS?
DFDs models the system by depicting
External entities from which the data flows and where
results terminate
Processes which transform data flows
Data stores from which the data are read or into
which data are written by the processes.
V.Rajaraman SAD/M5/LU1/V1/2004 2
Symbols Used In Dfd
1.STORES
Stores demandnote
Delivery slip
Issue Advice
PROCESS
A circle represents a process Straight lines with incoming arrows are input data flows Straight lines with outgoing arrows are output data flows Processes are given serial numbers for easy reference Labels are assigned to Data flow.These aid documentation
V.Rajaraman SAD/M5/LU1/V1/2004 3
Symbols Used In Dfd
EXTERNAL ENTITIES
VENDOR CustomerInvoice
Order
Bill
A Rectangle represents an external entity They either supply data or receive data They do not process data
V.Rajaraman SAD/M5/LU1/V1/2004 4
Symbols Used In Dfd
DATA STORES
Inventory Writing Reading
A Data Store is a repository of data
Data can be written into the data storeThis is depicted by an incoming arrow
Data can be read from a data storeThis is depicted by an outgoing arrow
External entity cannot read or write to the data store
Two data stores cannot be connected by a data flow
V.Rajaraman SAD/M5/LU1/V1/2004 5
Rules Of Data Flow
Data can flow from-external entity to process-process to external entity-process to store and back-process to process
Data cannot flow from-external entity to external entity-external entity to store-store to external entity-store to store
V.Rajaraman SAD/M5/LU1/V1/2004 6
Data Flow Diagrams
An alternate notation is often used
3StoreIssue
Label
Name
A Process
NameLabel
DS1 InventoryA Data store
V.Rajaraman SAD/M5/LU1/V1/2004 7
Good Style In Drawing DFD
Use meaningful names for data flows, processes and data stores.
Use top down development starting from context diagram and successively leveling DFD
Only previously stored data can be read
A process can only transfer input to output. It cannot create new data
Data stores cannot create new data
V.Rajaraman SAD/M5/LU2/V1/2004 1
SAD/M5/LU2/V1/2004V.Rajaraman 1
Describing A System With A DFD
An entire system is represented by one DFD which gives thesystems overview
It is called a context diagram
It gives little detail & is also known as the top level DFD Context diagram of mess management is shown in the nexttransparency
V.Rajaraman SAD/M5/LU2/V1/2004 2
SAD/M5/LU2/V1/2004V.Rajaraman 2
Context Diagram OfMess Management System
MessManagement
System
Students
Mess manager Chief warden
Mess secretary
VendorsRequisitionsPayments
Daily rate
Menu
Overdue Payments
Item neededEach day
PerishableItems
BillsPayments
Extras Note
Supplies
Overdue Bills
Observe this diagram gives very little detail
V.Rajaraman SAD/M5/LU2/V1/2004 3
SAD/M5/LU2/V1/2004V.Rajaraman 3
Levelling DFD
A context diagram gives an overview
It should be split into major processes which give greater detail.
Each major process is further split to give more detail.
This process of giving more detail at a finer level is called levelling of DFD
V.Rajaraman SAD/M5/LU2/V1/2004 4
SAD/M5/LU2/V1/2004V.Rajaraman 4
Why Level DFD?
If a DFD is too detailed it will have too many data flows and will be large and difficult to understand
Start from a broad overview. Expand to details - Idea similar to using procedures and linking these with a main program
Each DFD must deal with one aspect of a big system
V.Rajaraman SAD/M5/LU2/V1/2004 5
SAD/M5/LU2/V1/2004V.Rajaraman 5
Expanded Dfd For Hostel Mess Management
1Billing system
StudentsMess
Secretary Chief Warden
Mess manager
Payments Update dailyrate Unpaid bills
Itemized billsat end of month
Extras/RebatesExpenses
No of meals(today +3)
Items used each day
Student billingInformation + bills
Going to next process (Continued in next slide)
V.Rajaraman SAD/M5/LU2/V1/2004 6
SAD/M5/LU2/V1/2004V.Rajaraman 6
Expanded DFD ForHostel Mess Management
3Perishableordering
2Stores issue
and Controlsystem
MessSecretary
MessManagerVendors
Orders(perishable) Vendor data(perishable)
Vegetables and perishablerequisition
Vendor dataStores
inventoryOrder data
Items usedtoday
Items to be issued(today +2)Vendor supplies
Order non-perishable
Menu(today +2)
Perishable order
Continued Low stock (today+2)
V.Rajaraman SAD/M5/LU2/V1/2004 7
SAD/M5/LU2/V1/2004V.Rajaraman 7
ExpandedDFD-billing System
Items rate data
1.4Find no
Of meals to cook
1.1CalculateDaily rate
1.2CalculateStudents
bills1.3
Reconcilepayments
Chiefwarden
MessManager
MessSecretary
Payments
Unpaid bills
Students dataDaily rate average(upto date)
Expenses data
Students data
No of meals(today + 2)
Students data
Itemizedbills
Bills
Extras/Rebates
Observe numbering of processes
V.Rajaraman SAD/M5/LU2/V1/2004 8
SAD/M5/LU2/V1/2004V.Rajaraman 8
Levelling Rules
If process p is expanded, the process at the next level are labeled as p.1,p.2 etc.
All data flow entering or leaving p must also enter or leave its expanded version.
Expanded DFD may have data stores
No external entity can appear in expanded DFD
Keep the number of processes at each level less than 7.
V.Rajaraman SAD/M5/LU2/V1/2004 9
SAD/M5/LU2/V1/2004V.Rajaraman 9
IllegalConstructs In DFD
No loops are allowed in DFD
A process cannot be a pure decision
CompareActual rate > Standard rate
Actual rate
V.Rajaraman SAD/M5/LU2/V1/2004 10
SAD/M5/LU2/V1/2004V.Rajaraman 10
IllegalConstructs In DFD
Get studentsextra/rebates
record
Calculate Bill
Extra/rebate store
Record
Ask for next record
Not correct as loop is formed
V.Rajaraman SAD/M5/LU2/V1/2004 11
SAD/M5/LU2/V1/2004V.Rajaraman 11
Levelling Examples
2Stores issue
and control system
Mess secretary
Vendor
Mess manager
Menu for(Today +2)
Vendor supplies
Vendor
Low message stock
Items issued
Items to be used on (today +2)
Low stock item(today +2) No of meals to
be cooked (today +2)
Stores inventory
Order for items
Order
Stores issue control system process
V.Rajaraman SAD/M5/LU2/V1/2004 12
SAD/M5/LU2/V1/2004V.Rajaraman 12
Levelling Examples
2.1Inventory update
And low stock warning
2.2Create orderfor vendor
2.4Check Itemavailability
2.3Calculate Items
needed
Mess manager
Mess secretary
Vendor
Items used today
Low stockitem
Stores inventory Order Vendor data
Items neededFrom 2.3
Vendor supplies
Order to vendor
Menu(today +2)
Items needed Low stock items(today+2)
Stores inventory
No of meals to (today +2)
V.Rajaraman SAD/M5/LU2/V1/2004 13
SAD/M5/LU2/V1/2004V.Rajaraman 13
Levelling ExamplesTop
Level process Ext BExt A
1 2 4
3
Ext BExt A
F1
1.1 1.2 1.4
1.3
2.1 2.2 2.3
F1
Ext A
Process 1 Process 2
F4
Ext B 4.3 4.1 4.23.1 3.2 3.4
3.3F4
V.Rajaraman SAD/M5/LU3/V1/2004 1
Logical And Physical DFD
DFDS considered so far are called logical DFDs
A physical DFD is similar to a document flow diagram.
It specifies who does the operations specified by the logical
DFD Physical DFD may depict physical movements of the goods Physical DFDs can be drawn during fact gathering phase of a life cycle
V.Rajaraman SAD/M5/LU3/V1/2004 2
Physical DFD For Encashing Cheque
Customer
ClerkVerify A/CSignatureUpdateBalance
CashierVerify Token
Take Signature
Cash
Cheque Cheque withToken numberToken
Token
Entry inDay Book
Store chequesBad Cheque
Customer Accounts
V.Rajaraman SAD/M5/LU3/V1/2004 3
Logical DFD For Cheque Encashment
RetrieveCustomer
Record
CheckBalance,
Issuetoken
StoreToken no& cheques
Search& match
token
UpdateDaily
cash bookCustomer
Day bookCashToken Slip
Cheque withtoken
ChequeCheque with
Token
Cheque Customer accounts
Cheque storeWith token no.
Token SlipOr cheque
System Analysis and Design/ Structured systems analysis and design Learning Objectives
Learning Objectives
In this module we will learn
How to use structured English to precisely specify processes The terminology used in structured English Terminology of decision tables and how it is used to specify complex logic
How to detect errors in decision table specifications Terminology and use of decision trees Comparison of structured English, decision tables and decision trees
V. Rajaraman/IISc. Bangalore //V1/June 04/1
System Analysis and Design/ Structured systems analysis and design Motivation
Motivation
Before designing a system an analyst must clearly understand the logic to be followed by each process block in a DFD
An analysts understanding must be cross checked with the user of the information system.
A notation is thus needed to specify process block in detail which can be understood by a user.
Notation used must be appropriate for the type of the application to be modeled. Different notations are needed to represent repetition structures,complex decision
situation and situations where sequencing of testing of conditions is important
For complex logical procedures a notation is needed which can also be used to detect logical errors in the specifications.
A tabular structure for representing logic can be used as a communication tool and can be automatically converted to a program.
V. Rajaraman/IISc, Bangalore //V1/July 04/1
V.Rajaraman SAD/M6/LU1/V1/2004 1
Process Specification
Once a DFD is obtained the next step is to precisely specify the process.
Structured English, Decision tables and Decision Trees are used to describe process.
Decision tables are used when the process is logically complex involving large number of conditions and alternate solutions
Decision Trees are used when conditions to be tested must follow a strict time sequence.
V.Rajaraman SAD/M6/LU1/V1/2004 2
Structured English
Structured English is similar to a programming language such
as Pascal
It does not have strict syntax rules as programming language
Intention is to give precise description of a process
The structured English description should be understandable
to the user
V.Rajaraman SAD/M6/LU1/V1/2004 3
Structured Englishif customer pays advance
then Give 5% Discountelse
if purchase amount >=10,000then
if the customer is a regular customerthen Give 5% Discount
No Discountelseend if
else No Discount end if
end if
V.Rajaraman SAD/M6/LU1/V1/2004 4
DecisionTable-example
Same structured English procedure given as decision table
CONDITIONS RULE1 RULE2 RULE3 RULE4Advance payment made Y N N NPurchase amt >=10,000 - Y Y N
Regular Customer? - Y N -
ACTIONS
Give 5% DiscountGive No Discount
X X - -- - X X
V.Rajaraman SAD/M6/LU1/V1/2004 5
DecisionTable-explanation
Conditions are questions to be asked
Y is yes,N is no & - is irrelevant
A X against the action says the action must be taken
A - against the action says the action need not be taken
Rule 2 in decision table DISCOUNT states:
if no advance payment and purchase amount >=10000and regular customer then give 5% discount
V.Rajaraman SAD/M6/LU1/V1/2004 6
Structured English
Imperative sentences- Actions to be performed should be
precise and quantified
Good Example: Give discount of 20%
Bad Example: Give substantial discount
V.Rajaraman SAD/M6/LU1/V1/2004 7
Structure English (Contd.)
Operators -Arithmetic : +, -, /, *
Relational : >, >=,
V.Rajaraman SAD/M6/LU1/V1/2004 8
DecisionTree-example
The structured English procedure given in 6.1.3 is expressed as a Decision tree below
Give 5% Discount
C1
C2
C3Y
Y
Y
N
N
N
Give 5% Discount
No Discount
No Discount
C1: Advance payment madeC2: Purchase amount >=10,000C3: Regular Customer
Y = YesN = No
V.Rajaraman SAD/M6/LU1/V1/2004 9
StructuredEnglish-decision Structures
If conditionthen
{ Group of statements }else
{ Group of statements }end if
Example: if(balance in account >= min.balance)then honor requestelse reject request
end if
V.Rajaraman SAD/M6/LU1/V1/2004 10
StructuredEnglish-case Statement
Case (variable)Variable = P: { statements for alternative P} Variable = Q: { statements for alternative Q}Variable = R: { statements for alternative R}None of the above: { statements for default case}
end case
Example : Case(product code)product code =1 : discount= 5%product code =2 : discount =7%None of the above : discount=0
end case
V.Rajaraman SAD/M6/LU1/V1/2004 11
STRUCTUREDENGLISH-REPETITION STRUCTURE
for index = initial to final do{ statements in loop }
end for
Example : Total =0for subject =1 to subject =5 do
total marks=total marks +marks(subject)write roll no,total marks
end for
V.Rajaraman SAD/M6/LU1/V1/2004 12
STRUCTUREDENGLISH-WHILE LOOP
while condition do{ statements in loop }
end while
Example : while there are student records left to doread student record
compute total marksfind class
write total marks, class, roll noend while
V.Rajaraman SAD/M6/LU1/V1/2004 13
Example
Update inventory file
for each item accepted record do{ search inventory file using item code
if successfulthen { update retrieved inventory record;
write updated record in inventory file using accepted record}
else { create new record in inventory file;enter accepted record in inventory file}
end ifend for
V.Rajaraman SAD/M6/LU2/V1/2004 1
Decision Table-motivation
A procedural language tells how data is processed
Structured English is procedural
Most managers and users are not concerned how data is processed-
they want to know what rules are used to process data.
Specification of what a system does is non-procedural.
Decision Tables are non-procedural specification of rules used in
processing data
V.Rajaraman SAD/M6/LU2/V1/2004 2
Advantages Of Decision Table
Easy to understand by non-computer literate users and managers
Good documentation of rules used in data processing.
Simple representation of complex decision rules .
V.Rajaraman SAD/M6/LU2/V1/2004 3
Advantages OF Decision Table (Contd.)
Tabular representation allows systematic validation of specification detection of redundancy,incompleteness & inconsistency of rules
Algorithms exist to automatically convert decision tables to equivalent computer programs.
Allows systematic creation of test data
V.Rajaraman SAD/M6/LU2/V1/2004 4
Method Of ObtainingDecision Table From
Word Statement Of RulesEXAMPLE
A bank uses the following rules to classify new accounts If depositor's age is 21 or above and if the deposit is Rs 100 or more, classify the account type as A If the depositor is under 21 and the depositis Rs 100 or more, classify it as type B If the depositor is 21 or over anddeposit is below Rs 100 classify it as C If the depositor is under 21 anddeposit is below Rs 100 do-not open account
Identify Conditions: Age >= 21 ClDeposits >= Rs 100: C2
Identify Actions : Classify account as A, B or C Do not open account
V.Rajaraman SAD/M6/LU2/V1/2004 5
Decision TableFrom Word Statement
CODITIONS Rule 1 Rule 2 Rule 3 Rule 4C1 : Age >= 21 Y N Y N
C2: Deposit >=100 Y Y N N
ACTIONS
A1: Classify as A X - - -
A2: Classify as B - X - -
A3: Classify as C - - X -
A4: Do not openAccount - - - X
Condition Stub
Action Stub
V.Rajaraman SAD/M6/LU2/V1/2004 6
Decision TableNotation Explained
ACTION ENTRIES
CONDITION ENTRIESCONDITION STUB
ACTIONSTUB
RULE
4 Quadrants-demarcated by two double linesCONDITION STUB LISTS ALL CONDITIONS TO BE CHECKEDACTION STUB LISTS ALL ACTIONS TO BE CARRIED OUTLIMITED ENTRY DECISION TABLE:ENTRIES ARE Y or N or -.Y-YES,N-NO,-IRRELEVANT(DONT CARE)X against action states it is to be carried out.-against action states it is to be ignored.Entries on a vertical column specifies a rule
V.Rajaraman SAD/M6/LU2/V1/2004 7
Decision Table Notation -Contd
ORDER OF LISTING CONDITIONS IRRELEVANTi.e. CONDITIONS MAY BE CHECKED IN ANY ORDER
ORDER OF LISTING ACTIONS IMPORTANT
ACTIONS LISTED FIRST CARRIED OUT FIRST
SEQUENTIAL EXECUTION OF ACTIONS
RULES MAY BE LISTED IN ANY ORDER
V.Rajaraman SAD/M6/LU2/V1/2004 8
InterpretingDecision Table-else Rule
C1: Is applicant sponsoredC2: Does he have min
qualificationC3: Is fee paid?
X - -
Y Y
Y N
A1: Admit letterA2: Provisional Admit
letterA3: Regret letter
Y Y
- X -
- - X
R1 R2
ELSE
V.Rajaraman SAD/M6/LU2/V1/2004 9
Interpreting Decision Table-else Rule (Contd.)
Interpretation R1: If applicant sponsored and he has minimum qualificationsand his fee is paid Send Admit letter
R2: If applicant sponsored and has minimum qualifications and his fee not paid send provisional admit letter
ELSE: In all cases send regret letter.The else rule makes a decision table complete
V.Rajaraman SAD/M6/LU2/V1/2004 10
Decision Table For Shipping Rules
C1: Qty ordered
V.Rajaraman SAD/M6/LU2/V1/2004 11
Extended Entry Decision Table
Condition Entries not necessarily Y or N Action entries not necessarily X or - Extended Entry Decision Tables(EEDT) more concise EEDT can always be expanded to LEDT
C1 : Product code 1 1 1 1 1 2
C2 : Customer code A B A B C -
C3 : Order amount 500 - -
Discount = 5% 7.5% 7.5% 10% 6% 5%
R1 R2 R3 R4 R5 R6Example
V.Rajaraman SAD/M6/LU2/V1/2004 12
Mixed Entry Decision Table
Can mix up Yes, No answers with codes
Rl R2 R3 R4 R5 R6
Cl : Product code = 1? Y Y Y Y NC2: Customer code = A B A B C -C3: Order amount < 500? Y Y N N - -
Discount = 5% 7 5% 7 5% 10% 6% 5%
Choice of LEDT, EEDT, MEDT depends on ease of communication with user,software available to translate DTs to programs, ease of checking etc.
V.Rajaraman SAD/M6/LU2/V1/2004 13
Linked Decision Table
Salary point=6 N eConduct OK? Y lDiligence OK? Y sEfficiency OK? Y e
Go to table 2 X -No promotion - X
Decision table 1
Salary point>2 N N N Y 1 yr as class 1 Y N - -
officer Departmental test Y - N -Passed?
Decision table 2
Advance to next salary pointNo promotionGo to Table3
X - - -- X X -
- - - X
V.Rajaraman SAD/M6/LU2/V1/2004 14
Linked Decision Table
Decision table3
1.Observe that one can branch between tables
2. Whenever complex rules are given it is a good idea to break them up into manageable parts
Complete departmentalCourse1 yr since last increment
Yelse
Y
Advance to next salarypointNo promotion
X -
- X
14
V.Rajaraman SAD/M6/LU3/V1/2004 1
Logical Correctness Of Decision Table
Consider decision table DTI:
Rl R2Cl: x>60 Y .C2:x
V.Rajaraman SAD/M6/LU3/V1/2004 2
Logical Correctness Of Decision Table (Contd.)
A decision table with 1 condition should have 2 elementary rules Each elementary rule must be distinct Each elementary rule must have distinct action If a decision table with k conditions does not have 2k rules specified
it is said to be incompleteFor example : DT2 does not have the elementary rule C1:N,
V.Rajaraman SAD/M6/LU3/V1/2004 3
Logical CorrectnessOf Decision Table (Contd.)
C2:N.
It is thus incomplete.
If the decision table has the same elementary rule occurring more than once it is said to have multiplicity of specifications
For Example:In DT2 The rule C1:Y,C2:Y occurs twice.Thus it has multiplicity of specification
V.Rajaraman SAD/M6/LU3/V1/2004 4
Logical CorrectnessOf Decision Table (Contd.)
If action specified for multiple identical rules are different then it is called ambiguous specifications
DT2 has an ambiguity.Rules R11 and R21 are identical but have different actions
Ambiguity may be apparent or real
V.Rajaraman SAD/M6/LU3/V1/2004 5
Logical CorrectnessOf Decision Table (Contd.)
If an apparently ambiguous specification is real then it is a contradiction
For example : If C1:(X > 60) = Y and C2:(X > 40) = Y then X = 70 will satisfy both inequalities.
As two actions are specified for (Cl = Y, C2 = Y) and they are different the rule is really ambiguous and is called Contradictory Specification.
V.Rajaraman SAD/M6/LU3/V1/2004 6
Logical CorrectnessOf Decision Table (Contd.)
If all 2k elementary rules are not present in a k condition decision table is said to be incomplete.
DT2 (PPT 6.3.1) is incomplete as rule C1:N, C2:N is missing
Rule C1=N, C2:=N is logically possible as C1=N is X= 40. A value of X = 50 will make C1=N,C2=N
V.Rajaraman SAD/M6/LU3/V1/2004 7
Logical CorrectnessOf Decision Table (Contd.)
Thus DT2 has a real incomplete specification
A decision table which has no real ambiguities or real
incompleteness is said to be logically correct
A decision table with logical errors should be corrected
V.Rajaraman SAD/M6/LU3/V1/2004 8
Use Of Karnaugh Maps
KARNAUGH map abbreviated K-map is a 2 dimensional diagram with one square per elementary rule
The k-map of DT2 is
? Al
A2 A1,A2
If more than one action is in one square it is an ambiguous rule
If a square is empty it signifies incomplete specification
C2C1
N
Y
N Y
V.Rajaraman SAD/M6/LU3/V1/2004 9
Use Of Karnaugh Maps
Structured English procedure:
If carbon content50
then if tensile strength>30000then steel is grade 10else steel is grade 9
end ifelse steel is grade 8end if
else steel is grade 7end if
V.Rajaraman SAD/M6/LU3/V1/2004 10
Use OfKarnaugh Maps
Decision table-Grading steel
C1:Carbon content 50C3 tensile strength>30000
Y Y Y N Y N N NY Y N N N Y Y NY N N N Y Y N Y
Grade 10 9 8 7 ? ? ? ?
V.Rajaraman SAD/M6/LU3/V1/2004 11
KarnaughMaps Grading Steel
7 ? 9 8
? ? 10 ?
C3C1 C2
N
Y
NN NY YY YN
The 3 conditions are independent The decision table is thus incomplete Observe that in the Structured English specifications
the incompleteness is not obvious
V.Rajaraman SAD/M6/LU3/V1/2004 12
Decision Table-Arrears Management
R1 R2 R3 R4 R5 R6
C1:Payment in current month Y N N - - ->min.specified paymentC2:Payment in current month>0 - Y Y - N NC3:Any payment in last 3 months - - - N Y YC4: Actual arrears > 3(min.Specified payment per month) - Y N Y N Y
A1 : Send letter A X - - - - -A2 : Send letter B - X - - - -A3 : Send letter C - - X - - -A4 : Send letter D - - - X - X A5 : Send letter E - - - - X -
1
V.Rajaraman SAD/M6/LU3/V1/2004 13
Karnaugh Map
? A3 A1 A1*
A4 A2A4+ A1A4+ A1A4*
A4 A2 A1 A1A4*
A5 A3 A1 A1A5*
NN NY YY YNNN
NY
YY
YN
C3C4C1C2
K Map for decision table
V.Rajaraman SAD/M6/LU3/V1/2004 14
Karnaugh Map
C1 : x>m C2:x>0 C3:y>0 C4:z>3m m>0
C3,C4 independent of C1,C2 C1,C2 dependent
C1: Y C2: Y x>m, x>0 possible
C1: Y C2: N x>m, x
V.Rajaraman SAD/M6/LU3/V1/2004 15
Karnaugh Map
C1: N C2: N x
V.Rajaraman SAD/M6/LU3/V1/2004 16
Correct Decision Table
If users say that for rules C1C2C3C4:NYNY AND NYNY(marked with + in k-map) the action is A4 and forC1C2C3C4:NNNN also it is A4, the corrected map is
NN NY YY YN
A4 A3 A1
A4 A4 A4A4 A2 A1A5 A3 A1
NN
NY
YY
YN
C3C4