Professional Documents
Culture Documents
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 1
information at different levels of management 3
3. Functional allocation of management, 1
requirements of information for various
functions
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, 1
system implementation, system evaluation,
system modification.
7. Role of systems analyst – attributes of a 1
systems analyst – tools used in system analysis
3. Information 8. Information gathering, strategies, methods 1
gathering 9. Case study/documenting study, system
requirements specification, from narratives of 3
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
11. Examining alternative solutions and evaluating
proposed solutions 3
a) Technical feasibility 1
b) Operational feasibility
c) Economic feasibility
12. Cost benefit analysis, Documenting feasibility 1
report
5. Tools for 13. Developing Data Flow Diagrams (DFD)
systems analysts a) What are DFDs?
b) Symbols used in DFD 1.5
c) Rules of data flow 3
d) Good style in drawing DFD
14. Describing systems with DFD & Leveling 1
DFD
15. Logical & Physical DFDs 0.5
There are 4 alternative answers to each question. One of them is correct. Pick
the correct answer. Do not guess. A key is given at the end of the module for you
to verify your answer
LEARNING UNIT 1
1.1 Information is
(a) Data (b) Processed Data
(c) Manipulated input (d) Computer output
LEARNING UNIT 2
LEARNING UNIT 3
1.26 Match and find best pairing for a Human Resource Management System
(i)Policies on giving bonus (iv)Strategic information
(ii)Absentee reduction (v)Tactical information
(iii)Skills inventory (vi)Operational Information
1.27 Match and find best pairing for a Production Management System
(i) Performance appraisal of machines (iv)Strategic information to decide on
replacement
(ii)Introducing new production (v)Tactical information technology
(iii)Preventive maintenance schedules (vi)Operational information for
machines
1.28 Match and find best pairing for a Production Management System
(i) Performance appraisal of machines (iv)Strategic information to decide on
replacement
(ii)Introducing new production (v)Tactical information technology
(iii)Preventive maintenance schedules (vi)Operational information for
machines
1.29 Match and find best pairing for a Materials Management System
(i) Developing vendor performance (iv) Strategic information measures
(ii) Developing vendors for critical (v) Tactical information items
(iii)List of items rejected from a vendor (vi)Operational information
1.30 Match and find best pairing for a Materials Management System
(i)Developing vendor performance (iv)Strategic information measures
(ii)Developing vendors for critical (v)Tactical information items
(iii)List of items rejected from a vendor (vi)Operational information
1.32 Match and find best pairing for a Finance Management System
(i)Tax deduction at source report (iv)Strategic information
(ii)Impact of taxation on pricing (v)Tactical information
(iii)Tax planning (vi)Operational information
1.33 Match and find best pairing for a Finance Management System
(i)Budget status to all managers (iv)Strategic information
(ii)Method of financing (v)Tactical information
(iii)Variance between budget and (vi)Operational information expenses
1.34 Match and find best pairing for a Marketing Management System
(i)Customer preferences surveys (iv)Strategic information
(ii)Search for new markets (v)Tactical information
(iii)Performance of sales outlets (vi)Operational information
1.36 Match and find best pairing for a Research and Development Management
System
(i)Technical collaboration decision (iv)Strategic information
(ii)Budgeted expenses Vs actuals (v)Tactical information
(iii)Proportion of budget to be (vi)Operational information allocated to
various projects
1.37 Match and find best pairing for a Research and Development Management
System
(i)Technical collaboration decision (iv)Strategic information
(ii)Budgeted expenses Vs actuals (v)Tactical information
(iii)Proportion of budget to be (vi)Operational information allocated to
various projects
(a) it is convenient to do so
(b) each department can be assigned a specific functional responsibility
(c) it provides opportunities for promotion
(d) it is done by every organization
(a) it is convenient to do so
(b) it is done by every organization
(c) specific responsibilities can be assigned for each level
(d) it provides opportunities for promotions
1.40 Which of the following functions is the most unlikely in an insurance company.
(a) Training
(b) giving loans
(c) bill of material
(d) accounting
LEARNING UNIT 4
1.45 Match quality of information and how it is ensured using the following list
QUALITY HOW ENSURED
1.46 Match quality of information and how it is ensured using the following list
QUALITY HOW ENSURED
1.48 Match quality of information and how it is ensured using the following list
QUALITY HOW ENSURED
1.49 Match quality of information and how it is ensured using the following list
QUALITY HOW ENSURED
1.51 The quality of information which does not hide any unpleasant information is
known as
(a) Complete
(b) Trustworthy
(c) Relevant
(d) None of the above
LEARNING UNIT 5
1.53 Every record stored in a Master file has a key field because
(a) it is the most important field
(b) it acts as a unique identification of record
(c) it is the key to the database
(d) it is a very concise field
Motivation
Large number of jobs today for computer science and engineering graduates is in
Students should know what information is and how it is different from data.
information system.
Should know functional areas of management information needs for each area.
Volume of Type of
Information Information
Strategic-
Long range planning
Low Unstructured Top
condensed Managers
Tactical
Medium Moderately Middle Short range improvement
moderately structured Managers
processed
Highly Line managers Operational
Large structured Day to day policies
Detailed Reports
(Tactical)
Human
Production Marketing Materials Finance
Resource
manager manager manager manager
manager
(Operational)
Line managers
TOP MANAGEMENT
MIDDLE MANAGEMENT
LINE MANAGERS
FUNCTIONAL AREAS
PRODUCTION
MARKETING
MATERIALS – purchase, stores
FINANCE –Accounts
HUMAN RESOURCE DEVELOPMENT(HRD)
RESEARCH AND DEVELOPMENT (R&D)
FUNCTIONAL AREAS
Strategic Information
Tactical Information
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
Strategic Information
Tactical Information
Operational Information
Strategic Information
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.
Operational Information
Strategic Information
Methods of financing.
Pricing policies.
Tax planning.
Tactical Information
Operational Information
Strategic Information
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.
Operational Information
Routine assessment.
Skills inventory.
Leave record.
Strategic Information
Tactical Information
Operational Information
Motivation
Large number of jobs today for computer science and engineering graduates
is in creating information systems for managing organizations. Students
should know what is information and how it is different from data, 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 and
information needs for each area
LEARNING UNIT 1
DATA is a raw material with which we begin. Collecting data costs money
and hence one must collect necessary and sufficient data. Data is generally
used by machines and is useless unless it is processed to create
INFORMATION.
TYPES OF INFORMATION
STRATEGIC : Needed for long range planning and directions. This is less
structured.
Volume of Type of
Information Information
Strategic-
Low
Unstructured Top Long range planning
condensed
Managers
Medium
moderately Moderately Tactical
structured Middle Short range improvement
processed
Managers
Information systems are needed when timely processing for fast action is
needed, same data has to be processed in different ways and when
organizations require innovative processing.
MANAGEMENT STRUCTURE
Line managers
A Production Management
Strategic Information:
1)Yearly and monthly production quotas and alternate schedules
2)Policies on machine replacement, augmentation and modernization.
3)Identifying best product mix.
Tactical Information
1)Identifying and controlling areas of high cost.
2) Identifying critical bottlenecks in production.
3) Identifying alternate production schedules based on tools, machines etc.
4) Performance measures of machines to decide replacement.
Operational Information
1)Monitoring up to date production information by examining assemblies,
detecting likely shortages and giving early warning.
2) Scheduling better production dynamically.
3) Preventive maintenance schedules.
4) Monitoring tool, machine and personnel availability
B Marketing Management
Strategic Information:
1) Search for new markets and marketing strategies.
2) Analysis of competitors strategy
3) Technology and demographic forecasts and product changes
Tactical Information:
1)Advertising techniques and analysis of their impact.
2)Customer preference surveys.
3)Correlation of prices and sales.
4)Sales force deployment and targets.
5)Exploring alternate marketing channels.
6)Timing of special sales campaigns.
Operational Information:
1) Sales analysis by regions, customer class, sales person.
2) Sales target versus achievement.
3) Market share and trends.
4) Seasonal variations.
5) Effect of model changes.
6) Performance of sales outlets
7) Costs of campaigns and benefit.
C Material Management
Strategic Information:
1) Developing vendors for critical items
2) Determining optimal levels of inventory
3) Determining proportion of material needed
4) Reducing varieties of inventory
Tactical Information:
1) Developing vendor performance measures.
2) Determining optimal reorder levels.
3) Determining issues of items to shops versus
4) standard needs.
5) Controlling high value of inventory.
6) Determining impact on material cost and
7) procurement with design changes and new
8) product introduction.
Operational Information:
1) List of excess & deficient items received.
2) List of items rejected.
3) Critical items received.
4) Stores in transit and in inspection.
5) Value of inventory in hand.
6) Goods received, rejected and issued.
D Finance Management
Strategic Information:
1) Methods of financing.
2) Pricing policies
3) Tax planning.
Tactical Information:
1) Variations between budget and expenses.
2) Large outstanding payments/Receipts.
3) Credit and payment status.
4) Cost increases and pricing.
5) Impact of taxation on pricing
Operational Information:
1) Periodic financial report.
2) Budget status to all functional managers.
3) Tax returns.
4) Share transfers.
5) Profit and loss account.
6) Payments and receipts.
7) Payroll,provident fund accounts.
Strategic Information:
1) Long range human resource requirements at different levels.
2) Policies on human resource development and training
3) Policies on personnel welfare and facilities
Tactical Information:
1) Performance appraisal.
2) Demographic make-up of personnel and its impact on retirement.
3) Production incentives.
4) Morale of personnel.
5) Absentee reduction.
6) Leave and overtime policies.
7) Personnel deployment policies.
Operational Information:
1) Routine assessment.
2) Skills inventory.
3) Loan/advances and recoveries.
4) Leave record.
System Analysis and Design / Data and Information Multiple Choice Questions
1.1 Information is
a. Data
b. Processed Data
c. Manipulated input
d. Computer output
1.2 Data by itself is not useful unless
a. It is massive
b. It is processed to obtain information
c. It is collected from diverse sources
d. It is properly stated
1.3 For taking decisions data must be
a Very accurate
b Massive
c Processed correctly
d Collected from diverse sources
1.4 Strategic information is needed for
a Day to day operations
b Meet government requirements
c Long range planning
d Short range planning
1.5 Strategic information is required by
a Middle managers
b Line managers
c Top managers
d All workers
1.6 Tactical information is needed for
a Day to day operations
b Meet government requirements
c Long range planning
d Short range planning
1.7 Tactical information is required by
a Middle managers
b Line managers
c Top managers
d All workers
1.8 Operational information is needed for
a Day to day operations
b Meet government requirements
c Long range planning
d Short range planning
1.9 Operational information is required by
a Middle managers
b Line managers
c Top managers
d All workers
1.10 Statutory information is needed for
a Day to day operations
b Meet government requirements
c Long range planning
d Short range planning
1.11 In motor car manufacturing the following type of information is strategic
a Decision on introducing a new model
b Scheduling production
c Assessing competitor car
d Computing sales tax collected
1.12 In motor car manufacturing the following type of information is tactical
a Decision on introducing a new model
b Scheduling production
c Assessing competitor car
d Computing sales tax collected
b Well organized
c Unstructured
d Partly structured
1.25 Operational information is
a Haphazard
b Well organized
c Unstructured
d Partly structured
1.26 Match and find best pairing for a Human Resource Management System
(i)Policies on giving bonus (iv)Strategic information
(ii)Absentee reduction (v)Tactical information
(iii)Skills inventory (vi)Operational Information
a (i) and (v)
b (i) and (iv)
c (ii) and (iv)
d (iii) and (v)
1.27 Match and find best pairing for a Production Management System
(i) Performance appraisal of machines (iv)Strategic information to decide
on replacement
(ii)Introducing new production (v)Tactical information technology
(iii)Preventive maintenance schedules (vi)Operational information for
machines
a (i) and (vi)
b (ii) and (v)
c (i) and (v)
d (iii) and (iv)
1.28 Match and find best pairing for a Production Management System
(i) Performance appraisal of machines (iv)Strategic information to decide
on replacement
(ii)Introducing new production (v)Tactical information technology
1.32 Match and find best pairing for a Finance Management System
(i)Tax deduction at source report (iv)Strategic information
(ii)Impact of taxation on pricing (v)Tactical information
(iii)Tax planning (vi)Operational information
a (i) and (v)
b (iii) and (vi)
c (ii) and (v)
d (ii)) and (iv)
1.33 Match and find best pairing for a Finance Management System
(i)Budget status to all managers (iv)Strategic information
(ii)Method of financing (v)Tactical information
(iii)Variance between budget and (vi)Operational information expenses
a (i) and (v)
b (iii) and (vi)
c (ii) and (v)
d (ii) and (iv)
1.34 Match and find best pairing for a Marketing Management System
(i)Customer preferences surveys (iv)Strategic information
(ii)Search for new markets (v)Tactical information
(iii)Performance of sales outlets (vi)Operational information
a (i) and (iv)
b (ii) and (v)
c (iii) and (vi)
d (ii) and (v)
1.35 Match and find best pairing for a Marketing Management System
(i)Customer preferences surveys (iv)Strategic information
(ii)Search for new markets (v)Tactical information
(iii)Performance of sales outlets (vi)Operational information
a (iii) and (iv)
b (i) and (vi)
c (i) and (v)
a Complete
b Trustworthy
c Relevant
d None of the above
1.53 Every record stored in a Master file has a key field because
a it is the most important field
b it acts as a unique identification of record
c it is the key to the database
d it is a very concise field
1.54 The primary storage medium for storing archival data is
a floppy disk
b magnetic disk
c magnetic tape
d CD- ROM
1.55 Master files are normally stored in
a a hard disk
b a tape
c CD – ROM
d computer’s main memory
1.56 Master file is a file containing
a all master records
b all records relevant to the application
c a collection of data items
d historical data of relevance to the organization
1.57 Edit program is required to
a authenticate data entered by an operator
b format correctly input data
c detect errors in input data
d expedite retrieving input data
1.58 Data rejected by edit program are
a corrected and re- entered
a i ,ii
b i ,iii,iv
c ii ,iii
d i , ii ,iii
1.63 Batch processing is preferred over on-line transaction processing when
i) processing efficiency is important
ii) the volume of data to be processed is large
iii) only periodic processing is needed
iv) a large number of queries are to be processed
a i ,ii
b i, iii
c ii ,iii
d i , ii ,iii
1.64 A management information system is one which
a is required by all managers of an organization
b processes data to yield information of value in tactical management
c provides operational information
d allows better management of organizations
1.65 Data mining is used to aid in
a operational management
b analyzing past decision made by managers
c detecting patterns in operational data
d retrieving archival data
1.66 Data mining requires
a large quantities of operational data stored over a period of time
b lots of tactical data
c several tape drives to store archival data
d large mainframe computers
1.67 Data mining can not be done if
a operational data has not been archived
b earlier management decisions are not available
Information and reports that are required by law to be sent to the government
authority is called statutory information.
1.1 Distinguish between data and information. Give two examples of data and
1.3 What is the main difference between strategic and tactical information? If an
information required?
hospital?
1.7 What would you think are the strategic, tactical and operational information
1.8 What would be the strategic, tactical and operational information needs of a State
1.9 What do you think are the functional management areas in a large University?
1.10 What do you think are the functional management areas in a large student hostel?
1.11 What would be the strategic, tactical and operational management responsibility
timely information.
example.
1.19 Enumerate some functions which are common among many organizations.
1.20 Enumerate some functions which are common between a hostel and a hospital.
1.21 Explain how data will be processed to meet the functional requirements of a
purchase department.
1.22 Explain how data will be processed in a bank when a cheque is presented by a
customer and payment made to him (assume that the bank uses computers).
1.24 What is the difference between on-line transaction processing and batch
processing?
1.26 What is the basic difference between business data processing systems and MIS?
1.31 What do you understand by archival data? How can archival data be used?
Case Example
In what follows we will present a broad overview of how data is processed to meet the
In a computer based system the stock ledger is organized in a suitable form for easy
updating and retrieval and recorded on a magnetic disk. Magnetic disk storage is the
primary storage medium for storing large data bases. This is due to the fact that any
record can be directly accessed. Magnetic tapes are used primarily as a back-up storage
unit for keeping copies of data on disk. Tapes are also useful for storing old files and for
In order to create a stock ledger for a computer-based system it is necessary to first assign
unique codes for each item in the store. The unique code assigned to each item is known
as the key of the item record and identifies the record. After that it is necessary to find
out what data fields are needed for each item in the stock. The fields are determined by
working backwards, that is, first asking what outputs are needed and based on that
determining the data needed. The fields are organized as a record and stored in a data
base. This data base is the primary or master file for the store. (It is the computer
readable version of a stock ledger used in a store). Once the record format for each item
in the store is determined, one record is created for each item in the store. These records
are entered manually by a data entry operator who enters the records using a keyboard of
a terminal connected to the computer. This is called on-line data entry. Data may also
In off-line data entry the data entry machine is a low cost machine. If the volume of data
to be entered is very large, then a number of machines can be used and data prepared,
checked and corrected. As opposed to this, an on-line data entry method uses terminals
connected to the computer. In such a case the computer should be timeshared. On-line
data entry is appropriate for inserting, deleting or correcting some records in fields.
The data on floppy disk can then be transferred to the disk connected to the computer.
Off-line entry is used when the data base is very large and the computer used is a server
or a mainframe computer. If the data base is small, the PC itself may be used for data
Before data is stored in the disk-file it must be ensured that any errors made during data
entry is detected and corrected. This is done by a program called an edit program and a
control total checking program. Such programs are essential to ensure the validity of data
in a master file.
A procedure similar to the one used to create the master file is also used to keep the data
in the master file up-to-date when new items are received or new stock of items already
in the ledger are received. Table 1 summarizes the operations performed for other
functions. The format of a record for entering requests uses the same item codes assigned
in creating the master file. Other fields are determined based on what outputs are needed.
4. Enquiry
• Codify items
• Record format for enquiry
• Record format for response
The record format for a reorder request would be: item code, item name)
( The quantity to be reordered is normally stored in the file maintained by the Purchase
department)
The record format for issues would be : (item code, item name, quantity requested,
quantity issued)
retrieves the data on the requested item from the Master file on disk. The item code in
the request is used as the key for retrieval. If the requested number of items is available,
then an issue slip is printed; otherwise a reorder request is printed. Care must, however,
be taken to ensure that once a reorder is requested it is not requested again till the item
reordered is taken into stock. Each request slip processed by the computer is called a
transaction. If each request is processed as and when it arrives and the terminal on which
the request is entered is connected to the computer, then the processing method is called
day (for example) are collected and formed into a batch. The data in such a batch can be
keyed-in off-line and a floppy disk created. This floppy disk can then be used to enter
requests on the computer which has the Master file. The entire batch is processed and
outputs are printed. This mode of processing is called batch processing. Batch
processing is usually more efficient. It, however, is not as timely as on-line processing.
more appropriate.
natural way of answering users' queries. In an enquiry system also, a user's query is first
processing systems. Common examples are airlines and railway ticket reservation
systems. Designing such systems require special care to ensure that response to enquiries
are fast and that the system has a “hot standby” if there is a failure. High reliability is
required as failures can be catastrophic (imagine many persons getting the same berth
systems.
The processing methods presented in the last para are for routine data processing. The
tactical information require further processing. Such systems are known as Management
Information Systems (MIS). In the stores processing case study, some tactical decisions
would be: at what stock level should reorder be initiated? How much should be
reordered? These are determined based on data such as rate of issue of each item, time
needed for delivery from date of order, transport cost, storage cost, shelf life, and loss
period of time, often as a byproduct of a routine data processing system. In the stores case
daily issues of some critical items can be abstracted and the average issue can be
computed. Data on delivery times, transport cost etc. can be separately collected. Well
known methods of operations research can then be used to compute stock level for
Operational data collected over a period of time is called data archives and the process
of collecting it is called data archiving. With the availability of massive disks in which
terabytes (1012 bytes) of data can be stored, it has become feasible to analyse the
archived data. Analyzing archived data to observe patterns which assist in management
decision making is called data mining. A stores manager may, based on his experience,
think that in the months of October, December and April the sale of sugar is very high
compared to other months. This conjecture maybe verified by data mining. In data
mining a rule is formulated which may say that in October sugar sale is 1.5 times the
average, in December it is 1.3 times normal and in April it is 1.4 times normal. This rule
may be verified within a specified margin of error by examing the data archive. If the
rule turns out to be correct, a manager will be able to decide how much sugar is to be
stocked in these months. This is a simple example of the use of archival data and data
fixing credit limits for customers. In order to arrive at this, the following inputs would be
useful:
Using these one may formulate some rules to arrive at the credit limits and also predict
By analyzing the impact of credit limits as specified above, a decision may be arrived at
The primary point to note is that one has to formulate a model and sometimes simulate a
Strategic information is obtained through what are known as Decision Support Systems
(DSS). In the stores example a strategic decision would be to reduce variety in inventory
by discontinuing some items in store, deciding what new items to introduce in the store,
and when to open a new branch. Decisions such as these require provisions for a variety
Strategic information is often unstructured. Strategic decisions are made after trying to
answer questions such as "What will be the profit if I take a decision and what will be the
long range loss if I don't take it?". In a complex decision many parameters will be
involved. Identifying these and predicting their impact on a decision needs judgements
coupled with analysis. For example, taking a strategic decision of whether to open a new
These have to be provided using analytical and simulation model known as decision
support models. These models are more difficult to evolve than those needed in tactical
information development. Decision support systems should also provide aids to the
manager for conceptualization such as charts, graphs, etc. They should also provide
facilities to ask a variety of queries on the data base. A variety of summary reports
should be made available on request. The overall purpose of decision support systems
more difficult than developing operational systems. They, however, are the ones
REFERENCE BOOKS
1. Most of the material in this chapter has been taken from the book “Analysis and
Design of Information Systems” and the accompanying Self-Study guide written
by V.Rajaraman and published by Prentice Hall of India, new Delhi (2002)
(Permission of publisher taken).
(ii) Modern System Analysis and Design, by J.A.Hoffer, George J.F. and
Valacich J.S., Pearson Education (Asia) Indian Reprint 2002.
pp.15-17 have a very short treatment of what we give in Module1
1. Data and information are not synonymous. Information is processed data. Data
3. Strategic information is needed for long range planning. It is less structured and
4. Tactical information is used to take short range decisions and for better control of
of data.
9. Top level managers are expected to make policies and need strategic information.
Middle level mangers direct and control the functioning of organization to achieve
optimal performance and need tactical information. Line managers supervise day-
to-day operations and steer operations to meet targets set by middle level
10. The primary functional areas of many organizations are: Human Resource
and Development.
Organizations are divided into many departments, each with a specific set of
11.
functions.
12. Even though an organization may have some specialized functions, many
information.
14. The information given to managers must be accurate, complete and trustworthy. It
must also be uptodate and timely. It must be relevant, brief, attractively presented
15. Operational data is codified and stored in a Master file (or a central data base).
16. A request for retrieving a record from a Master file is called a transaction.
17. The method of processing data in which transactions are grouped together and
18. The method of processing data in which transactions are processed by a computer
19. Routine data processing systems (DPS) are used to obtain operational information.
These are normally repetitive. We may call this operational information system.
20. Data abstracted from routine data processing are further processed using well
thought out rules to obtain tactical information. Such systems are called
summarised forms such as graphs and charts to aid top management to take
strategic decisions. Such systems are called Decision Support Systems (DSS).
22. Data used in operational data processing is normally stored in many organizations
23. The archived data may be analysed to obtain tactical and strategic information.
There are 4 alternative answers to each question. One of them is correct. Pick the
correct answer. Do not guess. A key is given at the end of the module for you to
verify your answer
LEARNING UNIT 1
LEARNING UNIT 2
LEARNING UNIT 3
2.35 Among the attributes of a good systems analyst the following are essential
i) knowledge of organization
ii) analytical mind
iii) ability to communicate orally
iv) excellent mathematical abilities
2.36 Among the attributes of a systems analyst the following are most important
i) knowledge of computer systems and currently available hardware
ii) good interpersonal relations
iii) broad knowledge about various organizations
iv) very good accountancy knowledge
2.37 b 2.38 b
MODULE 2
Contents
2.1 Systems Analysis and Design life Cycle: Requirements
determination, requirements specifications
Write Programs
Create Database
Document System
Train Users
Trial run of the system
Test and Accept
Fix errors
Add/Delete features as required by users
Tune the System
System
Maintenance Improved System
2.2.8 14 of 23
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
Drawing up specifications
- FUNCTIONAL SPECIFICATIONS
SYSTEM DESIGN
Logical design of system
- Objects identification
- Normalizing database
- Test plan
Design must be modular to accommodate change
Evaluating Systems
- Evaluation after use for sometime
- Plan periodicity for evaluation
- Modify as needed
KNOWLEDGE OF ORGANISATION
- Knowing user’s jargon & practices
- Know Management functions.
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
Contents
2. LEARNING UNIT 1
Systems Analysis and Design life Cycle: Requirements
determination, requirements specifications
3. LEARNING UNIT 2
Feasibility analysis, final specifications, hardware and
software study, system design, system implementation,
system evaluation, system modification.
4. LEARNING UNIT 3
Role of systems analyst, attributes of system analyst, tools
used in system analysis
5. References
SYSTEMS ANALYSIS AND DESIGN LIFE CYCLE
MOTIVATION
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, each step may be assigned to
persons with specialized competence, and allocation of human and financial
resources appropriate for each step can be planned.
LEARNING GOALS
1.Requirements Determinations
2.Requirements Specifications
3.Feasibility Analysis
4.Final Specifications
5.Hardware Study
6.System Design
7.System Implementation
8.System Evaluation
9.System Modification
1.Requirements Determination:
2.Requirements Specifications
3. Feasibility Analysis
Formulate Goals of the system and quantify them. Find alternative methods
of meeting the goals and for each alternative assess resources needed like
Human Resources, Time and Money, Equipment needed etc. Assess cost of
each alternative and find the best alternative
4.Final Specifications
5.Hardware Study
7.System Implementation
8.System Evaluation
Find out from Users whether the System meets the specified requirements.
List areas of dissatisfaction and find reasons, suggest if there has to be any
improvements to the system
9.System Modification
Fix the errors, add/delete features as required by users, tune the system and
continuously monitor system and assess performance.
LEARNING UNIT 3
Knowledge of organisation
Knowledge of computers and software
Good interpersonal relations
Ability to communicate
Analytical mind
Breadth of knowledge
REFERENCES
Most of the material in the module is adapted from Chapter 3 of Analysis
and Design of Information Systems by V.Rajaraman published by Prentice
Hall of India 2002 with permission from publisher.
a. i and iii
b. ii and iii
c. ii and iv
d. i, ii & iv
2.24 System evaluation is carried out
a. after the system has been operational for a reasonable time
b. during system implementation
c. whenever managers of user organization want it
d. whenever operational staff want it
2.25 The main objective of system evaluation is
a. to see whether the system met specification
b. to improve the system based on operational experience for a period
c. to remove bugs in the programs
d. to asses the efficiency of the system
2.26 Systems are modified whenever
a. user’s requirements change
b. new computers are introduced in the market
c. new software tools become available in the market
a. iii and iv
b. i, ii and iii
c. ii, iii and iv
d. ii and iii
2.32 The primary responsibility of a systems analyst is to
a. specify an information system which meets the requirements of an
organization
b. write programs to meet specifications
c. maintain the system
d. meet managers of the organization regularly
2.33 The responsibilities of a system analyst include
i) defining and prioritizing information requirement of an organization
ii) gathering data, facts and opinions of users in an organization
iii) drawing up specifications of the system for an organization
iv) designing and evaluating the system
a. i and ii
b. i, ii and iv
c. i, ii, iii and iv
d. i, ii and iii
2.34 The most important attribute of a systems analyst is
a. excellent programming skills
b. very good hardware designing skills
c. very good technical management skills
d. very good writing skills
2.35 Among the attributes of a good systems analyst the following are essential
i) knowledge of organization
ii) analytical mind
iii) ability to communicate orally
iv) excellent mathematical abilities
a. i and ii
b. i, ii and iii
c. i, ii and iv
d. i, iii and iv
2.36 Among the attributes of a systems analyst the following are most
important
i) knowledge of computer systems and currently available hardware
ii) good interpersonal relations
iii) broad knowledge about various organizations
iv) very good accountancy knowledge
a. i, iii and iv
b. i and iii
c. i, ii and iv
d. i, ii and iii
2.37 Managers in organizations should not design their own systems as
a. systems have to interact with other systems
b. they do not have the special skills necessary to design systems
c. it is not their job
d. they are always very busy
2.38 Systems analyst should use software tools in their work as
a. all analysts use them
b. they assist in systematic design of systems
c. they are inexpensive
d. they are easily available
2.37 b 2.38 b
2.1 Who do you think should participate in determining the information requirements of
a student’s hostel?
• Warden of hostel
• Hostel Superintendent
• Accountant
• Student Representatives
• Principal of college is consulted at the beginning
2.2 What is the difference between information requirement determination and
specification?
• Information requirement determination attempts to find out what strategic,
tactical, operational information is needed to effectively manage an
organization.
• Information specification defines the manner in which the information will
be presented and what analyzed data it
2.3 Why is feasibility analysis necessary before designing a system?
Feasibility analysis mean to analyze whether there is a reasonable chance of the
project succeeding given the constraints of computing equipment, human
resources, data availability i.e. before investing money and time one should
know what resources are needed for it to succeed and whether the resources are
available. If the resources are limited, then the goals to be met by the system can
be curtailed. One should have a quantitative and qualitative idea of cost of the
system and what benefits one may gain from the system.
2.4 What benefits do you expect if an information system for a hostel is designed?
• Mess bills will be promptly generated and can give itemized details of
extras.
• Can control mess expenses by finding out consumption of various items
against an average.
• Can try to optimize daily menus based on cost of vegetables etc.
• Can find out the names of the students with large dues left and sending
them reminders.
• Can quickly find out which student stays in which room and his home
address when needed.
2.4) What activities will you carry out during implementation of a hostel
information System?
A rough thumb rule is to evaluate a system when the "transients” die down and it
reaches a quasi "steady-state". Transients are caused by changes made due to
errors in the system and when some minor changes are introduced. Normally a
system is evaluated after being in use for 6 months, but this period may
vary according to the application.
MODULE 2
2.2 Who do you think should participate in determining the information requirements
of a student hostel?
hostel?
specification?
2.5 Specify the information requirement you stated in answer to Exercise 2.3
2.8 In designing an information system for a hostel what constraints should be taken
2.9 What benefits do you expect if an information system for a hostel is designed?
2.10 What factors are taken into account in arriving at the final specifications of an
information system?
2.12 What are the inputs and outputs of the system design phase?
2.13 What activities are carried out in the system implementation phase?
2.14 What activities will you carry out during implementation of a hostel information
system?
2.19 Are excellent programmers necessarily excellent systems analysts? Justify your
answer.
2.22 Should managers design their own systems? What are the advantages and
2.23 What are the tools currently available to design systems? What are the
REFERENCE BOOKS
Most of the material in the module is adapted from Chapter 3 of Analysis and Design of
256.
Education Asia, Indian Reprint 2002. pp.16-17 have a very brief treatment of
4. Information Systems, S.Alter, Pearson Education Asia 2000 looks at life cycle
2. A summary of what is done in each phase and the outputs obtained at the end of
each phase is given below:
6. A good system analyst must know the operation and management structure of
diverse organizations, must understand both hardware and software features of
computers, must exhibit good interpersonal relations, be able to express his/her
thoughts well, and be capable of life-long learning.
7. A system analyst should know the use of tools such as data flow diagrams,
decision tables, prototyping systems, spread-sheets, data base systems, report
generators and graphics systems.
MODULE 3
INFORMATION GATHERING
OBJECTIVE QUESTIONS
LEARNING UNIT 1
3.1.7 It is necessary to interview top level managers as the first step in information
gathering
a) otherwise you will not get cooperation
b) they can give you an overview of the organization and specify objectives of the system
c) they are usually not available
d) the number of persons to be interviewed at top level is small
a) i, ii b) ii, iv c) i, iii d) i, iv
INFORMATION GATHERING
Contents
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).
Individual Interviews
Group discussions
Several Interviews needed.
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
Delivered Items
Purchase Office
Entities in the Document flow diagram given above are Vendor, Receiving
office, Inspection office and purchase office
Purchase Office
Inspection
Receiving Items Office
Vendor Process
Delivery Received
note note
Orders Purchase
Office
Discrepancy
note
•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
Inspection
Receiving Items Office
Vendor Process
Delivery Received
note note
Orders Purchase
Office
Discrepancy
note
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
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.
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,Vendor
Name and address,Quantity ordered,delivery period.
The above statements are shown to the user for his approval.
Study
User stated current
requirements system
Design
Logical
system
New
System New logical
Feasibility DFD
document model
Descriptive
Statement of Data Dictionary
Information Processing
rules
INFORMATION GATHERING
Contents
2. LEARNING UNIT 1
Information gathering, strategies, methods
3. LEARNING UNIT 2
System requirements specification, classification of
requirements as strategic, tactical, operational and statutory
4. References
INFORMATION GATHERING
MOTIVATION
LEARNING GOALS
INFORMATION SOURCES
The main sources of information are users of the system, forms and
documents used in the organization, procedure manuals, rule books etc,
reports used by the organization and existing computer programs(If Any).
Before starting the interview the analyst must 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
and interview groups as appropriate.
INTERVIEWING TECHNIQUE
Make an prior appointment with the person to be interviewed and meet him
at the allotted time. Read background material and go prepared with the
checklist. State purpose of interview. Be punctual and pay attention to what
user says. Do not use computer jargon. Obtain both quantitative and
qualitative Information. Discriminate between essential and desirable
requirements. State what you understand and get it confirmed. Do not
prolong interview and summarize the information gathered by you during
the interview and verify this with the user
USE OF QUESTIONNAIRES
Indicates Documents
Purchase
Office
The diagram is interpreted as follows:
1) Vendors deliver items to receiving office accompanied by a delivery note
2) Receiving Office sends items to inspection office along with an items
received note
3) Receiving office sends discrepancy note to Purchase office
ENTITIES: Vendor, Receiving office, Inspection office and purchase
office
DOCUMENTS: Delivery note, Items received note and discrepancy note
DATA FLOW DIAGRAM (DFD)
DFD has entities and data flows, DFD specifies processing performed by
some of the entities. It specifies which entities generate documents and also
indicate their flow. Data stores which are referred while processing data and
in which processed data may be written or stored are also represented in the
Diagram
Inspection
Receiving Office
Process Items
Vendor Received
Delivery
note note
Orders Purchase
Office
Discrepancy
note
Delivery note:
Order no,Vendor code,Vendor name and address,Item name, Item
code,Delivery date,Quantity supplied,units.
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.
The statements given below are shown to the user for his approval.
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.
4. If order number matches compare date of delivery with expected date. If
late or early send discrepancy note to purchase office.
5.In case3 and case4 send items received note to inspection office
1. Most of the material including the case study has been adapted
from Chapter 4, Analysis and Design of Information Systems by
V.Rajaraman published by Prentice Hall of India 2002 with
permission from publisher.
INFORMATION GATHERING
WORKED EXAMPLES
3.1) Describe the general strategy an analyst should use to gather information.
Strategy consists of
i)identifying information sources.
ii)evolving a method of obtaining information from the identified source.
iii)using an information flow model of the organization
i) Users of systems.
ii) Forms and documents used in the organization.
iii) Procedure manuals and rule books (if any).
iv) Internal reports.
v) Any computer program of existing system.
3.4) Are there some guidelines for good interviewing? Give reasons.
3.6) Before interviewing the chief warden, what checklist did the system analyst
make?
i) Find out what aspects of hostel operations he wants to analyze and improve.
ii) Find out why he wants this and what benefits he foresees.
iii) Find out his priorities.
iv) Find out how early he wants the system.
v) Find out about organization of the hostel administration.
vi) Find out with whom else he wants me to talk.
vii) Find out if any documentation on existing procedure exist.
5.8 What are the initial two steps followed by a systems analyst when he is requested
to design an information system?
Step 1: Find out what are the information requirements of the users of the system.
Step 2: Find out how these are at least partially met by the current systems used
in the organization.
3.9 What graphical tools are useful to a systems analyst to understand user’s
requirements?
• Document flow diagram
• Data flow diagram
3.10A hostel warden states the following requirements for a hostel information
system:
“Our hostel has 500 rooms and 4 messes. Currently, there are 1000 students in all
in 2-seated rooms. They eat in any one of the messes but can get a rebate if they
inform and do not eat for at least 4 consecutive days. Besides normal menu, extra
items are entered in the extras book. At the end of the month a bill is prepared
based on the normal daily rate and extras and given to each student. We find that
bill preparation is delayed. We are also not able to keep proper track of payments
and billing for extras. We need a system to streamline this.”
Obtain a document flow diagram for the problem described above.
a, b, c, d, represent students’ attendance and extras record.
QUESTION BANK
3.1 Describe the general strategy an analyst should use to gather information.
3.7 Are there some guidelines for good interviewing? State them.
MODULE 3
Requirements Determination
System analyst's diary: "I was called at 9 a.m. today (18 March 04) by the chief Warden
hostel office. I told him I will need 40 minutes to get an overview of his requirements".
Checklist
• Find out what aspects of hostel operation he wants to analyze and improve.
I met Prof.V.Ramakrishna at 10 a.m. on 19 March 04 in his office in the hostel and asked
his permission to take notes. The summary of my notes which I made and sent to him on
• The total mess expenses are divided among members. Policy is set by the Chief
• He wants correct mess bills to be prepared and despatched within 5 days of the end
• The priority order of the Chief Warden is: control inventory, control stores issues,
• The Chief Warden wants me to talk to assistant wardens, mess supervisors and
commonsense approach.
Professor Ramakrishna agreed that my notes, on the whole, reflected our conversation.
He added that the number of residents in the hostel was 400, all staying in single rooms.
He further indicated that he could afford to install a Personal Computer if benefits can
justify cost. I then made an appointment to meet Dr.M.N.Swamy, the assistant warden
on 23 March 04 at 4 p.m. in his office. I requested half an hour of his time for
The following notes were prepared by me on 23 March 04 evening. I used the jottings in
responsibilities are to collect mess dues from residents and issue receipts, prepare
cheques for vendors' payments and keep petty cash account. Besides Mr.Sampath, there
is Mr.K.S.Iyengar, an accountant, who keeps accounts of (a) daily purchases for the
mess, (b) periodical purchases for mess, and (c) employees salaries (total around 30
employees).
Monthly payment. Milk, green vegetables, meat, bread, butter, and confectionery are
delivered daily. A delivery chalan with a bill is given. Delivery is checked by mess
supervisor (Mr.Viswam) and the bill is sent to Mr.Iyengar. The rates are checked by the
mess secretary (elected by residents) against market rates and negotiated with the vendor.
The bill with the negotiated rate are filed by Mr.Iyengar and a copy given to the vendor.
At the end of the month they are verified by the secretary and Dr.Swamy, and payment
Cash payment. Items such as gas, coal, kerosene, dry fruits are received at random and
immediate cash payment is made. Similarly, cash payment is made for cartage of goods
and for cleaning of grains. Cash payment bill copy is kept by Mr.Iyengar as authorised
Biweekly payment. Once in two weeks items such as sugar, grain, pulses, condiments,
etc. are purchased from the wholesale market by a group consisting of mess secretary,
Mr.Iyengar and Mr.Viswam. Rates are fixed by negotiations and bulk delivery is made
to the hostel. Delivered quantities are checked by Mr.Viswam and bills filed by
Mr.Iyengar. Bills are approved by Dr.Swamy, and the payments are made within two
weeks by cheque.
The mess bill is calculated by Mr.Iyengar and his assistant Mr.Singh. To find the daily
rate, the total expenses are divided by the sum of the number of students who have their
food in the mess every day. If the total expenses are say Rs.5,60,000, and 400 students
eat on the first day, 395 on the second, and 406 on the third day, etc., then
= Rs.5,60,000/12043
= Rs.46.50
Currently, the manual calculation of bills takes over 6 days and many errors are found.
Students are allowed to claim rebate if they do not eat for 2 days consecutively in the
mess, provided they give minimum 3 days notice in writing in the register kept with the
mess supervisor. Students can bring guests for meals and they have to enter the number
of guests for meals (not more than 4 at a time) in a register. They can also order "extras"
such as milk and eggs, which are entered in a register. Such entries from a daily register
are transferred to another students extras/guests/rebate register which has one page for
each student, and all entries for a student are written date-wise in this by Mr.Singh. This
Dr.Swamy feels that this procedure complicates bill preparation. The student body wants
Mr.Iyengar and Mr.Singh can be easily trained to use it, as both are intelligent and also
know typing.
The above notes were sent to Dr.Swamy who approved them. He added that a speedier
and accurate billing method with full details will be welcomed by students. Currently
full details of extras/guests are not provided in the bill as manual entry is too slow.
Further follow-up with students who have not paid their mess bill is currently not
methodical.
I then decided to meet Dr.Prasad who is the assistant warden in charge of mess affairs. I
fixed a meeting with him on 24 March 04 at 3 p.m. Before the interview the following
• Find out his ideas for an improved system and its operation.
The following notes were prepared by me after the interview and sent to Dr.Prasad on 25
March 04. (Dr.Prasad oversees the work of Mr.Viswam, the mess manager, Mr.Garg, the
Dr.Prasad is very unhappy with the way the inventory is controlled. The store keeper
waits till an item is exhausted and only then he tells the mess manager about this. It leads
to many trips to the city to order items and piecemeal arrival of items, leading to high
travel/transport cost. Rs.8000 is spent in this which can be considerably reduced. Items
are issued by the mess manager to the cooks based on nominal number of students in the
hostel. Proper care is not taken to reduce issues to cooks when many students are absent.
This leads to wastage. Over 100 different items are stocked in the store and a systematic
technique of replenishing stock should be used. Mess bill could be reduced by bulk
purchase of non-perishable items when their cost is low. This is not done. Dr.Prasad
feels that use of a computer in inventory control and issue control can be very effective.
The above notes were approved by Dr.Prasad who suggested that I should meet the
secretary of the student mess committee Mr.A.Pramod. I found Mr.Pramod in his room
in the hostel on 26th morning and he invited me to have a breakfast meeting. (Mr.Pramod
was elected secretary 8 months ago and has 4 more months in his current term. He wants
improvements within that period). He reiterated the points made by Dr.Prasad and
Dr.Swamy on the need to systematize issues, inventory and billing. He pointed out one
of the main difficulties he faced. Currently the bill is calculated at the end of the month.
Till then he has no idea of what the daily rate will be. Very often the daily rate goes up
sharply from say Rs.46 to Rs.54 which the students do not like. This leads to hasty
economy measures in the mess without proper knowledge of the areas in which these
measures will be effective. The student body would like to have uniform rates. This can
be ensured if estimates of daily rates are available at the end of each week. If the rate
tends to become high, some planned economy can be effected. Weekly adjustment can
lead to uniform rates. The daily menu is decided by the mess manager in consultation
with the mess secretary. Currently it is somewhat repetitive. Students joke" It is beans
curry and therefor it is Wednesday". There must be some way of randomizing menus,
keeping nutritional balance, variety of items and of effectively using seasonal low cost
vegetables, thereby reducing the mess bill. He thinks aloud whether some operations
suggestion.
I summarized the above discussion and sent it to the mess secretary and Dr.Prasad for
their comments. I next met employees of the mess to get their views. I met Mr.Viswam,
• Preparing an "issue list" of items and quantities for each meal and sending it to the
• Preparing a "return list" of items and quantities not used during the day by the
• Keeping track of rebates to students absent from mess and extras taken by
• Ordering items when stock level is low. In practice, however, ordering is done
Mr.Viswam felt that some help in automatically preparing issue list based on number of
persons who will eat in the mess will be very helpful. He would also appreciate assistance
in error free recording of rebates and extras. An automatic warning mechanism when
stocks become low would be useful. Consolidation of purchases to reduce trips would be
desirable.
A summary of the above discussion was sent to Mr.Viswam for his comments.
Next I met Mr.Mathews, the assistant mess manager. His responsibilities include
supervising mess staff and day-to-day maintenance of the hostel. He also assists the
for change of rooms etc. He feels that mess bill preparation is time consuming as it takes
a week. Room allotment, on the other hand, is not difficult and the current system is
satisfactory.
I then met Mr.Garg, the store-keeper. He keeps the stores stock register and helps the
mess manager in preparing the issue and return lists. He prepares lists of items to be
I finally held a group meeting with the chief Warden, assistant wardens, mess manager,
assistant manager, mess secretary, accountant and store-keeper. I showed the data and
document flow diagrams (Figs. 3.2-3.4) prepared by me and got their approval. I then
listed the critical needs which various persons identified. These are given in Table 3.1.
• Issue of exact quantities of items to cooks based on menu and number of students.
• Consolidating purchases to reduce frequent trips for purchase and reducing cartage
charges.
Computerization, and priority among them was also determined. The following priority
Menu planning
They requested me to begin a feasibility study and provide a cost-benefit analysis of the
above systems.
Requirements Determination
System analyst's diary: "I was called at 9 a.m. today (18 March 04) by the chief Warden
hostel office. I told him I will need 40 minutes to get an overview of his requirements".
Checklist
• Find out what aspects of hostel operation he wants to analyze and improve.
I met Prof.V.Ramakrishna at 10 a.m. on 19 March 04 in his office in the hostel and asked
his permission to take notes. The summary of my notes which I made and sent to him on
• The total mess expenses are divided among members. Policy is set by the Chief
1
• He wants correct mess bills to be prepared and despatched within 5 days of the end of
• The priority order of the Chief Warden is: control inventory, control stores issues,
• The Chief Warden wants me to talk to assistant wardens, mess supervisors and
commonsense approach.
Professor Ramakrishna agreed that my notes, on the whole, reflected our conversation.
He added that the number of residents in the hostel was 400, all staying in single rooms.
He further indicated that he could afford to install a Personal Computer if benefits can
justify cost. I then made an appointment to meet Dr.M.N.Swamy, the assistant warden
2
on 23 March 04 at 4 p.m. in his office. I requested half an hour of his time for
The following notes were prepared by me on 23 March 04 evening. I used the jottings in
responsibilities are to collect mess dues from residents and issue receipts, prepare
cheques for vendors' payments and keep petty cash account. Besides Mr.Sampath, there
is Mr.K.S.Iyengar, an accountant, who keeps accounts of (a) daily purchases for the
mess, (b) periodical purchases for mess, and (c) employees salaries (total around 30
employees).
Monthly payment. Milk, green vegetables, meat, bread, butter, and confectionery are
delivered daily. A delivery chalan with a bill is given. Delivery is checked by mess
supervisor (Mr.Viswam) and the bill is sent to Mr.Iyengar. The rates are checked by the
mess secretary (elected by residents) against market rates and negotiated with the vendor.
The bill with the negotiated rate are filed by Mr.Iyengar and a copy given to the vendor.
3
At the end of the month they are verified by the secretary and Dr.Swamy, and payment
Cash payment. Items such as gas, coal, kerosene, dry fruits are received at random and
immediate cash payment is made. Similarly, cash payment is made for cartage of goods
and for cleaning of grains. Cash payment bill copy is kept by Mr.Iyengar as authorised
Biweekly payment. Once in two weeks items such as sugar, grain, pulses, condiments,
etc. are purchased from the wholesale market by a group consisting of mess secretary,
Mr.Iyengar and Mr.Viswam. Rates are fixed by negotiations and bulk delivery is made
to the hostel. Delivered quantities are checked by Mr.Viswam and bills filed by
Mr.Iyengar. Bills are approved by Dr.Swamy, and the payments are made within two
weeks by cheque.
The mess bill is calculated by Mr.Iyengar and his assistant Mr.Singh. To find the daily
rate, the total expenses are divided by the sum of the number of students who have their
food in the mess every day. If the total expenses are say Rs.5,60,000, and 400 students
eat on the first day, 395 on the second, and 406 on the third day, etc., then
= Rs.5,60,000/12043
= Rs.46.50
4
Currently, the manual calculation of bills takes over 6 days and many errors are found.
Students are allowed to claim rebate if they do not eat for 2 days consecutively in the
mess, provided they give minimum 3 days notice in writing in the register kept with the
mess supervisor. Students can bring guests for meals and they have to enter the number
of guests for meals (not more than 4 at a time) in a register. They can also order "extras"
such as milk and eggs, which are entered in a register. Such entries from a daily register
are transferred to another students extras/guests/rebate register which has one page for
each student, and all entries for a student are written date-wise in this by Mr.Singh. This
Dr.Swamy feels that this procedure complicates bill preparation. The student body wants
Mr.Iyengar and Mr.Singh can be easily trained to use it, as both are intelligent and also
know typing.
The above notes were sent to Dr.Swamy who approved them. He added that a speedier
and accurate billing method with full details will be welcomed by students. Currently
full details of extras/guests are not provided in the bill as manual entry is too slow.
Further follow-up with students who have not paid their mess bill is currently not
methodical.
5
I then decided to meet Dr.Prasad who is the assistant warden in charge of mess affairs. I
fixed a meeting with him on 24 March 04 at 3 p.m. Before the interview the following
• Find out his ideas for an improved system and its operation.
The following notes were prepared by me after the interview and sent to Dr.Prasad on 25
March 04. (Dr.Prasad oversees the work of Mr.Viswam, the mess manager, Mr.Garg, the
Dr.Prasad is very unhappy with the way the inventory is controlled. The store keeper
waits till an item is exhausted and only then he tells the mess manager about this. It leads
to many trips to the city to order items and piecemeal arrival of items, leading to high
travel/transport cost. Rs.8000 is spent in this which can be considerably reduced. Items
are issued by the mess manager to the cooks based on nominal number of students in the
hostel. Proper care is not taken to reduce issues to cooks when many students are absent.
This leads to wastage. Over 100 different items are stocked in the store and a systematic
technique of replenishing stock should be used. Mess bill could be reduced by bulk
purchase of non-perishable items when their cost is low. This is not done. Dr.Prasad
feels that use of a computer in inventory control and issue control can be very effective.
6
The above notes were approved by Dr.Prasad who suggested that I should meet the
secretary of the student mess committee Mr.A.Pramod. I found Mr.Pramod in his room
in the hostel on 26th morning and he invited me to have a breakfast meeting. (Mr.Pramod
was elected secretary 8 months ago and has 4 more months in his current term. He wants
improvements within that period). He reiterated the points made by Dr.Prasad and
Dr.Swamy on the need to systematize issues, inventory and billing. He pointed out one
of the main difficulties he faced. Currently the bill is calculated at the end of the month.
Till then he has no idea of what the daily rate will be. Very often the daily rate goes up
sharply from say Rs.46 to Rs.54 which the students do not like. This leads to hasty
economy measures in the mess without proper knowledge of the areas in which these
measures will be effective. The student body would like to have uniform rates. This can
be ensured if estimates of daily rates are available at the end of each week. If the rate
tends to become high, some planned economy can be effected. Weekly adjustment can
lead to uniform rates. The daily menu is decided by the mess manager in consultation
with the mess secretary. Currently it is somewhat repetitive. Students joke" It is beans
curry and therefore it is Wednesday". There must be some way of randomizing menus,
keeping nutritional balance, variety of items and of effectively using seasonal low cost
vegetables, thereby reducing the mess bill. He thinks aloud whether some operations
suggestion.
7
I summarized the above discussion and sent it to the mess secretary and Dr.Prasad for
their comments. I next met employees of the mess to get their views. I met Mr.Viswam,
• Preparing an "issue list" of items and quantities for each meal and sending it to the
• Preparing a "return list" of items and quantities not used during the day by the cooks
to the store.
• Keeping track of rebates to students absent from mess and extras taken by students
• Ordering items when stock level is low. In practice, however, ordering is done only
Mr.Viswam felt that some help in automatically preparing issue list based on number of
persons who will eat in the mess will be very helpful. He would also appreciate assistance
in error free recording of rebates and extras. An automatic warning mechanism when
stocks become low would be useful. Consolidation of purchases to reduce trips would be
desirable.
A summary of the above discussion was sent to Mr.Viswam for his comments.
8
Next I met Mr.Mathews, the assistant mess manager. His responsibilities include
supervising mess staff and day-to-day maintenance of the hostel. He also assists the
for change of rooms etc. He feels that mess bill preparation is time consuming as it takes
a week. Room allotment, on the other hand, is not difficult and the current system is
satisfactory.
I then met Mr.Garg, the store-keeper. He keeps the stores stock register and helps the
mess manager in preparing the issue and return lists. He prepares lists of items to be
I finally held a group meeting with the chief Warden, assistant wardens, mess manager,
assistant manager, mess secretary, accountant and store-keeper. I showed the data and
document flow diagrams (Figs. 3.2-3.4) prepared by me and got their approval. I then
listed the critical needs which various persons identified. These are given in Table 3.1.
9
• Issue of exact quantities of items to cooks based on menu and number of students.
• Consolidating purchases to reduce frequent trips for purchase and reducing cartage
charges.
Computerization, and priority among them was also determined. The following priority
Menu planning
They requested me to begin a feasibility study and provide a cost-benefit analysis of the
above systems.
10
MODULE 3
REFERENCE BOOKS
1. Most of the material including the case study has been adapted from Chapter
very thoroughly.
Mini Project Suggestion (Module 3)
1. Talk to your medical shop owner and find out what his information requirements
Describe how his operational and tactical information needs could be satisfied if
he installs a PC.
2. Go to a small hospital or nursing home in your neighbourhood and find out what
their information needs are. Classify them into operational, tactical, statutory and
strategic components.
3. Talk to your college registrar/administrative officer and staff. Find out their
in systems analysis.
2. The steps followed in gathering information are to first identify information sources
and then find an appropriate method of obtaining information from each identified
source.
3. The most important source of information, both qualitative and quantitative, are the
4. Other secondary sources are forms and reports used by the organization and any
5. Information is gathered from top down. An overview is obtained at the top. Details
are obtained from those at the working level. Gaining the confidence of working
7. The key to a successful interview is to observe good manners, have an open mind,
and encourage the person being interviewed to reveal all important details.
most useful when quantitative data are to be gathered from a large number of
persons.
MODULE 4
FEASIBILITY ANALYSIS
OBJECTIVE QUESTIONS
There are 4 alternative answers to each question. One of them is correct. Pick the correct
answer. Do not guess. A key is given at the end of the module for you to verify your
answer
LEARNING UNIT 1
LEARNING UNIT 2
4.2.3 Among alternative solutions for an information system one may consider
(a) PC based solutions only
(b) an improved manual system
(c) only client-server based solutions as they are popular now-a-days
(d) whatever management decides
LEARNING UNIT 3
4.3.11In designing a system it is found that the cost of the system was Rs
1,50,000 and the benefit is Rs 10,000 per month. The interest is 1% per
month; the payback period using payback method with interest is
(a) 14 months
(b) 17 months
(c) 15 months
(d) 20 months
4.3.12 In designing a system it is found that the cost of the system was Rs
1,50,000 and the benefit is Rs 10,000 per month. The interest is 1% per
month; the payback period using the present value method is
(a) 14 months
(b) 17 months
(c) 15 months
(d) 20 months
4.3.18 The following are the most important points of a detailed system
proposal
(i) who will supply and install the required equipment
(ii) cost-benefit analysis
(iii) comparison of alternative solutions
(iv) implementation plan
(a) i, ii and iii (b) i, iii and iv
(c) ii, iii and iv (d) ii and iii
KEY TO OBJECTIVE QUESTIONS
Learning Units
4.1 How to formulate project goals and quantify them
4.2 Examining alternative solutions and evaluating proposed
solutions
a) Technical feasibility
b) Operational feasibility
c) Economic feasibility
4.3 Cost benefit analysis.Documenting feasibility report.
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
ALTERNATIVE SOLUTIONS
A: Improve manual system
B: Use PC based periodic update system
C: An on-line system with server and several clients
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
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
Feasibility report
•What the proposed system will achieve
•Who will be involved in operating the system
•Organizational changes to implement system
•List of benefits of the system
•Cost of system - Capital +Recurring
•Cost-benefit analysis
FEASIBILITY ANALYSIS
Contents
2. LEARNING UNIT 1
How to formulate project goals and quantify them
3. LEARNING UNIT 2
Examining alternative solutions and evaluating proposed solutions
a) Technical feasibility
b) Operational feasibility
c) Economic feasibility
4. LEARNING UNIT 3
Cost benefit analysis. Documenting feasibility report
5. REFERENCES
FEASIBILITY ANALYSIS
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 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.
LEARNING GOALS
CHARACTERSTICS OF A GOAL
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
UNSATISFACTORY PERFORMANCE
2.1 Billing not accurate and prompt
2.3 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
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
LEARNING UNIT 2
ALTERNATIVE SOLUTIONS
A: Improve manual system
B: Use PC based periodic update system
C: An on-line system with server and several clients
Use a single PC to prepare students bills and to itemize bills, prepare a list of
number of members who will eat for next two days, alert warden when bill is
not paid within 10 days of issue. Use a PC to generate Vendor order,
Inventory control of store and Menu planning.
COST-BENEFIT ANALYSIS
This is done to find economic feasibility of proposed solution and to find
whether returns by implementing a system justify the cost. This is found by
listing direct and indirect costs
BENEFITS
Tangible benefits are measurable.
Direct benefits are savings due to reduced inventory, early collection of
outstanding payments, reduced wastage, faster production, increased
production.
Indirect benefit is increased work done with same human resource.
Intangible benefits are like better service to customers, superior product
quality, accurate, reliable, timely and up-to-date strategic, tactical and
operational information to management
COST BENEFIT ANALYSIS
COST-BENEFIT
This accounts for the fact that benefits each month will also earn interest
REFERENCES
4. S.Alter, Information Systems, 4th Edition, Pearson Education Asia, New Delhi,
2002. A brief discussion of feasibility analysis presented on pp.481 as part of
traditional life cycle method. In the same chapter there is a brief discussion of
prototype method which is used when users are not able to state their
requirements clearly.
a. ii and iii
b. i, ii and iii
c. i and iv
d. i, ii and iv
4.18 A cost-benefit analysis is performed to assess
a. economic feasibility
b. operational feasibility
c. technical feasibility
d. all of the above
4.19 The primary objective of cost-benefit analysis is
a. to find out direct and indirect cost of developing the information system
b. to determine the tangible benefits of the information system
c. to determine if it is economically worthwhile to invest in developing the
information system
d. to determine the intangible benefits of the information system
4.20 A cost-benefit analysis is performed as a part of
a. system design
b. system specification
c. system performance assessment
d. feasibility analysis
4.21 A cost benefit analysis consists of
a. i and ii
b. ii and iii
c. iii and iv
d. i and iii
4.24 Intangible benefits are
a. not very important
b. as important as tangible benefits
c. the most important benefits
d. irrelevant in feasibility study
4.25 Pick the indirect cost from the following
a. cost of new forms
b. cost of training analysts and users
c. cost of software to be brought
d. cost of fact gathering
4.26 In payback method one finds out
a. the period necessary to invest the cost of the system
b. the time required for the full benefits to accrue
c. the time at which benefits exceed cost
d. whether the system is able to payback amount invested
4.27 In simple payback method one
a. accounts for interest payments on benefits
b. ignores interest payments
c. only accounts for interest on capital investments
d. only accounts for interest on recurring expenses
4.28 In designing a system it is found that the cost of the system was Rs
1,50,000 and the benefit is Rs 10,000 per month. The interest is 1% per
month; the payback period using payback method with interest is
a. 14 months
b. 17 months
c. 15 months
d. 20 months
4.29 In designing a system it is found that the cost of the system was Rs
1,50,000 and the benefit is Rs 10,000 per month. The interest is 1% per
month; the payback period using the present value method is
a. 14 months
b. 17 months
c. 15 months
d. 20 months
4.30 In present value method one has to account for
a. interest rate prevalent at a given time
b. exchange rate prevalent at a given time
c. sales tax rate prevalent at a given time
d. both income and sales tax rates prevalent at a given time
4.31 At the end of the feasibility study the systems analyst
a. meets the users for a discussion
b. gives a summary feasibility report to the management
c. gives a systems proposal to management
d. tells the top management if the system is not feasible
4.32 The most important parts of a feasibility report are
(i)cost-benefit analysis
(ii)statement of the objective of the proposed system
(iii)who will supply equipment for implementing the system
(iv)organizational changes needed to successfully implement the
system
a. i and ii
b. i, ii and iii
c. i and iv
d. i, ii and iv
4.33 A detailed system proposal is prepared by a systems anal
a. management is not clear about what the system will do
b. the analysts feels it is necessary to convince the management
c. management approves the feasibility report
FEASIBILITY ANALYSIS
WORKED EXAMPLES
4.1 What is the difference between main goals and sub-goals? Illustrate with an
example.
Main goal is based on a primary objective and sub-goals are secondary or
subsidiary which are related to the main objective.
For example, the main goal and sub-goals of an inventory control system may be
as follows:
Main goal: Reduce total inventory cost by 10%
Sub-goals: (i) Find out items which are 50% above buffer level to take
appropriate action.
(ii)Find out items whose cost is 50% above average cost for closer
control.
4.7 A project costs Rs. 2 lakhs and the net benefits are Rs. 50,000 (1st year), Rs.
80,000 (2nd year), Rs. 90,000 (3rd year), Rs. 70,000 (4th year), Rs. 50,000 (5th
year) and Rs. 30,000 (6th year). Assuming 10% interest rate, would you
proceed with your project if your criterion is cost-benefit?
QUESTION BANK 4
4.4 What is the difference between main goals and sub-goals? Illustrate with an
example.
4.5 Once the goals are formulated, what is the next step followed by a system
analyst?
4.9 Give an example of a solution which is technically feasible, but not operationally
feasible.
feasible.
feasible.
4.15 For the problem of periodical information system (Exercise 4.23 below), specify
4.17 A system costs Rs.1 lakh to install and Rs.10,000 per month as recurring
expenses. The benefit per year is Rs.1.5 lakhs. Assuming an interest rate of 12%,
4.18 A project costs Rs.2 lakhs and the net benefits are Rs.50,000 (1st year), Rs.80,000
2nd year),Rs.90,000 (3rd year), Rs.70,000 (4th year), Rs.50,000 (5th year), and
Rs.30,000 (6th year). Assuming 10% interest rate, would you proceed with this
4.19 A manager states the following as the goals of a production planning system:
3 Prevent overproduction.
How would you quantify the goals? How would you obtain sub goals and
of sponsored research projects. The main problems are delay in obtaining latest
coordinators, prompt demands not sent to sponsors to collect promised grants and
Now:
4.21 A library receives 1300 journals of varying periodicities. The journals received
have to be recorded and displayed. Action has to be taken when journals are not
received in time or lost in mail. Unless request for replacement is sent quickly, it
different times during the year and subscriptions renewed in time. Late payment
amounts for those issues. Current manual system is not able to meet these
requirements.
1. Specify what should be the goals and sub-goals of an information system for
ordering periodicals.
4.22 What operational, tactical, and strategic information should be provided by the
4.23 When is a detailed system proposal prepared? What are the contents of a system
proposal?
out how the operation of the hostel could be improved by implementing better
information system. After lengthy discussion with various personnel in the hostel, it was
concluded that the problem which had to be tackled on a high priority basis was a better
information system for billing, accounting, inventory control and stores issues in the
students' mess. The deficiencies identified in the current system are as given below.
1. Missing functions.
1.4 Menu not planned for balanced nutrition and low cost.
2. Unsatisfactory performance.
3.4 High transport cost (small purchases at high cost) due to not consolidating
stores requirements.
Goals of the proposed system. The main quantified goals and the sub-goals of the
Main goal
M1 Send the bills to students within 5 days of the end of the month.
Sub-goals
S1.3 Bring to the attention of the Chief Warden the bills which are not paid within 10
days of issue.
The main goals and sub-goals to remove deficiencies 1.1, 1.2, 2.3, 2.4 and 3.2-3.4
Main goal
M2 Control inventory of items and issues to cooks so as to bring down mess bill by
10%.
Sub-goals
S2.2 Make sure that at most four trips per month are made to the town for purchase and
S2.3 See that inventory levels are not more than 10% of monthly requirements.
S2.4 Make sure that cooks do not get more than 5% of calculated requirements.
Main Goals
Sub-goal
Alternative solutions examined. Three alternative solutions were examined. These are
given below:
Solution C: Use three small client computers in the mess, stores and accounts office and
Comparison of Solutions:
Solution A is feasible but is not scalable. In other words if the number of students
Solution C is very expensive as it needs four computers. It does provide on-line updates
Consider Solution B of the hostel mess management problem. The direct costs are:
1. Cost of PC, printer, uninterrupted power supply and system software (Windows
= 2.25 * 400 * 30
= Rs.27,000/-
(Assume Rs.45 bill per day per student. Savings per day is 2.25 per student. 30
days in a month).
4. Savings due to better collection (40 defaulting students, 1% interest per month)
= 40 * 1350 * 0.01
Intangible benefits
Hardware
IBM compatible PC
40 GB hard disk
MS Office 2000
antivirus software
Turbo C
Cost of the system. As calculated earlier, the cost of the new system will be
New procedures to be implemented. Using simple pay back method and assuming 1%
We see that the cumulative benefit exceeds cost of the system by the fifth month.
for students to enter the requests. One page per student is assigned. The
register entries are codified for the use of computer processing. The register
pages are printed on the computer each month and stapled together and kept
in the mess for entries by students. Entries in the register are keyed into the
PC each day by the mess clerk. A program will check whether sufficient
notice has been given for rebates, whether number of days rebate asked is as
now. This is passed on to the mess manager to control issues. This program
also updates each students' record with details of extras and dates of absence.
PROCEDURE
• Check each input record to see if rebate is admissible and extras are
correct.
• Find number of meals to be cooked two days from now. Print note to mess
manger.
cooked 48 hours from now. (This subsystem runs daily on the PC)
PROCEDURE:
• From items issued each day find total expenses each day.
(Updating daily rate is run each day whereas student billing system is run
once a month).
PROCEDURE
• Five days after last date for payment, examine this file and create a list of
The billing system described above satisfies main goal M1 and sub-goals S1.1
and S1.3. To satisfy sub-goal S1.2, the mess secretary who gets an updated
daily rate each day must adjust menu, using a menu planning system.
INPUT
• Menu for (today's date + 2 i.e., if today's date is 20.04.03 menu is given
for 22.04.03).
PROCEDURE
• Work out minimum amount (=4 days needs) of all critical items.
• When goods come in, check in order file and update inventory if items
accepted.
OUTPUTS
• Orders to vendors
• Cheques to vendors
INPUT
• Maximum cost.
PROCEDURE
• Rank menus by cost and keep 14 different menus for each meal.
This system satisfied main goals M3.1, M3.2 and sub-goal S3.1.
Anticipated problems. Procedures should be set up to regularly back up all files and
store billing information on floppy disks. Power failure may lead to difficulties, if it is
very frequent. Hostel management may consider installing higher capacity batteries for 1
Implementation plan. Implementation may begin with the billing system first. It may be
followed by stores issues and inventory control and finally menu planning (see Table
below).
Conclusions
The proposed system will cost Rs.1,30,000 capital cost and will pay for itself within the
first five months of operation. It will meet all the main goals approved by the wardens
and can be implemented within 3 months. We are confident that it will fully meet the
References
1. The goals of a project are formulated after gathering facts and having discussions
with users.
3. Goals must be quantified, realizable, agreed to by users and then broken down into
sub-goals.
5. Each alternative method is broadly formulated by specifying the inputs, outputs and
project.
10. Operational feasibility examines whether the proposed method can fit in with existing
11. Economic feasibility examines whether the returns (in terms of benefits from the
12. It is necessary to examine both tangible and intangible benefits of each alternative
the feasibility of the project is submitted to the management which requisitioned the
study.
14. The executive summary will highlight what the proposed system will achieve, who
will be involved in operating the proposed system, the organizational changes needed
for successfully implementing the system, the estimated cost of the system and the
4.4 What is the difference between main goals and sub-goals? Illustrate with an
example.
4.5 Once the goals are formulated, what is the next step followed by a system
analyst?
4.9 Give an example of a solution which is technically feasible, but not operationally
feasible.
feasible.
feasible.
4.17 A system costs Rs.1 lakh to install and Rs.10,000 per month as recurring
expenses. The benefit per year is Rs.1.5 lakhs. Assuming an interest rate of
4.20 A project costs Rs.2 lakhs and the net benefits are Rs.50,000 (1st year), Rs.80,000
(2nd year),Rs.90,000 (3rd year), Rs.70,000 (4th year), Rs.50,000 (5th year), and
Rs.30,000 (6th year). Assuming 10% interest rate, would you proceed with
4.21 A manager states the following as the goals of a production planning system:
3. Prevent overproduction.
How would you quantify the goals? How would you obtain sub goals and
of sponsored research projects. The main problems are delay in obtaining latest
Now:
4.23 A library receives 1300 journals of varying periodicities. The journals received
have to be recorded and displayed. Action has to be taken when journals are
not received in time or lost in mail. Unless request for replacement is sent
ordered at different times during the year and subscriptions renewed in time. Late
higher amounts for those issues. Current manual system is not able to meet these
requirements.
1. Specify what should be the goals and sub-goals of an information system for
ordering periodicals.
4.25 When is a detailed system proposal prepared. What are the contents of a system
proposal?
MODULE 4
On a request from the Chief Warden of the student hostel, a study was initiated to find
out how the operation of the hostel could be improved by implementing better
information system. After lengthy discussion with various personnel in the hostel, it was
concluded that the problem which had to be tackled on a high priority basis was a better
information system for billing, accounting, inventory control and stores issues in the
students' mess. The deficiencies identified in the current system are as given below.
1. Missing functions.
1.4 Menu not planned for balanced nutrition and low cost.
2. Unsatisfactory performance.
stores requirements.
Goals of the proposed system. The main quantified goals and the sub-goals of the
Main goal
M1 Send the bills to students within 5 days of the end of the month.
Sub-goals
S1.3 Bring to the attention of the Chief Warden the bills which are not paid
The main goals and sub-goals to remove deficiencies 1.1, 1.2, 2.3, 2.4 and
Main goal
M2 Control inventory of items and issues to cooks so as to bring down mess bill
by 10%.
Sub-goals
S2.2 Make sure that at most four trips per month are made to the town for
S2.3 See that inventory levels are not more than 10% of monthly requirements.
S2.4 Make sure that cooks do not get more than 5% of calculated requirements.
Main Goals
Sub-goal
Alternative solutions examined. Three alternative solutions were examined. These are
given below:
Solution C: Use three small client computers in the mess, stores and accounts office and
Comparison of Solutions:
Solution A is feasible but is not scalable. In other words if the number of students
Solution C is very expensive as it needs four computers. It does provide on-line updates
Consider Solution B of the hostel mess management problem. The direct costs are:
1. Cost of PC, printer, uninterrupted power supply and system software (Windows
= 2.25 * 400 * 30
= Rs.27,000/-
(Assume Rs.45 bill per day per student. Savings per day is 2.25 per student. 30
days in a month).
4. Savings due to better collection (40 defaulting students, 1% interest per month)
= 40 * 1350 * 0.01
Hardware
IBM compatible PC
40 GB hard disk
MS Office 2000
antivirus software
Turbo C
Cost of the system. As calculated earlier, the cost of the new system will be
Capital cost hardware system software = Rs. 70,000
New procedures to be implemented. Using simple pay back method and assuming 1%
We see that the cumulative benefit exceeds cost of the system by the fifth month.
for students to enter the requests. One page per student is assigned. The
register entries are codified for the use of computer processing. The register
pages are printed on the computer each month and stapled together and kept
Entries in the register are keyed into the PC each day by the mess clerk. A
program will check whether sufficient notice has been given for rebates,
whether number of days rebate asked is as per rules. The data entered is used
by a program to create a summary statement giving expected number of
manager to control issues. This program also updates each students' record
PROCEDURE
are correct.
• Find number of meals to be cooked two days from now. Print note
to mess manger.
PROCEDURE:
• From items issued each day find total expenses each day.
(Updating daily rate is run each day whereas student billing system is run
once a month).
PROCEDURE
• Five days after last date for payment, examine this file and create a list of
The billing system described above satisfies main goal M1 and sub-goals S1.1
and S1.3. To satisfy sub-goal S1.2, the mess secretary who gets an updated
daily rate each day must adjust menu, using a menu planning system.
INPUT
• Menu for (today's date + 2 i.e., if today's date is 20.04.03 menu is given
for 22.04.03).
PROCEDURE
• Work out minimum amount (=4 days needs) of all critical items.
• When goods come in, check in order file and update inventory if items
accepted.
OUTPUTS
• Orders to vendors
• Cheques to vendors
INPUT
PROCEDURE
• Rank menus by cost and keep 14 different menus for each meal.
This system satisfied main goals M3.1, M3.2 and sub-goal S3.1.
Anticipated problems. Procedures should be set up to regularly back up all files and
store billing information on floppy disks. Power failure may lead to difficulties, if it is
very frequent. Hostel management may consider installing higher capacity batteries for 1
Implementation plan. Implementation may begin with the billing system first. It may
be followed by stores issues and inventory control and finally menu planning (see Table
below).
The proposed system will cost Rs.1,30,000 capital cost and will pay for itself within the
first five months of operation. It will meet all the main goals approved by the wardens
and can be implemented within 3 months. We are confident that it will fully meet the
LEARNING UNIT 1
5.1.10 Data cannot flow from an external entity to an external entity because
(a) it will get corrupted
(b) it is not allowed in DFD
(c) an external entity has no mechanism to read or write
(d) both are outside the context of the system
Cost/unit 4.0
Billing
Process
Discount
Order to 4.0
vendor Billing Too much stock
Proces
bill Customer
Invoice
Supplier
Advice
Book
Inventory
5.1.14 The following process diagram in a DFD is incorrect because
(a) the process is a single decision
(b) the process is not specified correctly
(c) there are too many input data flows
(d) the process does not refer to a data store
Gross pay>Min.taxable pay
Gross pay
2.0
Compare
Gross pay<=Min.taxable pay
Minimum
taxable pay
Gross pay
Employee record
1.0 2.0
Find next Calculate
pay tax
Tax deduction
Get next record
Deductions statement
LEARNING UNIT 3
Learning Units
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
WHY DFD ?
PROCESS
Stores demand
note 1.
STORES Issue Advice
Delivery slip
EXTERNAL ENTITIES
Order
Invoice
VENDOR Customer
Bill
DATA STORES
Label
Extras Note
Students Vendors
Requisitions
Payments
Payments Supplies
Mess
Bills Management Mess secretary
Daily rate
System
Menu
Perishable
Items Item needed
Each day Overdue Bills
Mess manager Overdue Chief warden
Payments
Items to be issued
2 (today +2)
Vendor supplies Mess
Stores issue
Vendors and
Order non- Items used Manager
Control today
perishable system
Menu
(today +2)
Vendor data
Stores
inventory
Order data Mess
Secretary
Perishable order 3 Vegetables and perishable
Perishable requisition
Orders ordering
Vendor data
(perishable)
(perishable)
5.2.6 Systems Analysis And Design © V. Rajaraman 16 of 26
EXPANDED DFD-BILLING SYSTEM
Payments
Itemized 1.2
bills Calculate Unpaid
Bills 1.3 bills Chief
Mess Student’s
bills Reconcile warden
Secretary
payments
Students data
Extras/Rebates Students data
Daily rate average
1.4 (upto date)
Find no 1.1
Of meals Calculate
No of meals to cook Daily rate
(today + 2)
Expenses data
Mess
Students data Manager Items rate data
• Observe numbering of processes
5.2.7 Systems Analysis And Design © V. Rajaraman 17 of 26
LEVELLING RULES
Record
Get students Calculate
extra/rebates Bill
record Ask for next record
Extra/rebate store
• Not correct as loop is formed
5.2.10 Systems Analysis And Design © V. Rajaraman 20 of 26
LEVELLING EXAMPLES
Low stock item
(today +2) No of meals to
be cooked
Mess manager (today +2)
Items to be used
on (today +2)
Items issued
Order
2.1
2.2
Inventory update
Mess manager Create order
And
Low stock for vendor
Items used low stock warning
today item
Items needed
From 2.3
Vendor Stores inventory Order Vendor data
supplies
Vendor
Order to vendor
2.3 2.4
Calculate Items Check Item
needed availability
Mess secretary Items needed Low stock items
Menu
(today +2) (today+2)
No of meals to Stores
(today +2) inventory
Ext A 1 2 4 Ext B
F1 F4
Process 1 Process 2
F1
1.3
F4
3.3
Cash
Token
Clerk
Verify A/C Cashier
Signature Verify Token
Customer Cheque Update Cheque with Take Signature
Token Balance Token number
Customer
Accounts
Contents
2. LEARNING UNIT 1
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
3. LEARNING UNIT 2
Describing systems with DFD & Levelling DFDs
4. LEARNING UNIT 3
Logical & Physical DFDs
5. References
DATA FLOW DIAGRAMS
MOTIVATION
LEARNING GOALS
At the end of this module you will know
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.
PROCESS
Stores demand
note 1.
STORES
Issue Advice
Delivery slip
Invoice
Order
VENDOR Customer
Bill
DATA STORES
Use meaningful names for data flows, processes and data stores.
Use top down development starting from context diagram and
successively levelling 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
LEARNING UNIT 2
Extras Note
Students Vendors
Requisitions
Payments
Payments Supplies
Mess
Bills Manage Mess
ment Daily rate Secretary
Menu
Perishable
Items Item needed
Each day Overdue Bills
Mess manager Overdue Chief warden
Payments
LEVELLING DFD
If a DFD is too detailed it will have too many data flows and will be large
and difficult to understand. Therefore start from a broad overview. Expand
the details - Idea similar to using procedures and linking these with a main
program. Each DFD must deal with one aspect of a big system
1
Itemized bills at end Items used each day
Billing
of month
Extras/Rebates
Student billing
Expenses Information + bills
Items to be issued
2 (today +2) Mess
Vendor supplies Manager
Stores issue
Vendors and
Order non- Control Items used
perishable system today
Menu
(today +2)
Vendor data
Stores
inventory Order data
Mess
Secretary
Perishable order
3
Perishable Vegetables and perishable
ordering requisition
Orders
(perishable) Vendor data
(perishable)
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.
Compare
Get students
extra/rebates Calculate
record Bill
Ask for next record
Extra/rebate store
LEVELLING EXAMPLES
Ext B
Ext A 1 2 4
F1 F4
3
Process 1 Process 2
F1
1.3
LEARNING UNIT 3
F4
Cash
Token
Clerk Cashier
Verify A/C Verify Token
Signature Take
Update Signature
Balance
Cheque
Customer Cheque with
Token number
Token
Customer
Accounts
Token Slip
Cheque store
Or cheque
With token no.
Cheque Customer
accounts
Search Update
Customer & match Daily
token cash
Cheque with book
token
Token Slip
Day book
Cash
REFERENCES
Cost/unit 4.0
Billing
Process
Discount
Order to 4.0
vendor Billing Too much stock
Proces
bill Customer
Invoice
Supplier
Advice
Book
Inventory
2.0
Compare
Gross pay<=Min.taxable pay
Minimum
taxable pay
Gross pay
Employee record
1.0 2.0
Find next Calculate
pay tax
Tax deduction
Get next record
Deductions statement
Employee No
1
Compute
Fig 5.7(a) Gross pay
Gross pay
Hours worked
Leave granted
Fig 5.7(b)
1
Check if
Application returned
Employee leave
available
&update
Leave application
Fig 5.7(c)
1 Store
Compute amount Employee
net pay paid
Gross Net pay Pay
pay cheque
a b e
A 1 2 B
P1 P2
c
d
3 C
P3
f
(i) To compute gross pay we need hours worked and hourly wage rate. This data
flow is missing.
(ii) A data flow cannot have two arrows pointing in opposite directions. A
separate data flow line should be drawn for “application returned”.
(iii) A data flow connects two distinct data stores without an intermediate
processing step. (See also answer to Exercise 7.5)
(iv) Process P2 has all input data flow and no output data flow.
(v) The same data flow cannot be given two names.
System Analysis and Design / Tools for Systems Analysts Question Bank
QUESTION BANK
5.1 What is the difference between an external entity and a process in a DFD?
5.5 Why is data flow between data stores not allowed in DFD?
5.6 Is data flow allowed between an external entity and a data store. If your answer is
5.9 What is the main difference between a flow chart and a DFD?
5.14 Prepare physical and logical DFDs for the following activities:
An advertisement is issued giving essential qualifications for the course, the last date
for receipt of application, and the fee to be enclosed with the application. A clerk in
the Registrar's office checks the received applications to see if mark-sheet and fee are
enclosed and sends valid applications to the concerned academic department. The
department checks the application in detail and decides the applicants to be admitted,
those to be put in the waiting list, and those rejected. Appropriate letters are sent to
the Registrar's office which intimates the applicant. Give physical and logical DFDs
5.16 A magazine is published monthly and is sent by post to its subscribers. Two months
is not received within a month, another reminder is sent. If renewal subscription is not
received up to two weeks before the expiry of the subscription, the subscriber's name
is removed from the mailing list and the subscriber informed. Obtain logical DFDs
5.17 Obtain a flowchart for Exercise 5.17 and state in what way it differs from the DFD.
5.18 Obtain a physical DFD for a simple payroll system described below. A list of
employees with their basic pay is sent to a clerk. He calculates the gross pay using
standard allowances which are known for each pay slab. Deduction statements such
as loan repayment, subscription to association etc. are also sent to another clerk who
matches these slips with the slips of gross pay and calculates net pay. This slip is used
by a third clerk to write out pay cheques for each employee and sent to respective
5.19 If the procedure of Exercise 5.19 is to be computerised, obtain a logical DFD for the
computer-based system.
Annotated References
1. Data flow diagrams (DFDs) are used to depict the flow and transformation of data
4. The procedure to develop a DFD starts with one DFD giving an overview of the
5 The context diagram is expanded into a series of DFDs, each describing a specific
function. This method of top down analysis and breaking down DFDs to give
i. Data flows, processes and data store must have meaningful names.
iii. A DFD should not have any loops, crossing lines or pure decisions as
processes.
7. In practice, DFDs are used for representing logical data flow and processing of
data. It is, however, useful to evolve a logical DFD after first developing a
physical DFD which shows the persons performing various operations and how
5.1 What is the difference between an external entity and a process in a DFD?
5.5 Why is data flow between data stores not allowed in DFD?
5.6 Is data flow allowed between an external entity and a data store. If your answer is
5.9 What is the main difference between a flow chart and a DFD?
5.14 Prepare physical and logical DFDs for the following activities:
date for receipt of application, and the fee to be enclosed with the application. A
clerk in the Registrar's office checks the received applications to see if marksheet
and fee are enclosed and sends valid applications to the concerned academic
department. The department checks the application in detail and decides the
applicants to be admitted, those to be put in the waiting list, and those rejected.
Appropriate letters are sent to the Registrar's office which intimates the applicant.
5.16 A magazine is published monthly and is sent by post to its subscribers. Two
subscription is not received up to two weeks before the expiry of the subscription,
the subscriber's name is removed from the mailing list and the subscriber
5.17 Obtain a flowchart for Exercise 5.17 and state in what way it differs from the
DFD.
5.18 Obtain a physical DFD for a simple payroll system described below. A list of
employees with their basic pay is sent to a clerk. He calculates the gross pay
using standard allowances which are known for each pay slab. Deduction
statements such as loan repayment, subscription to association etc. are also sent to
another clerk who matches these slips with the slips of gross pay and calculates
net pay. This slip is used by a third clerk to write out pay cheques for each
employee and sent to respective employees. The total pay bills paid are also
computed.
5.19 If the procedure of Exercise 5.19 is to be computerised, obtain a logical DFD for
PROCESS SPECIFICATION
OBJECTIVE QUESTIONS
LEARNING UNIT 1
6.1.8 Select from the following list which are appropriate to use in structured
English description of a process
(i) process inventory records
(ii) find the sum of outstanding billed amounts
(iii) check if outstanding amount >= Rs. 5000
(iv) check if stock is low
(a) i and ii (b) i and iii
(c) iii and iv (d) ii and iii
6.1.10 Select statements from the following list which may be used in structured
English
(i) if marks are too low fail student
(ii) if marks >=60 enter first class
(iii) if average height select candidate
(iv) if weight < 40 kg. reject candidate
(a) i and ii (b) ii and iii
(c) iii and iv (d) ii and iv
6.1.11 Select correct decision structures from the following
(i) if total marks>=75
then enter distinction in student record
end if
(ii) if total marks >=50
then enter pass in student record
else enter fail in student record
end if
(iii) if total marks >=60
then enter first class in student record
else if total marks>= 50
then enter second class in student record
else
enter fail in student record
end if
end if
(iv) if attendance <30%
then
do not admit in examination
else
(a) ii and iii (b) i and ii
(c) iii and iv (d) i and iv
6.2.10 In a limited entry decision table a—entry against a condition signifies that
(a) the outcome of testing the condition is irrelevant
(b) it is an important condition
(c) the condition should be tested
(d) the condition is a Boolean condition
6.2.12 The conditions in the condition stub of a limited entry decision table
(a) must be in sequential order
(b) must be in the order in which they are to be tested
(c) may be in any order
(d) must be in the order in which they are to be executed
6.2.13 The actions in the action stub of a limited entry decision table
(a) must be in sequential order
(b) must be in the order in which they are to be tested
(c) may be in any order
(d) must be in the order in which they are to be executed
6.2.14 A X against an action in an action row signifies that the
(a) action is not to be taken
(b) action is to be taken
(c) action is important
(d) action is not important
A1 X –– Decision table–“test”
A2 – X –
A3 X – X
Answer the following questions:
6.2.22 Structured English equivalent of the decision table “test” are given below
(i) if C1 TRUE
then if C2 TRUE
then do A3
else do A1 and A3
end if
else do A2
end if
(ii) if C1 FALSE
then do A2
else if C2 TRUE
then do A3
else do A1 and A3
end if
end if
(iii) if C2 TRUE
then if C1 TRUE
then do A3
else do A2
end if
else do A1 and A3
end if
(iv) if C2 FALSE
then if C1 TRUE
then do A1 and A3
else do A2
end if
else do A3
end if
Which of the following are correct?
(a) i and iii (b) i and ii
(c) iii and iv (d) ii and iv
6.2.23 Structured English equivalents of decision table “test” are given below. Pick
the right ones
(i) if C1 TRUE and C2 FALSE then R=1 end if
if C1 FALSE then R=2 end if
if C1 TRUE and C2 TRUE then R=3 end if
case (R)
R=1; perform actions A1 and A3
R=2; perform action A2
R=3; perform action A3
end case
(ii) if C1 TRUE and C2 FALSE then perform actions A1, A3 end if
if C1 FALSE then perform action A2 end if
if C1 TRUE and C2 TRUE then perform action A3 end if
(iii) case (C1 TRUE and C2 FALSE) Rule R1
case (C1 FALSE) Rule R2
case (C1 TRUE and C2 TRUE) Rule R3
end case
(iv) if C1 TRUE and C2 TRUE then do Rule R3 end if
if C1 TRUE and C2 FALSE then do Rule R1 end if
if C1 TRUE then do Rule R2 end if
(a) i and ii (b) i and iii
(c) ii and iii (d) iii and iv
6.2.24 The Elementary Rule Decision Table equivalent of decision table “test” is
(a) C1 Y N Y
C2 N N Y
A1 X – –
A2 – X –
A3 X – X
(b) C1 Y N Y
C2 N Y Y
A1 X – –
A2 – X –
A3 X – X
(c) C1 Y N N Y
C2 N N Y Y
A1 X – – –
A2 – X X –
A3 X – – X
(d) C1 Y N N Y
C2 N N Y Y
A1 X – – –
A2 – X – –
A3 X – X X
LEARNING UNIT 3
A1 X –
A2 – X
A1 Y –
A2 – Y
C1 C1
a) Y N b) Y N
C2 C2
Y A1 Y A1 A2
N A2 A1 N A2 A1
c) C1 d) C1
Y N Y N
C2 C2
Y A1 Y A1
N A2 A1,A2 N A2 A2
6.3.6 The decision table equivalent of the following structured English statement
is
if C2 TRUE
then if C1 TRUE
then do A3
else do A2
end if
else do A1 and A3
end if
(a) C1 Y Y N
C2 Y N –
A1 – – X
A2 – X –
A3 X – X
(b) C2 Y Y N
C1 Y N N
A1 – – X
A2 – X –
A3 X – X
(c) C1 Y N –
C2 Y Y N
A1 – – X
A2 – X –
A3 X – X
(d) C1 Y N Y
C2 Y Y N
A1 – – X
A2 – X –
A3 X – X
6.3.7 The decision table equivalent of the following structured English statement is
if balance in account <=0
then {issue exception note to dept. and mark “stop future issues”}
else if balance in account <min. balance
then {issue item to dept.
issue warning to dept.}
else {issue item to dept.}
end if
end if
A1 X – –
A2 – X X
A3 – X –
(b) C1 Y N N Y
C2 N Y N Y
A1 X – – –
A2 – X X X
A3 – X – –
(c) C1 N N N
C2 – Y N
A1 X – –
A2 – X X
A3 – X –
(d) C1 Y N Y
C2 N Y N
A1 X – –
A2 – X X
A3 – X –
6.3.8The decision table given in answer (a) of question 9.4.3 is
(a) incomplete
(b) apparently ambiguous
(c) has contradictory specifications
(d) logically complete
6.3.9 The rule C1=Y, C2=Y in the decision table given in answer (a) of question
6.3.7 is
(a) logically impossible
(b) logically possible
(c) has no action specified
(d) has multiple actions specified
6.3.10 If min. balance > 0 then the rule C1=Y, C2= – in the decision table given in
answer (a) of question 6.3.7 may be replaced by the rule
(a) C1=Y, C2=N
(b) C1=Y, C2=Y
(c) C1= –, C2=Y
(d) C1= –, C2=N
LEARNING UNIT 4
6.4.1 The actions of a decision table are mapped on a K-map shown below:
The boxes marked X denote impossible rules
C1C2
C3 NN NY YY YN
Y A1 A1 A2
N A1 A2 A2
The rule for action A1 may be represented by the following minimal Boolean expression
A1 X – – X – – X X
A2 – X X – X X X X
(a) C1 N N Y Y
C2 – – Y N
C3 Y N – –
A1 X – – X
A2 – X X X
(b) C1 – Y N Y
C2 – – – N
C3 N – Y –
A1 – – X X
A2 X X – X
(c) C1 N – Y N Y
C2 – Y Y – N
C3 N N – Y –
A1 – – – X X
A2 X X X – X
(d) C1 Y N N Y
C2 – – – N
C3 – N Y –
A1 – – X X
A2 X X – X
6.4.3 The following decision table may be replaced by its best equivalent shown
below:
C1 N Y Y N N Y N Y N N Y Y N Y N Y
C2 N N N N Y Y Y Y N N N N Y Y Y Y
C3 N N Y Y N N Y Y N Y N Y N N Y Y
C4 N N N N Y Y Y Y Y Y Y Y N N N N
A1 X X X X – – – – – – – – – – – –
A2 – – – – X X X X – – – – – – – –
A3 – – – – – – – – X X X X – – – –
A4 – – – – – – – – – – – – X X X X
(a) C1 Y N N N N Y – –
C2 N N – – N N Y Y
C3 – – N Y – – N Y
C4 N N Y Y Y Y N N
A1 X X – – – – – –
A2 – – X X – – – –
A3 – – – – X X – –
A4 – – – – – – X X
(b) C2 N Y N Y
C4 N Y Y N
A1 X – – –
A2 – X – –
A3 – – X –
A4 – – – X
(c) C1 – N Y – –
C2 – N N Y –
C3 N – – – Y
C4 N Y Y Y N
A1 X – – – X
A2 – – – X –
A3 – X X – –
A4 X – – – X
(d) C2 – N Y –
C3 – – – Y
C4 N Y Y N
A1 X – – X
A2 – – X –
A3 – X – –
A4 X – – X
A1 X X X X – – – –
A2 – – – – X X – –
A3 – – – – – – X X
(c) C1 Y Y N N (d) C1 Y N N
C3 N Y N Y C2 – Y N
C2 – – – –
A1 X X – – A1 X – –
A2 – – X X A2 – X –
A3 – – X
6.4.6 The decision table “test 3“ is
(a) incomplete
(b) ambiguous
(c) incorrect
(d) has redundancies
6.4.7 The decision table equivalent of the following Boolean expression is
(a) C1 Y Y Y N N
C2 Y N – N N
C3 N Y Y Y N
A1 X X – – –
A2 – – X X X
(b) C1 Y Y Y N N
C2 Y N N N N
C3 Y Y – Y N
A1 X X – – –
A2 – – X X X
(c) C2 Y Y Y N N
C1 Y N – N N
C3 N Y Y Y N
A1 X X – – –
A2 – – X X X
(d) C1 Y Y Y N N
C2 Y N – N N
C3 N Y Y Y N
A1 X X – – –
A2 X X X X X
6.4.8 A decision table “test 4” is given below
C1 Y Y N – – N Y N
C2 Y – N Y – N N –
C3 Y Y Y – Y N N N
C4 – Y – Y N – – N
A1 X X X – – – – –
A2 – – – X X – – –
A3 – – – – – X X –
? – – – – – – – I
6.4.11 If in “test 4” the rules where the contradictory actions or unspecified actions
are present, the action is replaced by A2 only, the reduced decision table
using impossible rules also for reduction is:
(a) C1 – – – – – N
C2 N – Y Y – N
C3 Y Y – Y N N
C4 Y N Y – N –
A1 X – – – – –
A2 – X X X – –
A3 – – – – X X
(b) C1 N Y – – – N N
C2 N N Y Y – – N
C3 Y Y N Y Y N N
C4 Y Y Y – N N –
A1 X X – – – – –
A2 – – X X X – –
A3 – – – – – X X
(c) C1 – – – – N
C2 N – Y – N
C3 Y Y – N N
C4 Y N Y N –
A1 X – – – –
A2 – X X – –
A3 – – – X X
(d) C2 N Y – N
C3 Y – Y N
C4 Y – N –
A1 X – – –
A2 – X X –
A3 – – – X
if C2 then
if C1
then A3
else A2
endif
else A1,A3
endif
A3
Y
Y C2
a) N A2
C1
N A1, A3
Y A3
b)
Y C1
A2
C2 N
A1
N Y
C1
N A3
Y A3
Y C1
c) N A2
C2
A1, A3
N
A2
d) C1
A3
C2
A1A3
a)
C2 Y N N Y
C1 N Y N Y
A1 X - X -
A2 - X X -
A3 X - - X
b)
C1 Y Y N
C2 Y N -
A1 - - X
A2 - X -
A3 X - X
c)
C1 Y Y N
C2 Y N Y
A1 - - X
A2 - X -
A3 X - X
d)
C1 Y Y N
Else
C2 Y N Y
A1 - - X Error
A2 - X -
A3 X - X
KEY TO OBJECTIVE QUESTIONS
Learning Units
6.1 Structured English specification
6.2 Decision table based specifications
6.3 Detecting
-Incompleteness
-Ambiguity
-Contradictions
-Redundancy
in decision table specification
6.4 Eliminating redundancy in specifications
6.5 Decision trees for specifications
ACTIONS
Give 5% Discount X X - -
Give No Discount - - X X
Y Y Give 5% Discount
C1 C3
N Y N
No Discount
C2 N
No Discount
If condition
then
{ Group of statements }
else
{ Group of statements }
end if
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 : Total =0
for subject =1 to subject =5 do
total marks=total marks +marks(subject)
write roll no,total marks
end for
while condition do
{ statements in loop }
end while
Most managers and users are not concerned how data is processed-
they want to know what rules are used to process data.
EXAMPLE
ACTIONS
A1: Classify as A X - - -
A2: Classify as B - X - -
A3: Classify as C - - X -
CONDITION
STUB CONDITION ENTRIES
ACTION
ACTION ENTRIES
STUB
RULE
Interpretation
R1: If applicant sponsored and he has minimum qualifications
and his fee is paid –Send Admit letter
ELSE: In all cases send regret letter.The else rule makes a decision table complete
6.2.7 Systems Analysis And Design © V. Rajaraman 23 of 54
DECISION TABLE FOR SHIPPING RULES
R1 R2 R3 R4
C1: Qty ordered <= Quantity Y Y N N
in stock?
C2: (Qty in stock-Qty
ordered)<=reorder level N Y - -
C3: Is the partial - - Y N
shipment ok?
A1:Qty shipped=Qty ordered X X - -
A2:Qty shipped=Qty in stock - - X -
A3:Qty shipped=0 - - - X
A4:Qty in stock=0 - - X -
A5:Back order=qty ordered-
qty shipped - - X X
Example R1 R2 R3 R4 R5 R6
C1 : Product code 1 1 1 1 1 2
C2 : Customer code A B A B C -
Rl R2 R3 R4 R5 R6
Cl : Product code = 1? Y Y Y Y N
C2: Customer code = A B A B C -
C3: Order amount < 500? Y Y N N - -
Discount = 5% 7 5% 7 5% 10% 6% 5%
Rl R2
Cl: x>60 Y -
C2:x<40 - Y
We can expand decision table by
Al X - replacing each –by Y & N
A2 : - X
Cl: x>60 Y Y N Y
C2:x<40 Y N Y Y A rule which has no – is an
Elementary rule
Al X X - -
A2 : - - X X
C1 N Y
C2
? Al
N
Y A2 A1,A2
If carbon content<0.7
then if Rockwell hardness>50
then if tensile strength>30000
then steel is grade 10
else steel is grade 9
end if
else steel is grade 8
end if
Decision table-Grading steel
else steel is grade 7
end if C1:Carbon content <0.7 Y Y Y N Y N N N
C2:Rockwell hardness>50 Y Y N N N Y Y N
C3 tensile strength>30000 Y N N N Y Y N Y
Grade 10 9 8 7 ? ? ? ?
C1 C2
C3 NN NY YY YN
N 7 ? 9 8
Y ? ? 10 ?
R1 R2 R3 R4 R5 R6
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 -
C1C2
C3C4 NN NY YY YN
NN
A4 A3 A1
NY A4 A4 A4 Impossible rules
YY A4 A2 A1
YN A5 A3 A1
C1 Y Y Y N N N N Y N N N N
C2 Y Y Y Y Y Y Y Y N N N N
C3 N Y Y Y N Y N N Y N N Y
C4 N Y N Y N N Y Y Y Y N N
Action A1 A1 A1 A2 A3 A3 A4 A4 A4 A4 A4 A5
YY YY
YN YN
A4=C1C2C3(C4+C4)=C1C2C3 A4=C3C4(C1C2+C1C2+C1C2+C1C2)=C3C4
A1 A1 A2 A2 A3 A3
YY YY YY
A1 A1 A2 A2
YN YN YN
A1=(C3C4+C3C4+C3C4+C3C4).(C1C2+C1C2)=C2(C3+C3)=C2
A2=(C1C2+C1C2)(C3C4+C3C4+C3C4+C3C4)=C2
A3=C1C2C3C4+C1C2C3C4+C1C2C3C4+C1C2C3C4
=C2C3C4(C1+C1)+C2C3C4(C1+C1)
=C2C4(C3+C3)=C2C4
C1C2
C3C4 NN NY YY YN Boxes marked X correspond to impossible rules.
NN A4 A3 A1 They can be used if they are useful in reducing rules
YY A4 A2 A1 A1 : C1C4+C1C3
A2 : C1C2C3C4
YN A5 A3 A1 A3 : C1C2C4
A4 : C3C4+C2C3+C2C4
A5 : C2C3C4
A: Send letter A X X - - - - - -
B: Send letter B - - X - - - - -
C: Send letter C - - - X - - - -
D: Send letter D - - - - X X X -
E: Send letter E - - - - - - - X
Conditions:
C1 : Annual income > 20000
C2 : Male
C3 : Married
C4: Age > 30
A1:Insure X X X X X -
A2 :Do not insure - - - - - X
C1C2
NN NY YY YN
C3C4
NN
NY A1 A1
A1=C3+C2.C4
YY A1 A1 A1 A1
A1 A1 A1 A1
YN
- Y
C2 : Male
C3 : Married Y - ELSE
C4 : Age > 30 - Y
Al : Insure X X -
A2 : Do not Insure - - X
C1 Book II AC
N Y
C2 Book sleeper
N Y
C3 Book ticket
N Y
C1: Is II AC ticket available on 4/8/04 C4
C2: Is II AC ticket available on 5/8/04 N
C3: Is sleeper available on 4/8/04
Return
C4: Is sleeper available on 5/8/04
Observe in the tree sequencing of conditions which is important in this example
C1
>=50
GRADE B
>=40
GRADE C
else
GRADE F
ISOLATING
CONDITIONS NOT GOOD BEST GOOD
& ACTIONS
SEQUENCING
CONDITIONS GOOD NOT BEST
BY PRIORITY GOOD
CHECKING FOR
COMPLETENESS
NOT GOOD BEST GOOD
,
CONTRADICTIO
N&
AMBIGUITIES
PROCESS SPECIFICATION
Contents
2. LEARNING UNIT 1
Structured English specification
3. LEARNING UNIT 2
Decision table based specifications
4. LEARNING UNIT 3
Detecting
-Incompleteness
-Ambiguity
-Contradictions
-Redundancy
in decision table specification
5. LEARNING UNIT 4
Eliminating redundancy in specifications
6. LEARNING UNIT 5
Decision trees for specifications
7. REFERENCES
PROCESS SPECIFICATION
MOTIVATION
LEARNING GOALS
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
processes. 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.
STRUCTURED ENGLISH
Example:
if customer pays advance
then
Give 5% Discount
else
if purchase amount >=10,000
then
if the customer is a regular customer
then Give 5% Discount
else No Discount
end if
DECISION TABLE-EXAMPLE
else No Discount
ACTIONS
Give 5% Discount X X - -
Give No Discount - - X X
DECISION TABLE-EXPLANATION
Operators -Arithmetic : +, -, /, *
Relational : >, >=, <, <=, =, !=
Logical : and, or, not
Keywords : if, then, else, repeat, until, while, do, case,
until, while, do, case, for, search, retrieve, read, write
Delimiters – {, }, end, end if, end for
Give 5% Discount
Y Y Give 5% Discount
C1 C3
N Y N
No Discount
C2
N
No Discount
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 : Total =0
for subject =1 to subject =5 do
total marks=total marks +marks(subject)
write roll no,total marks
end for
while condition do
{ statements in loop }
end while
EXAMPLE
EXAMPLE
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 deposit
is Rs 100 or more, classify it as type B If the depositor is 21 or over and
deposit is below Rs 100 classify it as C If the depositor is under 21 and
deposit is below Rs 100 do-not open account
Identify Conditions: Age >= 21 Cl
Deposits >= Rs 100: C2
Identify Actions : Classify account as A, B or C
Do not open account
C1 : Age >= 21 Y N Y N
ACTIONS
A1: Classify as A X - - -
A2: Classify as B - X - -
A3: Classify as C - - X -
Action Stub
CONDITION
STUB CONDITION ENTRIES
ACTION
ACTION ENTRIES
STUB
• 4 Quadrants-demarcated by two double lines
• CONDITION STUB LISTS ALL CONDITIONS TO BE CHECKED
• ACTION STUB LISTS ALL ACTIONS TO BE CARRIED OUT
• LIMITED ENTRY DECISION TABLE:ENTRIES ARE Y or N or -.Y-
YES,N- NO,-IRRELEVANT(DON’T 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
•order of listing actions important while order of listing conditions is not
important
•actions listed first carried out first
sequential execution of actions
•rules may be listed in any order
Interpretation
R1: If applicant sponsored and he has minimum qualifications
and 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 other cases send regret letter.The else rule makes a decision
table complete
R1 R2 R3 R4
C1 : Product code 1 1 1 1 1 2
C2 : Customer code A B A B C -
Rl R2 R3 R4 R5 R6
Cl : Product code = 1? Y Y Y Y Y N
C2: Customer code = A B A B C -
C3: Order amount < 500? Y Y N N - -
Go to table 2 X -
No promotion - X Advance to next X - - -
salary point
No promotion - X X -
Complete departmental Y
Course else
1 yr since last increment Y
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
Rl R2
Cl: x>60 Y -
C2:x<40 - Y
We can expand decision table by
replacing each –by Y & N
Al X -
A2 : - X
Cl: x>60 Y Y N Y
C2:x<40 Y N Y Y
A rule which has no – is an
Al X X - - Elementary rule
A2 : - - X X
LEARNING UNIT 3
If action specified for multiple identical rules are different then it is called
ambiguous specifications
DT2 has an ambiguity. Rules R11 and R22 are identical but have
different actions. Ambiguity may be apparent or real. It is said to be apparent
if the rule leading to the ambiguity is logically impossible
For example,(x>60)=Y and (x<40)=Y cannot occur simultaneously.
Thus in DT2 rules R11 and R22 are apparently ambiguous rules
Apparently ambiguous rules is not an error
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.
C1 N Y
C2
? Al
N
Y A2 A1,A2
DT3:
Grade 10 9 8 7 ? ? ? ?
C1 C2
C3 NN NY YY YN
N 7 ? 9 8
? ? 10 ?
Y
Observe that the fact that the specification is incomplete is obvious in the
Decision table whereas the structured English specification seems complete
which is not.
DT4: DECISION TABLE-ARREARS MANAGEMENT
R1 R2 R3 R4 R5 R6
C1:Payment in current month Y N N - - -
>min.specified payment
C2:Payment in current month>0 - Y Y - N N
C3:Any payment in last 3 months - - - N Y Y
C4: 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 -
KARNAUGH MAP
C1C2
C3C4 NN NY YY YN
NN ? A3 A1 A1*
YY A4 A2 A1 A1A4*
C1
A5: x>m C2:x>0 C3:y>0
A3 C4:z>3m A1 m>0 A1A5*
YN 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<=0 not logically possible
C1: N C2: Y x<=m,x>0 possible
C1: N C2: N x<=m,x<=0 possible
Thus C1,C2,C3 C4:NNNN incomplete specification
BOXES MARKED * NOT LOGICALLY POSSIBLE
Rules C1 C2 C3 C 4 : NYNY and YYNY logical errors
Errors to be corrected after consulting users who formulated the rules
CORRECT DECISION TABLE
C1C2
C3C4 NN NY YY YN
NN A4 A3 A1
IMPOSSIBLE
NY A4 A4 A4 RULES
YY A4 A2 A1
A5 A3 A1
YN
C1 Y Y Y N N N N Y N N N N
C2 Y Y Y Y Y Y Y Y N N N N
C3 N Y Y Y N Y N N Y N N Y
C4 N Y N Y N N Y Y Y Y N N
Question: Can the number of rules be reduced?
Answer : Yes, by combining rules with the same action
LEARNING UNIT 4
REDUNDANCY ELIMINATION
C1C2
NN NY YY YN NN NY YY YN
C3 C4 C3 C4 NN NY YY YN C3 C4
A1 A1 A2 A2
NN NN NN
A1 A1 A2 A2 A3 A3
NY NY NY
A1 A1 A2 A2 A3 A3
YY YY YY
A1 A1 A2 A2
YN YN YN
A3=C1C2C3C4+C1C2C3C4+C1C2C3C4+C1C2C3C4
=C2C3C4(C1+C1)+C2C3C4(C1+C1)
=C2C4(C3+C3)=C2C4
NY A4 A4 A4
YY A4 A2 A1
YN A5 A3 A1
Boxes marked X correspond to impossible rules.
They can be employed if they are useful in reducing rules
A1 : C1C4+C1C3
A2 : C1C2C3C4
A3 : C1C2C4
A4 : C3C4+C2C3+C2C4
A5 : C2C3C4
REDUCING DECISION TABLES
A: Send letter A X X - - - - - -
B: Send letter B - - X - - - - -
C: Send letter C
EXAMPLE-REDUCTION OF RULES-IN WORD - -STATEMENT
X - - - -
D: Send letter D - - - - X X X -
E: Send letter
Rules E Driver if following rules are- satisfied
: Insure - - - - - - X
1.Drivers annual income > 20000 & is married male
2.Drivers annual income > 20000 & is married and over 30
3.Drivers annual income <= 20000 & she is married female
4.Driver is male over 30
5.Driver is married and age is not relevant
Else do not insure
Conditions:
C1 : Annual income > 20000
C2 : Male
C3 : Married
C4: Age > 30
Action: Insure or do not insure
A1:Insure X X X X X -
A2 :Do not insure - - - - - X
C1C2
NN NY YY YN
C3C
NN
NY A1 A1
A1=C3+C2.C4
YY A1 A1 A1 A1
A1 A1 A1 A1
YN
REDUCED DECISION TABLE
C2 : Male - Y
C3 : Married ELSE
Y -
C4 : Age > 30 - Y
Al : Insure X X -
A2 : Do not Insure LEARNING UNIT 5
- - X
C1
Book II AC
N Y
C2 Book sleeper
N Y
C3 Book sleeper
N Y
C4
N
Return
CONDITIONS
GRADE A
>=60
C GRADE B
>=50
GRADE C
>=40
else GRADE F
Sometimes Decision trees are more appropriate to explain to a user how
decisions are taken
ISOLATING
CONDITIONS & NOT GOOD BEST GOOD
ACTIONS
SEQUENCING
CONDITIONS BY GOOD NOT GOOD BEST
PRIORITY
CHECKING FOR
COMPLETENESS, NOT GOOD BEST NOT GOOD
CONTRADICTION
WHEN TO USE STRUCTURED ENGLISH,DECISION TABLES AND
DECISION TREES
Use Structured English if there are many loops and actions are complex
Use Decision tables when there are a large number of conditions to check
and logic is complex
REFERENCES
2. K.E. Kendall and J.E.Kendall, “Systems Analysis and Design”, 5th Edition,
Pearson Education Asia, Delhi, 2003. Has a brief discussion of structured
English, Decision Tables and Decision Trees (pages 353 to 369). Website
www.prenhall.com/kendall has a lot of support material and case study for
students.
case (code)
Code=2 : if purchase amount >=5000
then discount=5%
Code=1 :discount=2%
Code=3 :if purchase amount >=4000
then discount =2%
else if code=4
then discount =5%
end if
None of the above codes : discount=0
end case
a. code=2 should appear after code=1
b. if statement cannot be used within a case
c. code=4 should not be used in the action for code=3
d. The statement is correct
6.15 The following while structure is wrong because
balance =500
while balance <=1000 do
Write (amount due – balance)
Read next record
end while
a. read must appear before write
b. this loop will never terminate
c. no read allowed in a loop
d. the contents of next record is not known
6.16 Structured English description of data processing is a
a. non-procedural specification
b. procedural specification
R1 R2 R3
C1 Y N Y
C2 N – Y
A1 X –– Decision table–“test”
A2 – X –
A3 X – X
(i) if C1 TRUE
then if C2 TRUE
then do A3
else do A1 and A3
end if
else do A2
end if
(ii) if C1 FALSE
then do A2
else if C2 TRUE
then do A3
else do A1 and A3
end if
end if
(iii)if C2 TRUE
then if C1 TRUE
then do A3
else do A2
end if
else do A1 and A3
end if
(iv)if C2 FALSE
then if C1 TRUE
then do A1 and A3
else do A2
end if
else do A3
end if
C1 Y N Y
C2 N N Y
A1 X – –
A2 – X –
A3 X– X
b.C1 Y N Y
C2 N Y Y
A1 X – –
A2 – X –
A3 X – X
c. C1 Y N N Y
C2 N N Y Y
A1 X – – –
A2 – X X –
A3 X– – X
d. C1 Y N N Y
C2 N N Y Y
A1 X – – –
A2 – X – –
A3 X – X X
R1 R2
C1 : x <= 50 N –
C2 : x >= 70 – N
A1 X –
A2 – X
d. is incomplete
C1 N –
C2 – N
A1 Y –
A2 Y
a. Y N b. Y N
C2 C2
Y A1 Y A1 A2
N A2 A1 N A2 A1
c. C1 d. C1
Y N Y N
C2 C2
Y A1 Y A1
N A2 A1,A2 N A2 A2
if C2 TRUE
then if C1 TRUE
then do A3
else do A2
end if
else do A1 and A3
end if
a. C1 Y Y N
C2 Y N –
A1 – – X
A2 – X –
A3 X – X
b. C2 Y Y N
C1 Y N N
A1 – – X
A2 – X –
A3 X – X
c. C1 Y N –
C2 Y Y N
A1 – – X
A2 – X –
A3 X – X
d. C1 Y N Y
C2 Y Y N
A1 – – X
A2 – X –
A3 X – X
a. C1 Y N N
C2 – Y N
A1 X – –
A2 – X X
A3 – X –
b. C1 Y N N Y
C2 N Y N Y
A1 X – – –
A2 – X X X
A3 – X – –
c. C1 N N N
C2 – Y N
A1 X – –
A2 – X X
A3 – X –
d. C1 Y N Y
C2 N Y N
A1 X – –
A2 – X X
A3 – X –
6.46 The decision table given in answer (a) of question 9.4.3 is
a. incomplete
b. apparently ambiguous
c. has contradictory specifications
d. logically complete
6.47 The rule C1=Y, C2=Y in the decision table given in answer (a) of
question 6.3.7 is
e. logically impossible
f. logically possible
g. has no action specified
h. has multiple actions specified
6.48 If min. balance > 0 then the rule C1=Y, C2= – in the decision table given
in answer (a) of question 6.3.7 may be replaced by the rule
i. C1=Y, C2=N
j. C1=Y, C2=Y
k. C1= –, C2=Y
l. C1= –, C2=N
6.49 The actions of a decision table are mapped on a K-map shown be
The boxes marked X denote impossible rules
C1C2
C3 NN NY YY YN
Y A1 A1 A2
N A1 A2 A2
c. C1.C3 + C2
d. C1.C3 + C2.C1
6.50 The following decision table may be replaced by its best equivalent
shown below:
C1 N N N N Y Y Y Y
C2 N N Y Y Y Y N N
C3 Y N N Y Y N N Y
A1 X – – X – – X X
A2 – X X – X X X X
a. C1 N N Y Y
C2 – – Y N
C3 Y N – –
A1 X – – X
A2 – X X X
b. C1 – Y N Y
C2 – – – N
C3 N – Y –
A1 – – X X
A2 X X – X
c. C1 N – Y N Y
C2 – Y Y – N
C3 N N – Y –
A1 – – – X X
A2 X X X – X
d. C1 Y N N Y
C2 – – – N
C3 – N Y –
A1 – – X X
A2 X X – X
6.51 The following decision table may be replaced by its best equivalent shown
below:
C1 N N N N Y Y Y Y
C2 N N Y Y Y Y N N
C3 Y N N Y Y N N Y
A1 X – – X – – X X
A2 – X X – X X X X
a. C1 N N Y Y
C2 – – Y N
C3 Y N – –
A1 X – – X
A2 – X X X
b. C1 – Y N Y
C2 – – – N
C3 N – Y –
A1 – – X X
A2 X X – X
c. C1 N – Y N Y
C2 – Y Y – N
C3 N N – Y –
A1 – – – X X
A2 X X X – X
d. C1 Y N N Y
C2 – – – N
C3 – N Y –
A1 – – X X
A2 X X – X
6.52 C1 N N N N Y Y Y Y
C2 N N Y Y Y Y N N
C3 Y N N Y Y N N Y
A1 X – – X – – X X
A2 – X X – X X X X
a. C1 N N Y Y
C2 – – Y N
C3 Y N – –
A1 X – – X
A2 – X X X
b. C1 – Y N Y
C2 – – – N
C3 N – Y –
A1 – – X X
A2 X X – X
c. C1 N – Y N Y
C2 – Y Y – N
C3 N N – Y –
A1 – – – X X
A2 X X X – X
d. C1 Y N N Y
C2 – – – N
C3 – N Y –
A1 – – X X
A2 X X – X
6.53 Given the decision table “test 3”answer the following questions:
R1 R2 R3 R4 R5 R6 R7 R8
x>=20 Y Y Y Y N N N N
x<=30 Y Y N N Y Y N N
y>=x Y N Y N Y N Y N
A1 X X X X – – – –
A2 – – – – X X – –
A3 – – – – – – X X
a. Rules R7, R8 are logically impossible
b. Rules R5, R6 are logically impossible
c. Rules R3, R4 are logically impossible
d. Rules R1, R2 are logically impossible
6.54 Pick the correct equivalent of “test 3”
a. C1 Y N b. C1 Y N N
C2 – Y N
A1 X –
A2 – X A1 X – –
A2 – X –
A3 – – X
c. C1 Y Y N N d. C1 Y N N
C3 N Y N Y C2 – Y N
C2 – – – –
A1 X X – – A1 X – –
A2 – – X X A2 – X –
A3 – – X
a. C1 Y Y Y N N
C2 Y N – N N
C3 N Y Y Y N
A1 X X – – –
A2 – – X X X
b. C1 Y Y Y N N
C2 Y N N N N
C3 Y Y – Y N
A1 X X – – –
A2 – – X X X
c. C2 Y Y Y N N
C1 Y N – N N
C3 N Y Y Y N
A1 X X – – –
A2 – – X X X
d. C1 Y Y Y N N
C2 Y N – N N
C3 N Y Y Y N
A1 X X – – –
A2 X X X X X
6.57 A decision table “test 4” is given below
C1 Y Y N – – N Y N
C2 Y – N Y – N N –
C3 Y Y Y – Y N N N
C4 – Y – Y N – – N
A1 X X X – – – – –
A2 – – – X X – – –
A3 – – – – – X X –
? – – – – – – – I
a. A1, A3
b. A1, A2
c. A2, A3
d. A2, I
e. NYNN
f. NYYN
g. YYNN
h. YNYN
a. C1 – – – – – N
C2 N – Y Y – N
C3 Y Y – Y N N
C4 Y N Y – N –
A1 X – – – – –
A2 – X X X – –
A3 – – – – X X
b. C1 N Y – – – N N
C2 N N Y Y – – N
C3 Y Y N Y Y N N
C4 Y Y Y – N N –
A1 X X – – – – –
A2 – – X X X – –
A3 – – – – – X X
c. C1 – – – – N
C2 N – Y – N
C3 Y Y – N N
C4 Y N Y N –
A1 X – – – –
A2 – X X – –
A3 – – – X X
d . C2 N Y – N
C3 Y – Y N
C4 Y – N –
A1 X – – –
A2 – X X –
A3 – – – X
6.61 Decision Trees are preferred when
a. Too many conditions need to be tested
b. Sequencing of testing conditions is important
c. When there are many loops to be performed
d. When too many actions are to be taken
if C2 then
if C1
then A3
else A2
endif
else A1,A3
endif
A3
Y
Y C2
a. N A2
C1
N A1, A3
Y A3
b.
Y C1
A2
C2 N
A1
N Y
C1
N A3
Y A3
Y C1 N A2
c.
C2
A1, A3
N
V. Rajaraman/IISc. Bangalore M6/V1/July 04/29
System Analysis and Design/Structured Systems Analysis and Design Multiple Choice Questions
A2
C1
d.
A3
C2
A1A3
a.
C2 Y N N Y
C1 N Y N Y
A1 X - X -
A2 - X X -
A3 X - - X
b.
C1 Y Y N
C2 Y N -
A1 - - X
A2 - X -
A3 X - X
c.
C1 Y Y N
C2 Y N Y
A1 - - X
A2 - X -
A3 X - X
V. Rajaraman/IISc. Bangalore M6/V1/July 04/30
System Analysis and Design/Structured Systems Analysis and Design Multiple Choice Questions
d.
C1 Y Y N
C2 Y N Y
A1 - - X
A2 - X - Error
A3 X - X
PROCESS SPECIFICATION
WORKED EXAMPLES
6.1 A bank has the following policy on deposits: On deposits of Rs. 5000 and
above and for three years or above the interest is 12%. On the same deposit
for a period less than 3 years it is 10%. On deposits below Rs. 5000 the
interest is 8% regardless of the period of deposit. Write the above process
using
(i) Structured English
(ii) A decision table
Interest 12 10 8
Percent increase 15 10 5
end table
Gross pay = gross pay*(1+percent increase/100)
Write Number, name, gross pay
end while
6.3 An offshore gas company bills its customers according to the following rate
schedule:
First 500 litres Rs. 10 (flat)
Next 300 litres Rs. 1.25 per 100 litres
Next 30,000 litres Rs. 1.20 per 100 litres
Next 100,000 litres Rs. 1.10 per 100 litres
Above this Re. 1.00 per 100 litres
The input record has customer identification, name and address, meter
reading, past and present. Write a structured English procedure to obtain a
bill for the customer.
6.4 Refer to users requirements stated in exercise 6.4 of Question bank. Develop
the processing rules in structured English for the stores process shown in Fig.
5.8.
for each customer requisition do
if (qty. requested < qty. in stock ) then
{
qty. issued = qty. requested.
qty. in stock = qty. in stock – qty. issued
send( customer id , qty. issued ) to accounts process}
end if
if (qty. in stock <= reorder level) then
send reorder request to purchase.
end if
for each item (with specified item code and qty. accepted note) received from
inspection do
qty. in stock ( item code)
= qty. in stock ( item code) + qty. accepted
end for
6.5 Refer to Exercise 6.4 in Question Bank. Develop the processing rules in
structured English for the purchase process of Fig. 5.9.
for each discrepancy note received from the receiving office do
{ intimate specified vendor
enter discrepancy in the discrepancy file }
end for
for each goods rejected note received from the inspection office do
{ intimate specified vendor
enter rejected items note in items rejected file }
end for
for each reorder advice or new requisition received for an item from stores do
{ Refer to item file to find vendor details and order qty.
send order to specified vendor
enter order in order file }
end for
6.6. State the processing rules in structured English for the various processes in
the data flow diagram for the hostel DFD described in Module 5
Mess Process
for each absence note do
Read student charge record from student charge file (using student number
as key)
Add absence days to absence field
Write student charge record in student charge file
end for
for each extras note do
Read student charge record
Append extras code and quantity to record
Write student charge in student charge file
end for
Billing Process
While student charge records left in student charge file do
Read student charge record from student charge file
No. of days to charge = no. of days in a month – no. of days absent.
Monthly charge = no. of days to charge * daily rate
Total extras charge = 0
for each extra item do
extras charge (code) = extra qty. * charge (code)
end for
Add extra charge to total extra charge
Amount to be billed = no. of days to charge * daily rate + total extras
charge
Student bill record = student charge record + daily rate, no. of days
charged, monthly charge, extras charge (code) , total extras charge ,
grand total to pay
Write student bill record
end while
(Note: It is assumed that the daily rate, no. of days in a month and extras charge
for each extras code is stored in the billing process as an internal data record.)
Supply order X – – –
Credit not OK
Do not supply – X – X
Supply stock – – X –
Enter (order – stock)
In back Order file – – X –
Observe that the last rule is not specified in the statement of rules. This has been
added to complete the table.
decision table
qty requested < qty in stock Y – – – Y
qty requested = qty in stock – Y – – –
qty requested > qty in stock – – Y Y –
(qty in stock – qty requested) Y – – – N
<= reorder level
Partial order OK? – – N Y –
for each item with specified item code and qty accepted note
received from inspection do
qty in stock ( item code) =
qty in stock ( item code) + qty. accepted
end for
6.10 Obtain a decision table for an automatic stamp vending machine with the
following specifications:
(i) To dispense 20, 15, 10, 5 paise stamps
(ii) To accept 50, 25, 10, 5 paise coins
(iii) Do not return change if it is necessary to return more than two coins of
the same denomination. In such a case return the customer’s coin and
turn on “no change” light.
The machine should dispense a stamp, the right amount of change tendered,
no stamp available, no change available, etc.
Table 1: Select Stamp
Amount tendered < Stamp cost = Stamp cost > Stamp cost –
Stamp requested available? – Y Y N
Amount insufficient X – – –
Return amount X – – X
‘No stamp’ light on – – – X
Dispense stamp – X X –
Go to Table 2 – – X –
Stop X X – X
No of 25 ps. Returned 1 – 1 1 1 1 1 – – – – – – – –
No of 10 ps. Returned – 2 1 – 1 2 1 – 1 – 1 2 1 – –
No of 5 ps. Returned 1 2 – 2 1 – 2 1 – 2 1 – 2 1 –
Dispense stamp X X X X X X X X X X X X X X –
No. change light on – – – – – – – – – – – – – – X
Return amount – – – – – – – – – – – – – – X
Stop X X X X X X X X X X X X X X X
6.11 Obtain the decision table to be used by a person to enter the office of a manager.
The conditions to be checked are:
Door open? Ring sign on? Enter sign on? Door locked?
The actions a person takes are:
Ring bell, enter, wait, leave.
After obtaining the decision table, ensure that it has no logical errors and
that it is in minimal form.
R1 R2 R3 R4 R5 R6 R7 R8 R9 R10 R11 R12 R13 R14 R15 R16
C1: Door open? N N N N N N N N Y Y Y Y Y Y Y Y
C2: Ring sign on? N N N N Y Y Y Y N N N N Y Y Y Y
C3: Enter sign on? N N Y Y N N Y Y N N Y Y N N Y Y
C4: Door locked? N Y N Y N Y N Y N Y N Y N Y N Y
Ring bell – – – – X – X – – ? – ? X ? X ?
Enter – – X – – – X – – ? X ? – ? X ?
Wait – – – – X – – – – ? – ? X ? – ?
Leave X X – X – X – X X ? – ? – ? – ?
A1 A1 A2 A1 A3 A1 A4 A1 A1 A2 A3 A4
Rules R10, R12, R14, R16 have conditions “Door open” and “Door locked”
simultaneously true. These rules are thus impossible. Observe these are four
distinct actions. The table is mapped on a K-map (Fig. S6.11)
NN NY YY YN
NN A1 A3 A3 A1
NY A1 A1
YY A1 A1
YN A2 A4 A4 A2
NY A4 A3 A1 A5 A5 A2
A4 A4 NY
A5
YY A6 A3 A1 YY A5 ? A2
YN A1 A1 A1 YN
C5 = N C5=Y
Fig S6.12
Impossible rule: C4 = N C5 = Y
K- map (Fig. S 9.10) has incompleteness marked by ?
C1 C2 C3 C4 C5
N Y Y Y Y
If in all these cases we take action to notify accounts (Action A1) then the K- map becomes the
one shown in Fig. S9.11
A1 = C3. C4 + C1 . C5 + C2 . C3 . C5 + C1 . C3 + C1 . C2 . C3 . C5
A2 = C1 . C3 . C5
A3 = C1 . C2 . C3 . C4 . C5
A4 = C2 . C3 . C5
A5 = C1 . C3 . C5 + C2 . C4 . C5
C1C2
A6 = C2 . C3 . C4 . C5
C3C4 NN NY YY YN
NN A4 A1 A1
NY
A4 A1 A1
YY A6 A3 A1
YN A1 A1 A1
C5=N
Fig S.6.13
C1C2
C3C4 NN NY YY YN
NN
NY
A5 A5 A1
YY A5 A1 A2
YN
C5=Y
FigS6.14
6.13 The policy followed by a company to process customer orders is given by the
following rules:
(i) If the customer order ≤ that in stock and his credit is OK, supply his
requirement.
(ii) If the customer credit is not OK do not supply. Send him an intimation.
(iii) If the customer credit is OK but items in stock are less than his order, supply
what is in stock. Enter the balance to be sent in a back-order file.
Obtain a decision table for the above policy.
C1 : Customer order <= Item in the stock
C2 : Customer credit ok
Y Supply requirement
C2
6.14 Obtain a decision tree to be used by a person to enter the office of a manager.
The conditions to be checked are:
Door open? Ring sign on? Enter sign on? Door locked?
The actions a person takes are:
Ring bell, enter, wait, leave.
After obtaining the decision table, ensure that it has no logical errors and that it is
in minimal form.
C1 : Door open
C2 : Ring sign on
C3 : Enter sign on
C4 : Door locked
Ring bell and enter
Y
C3
Y
N Ring bell and wait
C2 Y
Y Enter
N C3
N
C1
C4 N Leave
N
Y Leave
Observe that C1 is not relevant and not clear in the Decision tree
6.15 A University has the following rules for a student to qualify for a degree with
Physics as the main subject and Mathematics as the subsidiary subject:
(i) he should get 50% or more marks in Physics and 40% or more marks in
Mathematics.
(ii) If he gets < 50% marks in Physics, he should get 50% or more marks in
Mathematics. He should, however, get at least 40% marks in Physics.
(iii) If he gets < 40% marks in Mathematics and 60% or more marks in Physics,
he is allowed to reappear in Mathematics examination only so that he can
qualify.
Pass
Y
C2
Y Appear in mathematics
Y
N C4
C1 N Fail
Y Pass
Y C5
N
C3 N Fail
N
Fail
Pass
>=50
>=50 >=40
C2 Pass
< 40
Repeat math
C1
>=40
>=60
< 40
Fail
(An incorrect tree. This is not correct as rule ii not correctly interpreted)
C1 : Physics Marks
C2 : Math marks
C3 : Math marks >=50%
Pass
C2 Fail
>=50
Pass
C1 >=40 C3
Fail
>=60
Pass
C2
Repeat math
<40
Fail
6.16 You want to go to Delhi from Bangalore. There are three flights per day; early
morning, late morning and evening. You would like to go on 21.4.04 by early
morning flight. If it is not available you will take the late morning flight or evening
flight in that order. If neither is available you are willing to take any flight on
22.4.04 but prefer early and late morning flights., Obtain a decision tree for this
word statement. Is decision table suitable for this problem? If not why?
Book ticket
Y
C1 Book ticket
N C2 Y
Book ticket
N C3 Y
Book ticket
N C4 Y
Book ticket
N Y
C5
Book ticket
N C6 Y
N No ticket available
our purchase office if the inventory level of an item is low. We would also like
to keep track of unfulfilled requests and meet them when items reach the store.
Currently we are not able to pay our vendors promptly due to delays in payment
order reaching our accounts office. We would like to rectify this. We would
also like to bill our customers promptly and keep track of customers' payments"
Develop the processing rules in structured English for the office receiving the
goods specified in the user’s requirements.
6.5 Develop the processing rules in Structured English for the inspection process of
the user’s requirements stated in Exercise 6.4
6.6 Develop the processing rules in Structured English for the purchase process of
the user’s requirements stated in Exercise 6.4.
6.7 Develop the processing rules in Structured English for the accounting process
stated in Exercise 6.4
6.8 Develop the processing rules in Structured English for the stores process stated
in Exercise 6.4
6.9 The policy followed by a company to process customer orders is given by the
following rules:
(i) If the customer order ≤ that in stock and his credit is OK, supply his
requirement.
(ii) If the customer credit is not OK do not supply. Send him an intimation.
(iii) If the customer credit is OK but items in stock are less than his order,
supply what is in stock. Enter the balance to be sent in a back-order file.
Obtain a decision table for the above policy.
6.18 Explain in what types of problems you will use a decision tree approach rather
than a decision table approach.
6.19 You want to go to Delhi from Bangalore. There are three flights per day; early
morning, late morning and evening. You would like to go on 21.4.04 by early
morning flight. If it is not available you will take the late morning flight. If neither
is available you are willing to take any flight on 22.4.04 but prefer early and late
morning flights., Obtain a decision tree for this word statement. Is decisiont able
suitable for this problem? If not why?
6.20 Explain in what types of problemsyou will prefer Structured English process
specification rather than decision tree.
Table P.6.14 A simplified Arrears Procedure
C1: This week's cash > weekly Y Y N N − − − − −
rate
C2: This week's cash > 0 − − Y Y − − N N N
C3: Any cash during last month − − − − N N Y Y Y
C4: Arrears > 2 * weekly rate − − Y N − − N Y −
C5: Arrears > 4 * weekly rate N Y N − N Y − N Y
References
9. Decision tables are used for communicating and documenting complex decision
procedures.
10. In order to obtain a decision table from a word statement, we first isolate in each
sentence a part which specifies the conditions and another part which specifies
the actions to be performed, based on the result of testing the conditions.
Conditions are then grouped in one or more table and the rules are formulated.
11. It is not advisable to have more than four or five conditions per decision table. If
there are many conditions they are grouped and a set of tables are formulated and
linked.
12. Limited Entry Decision Tables (LEDT) use only Y or N answers to conditions.
13. In Extended Entry Decision Tables (EEDT) conditions are formed by combining
the statement in the condition stub with that in the condition entry part of the
decision table. EEDTs are more concise.
14. A decision table is said to be complete if it has all possible distinct elementary
rules. If any rule is missing it is incomplete.
15. If no values can be assigned to the condition variables leading to the missing
rules then the decision table is said to be apparently incomplete. Otherwise it is
really incomplete.
16. If an elementary rule has more than one action specified, then the decision table
is said to be ambiguous. If the elementary rule is logically impossible, then the
ambiguity is apparent; otherwise, it is real.
17. A decision table with real ambiguity or incompleteness has a logical error which
should be corrected.
20. Using basic ideas of Boolean algebra and K-maps, unnecessary conditions and
unnecessary rules are eliminated. The number of conditions to be tested in each
rule can also be minimized by using K-maps.
22. Decision trees are used when sequencing of conditions is important and
conditions are to be tested in order of their priority.
23. Structures English is appropriate when a problem has complex actions and many
loops. Decision tables are appropriate when there are a large number of
conditions to be tested and the logic is complex. Decisiion trees ae preferred
when sequencing of conditions is important.
QUESTION BANK – MODULE 6
6.1 A bank has the following policy on deposits: On deposits of Rs.5000 and above
and for three years or above the interest is 12%. On the same deposit for a
period less than 3 years it is 10%. On deposits below Rs.5000 the interest is 8%
regardless of the period of deposit. Write the above process using
i. Structured English
ii. A decision table
6.2 An organization maintains an employee file in which each record has the
following data:
(Employee No., employee name, employee gross pay).
It has been decided to increase the pay as per the following formula:
For pay of Rs.1000 or less increase 15%
For pay of more than Rs.1000 but up to Rs.2500 increase 10%.
For pay over Rs.2500 increase 5%.
i. Write a structured English processing rule corresponding to the above
policies
ii. Express the policies as a decision table.
6.3 An offshore gas company bills its customer according to the following rate
schedule:
First 500 litres Rs. 10 (flat)
Next 300 litres Rs.1.25 per 100 litres
Next 30,000 litres Rs.1.20 per 100 litres
Next 100,000 litres Rs.1.10 per 100 litres
Above this Rs.1.00 per 100 litres.
The input record has customer identification, name and address, meter reading,
past and present. Write a structured English procedure to obtain a bill for the
customer.
6.5 Develop the processing rules in Structured English for the inspection process of
the user’s requirements stated in Exercise 6.4
6.6 Develop the processing rules in Structured English for the purchase process of
the user’s requirements stated in Exercise 6.4.
6.7 Develop the processing rules in Structured English for the accounting process
stated in Exercise 6.4
6.8 Develop the processing rules in Structured English for the stores process stated
in Exercise 6.4
6.9 The policy followed by a company to process customer orders is given by the
following rules:
(i) If the customer order ≤ that in stock and his credit is OK, supply his
requirement.
(ii) If the customer credit is not OK do not supply. Send him an intimation.
(iii) If the customer credit is OK but items in stock are less than his order,
supply what is in stock. Enter the balance to be sent in a back-order file.
Obtain a decision table for the above policy.
6.10 Obtain a decision table to decide whether on a given date an employee in an
organization has completed one year's service or not.
6.11
Obtain a decision table for an automatic stamps vending machine with the
following specifications:
(i) To dispense 20, 15, 10, 5 paise stamps
(ii) To accept 50, 25, 10, 5 paise coins
(iii) Do not return change if it is necessary to return more than two coins of the
same denomination. In such a case return the customer's coin and turn on
"no change" light.
The machine should dispense a stamp, the right amount of change, no stamp
available, no change available signals etc.
6.12 Obtain a decision table to be used by a person to enter the office of a manager.
The conditions to be checked are:
Door open? Ring sign on? Enter sign on? Door locked?
The actions a person takes are:
Ring bell, enter, wait, leave.
After obtaining the decision table, ensure that it has no logical errors and that it is
in minimal form.
6.13 A University has the following rules for a student to qualify for a degree with
Physics as the main subject and Mathematics as the subsidiary subject:
(i) he should get 50% or more marks in Physics and 40% or more marks in
Mathematics.
(ii) If he gets < 50% marks in Physics, he should get 50% or more marks in
Mathematics. He should, however, get at least 40% marks in Physics.
(iii) If he gets < 40% marks in Mathematics and 60% or more marks in Physics,
he is allowed to reappear in Mathematics examination only so that he can
qualify.
6.14 In instalment buying where payments are make on a weekly basis the action taken
on "an account goes into arrears" is a crucial aspect of the operaiton. Table P6.14
illustrates a simplified arrears procedure. Answer the following questions:
6.16 Obtain a decision tree for exercise 6.13. Is it possible to find out missing rules if
any in a decision tree representation.
6.18 Explain in what types of problems you will use a decision tree approach rather
than a decision table approach.
6.19 You want to go to Delhi from Bangalore. There are three flights per day; early
morning, late morning and evening. You would like to go on 21.4.04 by early
morning flight. If it is not available you will take the late morning flight. If neither
is available you are willing to take any flight on 22.4.04 but prefer early and late
morning flights., Obtain a decision tree for this word statement. Is decisiont able
suitable for this problem? If not why?
6.20 Explain in what types of problemsyou will prefer Structured English process
specification rather than decision tree.
2. K.E. Kendall and J.E.Kendall, “Systems Analysis and Design”, 5th Edition,
Pearson Education Asia, Delhi, 2003. Has a brief discussion of structured
English, Decision Tables and Decision Trees (pages 353 to 369) . Website
www.prenhall.com/kendall has a lot of support material and case study for
students.
LEARNING UNIT 1
(a) (i),(ii),(iv)
(b) (iii),(iv),(ii)
(c) (i),(ii),(iii)
(d) (i) and (ii)
LEARNING UNIT 2
LEARNING UNIT 3
7.3.19 For modulus-11 check digit to detect a single transposition errors the
(a) weights should all be distinct
(b) weights may all be equal and > 0
(c) weights should be less than 8
(d) weights should all be > 0 and distinct
7.3.29 If a field is known to represent days of a month, radix used to check should
be
(a) 30 (b) 31
(c) 28 (d) 29
7.3.34 Reasonableness checks for monthly mess bill of a student if daily rate is
Rs. 40 is
(a) 1200
(b) 12000
(c) 120
(d) 2400
Motivation
application.
Data dictionary lists all data elements but does not say anything about
Relationships are needed to logically group data elements into related sets or
tables.
Such an organization
Logical databases need to be stored in physical media such as a hard disk for use
by applications.
LEARNING UNITS
Inspection
Receiving Items Office
Vendor Process
Delivery Received
note note
Orders Purchase
Office
Discrepancy
note
We will recall the word statement from requirement specification now.
Item name and Vendor name may not be unique to ensure uniqueness
we assign unique codes for them.Name is however still kept to aid
people.
Forms batched
Desirable for the machine to give message when
input is wrong.Not always possible
Error found after elapse of time
Need good controls to automatically detect and if
possible correct errors
Error
Input batch
batch
Update
Error program
report
Data processing
Output report Data
program
store
Name
Address
Bad design : Tendency will be to fill
name on top line. Not enough space for
letters of address
Tick as applicable
Individual
Bad design : Choices are not codified.
Hindu undivided family
Data entry operator will be confused.
Parent/Guardian of minor
(Bad design)
(Good design)
Clear instructions . Enough space for entry manually.Data entry operator can be
simple instructions for data entry
Menus
Templates
Commands
MENUS
User presented several alternatives and asked to type his/her
choice
EXAMPLE
SELECT ALTERNATIVE
Your choice
Roll no
Name
FIRST NAME/INTIALS LAST NAME
Dept code CE CS ME EE IT
CODES
Year
Hostel code A B C D
Roll no 87 1 05 2 465
Characteristics
Given code 49687 modulus check digit obtained as follows:Multiply each digit by
Weights of 2,3,4 etc starting with least significant digit
7*2+8*3+6*4+9*5+4*6=131
131/11=11,remainder 10; or 131 mod (11) =10;
(11-10)=1 append it to the code
The code with check digit=496871
496871 486871
Correct code Code as entered
496871 416879
Error detection - 9*1 + 7*2 + 8*3 + 6*4 + 1*5 + 4*6
= 100/11 Remainder != 0 => Error
Conditions
1. 0<Wk<N
2. As [t-dk] < 10 and Wk < N, N>10
3. Product of integer not a prime => N a prime
4. Smallest prime > 10 =11 => N=11
Or(dk-dm)(Wm-Wk) = p.N
1. (Wm - Wk) = 0 => Weights distinct
2. (dk- dm)< 10 If N> 10 equation satisfied
3. If N prime product cannot be prime
therefore N =11 satisfies conditions
Contents
2. LEARNING UNIT 1
Data Dictionary : its development and use
3. LEARNING UNIT 2
Data input methods : Batch and Interactive
4. LEARNING UNIT 3
Coding technique for unique data representation.
5. References
DATA INPUT METHODS
MOTIVATION
During systems analysis it is essential for an analyst to decide the necessary
and sufficient data for designing an application. DFD gives the dataflows
and stores of a system. Individual data elements of dataflows and stores can
be catalogued. Such a catalogue with description of each element and their
types will be an invaluable aid while designing a system. A catalogue will
also bring out if any data is duplicated/missed. A catalogue will also be an
invaluable documentation of a system. Such a catalogue is called Data
dictionary-It is actually metadata, i.e., data about data. After data dictionary
is designed one needs to determine how the data is to be input. Data input
methods depend on whether the data is filled in by customers in forms
manually and later input by data entry operators or data is directly input by
users on PC’s. We thus need to understand both these methods.
LEARNING GOALS
Inspection
Receivin Office
g Items
Vendor Received
Delivery Process
note note
Orders Purchase
Office
Discrepancy
note
WORD STATEMENT OF REQUIREMENTS FOR THE ABOVE DFD
Vendor sends items with a delivery note while fulfilling an order (along
with the physical items) to a receiving office.
Receiving office compares a delivery note against order placed. If there is
a discrepancy a discrepancy note is sent to purchase office.
Actual items received note is sent to the inspection office along with items
received.
2)
Name : Delivery date
Description : Date item is to be delivered
Origin : Part of delivery note from vendor.Is also in orders data store which
is input to receiving process
Destination : Receiving process
Data type : Numeric Integer
Length : 8 digits
Limits on value : Date field in the form DDMMYYYY.
Should satisfy constraints of a date in calendar
Remarks: Blank fields not allowed.
e.g.05082004 is ok but not 582004
ERROR SOURCES
Errors in on-line data entry due to poor screen design. System should
inform the user immediately when wrong data is input
Errors in off-line data entry due to bad form design and human errors by
users and data entry operator.
Using a form which leaves enough space for writing legibly and has clear
instructions prevents user from making mistakes.
It is not always possible for the machine to give message when input is
wrong, error may be found after elapse of time period. Therefore good
controls to automatically detect and if possible correct errors is required.
BATCH DATA ENTRY
Data
Data entered Keyboard Input file validation
in forms Data entry program
Error
Input batch
batch Update
Error
report program
Data Data
Output report processing store
program
Name
Address
Bad design : Tendency will be to fill name on top line.
Not enough space for letters of address
Parent/Guardian of minor
Enter date Enter date
(Bad design)
(Good design)
Tick oneClear
of the boxes below
instructions. Enough space for entry manually.
As manual data input from forms are slow and expensive, attempts have
been made to automate form reading using scanners, but this needs hand
writing recognition and correct form alignment, which is not always
successful. However, if forms require just darkening some pre-defined
areas they can be machine read and interpreted.
Example – Multiple choice questions in exams where specific boxes are
darkened based on the choice.
INTERACTIVE DATA INPUT
Advent of PC’s and client/server model in computer networks, interactive
data input is now widely used
Advantages are instant response when data is input so that errors are
immediately corrected, flexibility in screen design which minimizes manual
effort. And use of mouse and icons simplifies pre-determined choices of data
Menus
Templates
Commands
EXAMPLE
SELECT ALTERNATIVE
Your choice
TEMPLATE
Example
Roll no
Name
FIRST NAME/INTIALS LAST NAME
Dept code
CE CS ME EE IT
Year
Hostel code
A B C D
Example
Computer : Did you request deletion of record ?
Type Y or N
User :Y
Computer : Give student roll no
User : 56743
Computer : Is name of the student A.K.Jain?
Type Y or N
User :Y
Computer : Is he 1st year student
Type Y or N
User :Y
Computer : Shall I delete name?
User :Y
Normally all three models will occur together in application .In other words
Menu, Forms and Commands are not mutually exclusive. In Graphical user
interface design use of languages such as Visual Basic simplifies design of
user interface.
LEARNING UNIT 3
Roll no 87 1 05 2 465
Roll no BA 1 95 C B R
Characteristics
Codes Concise Expandable Meaningful Comprehensive Precise
n
(∑Widi )mod N=0 by design
i=1
What should be the values of N & Wis
Single transcription error: dk become t
n n
(∑Widi )= (∑Widi ) + t Wk - Wk dk
i=1 i=1
Use modulo n check with n prime > largest code character value
Conditions
For hexadecimal codes symbols = 16, n =17
• For0<Wk<N
alphanumeric codes 26 letters
• As [t-dk] < 10 and Wk < N, N>10
• 10 digits
Product of integer not a prime => N a prime
• Smallest prime > 10 =11 => N=11
36 symbols
Therefore n=37.
VALIDATING INPUT DATA
Radix errors - For example seconds field cannot exceed 60,month field
cannot exceed 12
Range check - Fields should be within specified range
Reasonableness check - Telephone bill cannot be more than 10 times
average bill of last few months
Inconsistent data - For example : 31-04-99
Incorrect data- Batch total checks this
Missing data - Batch control data checks this
Inter field relationship check -
For example - Student of 8lh class cannot have age > 25
REFERENCES
1. Most of the material in this module has been adapted from the book
“Analysis and Design of Information Systems”, 2nd Edition, by
V.Rajaraman, Prentice Hall of India, 2003. Chapter 5 (pp. 49-52) and
Chapter 11 (pp.154-170).
(iii)may be binary
(iv)may be imaginary
a. (i),(ii),(iv)
b. (iii),(iv),(ii)
c. (i),(ii),(iii)
d. (i) and (ii)
7.8 It is necessary to carefully design data input to a computer based system
because
a. it is good to be careful
b. the volume of data handled is large
c. the volume of data handled is small
d. data entry operators are not good
7.9 Errors occur more often when
a. data is entered by users
b. data is entered by operators
c. when data is handwritten by users and entered by an operator
d. the key board design is bad
7.10 Good system design prevents data entry errors by
a. i, ii, iii
b. i, ii, iv
c. i, ii
d. iii and iv
7.11 In on-line data entry it is possible to
a. Give immediate feedback if incorrect data is entered
b. Eliminate all errors
c. Save data entry operators time
d. Eliminate forms
7.12 The main problems encountered in off-line data entry are:
(i)Data are entered by operators
a. i and ii
b. i and iii
c. ii and iii
d. iii and iv
7.13 In interactive data input a menu is used to
a. enter new data
b. add/delete data
c. select one out of many alternatives often by a mouse click
d. detect errors in data input
7.14 In interactive data input a template is normally used to
a. enter new data
b. add/delete data
c. select one out of many alternatives often by a mouse click
d. detect errors in data input
7.15 In interactive data input terminal commands are normally used to
a. enter new data
b. add/delete data
c. select one out of many alternatives often by a mouse click
d. detect errors in data input
7.16 Data inputs which required coding are
a. fields which specify prices
b. key fields
c. name fields such as product name
d. fields which are of variable length
7.17 Key fields are normally coded
a. i and ii
b. i and iv
c. ii and iii
d. i and iii
7.18 A code is useful to represent a key field because
a. it is a concise representation of the field
b. it is usually done by all
c. it is generally a good idea
d. it is needed in database design
7.19 By the term “concise code” we understand that the code
a. conveys information on item being coded
b. is of small length
c. can add new item easily
d. includes all relevant characteristics of item being coded
7.20 By the term “expandable code” we understand that the code
a. conveys information on item being coded
b. is of small length
(i) concise
(ii ) meaningful
(iii) expandable
(iv) comprehensive
a. i and ii
b. ii and iii
c. ii and iv
d. i and iii
7.25 Block codes are
(i)concise
(ii )meaningful
(iii)expandable
(iv)comprehensive
a. i and ii
b. ii and iii
c. iii and iv
d. i and iii
7.26 Group classification codes are
(i)concise
(ii)meaningful
(iii) expandable
(iv)comprehensive
a. i and ii
b. i, ii and iii
c. ii, iii and iv
d. i, ii and iv
7.27 Significant codes are
(i)concise
(ii)meaningful
(iii )expandable
(iv)comprehensive
a. i and ii
b. i, ii and iii
c. ii, iii and iv
d. i, ii and iv
7.28 In significant codes some or all parts of the code
a. are meaningful
b. are usable
c. are significant
d. represent values
7.29 Errors in codes are detected by
a. proper design of code
b. introducing redundant digits/characters designed to detect errors
c. making the code concise
d. making the code precise
7.30 Design of error detecting codes requires good
a. knowledge of mathematics
b. statistical mechanics
c. statistics of errors normally committed during data entry
d. Boolean algebra
7.31 A modulus-11 check digit is used to detect error in
a. alphanumeric codes
b. numeric codes
c. hexadecimal codes
d. serial number code
7.32 A modulus-11 check digit will detect
(i)single transcription errors
(ii)single transposition errors
(iii)multiple digit transcription errors
(iv)and correct a single error
a. i and iii
b. i and iv
c. i and ii
d. iii and iv
a. i, ii
b. i, ii, iii
c. i, ii, iii, iv
d. i and iv
a. i and ii
b. i, ii, iv
c. i, ii, iii, iv
d. iii and iv
7.42 A record total uses
a. batch totals of selected fields
b. count of numbers of records
c. modulus-11 check digit sum of all fields
d. total of selected fields of a record
7.43 If a field is known to represent an angle of a triangle, radix used to check
should be
a. 90
b. 60
c. 180
d. 360
7.44 If a field is known to represent days of a month, radix used to check should
a. 30
b. 31
c. 28
d. 29
7.45 Radix check for a field representing year is
a. Possible
b. not possible
c. not relevant
d. may be tried
7.46 An appropriate range check for marks in an examination paper whose
maximum marks 100 is
a. 100
b. 0 to 100
c. – 99 to +99
d. 99
7.47 An appropriate range check for month field in a date is
a. 12
b. –12 to 12
c. 1 to 12
d. 0 to 12
7.48 An appropriate range check of age of a tenth standard student in a high
school
a. 5 to 15
b. 10 to 25
c. 8 to 20
d. 3 to 18
7.49 Reasonableness checks for monthly mess bill of a student if daily rate is
Rs. 40 is
a. 1200
b. 12000
c. 120
d. 2400
7.50 Batch control totals will detect
(i)incorrect data entry of a field
(ii)missing record
(iii) data records out of order
( iv)inconsistent data
a. i and ii
b. i, ii and iii
c. ii, iii and iv
d. iii and iv
7.51 If records are out-of-order then error may be detected by
a. batch control totals
b. radix check
c. sequence number check
d. range check
7.52 In payroll record a reasonable inter-field relationship check is to relate
salary field with
a. age field
b. department field
c. designation field
d. increment field
7.2 What are the main principles used in designing forms for data entry?
(i) Reduce human efforts in filling forms
(ii) Minimize possibility of errors in entering data from forms into a computer’s
secondary memory
(iii)Minimize effort in entering data from forms into a computer’s secondary
memory.
7.3 Design a form to be used by a salesman to report to the office about the sales
executed by him at different customer locations
See Table below
A Salesperson Form
Sales Person
Your name : M . R A M A M U R T H Y
Your code : M R 4
Sales details D D M M Y Y
Date:
Item Code Description Qty. Sold Price
Customer details
Customer name:
Customer code:
Customer address:
PIN
7.6 What is the advantage of serial number code? Why is it not normally used?
It is concise, expandable and precise. It is not meaningful or comprehensive and
thus not often used.
7.7 Design a group classification code to code (i) motor vehicles, (ii) music cassettes,
and (iii) books.
Mnemonic codes
Vehicle types code Manufacturer Code
Two wheeler TW Bajaj BAJ
Three wheeler RW Telco TEL
Private car PC Leyland LEL
Taxi TA Maruti MAR
Bus BU Ambassador AMB
Vespa VSP
Fiat FAT
Honda HDA
7.9 Add a modulus-11 check digit to the codes (i) 48467 (ii) 96432 and (iii)
87646257.
Check digits are respectively
(i) 9 (ii) 8 (iii) 3.
n n
∑ widi = ∑ widi + (wq+ wr+ ws)t =p.N
i=1 i=1
i == q,r,s
The condition for detecting error is
(wq + wr + ws)(x – t) == p.N
Therefore,
(wq + wr + ws) == p.N
Sum of any subset of weights should not be equal to 11 or a multiple of 11.
Possible only for codes less than 4 digits long, including check digit.
7.12 A see-saw error is one in which one digit of the code is increased by x and
another decreased by x. For example, 486732 becoming 456762. When can
modulus-N check detect such errors?
Let the kth digit become (dk + t) and qth digit (dq – t)
∑n
Weighted sum = i =1 widi + wkt – wqt with these errors condition is
∑n
i =1 widi + t(wk – wq) == p.N
Satisfied if (i) wk == wq
(ii) N is prime
(iii) |wk – wq| < N
These are satisfied if wk = wq, wk, wq > 0 and wk, wq < N.
Therefore all weights are distinct
7.13 Why is it useful to assign sequence numbers for data records? What are the
types of errors detected by sequence numbering?
Can trace missing records using sequence numbers. Records out of sequence can
be detected. Excess records (with duplicate sequence numbers) can be detected.
7.14 A set of data records for student examination results has the following
format:
Roll No. Name Marks (out of 100)
Paper 1 Paper 2 Paper 3 Paper 4
Design for these records a batch control record and a record control field
and other appropriate checks for the fields
Batch control record
(i) No. of records in batch
(ii) Sum of marks in papers 1 to 4
(iii) No. of records with marks in papers 1 to 4 >=60
(iv) No. of records with marks in papers 1 to 4 < 40
Record check (i) Sum of marks in papers 1 to 4, (ii) No. of papers in record with
marks >= 60
Other checks for the fields
(i) Modulus-11 check for Roll no.
(ii) Each marks field <= 100, >= 0
(iii) Sum field <= 400
(iv) Flag record with marks in any paper >= 80 and another paper <= 30.
7.15 What is the difference between range check and radix check?
Range gives maximum allowable value for a field as determined by the analyst.
For example in one paper if maximum marks is 50, range check will use 50 and if
it is 100 in another it will use 100 as range. Radix is however an invariant. No. of
hours/day are always 24 and is universally known.
7.16 Give some examples of fields where reasonableness check would be applicable.
If normal electricity consumption of a consumer is 250 kWh/month, a value of
1500 kWh in a month will be considered unreasonable. Other examples are:
(i) Deductions in a paybill
(ii) Price/unit of some items
(iii)Qty. ordered in comparison to normal averages.
1 2 3
Verify
Delete Manual
0 1 2 3
Individual Retailer Distributor Wholesale
7.19 Design a dialogue hierarchy and the screens for a system used to reserve
seats in long distance buses.
1 2 3
Screen 1
Reservation 1 Cancellation 2 Change of date 3
1 2 3 4
Entrance 5 6 already
booked
7 8 9 10
11 12 13 14
15 16 17 18
19 20 21 22
23 24 25 26
27 28 29 30 31 32
•
Question Bank – 7
7.5 For the requirements statement given in PPT 7.1.3 (Vendor supplying items to a
company) develop the data dictionary entry for vendor code, vendor name and
vendor address.
7.6 What is the difference between on-line and off-line data entry?
7.7 Why are input data records divided into batches for off-line data entry?
7.9 What are the main principles used in designing forms for data entry?
7.10 A good and a bad design for entering date in a form is given in Section PPT
7.2.5 and 7.2.6. What are the reasons for saying that one of them is good and the
other bad?
7.11 Design a form to be used by a salesman to report to the office about the sales
7.12 What is the main difference between menus, templates and command modes of
7.13 Design a dialogue hierarchy for entering data on customers (of a manufacturer).
7.14 Design a dialogue hierarchy and the screens for a system used to reserve seats in
7.16 Can the name of a person be used as a code, for say, his bank account? If not,
why?
7.22 What is the advantage of a serial number code? Why is it not normally used?
7.24 Design a group classification code to code (i) motor vehicles,, (ii) music
7.27 Add a Modulus-11 check digit to the codes (i) 48467, (ii) 96432, and (iii)
87646257.
character to the codes (i) 4AB9W, (ii) XBY483, and (iii) CAZ4642.
7.29 The following code was entered by an operator:449632. The last digit is a
7.30 If a code uses hexadecimal digits, what should be N if the modulus-N check digit
system is to be used with such codes? What are the allowable weights if single
digit transcription error (i.e., a code such as 45565 is wrongly entered as 48868),
7.32 A see-saw error is one in which one digit of the code is increased by x and
7.33 Why is it useful to assign sequence numbers for data records? What are the
7.34 What is the purpose of batch control record? What is the type of information
A set of data records for student examination results has the following format:
Design for these records a batch control record and a record control field and any
7.35 Give some example of fields for which a radix error check is appropriate.
7.36 What is the difference between range check and a radix check?
7.37 What are the appropriate range checks for the age of individuals in an employee
file, a high school student file, and height of students in a student file.
7.38 Give some examples of fields where reasonableness check would be applicable.
7.40 What is the main difference between menus, templates and command modes of
7.41 Design a dialogue hierarchy for entering data on customers (of a manufacturer).
7.42 Design a dialogue hierarchy and the screens for a system used to reserve seats in
References
1. Most of the material in this module has been adapted from the book “Analysis and
Design of Information Systems”, 2nd Edition, by V.Rajaraman, Prentice Hall of
India, 2003. Chapter 5 (pp. 49-52) and Chapter 11 (pp.154-170).
2. Good material on Data Dictionary is found in K.E.Kendall and J.E.Kendall ,
“Systems Analysis and Design”, 5th Edition, Pearson Education Asia, 2003.
Chapter 10 on Data Dictionaries. Chapter 16 Designing Effective Input.
1. Data dictionary is a catalogue of all data used in an application. Each entry in the
dictionary has the name of the data, its type, origin, destination, range of
3. Data dictionary is developed using data flows in a DFD and contents of data
stores in DFD
4. Data may be input to a computer off-line or on-line. In on-line entry a user enters
data interactively via a video terminal connected to the computer. In off-line data
entry data filled in forms are entered by operators in a separate PC or a data entry
machine.
6. In off-line data entry, batches of data are formed and entered. They are checked
7. To reduce errors in input, it is essential to carefully design the forms used for
entering data.
8. For interactive data input, special screens are designed on video terminals for easy
data entry. Errors in data entry are instantly detected by a validation program
to enter new data, and a command method to add and delete data.
11. These methods are combined to provide a user the most appropriate technique for
12. Important data elements are coded. Codes are necessary for unique identification,
13. There are many methods for coding. An ideal code must be concise, expandable,
14. Codes are classified as: (i) Serial number codes, (ii) Block codes, (iii) Group
classification codes, and (iv) Significant codes. Group classification codes and
They are, however, not concise, Serial and Block number codes are more concise.
They are also precise and expandable but are not meaningful and comprehensive.
15. Any error made in entering important data fields such as account codes and
16. The most common errors made during data entry are: a single digit is incorrectly
entered or any two digits in the code are interchanged. These errors are called
respectively single transcription and transposition errors and account for 96% of
17. Given a code, the digits in it starting from the last digit are multiplied by weights
2, 3, 4, etc., and the products are added. The sum is divided by 11. The
remainder is subtracted from 11. This number (which is called a check digit) is
appended as the last digit of the code. The code constructed in this way is called
18. After data entry the digits in the code starting from the last digit are multiplied by
weights 1, 2, 3, 4, etc., and the products are added. The sum is divided by 11. If
19. Modulus-11 check digit code guarantees detection of all single transcription and
20. It is essential to design good data validation programs to prevent data entry errors
from corrupting files of input data. Validation programs need information for
preparation.
21. Important control mechanisms are; giving unique sequence numbers to each data
22. The same data is entered by two different persons and compared to reduce
transcription errors.
23. Besides this, individual data fields are checked using information on their range
files interactively.
Question Bank – 7
7.5 For the requirements statement given in PPT 7.1.3 (Vendor supplying items to a
company) develop the data dictionary entry for vendor code, vendor name and
vendor address.
7.6 What is the difference between on-line and off-line data entry?
7.7 Why are input data records divided into batches for off-line data entry?
7.9 What are the main principles used in designing forms for data entry?
7.10 A good and a bad design for entering date in a form is given in Section PPT
7.2.5 and 7.2.6. What are the reasons for saying that one of them is good and the
other bad?
7.11 Design a form to be used by a salesman to report to the office about the sales
7.12 What is the main difference between menus, templates and command modes of
7.13 Design a dialogue hierarchy for entering data on customers (of a manufacturer).
7.14 Design a dialogue hierarchy and the screens for a system used to reserve seats in
why?
7.22 What is the advantage of a serial number code? Why is it not normally used?
7.24 Design a group classification code to code (i) motor vehicles,, (ii) music
7.27 Add a Modulus-11 check digit to the codes (i) 48467, (ii) 96432, and (iii)
87646257.
character to the codes (i) 4AB9W, (ii) XBY483, and (iii) CAZ4642.
7.29 The following code was entered by an operator:449632. The last digit is a
7.30 If a code uses hexadecimal digits, what should be N if the modulus-N check digit
system is to be used with such codes? What are the allowable weights if single
digit transcription error (i.e., a code such as 45565 is wrongly entered as 48868),
7.32 A see-saw error is one in which one digit of the code is increased by x and
7.33 Why is it useful to assign sequence numbers for data records? What are the
7.34 What is the purpose of batch control record? What is the type of information
A set of data records for student examination results has the following format:
Design for these records a batch control record and a record control field and any
7.35 Give some example of fields for which a radix error check is appropriate.
7.36 What is the difference between range check and a radix check?
7.37 What are the appropriate range checks for the age of individuals in an employee
file, a high school student file, and height of students in a student file.
7.38 Give some examples of fields where reasonableness check would be applicable.
7.40 What is the main difference between menus, templates and command modes of
7.42 Design a dialogue hierarchy and the screens for a system used to reserve seats in
1. Most of the material in this module has been adapted from the book “Analysis and
Design of Information Systems”, 2nd Edition, by V.Rajaraman, Prentice Hall of
India, 2003. Chapter 5 (pp. 49-52) and Chapter 11 (pp.154-170).
2. Good material on Data Dictionary is found in K.E.Kendall and J.E.Kendall ,
“Systems Analysis and Design”, 5th Edition, Pearson Education Asia, 2003.
Chapter 10 on Data Dictionaries. Chapter 16 Designing Effective Input.
MODULE 8
LEARNING UNIT 1
8.1.1 An entity is
(a) a collection of items in an application
(b) a distinct real world item in an application
(c) an inanimate object in an application
(d) a data structure
8.1.3 A relationship is
(a) an item in an application
(b) a meaningful dependency between entities
(c) a collection of related entities
(d) related data
LEARNING UNIT 2
8.2.5 A pilot can fly three types of planes and a plane can be piloted by any qualified
pilot. The pilot-plane type relationship is
(a) N:3
(b) 3:N
(c) 1:3
(d) 3:1
8.2.6 A student can take not more than 5 subjects in a semester. The number of
students allowed in a subject in a semester is not more than 40. The student
– subject relationship is:
(a) 5:40
(b) 40:5
(c) N:5
(d) 40:M
8.2.7 The following E-R diagram is interpreted as follows:
(a) A doctor treats upto N patients
(b) A doctor treats exactly N patients
(c) A doctor may treat upto N patients; Some doctors may not treat any patients
(d) A doctor will treat patients based on some conditions
Doctor
Treat
Patients
8.2.8 A relation is
(a) an entity
(b) a relationship
(c) members of a relationship set
(d) members of an entity set or a relationship set
LEARNING UNIT 3
8.3.7 The number of normal forms which has been proposed and discussed in the
book are
(a) 3 (b) 4
(c) 5 (d) 6
8.3.24 Given the relation of Exercise 10.7.5 it is reduced to the following BCNF
relation
(a) Supplier (s_ids, s_name)
Purchase (s_id, p_order, qty)
(b) Supplier (s_id, s_name)
Purchase (p_order, qty)
(c) Purchase (s_id, p_order)
Supplier (s_name, qty)
(d) Supplier (s_id, s_name, qty)
Purchase (s_id, p_order)
8.3.28 The project guidance relation of Exercise 10.8.3 needs further normalization
to 5 NF because
(a) There are too many multivalued dependencies
(b) Multivalued dependency and simple dependency are mixed in the 4 NF
relation
(c) Spurious tuples got introduced when the 4 NF relations are combined due to
the fact that a professor can guide only specified projects
(d) 4 NF relations have composite keys
LEARNING UNIT 4
8.4.1 The ORDER PLACED FOR relation in Mini-case example 1 has the
composite key order no, item code because
(a) item code has a multivalued dependency with order no.
(b) the non-key attributes are dependent on the composite key order no, item
code
(c) if order no is the only key we cannot find qty. ordered, price/unit, delivery
time
(d) if item code is the only key we cannot find order no. uniquely
8.4.2 The relation SUPPLIES in Mini-case example 1 of Section 10.10 requires
normalization because
(a) it has a composite key with three attributes
(b) the non-key attributes are dependent on part of composite key
(c) the attributes item code and order no of the composite key have multivalued
dependency
(d) vendor code and order no have a multivalued dependency
LEARNING UNIT 5
8.5.1 By redundancy in a file based system we mean that
(a) unnecessary data is stored
(b) same data is duplicated in many files
(c) data is unavailable
(d) files have redundant data
8.5.2 Data integrity in a file based system may be lost because
(a) the same variable may have different values in different files
(b) files are duplicated
(c) unnecessary data is stored in files
(d) redundant data is stored in files
8.5.6 A database is a
(a) collection of files
(b) collection of inputs and outputs of application
(c) collection of related data necessary to manage an organization
(d) data resource of an organization
8.5.10 A DBMS is
(a) another name for database system
(b) independent of a database
(c) dependent on application programs
(d) is a set of procedures which manage a database
8.5.11 A DBMS
(a) is a set of procedures
(b) manages a database
(c) is a set of procedures to manage a database to provide data as required by
applications
(d) provides data to applications
8.5.13 Database is
(a) an important resource of an organization
(b) not relevant to existing programs
(c) not relevant for future programs
(d) not as good as files as there is redundancy
8.5.18 DBMS
(a) does not allow replication of data
(b) allows controlled replication of data if it improves performance
(c) does not allow common data to be duplicated
(d) does not allow replication as it adversely affects reliability
8.6.4 When a logical model is mapped into a physical storage such as a disk store
the resultant data model is known as
(a) conceptual data model
(b) external data model
(c) internal data model
(d) disk data model
Motivation
During systems analysis it is essential for an analyst to decide the necessary and
Such a catalogue with description of each element and their types will be an
Such a catalogue is called Data dictionary-It is actually metadata, i.e., data about
data.
After data dictionary is designed one needs to determine how the data is to be
input.
Data input methods depend on whether the data is filled in by customers in forms
manually and later input by data entry operators or data is directly input by users
on PC’s.
Because of large volume special controls are needed to ensure correctness of data
Key data elements are important to identify records. They need to be unique,
Learning Units
8.1 Entity-relationship(E-R) modelling of data elements of an
application.
8.2 Organization of data as relations
8.3 Normalization of relations
8.4 Creation of logical relational database
8.5 Objectives of database management system(DBMS)
8.6 Overview of DBMS.
Data dictionary lists all data elements but does not say
anything about relationships between data elements
Such an organization
Example
Entity : Teacher
Attributes : Teacher code,teacher name,department,building,room
no,phone no.
Relationship : Teaches
Attributes : Teacher code,Course no,course name,semester offered,
credits, prerequisites
ENTITY PLACED
SUPPLIES WITH
RELATIONSHIP
ENTITY
ITEMS VENDOR
V1
Vendor1 supplies
i1 items il,i3,i5
i2
V2 i3 Vendor2 supplies
i4 items il and i2
V3 i5
Vendor3 supplies
Vendor supplies items i4 and i5
items
Observe a vendor can supply many items
Observe also that many vendors can supply the same item
vendor vendor
N N
supplies supplies A vendor cannot supply more
6 than 6 items
M
N vendors can supply a
items items given item
vendor
2 An item cannot be supplied by more than 2 vendors
supplies
M
items
Teacher id
teacher Name
Dept
1 address
Teacher id
advises student id
N Student id
Name
students Dept
address
Teacher
advises
students
Entity sets and relationship sets are useful in designing data bases
Entity - relationship sets may be put as a table of values. This is
called a relation
Relation name is entity name
A row of a relation has a member of an entity or a relationship set
Vendor relation:
Vendor(Vendor code, Vendor name,address )
Relationship
UNNORMALIZED RELATION
Order no order date Item lines
Item code Qty Price/unit
4NF
BCNF
3NF
2NF
1NF
Name
Address
Roll no
Department
Called relation key
Year of study
Roll no. determines uniquely values of all other attributes in the relation
Qty.supplied
Vendor code
Price/unit
Composite key
DELETION: If order no1886 is deleted the fact that item code 4629 costs 20.25 is lost
A relation is in 2NF if
It is in 1NF
Non key attributes functionally dependent on key attribute
If key composite then no non-key attribute can functionally
depend on one part of the key.
Composite key
Order date
Dependency diagram Order no
Price/unit
Not in 2NF as non key attribute dependent on part of a key attribute(Price/unit dependent
on Item code)
2 NF Relations
Relation in 2NF
There is functional dependence between some Non-key attributes
This needs further normalization as the non-keys being dependent
leads to unnecessary duplication of data
EXAMPLE
Student( Roll no, name, dept, year, hostelname )
- If students in a given year are all put in one hostel then year and the hostel are
functionally dependent
- Year implies hostel-hostel name unnecessarily duplicated
- If all students of the year 1 changed to another hostel many tuples need change
Assume
* Relation has more than 1 possible key
* Keys composite
* Composite keys have common attribute
* Non-key attributes not dependent on one another
Thus relation in 3NF, still there could be problems due to
unnecessary duplication and loss of data accidentally
RELATION
Professor code Dept Head of dept Percent time
P1 Physics Ghosh 50
P1 Maths Krishnan 50
P2 Chem Rao 25
P2 Physics Ghosh 75
P3 Maths Krishnan 100
P4 Maths Krishnan 30
P4 Physics Ghosh 70
Observe two possible composite keys (Prof code, Dept) or (Prof
code,Head of Dept)
If professor P2 resigns the fact that Rao is Head of Chemistry is lost as lines
3 & 4 will be deleted
8.3.21 Systems Analysis And Design © V. Rajaraman 44 of 72
EXAMPLE (CONTD)
The dependency diagrams are:
Percent time a Prof.spends in the department is dependent on Prof code and Department
Vendor Items V
Item
P
Project
Multivalued dependency
Problems
•Item I1 duplicated for VI and also for V3
•If VI is to supply to project P2 but the item to be supplied is not decided
there will be blank in item column
Relation in BCNF but still has above problem and need normalization to 4NF
8.3.27 Systems Analysis And Design © V. Rajaraman 50 of 72
NORMALIZATION TO 4NF
RESULTING RELATIONS
With this relation added we will not get the spurious tuples (V1,P2,I1),(V3,P3,I1)
The two 4NF relations together with the vendor-project relation called 5NF relations
obtained by decomposing the original vendor-project-item relation which has a BCNF
relation
Placed Placed
ER - DIAGRAM for with
Items Vendors
Supply
NORMALIZATION:
Relation 1,4,5 are in 3NF and need no change
Relation 2 has a composite key,attributes of composite key not related.
Non key attributes dependent on composite key,need no change.
Relation 3: order no and item code have multivalued dependency.Relation2
already has order no,item code as composite key.Relation 3 is reduced to:
Information on dependence
•A teacher may teach more than one course in a semester
•A teacher belongs to only one dept.
•A student may take many courses in a semester
•A course may have many sections taught by different teachers
E-R Diagram
Teacher Students
M K
Teaches Attends
N P
Courses
Application1
Database
Database Management
Application2 System
DBMS Organized collection of data
Application1 for several applications
Current 1
applications 2
Conceptual logical
p model model Internal
Future q
Applications
Model
1
Application 2 External Database
programs p Model
q
Implement
Contents
2. LEARNING UNIT 1
Entity-relationship(E-R) modelling of data elements of an
application.
3. LEARNING UNIT 2
Organization of data as relations
4. LEARNING UNIT 3
Normalization of relations
5. LEARNING UNIT 4
Creation of logical relational database
6. LEARNING UNIT 5
Objectives of database management system(DBMS)
7. LEARNING UNIT 6
Overview of DBMS
8. References
LOGICAL DATABASE DESIGN
MOTIVATION
LEARNING GOALS
ENTITY-RELATIONSHIP MODEL
ENTITY SETS
An entity set is collection of similar entities
Example
Entity : Teacher
Attributes : Teacher code,teacher name,department,building,room no,phone
no.
Relationship : Teaches
Attributes : Teacher code,Course no,course name,semester offered, credits,
prerequisites
ENTITY-RELATIONSHIP DIAGRAM
Some entities depend on one another, for example, entity vendor and entity
items are related as vendors supply items. These relationships are described
by entity-relationship diagrams (or ER diagrams). In an ER diagram entities
are represented by rectangles and relationships by diamond shaped boxes
VENDOR ORDERS
ENTITY
SUPPLIES PLACED
WITH
RELATIONSHIP
ITEMS VENDOR
ENTITY
HOW TO IDENTIFY ENTITIES AND RELATIONSHIPS
When a word statement is used to describe applications, nouns normally are
entities and verbs relationships.
Noun
Noun Verb
Order no
ORDERS Order date
Order no
Order no Placed Placed Vendor code
Item code for with Item code
Qty ordered
Price/unit
RELATION CARDINALITY
Item code
Vendor code
Item name items vendors
Relation cardinality - number of relationships in which an entity can appear.
Vendor name
An entity may appear in- Only one relationship or in fixed number of address
relationships or in a variable number of relationships .
V1 i1 Vendor1 supplies items
il,i3,i5
i2
V2 i3 Vendor2 supplies items
i4 il and i2
V3 i5 Vendor3 supplies items
i4 and i5
Vendor supplies items
Observe a vendor can supply many items, and also that many vendors can
supply the same item
A vendor can
supply upto A vendor cannot supply more
M items than 6 items
N vendors can supply a
given item
vendor vendor
N N
supplies supplies
N vendors
M can supply a 6
given item
items items
vendor
2
supplies An item cannot be supplied by more than 2 vendors
A vendor cannot supply more than M items
M
items
LEARNING UNIT 2
Entity sets and relationship sets are useful in designing data bases.
Entity - relationship sets may be put as a table of values. This is called a
Relation. Relation name is entity name. A row of a relation has members of
its attributes. The column headings are the names of the attributes.
EXAMPLES OF A RELATION
RELATION NOTATION
Relation is an entire table
Vendor relation:
LEARNING UNIT 3
Normalization of relations
NORMALIZING RELATIONS
UNNORMALIZED RELATION
5NF
4NF
BCNF
3NF
2NF
1NF
Higher normalization steps are based on :
FUNCTIONAL DEPENDENCY
X Y
e.g. Given Item code - Item name known
composite attribute
DEPENDENCY DIAGRAM
Student (Roll no, name, address, dept., year of study )
Name
Address
Roll no
Department
Qty.supplied
Vendor
Price/unit
Composite key
WHY NORMALIZE RELATIONS-REVISITED
We normalize relations to ensure the following:
While operating on data base we do not lose data or introduce
inconsistencies. Insertion of new data should not force leaving blank fields
for some attributes. We do not delete vital information during update. In a
normalized relation it is possible to change the values of the attribute
without exhaustively searching all tuples of the relation.
EXAMPLE TO SHOW NEED FOR NORMALIZATION
DELETION: If order no1886 is deleted the fact that item code 4629 costs
20.25 is lost
UPDATE: If price of item 4627 is changed, all instances of this item code
have to be changed by exhaustive search-errors possible
IDEAL NORMALIZATION
2NF FORM
1 NF Orders Relation
2 NF Relations
EXAMPLE
Student (Roll no, name, dept, year, hostelname )
- If students in a given year are all put in one hostel then year and the hostel
are functionally dependent
- Year implies hostel-hostel name unnecessarily duplicated
- If all students of year 1 are moved to another hostel many tuples need to be
changed.
NORMALIZATION TO 3NF
Example :1
Employee (empcode,name,salary,project no,termination date of project)
* termination date (non-key attribute)
Dependent on project no. another non-key attribute
•Thus needs normalization
3NF relations : Employee(empcode,name,salary,projectno)
Project( Projectno ,termination date of project)
Example:2
Passenger(Ticket code,Passenger name,Train no,Departure time,Fare)
Train no. and departure time are non-key attributes and are functionally
dependent
3NF Relations :
Passenger(Ticket code ,Passenger name,Train no, Fare)
Train details (Train no., departure time)
Assume
* Relation has more than 1 possible key
* Keys are composite
* Composite keys have common attribute
* Non-key attributes not dependent on one another
Thus though the relation is in 3NF, still there could be problems due to
unnecessary duplication and loss of data accidentally.
EXAMPLE
Professor (Prof code, Dept, Head of Dept, Percent time)
RELATION
Professor code Dept Head of dept Percent time
P1 Physics Ghosh 50
P1 Maths Krishnan 50
P2 Chem Rao 25
P2 Physics Ghosh 75
P3 Maths Krishnan 100
P4 Maths Krishnan 30
P4 Physics Ghosh 70
Percent time
Head of Dept
Dept
Prof code
Percentage time a Prof. spends in the department is dependent on Prof code
and Department
Head of Dept depends on department
Observe the given relation is in 3NF as non key attributes are independent of
one another and wholly dependent on key. However there are problems due
to the fact that there are two possible composite keys, and attribute of on of
the composite key depends on a attribute of other possible composite key
NORMALIZING TO BCNF
EXAMPLE
Composite keys
1.Prof code ,Dept 2. Prof code,Head of Dept
Example :
Vendor Item
Project
Multivalued dependency
V
Item
Vendor code Project code Item code
VI PI I1
VI PI I2
VI P3 I1
VI P3 I2
V2 PI I2
V2 PI I3
V3 PI I1
V3 P2 I1
Problems
Solution:
RESULTING RELATIONS
Project Item
Vendor Item
VI I1
VI I2 P1 I1
V2 I2 P1 I2
V2 I3 P1 I3
V3 I1 P2 I1
P3 I1
P3 I2
Vendor Capability Project needs
OBSERVE NO UNNECESSARY DUPLICATION
In 4NF relations vendor capability to supply items and projects need for
items are there.
They are obtained by splitting the given relation
Looking at relation project-item we see that project P2 requires item I1
From vendor item relation we see that I1 is supplied by V1.
This would lead us to infer that(V1,P1,I1)must be a tuple in the original
relation but it is not.In other words V1 does not supply item I1 to project P2.
This spurious tuple has occurred because vendor V1 may not be allowed to
supply item I1 to project P2
Similarly another spurious tuple is (V3, P3, I1)
We thus need a third relation which specifies the vendors who are allowed
to supply to projects
Vendor Project
V1 P2
V1 P3
V2 P1
V3 P1
V3 P2
Vendors permitted for projects
ER - DIAGRAM
Orders R
N
Placed
Placed
with S
for
M
Items P Q
Vendors
Supply
RELATIONS-UNNORMALIZED
EXAMPLES OF UNNORMALIZED RELATIONS
1.ORDERS(Order no,Order date)
2.ORDERS PLACED FOR(Order no,item code,qty ordered,delivery time
allowed)
3.ORDERS PLACED WITH(order no,vendor code,item code)
4.VENDOR(Vendor code,vendor name,vendor address)
5.ITEM( item code,item name,price/unit)
6.SUPPLIES(vendor code,item code,order no,qty.supplied,date of supply)
NORMALIZATION:
Relation 1,4,5 are in 3NF and need no change
Relation 2 has a composite key,attributes of composite key not related.
Non key attributes dependent on composite key,need no change.
Relation 3: order no and item code have multivalued dependency.Relation2
already has order no,item code as composite key.
Consider relation 6 :
6.SUPPLIES (vendor code, item code, order no, qty supplied, date of
supply)
•It has a composite key with three attributes
•Attributes item code and order no have multi-valued dependency as
many items can be supplied in one order
• And hence need normalization to 4NF
Normalized to
8. ACTUAL SUPPLIES (order no, item code, qty supplied, date of
supply)
9. VENDOR CAPABILITY (vendor code, item code )
The second relation may have items not yet ordered with a vendor but which
could be supplied by vendor
The Normalized relations are : 1,2,4,5,7,8,9
STUDENT-TEACHER-COURSES EXAMPLE
Information on dependence
•A teacher may teach more than one course in a semester
•A teacher belongs to only one dept.
•A student may take many courses in a semester
•A course may have many sections taught by different teachers
E-R Diagram
Teacher Students
M K
Teaches Attends
N
P
Courses
RELATION-UNNORMALIZED
CONCLUSIONS
A full fledged course in Data Base will describe in detail the mathematical
basis and methods of querying a database
LEARNING UNIT 5
Application1
Database Database
Management
System
Application2 DBMS Organized collection of data for several
applications
Application1
Overview of DBMS.
OVERVIEW OF DBMS
Current 1
application 2 Conceptual logical
model Internal
p model Model
Future q
Applications
1
2
External Database
Application
programs
Model
p
q
COMPONENTS OF DBMS
Data Definition Languages (DDL) to define conceptual, logical
and external models
Data manipulation and query language called Structured Query
Language (SQL)
Features to implement security
Checkpointing and roll back recovery procedures
Record of accesses. Audit trail of changes
DATABASE ADMINISTRATOR
1. Most of the material in this module has been adapted from the book
“Analysis and Design of Information Systems”, 2nd Edition, by
V.Rajaraman. Chapter 10 Logical Data Base Design, pp.130 to 153.
Chapter 12 , Data Base Management Systems, pp. 171 –1719.
8.1.1 An entity is
(a) a collection of items in an application
(b) a distinct real world item in an application
(c) an inanimate object in an application
(d) a data structure
8.1.2 Pick entities from the following:
(i) vendor
(ii) student
(iii) attends
(iv) km/hour
(a) i, ii, iii (b) i, ii, iv
(c) i and ii (d) iii and iv
8.1.3 A relationship is
(a) an item in an application
(b) a meaningful dependency between entities
(c) a collection of related entities
(d) related data
8.1.4 Pick the relationship from the following:
(a) a classroom
(b) teacher
(c) attends
(d) cost per dozen
8.1.5 Pick the meaningful relationship between entities
(a) vendor supplies goods
(b) vendor talks with customers
(c) vendor complains to vendor
(d) vendor asks prices
8.1.6 The entity set is a
(a) set of entities
(b) collection of different entities
(c) collection of related entities
(d) collection of similar entities
8.1.7 Pick entity set from the following
(a) all vendors supplying to an organization
(b) vendors and organizations they supply
(c) vendors and transporters
(d) a vendor supplying to many organizations
8.1.8 Attributes are
(i) properties of relationship
(ii) attributed to entities
(iii) properties of members of an entity set
(a) i (b) i and ii
(c) i and iii (d) iii
8.1.9 The attributes of relationship teaches in teacher teaches course should be
Doctor
Treat
Patients
8.2.8 A relation is
(a) an entity
(b) a relationship
(c) members of a relationship set
(d) members of an entity set or a relationship set
8.2.9 Rows of a relation are called
(a) tuples
(b) a relation row
(c) a data structure
(d) an entity
8.2.10 The rows of a relation
(a) must be in specified order
(b) may be in any order
(c) in ascending order of key
(d) in descending order of key
8.2.11 The columns of a relation
(a) must be in specified order
(b) may be in any order
(c) with key field in first column
(d) with largest width column last
8.2.12 Relations are used in logical database design because
(i) sound theory of relations facilitates systematic design of relational
databases
(ii) they are very popular
(iii) they are flat files and easy to store and retrieve from computer’s
memory
(iv) E-R diagrams allow design of relations
(a) i and ii (b) i and iii
(c) ii and iii (d) iii and iv
8.3.1 Normalization is a process of restructuring a relation to
(a) minimize duplication of data in a database
(b) maximize duplication of data to ensure reliability
(c) make it of uniform size
(d) allow addition of data
8.3.2 Normalization of database is essential to
(i) avoid accidental deletion of required data when some data is deleted
(ii) eliminate inconsistencies when a data item is modified in the database
(iii) allows storage of data in a computer’s disk
(iv) use a database management system
(a) i and iii (b) i and ii
(c) ii and iii (d) ii and iv
8.3.3 The process of normalization
(a) is automatic using a computer program
(b) requires one to understand dependency between attributes
Attributes are specific properties of entities. For example, the attributes of the
entity car is (Registration no., chassis no., engine no., h.p., no. of seats, model,
manufacturer).
Professor Driver
Writes Drives
Books Cars
(iv) (v)
8.14 For Question 8.13, obtain relations for each entity. Normalize the relations
(i) CUSTOMER (A/c no., name, address, type of account)
WITHDRAW (A/c no., amount withdrawn, date)
ACCOUNT (A/c no., A/c type, balance amount)
(ii) STUDENT (Roll no., name, address, dept., year)
WRITES EXAM (Roll no., subject no., exam date, attempt no.)
SUBJECT (Subject no., name, taught in sem., pre-requisites)
(iii) STUDENT (Roll no., name, address, dept., year)
ATTENDS (Roll no., course no., semester, calendar year)
CLASSES (course no., teacher id., time of class, location of class)
(iv) PROFESSOR (Professor id., name, address, affiliation)
(Affiliation gives the University he is working in and the department in that
University)
WRITES (Professor id., book id., book name, year written)
BOOKS (Book id., book name, authors, publisher, no. of pages, price, year
of publication)
(book id. Is standardized as ISBN no. in India)
(v) DRIVER (License no., name, address, type, validity, date of license)
DRIVES (License no., registration no.)
CAR (Registration no., manufacturer, model, year, horse power, chassis
no., body no., no. of seats)
N
Parts
Made by Made
using
M 1
N M
Machinists Operate on Machines
Applicant
Sends
Sends
reply to
8.17 A magazine is published monthly and is sent by post to its subscribers. Two
months before the expiry of subscription, a reminder is sent to the
subscribers. If subscription is not received within a month, another
reminder is sent. If renewal subscription is not received up to two weeks
before the expiry of the subscription, the subscriber’s name is removed from
the mailing list and the subscriber informed. Obtain an E-R diagram and
relations for the above problem statement.
SENT TO(Rem. Id., subscriber id., date due, amount due)
REMINDER(Rem. Id., reminder no, date due) Can be merged as 1:1
relationship given below:
REMINDER(Rem. Id., subscriber id.,reminder no, date due, amount due)
SUBSCRIBER(Subscriber id., name, address, subscription expiry date)
SUBSCRIBER-PAYMENT(Subscriber no., cheque no., date, amount
received)
1
Subscribers
Sent to
Pays
1 1
Subscription Remainders
8.18 What are the advantages and disadvantages of systems using separate
Data files?
Main advantage is efficiency. Individual applications can be efficiently
implemented using minimal storage and processing time. Disadvantages of using
individual files for applications are listed in summary points 16,17,18 and 19.
8.20 Students’ records in a University are kept by various sections: Hostel, Health
Centre, Academic Office, major departments, Accounts Section and Library.
If each of these sections maintains its own file-based system for processing, what
problems do you foresee? Give examples.
Student’s identity number may be different in different files and it will be difficult
to link them. If a student’s home address changes he should notify each
section independently to change his address. If a management decision is taken that
if a student’s hostel dues are not paid he will not be given grade card, it is difficult
to implement this decision unless the information from hostel is sent to academic
section. If the identification in hostel is different from that in academic office, then
correlating the records would be very difficult. Stored data is redundant as it is
repeated at many places.
8.21 What are the basic objectives in evolving a database for an organization?
Share data between applications. Minimize redundancy in data. Maintain
consistency of data values. Protects data. Prevent unauthorized insertion,
deletion and alteration of data. Ensure ready access to needed data.
8.24 What is the difference between a conceptual model and a logical model of a
database?
A conceptual model of a database specifies the data needs for current and future
applications. It also specifies the entities and relationships among entities. A logical
data model formats the data as a relational model, hierarchical model or network
model.
QUESTION BANK
8.15 Draw an E-R diagram showing the cardinality for the following:
(iii) A part is used in many products and a product uses many parts.
(iv) Students apply for seats in colleges. Each student can atmost get one seat.
(v) A car is owned by a person. The person can own many cars.
8.16 For Exercise 8.14, obtain relations for each entity. Normalize the relations.
8.17 For the following word statement, obtain E-R diagram and relations. Use any
reasonable assumptions. "A machine shop produces many parts which it takes on
contract. It employs many machinists who operate any of the machines. A part
needs working on only one machine. A record is kept on the quantity of material
needed for producing each part. The production of each part is tracked by giving
a job number, start time and end time and machinist identifications".
8.18 For the problem on library, periodical management stated in Exercise 4.23
(Module 4), obtain E-R diagrams and relations. Make any reasonable
8.19 For the problem statement of Exercise 5.15 (Module 5) obtain the E-R diagram
8.20 For the problem statement of Exercise 5.16 (Module 5), obtain the E-R diagram
8.21 For the problem statement of Exercise 5.18(Module 5), obtain the E-R diagrams
and relations .
8.22 What are the advantages and disadvantages of systems using separate data files?
8.25 Student's records in a University are kept by various sections: Hostel, Health
each of these sections maintains its own file-based system for processing, what
8.27 What is the difference between a database and a Database Management System
(DBMS)?
8.28 What are the basic objectives in evolving a database for an organization?
8.31 Draw an analogue between the advantages of high level language programming
8.35 What is the difference between a conceptual model and a logical model of a
database?
8.37 What data models are used by application programs in a database oriented
system?
8.38 Why is a DBMS divided into three layers, namely, conceptual model, logical
organization?
We will illustrate the method used to obtain an E-R diagram with an example. Usually an
many vendors and they are received at the receiving office. As we receive over 1000
items a day it is now virtually impossible for the receiving office to check whether the
vendor has supplied items against an order, or sent a wrong item and inform the purchase
office. We are also not able to find out if there are excesses or deficiencies in delivery
and whether the vendor adhered to the delivery schedule as per the order. The items
received at the receiving office are sent for physical inspection. The physical inspection
consists of checking whether the quantities stated in the delivery note agree with the
physical count, whether the item is the correct one ordered, and a check on the quality of
item. We would like to keep a record of rejections due to bad quality, incorrect items,
excess/deficient supply etc., determined during inspection. This will enable us to assess
vendors' reliability to guide us in placing orders in the future, besides keeping track of
supplies. Items cleared by the inspection office are taken into the inventory by the stores
office which keeps a ledger of items stocked and quantity available of each item.
Customers send requisitions to the stores. The stores fulfill the requests based on
availability and update the ledger. Currently we are not able to meet some of our
We would also like to keep track of unfulfilled requests and meet them when items reach
the store. Currently we are not able to pay our vendors promptly due to delays in payment
order reaching our accounts office. We would like to rectify this. We would also like to
orders
Placed Placed
for with
items vendors
Supplies
ORDER PLACED FOR (order no., item code, qty. ordered, delivery time allowed)
SUPPLIES (vendor code, item code, order no., qty.supplied, date of supply).
Let us examine whether the relations are in normal form. ORDERS and ORDER
PLACED FOR are simple relations. In the relation ORDER PLACED WITH, the key is
the composite attributes order no., vendor code and item code. However, the entity item
code is not needed in the ORDER PLACED WITH relation. Given an order no., all the
items supplied against this order can be found from ORDER PLACED FOR relation. The
vendor with whom the order has been placed can be found from the ORDER PLACED
WITH relation given below as each order no., has only one vendor.
The two relations ORDER PLACED WITH and ORDER PLACED FOR have composite
keys. The non-key fields are not related to one another. In a key more than one attribute,
the individual attributes are not functionally dependent. Thus these two relations are in
normalized form and do not need any further change. The relations VENDOR and ITEM
are simple and are in normalized form. The relation SUPPLIES is, however, not
normalized. vendor code and order no., are functionally dependent. There is a
multivalued dependency between vendor code and item code as a vendor can supply
ACTUAL VENDOR SUPPLY (order no., item code, qty.supplied, date of supply)
Observe that the relation VENDOR SUPPLY CAPABILITY will have a (vendor code,
item code) table without a vendor having supplied any item. The relation ORDER
PLACED WITH will have a tuple only when a vendor actually supplies an item.
Minicase Example 2
Let a database contain the following: Teacher code, Teacher’s name, Teacher’s address,
rank, department, courses taught by the teacher, course name, credits for course, no.of
students in the class, course taught in semester no., student no., name, dept., year, and
• The same course may have more than one section and different sections will be taught
by different teachers.
An entity relationship diagram for this problem is given below. The relations
Teacher Studnet
M K
Teaches Attends
N P
Courses
TEACHES COURSES (Teacher code, course no., semester no., no.of students, section
no)
TEACHER relation has only one key. All non-key attributes are functionally dependent
only on the key. There is no functional dependency among non-key attributes. Thus the
STUDENT relation is also, similarly, in 3NF. In the COURSE relation, course name
could also be a key. The relation is in 3NF and no further normalization is required. The
the relations themselves are in normal form. The only point which is not clear, from these
relations, is the relation between teacher and student. This has been missed in the E-R
diagram. The relationship is between the teacher, courses taught and students. In other
words, we should be able to answer the question “which teacher is teaching course no.X
In this relation Teacher code and course no. have a multivalued dependency. Similarly,
Teacher code and student no. as well as student no. and course no. have multivalued
dependency. However, TEACHES COURSES (Teacher code, course no., semester no.,
no.of students, section no.) and STUDENT COURSES (student no., course no.,
semester no) relations are already in the database. Thus the relation TEACHER-
STUDENT as it is specified above is sufficient to give the idea that student Y takes
References
1. Most of the material in this module has been adapted from the book “Analysis and
Logical Data Base Design, pp.130 to 153. Chapter 12 , Data Base Management
2. Good treatment of E-R Modelling and Normalization may be found in the book
3. For those interested in detailed study of Data Base Design and DBMS, the
2. T.Connolly and C.Begg, Dta Base Systems, 3rd Edition, Pearson Education
3. Entity set describes items which are similar. Students, courses, teachers are
7. A relation is a table which depicts an entity set. Each column in the relation
entity set.
application.
transform a set of relations into another set which has some desirable properties.
10. Normalization ensures that data in the database are not unnecessarily duplicated.
It also ensures that addition and deletion of entity rows (or tuples) or change of
individual attribute values do not lead to accidental loss of data or errors in
database.
11. Normalization is performed by first converting a relation so that all entities are
12. Successive normalization steps are carried out to meet the objectives stated in
point 10.
13. The successive normal forms are called 2NF, 3NF, BCNF, 4NF and 5NF.
14. A summary of how normalization steps are carried out is shown in the table
below.
16. As organizations require many application programs and these applications need
some common data, it is found that the same data is stored in many files, thereby
17. Waste of storage space is not the only problem. The same data (such as an
confusion.
18. As data is scattered in many files, it is difficult to correlate them and use them for
various applications.
19. When requirements change, the application programs and the entire data
expensive.
design a common database which can be used for all current applications and
only data but also relationships between data items. It is modelled not for specific
24. Other major objectives of DBMS are to minimize storage of redundant data,
maintain consistency of data values, ensure validity of stored data, protect data,
prevent unauthorized access, control insertion, deletion and alteration of data and
25. To use a DBMS, a conceptual model of data needed for current and future
applications is designed. E-R modelling is useful for this. The conceptual model
is next converted to a logical model appropriate for the DBMS. For RDBMS,
26. The physical data model is then designed to ensure good performance. User's
(iii) A part is used in many products and a product uses many parts.
(iv) Students apply for seats in colleges. Each student can atmost get one
seat. A college has many seats. A student can send many applications.
(v) A car is owned by a person. The person can own many cars.
8.16 For Exercise 8.14, obtain relations for each entity. Normalize the relations.
8.17 For the following word statement, obtain E-R diagram and relations. Use any
reasonable assumptions. "A machine shop produces many parts which it takes
part needs working on only one machine. A record is kept on the quantity of
material needed for producing each part. The production of each part is tracked
by giving a job number, start time and end time and machinist identifications".
8.18 For the problem on library, periodical management stated in Exercise 4.23
(Module 4), obtain E-R diagrams and relations. Make any reasonable
8.19 For the problem statement of Exercise 5.15 (Module 5) obtain the E-R diagram
8.20 For the problem statement of Exercise 5.16 (Module 5), obtain the E-R diagram
8.21 For the problem statement of Exercise 5.18(Module 5), obtain the E-R diagrams
and relations .
8.22 What are the advantages and disadvantages of systems using separate data files?
8.25 Student's records in a University are kept by various sections: Hostel, Health
each of these sections maintains its own file-based system for processing, what
8.27 What is the difference between a database and a Database Management System
(DBMS)?
8.28 What are the basic objectives in evolving a database for an organization?
8.31 Draw an analogue between the advantages of high level language programming
8.35 What is the difference between a conceptual model and a logical model of a
database?
8.37 What data models are used by application programs in a database oriented
system?
8.38 Why is a DBMS divided into three layers, namely, conceptual model, logical
organization?
We will illustrate the method used to obtain an E-R diagram with an example. Usually
now give a sample of such a statement. This is to be used to obtain an E-R diagram.
many vendors and they are received at the receiving office. As we receive over 1000
items a day it is now virtually impossible for the receiving office to check whether the
vendor has supplied items against an order, or sent a wrong item and inform the purchase
office. We are also not able to find out if there are excesses or deficiencies in delivery
and whether the vendor adhered to the delivery schedule as per the order. The items
received at the receiving office are sent for physical inspection. The physical inspection
consists of checking whether the quantities stated in the delivery note agree with the
physical count, whether the item is the correct one ordered, and a check on the quality of
item. We would like to keep a record of rejections due to bad quality, incorrect items,
excess/deficient supply etc., determined during inspection. This will enable us to assess
vendors' reliability to guide us in placing orders in the future, besides keeping track of
supplies. Items cleared by the inspection office are taken into the inventory by the stores
office which keeps a ledger of items stocked and quantity available of each item.
Customers send requisitions to the stores. The stores fulfill the requests based on
availability and update the ledger. Currently we are not able to meet some of our
customers' requests. We would like to incorporate automatic reordering by our purchase
We would also like to keep track of unfulfilled requests and meet them when items
reach the store. Currently we are not able to pay our vendors promptly due to delays in
payment order reaching our accounts office. We would like to rectify this. We would
also like to bill our customers promptly and keep track of customers' payments".
orders
Placed Placed
for with
items vendors
Supplies
ORDER PLACED FOR (order no., item code, qty. ordered, delivery time allowed)
SUPPLIES (vendor code, item code, order no., qty.supplied, date of supply).
Let us examine whether the relations are in normal form. ORDERS and ORDER
PLACED FOR are simple relations. In the relation ORDER PLACED WITH, the
key is the composite attributes order no., vendor code and item code. However, the
entity item code is not needed in the ORDER PLACED WITH relation. Given an
order no., all the items supplied against this order can be found from ORDER
PLACED FOR relation. The vendor with whom the order has been placed can be
found from the ORDER PLACED WITH relation given below as each order no., has
The two relations ORDER PLACED WITH and ORDER PLACED FOR have
composite keys. The non-key fields are not related to one another. In a key more
than one attribute, the individual attributes are not functionally dependent. Thus these
two relations are in normalized form and do not need any further change. The
relations VENDOR and ITEM are simple and are in normalized form. The relation
SUPPLIES is, however, not normalized. vendor code and order no., are
item code as a vendor can supply many items. We thus split the relations into two
relations.
ACTUAL VENDOR SUPPLY (order no., item code, qty.supplied, date of supply)
VENDOR SUPPLY CAPABILITY (vendor code, item code)
Observe that the relation VENDOR SUPPLY CAPABILITY will have a (vendor
code, item code) table without a vendor having supplied any item. The relation
ORDER PLACED WITH will have a tuple only when a vendor actually supplies an
item.
Minicase Example 2
Let a database contain the following: Teacher code, Teacher’s name, Teacher’s
address, rank, department, courses taught by the teacher, course name, credits for
course, no.of students in the class, course taught in semester no., student no., name,
dept., year, and courses taken in semesters no. The following information is given on
dependencies.
• The same course may have more than one section and different sections will
An entity relationship diagram for this problem is given below. The relations
M K
Teaches Attends
N P
Courses
TEACHES COURSES (Teacher code, course no., semester no., no.of students, section
no)
TEACHER relation has only one key. All non-key attributes are functionally dependent
only on the key. There is no functional dependency among non-key attributes. Thus the
STUDENT relation is also, similarly, in 3NF. In the COURSE relation, course name
could also be a key. The relation is in 3NF and no further normalization is required. The
these relations, is the relation between teacher and student. This has been missed in the
E-R diagram. The relationship is between the teacher, courses taught and students. In
other words, we should be able to answer the question “which teacher is teaching course
In this relation Teacher code and course no. have a multivalued dependency. Similarly,
Teacher code and student no. as well as student no. and course no. have multivalued
no.., no.of students, section no.) and STUDENT COURSES (student no., course no.,
semester no) relations are already in the database. Thus the relation TEACHER-
STUDENT as it is specified above is sufficient to give the idea that student Y takes
1. Most of the material in this module has been adapted from the book “Analysis and
Logical Data Base Design, pp.130 to 153. Chapter 12 , Data Base Management
2. Good treatment of E-R Modelling and Normalization may be found in the book
3. For those interested in detailed study of Data Base Design and DBMS, the
2. T.Connolly and C.Begg, Dta Base Systems, 3rd Edition, Pearson Education
OBJECT-ORIENTED SYSTEM
MODELLING
OBJECTIVE QUESTIONS
LEARNING UNIT 1
9.1.9 A class is
(a) a group of objects
(b) template for objects of a particular type
(c) a class of objects
(d) a classification of objects
9.1.10 All objects have
(i) attributes
(ii) states
(iii) a set of operations
(iv) a unique identity
(a) i, ii, iii (b) ii, iii, iv
(c) i, iii, iv (d) i, ii, iii, iv
9.1.13 The following are intangible entities which can be defined as objects
(i) a motor car
(ii) a bank account
(iii) an aircraft
(iv) a linked list
(a) i, ii (b) ii, iv
(c) iii, iv (d) ii, iii, iv
LEARNING UNIT 2
LEARNING UNIT 3
Motivation
Learning Units
9.1 Objects and their properties
2) Clients need not know how the contractor carries out its
contracts
New classes are created from current classes by using the idea of
inheritance
New classes inherit attributes and/or operations of existing
classes
Inheritance allows both generalisation and specialisation in
modelling
Specialisation - given student class, arts students and science
student are two subclasses
-Subclasses inherit properties of parents and in addition may
have their own special attributes and operations
Admit Admit
Promote Operations Promote
Calculate laboratory fee Calculate field trip fee
Simple method
- identify nouns in Requirements specification. These are potential
objects
- Identify verbs in requirements specification. These are potential
operations
POTENTIAL OBJECTS
1. APPLICANT
2. APPLICATION
3. REGISTRAR’S OFFICE CLERK
4. DEPARTEMENTAL (COMMITTEE)
APPLICATION DEPARTEMENT
ATTRIBUTES ATTRIBUTES
APPLICATION NUMBER DEPARTMENT CODE
APPLICANT NAME DEPARTMENT NAME
APPLICANT ADDRESS COURSE
MARKS SHEET NO OF STUDENTS TO BE
FEE PAID RECEIPT ADMITTED
DEPT. APPLIED CODE NO ON WAIT LIST
APPLN STATUS MIN. ENTRY QUALIFICATION
CLERK CODE STATUS OF APPLICATION
OPERATIONS
OPERATIONS
SCRUTINIZE
SEND APPLICATION TO DEPT
SEND RESPONSE SCRUTINIZE APPLICATION
ADMIT/W.L/REJECT TO SEND APPLICATION STATUS
APPLICANT
RELEVANT OBJECTS
Receiving office – Even though its own attributes are not relevant,its functional
attributes are important.These are:
-Delivery note and order to vendor
It thus derives its attributes from these
CLASS : VENDORS
ATTRIBUTES :
Vendor code
Vendor name
Vendor address
VENDOR is actually an external object.We have thus given only attributes relevant
to this application.In general design one would usually define this object more
comprehensively
Attributes : Attributes :
Receiving clerk id Order no
Order no Vendor code
Vendor code Item code
Delivery date Item name
Item code Qty ordered
Qty supplied Units
Units Price/Unit
Order date
Delivery period
CLASS
RECEIVING OFFICE
Is Part of Is Part of
DELIVERY ORDER TO
NOTE VENDOR
Operations :
Compare order no,item code, qty,etc in delivery note
with that in order to vendor
Send discrepancy note (if any) to purchase office and
vendor.If no discrepancy send delivery note to purchase
Send delivery note to inspection office(object)
Operations :
Update inventory by adding no of items accepted to qty
in stock
Send advice to accounts object to make payment for qty
accepted
Operations :
Send information an accepted items to store and
accounts
Send discrepancy note( if any) to purchase office and
vendor
Operations :
Calculate amount to be paid
Print cheque
Request vendor object for vendor address
Print vendor address label
Dispatch payment to vendor
Intimate Purchase office of payment
CRC CARD
CLASS NAME :
SUPER CLASSES AND SUBCLASSES :
SHORT DESCRIPTION OF CLASS :
COLLABORATORS :
PRIVATE RESPONSIBILITIES OF CLASS :
CONTARCTS WITH COLLABORATORS :
Class : APPLICATION
Super class : None
Sub class : None
Collaborators : DEPARTEMENT
Description : This class represents applications received for
admission to a university
Private Responsibilities :
Scrutinize : Applications are scrutinized to see if fee is paid and marks
sheet is enclosed. If yes, applications is sent to department class.Else a
rejected letter is sent to the applicant
Contract(s) and Collaborator(s):
Forward application to department : When it passes scrutiny else
send reject to applicant
Send letter to applicant : When Department notifies decision
(Admit,Reject,Waitlist) send appropriate letter to the applicant
Class : DEPARTMENT
Super class : None
Sub class : None
Collaborators : APPLICATION
Description : This class represents departments whose responsibility
is to admit, reject or place an waiting list on application
Private Responsibilities :
Rank order applications based on selection criteria.Mark in
application:admitted,rejected or in waiting list depending o available
seats
Examine application
CLASS CLASS
Admit/reject/wait list APPLICATION DEPARTMENT
Application status
Applicant
Contents
2. LEARNING UNIT 1
Objects and their properties
3. LEARNING UNIT 2
Identifying objects in an application
4. LEARNING UNIT 3
Modelling systems with object
5. References
OBJECT ORIENTED SYSTEM MODELLING
MOTIVATION
LEARNING GOALS
Vendor id
Name
Address LIST OF ATTRIBUTES
Vendor type
Add vendor
Delete vendor
Find address OPERATIONS OR (METHODS)
INSTANCE DIAGRAM – UML NOTATION
Change address
Find vendor
Shows type
an object instance's attributes and values
EXAMPLE Class name
VENDOR ID = A2546
Vendor id VENDORNAME = AD SINGH & CO
VENDOR TYPE = DISTRIBUTOR Attributes and their
VENDOR ADDRESS = 5, MALL values
ROAD,KANPUR
208001
Update - changes value of one or more attributes & affect state of object
Example : change address of vendor
Implementation of operations on objects called methods
IMPLEMENTATION OF CLASSES
TERMINOLOGY USED IN OBJECT ORIENTED MODELLING
2) Clients need not know how the contractor carries out its contracts
INHERITANCE
New classes are created from current classes by using the idea of
inheritance.They inherit attributes and/or operations of existing classes.
Inheritance allows both generalisation and specialisation in modelling
Specialisation - given student class, arts students and science student are two
subclasses, subclasses inherit properties of parents and in addition may have
their own special attributes and operations.
EXAMPLE OF INHERITANCE
Admit Admit
Promote Operations Promote
Calculate laboratory fee Calculate field trip fee
GENERALISATION/SPECIALISATION
POLYMORPHISM
LEARNING UNIT 2
Simple method
- identify nouns in Requirements specification. These are potential objects
- Identify verbs in requirements specification. These are potential operations
3)Objects should perform assigned services. In other words they must have
responsibilities specified by us.
6)Must have common set of attributes and operations which are necessary
for all occurrences of the objects in the class
3) If there are some objects whose attributes do not change during the
functioning of a system we reject them. They are probably external entities
Registrar's office clerk informs the applicant the result of his applications
POTENTIAL OBJECTS
1. APPLICANT
2. APPLICATION
3. REGISTRAR’S OFFICE CLERK
4. DEPARTEMENTAL (COMMITTEE)
ATTRIBUTES ATTRIBUTES
APPLICATION NUMBER DEPARTMENT CODE
APPLICANT NAME DEPARTMENT NAME
APPLICANT ADDRESS COURSE
MARKS SHEET NO OF STUDENTS TO BE
FEE PAID RECEIPT ADMITTED
DEPT. APPLIED CODE NO ON WAIT LIST
APPLN STATUS MIN. ENTRY QUALIFICATION
CLERK CODE STATUS OF APPLICATION
OPERATIONS OPERATIONS
SCRUTINIZE
SEND APPLICATION TO DEPT SCRUTINIZE APPLICATION
SEND RESPONSE SEND APPLICATION STATUS
ADMIT/W.L/REJECT TO APPLICANT
RELEVANT OBJECTS
Receiving office – Even though its own attributes are not relevant, its
functional attributes are important. These are:
-Delivery note and order to vendor
It thus derives its attributes from these
RELEVANT OBJECTS
VENDORS
No operations on this object are needed in this application. However its
attributes are necessary as the Accounts office makes payment to vendors
CLASS : VENDORS
ATTRIBUTES :
Vendor code
Vendor name
Vendor address
CLASS
RECEIVING OFFICE
Is Part of Is Part of
DELIVERY ORDER TO
NOTE VENDOR
Operations :
Compare order no,item code, qty,etc in delivery note with that in
order to vendor
Send discrepancy note (if any) to purchase office and vendor.If no
discrepancy send delivery note to purchase
Send
OTHERdelivery note to inspection
RELEVANT OBJECTS office(object)
Operations :
Send information on accepted items to store and accounts
Send discrepancy note( if any) to purchase office and vendor
Operations :
Calculate amount to be paid
Print cheque
Request vendor object for vendor address
Print vendor address label
LEARNING UNIT 3
CRC METHODOLOGY
CRC CARD
CLASS NAME :
SUPER CLASSES AND SUBCLASSES :
Collaborators : DEPARTEMENT
Private Responsibilities
Description :
: This class represents applications received for admission to a university
Scrutinize : Applications are scrutinized to see if fee is paid and marks sheet is enclosed.
If yes, applications is sent to department class.Else a rejected letter is sent to the applicant
Contract(s) and Collaborator(s):
Forward
CRC application to department(CONTD)
MODEL – EXAMPLE : When it passes scrutiny else send reject to applicant
Send letter to applicant : When Department notifies decision (Admit,Reject,Waitlist)
send appropriate letter to the applicant
Class : DEPARTMENT
Super class : None
Sub class : None
Collaborators : APPLICATION
Private Responsibilities :
Rank order applications based on selection criteria mark’s in application:admitted,rejected
or in waiting list depending o available seats
Examine application
CLASS CLASS
APPLICATION DEPARTMENT
Admit/reject/wait list
Application status
Applicant
CLASS CLASS
Delivery RECEIVING OFFICE INSPECTION OFFICE
Inspect
Vendor Payment
Delivery copy Update
Inventory
Discrepancy note
CLASS
PURCHASE OFFICE CLASS CLASS
ACCOUNTS OFFICE Make STORES OFFICE
Payment payment
copy
REFERENCES
1. Most of the material in this module has been taken from the book
“Analysis and Design of Information Systems”, 2nd Edition,
V.Rajaraman, Prentice Hall of India, New Delhi, 2003. Chapter 13,
Object Oriented System Modelling (pp.180-199)
c. i, iii, iv
d. i, ii, iii, iv
9.11 In UML diagram of a class
a. state of object cannot be represented
b. state is irrelevant
c. state is represented as an attribute
d. state is represented as a result of an operation
9.12 Attributes are assigned value
a. when operations are performed on an object
b. when instances of objects are defined
c. when methods are invoked
d. when classes are identified
9.13 The following are intangible entities which can be defined as objects
(i) a motor car
(ii) a bank account
(iii) an aircraft
(iv) a linked list
a. i, ii
b. ii, iv
c. iii, iv
d. ii, iii, iv
9.14 A query operation on a object
a. has side effect
b. has no side effects
c. changes the state of an object
d. is not allowed
9.15 An instance of an object is created by a
a. query operation
b. update operation
c. constructor operation
d. open operation
OBJECT-ORIENTED SYSTEM
MODELLING
WORKED EXAMPLES
Attributes Emp_no
Emp_name
Address
Date_of_joining
Operations Calculate_salary()
Calculate_incometax()
Emp_no Emp_no
Emp_name Emp_name
Address Attributes Address
Date_of_joining Date_of_joining
Dept. Dept.
13.11Pick objects and model the following requirements statement using the object.
“A magazine is printed monthly and posted to its subscribers. Two months
before the expiry of subscription, a reminder is sent to the subscribers. If
subscription is not received within a month, another reminder is sent. If
renewal subscription is not received upto two weeks before the expiry of the
subscription, the subscriber’s name is removed from the mailing list and
subscriber is informed”.
Class: Magazine Publishing Company
Attributes:
Magazine_id, Sub_id
Company_address
Magazine_name
Operations:
Request_subscn( magazine_id)
Class Class
Magazine_publishing Magazine_subscn_acc Send ack
company Send the ounts Send cheque
magazine Request_Subscn
and mag_id
Subscriber
Collaboration graph
Operation: Issue_ticket()
Cancel_ticket()
Query()
Class: Bus
Attributes: Bus_No
No_of_Seats
Availability
Route_No
Operation: Confirm()
Class: Passenger
Attributes: Passenger_Name
Address
Ph. No
Date_of_Journey
Bus_No
Route_No
Operation: Booking_Ticket()
Ticket Class
Class: Ticket
Superclass: None
Subclass: None
Collaborators: Bus, Passenger
Description: Issue ticket to the passenger
Private responsibilities:
Issue the ticket to the passenger if it is confirmed
Cancel the ticket and return the money
Contractor(s) and collaborator(s)
Send the query to Bus class for getting the status
Passenger Class
Class: Passenger
Superclass: None
Subclass: None
Collaborator(s): Bus
Description: This class gets the details about availability of bus and seats
Private responsibilities:
Contractor(s) and Collaborator(s):
Send query to the bus class to get the bus no. and the availability of bus
and seats
Bus Class
Class: Bus
Superclass: None
Subclass: None
Collaborator(s): passenger, Ticket
Description: Send the information regarding status of bus and seats
Private responsibilities:
Contractor(s) and collaborator(s):
Send the confirmation regarding the availability of seats and bus to the
passenger and ticket class
Book the
ticket
Get the status of the bus
Cancel
Ticket
Confirm
Collaboration graph
System Analysis and Design /Object Oriented System Modeling Question Bank
Question Bank
9.6 What are subclasses and superclasses. Give examples of each of these.
9.8 What do you mean by inheritance in object oriented systems? Why is it useful?
9.9 What do you understand by the term polymorphism in object oriented system?
9.10 How do you select objects from a requirement specification. Given the following
A list of employers with their basic pay is sent to a clerk. He calculates the gross
pay using standard allowances which are known for each pay slab. Deduction
statements such as loan repayment, subscription to association etc., are also sent
to another clerk who matches these slips with the slips of gross pay and calculates
net pay. This step is used by another clerk to write out pay cheques for each
employee and sent to respective employees. The total pay bills computed is also
computed".
9.11 Pick objects and model the following requirements statement using objects. "A
magazine is printed monthly and posted to its subscribers. Two months before the
received upto two weeks before the expiry of the subscription, the subscriber's
name is removed from the mailing list and the subscriber informed".
9.12 Give a brief requirement specification for a bus ticket reservation system. Model
it using objects.
References
1. Most of the material in this module has been taken from the book “Analysis and
India, New Delhi, 2003. Chapter 13, Object Oriented System Modelling (pp.180-
199)
2. There are several standard books on object oriented modeling for those who want
1. Complex systems are designed by breaking down such systems into a number of
3. The main motivation for using object oriented modelling is the realisation that
individual objects may be modified without affecting the other parts of the
system.
the life time scale of an application. All objects have attributes and state. A set of
operations are defined for each object which determines their behaviour.
specified operations.
7. Objects having similar meaning and purpose may be grouped together to form a
10. A class A may have attributes and operations which are identical to another class
B in addition to its own attributes and operations. In such a case class A is said to
inherit some of the properties of their parents in addition to their own properties
1
12. An important concept in modelling using objects is polymorphism.
14. From among potential objects the relevant ones appropriate for modelling are the
ones which have specific responsibilities and essential for the functioning of the
system.
15. Having identified objects and their responsibilities the next step is to find the
16. A documents is prepared for each class giving its own responsibilities, its
17. A graph showing pictorially the classes and their mutual collaboration completes
2
Question Bank – Module 9
13.6 What are subclasses and superclasses. Give examples of each of these.
13.8 What do you mean by inheritance in object oriented systems? Why is it useful?
13.9 What do you understand by the term polymorphism in object oriented system?
13.1 How do you select objects from a requirement specification. Given the following
A list of employers with their basic pay is sent to a clerk. He calculates the gross
pay using standard allowances which are known for each pay slab. Deduction
statements such as loan repayment, subscription to association etc., are also sent
to another clerk who matches these slips with the slips of gross pay and calculates
net pay. This step is used by another clerk to write out pay cheques for each
employee and sent to respective employees. The total pay bills computed is also
computed".
3
13.1 Pick objects and model the following requirements statement using objects. "A
magazine is printed monthly and posted to its subscribers. Two months before
not received upto two weeks before the expiry of the subscription, the subscriber's
name is removed from the mailing list and the subscriber informed".
13.1 Give a brief requirements specification for a bus ticket reservation system. Model
it using objects.
4
References
1. Most of the material in this module has been taken from the book “Analysis and
India, New Delhi, 2003. Chapter 13, Object Oriented System Modelling (pp.180-
199)
2. There are several standard books on object oriented modeling for those who want
5
MODULE 10
DESIGNING OUTPUTS
OBJECTIVE QUESTIONS
There are 4 alternative answers to each question. One of them is correct. Pick the correct
answer. Do not guess. A key is given at the end of the module for you to verify your
answer
LEARNING UNIT 1
LEARNING UNIT 2
10.2.1 While designing output report it is important to keep the following in mind:
(i) volume of output
(ii) potential users
(iii) current users
(iv) periodicity of output
(a) i, ii, iii (b) ii, iii, iv
(c) i, ii, iv (d) i, ii, iii, iv
LEARNING UNIT 3
LEARNING UNIT 4
10.4.3 Buttons which can be clicked using a mouse are placed in screens as
(a) they are convenient to use
(b) it is the modern trend
(c) large number of buttons can be used
(d) using a keyboard is error prone
Motivation
DESIGNING OUTPUTS
Contents
10.1 Output Devices
VIDEO
Types of printers
Line Printers
• Impact Dot matrix character printers
Laser printer
• Non-Impact
Inkjet printer
LINE PRINTERS
-LARGE VOLUME OUTPUT
-FAST - ENTIRE LINE PRINTED
-MULTIPLE COPIES
-HIGH CAPITAL COST BUT LOW RUNNING COST
INKJET PRINTERS
-CHARACTERS + GRAPHICS
-MULTICOLOUR
-CAPITAL COST LOW COMPARED TO LASER PRINTER
-RECURRING COST HIGH
LASER PRINTERS
-CHARACTERS + GRAPHICS
-MULTICOLOUR EXPENSIVE
-EXCELLENT QUALITY
-CAPITAL COST HIGH
- RECURRING COST LOWER THAN INKJET
• FLOPPY DISK
- Inexpensive
- Easy to mail/transport
- Low capacity –1.4MB
- Read/write
- Contact recording – number of
read/writes limited
• DVDROM
- Read only cheaper/safer
- Very high capacity – upto 8GB
- Easy to transport
- Useful for storing high quality video such as full
length movies
• FLASH MEMORY
- Read/Write
- Small size and weight
- No moving parts thus very reliable
- Needs USB port on PC
- Size 128KB to 2GB
- Low Power needs
- Expensive
•TOP MANAGEMENT
- Summary highlighting important results
•MIDDLE MANAGEMENT
- Exception reports
• OPERATIONAL MANAGEMENT
- DETAILS NEEDED
For example
-Payroll
-Grade sheets
-Cheques
• MIDDLE MANAGEMENT
-Send daily exceptions
-Provide summary on terminal with option to look at
greater details on request
• OPERATIONAL MANAGEMENT
-Regular periods
-Periods depend on application
-Example : Payroll monthly
05-05-2000
ROLL NO 9701425
NAME G.HARI
YEAR ME II
GUARDIAN P.GANESHAN
ADDRESS 41 OLIVER STREET
MYLAPORE
MADRAS 600 004
DETAILS RETURN
140
Total sales of textiles (in lakhs)
120
100
80
60
40
20
0
0 85 86 87 88 89 90
Year
350
300
No of employees
250
200
150
100
50
0
0 20 25 30 35 40 45 50 55 60
Age
Dividends Equipment
10%
15%
Tax
R& D 10%
5%
Misc
15%
Interest payment
15%
Raw material
20%
Salaries
20%
Dividends Equipment
10%
15%
Tax
R& D 10%
5%
Misc
15%
Interest payment
15%
Raw material
20%
Salaries
20%
DESIGNING OUTPUTS
Contents
2. LEARNING UNIT 1
Output Devices
3. LEARNING UNIT 2
Objectives of output design
4. LEARNING UNIT 3
Design of output reports
5. LEARNING UNIT 4
Design of screens and graphics
6. REFERENCES
DESIGNING OUTPUTS
MOTIVATION
Presenting results of processing in an attractive and easily understood form
is important as management requires these reports to initiate actions and thus
the significance of outputs must be easily perceived. One must be aware of
new output devices being introduced to use them appropriately, also be
aware of changes in output delivery with the emergence of systems such as
intranets/internet. Must also cater to newer applications such as e-commerce
that uses the world wide web.
LEARNING GOALS
Output Devices
TEXT
GRAPHICS
VIDEO
HARD COPY DEVICES
Printers used when there is large volume of data and several copies are
normally needed
Types of printers
Line Printers
Impact
Dot matrix character printers
Laser printer
Non-Impact
Inkjet printer
PRINTER CHARACTERSTICS
LINE PRINTERS
-Large volume output
-fast entire line printed
-multiple copies
-high capital cost but low running cost
- Slow
- inexpensive ( per copy cost)
- multiple copies with carbon paper
- poor graphics
INKJET PRINTERS
- Characters + graphics
- multicolour
- capital cost low compared to laser printer
- recurring cost high
LASER PRINTERS
-Characters + graphics
-multicolour expensive
-excellent quality
-capital cost high
- recurring cost lower than inkjet
FLOPPY DISK
CDROM
Alternatives
DVD ROM
FLASH MEMORY
• FLOPPY DISK (SEMI CONDUCTOR)
- Inexpensive
- Easy to mail/transport
- Low capacity –1.4MB
- Read/write
- Contact recording – number of read/writes limited
• CDROM
- Inexpensive Medium
- Read only cheaper/safer
- High capacity – 600MB
- Easy to transport/mail
- Primarily used for Text/Graphics
• DVDROM
- Read only cheaper/safer
- Very high capacity – upto 8GB
- Easy to transport
- Useful for storing high quality video such as full
length movies
• FLASH MEMORY
- Read/Write
- Small size and weight
- No moving parts thus very reliable
- Needs USB port on PC
- Size 128KB to 2GB
- Low Power needs
- Expensive
LEARNING UNIT 2
While designing output format and picking output devices the following
should be taken into account
•The user group
•Proposed use
•Volume of output
•Periodicity of output
•Timely delivery when required
•TOP MANAGEMENT
- Summary highlighting important results
- Graphical Output – Pie charts
- Bar charts
-Maps
Needed for strategic management
•MIDDLE MANAGEMENT
- Exception reports
- Reduced output volume
- Needed for tactical management
•OPERATIONAL MANAGEMENT
- Details needed
for example :payroll, grade sheets, cheques
• TOP MANAGEMENT
-Whenever there are any significant changes
-Give option to ask for specific details
-Periodic quarterly
• MIDDLE MANAGEMENT
-Send daily exceptions
-Provide summary on terminal with option to look at greater details on
request
• OPERATIONAL MANAGEMENT
-Regular periods
-Periods depend on application
-Example : Payroll monthly
LEARNING UNIT 3
Structure of a report
- Headings
•Report heading
•Page heading - appears in each page
•Detailed heading for each column
•Set of records forming a logical group called control group and is given a
control heading
Structure of a report
- Footings
•Labels used to describe information contained in a control group are called
control footings
•Labels printed at the end of each page of a report is called page footing
• Label used to give the control information for the whole report is called
final control footing
•Label printed at the end of the entire report is called report footing
EXAMPLE OF TERMINOLOGY
Roll No Name
97101115 A.B.BHATTACHARYA
ROLL LIST OF STUDENTS SEM 1/2000-2001
97102105 A.C.ARVIND
97102121 L.S.BHATIA
.
.
97102131 P.R.ZAVERI
Control footing TOTAL NO OF STUDENTS IN CHEMICAL ENGG.DEPT = 63
Final control
footing TOTAL NO OF STUDENTS IN SEM 1/200-2001 = 852
Report footing END OF IISc BANGALORE ROLL LIST FOR SEM 1/2000-2001
PRINT CHART
LEARNING UNIT 4
Screen display must be convenient for interactive use. Screen size is usually
80 cols per line and 24 lines per screen. Provision must be made at bottom of
screen to continue, get details or exit.Nowadays screens are designed with
buttons which can be clicked using a mouse to get details, continue or exit
from screen
EXAMPLES OF SCREENS
BUISNESS GRAPHICS
Shows information in pictorial form which is easy to understand
Usual pictures are
•bar charts - relative distribution easy to see
•pie charts - %use of resources easy to see
•x-y graphs - trends easy to see
•maps - geographical distribution easy to see
USE OF GRAPH
350
300
250
200
150
100
50
0
0 20 25 30 35 40 45 50 55 60
Year
BAR CHART
350
300
250
200
150
100
50
0
0 20 25 30 35 40 45 50 55 60
Age
PIE CHART
Dividends Equipment
15% 10%
R& D Tax
5% 10%
Misc
15% Interest payment
15%
Raw material
20%
Salaries
20%
References
b. exception reports
c. detailed reports
d. expected reports
10.9 Outputs needed by middle level managers are
a. summary reports with good grouping
b. exception reports
c. detailed reports
d. expected reports
10.10 Outputs needed by operational managers are
a. summary reports with good grouping
b. exception reports
c. detailed reports
d. expected reports
10.11 Reports headings are used as
a. it is good practice
b. it helps in reading and understanding a report
c. it is required by management
d. it is a good documentation aid
10.12 Report footing is
a. same as report heading
b. the label printed at the end of each page
c. the label printed at the end of each control group
d. the label printed at the end of a report
10.13 Page footing is
a. same as report heading
b. the labels printed at the end of each page
c. the labels printed at the end of each control group
d. the labels printed at the end of a report
10.14 Control footing is
a. same as report heading
b. the labels printed at the end of each page
10.20 Buttons which can be clicked using a mouse are placed in screens as
a. they are convenient to use
b. it is the modern trend
c. large number of buttons can be used
d. using a keyboard is error prone
10.21 Bar charts are used when
a. it is required to illustrate geographical distribution of data
b. relative distribution of data in specified categories is to be shown
c. percent use of resources under various heads is to be show
d. trends as a function of time is to be illustrated
10.22 Pie charts are normally used when
a. it is required to illustrate geographical distribution of data
b. relative distribution of data in specified categories is to be shown
c. percent use of resources under various heads is to be shown
d. trends as a function of time is to be illustrated
10.23 X-Y graphs are normally used when
a. it is required to illustrate geographical distribution of data
b. relative distribution of data in specified categories is to be shown
c. percent use of resources under various heads is to be shown
d. trends as a function of time is to be illustrated
DESIGNING OUTPUTS
WORKED EXAMPLES
10.1 What is the difference between impact and non-impact printers? Give an
example of each type of printer.
Impact printers depend on a print head striking a carbon ribbon to transfer a
character print on a paper. Non-impact printer does not have a print head.
Characters are transferred on paper by a xerographic process. A line printer is an
impact printer. A laser is a non-impact printer.
10.2 For what types of outputs are video display units appropriate? What is the
main difference in characteristics between video display units and printers?
VDU is useful for interactive editing, on-line display of answers to queries, etc. A
line printer is used for hard copy reports to be stored and distributed to a number
of people.
10.3 What type of output will you use for the following:
(i) Strategic management
(ii) Tactical management
(iii) Operational management
(i) Strategic: Graphs, summaries, pie charts, etc.
(ii) Tactical: Summary reports, exception reports, low volume printing.
Graphical aids are also used to supplement.
(iii) Operational: Detailed printouts. High volume reports.
10.4 What is report generator?
Report generators convert report specifications given in a high level language to
formatted printed reports.
10.5 What is the main difference between the design of an output screen for a
video terminal and a page layout for a printer?
Display screen size is smaller. As it is on-line, a user has to actively participate in
using the display. Thus instructions must be given to users in a display on what to
do next.
10.6 Pick the appropriate graphics for the following applications:
(i) Relative enrollment of students in various departments in a University.
(ii) Growth of student strength in a department over a period of 10 years.
(iii) Sales percent of a product in 6 years of a country.
(iv) Proportion of total revenue of a state from direct taxes, indirect taxes,
public loans, land revenue, income from public sector companies, and
miscellaneous receipts.
(v) Engineering colleges established in different parts of a country
(i) Pie chart
(ii) Bar chart or trend chart
(iii) Pie chart
(iv) Pie chart
(v) Map of India with data showing colleges in each region.
System Analysis and Design/Designing Outputs Question Bank
Question Bank
10.1 What is the difference between impact and non-impact printers? Give an example
of each type of printer?
10.2 What is the speed range of a line printer? What is the speed range of a character
printer?
10.3 For what types of outputs are video display units appropriate? What is the main
difference in characteristics between video display units and printers?
10.4 What type of output will you use for the following:
a. Strategic management
b. Tactical management
c. Operational management
10.5 When is a detailed printed output appropriate?
10.6 What is the difference between off-line and on-line output presentation?
10.7 What are the various headings used in a report? Why are they required?
10.8 What is a print chart? How is it used? Prepare a print chart for stores data
processing system.
10.9 Why are control footings used in printed reports?
10.10 What is a report generator?
10.11 List the important points to keep in mind while designing the format of a report.
10.12 What is the main difference between the design of an output screen for a video
terminal and the page layout for a printer?
10.13 What do you understand by business graphics?
10.14 Pick the appropriate graphics presentation for the following applications:
a. Relative enrollment of students in various departments in a University.
b. Growth of student strength in a department over a period of 10 years.
c. Sales percent of a product in 6 regions of a country.
d. Proportion of total revenue of a state from direct taxes, indirect taxes, public
loan, land revenue, income from public sector companies, and miscellaneous
receipts.
e. Engineering colleges established in different parts of a country.
10.15 When is color presentation of graphics useful? Give examples.
References
1. Most of the material is taken from Chapter 14 of the text book “Analysis and
2. There is a good coverage of this type in Kendall and Kendall “System Analysis
3rd Edition, Pearson Education Asia, New Delhi, 2002, discusses forms and
reports design in Chapter 13, pp.432 to 450. Designing dialogues and graphical
user interfaces is discussed in Chapter 14, pp. 460 to 490. Companion web site is
1. The most commonly used output devices are printers, video display terminals and
2. Printers are of two types, line printers and character printers. For large volume
printing, line printers are most appropriate. Character printers are useful for low
volume printing. They also provide simple graphics output. Multiple copies can be
3. Inkjet and laser printers are non-impact printers. Laser printers provide high quality
printing and are mostly used in desk top publishing (DTP) system. Both inkjet and
4. Capital cost of inkjet printers is small but its running cost is high. Laser printers on
the other hand cost more but printing cost per page is lower.
5. Video displays are normally used for on-line display of information. They are
6. Audio outputs are becoming popular with the advent of inexpensive speech
queries.
8. Before designing a report and deciding on the output device to be used, one must ask
for whom it is intended, its proposed use, and its volume and frequency.
9. Reports for top management must be brief, preferably graphical, and convey
1
10 Reports for middle management must not contain details. Exceptions should be
11 Routine outputs such as payslips, address labels, etc., are massive and periodic and
printed.
12 Every report must have a report heading, page heading, heading for fields, details
lines and control information. Pages should be numbered and the date of creation of
13 A print chart is used to specify the format of a report. Report headings, page
headings, the columns in the printer where they appear in a report are specified by
14 Report generator systems are available in languages such as COBOL. These are
15 The layout of information on video display screens is also specified using similar
principles. The main difference is the need to instruct a user to select appropriate
displays.
16 With current technology Graphical User Interfaces are easy to design. They should
17 Graphical outputs are easy to obtain on video terminals, inkjet and laser printers.
Graphs, bar charts, pie charts and maps are easy to draw and should be used as
appropriate.
2
QUESTION BANK – MODULE 10
10.1 What is the difference between impact and non-impact printers? Give an
10.2 What is the speed range of a line printer? What is the speed range of a character
printer?
10.3 For what types of outputs are video display units appropriate? What is the main
10.4 What type of output will you use for the following:
10.6 What is the difference between off-line and on-line output presentation?
10.7 What are the various headings used in a report? Why are they required?
10.8 What is a print chart? How is it used? Prepare a print chart for stores data
processing system.
10.11 List the important points to keep in mind while designing the format of a report.
10.12 What is the main difference between the design of an output screen for a video
3
10.14 Pick the appropriate graphics presentation for the following applications:
(iv) Proportion of total revenue of a state from direct taxes, indirect taxes,
public loan, land revenue, income from public sector companies, and
miscellaneous receipts.
4
REFERENCES
1. Most of the material is taken from Chapter 14 of the text book “Analysis and
2. There is a good coverage of this type in Kendall and Kendall “System Analysis
3rd Edition, Pearson Education Asia, New Delhi, 2002, discusses forms and
reports design in Chapter 13, pp.432 to 450. Designing dialogues and graphical
user interfaces is discussed in Chapter 14, pp. 460 to 490. Companion web site is
5
MODULE 11
DOCUMENTS ON WEB
OBJECTIVE QUESTIONS
LEARNING UNIT 1
11.1.1 Internet is
(a) a local computer network
(b) a world wide network of computers
(c) an interconnected network of computers
(d) a world wide interconnected network of computers which use a
common protocol to communicate with one another
LEARNING UNIT 2
11.2.6 The tag used in HTML to link it with other URL’s is:
(a) <A>
(b) <H>
(c) <U>
(d) <L>
(i) <B>
(ii) <I>
(iii) <U>
(iv) <L>
DOCUMENTS ON WEB
Learning Units
Variable packet delivery time does not matter for e-mail and text
files
Speed unpredictability however reduces effectiveness of audio
and video traffic
Major advantage – diverse machines and LAN’s may be
interconnected if they use common protocol called TCP/IP
These are primarily presentation aids which take raw content and
transform them to neat looking documents when displayed on
VDU screen or printed on paper.
They have no idea of the type of document and what they mean.
These are primarily for linear texts and not meant for linked text
known as hypertext
Each document called a web page. Each web page has a unique
path to retrieve it.
Web pages are retrieved from the host computers where they are
located by a program called web browser running on a client.
<HTML>
<HEAD>
<TITLE> Description of a book on Information Technology </TITLE>
</HEAD>
<BODY>
<H1> Introduction o Information technology </H1>
<H2> A first level book in I.T </H2>
<P> Publisher : <I> Prentice – Hall of India </I></P>
<P> Year of publication: <B> 2003 </B></P>
</BODY>
</HTML>
IMG indicates image and src the source (Observe the tag IMG
is standalone and does not have end tag </IMG>
The specification is
<A href = “ http:// www.iisc.ernet.in”></A>
where A is called anchor tag.
HTML does not have any means of specifying what the documents
represents. Is it an invoice? A purchase order, book description etc.
Unlike HTML it has tags which are user defined.This allows easy
understanding of the nature of the document and assists in its
processing.
<item>
<item_name> C Programming </item_name>
<item_code> ISBN 81-203-0859-X </item_code>
<quantity> 50 </quantity>
</item>
<supplier>
<name> P-H India </name>
</supplier>
</purchase_order>
Observe that the tags used have a syntax similar to HTML. The
tags are, however, meaningful to a human reader
DTD has its own syntax . We give DTD for this XML document
in the next transparency.
<! ELEMENT purchase order (entry +) > states that purchase order is the
top level element with one or more entry following it
DOCUMENTS ON WEB
OBJECTIVE QUESTIONS
LEARNING UNIT 1
11.1.1 Internet is
(a) a local computer network
(b) a world wide network of computers
(c) an interconnected network of computers
(d) a world wide interconnected network of computers which use a
common protocol to communicate with one another
LEARNING UNIT 2
11.2.6 The tag used in HTML to link it with other URL’s is:
(a) <A>
(b) <H>
(c) <U>
(d) <L>
(i) <B>
(ii) <I>
(iii) <U>
(iv) <L>
11.1 Internet is
(iv)word processing
a. i, ii
b. i, ii, iii
c. i, ii, iv
a. be an IBM PC
c. be internet compatible
a. 4 bytes long
b. available in plenty
c. 6 bytes long
a. a binary string
b. alphanumeric string
d. a hexadecimal string
a. i, ii, iii
b. ii, iii, iv
c. i, iii
a. Packet switching
b. Circuit switching
c. Telephone switching
d. Telex switching
c. not packetized
d. 64 bytes packets
a. i, ii, iii
b. i, ii, iii, iv
a. a LAN of an organization
(iv)Firewalls
a. i and ii
b. ii and iii
c. iii and iv
d. i and iv
a. i, ii, iii, iv
c. i, iii, iv
d. i, ii, iii, v
a. for information
b. web pages
b. screen editor
c. scripting language
d. search engine
(v)Hosting on a mainframe
a. i, ii, iii
b. i, ii, iii, iv
d. i, ii, iii, v
a. pre-specified tags
11.26 The tag used in HTML to link it with other URL’s is:
a. <A>
b. <H>
c. <U>
d. <L>
(i) <B>
(ii) <I>
(iii) <U>
(iv) <L>
d. Independent of SGML
b. pre-defined tags
b. (i),(ii) and(iv)
DOCUMENTS ON WEB
WORKED EXAMPLES
11.3 What is packet switching? What are the advantages of packet switching?
Why is packet switching used in internet communication?
Packet switching is the technique in which data are transmitted through
communication links as a set of packets. A message is broken into a number of
packets. The packets are stored in routers along the path and forwarded to other
routers when communication link is free.
Here the message is broken into packets to reduce the transmission cost. The
transmission is faster and fault-tolerant, in the sense that if a line is not working
or free the stored packets can be sent along another line.
11.6 What is the world wide web? In what way is it different from internet?
The world wide web is the global multimedia information service available on
the internet. It consists of linked web pages.
The internet helps in facilitating the functionality of www. Internet is a physical
network of computers where www is a service provided using the internet.
11.7 What is the role of HTML in web page design? Give a HTML code to
display
Introduction to e-Commerce
This is a new book
HTML has features to embed with web pages pointing to other web pages. It has
features for adding images, different colors etc. and also you can develop a very
good and attractive web page to attract customers which is the basic need of e-
Commerce.
The html code to display the information is given below:
<html>
<head>
</head>
<body>
<h1>Introduction to e-Commerce</h1>
<p> This is a <b> new book </b> </p>
</body>
<html>
11.9 What is a hyperlink? How do you link an image file to a HTML document?
An image or portion of text on a Web page that is linked to another Web page,
either on the same site or in another Web site is an Hyperlink. Clicking on the link
will take the user to another Web page, or to another place on the same page.
XML uses tags which are user defined, while HTML uses tags which are
predefined by the language.
Formatting and presentation are not part of XML unlike HTML which has tags
for bold face, italics etc. This is delegated to a companion language called XSL
(Extensible Style Language)
Question Bank
11.1 What is the difference between on-line and off-line data entry?
11.2 Why are input data records divided into batches for off-line data entry?
11.4 What are the main principles used in designing forms for data entry?
11.5 A good and a bad design for entering date in a form is given in Section 11.1.
What are the reasons for saying that one of them is good and the other bad?
11.6 Design a form to be used by a salesman to report to the office about the sales
11.8 Can the name of a person be used as a code, for say, his bank account? If not,
why?
11.14 What is the advantage of a serial number code? Why is it not normally used?
11.16 Design a group classification code to code (i) motor vehicles,, (ii) music
11.19 Add a Modulus-11 check digit to the codes (i) 48467, (ii) 96432, and (iii)
87646257.
character to the codes (i) 4AB9W, (ii) XBY483, and (iii) CAZ4642.
11.21 The following code was entered by an operator:449632. The last digit is a
11.22 If a code uses hexadecimal digits, what should be N if the modulus-N check digit
system is to be used with such codes? What are the allowable weights if single
digit transcription error (i.e., a code such as 45565 is wrongly entered as 48868),
11.24 A see-saw error is one in which one digit of the code is increased by x and
11.25 Why is it useful to assign sequence numbers for data records? What are the types
11.26 What is the purpose of batch control record? What is the type of information
11.27 A set of data records for student examination results has the following format:
Design for these records a batch control record and a record control field and any
11.28 Give some example of fields for which a radix error check is appropriate.
11.29 What is the difference between range check and a radix check?
11.30 What are the appropriate range checks for the age of individuals in an employee
file, a high school student file, and height of students in a student file.
11.31 Give some examples of fields where reasonableness check would be applicable.
11.33 What is the main difference between menus, templates and command modes of
11.34 Design a dialogue hierarchy for entering data on customers (of a manufacturer).
11.35 Design a dialogue hierarchy and the screens for a system used to reserve seats in
References
1. Most traditional books on Systems Analysis and Design do not discuss HTML
2. HTML is discussed in Wall D.A., using world wide web, 2nd edition, Prentice
4. D.Box, A.Skonnard and J……, “Essential XML”, Pearson Education Asia, New
Delhi 2000.
5. Using HTML.4, XML and JAVA 1.2, Eric Ladd et.al , Prentice Hall of India,
1. Data may be input to a computer off-line or on-line. In on-line entry a user enters
data interactively via a video terminal connected to the computer. In off-line data
entry data filled in forms are entered by operators in a separate PC or a data entry
machine.
3. In off-line data entry, batches of data are formed and entered. They are checked
4. To reduce errors in input, it is essential to carefully design the forms used for
entering data.
5. Important data elements are coded. Codes are necessary for unique identification,
6. There are many methods for coding. An ideal code must be concise, expandable,
7. Codes are classified as: (i) Serial number codes, (ii) Block codes, (iii) Group
classification codes, and (iv) Significant codes. Group classification codes and
They are, however, not concise, Serial and Block number codes are more concise.
They are also precise and expandable but are not meaningful and comprehensive.
8. Any error made in entering important data fields such as account codes and
9. The most common errors made during data entry are: a single digit is incorrectly
entered or any two digits in the code are interchanged. These errors are called
respectively single transcription and transposition errors and account for 96% of
10. Given a code, the digits in it starting from the last digit are multiplied by weights
2, 3, 4, etc., and the products are added. The sum is divided by 11. The remainder
is subtracted from 11. This number (which is called a check digit) is appended as
the last digit of the code. The code constructed in this way is called a midulus-11
11. After data entry the digits in the code starting from the last digit are multiplied by
weights 1, 2, 3, 4, etc., and the products are added. The sum is divided by 11. If
12. Modulus-11 check digit code guarantees detection of all single transcription and
13. It is essential to design good data validation programs to prevent data entry errors
from corrupting files of input data. Validation programs need information for
preparation.
14. Important control mechanisms are; giving unique sequence numbers to each data
15. The same data is entered by two different persons and compared to reduce
transcription errors.
16. Besides this, individual data fields are checked using information on their range of
allowed values, range of reasonable values, and relationships between different
17. With the advent of Personal Computers, remote terminals connected to a computer
interactively.
18. For interactive data input, special screens are designed on video terminals for easy
data entry. Errors in data entry are instantly detected by a validation program
19. Common methods of interactive data input is by use of menus, templates and
20. A menu method is used to pick one out of many alternatives, a template method to
enter new data, and a command method to add and delete data.
21. These methods are combined to provide a user the most appropriate technique for
11.1 What is the difference between on-line and off-line data entry?
11.2 Why are input data records divided into batches for off-line data entry?
11.4 What are the main principles used in designing forms for data entry?
11.5 A good and a bad design for entering date in a form is given in Section 11.1.
What are the reasons for saying that one of them is good and the other bad?
11.6 Design a form to be used by a salesman to report to the office about the sales
11.8 Can the name of a person be used as a code, for say, his bank account? If not,
why?
11.14 What is the advantage of a serial number code? Why is it not normally used?
11.16 Design a group classification code to code (i) motor vehicles,, (ii) music
11.19 Add a Modulus-11 check digit to the codes (i) 48467, (ii) 96432, and (iii)
87646257.
character to the codes (i) 4AB9W, (ii) XBY483, and (iii) CAZ4642.
11.21 The following code was entered by an operator:449632. The last digit is a
11.22 If a code uses hexadecimal digits, what should be N if the modulus-N check digit
system is to be used with such codes? What are the allowable weights if single
digit transcription error (i.e., a code such as 45565 is wrongly entered as 48868),
11.24 A see-saw error is one in which one digit of the code is increased by x and
11.25 Why is it useful to assign sequence numbers for data records? What are the
11.26 What is the purpose of batch control record? What is the type of information
11.27 A set of data records for student examination results has the following format:
Design for these records a batch control record and a record control field and any
11.28 Give some example of fields for which a radix error check is appropriate.
11.29 What is the difference between range check and a radix check?
11.30 What are the appropriate range checks for the age of individuals in an employee
file, a high school student file, and height of students in a student file.
11.31 Give some examples of fields where reasonableness check would be applicable.
11.33 What is the main difference between menus, templates and command modes of
11.34 Design a dialogue hierarchy for entering data on customers (of a manufacturer).
11.35 Design a dialogue hierarchy and the screens for a system used to reserve seats in
1. Most traditional books on Systems Analysis and Design do not discuss HTML
2. HTML is discussed in Wall D.A., using world wide web, 2nd edition, Prentice
4. D.Box, A.Skonnard and J……, “Essential XML”, Pearson Education Asia, New
Delhi 2000.
5. Using HTML.4, XML and JAVA 1.2, Eric Ladd et.al , Prentice Hall of India,
OBJECTIVE QUESTIONS
LEARNING UNIT 1
LEARNING UNIT 2
12.2.10 Some of the features of audit package used to check systems are:
(i) facility to total specified items based on some criteria
(ii) extracting items based on some criteria for checking
(iii) check-pointing and restart facility
(iv) hardware faults recovery
(a) i, ii (b) i, ii, iii
(c) i, ii, iii, iv (d) i, ii, iv
LEARNING UNIT 3
LEARNING UNIT 4
12.4.4 The following measures are taken to ensure security of information systems:
(i) duplicate copies of data/programs are kept in a different place preferably
in fire-proof vault
(ii) password protection is used to prevent unauthorized access
(iii) no one is allowed to alter data in the database
(iv) no one is allowed alter programs
(a) i and ii (b) i, ii, iii
(c) ii, iii, iv (d) iii and iv
such as disk crashes, fires, floods and such disasters take place.
continuity of service.
Learning Units
• ORGANIZATIONAL MEASURES
Well defined responsibility for input preparation, delivery
output use, operation and maintenance
OBJECTIVES
Ensure computer based financial and other
information reliable
Ensure all records included while processing
Ensure protection from frauds
•SYSTEM TESTS
-Results from a program fed as input to a succeeding
program
- a string of programs run one after another
12.3.2 Systems Analysis And Design © V. Rajaraman 19 of 27
SYSTEM TESTING (CONTD)
• SYSTEM TESTS
-All programs in a complete system are tested together as a
whole.Tested using unreasonable data and non key data
besides normal test data for whole system
• PILOT TESTS
-Use data from manual system to test system when it is first
implemented. If it is modification of earlier computer based
system use data and output from that system
• PARALLEL RUNS
-Run both manual and computer based systems with same
live data and see if both give identical results
-If it is re-engineered (i.e.,Modified) system run both old
and new systems and compare results
Contents
2. LEARNING UNIT 1
Controls in Information systems
3. LEARNING UNIT 2
Need and methods of auditing Information systems
4. LEARNING UNIT 3
Testing Information systems
5. LEARNING UNIT 4
Security of Information systems
6. References
CONTROL AUDIT AND SECURITY OF
INFORMATION SYSTEM
Systems contain sensitive data about the organization and also about persons
working in the organization. This data should be protected from spies,
thieves or disgruntled employees. Thus access should be carefully controlled
and provided only on a need to know basis. When computers are networked
corruption/erasure may take place due to viruses. Services may be disrupted
due to denial of service attacks. Thus systems should be designed with
appropriate security measures.
MOTIVATION FOR DISASTER RECOVERY
LEARNING GOALS
At the end of the module you will learn:
NEED OF CONTROLS
OBJECTIVES OF CONTROLS
To make sure data entering the computer are correct, check clerical handling
of data before it is input to a computer. Provide means of detecting and
tracing errors that occur due to bad data or bad program. Ensure that all legal
requirements are met.
CONTROL TECHNIQUES
• ORGANIZATIONAL MEASURES
Well-defined responsibility for input preparation, delivery, output use,
operation and maintenance. Changes in program and data (if any) should be
documented. Performance of task and recording must be by different persons
to prevent frauds.
PROCESSING CONTROLS
LEARNING UNIT 2
Need and methods of auditing Information systems
AUDIT METHODS
AUDITING AROUND COMPUTER : Take sample inputs and manually
apply processing rules and compare outputs with computer outputs
AUDITING THROUGH THE COMPUTER : Establish audit trail
which allows examining selected intermediate results. Control totals provide
intermediate checks
OBJECTIVES
To ensure the entire system will perform as per specification
Ensure system meets users requirements
Verify if controls function as intended
To make sure incorrect inputs, incorrect processing and incorrect outputs
(if any) will be detected during operation
Should include both computer based and manual processes
Remember that system testing is done before a system is released as ready
for operation
•SYSTEM TESTS
-Results from a program fed as input to a succeeding program
- a string of programs run one after another
-All programs in a complete system are tested together as a whole. Tested
using unreasonable data and non key data besides normal test data for whole
system
• PILOT TESTS
-Use data from manual system to test system when it is first implemented.
If it is modification of earlier computer based system use data and output
from that system
• PARALLEL RUNS
-Run both manual and computer based systems with same live data and see
if both give identical results
-If it is re-engineered (i.e.,Modified) system run both old and new systems
and compare results
LEARNING UNIT 4
Security of Information systems
SECURITY MEASURES
Regular back up of data bases every day/or week depending on the time
criticality and size
Incremental back up at shorter intervals
Backup copies kept in safe remote location
-particularly necessary for disaster recovery
Duplicate systems run and all transactions mirrored if it is a very critical
system and cannot tolerate any disruption before storing in disk.
Physical locks
Password system
Biometric authentication (Eg: Finger print)
REFERENCES
1. Most of the material in this module has been taken from Chapter 15,
Control, Audit and Security of Information in the book “Analysis and
Design of Information Systems”, 2nd Edition, Prentice Hall of India,
2002, by V.Rajaraman.
12.1 A college has 1500 students whose final examination results are declared
using computer processing. There are 5 subjects, each carrying 100 marks.
Classes are awarded as follows: Marks 60 or above I Class, 50 or above II
Class, below 50 Fail. Devise an appropriate control scheme for processing
results.
Control Measures
(i) Organizational measures. Each examiner who grades papers sends a
separate list for batches of 50 students, number of students getting >= 60,
number getting >= 50 and number below 50.
Data entry is done by a person different from the one who enters control
information. Control total check from the computer is seen by the head
examiner and compared with information on each batch sent by different
examiners.
(ii) Input preparation control. Roll nos. appended with self-checking digit
using modulus-11 system.
Records stored roll no. wise and sequence checked while processing.
Total no. of records in each batch is counted and entered in the control
record.
Each mark entered is checked if it is <=100 or >= 0.
If marks in subject P is <= 10 and subject K >= 90 such records are marked
and retrieved for inspection.
(iii) Control totals. Make batches of 50. For each batch, total marks in a specified
subject. In another subject count no. of students with marks >= 60 and enter
no. in control record. Count total records.
Processing Control
Proof figure. In each student record one more field is added which is (100 –
marks in subject 2). In processing in each batch this field is added together. The sum
of subject 2 marks is also got as control total in each batch. Let N be the no. of
records in each batch. Then sum of (100 – marks in subject 2) + sum of marks in
subject 2 = 100 * N. This is checked. Checkpoint restart is provided during
processing after every 150 seconds.
12.2 What is an audit trail?
Audit trail provides the means of pinpointing where an error occurred once an
error is detected.
12.6 What is the difference between security and privacy? Do secure systems
ensure privacy?
Security is concerned with protecting data and programs of organizations. Privacy
is concerned with the need of secrecy of data regarding individuals. For example
data on payroll may be secure if it is properly protected from fire, corruption etc. If
an authorized person who has access to this
12.7 What is the difference between security measures and control measures?
The security measures are to protect data whereas controls are to ensure that all
data is processed and processed data is correct.
12.12 What is the difference between a pilot test and a parallel test?
In pilot test a set of transactions which have been run on present system are
collected. Results of their processing on the existing manual system are also kept.
This set is used as test data when a computer-based system is initially developed.
The two results are matched. The reason for any discrepancy is investigated to
modify the new system.
In parallel tests, both manual and computer-based systems are run simultaneously
for a period of time and the results from the two systems are compared. It is good
method for complex systems but is expensive.
QUESTION BANK – MODULE 12
12.1 What is the difference between on-line and off-line data entry?
12.2 Why are input data records divided into batches for off-line data entry?
12.4 What are the main principles used in designing forms for data entry?
12.5 A good and a bad design for entering date in a form is given in Section 11.1.
What are the reasons for saying that one of them is good and the other bad?
12.6 Design a form to be used by a salesman to report to the office about the sales
12.8 Can the name of a person be used as a code, for say, his bank account? If not,
why?
12.14 What is the advantage of a serial number code? Why is it not normally used?
12.16 Design a group classification code to code (i) motor vehicles,, (ii) music
12.19 Add a Modulus-11 check digit to the codes (i) 48467, (ii) 96432, and (iii)
87646257.
character to the codes (i) 4AB9W, (ii) XBY483, and (iii) CAZ4642.
12.21 The following code was entered by an operator:449632. The last digit is a
12.22 If a code uses hexadecimal digits, what should be N if the modulus-N check digit
system is to be used with such codes? What are the allowable weights if single
digit transcription error (i.e., a code such as 45565 is wrongly entered as 48868),
12.24 A see-saw error is one in which one digit of the code is increased by x and
12.25 Why is it useful to assign sequence numbers for data records? What are the
12.26 What is the purpose of batch control record? What is the type of information
12.27 A set of data records for student examination results has the following format:
Design for these records a batch control record and a record control field and any
12.28 Give some example of fields for which a radix error check is appropriate.
12.29 What is the difference between range check and a radix check?
12.30 What are the appropriate range checks for the age of individuals in an employee
file, a high school student file, and height of students in a student file.
12.31 Give some examples of fields where reasonableness check would be applicable.
12.33 What is the main difference between menus, templates and command modes of
12.34 Design a dialogue hierarchy for entering data on customers (of a manufacturer).
12.35 Design a dialogue hierarchy and the screens for a system used to reserve seats in
1. Most of the material in this module has been taken from Chapter 15, Control,
comprehensive book cover 1000 pages) which discusses security in great details.
Going through the contents pages (pp.vii to xxx) will give a student a glimpse of
3. D.A. Watne, P.B.B. Turney, Auditing EDP Systems, Prentice Hall Inc. N.J.,
1. Data may be input to a computer off-line or on-line. In on-line entry a user enters
data interactively via a video terminal connected to the computer. In off-line data
entry data filled in forms are entered by operators in a separate PC or a data entry
machine.
3. In off-line data entry, batches of data are formed and entered. They are checked
4. To reduce errors in input, it is essential to carefully design the forms used for
entering data.
5. Important data elements are coded. Codes are necessary for unique identification,
6. There are many methods for coding. An ideal code must be concise, expandable,
7. Codes are classified as: (i) Serial number codes, (ii) Block codes, (iii) Group
classification codes, and (iv) Significant codes. Group classification codes and
They are, however, not concise, Serial and Block number codes are more concise.
They are also precise and expandable but are not meaningful and comprehensive.
8. Any error made in entering important data fields such as account codes and
9. The most common errors made during data entry are: a single digit is incorrectly
entered or any two digits in the code are interchanged. These errors are called
respectively single transcription and transposition errors and account for 96% of
10. Given a code, the digits in it starting from the last digit are multiplied by weights
2, 3, 4, etc., and the products are added. The sum is divided by 11. The remainder
is subtracted from 11. This number (which is called a check digit) is appended as
the last digit of the code. The code constructed in this way is called a midulus-11
11. After data entry the digits in the code starting from the last digit are multiplied by
weights 1, 2, 3, 4, etc., and the products are added. The sum is divided by 11. If
12. Modulus-11 check digit code guarantees detection of all single transcription and
13. It is essential to design good data validation programs to prevent data entry errors
from corrupting files of input data. Validation programs need information for
preparation.
14. Important control mechanisms are; giving unique sequence numbers to each data
15. The same data is entered by two different persons and compared to reduce
transcription errors.
16. Besides this, individual data fields are checked using information on their range of
allowed values, range of reasonable values, and relationships between different
17. With the advent of Personal Computers, remote terminals connected to a computer
interactively.
18. For interactive data input, special screens are designed on video terminals for easy
data entry. Errors in data entry are instantly detected by a validation program
19. Common methods of interactive data input is by use of menus, templates and
20. A menu method is used to pick one out of many alternatives, a template method to
enter new data, and a command method to add and delete data.
21. These methods are combined to provide a user the most appropriate technique for
ELECTRONIC COMMERCE
OBJECTIVE QUESTIONS
LEARNING UNIT 1
13.1.2 For carrying out B2B e-Commerce the following infrastructure is essential:
(i) World Wide Web
(ii) Corporate network
(iii) Electronic Data Interchange standards
(iv) Secure Payment Services
(v) Secure electronic communication link connecting businesses
(a) i, ii, iii (b) ii, iii, iv
(c) ii, iii, iv, v (d) i, ii, iii, iv, v
13.1.3 For carrying out B2C e-Commerce the following infrastructure is essential:
(i) World Wide Web
(ii) Corporate network
(iii) Electronic Data Interchange standards
(iv) Secure Payment Services
(v) Secure electronic communication link connecting businesses
(a) i, iv (b) i, iii, iv
(c) ii, iii (d) i, ii, iii, iv
13.1.4 For carrying out C2C e-Commerce the following infrastructure is essential:
(i) World Wide Web
(ii) Corporate network
(iii) Electronic Data Interchange standards
(iv) Secure Payment Services
(v) Secure electronic communication link connecting businesses
(a) i and ii (b) ii and iv
(c) i (d) i and iv
LEARNING UNIT 3
13.3.18 DES
(i) is a symmetric key encryption method
(ii) guarantees absolute security
(iii) is implementable as hardware VLSI chip
(iv) is a public key encryption method
(a) i and ii (b) ii and iii
(c) i and iii (d) iii and iv
13.4.5 The bank has to have the public keys of all customers in SET protocol as it
has to
(a) check the digital signature of customers
(b) communicate with merchants
(c) communicate with merchants credit card company
(d) certify their keys
13.4.8 In the NetBill’s protocol for small payments for services available in the
internet.
(i) the customer is charged only when the information is delivered
(ii) the vendor is guaranteed payment when information is delivered
(iii) the customer must have a certified credit card
(iv) the customer must have a valid public key
(a) i, ii (b) i, ii, iii
(c) i, ii, iii, iv (d) i, ii, iv
Motivation
With the emergence of internet and the world wide web new methods of carrying
out business transactions using the world wide web began to be explored.
web.
ELECTRONIC COMMERCE
Learning Units
With the emergence of internet and the world wide web new
methods of carrying out business transactions using the world wide
web began to be explored.
Electronic Commerce emerged as a very important application of
the world wide web.
Today it is difficult to find an isolated computer. Computers in an
organization are interconnected to form intranets and intranets of the
cooperating organizations are interconnected to form extranet.
CLASSIFICATION
•CLASSIFIED AS : BUSINESS TO BUSINESS (B2B)
BUSINESS TO CUSTOMER (B2C)
CUSTOMER TO CUSTOMER (C2C)
PSTN or
LEASED LINE
Vendor Purchase store accounts
Local computers
Local computers
• Local LAN of business would normally follow TCP/IP protocol of internet and
is called corporate intranet
• Purchase order entered by business1 in its PC and electronically dispatched to
vendor (by e-mail)
• Vendor acknowledges electronically the order
• Vendor dispatches goods(physically) and delivery note electronically to business1
Broker’s website
•Advertises - "for sale"
•Brings together buyer and seller
•Transports items
•Collects fee from both Seller
&Buyer
• Cheaper method for use by small business is to use XML for EDI
and e-mail,instead of VAN
• Establish EDI form standard - XML appropriate – Document Type
Definition(DTD) publicised using organization’s web page-
cooperating business can use a DTD to interpret XML documents.
•Use MIME (multipurpose internet mail extension) to attach EDI
forms to e-mail messages
•Now proxy firewall is the initiator of all sessions and thus knows
every activity - thus ensuring security
•Firewall with a proxy function replaces the source address of
transaction requestor with its own IP address
-this ensures that others on internet see only firewall's IP
address - all other IP addresses of organization are hidden
Encryption method
Step 1: Apply an initial permutation on a block.Result is B=IP(P)
where P is the 64 bit block IP Initial Permutation function and
B the result.
Step 2: Split B into 32 bit blocks
Li = leftmost 32 bits
Ri = rightmost 32 bits.
Step 3: Pick a 56 bit key. Permute it
Step 4: Left circular shift it by 1 bit giving K1.
L1 R1 Permute
R
O K1 Left circular
U F P1 shift
N
D
+
1 L1 + F(R1,K1)
L2 R2 Permute
R
O K2
U F P2 Left circular
N . shift
D . .
2
+ L2 + F(R2,K2) . .
. .
L3 . R3
K16 . . Left circular
.
P16 shift
.
+
.
L16 R16
Permute Permute
32 bits 32 bits 28 bits 28 bits
L1 R1 KL KB Left Shifts
K1
Round1 L1
F(R1,K1)
Permute
+ and
48 bits Contract
L2 R2
KL KB For next key
.
. Repeat 15 more times
.
.
64
Input block DES 64 Encrypted
CHIP Block
Key
56
• The algorithm is
Cipher text = Ek3 [Dk2 [Ek1 [Plain Text]]]
where Ek[X] = DES Encryption of X using key K
and Dk[X] = DES Decryption of X using key K
Decryption
K3 K2 K1
Cipher text E D E Plain text
• Brute force method to break triple DES with 106 decrypts per micro
second will take 5.9 X 10 30 years!
• Even at 1012 fold increase in computer speed will make triple DES
secure against brute force attacks to break code
• No trap door
• Must use 128 blocks and key lengths of 128,192 or 256 bits
depending on the level of security desired.
SENDER A RECEIVER B
RSA Algorithm
•Assume Plain text is encrypted with S’s private key and get cipher
text = (14)3 mod (33)=5
•RSA Public key has two keys – a private secret key and a
public open key.
•RSA implemented as a program (software) It is
computationally complex to encode plain text and decode
cipher text using RSA
•DES Same key for encryption and decryption It is a single
key system - Also called symmetric key system
KEY RECOVERED
ENCRYPT DECRYPT KEY
PLAIN
PLAIN TEXT TEXT
DES DES
CIPHER
TEXT
Advantages:
• Key is sent along with the plain text. Encrypted using RSA
• Key small-fast to encrypt/decrypt
• Each transaction using DES can have a different key- higher security and
also fast.Key directory not needed.
REQUIREMENTS
•Needed to ensure that a message received from say "A" is indeed
from him
•Signature should be tied to the message sent by "A"
SENDING STEP
•Sender sends key using RSA system
•Sender sends plain text "M" using DES
•Receiver decrypts cipher text using DES and the key received
from sender call it "MR"
•Sender hashes plain text "M' using a hashing function - let the
hashed text be "H"
•Hashed text "H" encrypted by sender using his Private key
•DS is his signature as H encrypted with his private key
•DS decrypted by receiver using sender's Public key and obtains
"H"
Authentication step
•Receiver hashes “MR" using hash function and gets“HR"
•Receiver compares “H" with “HR"
•If they match then it is a signed authenticated plain text
•TM is signed as sender has encrypted the hashed text using his
private key which he only knows.If H=(MR)(HASHED) = HR
where MR is the received message then MR must have been sent by
sender. He cannot repudiate.
K
K
M ME MR
SENDER ENCRYPT DECRYPT RECEIVER
no
DS
Hash ENCRYPT DECRYPT Equal Hash
H H HR
Signature OK
Accept M
Step3
Acquirer Issuing bank
Step3
Step6
12. Merchant can decrypt DS using customer’s public key and get
PPD. Customer must have a certified public key for verification.
Step6
Step3
Customer Acquirer Bank
Step4
Step 7
Step3: Acquirer forwards to bank. Bank decrypts CCA with its private
key.Checks validity of credit card and balance. If OK informs acquirer
85 of 92
13.4.19 Systems Analysis And Design © V. Rajaraman
Electronic Cheque Payment
•Most cheque based transactions will be between businesses -thus special hardware
attached to PC’s for signing payments
•Signature encrypted by hardware
•All public keys of business partners authenticated by certifying agencies
Steps in transaction
1 Purchaser sends purchase order and payment advice signed with his private key
to vendor.He also sends his public key certificate encrypted with vendor's public key
to vendor
2 Vendor decrypts with his private key, checks certificate and cheque, attaches
deposit slip, encrypts with bank's public key and sends it to bank. he also sends his
public key certificate
3 Bank checks signatures, credits and clears cheque
4 Credit advice goes to vendor,& consolidated debit advice sent to purchaser
periodically
13.4.20 Systems Analysis And Design © V. Rajaraman 86 of 92
Clearing Cheque Payment Electronically
Purchaser Vendor
Order form
Signature Card Signature Card
Order Credit
Debit Advice Advice
Cheque
Signature
Certificate
Deposit slip
Secure Envelope Cheque
Purchaser’s Clearing Vendor’s Signature
Bank House Bank Certificates
Deposit Endorsement
Cheque Certificate
5
Amt ID Signature
Customer Vendor
2
10 1568 86ABC
5 6789 86ABC 4
1 Yes 3
OK?
Bank
Spent Coins
1. Withdraw
2. Pay Amt ID
3. Check if OK . .
4. Replying OK . .
5. Accept order
ELECTRONIC COMMERCE
Contents
2. LEARNING UNIT 1
What is E-Commerce?
3. LEARNING UNIT 2
Electronic Data Interchange
4. LEARNING UNIT 3
Security of E-Commerce
5. LEARNING UNIT 4
Payment in E-Commerce
6. REFERENCES
ELECTRONIC COMMERCE
Motivation
With the emergence of internet and the world wide web new methods of
carrying out business transactions using the world wide web began to be
explored. Electronic Commerce emerged as a very important application of
the world wide web. Today it is difficult to find an isolated computer.
Computers in an organization are interconnected to form intranets and
Intranets of the cooperating organizations are interconnected to form
extranet. It is cheaper and faster to carry out business transactions within an
organization and among organizations electronically using the network
connection. Thus it is important to understand how business transactions are
carried out electronically reliably and securely. When designing information
systems it is essential to understand the emerging web based transactions. A
number of organizations are exploring how to carry out all day-to-day
operations electronically using the intranet in a so-called paperless system. It
is thus important for a student to understand how to design such systems.
Learning Goals
What is E-Commerce?
DEFINITION
Sharing business information, maintaining business relationships and
conducting business transactions using computers connected to a
telecommunication network is called E-Commerce
CLASSIFICATION
CLASSIFIED AS : BUSINESS TO BUSINESS (B2B)
BUSINESS TO CUSTOMER (B2C)
CUSTOMER TO CUSTOMER (C2C)
E-commerce Applications-example
PSTN or
LEASED
LINE
Vendor Purchase store accounts
Local computers Local computers
1.Agreed on formats for Purchase order, delivery note, payment order etc.
Standard known as EDI (Electronic Data Interchange Standard) is used to
send documents electronically.
2.Each Business must have corporate intranet and the two nets are connected
by PSTN or leased line.
3.Transactions must be secure - particularly if PSTN is used.
4.Secure electronic payment methods are required.
Customer Customer
1 Internet 2
Broker’s website
•Advertises - "for sale"
•Brings together buyer and seller
•Transports items
•Collects fee from both Seller &Buyer
Advantages Of E-commerce
Layered architecture
LEARNING UNIT 2
Electronic Data Interchange
EDI Specification
Defines several hundred transaction sets corresponding to each type of
business document such as invoice, purchase order etc. Defines data
segments - corresponding to groups of data elements such as purchase order
line. Defines data elements - which are individual fields such as price,
quantity etc
EDI Standards
•ANSI X.12 standard proposed by American National Standards Institute
•EDIFACT (Electronic Data Interchange For Administration Commerce and
Trade) standardized by United Nations Economic Commission for Europe
for international trade
•EDIFACT used in India for government transactions - customs, central
excise etc.
VAN provides post box for all subscribers, guarantees delivery and is open
24 hours, 7 days a week. Provides security, acknowledgement, audit trails
for transactions, non repudiation by users. Some VAN’S provide conversion
of EDI forms to application format. Disadvantages are it has high cost, that
may not be cost-effective for smaller businesses
Security of E-Commerce
Any one from inside or outside an organization give their user id, password,
service required to the firewall machine which acts as one's proxy (ie.does
ones work on his behalf). Proxy firewall is now server to the requestor's
desktop PC and also a client to some other requested service acting on
requestor's behalf. Firewall needs proxy agent for each service requested
such as FTP, HTTP, TELNET etc. Now proxy firewall is the initiator of all
sessions and thus knows every activity - thus ensuring security. Firewall
with a proxy function replaces the source address of transaction requestor
with its own IP address
-this ensures that others on internet see only firewall's IP
address - all other IP addresses of organization are hidden
Substitute character by
the one 4 letters away WXLMM IWEWQ IXEBK
(eg AÆE,ZÆD)
Cipher text
Symmetric Encryption
PLAINTEXT (m1,m2…mn )
CIPHER TEXT (c1 c2, c3….cn )Where ci = k( Ti (mi) ) In which Ti is
permutation of ith character and k is substitution.
Decryption by applying same transformations in reverse on cipher text.
This method called symmetric key encryption as encryption and decryption
performed using same key. Normally the encryption/decryption algorithm is
publicised. Only key is secret. Problem is to ensure secrecy of key when it is
sent to partner. If the key is to be sent to many partners need for separate key
for each partner. Directory of who was sent which key is to be kept and used
for each transaction. Directory should be secure. If large number of partners
are there key distribution becomes very difficult. Advantage of symmetric
key is easy and fast to transform plain text to cipher text.
Digital Encryption Standard
Before applying DES the text is split up into the 64 bit blocks.
DES applied on each 64 bit block.
Encryption method
Step 1: Apply an initial permutation on a block.Result is B=IP(P)
where P is the 64 bit block IP Initial Permutation function and
B the result.
Step 2: Split B into 32 bit blocks
Li = leftmost 32 bits
Ri = rightmost 32 bits.
Step 3: Pick a 56 bit key. Permute it
Step 4: Left circular shift it by 1 bit giving K1.
Step 5: Perform a complex sequence of operations and obtain
X1 = F(R1,K1) (The complex set of operations include table look up
and dropping bits).
Step 6: Find R2 = L1 + X1
Step 7: Set L2 = R1
Repeat steps 2 to 7 16 times to get B16 = L16,R16
Step 8: Apply inverse of initial permutation on B16
The result is the encrypted block
In summary the DES encryption applies the following transformation 16
times.
The ith round transformation are
Li+1= Ri
Ri+1= Li ⊕ F(Ri,Ki)
Each round has a different key Ki
For Decryption the process of encryption is reversed. The encrypted block is
permuted using IP-1.On this transformations are applied starting with K16
and going to K1 last. The keys and F are same as those used in encryption
process.
The encryption process uses simple binary operations. They can thus be
realised in hardware as an integrated circuit chip. DES chips are
inexpensive. Key is externally fed.
Details of One Round of DES Encryption
DES Chip
64
Input block DES 64
Encrypted
CHIP Block
Key
56
Observe that from initial key others are derived by circular shifts
Decryption chip inputs encrypted block and key and the output is decrypted block
DES - Discussion
Cryptananalysis is technique for breaking a code, given the samples of
encrypted messages. If plain text also known it is somewhat easier.
DES code can be broken if key is found. The easiest method of breaking a
code is by brute force of trying out all possible keys to decrypt message.
With increase in speed of computers it has now been shown that DES key
can be found in less than 12 hrs with a fast computer (1 Million decryption
per microsecond). Thus DES is practically useless now (original DES was
invented in mid 70s). New more secure symmetric encryption algorithm is
needed. An extension of DES called triple DES is shown to be more secure.
Triple DES
Triple DES uses three different keys and three executions of DES
algorithm.
The algorithm is
Cipher text = Ek3 [Dk2 [Ek1 [Plain Text]]]
where Ek[X] = DES Encryption of X using key K
and Dk[X] = DES Decryption of X using key K
K3
Cipher text
D E (64bit block)
K1
D E Plain text
Using DES thrice is equivalent to having a DES key length of 168 bits.
Brute force method to break triple DES with 106 decrypts per micro second
will take 5.9 X 10 30 years! Even at 1012 fold increase in computer speed
will make triple DES secure against brute force attacks to break code
The only reason D is used as middle step in triple DES is to allow decryption
of data encrypted using single DES hardware. In this case K3=K2=K1
(Single key used) (See block diagram)
Triple DES will be quite popular for a foreseeable future as it is very secure,
can be realised by simple hardware. Triple DES has two disadvantages
1. It is slow to implement in software
2. It uses 64 bit blocks.
Thus new standards were explored.
Requirements of Symmetric Key Cryptography Algorithm(NIST) –
Advanced Encryption System(AES)
• National Institute for Standards Technology put out a call for proposals for
new crypto system with following requirements.
• Must provide a high level of security (i.e. difficult to decrypt in finite time)
• Must be exportable
• No trap door
• Must use 128 blocks and key lengths of 128,192 or 256 bits depending on
the level of security desired.
RSA Algorithm
• If we encrypt a plain text using S’s private key and send it to R,R must be
able to decrypt it with S’s public key.
•Assume Plain text is encrypted with S’s private key and get cipher text =
(14)3 mod (33)=5
Advantages:
• Key is sent along with the plain text. Encrypted using RSA
• Key is small-fast to encrypt/decrypt
• Each transaction using DES can have a different key- higher security and
also fast.Key directory not needed.
Digital Signature
REQUIREMENTS
•Needed to ensure that a message received from say "A" is indeed from him
•Signature should be tied to the message sent by "A"
SENDING STEP
•Sender sends key using RSA system
•Sender sends plain text "M" using DES
•Receiver decrypts cipher text using DES and the key received from sender
call it "MR"
•Sender hashes plain text "M' using a hashing function - let the hashed text
be "H"
•Hashed text "H" encrypted by sender using his Private key
•DS is his signature as H encrypted with his private key
•DS decrypted by receiver using sender's Public key and obtains "H"
Authentication step
•Receiver hashes “MR" using hash function and gets “HR"
•Receiver compares “H" with “HR"
•If they match then it is a signed authenticated plain text
•TM is signed as sender has encrypted the hashed text using his private key
which he only knows.If H=(MR)(HASHED) = HR where MR is the
received message then MR must have been sent by sender. He cannot
repudiate.
Signing A Message Using Digital Signature
Payment in E-Commerce
Step 3: Acquirer checks with the issuing bank validity of card and credit-
available
Step 4: Acquirer authorizes sale if all OK and sends approval slip which is
printed at merchant’s terminal.
Step 6: The acquirer pays the money to merchant and collects it from the
appropriate issuing bank. The bank sends monthly statement to customer and
collects outstanding amount.
Block Diagram Of Steps In Credit Card Transaction
Main Problems
Main Features
•Purchase invoice details are not revealed to the acquirer.Only the credit
card number and total amount are revealed to him
4. Hash POA using standard Hash algorithm such as RSA’s MD5. Call it
POD.
5. Hash CCA using MD5. Call it CCD
6. Concatenate POD and CCD. Call it (POD||CCD)
10. Merchant decrypts it using his private key. He thus gets Purchase order
+Amount. He can hash it and get POD
11. CCD and DS also sent to merchant. From CCD merchant cannot find
CCN.
12. Merchant can decrypt DS using customer’s public key and get PPD.
Customer must have a certified public key for verification.
Step3: Acquirer forwards to bank. Bank decrypts CCA with its private
key.Checks validity of credit card and balance. If OK informs acquirer
2. Vendor decrypts with his private key, checks certificate and cheque,
attaches deposit slip, encrypts with bank's public key and sends it to
bank. he also sends his public key certificate
MAJOR STEPS
•When customer accepts quote for information, vendor sends encrypted
information without key to customer
•Payment order sent to vendor with checksum of information obtained. It is
signed by customer
•Vendor sends to NET BILL copy of purchase order and the key for
decryption
•NET BILL checks credit of customer. If ok it sends key to customer.
Credits vendor account and debits customer account. Key sent to customer
to decrypt information
•Customer decrypts information
1. Most of the material in this chapter are taken from Chapter 16,
Electronic Commerce of the book Analysis and Design of Information
Systems (2nd edition) by V.Rajaraman, Prentice-Hall of India, New
Delhi,2004
5. Most traditional Systems Analysis and Design book such as the one
by Kendall and Kendall do not separately discuss E-Commerce, they
have a cursory treatment at various places in the book.
System Analysis and Design/Electronic Commerce Multiple Choice Questions
c. PGP is used
d. TCP/IP is used
13.19 EDI standard
a. is not easily available
b. defines several hundred transaction sets for various business forms
c. is not popular
d. defines only a transmission protocol
13.20 By security in e-Commerce we mean
(i) Protecting an organization’s data resource from unauthorized access
(ii)Preventing disasters from happening
(iii) Authenticating messages received by an organization
(iv) Protecting messages sent on the internet from being read and understood by
unauthorized persons/organizations
a. i, ii
b. ii, iii
c. iii, iv
d. i, iii, iv
13.21 A firewall is a
a. wall built to prevent fires from damaging a corporate intranet
b. security device deployed at the boundary of a company to prevent
unauthorized physical access
c. security device deployed at the boundary of a corporate intranet to protect
it from unauthorized access
d. device to prevent all accesses from the internet to the corporate intranet
13.22 A firewall may be implemented in
a. routers which connect intranet to internet
b. bridges used in an intranet
c. expensive modem
d. user’s application programs
13.23 Firewall as part of a router program
a. filters only packets coming from internet
c. i and iii
d. iii and iv
13.38 DES using 56 bit keys
a. Cannot be broken in reasonable time using presently available computers
b. Can be broken only if the algorithm is known using even slow computers.
c. Can be broken with presently available high performance computers.
d. It is impossible to break ever.
13.39 Triple DES uses
a. 168 bit keys on 64-bit blocks of plain text
b. Working on 64-bit blocks of plain text and 56 bit keys by applying DES
algorithm for three rounds.
c. Works with 144 bit blocks of plain text and applies DES algorithm once.
d. Uses 128 bit blocks of plain text and 112 bit keys and apply DES
algorithm thrice.
13.40 ripple DES
a. Cannot be broken in reasonable time using presently available computers.
b. Can be broken only if the algorithm is known using even slow computer.
c. Can be broken with presently available high performance computers.
d. It is impossible to break ever.
13.41 Triple DES
a. is a symmetric key encryption method
b. guarantees excellent security
c. is implementable as a hardware VLSI chip
d. is public key encryption method with three keys.
13.42 Public key encryption method is a system
a. which uses a set of public keys one for each participant in e-Commerce
b. in which each person who wants to communicate has two keys; a private
key known to him only and a public key which is publicized to enable
others to send message to him.
c. which uses the RSA coding system.
d. which is a standard for use in e-Commerce.
c. iii and iv
d. i and iv
13.48 A digital signature is
a. a bit string giving identity of a correspondent
b. a unique identification of a sender
c. an authentication of an electronic record by tying it uniquely to a key only
a sender knows
d. an encrypted signature of a sender
13.49 A digital signature is required
(i) to tie an electronic message to the sender’s identity
(ii)for non repudiation of communication by a sender
(iii) to prove that a message was sent by the sender in a court of law
(iv) in all e-mail transactions
a. i and ii
b. i, ii, iii
c. i, ii, iii, iv
d. ii, iii, iv
13.50 A hashing function for digital signature
(i) must give a hashed message which is shorter than the original message
(ii)must be hardware implementable
(iii) two different messages should not give the same hashed message
(iv) is not essential for implementing digital signature
a. i and ii
b. ii and iii
c. i and iii
d. iii and iv
13.51 Hashed message is signed by a sender using
a. his public key
b. his private key
c. receiver’s public key
d. receiver’s private key
ELECTRONIC COMMERCE
WORKED EXAMPLES
Distributor’s
Reminder if bill not paid within one warehouse
Book month (14)
Warehouse of Received(6)
Bookseller
Acknowledge order and send bill(5)
Stock goes Enquire
below level(1) Availability (2) Distributor’s
Bookseller website
Display various books(3)
Cheque sent
Places order (4) after Ok’s
verification of Cheque
Send cheque(7) seller’s public (11)
key certificates
Receipt to
Book supplied to seller(13) Distributor’s (8)
bookseller (6) bank
Send cheque for clearance (9)
Book seller’s
bank Debit advice to book
seller’s bank (12)
Request for
items (3)
Post Description of
Website of Y items (1)
Display items
(2) A
B
Case II:
The broker Y can act as an advertising agency, make the two persons
negotiate the price. Then Y takes all responsibilities until the item is
delivered. For this it gets some commission from both the parties.
This is described in the block diagram below:
Communication regarding
the price settled (6)
Request for
items (3) Post Description of
Website of Y items (1)
Display items
(2) A
B
Acknowledge order
(10) Ok’s credift
Send credit card(9)
card details
(8)
Credit Card
companies
Y’s Bank A/C computer
Shiping
Advice (11)
Credit to Y’s Debit advice giving
Bill sent to A/C (11) Credit card no (9)
B(12)
B’s bank
Request for
items (3) Post Description of
Website of Y items (1)
Display items
(2) A
B
Acknowledge order
(7) Ok’s credift
Send credit card(6)
card details
(5)
Credit Card
companies
Y’s Bank A/C computer
Shiping
Advice (9)
Credit to Y’s Debit advice giving
Bill sent to A/C (11) Credit card no (8)
B(11)
B’s bank
13.5 What is VAN? What services do VANs provide? What are the
advantages and disadvantages of VAN?
VAN stands for Value Added Networks which provide services to
Businesses which are members
VANs provide post boxes for each of its subscribers who want to use their
services. Some VANs provide conversion of forms to standard EDI format.
The disadvantage of VAN services is high cost.
13.6 Why is security important in e-Commerce? What are the security issues
to be taken into account while designing a security system for e-
Commerce?
Since in e-Commerce the transaction and communication takes place
between two entities using PSTN, security issue is important.
The different security issues that are taken into account , while designing
a security system for e-Commerce are given below:
• As internet connects several networks one has to be sure that
unauthorised persons do not gain access to the company’s
confidential information. Both hardware and software solutions are
needed to ensure this.
• The communication between companies should be protected from
snoopers.
• When a company receives a message, it must be sure from whom it
has come. In electronic communication system there should be
digital signature so that the receiver knows that it has come from an
authorised business. It should also ensure that the authentication of
digital signature must be maintainable in a court of law in case of
disputes.
13.8 What is a hardened firewall host? What are its functions? In what way is
it different from proxy application gateway?
The hardened firewall is a computer that will require inside or outside users
to connect to the trusted applications in it before connecting to external
world.
The major functions of hardened firewall are:
• Security processes are concentrated on one machine
• Names of systems on LAN, e-mail address etc., are hidden from
outsiders
• Network service management is simplified by locating services such
as ftp, e-mail, search engines etc., in the firewall machine.
The difference between hardened firewall and proxy application gateway
is that for hardened firewall the inside or outside users are required to
connect to the trusted application in firewall machine before connecting to
any machine. All the information will pass through this computer, hence it
is more secure.
13.10 What is DES? Explain what DES does when the following hexadecimal
plain text is input to a DES hardware.
A1907FBCD986543201FED14E890ABCA5
DES is a symmetric cryptographic algorithm. It is a block cipher, and
encrypts data in 64-bit blocks. The same algorithm and key are used for
both encryption and decryption.
The key length is 56 bits. The key is usually expressed as a 64-bit
number, but every eighth bit is used for parity checking and is ignored.
These parity bits are the least-significant bits of the key bytes.
After the initial permutation, the block is broken into a right half and a
left half, each 32 bits long. Then there are 16 rounds of identical operations,
called Function f, in which the data are combined with the key. After the
sixteenth round, the right and left halves are joined, and a final permutation
(the inverse of the initial permutation) finishes off the algorithm.
In each round as shown in the figure (page 210) the key bits are shifted,
and then 48 bits are selected from the 56 bits of the key. The right half of
the data is expanded to 48 bits, combined with 48 bits of a shifted and
permuted key via an XOR, then again converted to 32 new bits, and
permuted again. These four operations make up Function f. The output of
Function f is then combined with the left half via another XOR. The result
of these operations becomes the new right half; the old right half becomes
the new left half. These operations are repeated 16 times, making 16 rounds
of DES.
If Bi is the result of the ith iteration, Li and Ri are the left and right halves
of Bi, Ki is the 48-bit key for round i, and f is the function and does all the
substituting and permuting and XORing with the key, then a round looks
like:
Li = Ri – 1
Ri = Li – 1 ⊕ f(R i – 1, Ki)
IP
Lo Ro
⊕ f
K1
⊕ f
K2
⊕ f
K16
IP-1
Cipher text
13.11 What do you understand by symmetric key cryptography? What are
the main advantages and disadvantages of symmetric key
cryptography?
The cryptography in which the same key is used for encryption and
decryption and known to both parties while exchanging information is
known as symmetric key or private key cryptography.
The disadvantage of this method is , the difficulty in securely distributing
the keys to authorised
13.12 What is public key encryption? In what way is it different from private
key encryption? Why is it important in e-Commerce?
The encryption in which two keys are used for encryption and decryption is
called public key encryption. One of these keys is known as public key
which is available to anyone wanting to send encrypted message.
It is different from private key encryption in the sense that it uses two
keys. One key is used for encryption and other is used for decryption. A
private encryption, on the other hand uses one key for both encryption and
decryption.
Public key system is important in e-Commerce because the public key of
an organization is publicized globally. The customers encrypt a message
using receiving organization’s public key, which is decrypted by the
receiving organization using its private key. Similarly the organization
encrypts the message using particular customer’s public key which is then
decrypted by the customer using their private key.
With this secure communication can be established which is an important
aspect of e-Commerce.
13.13 What are the main differences between DES based encryption and
RSA based encryption? Is it possible to combine these two systems? If
so explain how?
The main difference between DES based encryption and RSA based
encryption is
• DES uses a single key for both encryption and decryption whereas
RSA uses two keys for the same
• DES is faster as it is implemented through hardware
• RSA is secure but slow since it uses complex computational
procedure. Breaking the key is not easy
Yes, one can combine the two keys. DES can be used to encrypt/decrypt
messages using one key. The key itself can be sent using RSA.
persons.
13.14 Give a block diagram of a system for transmitting a signed purchase
order from business 1 to business 2.
See Fig. 16.13 of text.
13.16 Explain SET protocol used in credit card transactions. What is the
main interesting aspect of SET protocol which gives confidence to
customers transacting business using the internet?
See Sec 16.6.1 steps 1 to 7
The main interesting aspect of SET protocol which gives the confidence
to the customer is that the merchant does not know the credit card number
of the customer.
13.17 What are the main characteristics of cash payment in contrast with
cheque payment? Why are governments not sympathetic to large cash
transactions in e-Commerce?
Cash payments are used in C2B applications which involve small payments
whereas cheque payment system is generally used in B2B applications in
which higher amount of transactions are carried out.
Cheque payments are much more secure and traceable compared to cash
payments.
A sophisticated scheme called transaction blinding has been invented, using
which cash payments cannot be traced. As governments do not like
untraceable large cash transactions it is not sympathetic to large cash
transactions in e-Commerce.
13.18 Explain how cash transactions take place in e-Commerce. What special
precautions should be taken by a bank to ensure that a customer does
not double spend the same electronic coins issued to him/her?
Cash Transaction in e-Commerce
A customer can withdraw “coins” in various denomination from his bank
and keeps in his PC. The withdrawal takes place by the customer giving a
serial number and denomination of each coin and requesting his bank to
digitally sign it. The signed coins are of the form:
(serial no., denomination, signature of bank).
The bank will store a copy of issued coins. The customer pays a vendor by
cash by sending the signed coin. The vendor sends it to the issuing bank (or
to his bank which may deal with the issuing bank via a clearing house). The
bank checks whether it has been signed by it and not yet spent. If it is OK it
informs the vendor, who now can despatch the goods. The bank transfers
the cash to the vendor’s account. The coin is stored in the “spent amount
database” of the bank so that if the coin is presented again it can be
dishonored.
Bank manages “spent amount database” which stores the information about
the coin spent by the customer. If the customer tries to reuse the coin bank
can easily trace it out from the “spent amount database”.
QUESTION BANK
13.2 Explain B2B E-Commerce using an example of a book distributor who stocks a
large number of books, which he distributes via a large network of book sellers.
Assume that the distributor has stocks of books of a large number of publishers
and book sellers order books as and when their stock is low. Distributors give 1
13.3 Explain B2C E-Commerce of a customer reserving airline tickets from his
layers with the physical network at the bottom layer and applications at the top
layer.
13.8 What do you understand by EDI? Is EDI used in B2C or B2B E-Commerce?
13.9 What are two major EDI standards used in E-Commerce? Which is the
13.10 What is VAN? What services do VANs provide? What are the advantages and
disadvantages of VAN?
13.12 If email is to be used to exchange EDI between two businesses what are the
points on which they should agree?
13.13 Why is security important in E-Commerce? What are the security issues to be
13.15 What is packet screening? Which hardware device performs packet screening?
13.16 What is a proxy application gateway? What are the functions of this gateway?
13.17 What is a hardened firewall host? What are its functions? In what way is it
Apply the permutation (231564) and the substitution: (letter Æ letter + 6 ) and
13.19 What is DES? Explain what DES does when the following hexadecimal plain
A1907FBCD986543201FED14E890ABCA5
13.20 What do you understand by symmetric key cryptography? What are the main
13.21 What is public key encryption? In what way is it different from private key
13.22 What are the main differences between DES based encryption and RSA based
13.23 Given two prime numbers 23 and 41 design a RSA system. Explain with an
13.25 Give a block diagram of a system for transmitting a signed purchase order from
business 1 to business 2.
13.27 What types of electronic payment systems are required in E-Commerce? Why
where it is used.
13.28 Explain SET protocol used in credit card transactions. What is the main
13.29 In using SET protocol who has to keep a data base of public keys of all
customers? How does the customer assured that he will not be double charged
13.30 What are the main differences between electronic cheque payment and credit
Commerce.
13.31 Why is a different payment system needed for small payment for internet
services? Explain how one such system functions. How does the system make
sure that payment is made only after information for which payment has been
E-Commerce?
13.33 Explain how cash transactions take place in E-Commerce. What special
precautions should be taken by a bank to ensure that a customer does not double
1. Most of the material in this chapter are taken from Chapter 16, Electronic
Commerce of the book Analysis and Design of Information Systems (2nd edition)
by V.Rajaraman, Prentice-Hall of India, New Delhi,2004
5. Most traditional Systems Analysis and Design book such as the one by Kendall
and Kendall do not separately discuss E-Commerce, they have a cursory
treatment at various places in the book.
SUMMARY OF MODULE 13
special precautions are taken, loss of privacy, lack of legislation to settle disputes
The lowest layer in the physical network which may be a LAN connected by
unshielded twisted pair wires, Public Switched Telephone Networks, WAN using
optical fibre etc. The next layer is the logical network such as internet, intranet and
extranet (all of which use TCP/IP protocol). Resting on this is the world wide web
and services on it such as web pages, browsers, and search engines. Above this is
Deleted: r
the security layer which deals with encryption, digital signatures etc. Resting on
this are Electronic Data Interchange and Electronic payment services. All these
1
6. At the physical level most organizations use local area networks using unshielded
Deleted: ck po
twisted pair cables and Ethernet protocol. The cheapest method of interconnecting
7. Internet is the most important logical network which enables E-Commerce. The
networks which use TCP/IP protocol are called intranets. Organizational intranets
called an Extranet.
9. Web pages are located using a scheme known as Universal Resource Locator
(URL) which is its address. Web browsers are used to locate web pages.
10. Web pages are created using a language known as hypertext markup language
Deleted: html
(HTML). Words can be picked and tagged to connect the page with other related Deleted: mpile
pages.
Deleted: which
11. It is imperative for every organization to have a website in today's internet world to
publicise their functions. The page must be attractively designed and updated
regularly.
2
Deleted: Network
13. EDI standards have been published by American National Standards Institute and
Deleted: -Commerce
by United Nations Economic Commission for Europe. The United Nations Deleted: n
standard is called EDIFACT and may become the standard for international
commerce.
14. Value Added Network Services provide electronic post boxes to their clients to
such as EDIFACT.
Deleted: le
15. If internet is used for exchanging business documents Secure Multipurpose Internet
17. Messages exchanged between organizations using the internet can be easily tapped
18. Message (plain text) is encrypted by transposing characters of the plain text by a
19. This general idea is used in a standard encryption method called Digital Encryption
3
20. DES has been implemented as a hardware device. DES hardware may be attached
Deleted: it
to a computer's output port so that messages sent from the computer are encrypted.
21. A system in which the encrypting and decrypting keys are same is called a
22. The main problem with a symmetric key system is the need to distribute the key
Deleted: It is, however, fast.
securely to all participating businesses. Symmetric key encryption/decryption is
fast.
23. Two key based system called RSA system does not require distributing secret keys.
It has two keys for each participant in the communication, a private key and a
public key. If A wants to send a message to B, A encrypts the message using B's
public key. B decrypts it using his private key. Thus there is no key distribution
24. RSA system is based on the fact that it is difficult to factor two prime components
Deleted: when
from their product, particularly, when the prime numbers are large. Deleted: is known
Deleted: RSA system is symmetric.
25. In RSA system, a message encrypted with a private key, can be decrypted with Deleted: other words
Deleted: is
the corresponding public key. This is used in digital signature.
4
26. In order to sign a message the sender hashes the message with a known algorithm
to get a message digest MD. MD is encrypted with the sender's private key and
sent to the intended receiver. Let us call it MDe. The message itself is encrypted
with a symmetric key and sent. The recipient decrypts the message and computes
the message digest MD using the known hashing algorithm. He then decrypts the
Deleted: it
encrypted message digest MDe using the sender's public key. If (MDe) decrypted =
MD then the message is not a forgery as only the sender knows his private key.
This signature ties the signature to the message and cannot be repudiated by the
sender.
27. To ensure that public keys of organizations do belong to them there are certification
authorities which check the legitimacy of organizations and issue public key
certificates.
28. In E-Commerce payments are made as credit card payments, cheque payments or
cash payments . Besides this a system to make small payments for information
Deleted: downloads
goods (such as files, books etc.) downloaded from the internet is needed.
Deleted: k
29. Credit card payments are made using a protocol called Secure Electronic
30. Cheque payments are made between organizations using digitally signed cheques
5
31. Payment for small transactions is made using digital coins issued by banks to
Deleted: csutomer's
customer after debiting the customer's account. A digital coin consists of amount,
identification number and banks signature. These coins are given in exchange for
goods. The bank reimburses the vendor after checking its signature and ensuring
32. A system called NetBill has been proposed for small payment for information
services on the internet. It ensures that a key is given to a customer for decrypting
6
Formatted
QUESTION BANK
13.2 Explain B2B E-Commerce using an example of a book distributor who stocks a
large number of books, which he distributes via a large network of book sellers.
Assume that the distributor has stocks of books of a large number of publishers
and book sellers order books as and when their stock is low. Distributors give 1
13.3 Explain B2C E-Commerce of a customer reserving airline tickets from his
layers with the physical network at the bottom layer and applications at the top
layer.
7
13.8 What do you understand by EDI? Is EDI used in B2C or B2B E-Commerce?
13.9 What are two major EDI standards used in E-Commerce? Which is the
13.10 What is VAN? What services do VANs provide? What are the advantages and
disadvantages of VAN?
13.12 If email is to be used to exchange EDI between two businesses what are the
13.13 Why is security important in E-Commerce? What are the security issues to be
13.15 What is packet screening? Which hardware device performs packet screening?
13.16 What is a proxy application gateway? What are the functions of this gateway?
13.17 What is a hardened firewall host? What are its functions? In what way is it
Apply the permutation (231564) and the substitution: (letter Æ letter + 6 ) and
13.19 What is DES? Explain what DES does when the following hexadecimal plain
A1907FBCD986543201FED14E890ABCA5
8
13.20 What do you understand by symmetric key cryptography? What are the main
13.21 What is public key encryption? In what way is it different from private key
13.22 What are the main differences between DES based encryption and RSA based
13.23 Given two prime numbers 23 and 41 design a RSA system. Explain with an
13.24 What is a digital signature? Why is it necessary in E-Commerce? What are the
13.25 Give a block diagram of a system for transmitting a signed purchase order from
business 1 to business 2.
13.27 What types of electronic payment systems are required in E-Commerce? Why
where it is used.
13.28 Explain SET protocol used in credit card transactions. What is the main
9
13.29 In using SET protocol who has to keep a data base of public keys of all
customers? How does the customer assured that he will not be double charged
13.30 What are the main differences between electronic cheque payment and credit
Commerce.
13.31 Why is a different payment system needed for small payment for internet
services? Explain how one such system functions. How does the system make
sure that payment is made only after information for which payment has been
13.32 What are the main characteristics of cash payment in contrast with cheque
E-Commerce?
13.33 Explain how cash transactions take place in E-Commerce. What special
precautions should be taken by a bank to ensure that a customer does not double
10
11
MODULE 14
CASE TOOLS
OBJECTIVE QUESTIONS
There are 4 alternative answers to each question. One of them is correct. Pick the correct
answer. Do not guess. A key is given at the end of the module for you to verify your
answer
15. The current standard tool for designing object oriented systems is called
(a) Unified Modelling Language
(b) Booch Modelling Language
(c) Object Modelling Language
(d) Class, responsibilities and collaborators language
KEYS
1. b
2. c
3. d
4. b
5. ?
6. b
7. c
8. c
10 a
11 b
12 a
13 d
14 b
15 a
MODULE 14
CASE TOOLS
Learning Units
• Tools are also in the open domain which can be downloaded and used.
They do not usually have very good user interfaces.
• Most tools have a user’s guide which is given as help files along
with the tool
CASE TOOLS
Contents
2. LEARNING UNIT 1
CASE tools and their importance
3. LEARNING UNIT 2
Some CASE tools and their use
4. REFERENCES
CASE TOOLS
MOTIVATION
LEARNING GOALS
Tools are used throughout the system design phase. CASE tools are
sometimes classified as upper CASE tools and lower CASE tools. The tools
we have described so far are upper CASE tools
They are tools which will generate computer screen code from higher level
descriptions such as structured English and decision tables, such tools are
called lower CASE tools
•Most tools have a user’s guide which is given as help files along with the
tool
•Many have FAQ’s and search capabilities
•Details on several open domain tools and what they do is given below.
Requirements to use the tool: PC running Windows 95, 98 or NT. The latest
versions of Internet Explorer or Netscape Navigator, and about 20MB of free space.
What the tool does: Smartdraw is a perfect suite for drawing all kinds of diagrams
and charts: Flowcharts, Organizational charts, Gantt charts, Network diagrams, ER-
diagrams etc.
The drag and drop readymade graphics of thousands of templates from built-in libraries
makes drawing easier. It has a large drawing area and drawings from this tool can be
embedded into Word, Excel and PowerPoint by simply copy-pasting. It has an extensive
collection of symbols for all kinds of drawings.
How to use: The built-in tips guides as the drawing is being created. Tool tips
automatically label buttons on the tool bar.
There is online tutorial provided in:
http://www.smartdraw.com/tutorials/flowcharts/tutorials1.htm
http://www.ttp.co.uk/abtsd.html
II. DATA FLOW DIAGRAM TOOL
Requirements to use the tool: The following installation instructions assume that
the user uses a PC running Windows 95, 98 or NT. Additionally, the instructions assume
the use of the latest versions of Internet Explorer or Netscape Navigator. To download
the zip files & extract them you will need WinZip or similar software. If needed
download at http://www.winzip.com.
What the tool does: The tool helps the users draw a standard data flow diagram (a
process-oriented model of information systems) for systems analysis.
How to use: Double click on the IBMS icon to see the welcome screen. Click
anywhere inside the welcome screen to bring up the first screen.
Under "Tools" menu, select DFD Modeling. The IBMS will pop up the Data Flow
Diagram window. Its menu bar has the File, Edit, Insert, Font, Tool, Window and Help
options. Its tool box on the right contains 10 icons, representing (from left to right and top
to bottom) pointer, cut, data flow, process, external entity, data store, zoom-out, zoom-in,
decompose, and compose operations, respectively.
Left click on the DFD component to be used in the toolbox, key in the information
pertaining to it in the input dialogue box that prompts for information.
To move the DFD components: Left click on the Pointer icon in the tool box, point to the
component, and hold Left Button to move to the new location desired in the work area.
To edit information of the DFD components: Right click on the DFD component. The
input dialogue box will prompt you to edit information of that component.
Levelling of DFD: Use the Decompose icon in the tool box for levelling
To save the DFD: Under File menu, choose Save or SaveAs. Input the name and
extension of the DFD (the default extension is DFD) and specify folder for the DFD to be
saved. Click OK.
III. TOOL TO CONVERT DECISION TABLE TO STRUCTURED
ENGLISH
What the tool does: Cope is a program that converts decision tables to Cobol source
statements
How to use: The general arrangement of a Cope decision table is shown in Example
below. This table consists of a heading and four rows. The first two rows are conditions,
and the last two are actions. A condition row consists of a number of entries followed by
the word is and a Cobol condition. An action row consists of a series of entries followed
by a Cobol statement.
Example:
YYNN is A = 0.
YNYN is B = 0.
XX - - Move 0 to C.
-XXX Add 1 to C.
Type in the Decision table in the text area provided (each line should start with 6 blanks
and an asterisk), click on “Generate Cobol” to obtain the Cobol statements of the
Decision table.
Another tool (to be worked online) for program code generation from Decision table can
be found at
http://dtable.projxonline.com/Default.aspx
Note: The tools to convert Decision Tables to Structured English is not available.
IV. SYSTEM REQUIREMENTS SPECIFICATION
DOCUMENTATION TOOL
What the tool does: ARM or Automated Requirement Measurement tool aids in
writing the System Requirements Specifications right. The user writes the SRS in a text
file, the ARM tool scans this file that contains the requirement specifications and gives a
report file with the same prefix name as the user’s source file and adds an extension of
“.arm”. This report file contains a category called INCOMPLETE that indicate the words
and phrases that are not fully developed.
Requirements to use the tool : PC running Windows 95, 98 or NT. The latest
versions of Internet Explorer or Netscape Navigator, and about 8MB of free space.
How to use the tool : On clicking the option Analyze under File menu and selecting
the file that contains the System Requirements Specifications, the tool processes the
document to check if the specifications are right and generates a ARM report.
The WALKTHROUGH option in the ARM tool assists a user by guiding him as to how
to use the tool apart from the HELP menu. The README.doc file downloaded during
installation also contains description of the usage of this tool.
V. A TOOL FOR SCREEN DESIGN AND DATA INPUTTING
URL: http://www.microsoft.com/downloads/details.aspx?FamilyID=bf9a24f9-b5c5-
48f4-8edd-cdf2d29a79d5&displaylang=en
What the tool does: This tool is used to create the graphical user interface (GUI) to
describe the appearance and location of interface elements, you simply add prebuilt
objects into place on screen.
Help: http://msdn.microsoft.com/library/default.asp?url=/library/en-
us/vbcon98/html/vbconpart1visualbasicbasics.asp
URL: http://www.econ.kuleuven.ac.be/prologa
Note: This tool can be downloaded from the above given URL, after obtaining the
password.
What the tool does: The purpose of the tool is to allow the decision maker to construct
and manipulate (systems of) decision tables. In this construction process, the features
available are automatic table contraction, automatic table optimization, (automatic)
decomposition and composition of tables, verification and validation of tables and
between tables, visual development, and rule based specification.
References:
(e) A tool for screen design and data inputting: Visual Basic
http://www.microsoft.com/downloads/details.aspx?FamilyID=b
f9a24f9-b5c5-48f4-8edd-cdf2d29a79d5&displaylang=en
CASE TOOLS
WORKED EXAMPLES
5.
System Analysis and Design/Case Tools Question Bank
Exercises
end table
Gross pay = gross pay (1+percent increase/100)
Write Number, name, gross pay
end while
4. Use a structured English process description tool to obtain Structured English
description for the following:
An offshore gas company bills its customers according to the following rate
schedule:
First 500 litres Rs. 10 (flat)
Next 300 litres Rs. 1.25 per 100 litres
Next 30,000 litres Rs. 1.20 per 100 litres
Next 100,000 litres Rs. 1.10 per 100 litres
Above this Re. 1.00 per 100 litres
The input record has customer identification, name and address, meter reading,
past and present.
5. Obtain system flow chart using appropriate tools for Exercises 3 and 4 above.
6. Use Decision Table checking tool to check the following Decision table.
R1 R2 R3 R4 R5 R6 R7 R8 R9 R10R11R12R13R14 R15R16
C1: Door open? N N N N N N N N Y Y Y Y Y Y Y Y
C2: Ring sign on? N N N N Y Y Y Y N N N N Y Y Y Y
C3: Enter sign on? N N Y Y N N Y Y N N Y Y N N Y Y
C4: Door locked? N Y N Y N Y N Y N Y N Y N Y N Y
Ring bell – – – – X – X – – ? – ? X ? X ?
Enter– – X – – – X – – ? X ? – ? X ?
Wait – – – – X – – – – ? – ? X ? – ?
LeaveX X – X – X – X X ? – ? – ? – ?
A1 A1 A2 A1 A3 A1 A4 A1 A1 A2 A3 A4
7. Use Decision Table checking tool for the following Decision table
C1: This week’s cash > weekly rate – Y – Y N Y N – N – –
C2: This week’s cash > 0 – – Y – Y – Y N – N N
C3: Any cash during last month Y – N N Y Y Y N N – Y
C4: Arrears . > 2 * weekly rate N – – – – – Y – – Y Y
C5: Arrears > 4 * weekly rate – N N – Y Y N N Y Y N
Send arrears letter A – – – – – X – – – – –
Send arrears letter B – – – – – – X – – – –
Send arrears letter C – – – – – – – X – – –
Send arrears letter D – – – – – – – – – – X
Notify accounts X X X X X – – – – – –
Take special action – – – – – – – – X X –
8. Use ER-Diagramming tool to solve the following
(i) Customer withdraws money from his account.
(ii) Students write examinations.
(iii)Students attend classes.
(iv) Professors write books.
References:
(e) A tool for screen design and data inputting: Visual Basic
http://www.microsoft.com/downloads/details.aspx?FamilyID=bf9a24f9-
b5c5-48f4-8edd-cdf2d29a79d5&displaylang=en
Summary
(e) A tool for screen design and data inputting: Visual Basic
http://www.microsoft.com/downloads/details.aspx?FamilyID=b
f9a24f9-b5c5-48f4-8edd-cdf2d29a79d5&displaylang=en
Learning Objectives
CASE STUDY
Learning Units
15.2 Analysis and design of a data processing system for small hotel
Exercises
You are quite familiar with the hostels. As first step, catalogue the details such as various
hostels, their capacities, types of rooms, i.e., single/double/spacious double/married
students apartments etc. Assume a suitable figure for ladies hostel also. Since the number
of rooms are less than the number of students, some students have to share a room.
Assume that research students are given priority, followed by M.E. and B.E students.
Married students are given married students apartments, if available; else they fall into
general pool.
Find out how many students join/leave every year in each of the college programmes. A
student is allotted a room on joining as follows: If the student is married and married
students hostel is available and all others senior to him in his category have been allotted
an apartment; else he gets only single/double/spacious double room.
If the student is unmarried; or he is married but no married students apartment is
available, he gets either a single/spacious double/ double room, i.e., if a single
room is available and all others senior to him in this category (viz., Research/
M.E/B.E) have been allotted the same, he also gets a single room; else he has to
be given a spacious double room. If that also is not available then allot him a
double room. Priorities based on course (Research, M.E., B.E) and within that
date of joining is to be maintained so as to give a student a better room as and
when it is available. Your system should maintain a list of hostels, rooms and
details and should be able to,
Give the lists of available rooms, those occupied, those likely to become free,
etc.,
Intimate students as and when their priorities increase about the new rooms
which are available and handle room allotments,
Prepare a list of students who do not vacate their rooms even after the last date of
vacating their rooms after their course is over, and
Allow students to change rooms within the same class either mutually or to any
other vacant room of the same class.
3. Hospital Automation
Consider the operation of a medium size hospital. Patients data are stored and retrieved.
Further, data about the various types of and number of wards/beds/operation theatres
available and allotment of wards to patients are also maintained. The hospital authorities
are interested in computerizing this information.
The hospital has three types of operation theatres: A, B and C, respectively used for
major, minor and small operations, respectively. Wards are of two types: general and
special. General wards have capacities of 4 and 8 beds while special wards are either
single or double beds. The hospitals also has a maternity ward with 25 rooms, each of
which can accommodate 2 beds. The hospital has 20 general wards of capacity 4 and 30,
general wards of capacity 8. It has 20 special wards with 2 beds each and 10 special
wards with single bed. Moreover, the hospital has an intensive care unit with a 5-bed
capacity.
The charges are given in the table below(Rs.).
The money-back scheme differs in that 25% of the sum assured is paid back to the holder
after expiry of every quarter of the policy term. For instance, consider a policy for 20
years and Rs. 50,000 sum assured. Rs.12,500 would be paid back to the holder at the
expiry of 5,10 and 15 years, respectively. At the maturity of the policy the remaining
Rs12500 and the bonus would be payable. In case of death the remaining amount of the
sum assured and bonus would be paid back to the nominee. Assume that the Bangalore
division has 100,000 policy holders and 150,000 policies of which 20,000 are money
back.
(i) Endowment policy. The premium to be paid is worked out based on age of the
person proposed and the term of the policy. The sample table given below
shows the annual premium payable (in Rs.) for an assured sum of Rs. 1000.
The sum assured should be a multiple of Rs.1000 and the minimum is
Rs10,000.The minimum term is 15 years. The minimum age at entry is 18 and
the maximum is 45.Premium can be paid monthly, quarterly, half-yearly, or
annually. Form tables for the above cases using these data as guideline. While
designing the tables keep in mind that the total premium paid should be
slightly lower incase of annual mode of payments, and the highest premium
should be for monthly payments, and the highest premium should be for
monthly payment.
Age at entry 18 25 30 35
Policy term
15 years 70 72 74 76.25
20 years 52 53 54 56
25 years 41 42 42.75 44
30 years 34 34.5 35 -
(ii) Money –back policy. The premiums are much higher than the endowment
case. Typically they would be Rs 10-20 more for every Rs 1000 sum assured.
The Amount paid as bonus by the Corporation on maturity is currently Rs.65
per Rs 1000 sum assured. This amount may be revised every year by the
Corporation depending on the profits. This holds for both types of policies.
Policies may lapse if the holder does not pay the premium for more than to
two years. However, it can be paying penalty charges if the period of lapse
does not exceed five years.
The Corporation has divided Bangalore division into 15 zones for its
convenience. Each zone has a zonal manager. The Corporation also has
several agents to procure business. A proposer of a policy may do so only
through an authorized agent. These agents report to the zonal manager. Every
zone has a number of agents allotted, typically ranging from 10 to 20. Every
agent must procure a minimum of 10 customers and a policy value
(combined) of at least Rs.1.5 lakhs in order to retain his agency. Agents get
commission as follows: 25% and 5% in every subsequent year. Your system
should keep track of zones, agents, policy holders and their details. In addition
STATEMENT OF PROBLEM
This project addresses the information required by a hotel to book rooms and clear the
bills of customers. The hotel decides to computerize room booking and customer
checkout formalities. The hotel has various types of rooms. It wants to allow booking
online through the internet besides normal booking by phone, letter and also spot booking
on arrival of the customer. The hotel management is willing to invest in a PC with
internet connection. It is also willing to train the staff at the reception desk to handle
computerized booking. It is unwilling to invest in local network in the hotel, which would
allow on-line updating of customer charges. Customer bills are sent from restaurant,
laundry etc to the reception desk accountant for manual updating of accounts. As the
hotel is small with only 177 rooms, this is feasible.
Manager
Hotel Staff
Manager
Front desk receptionist
Accounts staff
ii) Questions to be asked
a) The hotel has rooms in the first, second and third floor.
i) The check-in and checkout time for the customer is 2:00pm. He is allowed to stay
1hr after the checkout time without any charge. After that (provided the room is
not booked), he is charged with a rent of ½ a day
j) Booking by phone is to be provided. In this case also credit card details are to be
provided and the hotel should be able to confirm reservation immediately.
k) The customer books the room and does not turn up, he also does not intimate the
hotel for canceling of rooms, then his advance amount is forfeited.
l) If the customer wants to extend his stay beyond 7 days, he needs to pay at least
50% of his current amount balance, then he is eligible for extension.
m) If the customer wants to reduce his stay, he need to inform the hotel staff 1day
prior to the checkout time, otherwise his money will not be refunded.
n) If the customer is averse to giving his credit card details on the Internet he could
download the reservation form and send the completed form through FAX along
with credit card details.
o) The facilities provided by the hotel which the customer can avail are bar,
restaurants, room services, laundry services, travel packages, swimming pool,
rooms with computers and internet connection for surfing, shopping mall, parking
garage for overnight or short term parking, communication systems like
telephone, fax, room service, extra beds and ATM counter.
p) The modes of payments are credit card or cash or billing to companies. When the
customer checks out his/her bills include in addition to room charges extra
charges for facilities used by him such as telephone, telex, fax services, extra
beds, laundry services and Internet surfing.
q) The customer is allowed to extend his stay provided the room is vacant and is not
been booked by any other customer on the same dates.
r) The responsibility of the front office which should have access to the computer
are:
(i) Room booking
(ii) Collating all bills (such as room rent, room service, restaurant,
communications) of a customer and charging it to customers room
account.
(iii) Preparing consolidated bill for a customer and collecting amount due
on departure or charging to credit card or sending it to the company
booking accommodation
(iv) After sending bill to company follow up on payment of bill.
(v) Reconciling credit card bills with payments credited to hotel’s account
by credit card issuing bank (periodically normally once a month)
(vi) When a bill is paid and a customer checks out of the hotel immediately
inform housekeeping to get the room cleaned and ready for the next
occupant.
(vii) When housekeeping phones and says the room is ready include in the
vacant rooms list
iv) Document flow diagram
Response to request
Informs ready
status of the
room
HOUSE
KEEPING STAFF Informs about the exit
Customer Informs about
details the bill
settlement
Accept after
CREDIT CARD checking validity
Advance/Payment /CASH EXIT/CASH
COUNTER
Room rent +Extra charges for
Avails FACILITIES use of facilities
Requests for 1. 3.
room/Exit request Processing Facilities
CUSTOMER a room
reservation
request
Records Checks
availability
List of facilities
Receipt/ and its cost details
Customer Available
Invoice
details Rooms
Advance/Payment Checks
Validity of the
Confirms Room 2. credit card
reservation Payment Confirms
Section
Bills for
use of Invoices
Inform about the
facilities for use
allotment
Room
request Company
database
Customer
Room rates accounts
Invoice
Company Update customer
Payments
customer accounts
4.
Receipt/Remainder Reconciliation
Intimate about of accounts
unreconciled accounts Update
Bank
Credit card Reconciled
payment accounts
The functions of the each process in the DFD are as follows:
Functions of Process1
a. When a particular room request is obtained from the customer via Internet
browser or phone or fax, checks if the requested room is available from
the AVAILIABLE ROOM database (Room No, Type of room, Rent,
Status).
e. The check-in and checkout time for the occupant is 2:00pm. The customer
is allowed to stay 1 hr after the checkout time without cost, after which he
is charged with ½ day charge. Inform Process2 for the transactions.
g. Informs the house keeping staff upon exit of a customer, so that the
room can be made ready for the next occupant.
k. If the customer does not turn up after advance booking of the room
and does not send and cancellation request he is forfeited with the
advance amount. Inform Process 2 for payment transactions.
Functions of Process 2
g. At the time of the ordinary customer’s checkout, give the customer the
INVOICE (Customer Name, Date of Arrival, Date of Departure, Room
type, Room rent, Name of facility, Date when used, Facility cost, Last
Date of Payment, Total) and collect dues.
h. Incase of a customer who wants to extend his stay, even after 7 days of his
stay in the hotel, provide him an invoice of the current balance account
and request him to pay 50% of the dues. After payment, update the
account database and inform Process1.
i. Confirm Process1 about the exit of the customer and update the available
room database
j. Incase of cancellation, the customer can cancel anytime up to 5:00 pm, the
day prior to arrival. No cancellation charge applies, the advance amount is
refunded, unless you cancel after this time, in which case the cancellation
fee equivalent of one night’s stay, is charged.
k. If the customer wants to reduce his stay he has to inform the hotel staff 1
day prior to the checkout time, otherwise his money is not refunded.
l. Incase of a customer who has not turned up after advance booking of the
room, he is forfeited with advance amount.
Functions of Process 3:
Functions of Process 4:
a) Send the invoice to the company at the time of exit of customer stating the
deadline within which the due is to be settled.
b) Provide a receipt after the settlement of the dues.
c) Update the CUSTOMER ACCOUNTS database.
d) Update the RECONCILED ACCOUNTS (customer name, organization
name, room number, duration of stay, total amount) database.
e) Send a remainder to company if the accounts are not settled within the
specified deadline
f) Inform the bank about unreconciled credit card payments.
(a)
for every room request obtained from a customer do
check if the requested room is available
if the requested room is available then
record the customer details.
Inform the customer of the room allotment after Process2 confirms it.
else
intimate the customer about the non-availability of the room
end for
(b)
for every room request obtained from a company on behalf of a customer do
check if the requested room is available
if the requested room is available then
Inform the company of the room confirmation
Record the company customer details.
Inform Process2 about the allotment.
else
Intimate the company about the non-availability of the room;
end for
(c)
for every exit request by the customer do
Inform process2 about exit request;
end for
(d)
for every room exit info obtained do
Inform the house keeping staff so that the room can be made ready for the next
occupant;
end for
(e)
for every cancellation of room request obtained do
Inform Process2 about the cancellation;
end for
(f)
for every request for extension obtained by the customer do
Check whether the room is vacant and is not booked by any other customer;
if the customer is been staying in the hotel for 7 days and requires extension then
Inform Process2 for 50% of due settlement;
Allot the room to the customer after confirmation obtained from Process2;
end if
end for
(g)
for every customer who does not turn up after advance booking of the room do
Inform Process2;
end for
(a)
for every room allotment request obtained from a customer do
receive an advance payment by the customer
(b)
for room allotment information obtained by Process1 about the company customer do
Record the details in the company database
Update the customer accounts;
end for
(c)
for every extension request obtained form Process1 then
Send the invoice to customer asking him to pay 50% of the current balance;
After payment, update the customer accounts database;
Inform Process1 to confirm allotment;
end for
(d)
for every exit request obtained do
if he if not a company customer then
Give the customer the invoice by getting details from the customer’s account;
Collect the payment;
Update the available room database;
Inform Process1 about the exit;
else if he is an company customer then
Inform Process4 about the exit
end if
end for
(e)
for every cancellation request obtained form Process1 do
if it is within 5:00 pm and one day prior to the arrival then
No cancellation fee is charged;
Cancel the booked rooms;
Update available room database;
else
Charge the customer with the cost equal to one nights stay;
Issue the cancellation receipt;
Update the customer account database;
end if
end for
(f)
for every customer who has not turned up after booking the room do
forfeit his advance amount;
Issue the receipt;
Update the customer account database;
Update the available room database;
end for
(g)
for every customer at the time of checkout do
if the customer wants to stay 1 hr after checkout time then
the customer is not charged;
else
charge him with ½ a days charge after 1 hour;
Update the customer account database;
end if
end for
Procedure for process3:
(a)
for facilities availed by the customer do
update the customer’s account by the price of the facility made use of;
end for
(a)
for every company customer who is exiting from the hotel do
Send the invoice specifying the deadline within which the dues are to be paid to the
company;
if the mode of payment is cheque, and is within the dead line then
collect the invoice payment;
update the customer’s account;
update reconciled accounts database;
provide a receipt of the current transaction;
else
Send the remainder to the company;
end if
Customer Num
Customer Name
Customer Customer type
Date of arrival
Duration
Address
Customer Num
Request Room type
Date of arrival
Duration
Room Num
Room type
Rooms Check-in time
Checkout time
Cost/day
ER DIAGRAM 2
Room Num
Room type
Rooms Check-in time
Checkout time
Cost/day
Room num
Allocated Customer num
to
Customer Num
Customer Name
Customer Customer type
ER DIAGRAM 3 Date of arrival
Duration
Address
Customer Num
Customer Name
Customer Customer type
Date of arrival
Duration
Address
Customer num
Facility Num
Avails
Date of use
Facility Num
Facility name
Facilities Facility Cost
Facility Details
ER DIAGRAM 4 (At the time of Exit)
Customer Num
Customer Name
Customer type
Customer Date of arrival
Duration
Address
Customer Num
Invoice Num
Pays Last date for
payment
Invoice Num
Invoice Customer Num
Date of payment
Customer Name
Date of Arrival
Date of departure
Room Num
Room type
Room rent
Facility Num
Name of facility
Date when used
Facility cost
Advance paid
Total
ER DIAGRAM 5
Customer Num
Invoice Num
Last Date of payment
Customer Name
Date of Arrival
Outstanding Date of departure
Invoices Room Num
Room type
Room rent
Facility Num
Name of facility
Date when used
Facility cost
Advance paid
Total
Invoice Num
Customer Num
Sent to Last date for
payment
Customer Num
Customer Customer Name
Customer type
Date of arrival
Duration
Address
ER-DIAGRAM 6 (Incase of cancellation of room and when the customer does not turn
up after booking the room, or when he is reducing his duration of stay)
Receipt Num
Cancellation Customer Num
Receipt Customer Name
Advance paid
Check-in time
Checkout time
Forfeited cost/ Cancellation fee
Balance amount
Receipt Num
Sent to Customer Num
Customer Num
Customer Name
Customer Customer type
Date of arrival
Duration
Address
Normalized relations
Customer : Customer Num, Customer Name, Date of arrival, Duration, Address,
Customer type.
Room: Room Num, Room type, Check-in time, checkout time, Room cost/day
Invoice : Invoice Num, Customer Num, Customer Name, Date of Arrival, Date of
Departure, Room type, Room rent, Name of facility, Date when used, Facility
cost, Last Date of Payment, Total.
USER INTERFACE
MAIN MENU
1. MENU A: BOOKING
2. MENU B: PAYMENT SECTION
3. MENU C: FACILITIES
4. MENU D: EXIT
5. MENU E: RECONCILIATION
6. MENU F: EXTENSIONS
1. MENU A: BOOKING
a) Types and cost of rooms
b) Conditions for booking
c) Request for customer details
d) Check for the availability of the room
e) Respond to the customer
f) Exit from MENU A
4. MENU D: EXIT
a) Send the invoice
b) Accept full payment
c) Update the Available room database
d) Inform house keeping staff
e) Exit from MENU D
5. MENU E: RECONCILIATION
a) Send the invoice
b) Accept cheque or credit card mode of payment
c) Provide a dead line for the payment
d) Send remainder if not paid within the dead line
6. MENU F: EXTENSIONS
a) Forfeit amount on cancellation
b) Display invoice
c) Print invoice
d) Update available room database
e) Exit from MENU E
Precondition: Advance online booking requires that the customer has a valid credit card
and an advance payment is required if the booking is via phone. Booking on arrival
requires, if the requested room is available, 50% of the room rent to be paid.
Success Guarantees: Room requested is available and credit card must be valid incase of
advanced booking.
Failure: The requested room is not available; the Customer can select form the available
list of rooms.
Trigger: Customer sends a request for room reservation.
Scenario:
1a. The customer can send an online request. Form specifying the customer details,
room request, date of arrival, duration of stay, credit card details etc has to be filled and
submitted, and the hotel management would respond as quickly as possible after
checking the validity of the credit card.
1b. The customer can book the room via phone. But this requires a deposit of room
rent for 1 or 2 nights be sent within 10 days to guarantee the reservation.
1c. The customer can book a room by going to the hotel personally and is allocated
the room if available and asked to pay an advance amount.
1d. Advanced booking by a company for its employees is allowed. But this requires
an advance of 50% of estimated charge to be paid.
2. Front desk receptionist checks for the list of available rooms, if available records
customer details.
2a. If the requested room is not available the customer is intimated and he could
book a room from the available list.
2b. Intimate the Payment section when there is request from the customer for exit.
2c. If the customer request for an extension check if the room is not booked by any
other customer, agree for the extension for not allotted otherwise deny the request for
extension.
2d. Incase of the customer who would like to extend his stay after staying for 7 days in
the hotel, he has to pay 50% of his current account balance.
2e. Incase of cancellation, the customer can cancel anytime up to 5:00 pm, the day
prior to arrival. No cancellation charge applies, the advance amount is refunded, unless
you cancel after this time, in which case the cancellation fee equivalent of one night’s
stay, is charged.
2e. For a customer who has booked the room in advance but has not occupied, advance
amount is forfeited.
3. Accounts staff in the payment section manages/accepts the advance payment and
confirms room allocation after checking the validity of the credit card, if the payment was
via credit card.
3a. The Payment section maintains the customer accounts and this includes along with
room charges and advance payment, the extra charges of the facilities the customer has
availed, such as telex, telephone, fax services, extra beds, laundry services, internet
surfing, shopping mall and bar and restaurant.
3b. Upon intimation about the customers exit, sends invoice to him, after deducting his
advance payment.
3c. Cheque or Credit card mode of payment is accepted if the customer is from a
company
3d. A deadline is mentioned within which the payment has to be made, otherwise a
remainder is sent.
4. The House keeping staff is informed so that the room can be made ready for the
next occupant, after the customers exit.
5. If the customer wants to reduce his stay, he need to inform the hotel staff 1day prior
to the checkout time, otherwise his money will not be refunded.
Extensions:
1. The check-in and checkout time for the customer is 2:00pm. He is allowed to stay
1hr after the checkout time without any charge. After that (provided the room is not
booked), he is charged with a rent of ½ a day
2. The customer is informed if the room requested is not available and he could book
another from the available list.
3. If the customer finds unsafe to book via internet he could download the reservation
form and send the completed form through FAX along with photocopy of both sides of
the credit card.
4. Bookings made must be guaranteed immediately with a credit card to reserve the
room.
Channel to Primary Actor: The customer can book the room personally. Advanced
booking can be made via Internet browser, Phone or FAX.
Test plan:
1. Enter a room number, which is already allotted, during booking and see the
response.
2. Enter a room number, which is not allotted and see the response.
3. Enter an invalid credit card number and check the response.
4. Create payment transactions scenarios and see the result.
5. Use the facilities options and see if it’s updating the customer accounts.
6. Check the response when the customer exits
7. Check if the remainder is sent, when the deadline for payment is not met.
IMPLEMENTATION PLAN
Customer
Customer Num: Num(10), Primary Key
Holds the Unique Customer Number
Customer Name:
First Name: char (50)
Last Name: char (50)
Holds the name of the Customer
Customer Address:
Has information about the customers address
Street: char (50)
City: char (50)
State: char (50)
Zip: num (50)
Phone: num (50)
Email: varchar (50)
Duration: Num(3)
This field contains the duration of the customers stay
Facilities
Room
Invoice
Total: Num(8)
The gross amount that the customer has to pay
Outstanding invoices
Total: Num(8)
The gross amount that the customer has to pay
Cancellation Receipt
Customer Name:
First Name: char (50)
Last Name: char (50)
Holds the name of the Customer
Balance: Num(8)
The gross amount that the customer has to pay
CASE STUDY 1
Statement of Problem
LIBRARIAN
a. About 300 journals are subscribed by the Library, with periodicity varying from
half yearly, monthly and quarterly
b. The journals mostly come from abroad by surface mail and take approximately
three months to reach from the date of dispatch
c. Loss of journals in mail and delay on publication is also noticed
d. If a journal is missed and a request for replacement is sent promptly the publisher
normally sends the duplicate copy free of charge
e. If the request is not sent promptly then it would be difficult to get the free copy
f. Most subscriptions are to be sent in November well ahead of start of new year.
g. As foreign exchange payment is involved, renewal an payment is required to be
made in advance
Currently the entire system is manual and is done by two scientific assistants. They
handle approximately 50 journals per week. It is found that follow up of journal
acquisition is time consuming and error prone. It is felt that follow up will be easier and
faster if a PC is used. As the volume of transactions is not large a standard PC
configuration (P4 or AMD processor, 128 MB main memory, 40GB disk, CDROM,
floppy disk, 15’’ monitor, standard key board, Windows2000, MSOffice) will be quite
adequate. A programmer will develop all the application software in 2 or 3 months. The
system is cost effective and is feasible. A detailed feasibility analysis is not essential in
the problem.
Invoice Invoice
Publisher Receiving Journal
Office Processing
Journals Received group
Journal
Information
Journals
Accounts
Purchase section
section Invoice
copy
3
Generate
reminder
Journals not
received
Journal publisher
master
2
1 Update
Publisher Check with Library
journals
order Received received and Weekly list office
Received
journal details print
journal details
Journals
Request ready for
for binding
invoice Journal Journal Journal
master expected Received file
4
Renewal Purchase Accounts
process section section
Invoice for Generate Payment
renewal Indent authorization
Journal 5
master Journal Send Draft details
publisher Payment with invoice
master copy
Journal Journal
Journal publisher payment
master master Detail file
The functions of the each process in the DFD are as follows:
Process 1:
Process 2:
Process 3:
1. Using the journals not received list, generate reminders to the publishers
and request replacement
Process 4:
Process 5:
1. When payment details with invoice copy are received from accounts, update
entry in journal master file, enter payment information in payment detail file
and mail payment detail with a copy of invoice to the publisher
The structured English description of each process is given below:
for each payment detail received from accounts section with invoice copy do
Enter payment details in payment detail file;
Enter paid information in Journal master file;
Send payment details with invoice to publisher;
end for
DATABASE DESIGN
(i) Data about journals: Journals id, Journal code (ISSN), journal
name, vol no, periodicity, parts per number, subject code,
language, publisher identification, time allowed for delivery,
year of first issue ordered renewed upto year.
(ii) Data about subscription details : Journal identification, date of
invoice to be sent, yearly subscription, currency of subscription,
date when subscription sent, subscriber code, amount in rupees,
subscription amount in foreign country, invoice no, order no,
draft no, draft date, bank name
(iii) Data about publisher/agent supplying journal: Publisher
identification, Publisher’s name, address, agent or publisher.
1 Publisher 1
N
1 N
Journals
The publisher-journal relationship is one-to-many.
The normalized relations are given below.
Journal: Journal id, journal name, journal ISSN, subject code, language, key words,
number per volume, parts per volume, month of first number, year first ordered, renewed
upto year.
Journals Expected: Journal-id, vol, no, first no, month, periodicity, expected delay.
Journals received: Journal-id, vol, no of issues in vol, no of issues received, last issue no
received.
Journal payment details: Journal id, vol, order no, order date, publisher’s invoice no,
invoice date, foreign currency amount, rupee amount, draft no, draft date, bank no.
1. Journal expected
3. Journal-publisher
Publisher
4. Journal-publisher
Publisher
Journal
MAIN MENU
1. ADD/DELETE JOURNAL
2. REQUEST FOR INVOICE OR REMAINDER
3. INPUT INVOICE
4. PRINT INDENT LIST
5. ENTER PAYMENT DETAILS
6. PRINT PAYMENT DETAILS
7. EXIT
ENTER YOUR OPTION
DISPLAY
A. RECEIVED JOURNALS 1 LIST JOURNALS YEARWISE
B. LIST OF JOURNALS BY KEYWORD 2 LIST JOURNALS ALPHABETICALLY
3 LIST NEW JOURNALS
4 LIST JOURNALS BY LANGUAGE
5 LIST JOURNALS BY KEYWORD
6 LIST JOURNALS BY SUBJECT
7 PUBLISHER LIST
8 MAILING LIST
9 BINDING LIST
Control plan
1. Check whether duplicate copies of an issue of a journal have been received
2. Check whether invoice amount and order amount match
3. Check on Nov 30 whether total number of periodicals for which renewal
subscriptions sent equals number of titles in the subscription list
Audit plan
1. Compare total order amount with total payment amount (draft volumes)
2. Check that no duplicate renewals here been sent when duplicate invoices
from publisher is received.
Test plan:
1. Enter a wrong journal code and see the response
2. Enter a correct journal code and see the response
3. Enter a wrong journal volume and see the response
4. Enter a few journal codes expected in a month and see the response
5. Create a journal not received transaction and see the result of processing
6. Try giving year end message and see the effect
7. Create payment details transaction and enter to see the effect
8. The input screens must have prompts and messages if incorrect data is
entered.
IMPLEMENTATION PLAN
(i) System’s manual: A one page instruction is prepared on how to use the
system. As the system is interactive with screens and prompts, no
extensive user manual is needed
(ii) User’s feedback form: This form should be designed to obtain user’s
opinion on ease of use, ease of data input, quality of screens and
system response time
(iii) Review plan: The system is to be reviewed at the end of one year.
AVAILABLE CASE TOOLS
Requirements to use the tool: PC running Windows 95, 98 or NT. The latest versions of
Internet Explorer or Netscape Navigator, and about 20MB of free space.
Smartdraw is a perfect suite for drawing all kinds of diagrams and charts:
Flowcharts, Organizational charts, Gantt charts, Network diagrams, ER-diagrams etc.
The drag and drop readymade graphics of thousands of templates from built-in libraries
makes drawing easier. It has a large drawing area and drawings from this tool can be
embedded into Word, Excel and PowerPoint by simply copy-pasting. It has an extensive
collection of symbols for all kinds of drawings.
How to use:
The built-in tips guides as the drawing is being created. Tool tips automatically
label buttons on the tool bar.
There is online tutorial provided in:
http://www.smartdraw.com/tutorials/flowcharts/tutorials1.htm
http://www.ttp.co.uk/abtsd.html
II. DATA FLOW DIAGRAM TOOL
Requirements to use the tool: The following installation instructions assume that the
user uses a PC running Windows 95, 98 or NT. Additionally, the instructions assume the
use of the latest versions of Internet Explorer or Netscape Navigator. To download the
zip files & extract them you will need WinZip or similar software. If needed download at
http://www.winzip.com.
What the tool does: The tool helps the users draw a standard data flow diagram (a
process-oriented model of information systems) for systems analysis.
How to use: Double click on the IBMS icon to see the welcome screen. Click anywhere
inside the welcome screen to bring up the first screen.
Under "Tools" menu, select DFD Modeling. The IBMS will pop up the Data Flow
Diagram window. Its menu bar has the File, Edit, Insert, Font, Tool, Window and Help
options. Its tool box on the right contains 10 icons, representing (from left to right and top
to bottom) pointer, cut, data flow, process, external entity, data store, zoom-out, zoom-in,
decompose, and compose operations, respectively.
Left click on the DFD component to be used in the toolbox, key in the information
pertaining to it in the input dialogue box that prompts for information.
To move the DFD components: Left click on the Pointer icon in the tool box, point to the
component, and hold Left Button to move to the new location desired in the work area.
To edit information of the DFD components: Right click on the DFD component. The
input dialogue box will prompt you to edit information of that component.
Levelling of DFD: Use the Decompose icon in the tool box for levelling
To save the DFD: Under File menu, choose Save or SaveAs. Input the name and
extension of the DFD (the default extension is DFD) and specify folder for the DFD to be
saved. Click OK.
III. TOOL TO CONVERT DECISION TABLE TO
STRUCTURED ENGLISH
What the tool does: Cope is a program that converts decision tables to Cobol source
statements
How to use: The general arrangement of a Cope decision table is shown in Example
below. This table consists of a heading and four rows. The first two rows are conditions,
and the last two are actions. A condition row consists of a number of entries followed by
the word is and a Cobol condition. An action row consists of a series of entries followed
by a Cobol statement.
Example:
YYNN is A = 0.
YNYN is B = 0.
XX - - Move 0 to C.
-XXX Add 1 to C.
Type in the Decision table in the text area provided (each line should start with 6 blanks
and an asterisk), click on “Generate Cobol” to obtain the Cobol statements of the
Decision table.
Another tool (to be worked online) for program code generation from Decision table can
be found at
http://dtable.projxonline.com/Default.aspx
Note: The tools to convert Decision Tables to Structured English is not available.
IV. SYSTEM REQUIREMENTS SPECIFICATION
DOCUMENTATION TOOL
What the tool does: ARM or Automated Requirement Measurement tool aids in writing
the System Requirements Specifications right. The user writes the SRS in a text file, the
ARM tool scans this file that contains the requirement specifications and gives a report
file with the same prefix name as the user’s source file and adds an extension of “.arm”.
This report file contains a category called INCOMPLETE that indicate the words and
phrases that are not fully developed.
Requirements to use the tool : PC running Windows 95, 98 or NT. The latest versions
of Internet Explorer or Netscape Navigator, and about 8MB of free space.
How to use the tool : On clicking the option Analyze under File menu and selecting the
file that contains the System Requirements Specifications, the tool processes the
document to check if the specifications are right and generates a ARM report.
The WALKTHROUGH option in the ARM tool assists a user by guiding him as to how
to use the tool apart from the HELP menu. The README.doc file downloaded during
installation also contains description of the usage of this tool.
V. A TOOL FOR SCREEN DESIGN AND DATA INPUTTING
URL: http://www.microsoft.com/downloads/details.aspx?FamilyID=bf9a24f9-b5c5-
48f4-8edd-cdf2d29a79d5&displaylang=en
What the tool does: This tool is used to create the graphical user interface (GUI) to
describe the appearance and location of interface elements, you simply add prebuilt
objects into place on screen.
Help: http://msdn.microsoft.com/library/default.asp?url=/library/en-
us/vbcon98/html/vbconpart1visualbasicbasics.asp
URL: http://www.econ.kuleuven.ac.be/prologa
Note: This tool can be downloaded from the above given URL, after obtaining the
password.
What the tool does: The purpose of the tool is to allow the decision maker to
construct and manipulate (systems of) decision tables. In this construction process, the
features available are automatic table contraction, automatic table optimization,
(automatic) decomposition and composition of tables, verification and validation of
tables and between tables, visual development, and rule based specification.
TEST EXAMPLES
Module1
1. What would be the strategic, operational and tactical needs of a State Road
Transport Corporation?
2. What do you think are the functional management areas in a large Students
hostel?
Module2
Module3
Module4
8. A system costs Rs.1 lakh to install and Rs.10,000 per month as recurring
expenses. The benefit per year is Rs.1.5 lakhs. Assuming an interest rate of 12%
per annum, what is the pay back period of the investment?
9. A project costs Rs.2 lakhs and the net benefits are Rs.50,000 (1st year), Rs.80,000
(2nd year),Rs.90,000 (3rd year), Rs.70,000 (4th year), Rs.50,000 (5th year), and
Rs.30,000 (6th year). Assuming 10% per annum interest rate, would you proceed
with this project if your criterion is cost/benefit?
Module5
10. A magazine is published monthly and is sent by post to its subscribers. Two
months before the expiry of subscription, a reminder is sent to the subscribers. If
subscription is not received within a month, another reminder is sent. If renewal
subscription is not received up to two weeks before the expiry of the subscription,
the subscriber's name is removed from the mailing list and the subscriber
informed. Obtain logical DFDs for this problem and also a flowchart.
11. Obtain a physical DFD for a simple payroll system described below. A list of
employees with their basic pay is sent to a clerk. He calculates the gross pay
using standard allowances which are known for each pay slab. Deduction
statements such as loan repayment, subscription to associations etc. are also sent
to another clerk who matches these slips with the slips of gross pay and calculates
net pay. This slip is used by a third clerk to write out pay cheques for each
employee and sent to respective employees. The total net pay amount paid and
bills paid are also computed.
12. If the procedure of the above problem is to be computerised, obtain a logical DFD
for the computer-based system.
Module6
13. An organization maintains an employee file in which each record has the
following data:
(Employee No., employee name, employee gross pay).
It has been decided to increase the pay as per the following formula:
For pay of Rs.1000 or less increase 15%
For pay of more than Rs.1000 but up to Rs.2500 increase 10%.
For pay over Rs.2500 increase 5%.
(i) Write a structured English processing rule corresponding to the above policies
(ii) Express the policies as a decision table.
14. An offshore gas company bills its customer according to the following rate
schedule:
First 500 litres Rs. 10 (flat)
Next 300 litres Rs.1.25 per 100 litres
Next 30,000 litres Rs.1.20 per 100 litres
Next 100,000 litres Rs.1.10 per 100 litres
Above this Rs.1.00 per 100 litres.
The input record has customer identification, name and address, meter readings,
past and present. Write a structured English procedure to obtain a bill for the
customer.
15. Obtain a decision table for an automatic stamps vending machine with the
following specifications:
(i) To dispense 20, 15, 10, 5 paise stamps
(ii) To accept 50, 25, 10, 5 paise coins
(iii) Do not return change if it is necessary to return more than two coins of the
same denomination. In such a case return the customer's coin and turn on
"no change" light.
The machine should dispense a stamp, the right amount of change, no stamp
available, no change available signals etc.
16. You want to go to Delhi from Bangalore. There are three flights per day; early
morning, late morning and evening. You would like to go on 21.4.04 by early
morning flight. If it is not available you will take the late morning flight. If
neither is available you are willing to take any flight on 22.4.04 but prefer early
and late morning flights., Obtain a decision tree for this word statement. Is
decisiontable suitable for this problem? If not why?
Module7
17. Design a form to be used by a salesman to report to the office about sales
executed by him at different customer locations
18. Design a group classification code to code (i) motor vehicles,, (ii) music cassettes,
and (iii) books
19. Add a Modulus-11 check digit to the codes (i) 48467, (ii) 96432, and (iii)
87646257.
21. What is the purpose of batch control record? What is the type of information
contained in a batch control record?
A set of data records for student examination results has the following format:
Roll no. Name Marks (out of 100)
Paper 1 Paper 2 Paper 3 Paper 4
Design for these records a batch control record and a record control field and any
other appropriate checks for the fields.
22. Design a dialogue hierarchy and the screens for a system used to reserve seats in
long distance buses.
Module8
23. Student's records in a University are kept by various sections: Hostel, Health
Centre, Academic Office, major departments, Accounts Section and Library. If
each of these sections maintains its own file-based system for processing, what
problems do you foresee? Give examples.
Module9
24. How do you select objects from a requirement specification? Given the following
requirement statement, select potential objects.
A list of employers with their basic pay is sent to a clerk. He calculates the gross
pay using standard allowances which are known for each pay slab. Deduction
statements such as loan repayment, subscription to association etc., are also sent
to another clerk who matches these slips with the slips of gross pay and calculates
net pay. This step is used by another clerk to write out pay cheques for each
employee and sent to respective employees. The total pay bills computed is also
computed".
25. Give a brief requirements specification for a bus ticket reservation system. Model
it using objects.
Module10
27. Pick the appropriate graphics presentation for the following applications:
Module12
30. A college has 1500 students whose final examination results are declared using
computer processing. There are 5 subjects, each carrying 100 marks. Classes are
awarded as follows:
Marks60 or above, I class
Marks 50 or above, II class
Marks below 50, Fail
Device an appropriate control scheme for processing results.
Module13
Apply the permutation (231564) and the substitution: (letter Æ letter + 6 ) and
obtain the cipher text.
33. How does DES hardware encrypt the following hexadecimal plain text
A1907FBCD986543201FED14E890ABCA5
35. Explain how cash transactions take place in E-Commerce. What special
precautions should be taken by a bank to ensure that a customer does not double
spend the same electronic coins issued to him/her?