System Analysis And Design

  • June 2020
  • PDF

This document was uploaded by user and they confirmed that they have the permission to share it. If you are author or own the copyright of this book, please report to us by using this DMCA report form. Report DMCA


Overview

Download & View System Analysis And Design as PDF for free.

More details

  • Words: 196,816
  • Pages: 1,445
System Analysis and Design

Syllabus

SYSTEM ANALYSIS AND DESIGN Module 1: Data and Information (3) Types of information: operational, tactical, strategic and statutory – why do we need information systems – management structure – requirements of information at different levels of management – functional allocation of management – requirements of information for various functions – qualities of information – small case study. Module 2: Systems Analysis and Design Life Cycle (3) Requirements determination – requirements specifications – feasibility analysis – final specifications – hardware and software study – system design – system implementation – system evaluation – system modification. Role of systems analyst – attributes of a systems analyst – tools used in system analysis Module 3: Information gathering (3) Strategies – methods – case study – documenting study – system requirements specification – from narratives of requirements to classification of requirements as strategic, tactical, operational and statutory. Example case study Module 4: Feasibility analysis (3) Deciding project goals – examining alternative solutions – cost – benefit analysis – quantifications of costs and benefits – payback period – system proposal preparation for managements – parts and documentation of a proposal – tools for prototype creation Module 5: Tools for systems analysts (3) Data flow diagrams – case study for use of DFD, good conventions – leveling of DFDs – leveling rules – logical and physical DFDs – software tools to create DFDs Module 6: Structured systems analysis and design (3) Procedure specifications in structured English – examples and cases – decision tables for complex logical specifications – specification oriented design vs procedure oriented design Module 7: Data oriented systems design (3) Entity relationship model – E-R diagrams – relationships cardinality and participation – normalizing relations – various normal forms and their need – some examples of relational data base design. Module 8: Data input methods (3) Coding techniques – requirements of coding schemes – error detection of codes – validating input data – input data controls interactive data input Module 9: Designing outputs (2) Output devices – designing output reports – screen design – graphical user interfaces – interactive I/O on terminals.

V.Rajaraman/IISc, Bangalore

V1/1-6-04/1

System Analysis and Design

Syllabus

Module 10: Object oriented systems modeling (4) What are objects? – Why objects? – Objects and their properties – classes – inheritance – polymorphism – how to identify objects in an application – how to model systems using objects – some cases of object oriented system modeling Module 11: Control – audit and security of information systems (4) Audit and security of information systems – why controls are needed – objectives of control – techniques used in control – auditing information systems – auditing around, through and with the computer – testing information systems – types of tests – how to generate tests – security of information systems – disaster recovery – business process continuity Module 12: Systems analysis and design in the era of electronic commerce (3) B2B, B2C and C2C e-commerce – advantages and disadvantages of e-commerce. Ecommerce system architecture – physical networks, logical network, World Wide Web, web-services – html, XML. Module 13: Electronic data interchange (2) EDI standards – virtual private networks – XML and EDI. Module 14: Security of e-commerce transactions, firewalls (3) Encryption methods – symmetric and asymmetric encryption – digital signature – certifying authorities for signatures – legal status of e-commerce transactions Module 15: Payment systems in e-commerce (2) Cheque payment, credit card payments, e-cash payments. Module 16: Complete system analysis and design case studies (5) A system for journal acquisition in libraries – walk through the entire life cycle

V.Rajaraman/IISc, Bangalore

V1/1-6-04/2

System Analysis and Design

Syllabus

Lecture Plan Modules 1. Data and Information

1. 2.

3.

2. Systems Analysis and Design Life Cycle

3. Information gathering

4. Feasibility analysis

5. Tools for systems analysts

4. 5.

Learning Units Types of information: operational, tactical, strategic and statutory Why do we need information systems, management structure, requirements of information at different levels of management Functional allocation of management, requirements of information for various functions Qualities of information– small case study Systems Analysis and Design life Cycle: Requirements determination, requirements specifications

6. Feasibility analysis, final specifications, hardware and software study, system design, system implementation, system evaluation, system modification. 7. Role of systems analyst – attributes of a systems analyst – tools used in system analysis 8. Information gathering, strategies, methods 9. Case study/documenting study, system requirements specification, from narratives of requirements to classification of requirements as strategic, tactical, operational and statutory. Example case study 10. How to formulate project goals and quantify them 11. Examining alternative solutions and evaluating proposed solutions a) Technical feasibility b) Operational feasibility c) Economic feasibility 12. Cost benefit analysis, Documenting feasibility report 13. Developing Data Flow Diagrams (DFD) a) What are DFDs? b) Symbols used in DFD c) Rules of data flow d) Good style in drawing DFD 14. Describing systems with DFD & Leveling DFD 15. Logical & Physical DFDs

V.Rajaraman/IISc, Bangalore

Hours per topic 0.5

Total Hours

1 3 1

0.5 1 3 1

1 1 3 2

1

3 1

1

1.5 3 1 0.5

V1/1-6-04/3

System Analysis and Design

6. Structured systems analysis and design

7. Data oriented systems design

8. Data input methods

9. Designing outputs

10. Object oriented systems modeling

11. Controlaudit and security of information systems

16. Structured English specification 17. Decision table based specification 18. Detecting 19. Incompleteness 20. Ambiguity 21. Contradictions 22. Redundancy 23. in decision table specification 24. Eliminating redundancy in specifications 25. Decision trees for specification 26. Entity-relationship (E-R) modeling 27. of data elements of an application 28. Organization of data as relations 29. Normalization of relations 30. Creation of logical relational database 31. Objectives of database management system (DBMS) 32. Overview of DBMS 33. Data input methods, coding techniques, requirements of coding schemes 34. Error detection of codes, validating input data 35. Input data controls interactive data input 36. Designing outputs, output devices, designing output reports 37. Screen design, graphical user interfaces, Interactive I/O on terminals. 38. Object oriented systems modeling 39. What are objects? Why objects? 40. Objects and their properties, classes, inheritance, polymorphism 41. How to identify objects in an application, how to model systems using objects 42. Some cases of object oriented system modeling 43. Control, audit and security of information system 44. Why controls are needed, objectives of control, techniques used in control 45. Auditing information systems, auditing around, through and with the computer 46. Testing information systems, types of tests, how to generate tests

V.Rajaraman/IISc, Bangalore

Syllabus

1 1

1

4.5

1 0.5 1 0.5 1 1

5

1 0.5 1 1

3

1 1 1

2

0.5 0.5 1 1

4

1 0.5 0.5 1

4

1

V1/1-6-04/4

System Analysis and Design

47. Security of information systems, disaster recovery, business process continuity 12. Systems 48. Systems analysis and design in the era of analysis and electronic commerce design in the era 49. B2B, B2C and C2C e-commerce, advantages of electronic and disadvantages of e-commerce. commerce 50. E-commerce system architecture 51. Physical networks, logical network, world wide web, web-services – html, XML 13. Electronic 52. Electronic data interchange, EDI standards data interchange 53. Virtual private networks – XML and EDI. 14. Security of e- 54. Security of e-commerce transactions, firewalls, commerce encryption methods, symmetric and transactions, asymmetric encryption, firewalls 55. Digital signature, certifying authorities for signatures, legal status of e-commerce transactions 15. Payment 56. Payment systems in e-commerce, cheque systems in epayment, credit card payments, e-cash commerce payments. 16. Complete 57. Complete system analysis and design case system analysis studies, a system for journal acquisition in and design case libraries, walk through the entire life cycle studies

V.Rajaraman/IISc, Bangalore

Syllabus

1 0.5 0.5 4 1 2 1 1

2

1.5 3 1.5

2

2

5

5

V1/1-6-04/5

MODULE 1

INFORMATION FOR MANAGEMENT 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

1.1

Information is (a) Data (c) Manipulated input

(b) Processed Data (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

1.13 In motor car manufacturing the following type of information is operational (a) Decision on introducing a new model (b) Scheduling production (c) Assessing competitor car (d) Computing sales tax collected

1.14 In motor car manufacturing the following type of information is statutory (a) Decision on introducing a new model (b) Scheduling production (c) Assessing competitor car (d) Computing sales tax collected

1.15 In a hospital information system the following type of information is strategic (a) Opening a new children’s ward (b) Data on births and deaths (c) Preparing patients’ bill (d) Buying an expensive diagnostic system such as CAT scan

1.16 In a hospital information system the following type of information is tactical (a) Opening a new children’s’ ward (b) Data on births and deaths (c) Preparing patients’ bill (d) Buying an expensive diagnostic system such as CAT scan

1.17 In a hospital information system the following type of information is operational (a) Opening a new children’s’ ward (b) Data on births and deaths (c) Preparing patients’ bill (d) Buying an expensive diagnostic system such as CAT scan

1.18 In a hospital information system the following type of information is statutory (a) Opening a new children’s’ ward (b) Data on births and deaths (c) Preparing patients’ bill (d) Buying an expensive diagnostic system such as CAT scan

LEARNING UNIT 2 1.19 A computer based information system is needed because (i) The size of organization have become large and data is massive (ii) Timely decisions are to be taken based on available data (iii) Computers are available (iv) Difficult to get clerks to process data (a) (ii) and (iii) (c) (i) and (iv)

(b) (i) and (ii) (d) (iii) and (iv)

1.20 Volume of strategic information is (a) Condensed (b) Detailed (c) Summarized (d) Irrelevant

1.21 Volume of tactical information is (a) Condensed (b) Detailed (c) Summarized (d) relevant

1.22 Volume of operational information is (a) Condensed (b) Detailed (c) Summarized (d) Irrelevant

1.23 Strategic information is (a) Haphazard (b) Well organized (c) Unstructured (d) Partly structured

1.24 Tactical information is (a) Haphazard (b) Well organized (c) Unstructured (d) Partly structured

1.25 Operational information is (a) Haphazard (b) Well organized (c) Unstructured (d) Partly structured

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 (a) (b) (c) (d)

(i) and (v) (i) and (iv) (ii) and (iv) (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) (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 (iii)Preventive maintenance schedules (vi)Operational information for machines (a) (iii) and (vi) (b) (i) and (iv) (c) (ii) and (v) (d) None of the above

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 (a) (i) and (v) (b) (ii) and (v) (c) (iii) and (iv) (d) (ii) and (vi)

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 (a) (i) and (iv) (b) (i) and (vi) (c) (ii) and (iv) (d) (iii) and (v)

1.31 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 (a) (i) and (vi) (b) (iii) and (vi) (c) (ii) and (vi) (d) (iii) and (iv)

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) (d) (iii) and (v)

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 (a) (i) and (iv) (b) (ii) and (v) (c) (iii) and (vi) (d) (iii) and (iv)

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) (i) and (v) (b) (iii) and (v) (c) (ii) and (v) (d) (i) and (vi)

1.38 Organizations are divided into departments because (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

1.39 Organizations have hierarchical structures because (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

1.41 Which of the following functions is most unlikely in a university (a) admissions (b) accounting (c) conducting examination (d) marketing

1.42 Which of the following functions is most unlikely in a purchase section of an organization. (a) Production planning (b) order processing (c) vendor selection (d) training

1.43 Which is the most unlikely function of a marketing division of an organization. (a) advertising (b) sales analysis (c) order processing (d) customer preference analysis

1.44 Which is the most unlikely function of a finance section of a company. (a) Billing (b) costing (c) budgeting (d) labor deployment

LEARNING UNIT 4 1.45 Match quality of information and how it is ensured using the following list QUALITY HOW ENSURED (i) Accurate (ii) Complete (iii)Timely

(iv) Include all data (v) Use correct input and processing rules (vi) Include all data up to present time

(a) (i) and (v) (b) (ii) and (vi) (c) (iii) and (vi) (d) (i) and (iv)

1.46 Match quality of information and how it is ensured using the following list QUALITY HOW ENSURED (i) Accurate (ii) Complete (iii) Timely (a) (ii) and (v) (b) (ii) and (vi) (c) (ii) and (iv) (d) (iii) and (iv)

(iv) Include all data (v) Use correct input and processing rules (vi) Include all data up to present time

1.47 Match quality of information and how it is ensured using the following list QUALITY HOW ENSURED (i)Up-to-date (ii) Brief (iii) Significance graphical charts

(iv) Include all data to present time (v) Give at right time (vi) Use attractive format and understandable

(a) (i) and (v) (b) (ii) and (vi) (c) (iii) and (vi) (d) (i) and (vi)

1.48 Match quality of information and how it is ensured using the following list QUALITY HOW ENSURED (i)Up- to-date (ii)Brief (iii) Significance graphical charts

(iv) Include all data to present time (v) Give at right time (vi) Use attractive format and understandable

(a) (i) and (iv) (b) (ii) and (v) (c) (iii) and (iv) (d) (ii) and (iv)

1.49 Match quality of information and how it is ensured using the following list QUALITY HOW ENSURED (i)Brief (ii)Relevant (iii) Trustworthy (a) (i) and (iv) (b) (ii) and (v) (c) (iii) and (vi) (d) (i) and (v)

(iv) Unpleasant information not hidden (v) Summarize relevant information (vi) Understands user needs

1.50 Match quality of information and how it is ensured using the following list QUALITY HOW ENSURED (i)Brief (iv) Unpleasant information not hidden (ii)Relevant (v) Summarize relevant information (iii)Trustworthy (vi) Understands user needs (a) (ii) and (vi) (b) (i) and (iv) (c) (iii) and (v) (d) (ii) and (iv)

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

1.52 The quality of information which is based on understanding user needs (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

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 (b) removed from processing (c) collected for later use (d) ignored during processing

1.59 Online transaction processing is used because (a) it is efficient (b) disk is used for storing files (c) it can handle random queries. (d) Transactions occur in batches

1.60 On-line transaction processing is used when i) it is required to answer random queries ii) it is required to ensure correct processing

iii) all files are available on-line iv) all files are stored using hard disk a) i ,ii b) i, iii c) ii ,iii, iv d) i , ii ,iii

1.61 Off-line data entry is preferable when i) data should be entered without error ii) the volume of data to be entered is large iii) the volume of data to be entered is small iv) data is to be processed periodically a) i, ii b) ii, iii c) ii, iv d) iii, iv

1.62 Batch processing is used when i) response time should be short ii) data processing is to be carried out at periodic intervals iii) transactions are in batches iv) transactions do not occur periodically 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 (c) the organization is large (d) all processing had been only batch processing

1.68. Decision support systems are used for (a) management decision making (b) providing tactical information to management (c) providing strategic information to management (d) better operation of an organization

1.69 Decision support systems are used by (a) line managers. (b) top-level managers. (c) middle level managers. (d) system users

1.70. Decision support systems are essential for (a) day–to-day operation of an organization. (b) providing statutory information. (c) top level strategic decision making. (d) ensuring that organizations are profitable.

Key To Objective Questions 1.1

b

1.2

b

1.3

c

1.4

c

1.5

c

1.6

d

1.7

a

1.8

a

1.9

b

1.10

b

1.11

a

1.12

c

1.13

b

1.14

d

1.15

d

1.16

a

1.17

c

1.18

b

1.19

b

1.20

a

1.21

c

1.22

b

1.23

c

1.24

d

1.25

b

1.26

b

1.27

c

1.28

a

1.29

a

1.30

c

1.31

b

1.32

c

1.33

d

1.34

c

1.35

c

1.36

a

1.37

b

1.38

b

1.39

c

1.40

c

1.41

d

1.42

a

1.43

c

1.44

d

1.45

a

1.46

c

1.47

c

1.48

a

1.50

a

1.51

b

1.52

c

1.53

b

1.54

c

1.49

d

1.55

a

1.56

b

1.57

c

1.58

a

1.59

c

1.60

b

1.61

c

1.62

c

1.63

d

1.64

b

1.65

c

1.66

a

1.67

a

1.68

c

1.69

b

1.70

c

System Analysis and Design / Data and Information

Motivation

Motivation ™ Large number of jobs today for computer science and engineering graduates is in creating information systems for managing organizations we thus need methods to design complex systems. ™ Students should know what information is and how it is different from data. ™ Should know types of information needed to manage organizations. ™ Should know nature of organizations and their structure to design appropriate information system. ™ Should know management structure and needs of each level of management. ™ Should know functional areas of management information needs for each area.

V. Rajaraman/IISc. Bangalore

//V1/July 04/1

MODULE 1

INFORMATION FOR MANAGEMENT

1.1 Data and Information, types of information : Operational, tactical, strategic, Statutory 1.2 Why do we need information systems, management structure, requirements of information at different levels of management 1.3 Functional allocation of management, requirements of information for various functions. 1.4 Qualities of information 1.5 Varieties of information system

Systems Analysis And Design

© V. Rajaraman

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 types of information needed to manage organizations Systems Analysis And Design

© V. Rajaraman

1 of 50

MOTIVATION ƒ 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

Systems Analysis And Design

© V. Rajaraman

2 of 50

LEARNING GOALS 1. Distinction between Data and Information 2. Description of types of Information: Tactical, Operational, Strategic, Statutory. 3. Division of Management into different hierarchical levels. 4. Type of Information needed at different levels of management. 5. Division of organizations into several functional areas and their information requirements 6. Attributes of Information. Systems Analysis And Design

© V. Rajaraman

3 of 50

DATA AND INFORMATION

DATA : Raw Material ƒ Data collection costs money ƒ Collect only necessary and sufficient data ƒ Data is generally used by machines ƒ Data is useless unless it is processed to create INFORMATION

1.1.1

System Analysis And Design

© V. Rajaraman

4 of 50

DATA AND INFORMATION

INFORMATION : Processed data ƒ Data processed by machines giving information ƒ Information is used to run an organization efficiently ƒ Information used by managers to initiate actions

1.1.2

System Analysis And Design

© V. Rajaraman

5 of 50

EXAMPLE OF INFORMATION NEEDED BY A SHOPKEEPER ƒ Daily sales account ƒList of low stock items to be re-ordered ƒList of overstock items ƒLong overdue payments ƒProfit and loss account Used to streamline day to day operations called Operational information

1.1.3

System Analysis And Design

© V. Rajaraman

6 of 50

EXAMPLE OF INFORMATION NEEDED BY A SHOPKEEPER (CONTD)

ƒ Slow or fast moving items ƒ Reliable supplier of items ƒ Sales trends Used to improve profitability of shop called Tactical information

1.1.4

System Analysis And Design

© V. Rajaraman

7 of 50

EXAMPLE OF INFORMATION NEEDED BY A SHOPKEEPER (CONTD)

ƒ Whether to stock different varieties of items ƒ Whether to diversify ƒ Whether to start a new branch in a different locality ƒ Whether to start an e-shop ƒ Information to expand business and explore new opportunities ƒ Known as Strategic Information

1.1.5

System Analysis And Design

© V. Rajaraman

8 of 50

EXAMPLE OF INFORMATION NEEDED BY A SHOPKEEPER (CONTD)

ƒ Income tax account ƒ Sales tax account ƒ Used to provide information to the government ƒ Known as Statutory Information

1.1.6

System Analysis And Design

© V. Rajaraman

9 of 50

TYPES OF INFORMATION

ƒ STRATEGIC : Needed for long range planning and directions. This is less structured. ƒ TACTICAL : Needed to take short range decisions to improve profitability and performance.

1.1.7

System Analysis And Design

© V. Rajaraman

10 of 50

TYPES OF INFORMATION ƒ OPERATIONAL : Needed for day to day operations of the organization. Eg: Daily Sales, Billing. ƒ STATUTORY : Needed by law to sent to government authorities. Eg: Sales tax return.

1.1.8

System Analysis And Design

© V. Rajaraman

11 of 50

MANAGEMENT HIERARCHY AND INFORMATION NEEDS Volume of Information Low condensed Medium moderately processed

Type of Information Unstructured Moderately structured

Highly Large structured Detailed Reports

1.1.9

StrategicLong range planning

Top Managers

Tactical Short range improvement

Middle Managers Line managers

System Analysis And Design

Operational Day to day policies

© V. Rajaraman

12 of 50

NEED FOR INFORMATION SYSTEMS ƒ Increasing size of organizations thus data volume increases ƒ Timely processing for fast action ƒ Better competitiveness with better information ƒ. Increasing of complexity of organizations require innovative processing ƒ Distributed organizations ƒ Same data can be processed in different ways 1.2.1

System Analysis And Design

© V. Rajaraman

13 of 50

MANAGEMENT STRUCTURE Chief Executive (Strategical) (Tactical) Production manager

Marketing manager

Materials manager

Finance manager

Human Resource manager

(Operational) Line managers

1.2.2

System Analysis And Design

© V. Rajaraman

14 of 50

MANAGEMENT STRUCTURE (CONTD) TOP MANAGEMENT ƒ Chief Executive known as CEO ƒ Executive Directors for each functional areas such as Production, Finance, HRD etc. ƒ Take strategic decisions

1.2.3

System Analysis And Design

© V. Rajaraman

15 of 50

MANAGEMENT STRUCTURE (CONTD) MIDDLE MANAGEMENT ƒ General managers, divisional managers,Vice presidents etc ƒ Each functional area may have 2 to 3 middle level managers reporting to top management ƒ Take Tactical decisions

1.2.4

System Analysis And Design

© V. Rajaraman

16 of 50

MANAGEMENT STRUCTURE (CONTD) LINE MANAGERS ƒ Group managers, Assistant Group managers, Assistant managers ƒ Each functional area may have several line managers reporting to middle level managers. ƒ Take Operational decisions

1.2.5

System Analysis And Design

© V. Rajaraman

17 of 50

MANAGEMENT STRUCTURE (CONTD)

FUNCTIONAL AREAS ƒ PRODUCTION ƒ MARKETING ƒ MATERIALS – purchase, stores ƒ FINANCE –Accounts ƒ HUMAN RESOURCE DEVELOPMENT(HRD) ƒ RESEARCH AND DEVELOPMENT (R&D)

1.3.1

System Analysis And Design

© V. Rajaraman

18 of 50

MANAGEMENT STRUCTURE (CONTD)

FUNCTIONAL AREAS ƒ All organizations need not have identical functional areas ƒ However some are common such as - MARKETING - FINANCE - HUMAN RESOURCE DE VELOPMENT(HRD)

1.3.2

System Analysis And Design

© V. Rajaraman

19 of 50

INFORMATION FOR MANAGEMENT Production Management Strategic Information

ƒ Yearly and monthly production quotas and alternate schedules ƒ Policies on machine replacement, augmentation, and modernization. ƒ Identifying best product mix.

1.3.3

System Analysis And Design

© V. Rajaraman

20 of 50

INFORMATION FOR MANAGEMENT Production Management Tactical Information

ƒ Identifying and controlling areas of high cost. ƒ Identifying critical bottlenecks in production. ƒ Identifying alternate production schedules based on tools, machines etc. ƒ Performance measures of machines to decide replacement.

1.3.4

System Analysis And Design

© V. Rajaraman

21 of 50

INFORMATION FOR MANAGEMENT Production Management Operational Information

ƒ Monitoring up to date production information by examining assemblies, detecting likely shortages and giving early warning. ƒ Scheduling better production dynamically. ƒ Preventive maintenance schedules. ƒ Monitoring tool, machine and personnel availability

1.3.5

System Analysis And Design

© V. Rajaraman

22 of 50

INFORMATION FOR MANAGEMENT Marketing Management Strategic Information

ƒ Search for new markets and marketing strategies. ƒ Analysis of competitors strategy. ƒ Technology and demographic forecasts and product changes.

1.3.6

System Analysis And Design

© V. Rajaraman

23 of 50

INFORMATION FOR MANAGEMENT Marketing Management Tactical Information

ƒ Advertising techniques and analysis of their impact. ƒ Customer preference surveys. ƒ Correlation of prices and sales. ƒ Sales force deployment and targets. ƒ Exploring alternate marketing channels. ƒ Timing of special sales campaigns.

1.3.7

System Analysis And Design

© V. Rajaraman

24 of 50

INFORMATION FOR MANAGEMENT Marketing Management Operational Information

ƒ Sales analysis by regions,customer class, sales person. ƒ Sales target versus achievement. ƒ Market share and trends. ƒ Seasonal variations. ƒ Effect of model changes. ƒ Performance of sales outlets ƒ Costs of campaigns and benefit. 1.3.8

System Analysis And Design

© V. Rajaraman

25 of 50

INFORMATION FOR MANAGEMENT Material Management Strategic Information

ƒ Developing vendors for critical items. ƒ Determining optimal levels of inventory ƒ Determining proportion of material needed ƒ Reducing varieties of inventory.

1.3.9

System Analysis And Design

© V. Rajaraman

26 of 50

INFORMATION FOR MANAGEMENT Material Management Tactical Information

ƒ Developing vendor performance measures. ƒ Determining optimal reorder levels. ƒ Determining issues of items to shops versus standard needs. ƒ Controlling high value of inventory. ƒ Determining impact on material cost and procurement with design changes and new product introduction. 1.3.10

System Analysis And Design

© V. Rajaraman

27 of 50

INFORMATION FOR MANAGEMENT Material Management Operational Information

ƒ ƒ ƒ ƒ ƒ ƒ

1.3.11

List of excess & deficient items received. List of items rejected. Critical items received. Stores in transit and in inspection. Value of inventory in hand. Goods received, rejected and issued.

System Analysis And Design

© V. Rajaraman

28 of 50

INFORMATION FOR MANAGEMENT Finance Management Strategic Information

ƒ Methods of financing. ƒ Pricing policies. ƒ Tax planning.

1.3.12

System Analysis And Design

© V. Rajaraman

29 of 50

INFORMATION FOR MANAGEMENT Finance Management Tactical Information

ƒ ƒ ƒ ƒ ƒ

1.3.13

Variations between budget and expenses. Large outstanding payments/Receipts. Credit and payment status. Cost increases and pricing. Impact of taxation on pricing

System Analysis And Design

© V. Rajaraman

30 of 50

INFORMATION FOR MANAGEMENT Finance Management Operational Information

ƒ ƒ ƒ ƒ ƒ ƒ ƒ

1.3.14

Periodic financial report. Budget status to all functional managers. Tax returns. Share transfers. Profit and loss account. Payments and receipts. Payroll,provident fund accounts.

System Analysis And Design

© V. Rajaraman

31 of 50

INFORMATION FOR MANAGEMENT Human Resource Management Strategic Information

ƒ Long range human resource requirements. at different levels. ƒ Policies on human resource development and training ƒ Policies on personnel welfare and facilities

1.3.15

System Analysis And Design

© V. Rajaraman

32 of 50

INFORMATION FOR MANAGEMENT Human Resource Management Tactical Information

ƒ Performance appraisal. ƒ Demographic make-up of personnel and its impact on retirement. ƒ Production incentives. ƒ Morale of personnel. ƒ Absentee reduction. ƒ Leave and overtime policies. ƒ Personnel deployment policies. 1.3.16

System Analysis And Design

© V. Rajaraman

33 of 50

INFORMATION FOR MANAGEMENT Human Resource Management Operational Information

ƒ Routine assessment. ƒ Skills inventory. ƒ Loan/advances and recoveries. ƒ Leave record.

1.3.17

System Analysis And Design

© V. Rajaraman

34 of 50

INFORMATION FOR MANAGEMENT Research Design & development Management Strategic Information

ƒ Which products are to be developed? ƒ What types of improvements are required? ƒ What long range research is more promising? ƒ What technical collaboration would be appropriate?

1.3.18

System Analysis And Design

© V. Rajaraman

35 of 50

INFORMATION FOR MANAGEMENT Research Design & development Management Tactical Information

ƒ Setting intermediate goals. ƒ Checking availability of equipment & appropriate selection ƒ Determining proportions of resources to be allocated to different projects. ƒ Deployment of personnel to projects. ƒ Information on similar and related research projects undertaken by other companies 1.3.19

System Analysis And Design

© V. Rajaraman

36 of 50

INFORMATION FOR MANAGEMENT Research Design & development Management Operational Information

ƒ Progress against goals. ƒ Budgeted expenses versus actual expenses. ƒ Status of outstanding orders for equipment and components.

1.3.20

System Analysis And Design

© V. Rajaraman

37 of 50

QUALITIES OF INFORMATION

Quality

1.4.1

How to ensure quality

ƒ Accurate

Ensure correct input and processing rules.

ƒ Complete

Include all data.

ƒ Timely

Give at right time

System Analysis And Design

© V. Rajaraman

38 of 50

QUALITIES OF INFORMATION Quality

1.4.2

How to ensure quality

ƒ Trustworthy

Do not hide unpleasant information.

ƒ Relevant

Understand user needs.

ƒ Brief

Summarize relevant information.

System Analysis And Design

© V. Rajaraman

39 of 50

QUALITIES OF INFORMATION

Quality

1.4.3

How to ensure quality

ƒ Up-to-date

Include all data up to present time.

ƒ Significance

Use attractive format & graphical charts.

System Analysis And Design

© V. Rajaraman

40 of 50

VARIETIES OF INFORMATION SYSTEMS ƒ Business Data processing – Operational information ƒ Management information system – Tactical information ƒ Decision support system(DSS) – strategic information

1.5.1

System Analysis And Design

© V. Rajaraman

41 of 50

Business data processing system

ƒ Enter data to be processed ƒ Edit, check input data ƒ Control check to see if the data is correct and reasonable ƒ Store clean data as an organized data base in a storage

1.5.2

System Analysis And Design

© V. Rajaraman

42 of 50

Business data processing There are 2 methods of business data processing 1. On-line transaction processing(OLTP) 2. Batch processing OLTP is used for query processing and rapid actions to requests Example: Finding balance in one’s bank account Booking railway tickets Batch processing used for periodic data processing of massive data Example: Processing university exam results at the end of each semester Payroll computation each month

1.5.3

System Analysis And Design

© V. Rajaraman

43 of 50

Online transaction processing

ƒ Database (or master file) available online on disk ƒRequest in specified format accepted from requestor ƒCheck request for validity ƒRetrieve record from database ƒTake appropriate action

1.5.4

System Analysis And Design

© V. Rajaraman

44 of 50

Batch processing ƒ Collect a batch of requests ƒ Key in ƒValidate ƒCreate request file ƒCalled transaction file ƒUpdate master file using transaction file ƒCreate result file ƒPrint responses for requests

1.5.5

System Analysis And Design

© V. Rajaraman

45 of 50

OLTP Vs BATCH ƒ Response time ƒ Throughput (No of transaction/unit time) ƒ Enquiry systems ƒ Periodic processing • Once a day • Once a month

1.5.6

System Analysis And Design

-

OLTP FAST

-

BATCH HIGH ONLINE BATCH

-

STORES ISSUES PAYROLL

© V. Rajaraman

46 of 50

MANAGEMENT INFORMATION SYSTEM ƒ Analyse outputs of routine data processing using statistical or operations research tools Eg: -Observe periodic demands by statistical analysis & use for tactical decisions -Use operations research tools to decide product mix using demand and cost data to maximize profit

1.5.7

System Analysis And Design

© V. Rajaraman

47 of 50

DECISION SUPPORT SYSTEM

ƒ Unstructured and difficult to obtain precise information ƒ Use of analytical and simulation models ƒ Aids to conceptualise through graphs ,animation etc ƒ Use of archival data to infer trends and rules ƒ Some artificial intelligence tools may be used

1.5.8

System Analysis And Design

© V. Rajaraman

48 of 50

DECISION SUPPORT SYSTEM

ƒ Data mining a useful tool ƒ What is data mining? ƒ Data collected during routine data processing archived over a long period-massive amount(Tera Bytes) ƒ Some hypothetical rules guessed by experienced managers and correlated with archival data-called data mining

1.5.9

System Analysis And Design

© V. Rajaraman

49 of 50

DECISION SUPPORT SYSTEM Example of data mining ƒ From archival data a rule guessed by managers that in some months there are long waiting lists for sleeper berths is verified-Data mining gives precise quantitative data Action Increase number of sleeper coaches or Introduce special trains ƒ Unexpected results of analysis of archival data more valuable for DSS 1.5.10

System Analysis And Design

© V. Rajaraman

50 of 50

MODULE 1

INFORMATION FOR MANAGEMENT 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 and Information, types of information : Operational, tactical, strategic, Statutory

DATA AND INFORMATION

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. INFORMATION is Processed data, used by managers to initiate actions and to run the organization efficiently. The data processed by machines gives information

TYPES OF INFORMATION

STRATEGIC : Needed for long range planning and directions. This is less structured. TACTICAL : Needed to take short range decisions to improve profitability and performance. OPERATIONAL : Needed for day to day operations of the organization. Eg: Daily Sales, Billing. STATUTORY : Needed by law to sent to government authorities. Eg: Sales tax return.

MANAGEMENT HIERARCHY AND INFORMATION NEEDS

Volume of Information

Type of Information

Low condensed

Unstructured

Medium moderately processed

Moderately structured

Large Detailed Reports

Highly structured

Top Managers Middle Managers Line managers

StrategicLong range planning

Tactical Short range improvement Operational Day to day policies

LEARNING UNIT 2

Why do we need information systems, management structure, requirements of information at different levels of management

NEED FOR INFORMATION SYSTEMS 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

Chief Executive (Strategical)

Production manager

Marketing manager

Materials manager

Line managers

Functional areas of management are as follows:

Finance manager

Human Resource manager

PRODUCTION MARKETING MATERIALS – purchase, stores FINANCE –Accounts HUMAN RESOURCE DEVELOPMENT(HRD) RESEARCH AND DEVELOPMENT (R&D)

INFORMATION FOR MANAGEMENT

A Production Management The following type of information is needed in 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.

E Human Resource Management 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

1.1

Multiple Choice Questions

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

V. Rajaraman/IISc. Bangalore

//V1/July 04/1

System Analysis and Design / Data and Information

a

Middle managers

b

Line managers

c

Top managers

d

All workers

1.8

1.9

1.10

1.11

1.12

Multiple Choice Questions

Operational information is needed for a

Day to day operations

b

Meet government requirements

c

Long range planning

d

Short range planning

Operational information is required by a

Middle managers

b

Line managers

c

Top managers

d

All workers

Statutory information is needed for a

Day to day operations

b

Meet government requirements

c

Long range planning

d

Short range planning

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

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

1.13

In motor car manufacturing the following type of information is operational

V. Rajaraman/IISc. Bangalore

//V1/July 04/1

System Analysis and Design / Data and Information

Multiple Choice Questions

a Decision on introducing a new model b Scheduling production

1.14

c

Assessing competitor car

d

Computing sales tax collected

In motor car manufacturing the following type of information is statutory a Decision on introducing a new model b Scheduling production c Assessing competitor car d

1.15

Computing sales tax collected

In a hospital information system the following type of information is strategic a Opening a new children’s ward b Data on births and deaths c Preparing patients’ bill d

1.16

Buying an expensive diagnostic system such as CAT scan

In a hospital information system the following type of information is tactical a Opening a new children’s’ ward b

Data on births and deaths

c Preparing patients’ bill d 1.17

Buying an expensive diagnostic system such as CAT scan

In a hospital information system the following type of information is operational a Opening a new children’s’ ward b Data on births and deaths c Preparing patients’ bill d

1.18

Buying an expensive diagnostic system such as CAT scan

In a hospital information system the following type of information is statutory a Opening a new children’s’ ward b Data on births and deaths c Preparing patients’ bill d Buying an expensive diagnostic system such as CAT scan

V. Rajaraman/IISc. Bangalore

//V1/July 04/1

System Analysis and Design / Data and Information

1.19

Multiple Choice Questions

A computer based information system is needed because (i) The size of organization have become large and data is massive (ii) Timely decisions are to be taken based on available data (iii) Computers are available (iv) Difficult to get clerks to process data a (ii) and (iii) b (i) and (ii) c (i) and (iv) d (iii) and (iv)

1.20

Volume of strategic information is a Condensed b Detailed c Summarized d

1.21

Irrelevant

Volume of tactical information is a

Condensed

b Detailed c Summarized d relevant 1.22

Volume of operational information is a Condensed b Detailed c Summarized d Irrelevant

1.23

Strategic information is a Haphazard b Well organized c Unstructured d

1.24

Partly structured

Tactical information is a Haphazard

V. Rajaraman/IISc. Bangalore

//V1/July 04/1

System Analysis and Design / Data and Information

Multiple Choice Questions

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. Rajaraman/IISc. Bangalore

(v)Tactical information technology

//V1/July 04/1

System Analysis and Design / Data and Information

(iii)Preventive maintenance schedules

Multiple Choice Questions

(vi)Operational information for machines

a

(iii) and (vi)

b

(i) and (iv)

c

(ii) and (v)

d None of the above 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

a (i) and (v) b (ii) and (v) c (iii) and (iv) d (ii) and (vi) 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

a (i) and (iv) b (i) and (vi) c (ii) and (iv) d (iii) and (v) 1.31

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

a (i) and (vi) b (iii) and (vi) c (ii) and (vi) d (iii) and (iv)

V. Rajaraman/IISc. Bangalore

//V1/July 04/1

System Analysis and Design / Data and Information

1.32

Multiple Choice Questions

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 1.35

(ii) and (v)

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)

V. Rajaraman/IISc. Bangalore

//V1/July 04/1

System Analysis and Design / Data and Information

Multiple Choice Questions

d (iii) and (v) 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

a (i) and (iv) b (ii) and (v) c (iii) and (vi) d (iii) and (iv) 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

(i) and (v)

b (iii) and (v) c (ii) and (v) d (i) and (vi) 1.38

Organizations are divided into departments because 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

1.39

Organizations have hierarchical structures because 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

V. Rajaraman/IISc. Bangalore

//V1/July 04/1

System Analysis and Design / Data and Information

1.40

Multiple Choice Questions

Which of the following functions is the most unlikely in an insurance company. a Training b giving loans c bill of material d accounting

1.41

Which of the following functions is most unlikely in a university a admissions b accounting c conducting examination d marketing

1.42

Which of the following functions is most unlikely in a purchase section of an organization. a Production planning b order processing c vendor selection d training

1.43

Which is the most unlikely function of a marketing division of an organization. a advertising b sales analysis c order processing d customer preference analysis

1.44

Which is the most unlikely function of a finance section of a company. a Billing b costing c budgeting d labor deployment

1.45

Match quality of information and how it is ensured using the following list QUALITY (i) Accurate

V. Rajaraman/IISc. Bangalore

HOW ENSURED (iv) Include all data

//V1/July 04/1

System Analysis and Design / Data and Information

Multiple Choice Questions

(ii) Complete

(v) Use correct input and processing rules

(iii)Timely

(vi) Include all data up to present time

a (i) and (v) b (ii) and (vi) c (iii) and (vi) d (i) and (iv) 1.46

Match quality of information and how it is ensured using the following list QUALITY (i) Accurate

HOW ENSURED (iv) Include all data

(ii) Complete

(v) Use correct input and processing rules

(iii) Timely

(vi) Include all data up to present time

a (ii) and (v) b (ii) and (vi) c (ii) and (iv) d (iii) and (iv) 1.47

Match quality of information and how it is ensured using the following list QUALITY

HOW ENSURED

(i) Up-to-date

(iv) Include all data to present time

(ii) Brief

(v) Give at right time

(iii) Significance

(vi) Use attractive format and understandable graphical charts

a (i) and (v) b (ii) and (vi) c (iii) and (vi) d (i) and (vi) 1.48

Match quality of information and how it is ensured using the following list QUALITY

HOW ENSURED

(i)Up- to-date

(iv) Include all data to present time

(ii)Brief

(v) Give at right time

V. Rajaraman/IISc. Bangalore

//V1/July 04/1

System Analysis and Design / Data and Information

(iii) Significance

Multiple Choice Questions

(vi) Use attractive format and understandable graphical charts

a (i) and (iv) b (ii) and (v) c (iii) and (iv) d (ii) and (iv) 1.49

Match quality of information and how it is ensured using the following list QUALITY

HOW ENSURED

(i)Brief

(iv) Unpleasant information not hidden

(ii)Relevant

(v) Summarize relevant information

(iii) Trustworthy

(vi) Understands user needs

a (i) and (iv) b (ii) and (v) c (iii) and (vi) d (i) and (v) 1.50

Match quality of information and how it is ensured using the following list QUALITY

HOW ENSURED

(i)Brief

(iv) Unpleasant information not hidden

(ii)Relevant

(v) Summarize relevant information

(iii)Trustworthy

(vi) Understands user needs

a (ii) and (vi) b (i) and (iv) c (iii) and (v) d (ii) and (iv) 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

1.52

The quality of information which is based on understanding user needs

V. Rajaraman/IISc. Bangalore

//V1/July 04/1

System Analysis and Design / Data and Information

Multiple Choice Questions

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

V. Rajaraman/IISc. Bangalore

//V1/July 04/1

System Analysis and Design / Data and Information

Multiple Choice Questions

b removed from processing c collected for later use d ignored during processing 1.59

Online transaction processing is used because a it is efficient b disk is used for storing files c it can handle random queries. d Transactions occur in batches

1.60

On-line transaction processing is used when i) it is required to answer random queries ii) it is required to ensure correct processing iii) all files are available on-line iv) all files are stored using hard disk a i ,ii b i, iii c ii ,iii, iv d i , ii ,iii

1.61

Off-line data entry is preferable when i) data should be entered without error ii) the volume of data to be entered is large iii) the volume of data to be entered is small iv) data is to be processed periodically a i, ii b ii, iii c ii, iv d iii, iv

1.62

Batch processing is used when i) response time should be short ii) data processing is to be carried out at periodic intervals iii) transactions are in batches iv) transactions do not occur periodically

V. Rajaraman/IISc. Bangalore

//V1/July 04/1

System Analysis and Design / Data and Information

Multiple Choice Questions

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

V. Rajaraman/IISc. Bangalore

//V1/July 04/1

System Analysis and Design / Data and Information

Multiple Choice Questions

c the organization is large d all processing had been only batch processing 1.68

Decision support systems are used for a Management decision making b Providing tactical information to management c Providing strategic information to management d Better operation of an organization

1.69

Decision support systems are used by a Line managers. b Top-level managers. c Middle level managers. d System users

1.70

Decision support systems are essential for a Day–to-day operation of an organization. b Providing statutory information. c Top level strategic decision making. d Ensuring that organizations are profitable.

V. Rajaraman/IISc. Bangalore

//V1/July 04/1

System Analysis and Design / Data and Information

Multiple Choice Questions

Key to Objective Questions

1.1

b

1.2

b

1.3

c

1.4

c

1.5

c

1.6

d

1.7

a

1.8

a

1.9

b

1.10

b

1.11

a

1.12

c

1.13

b

1.14

d

1.15

d

1.16

a

1.17

c

1.18

b

1.19

b

1.20

a

1.21

c

1.22

b

1.23

c

1.24

d

1.25

b

1.26

b

1.27

c

1.28

a

1.29

a

1.30

c

1.31

b

1.32

c

1.33

d

1.34

c

1.35

c

1.36

a

1.37

b

1.38

b

1.39

c

1.40

c

1.41

d

1.42

a

1.43

c

1.44

d

1.45

a

1.46

c

1.47

c

1.48

a

1.50

a

1.51

b

1.52

c

1.53

b

1.54

c

1.49

d

1.55

a

1.56

b

1.57

c

1.58

a

1.59

c

1.60

b

1.61

c

1.62

c

1.63

d

1.64

b

1.65

c

1.66

a

1.67

a

1.68

c

1.69

b

1.70

c

V. Rajaraman/IISc. Bangalore

//V1/July 04/1

MODULE 1

INFORMATION FOR MANAGEMENT WORKED EXAMPLES 1.1)

If an information system were to be designed for a hospital, what would be the strategic and tactical information? Strategic information in hospital 1.Cost-benefit of a new expensive diagnostic instrument. (Such as CAT scanner). 2. Long-term forecasts for opening a ward for old age patients. 3.Technical developments in routine diagnostic instruments and decision to upgrade existing instruments. Tactical information in hospital 1.Optimum replacement periods and use of expensive instruments. 2.Optimum level of drugs to be stocked keeping in view expiry dates of drugs. 3.Operation theatre utilization data for improved performance

1.2)

For a hospital information system what would be the Operational information required? 1. 2. 3. 4.

1.3)

List of patients discharged, admitted in every department. Occupancy of beds and schedules for admission of patients. Absenteeism data of nurses and technicians. Operation theatre allotment and schedules.

What is statutory information? What statutory information is expected from a hospital? Information and reports that are required by law to be sent to the government authority is called statutory information. Statutory Information for Hospital 1. Birth and death records. 2. Infectious diseases record. 3. Profit and loss account.

1.4)

What type of Statutory information is to be provided by a small-scale industry? Any information required by law to be sent to government authorities such as: 1. Income Tax returns 2. Sales tax returns 3. Excise duty 4. Employee state Insurance

1.5)

Is up-to-date information always timely? If not, give an example of up-todate but not timely information? No, it is not necessary that up-to-date information is always timely. For example giving the correct information about the casualties and the damage caused due to earthquake after a week. Another example is delivering a newspaper dated 16 June with information Up-to-date a week late.

Module 1: Data and Information 1.1

Distinguish between data and information. Give two examples of data and information obtained by processing data.

1.2

Give two examples of non-arithmetic data processing.

1.3

What is the main difference between strategic and tactical information? If an information system is to be designed for a hospital, what would be the strategic and tactical information?

1.4

What is operational information? In what way is it different from strategic information? For hospital information system what would be the operational information required?

1.5

What is statutory information? What statutory information is expected from a hospital?

1.6

What type of statutory information is to be provided by a small scale industry?

1.7

What would you think are the strategic, tactical and operational information needed by an Electric Power Generation Corporation?

1.8

What would be the strategic, tactical and operational information needs of a State Road Transport Corporation?

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 assignments in a large hostel? What type of information would be needed for managing the kitchen of the hostel?

1.12

Give an example of incomplete information.

1.13

What is the difference between accuracy and trustworthiness of information?

1.14

Is uptodate information always timely? If not, give an example of uptodate but not timely information.

1.15

Does an attractive format of a report necessarily imply that it is relevant?

1.16

Why are organizations divided into departments and sections?

1.17

What are the primary functions of a marketing department of an organization?

1.18

In what ways do different departments in an organization interact? Give an 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.23

Why is editing important in data entry?

1.24

What is the difference between on-line transaction processing and batch processing?

1.25

When is batch processing preferred?

1.26

What is the basic difference between business data processing systems and MIS?

1.27

What type of information is provided by MIS?

1.28

What is the difference between MIS and DSS?

1.29

What will an MIS provide in a marketing function?

1.30

What will a DSS provide in a marketing function?

1.31

What do you understand by archival data? How can archival data be used?

1.32

What is data mining? Give an example of data mining.

System Analysis and Design/Information for Management

Case Study

INFORMATION PROCESSING FOR A STORE - AN OVERVIEW – A Small Case Example In what follows we will present a broad overview of how data is processed to meet the functional requirements of a store. The presentation below will be an overview. The important functions of a store are: •

to keep an up to date ledger containing stock positions,



cater to requisitions for issue of items from the store,



initiate reorder of items whose stock is below a specified limit,



update stock register when items are received, and



answer enquiries regarding availability of items in stores.

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 interchanging files between different computers.

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

V. Rajaraman/IISc

M1/V1/July 2004/1

System Analysis and Design/Information for Management

Case Study

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 be entered on a separate computer such as Personal Computer (PC) and stored on a floppy disk. This is called off-line data entry.

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 entry and for data processing.

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

V. Rajaraman/IISc

M1/V1/July 2004/2

System Analysis and Design/Information for Management

Case Study

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. In this case a reasonable format for requests is: (item code, item name, quantity requested) Table 1 Operations Performed in Stores Information Processing 1.

2.

3.

4.

Create stock ledger • Codify items • Determine data fields needed for each item • Create a record for each item • Organize the records as a data base Issues/Reorder • Codify items • Determine data fields required in each request • Determine data fields required for each issue • Create record format for requests and issues • Create record format for reorder Receipts • Codify items • Determine data fields required in each receipt • Create record format for receipts Enquiry • Codify items • Record format for enquiry • Record format for response

The record format for a reorder request would be: item code, item name)

V. Rajaraman/IISc

M1/V1/July 2004/3

System Analysis and Design/Information for Management

Case Study

( 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) The request record is entered through a keyboard by a requester. It is checked for validity by a program.

A valid request is forwarded to a retrieval program which

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 On-Line Transaction Processing (OLTP). There is another method of processing requests. A number of requests arriving during a 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. In operations such as payroll processing which is done periodically, batch processing is more appropriate.

V. Rajaraman/IISc

M1/V1/July 2004/4

System Analysis and Design/Information for Management

Case Study

Enquiry system is normally an on-line transaction processing system as it is the most natural way of answering users' queries. In an enquiry system also, a user's query is first checked for validity of item code, etc. before it is processed. A variety of information systems used in practice are primarily on-line transaction 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 reserved on a train). Similarly reliability and availability is essential in on-line banking systems.

MIS and DSS for Stores The processing methods presented in the last para are for routine data processing. The information they provide is operational information. The system required to obtain 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 incurred if an item is out-of-stock. These data have to be collected separately over a 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

V. Rajaraman/IISc

M1/V1/July 2004/5

System Analysis and Design/Information for Management

Case Study

known methods of operations research can then be used to compute stock level for initiating reorder and the optimal quantity to be reordered. 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 mining to assist in tactical management. As another example of tactical information requirement, let us consider the question of fixing credit limits for customers. In order to arrive at this, the following inputs would be useful: •

Customer details such as income, occupation etc. •

Customer payment history



Volume of purchase by customer



Outstanding dues (if any) from the customer.

V. Rajaraman/IISc

M1/V1/July 2004/6

System Analysis and Design/Information for Management

Case Study

Using these one may formulate some rules to arrive at the credit limits and also predict their possible effect such as: •

anticipated effect on sales caused by varying credit limits



anticipated loss/profit due to credit limits.

By analyzing the impact of credit limits as specified above, a decision may be arrived at to fix credit limits. The primary point to note is that one has to formulate a model and sometimes simulate a system to obtain tactical information.

The operational information from routine

processing becomes an input to obtain tactical information. 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 of data transformations and representations. 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 branch or not would require the following information: •

Projected demands in the new branch



Impact on current branch



Pricing in new branch

V. Rajaraman/IISc

M1/V1/July 2004/7

System Analysis and Design/Information for Management



Competition in new location



Profitability of new branch

Case Study

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 is to aid in strategic, unstructured decision making. Developing such systems is much more

difficult than developing operational systems.

They, however, are the ones

required by the top management of organizations.

V. Rajaraman/IISc

M1/V1/July 2004/8

MODULE 1 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). 2. The following books have a good treatment of Information Systems: (i) Systems Analysis and Design, by K.E.Kendall and J.E.Kendall, Pearson Education (Asia) India reprint 2003 Chapter 1 pp.1 to 4 and Chapter 2 pp. 29 to 45 deal with the topic of understanding organizations. The examples are more relevant to U.S.A. rather than our country. (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 (iii)Information Systems Today by LiJessup and J.Valacich, Prentice Hall of India, 2003. Chapter 6, pp.168 to 198 deal with organizational structure. (iv) Management Information Systems (The Manager’s View), by R.Schultheis and M.Sumners, Tata McGraw Hill, 1999. Part III pp.356 to 457 have a very detailed discussion of operational, tactical and strategic management and appropriate information systems. (v) Management Information Systems, by K.E.Laudon and J.P.Laudon, Pearson Education Asia, Indian Reprint 2004. Chapter 2, pp. 36 to 71 cover the topics discussed in Module in great detail.

SUMMARY OF MODULE 1

1.

Data and information are not synonymous. Information is processed data. Data may be processed by performing arithmetic operations on them. Data may also be processed by reorganizing them by applying appropriate rules such as sorting, merging, selection, matching, filtering etc.

2.

Information requirements for managing organizations may be classified as strategic, tactical and operational.

3.

Strategic information is needed for long range planning. It is less structured and difficult to obtain by processing raw data.

4.

Tactical information is used to take short range decisions and for better control of the functioning of the organization. It requires complex and ingenious processing of data.

5.

Operational information is used for day-to-day management of organizations. It is obtained by simple processing of data, it is well structured, and more voluminous.

6.

Statutory information consists of reports to be sent to government by law.

7.

Management of organizations is divided functionally. Depending on the size of the organization, each function maybe delegated to different managers.

8.

Large organizations would have a hierarchical management structure with top level managers, middle level managers and line managers.

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 managers. They need operational information. 10.

The primary functional areas of many organizations are: Human Resource Development, Production, Materials, Finance, Marketing and Research, Design 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 functions such as Accounts, Human resource development, Stores, Purchase are common among organizations.

13.

Each function in an organization needs operational, tactical and strategic 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 and its significance understandable.

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 processed as a batch is called batch processing.

18.

The method of processing data in which transactions are processed by a computer as and when they arise is called On-Line Transaction Processing (OLTP).

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

Management Information Systems (MIS). 21.

Information from multiple sources in an organization are normally presented in 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 as back up or for legal reasons. These are called data archives.

23.

The archived data may be analysed to obtain tactical and strategic information. This is called data mining.

MODULE 2

SYSTEMS ANALYSIS AND DESIGN LIFE CYCLE 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

2.1 The major goal of requirement determination phase of information system development is a) determine whether information is needed by an organization b) determine what information is needed by an organization c) determine how information needed by an organization can be provided d) determine when information is to be given

2.2 Information requirements of an organization can be determined by a) interviewing managers and users and arriving at the requirements based on consensus b) finding out what similar organizations do c) telling organization what they need based on your experience d) sending a questionnaire to all employees of the organization

2.3 It is necessary to prioritize information requirements of an organization at the requirements determination phase as a) it is always good to prioritize b) there are conflicting demands from users c) there are constraints on budgets, available time, human resource and requirement d) all good organization do it

2.4 Requirement specification is carried out a) after requirements are determined b) before requirements are determined c) simultaneously with requirements determination d) independent of requirements determination

2.5 The role of a system analyst drawing up a requirements specification is similar to a) architect designing a building b) a structural engineer designing a building c) a contractor constructing a building d) the workers who construct a building

2.6 It is necessary to consult the following while drawing up requirement specification a) only top managers b) only top and middle management c) only top, middle and operational managers d) top, middle and operational managers and also all who will use the system

2.7. In order to understand the working of an organization for which a computer based system is being designed, an analyst must a) look at only current work and document flow in the organization b) discuss with top level and middle level management only c) interview top, middle, line managers and also clerks who will enter data and use the system d) only clerical and middle level staff who have long experience in the organization and will be users of the system

LEARNING UNIT 2

2.8. A feasibility study is carried out a) after final requirements specifications are drawn up b) during the period when requirements specifications are drawn up c) before the final requirements specifications are drawn up d) at any time

2.9. The main objective of feasibility study is a) to assess whether it is possible to meet the requirements specifications b) to assess if it is possible to meet the requirements specified subject to constraints of budget, human resource and hardware c) to assist the management in implementing the desired system d) to remove bottlenecks in implementing the desired system

2.10. It is necessary to carry out a feasibility study as a) top management can not ensure that a project is feasible before calling a system analyst b) top management is not sure what they want from the system c) even though top management is in favor of the system, technology may not be mature for implementation d) all organizations do it

2.11. Feasibility study is carried out by a) managers of the organization b) system analyst in consultation with managers of the organization c) users of the proposed system d) systems designers in consultation with the prospective users of the system 2.12. Initial requirements specification is a) not changed till the end of the project b)continuously changed during project implementation c) only a rough indication of the requirement d) changed and finalized after feasibility study 2.13. Final specifications are drawn up by a) system analyst in consultation with the management of the organization b) the managers of user organization c) system analyst in consultation with programmers d) system designers along with users

2.14. The main goal of arriving at a final specification is a) to tell the organization’s managers how the system will function b) to tell the organization’s managers what the proposed system will achieve in a language understood by them c) to compute the cost of implementing the system d) to assist in designing the system

2.15. The final specifications are arrived at a) after feasibility study b) during feasibility study c) just before implementation phase d) when the system is being designed

2.16. System approval criteria are specified a) when the final specifications are drawn up b) during feasibility study c) during the requirements specifications stage d) during system study stage

2.17 System test plan is specified a) when the final specifications are drawn up b) during feasibility study c) during the requirements specifications stage d)during system study stage 2.18. Hardware study is required a) to find out cost of computer system needed b) to determine the type of computer system and software tools needed to meet the final system specification c) to make sure that the system does not become obsolete d) to find how to implement the system 2.19. Hardware study is carried out a) after the final system is specified b) at the requirements specification stage c) before the requirements are specified d) whenever management decides it is necessary 2.20. System design is carried out a) as soon as system requirements are determined b) whenever a system analyst feels it is urgent c) after final system specifications are approved by the organization d) whenever the user management feels it should be done 2.21. The primary objective of system design is to a) design the programs, databases and test plan b) design only user interfaces c) implement the system d) find out how the system will perform

2.22. The primary objective of system implementation is i) to build a system prototype ii) to train users to operate the system iii) to implement designed system using computers iv) write programs, create databases and test with live data

a) i, iii b) i, ii, iii c) ii ,iii d) ii, iv 2.23. During system implementation the following are done i) programs are written and tested with operational data ii) user documentation is created and users trained iii) programmers are recruited and trained iv) the system is tested with operational data

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 d) other similar organization modify these system 2.27. The main objective of system modification is a) to use the latest software tools b) to meet the user’s new/changed needs c) to use the latest hardware d) to have the most modern system 2.28. To easily modify the existing system it is necessary to a) use good software tools b) use the best hardware available

c) design the system which can be changed at low cost d) keep the programming team happy 2.29 .It is necessary to design an information system to easily accommodate change, because a) new computers are introduced every year b) new computer languages become popular every year c) organizations’ requirements change over a period of time d) systems need continuous debugging 2.30. Changing an operational information system is a) impossible b) expensive and done selectively c) never required d) usually done

LEARNING UNIT 3

2.31. System analysts have to interact with i) managers of organizations ii) users in the organization iii) programming team iv) data entry operator 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

Key To Objective Questions 2.1

b

2.2

a

2.3

c

2.4

a

2.5

a

2.6

d

2.7

c

2.8

c

2.9

b

2.10

c

2.11

b

2.12

c

2.13

a

2.14

b

2.15

a

2.16

a

2.17

a

2.18

b

2.19

a

2.20

c

2.21

a

2.22

d

2.23

d

2.24

a

2.25

b

2.26

a

2.27

b

2.28

c

2.29

c

2.30

b

2.31

b

2.32

a

2.33

d

2.34

c

2.35

b

2.36

d

2.37

b

2.38

b

MODULE 2

SYSTEMS ANALYSIS AND DESIGN LIFE CYCLE Contents 2.1 Systems Analysis and Design life Cycle: Requirements determination, requirements specifications 2.2 Feasibility analysis, final specifications, hardware and software study, system design, system implementation, system evaluation, system modification. 2.3 Role of systems analyst, attributes of system analyst, tools used in system analysis Systems Analysis And Design

©

V. Rajaraman

MOTIVATION ƒ Designing Information system for an organization is a very complex job. ƒ Students should know how to logically divide a complex job into smaller manageable steps. ƒ Each step must have a logical beginning and end and must be self contained.

System Analysis And Design

© V. Rajaraman

1 of 23

MOTIVATION

ƒ Division of large jobs into logical steps will • Enable one to assess progress at the end of each step

• •

Steps may be assigned to persons with specialized competance Allocation of human and financial resources appropriate for each step can be planned

System Analysis And Design

© V. Rajaraman

2 of 23

LEARNING GOALS 1. Nine Steps in designing Information Systems. 2. Tasks performed in each step. 3. Nature of tasks performed by Systems Analysts. 4. The attributes of Systems Analysts. 5. The tools used by Systems Analysts.

System Analysis And Design

© V. Rajaraman

3 of 23

LIFE CYCLE OF SYSTEMS ANALYSIS AND DESIGN Steps involved in Analysis and Design

1. 2. 3. 4. 5. 6. 7. 8. 9. 2.1.1

Requirements Determinations Requirements Specifications Feasibility Analysis Final Specifications Hardware Study System Design System Implementation System Evaluation System Modification System Analysis And Design

© V. Rajaraman

4 of 23

LIFE CYCLE OF SYSTEMS ANALYSIS AND DESIGN Step 1 : Requirements Determination

ƒ Arrived at by a consensus among managers ƒ Priorities among applications determined ƒ Pick high priority applications.

2.1.2

System Analysis And Design

© V. Rajaraman

5 of 23

LIFE CYCLE OF SYSTEMS ANALYSIS AND DESIGN Step 2 : Requirements Specification

ƒ Known as System Requirements Specification (SRS) ƒ Understand the existing System ƒ Applications where a system is required are listed ƒ Arrive at the specifications of the users’ Requirements after discussions with the user ƒ A system may encompass several applications 2.1.3

System Analysis And Design

© V. Rajaraman

6 of 23

LIFE CYCLE OF SYSTEMS ANALYSIS AND DESIGN Step 3 : Feasibility Analysis ƒ Formulate Goals of the system and quantify goals ƒ Find alternative methods of meeting the goals ƒ For each alternative assess resources needed - Human Resources - Time and Money - Equipment needed ƒ Assess cost of each alternative ƒ Find the best alternative method subject to resource constraints

2.2.1

System Analysis And Design

© V. Rajaraman

7 of 23

LIFE CYCLE OF SYSTEMS ANALYSIS AND DESIGN Step 4 : Final Specifications

ƒ Specifications would state what the system would achieve. ƒ Specification drawn up are improved for implementation. ƒ SRS written- given to user and agreement reached 2.2.2

System Analysis And Design

© V. Rajaraman

8 of 23

LIFE CYCLE OF SYSTEMS ANALYSIS AND DESIGN Step 5 : Hardware Study

ƒ Determine Hardware and Software required to execute the application. ƒ Determine Response time,Volume of data to be processed, Frequency of reports etc & then pick the hardware.

2.2.3

System Analysis And Design

© V. Rajaraman

9 of 23

LIFE CYCLE OF SYSTEMS ANALYSIS AND DESIGN Step 6 : System Design

ƒ Logical Design of the System ƒ Objects Identified ƒ Database Designed ƒ Program Specification drawn up ƒ Implementation Plan Drawn up ƒ Test Plan

2.2.4

System Analysis And Design

© V. Rajaraman

10 of 23

LIFE CYCLE OF SYSTEMS ANALYSIS AND DESIGN Step 7 : System Implementation

ƒ Write Programs ƒ ƒ ƒ ƒ

Create Database Document System Train Users Trial run of the system

ƒ Test and Accept

2.2.5

System Analysis And Design

© V. Rajaraman

11 of 23

LIFE CYCLE OF SYSTEMS ANALYSIS AND DESIGN Step 8 : System evaluation

ƒ Find out from Users whether the System meets specified requirements. ƒ List areas of dissatisfaction and find reasons ƒ Suggest if there has to be any improvements to the system

2.2.6

System Analysis And Design

© V. Rajaraman

12 of 23

LIFE CYCLE OF SYSTEMS ANALYSIS AND DESIGN Step 9 : System Modification

ƒ Fix errors ƒ Add/Delete features as required by users ƒ Tune the System ƒ Continuously monitor system and assess performance

2.2.7

System Analysis And Design

© V. Rajaraman

13 of 23

System Life Cycle Diagram

Requirements Determination Decision to Design Information System System Implementation System

User Requirements

Logical Design

System Design

Configuration Data

Revised Requirements System Maintenance

Feasibility Analysis

Requirements Specification

Test Plan

System Evaluation

2.2.8

Revised Prioritized Requirements Specifications

Hardware Study

Functional Specifications

Feasibility Study

System Specification Analysis

Physical Requirements

Budget & schedule

Improved System

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

2.3.1

System Analysis And Design

© V. Rajaraman

15 of 23

ROLE OF SYSTEMS ANALYST ƒ Analysis and evaluation - Arrive at appropriate system ƒ Solving problems - Hazy requirements converted into specific requirements - Suggest many alternative solutions - Quantify cost and benefits

2.3.2

System Analysis And Design

© V. Rajaraman

16 of 23

ROLE OF SYSTEMS ANALYST ƒ Drawing up specifications - FUNCTIONAL SPECIFICATIONS

- Understood by users and programmers - Accepted by users - Precise and detailed - Account for possible changes

2.3.3

System Analysis And Design

© V. Rajaraman

17 of 23

ROLE OF SYSTEMS ANALYST

SYSTEM DESIGN ƒ Logical design of system - Objects identification - Normalizing database - Test plan ƒ Design must be modular to accommodate change

2.3.4

System Analysis And Design

© V. Rajaraman

18 of 23

ROLE OF SYSTEMS ANALYST

ƒ Evaluating Systems - Evaluation after use for sometime - Plan periodicity for evaluation - Modify as needed

2.3.5

System Analysis And Design

© V. Rajaraman

19 of 23

ATTRIBUTES OF A SYSTEMS ANALYST ƒ KNOWLEDGE OF ORGANISATION

- Knowing user’s jargon & practices - Know Management functions. ƒ KNOWLEDGE OF COMPUTERS AND SOFTWARE

- Knowledge of system design tools - Keep abreast of modern developments 2.3.6

System Analysis And Design

© V. Rajaraman

20 of 23

ATTRIBUTES OF A SYSTEMS ANALYST ƒ GOOD INTERPERSONNAL RELATIONS - Need to work as team member - Lead smaller teams - Interface with programmers & Users - Motivator.

ƒ ABILITY TO COMMUNICATE - Oral Presentation - Report Writing - Answer queries

2.3.7

System Analysis And Design

© V. Rajaraman

21 of 23

ATTRIBUTES OF A SYSTEMS ANALYST ƒ ANALYTICAL MIND - Problem solving attitude - Ability to assess trade offs - Sound commonsense - Curiosity to learn about new organizations

ƒ BREADTH OF KNOWLEDGE - Broad Liberal Knowledge - Variety of jobs to be tackled in diverse organizations

2.3.8

System Analysis And Design

© V. Rajaraman

22 of 23

TOOLS USED BY SYSTEMS ANALYST ƒ Data Flow Diagram ƒ Decision Tables ƒ Modeling Language such as UML ƒ Normalization of Databases ƒ Testing tools ƒ ISO/CMM procedure manuals

2.3.9

System Analysis And Design

© V. Rajaraman

23 of 23

MODULE 2 SYSTEMS ANALYSIS AND DESIGN LIFE CYCLE

Contents

1. MOTIVATION AND LEARNING GOALS 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 At the end of this module u will know: 1. 2. 3. 4. 5.

Nine Steps in designing Information Systems. Tasks performed in each step. Nature of tasks performed by Systems Analysts. The attributes of Systems Analysts. The tools used by Systems Analysts.

LEARNING UNIT 1 Systems Analysis and Design life Cycle: Requirements determination, requirements specifications

LIFE CYCLE OF SYSTEMS ANALYSIS AND DESIGN Steps involved in Analysis and Design 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: This is arrived at by a consensus reached among managers in the organization. Priorities among applications are determined and high priority applications are selected.

2.Requirements Specifications This is known as System Requirements Specification (SRS). Applications where a system is required are listed, and specifications of the users requirements are arrived at after discussion with the user.

LEARNING UNIT 2 Feasibility analysis, final specifications, hardware and software study, system design, system implementation, system evaluation, system modification.

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 Specifications would state what the system would achieve. Specifications drawn up are then improved for implementation. SRS is written, which is then given to user and agreement is reached

5.Hardware Study Determine Hardware and Software required to execute the application. Determine Response time, Volume of data to be processed, Frequency of reports etc & then pick the hardware.

6.System Design A logical Design of the System is implemented. Objects are identified, Database is designed, and program specification and implementation plan is drawn up.

7.System Implementation In this phase programs are written, Database is created, user operational document is created, users are trained and the system is tested with operational data

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

Role of systems analyst, attributes of system analyst, tools used in system analysis

ROLE OF SYSTEMS ANALYST

The following are roles of systems analyst:

1. Defining Requirements: Involves Interviewing Users 2. Prioritizing Requirements: Obtain Users Consensus 3. Fact Gathering: Data, Facts and opinions of Managers are gathered, Lower level Users should also be consulted 4.Analysis and evaluation -Arrive at appropriate system 5. Solving problems: Hazy requirements converted into specific requirements, suggest many alternative solutions, and quantify cost and benefits 6.Drawing up specifications: Draw up specifications which are understood by users and programmers, which are accepted by users and which are precise and detailed. 7. System design: Logical design of system is implemented and the design must be modular 8.Evaluating Systems: Evaluate the system after it has been used for sometime, Plan the periodicity for evaluation and modify the system as needed

ATTRIBUTES OF A SYSTEMS ANALYST

Knowledge of organisation Knowledge of computers and software Good interpersonal relations Ability to communicate Analytical mind Breadth of knowledge

TOOLS USED BY SYSTEMS ANALYST ƒ Data Flow Diagram ƒ Decision Tables ƒ Modeling Language such as UML ƒ Normalization of Databases ƒ Testing tools ƒ ISO/CMM procedure manuals

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. 1. Information Systems Today by L.Jessup and J.Valacich. Topics in this module treated from a slightly different perspective in Chapter 8, pp.240 to 256. 2. K.E.Kendall and J.E.Kendall, Systems Analysis and Design, Pearson Education Asia, Indian Reprint 2002. pp.16-17 have a very brief treatment of Systems Analysists’ role and Systems Development life cycle.

3. Modern Systems Analysis and Design by J.E.Hoffer, J.F.George and J.Valacich treat life cycle in pp.18-25. Role of various stake holders in systems development is covered in pp.11 to 15. 4. Information Systems, S.Alter, Pearson Education Asia 2000 looks at life cycle from a different perspective on pp. 4 to 16.

System Analysis and Design/Information Gathering

Multiple Choice Questions

Systems Analysis and Design Life Cycle 2.1 The major goal of requirement determination phase of information system development is a. determine whether information is needed by an organization b. determine what information is needed by an organization c. determine how information needed by an organization can be provided d. determine when information is to be given 2.2 Information requirements of an organization can be determined by a. interviewing managers and users and arriving at the requirements based on consensus b. finding out what similar organizations do c. telling organization what they need based on your experience d. sending a questionnaire to all employees of the organization 2.3 It is necessary to prioritize information requirements of an organization at the requirements determination phase as a.

it is always good to prioritize

b.

there are conflicting demands from users

c.

there are constraints on budgets, available time, human resource and requirement

d.

all good organization do it

2.4 Requirement specification is carried out a.

after requirements are determined

b. before requirements are determined c.

simultaneously with requirements determination

d.

independent of requirements determination

2.5 The role of a system analyst drawing up a requirements specification is similar to a.

architect designing a building

b. a structural engineer designing a building c.

a contractor constructing a building

V. Rajaraman/IISc. Bangalore

M2/V1/July 04/1

System Analysis and Design/Information Gathering

d.

Multiple Choice Questions

the workers who construct a building

2.6 It is necessary to consult the following while drawing up requirement specification a.

only top managers

b.

only top and middle management

c.

only top, middle and operational managers

d.

top, middle and operational managers and also all who will use the system

2.7 In order to understand the working of an organization for which a computer based system is being designed, an analyst must a.

look at only current work and document flow in the organization

b.

discuss with top level and middle level management only

c.

interview top, middle, line managers and also clerks who will enter data and use the system

d. only clerical and middle level staff who have long experience in the organization and will be users of the system 2.8 A feasibility study is carried out a. after final requirements specifications are drawn up b.

during the period when requirements specifications are drawn up

c.

before the final requirements specifications are drawn up

d.

at any time

2.9 The main objective of feasibility study is a.

to assess whether it is possible to meet the requirements specifications

b. to assess if it is possible to meet the requirements specified subject to constraints of budget, human resource and hardware c.

to assist the management in implementing the desired system

d. to remove bottlenecks in implementing the desired system 2.10 It is necessary to carry out a feasibility study as a.

top management can not ensure that a project is feasible before calling a system analyst

b.

top management is not sure what they want from the system

V. Rajaraman/IISc. Bangalore

M2/V1/July 04/2

System Analysis and Design/Information Gathering

c.

Multiple Choice Questions

even though top management is in favor of the system, technology may not be mature for implementation

d.

all organizations do it

2.11 Feasibility study is carried out by a.

managers of the organization

b. system analyst in consultation with managers of the organization c.

users of the proposed system

d. systems designers in consultation with the prospective users of the system 2.12 Initial requirements specification is a. not changed till the end of the project b. continuously changed during project implementation c.

only a rough indication of the requirement

d. changed and finalized after feasibility study 2.13 Final specifications are drawn up by a.

system analyst in consultation with the management of the organization

b.

the managers of user organization

c.

system analyst in consultation with programmers

d. system designers along with users 2.14 The main goal of arriving at a final specification is a.

to tell the organization’s managers how the system will function

b.

to tell the organization’s managers what the proposed system will achieve in a language understood by them

c.

to compute the cost of implementing the system

d. to assist in designing the system 2.15 The final specifications are arrived at a.

after feasibility study

b. during feasibility study c.

just before implementation phase

d.

when the system is being designed

2.16 System approval criteria are specified a.

when the final specifications are drawn up

V. Rajaraman/IISc. Bangalore

M2/V1/July 04/3

System Analysis and Design/Information Gathering

Multiple Choice Questions

b. during feasibility study

2.17

c.

during the requirements specifications stage

d.

during system study stage

System test plan is specified a.

when the final specifications are drawn up

b. during feasibility study c.

during the requirements specifications stage

d.

during system study stage

2.18 Hardware study is required a.

to find out cost of computer system needed

b.

to determine the type of computer system and software tools needed to meet the final system specification

c.

to make sure that the system does not become obsolete

d.

to find how to implement the system

2.19 Hardware study is carried out a.

after the final system is specified

b. at the requirements specification stage c.

before the requirements are specified

d. whenever management decides it is necessary 2.20 System design is carried out a.

as soon as system requirements are determined

b. whenever a system analyst feels it is urgent c.

after final system specifications are approved by the organization

d. whenever the user management feels it should be done 2.21 The primary objective of system design is to a.

design the programs, databases and test plan

b.

design only user interfaces

c.

implement the system

d.

find out how the system will perform

2.22 The primary objective of system implementation is i) to build a system prototype

V. Rajaraman/IISc. Bangalore

M2/V1/July 04/4

System Analysis and Design/Information Gathering

Multiple Choice Questions

ii) to train users to operate the system iii) to implement designed system using computers iv) write programs, create databases and test with live data a. i, iii b. i, ii, iii c. ii ,iii d. ii, iv 2.23 During system implementation the following are done i) programs are written and tested with operational data ii) user documentation is created and users trained iii) programmers are recruited and trained iv) the system is tested with operational data

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

V. Rajaraman/IISc. Bangalore

M2/V1/July 04/5

System Analysis and Design/Information Gathering

d.

Multiple Choice Questions

other similar organization modify these system

2.27 The main objective of system modification is a.

to use the latest software tools

b.

to meet the user’s new/changed needs

c.

to use the latest hardware

d.

to have the most modern system

2.28 To easily modify the existing system it is necessary to a.

use good software tools

b.

use the best hardware available

c.

design the system which can be changed at low cost

d.

keep the programming team happy

2.29 It is necessary to design an information system to easily accommodate change, because a.

new computers are introduced every year

b. new computer languages become popular every year c.

organizations’ requirements change over a period of time

d. systems need continuous debugging 2.30 Changing an operational information system is a.

impossible

b. expensive and done selectively c.

never required

d.

usually done

2.31 System analysts have to interact with i) managers of organizations ii) users in the organization iii) programming team iv) data entry operator

V. Rajaraman/IISc. Bangalore

M2/V1/July 04/6

System Analysis and Design/Information Gathering

a.

iii and iv

b.

i, ii and iii

Multiple Choice Questions

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

V. Rajaraman/IISc. Bangalore

M2/V1/July 04/7

System Analysis and Design/Information Gathering

c.

Multiple Choice Questions

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

V. Rajaraman/IISc. Bangalore

M2/V1/July 04/8

System Analysis and Design/Information Gathering

Multiple Choice Questions

Key to Objective Questions

2.1

b

2.2

a

2.3

c

2.4

a

2.5

a

2.6

d

2.7

c

2.8

c

2.9

b

2.10

c

2.11

b

2.12

c

2.13

a

2.14

b

2.15

a

2.16

a

2.17

a

2.18

b

2.19

a

2.20

c

2.21

a

2.22

d

2.23

d

2.24

a

2.25

b

2.26

a

2.27

b

2.28

c

2.29

c

2.30

b

2.31

b

2.32

a

2.33

d

2.34

c

2.35

b

2.36

d

2.37

b

2.38

b

V. Rajaraman/IISc. Bangalore

M2/V1/July 04/9

Systems Analysis and Design Life Cycle 2.1

2.2

2.3

2.4

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 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 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. What benefits do you expect if an information system for a hostel is designed? • • • • •

2.4)

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.

What activities will you carry out during implementation of a hostel information System? 1. PROGRAMS WRITTEN FOR • Mess accounting • Billing • Stores control 2. DATABASE CREATED • Students • Mess stores

• Mess finance 3.TRAINING Hostel office staff will be trained to input data and generate queries 4.DOCUMENTATION Documentation of the system will be created. 5.TESTING The computerized system will be operated in parallel with the manual system and tested. 2.6)

When should a system be evaluated? 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.

2.7)

Are excellent programmers necessarily excellent system analysts? Justify your answer. An Programmer is not necessarily an excellent system analyst. A programmer is given clear specification and designs efficient programs. He need not have good communication skills and inter-personal relations. A programmer works with clear specifications whereas an analyst has to arrive at clear specifications from fuzzily stated requirements.

2.8)

Why should a systems analyst be able to communicate well? He has to understand users’ requirements mostly by interviewing them and thus he has to ask the right questions, listen carefully and summarize orally the gist of conversation. He also must be able to present and explain orally to the users the system designed by him and clarify doubts they may have after the oral presentation. His main job is to interact with the management, users’ and the programmers so it is obvious that he must possess good communication skills.

QUESTION BANK MODULE 2 2.1

How are information requirements arrived at in an organization?

2.2

Who do you think should participate in determining the information requirements of a student hostel?

2.3

As a student what information would you consider as important in a students hostel?

2.4

What is the difference between information requirement determination and specification?

2.5

Specify the information requirement you stated in answer to Exercise 2.3

2.6

What do you understand by the term consensus?

2.7

Why is feasibility analysis necessary before designing a system?

2.8

In designing an information system for a hostel what constraints should be taken into account during feasibility analysis?

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.11

What should be the important characteristics of the final specifications?

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.15

When should a system be evaluated?

2.16

What are the characteristics of a good information system?

2.17

What special skills should a systems analyst possess?

2.18

Why should a systems analyst be able to communicate well?

2.19

Are excellent programmers necessarily excellent systems analysts? Justify your answer.

2.20

List eight tasks performed by systems analysts.

2.21

List six desirable attributes of a systems analyst.

2.22

Should managers design their own systems?

What are the advantages and

disadvantages of such a decision? 2.23

What are the tools currently available to design systems? advantages of using these tools?

What are the

MODULE 2

REFERENCE BOOKS 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. 1. Information Systems Today by L.Jessup and J.Valacich.

Topics in this

module treated from a slightly different perspective in Chapter 8, pp.240 to 256. 2. K.E.Kendall and J.E.Kendall, Systems Analysis and Design, Pearson Education Asia, Indian Reprint 2002. pp.16-17 have a very brief treatment of Systems Analysists’ role and Systems Development life cycle. 3. Modern Systems Analysis and Design by J.E.Hoffer, J.F.George and J.Valacich treat life cycle in pp.18-25.

Role of various stake holders in

systems development is covered in pp.11 to 15. 4. Information Systems, S.Alter, Pearson Education Asia 2000 looks at life cycle from a different perspective on pp. 4 to 16.

SUMMARY OF MODULE 2 1.

There are nine distinct phases in the development of an information system. These phases constitute what is known as the system 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: Phase

What is Done During this Phase

End Product of this Phase

Requirements determination Requirements specification

Determine requirements to be met by the system being contemplated Draw up understandable plan of what the system will provide as outputs. Determine needs and priority by consensus among end users.

3.

Feasibility analysis

Taking into account available resources such as human, computer, time and money find whether specified requirements can be met.

4.

System specification

Obtain functional specification based on revised user requirements and feasibility analysis

5.

Hardware study

Determine system

6.

System design

Logical design of programs, design of data bases, test and implementation plan.

7.

System implementation

8.

System evaluation

Writing programs, creating data bases, testing programs and operation plans. Documenting system. Training users. Data conversion if needed. Installing system. Trial of system and parallel runs with existing system. Tests to accept system. Find out from users if system meets their needs

Set of requirements and their priorities. Detailed specifications of information to be provided (revised user requirement) Feasibility document specifying resource needs and availability, expected cost vs. benefits of system. Functional specification. Budget, time schedule. Physical requirements such as storage and processor. Hardware configuration - disk space, CPU power. Logical design of programs, data bases and test plan Programs, data bases user manual and operational manual.

9.

System modification/mai ntenance

1. 2.

3.

hardware

requirements

for

Change system, adding or deleting features to satisfy users (modified) needs.

Evaluation report with suggestion for improvement Improved system containing modifications and improvements.

It should be remembered that in a design one may have to go back to an earlier phase in the design based on results obtained in a later phase. The phases are

primarily intended an milestones to assess progress in design. 4.

A systems analyst should interact with managers, users, and application programmers in designing a system.

5.

A systems analyst must, through discussions with users, determine their information requirements, interact with them during the design phase and explain to them what the system will provide. He must assign priorities among different requirements, analyze and evaluate existing systems and improve them. An analyst must be able to identify and solve management problems in organizations, draw up specifications and oversee implementation. An analyst should evaluate the designed system and modify it if needed.

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

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 3.1.1 Information is gathered for computerization during a) requirements determination phase b) systems design phase c) implementation phase d) feasibility phase 3.1.2 Information is gathered by a system analyst in order to a) find out whether a computer based system is required b) find out how the organization works c) find out how the current system works and what is expected from a new computer based system d) find out who will use the system 3.1.3 The most difficult information to gather in an organization is a) that which is known to only few persons in an organization b) that which is not written down in an organizational manuals c) company confidential information d) what is consumed as obvious by the managers in an organization 3.1.4 Gathering information in large and complex organizations is difficult and takes time because i) it is necessary to consult a large number of persons at various levels of hierarchy in the organization ii) one has to examine the current system in detail iii) a clear strategy has to be evolved to gather information iv) it is necessary to use an information flow model of an organization

a) i and iii b) iii and iv c) i and ii d) ii and iv

3.1.5 A strategy to gather information consists of i) identifying information sources ii) using information flow model of organization iii) examining systems of other organizations iv) rely on ones experience

a) i and ii b) i and iii c) ii and iv d) ii and iii

3.1.6 The following are good sources of information to design a system i) forms and documents used in the organization ii) users of the proposed system iii) procedure manuals of the organization which explains how various activities of the organization are carried out iv) annual report of the organization

a) i ,ii and iii b) i, ii and iv c) i and ii d) i and iii

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 3.1.8 It is necessary to gather a) quantitative information only as qualitative information is usually biased b) both qualitative and quantitative information c) qualitative information only as it is easily available d) qualitative information only as quantitative information is usually not correct 3.1.9 Among information gathering methods, interviewing is essential as a) it gives an opportunity to question the interviewees and clarify details and doubts the analyst may have b) it can be easily arranged c) it is recommended by senior analysts d) it is necessary to meet everyone in the organization

3.1.10 All information required can be gathered in a) one interview b) two interviews c) several interviews d) several interviews and group discussions

3.1.11 Interviews are essential to gather a) quantitative information b) qualitative information c) facts and figures d) statistical information 3.1.12 During interviews an analyst must a) gather information on user requirements, procedures and practices b) tell the user what is good for organization c) tell the user how to run the organization d) tell the user what is wrong with the organization 3.1.13 It is good idea for a system analyst a) to define the objectives of the information system b) to tell the users what the objectives should be c) to let the user formulate the objectives of the information system being designed d) not to worry about the objective during the interviews 3.1.14 The following should be avoided during interviews with users a) interrupting a user when something is not clear b) taking note c) using computer jargon d) not laughing when user jokes 3.1.15 The following manners should be observed during interviews i) make prior appointment for interviews ii) not prolong interview beyond 30 to 40 minutes iii) take notes after obtaining permissions iv) interrupt the user often to show you are listening

a) i, ii and iv b) i, ii and iii c) i and ii d) i, iii and iv 3.1.16 It is a good idea to prepare for an interview by i) studying background material and going with queries and checklist ii) finding out what a user likes iii) recapitulating and summarizing what transpired in previous interview(s) iv) finding out what a user dislikes

a) i and ii b) ii and iv c) i and iii d) i, ii and iv

3.1.17 Sending questionnaires are the good means of gathering a) quantitative data b) qualitative data c) both quantitative and qualitative data d) data from top management

3.1.18 Questionnaires are used when i) a large number of people’s responses are required ii) manual data processing is required iii) when a small number of people’s response is required iv) it is difficult to personally interview people

a) i and ii b) ii and iii c) iii and iv d) i and iv 3.1.19 In order to get fast response when questionnaires are sent i) the questionnaire must be simple to answer ii) the questionnaire should be comprehensive iii) the questionnaire should be short iv) the questionnaire should be long

a) i, ii

b) ii, iv

c) i, iii

d) i, iv

3.1.20 Besides interviewing following methods help in gathering facts i) studying systems used by similar organization for the same purpose ii) reading case studies reported for similar organization iii) sending letters to all managers of the organization iv) sending letters to the clients of the organization

a) i, ii iii

b) i and ii

c) i and iii

d) iii and iv

LEARNING UNIT 2 3.2.1An organization requests an information system to be designed when (a) there is a change in management (b) it is dissatisfied with the current system as it does not meet their information requirement (c) the current system has been working for 2 years (d) new software tools are introduced in the market 3.2.2The purpose of designing an information system is to (a) modernize the functioning of an organization (b) reduce the number of people employed by an organization (c) provide operational, tactical and strategic information to efficiently manage an organization (d) improve the day-to-day working of an organization 3.2.3 The expansion of SRS is (a) System Requirements Specification (b) System Resources Statement (c) Statement of Reliability of System (d) Standard Requirements Statement 3.2.4 System Requirements Specification is developed by (a) users of the proposed system (b) top level managers of an organization (c) examining the functioning of similar organizations (d) systems analyst after information gathering phase in consultation with users 3.2.5 The main objective of System Requirements Specification is to (a) enable a systems analyst to satisfy himself and the user that they have mutually understand the user’s information requirements (b) write down the requirements clearly (c) estimate the cost of developing the system (d) to make sure that it is possible to develop the system 3.2.6 Graphical tools used to arrive at SRS are: (i) Data Flow Diagrams (ii) Program Flow Charts (iii) System Flow Charts (iv) Document Flow Diagrams

(a) i and ii (c) i and iv

(b) ii and iii (d) ii and iv

3.2.7 Document Flow Diagrams are used to depict (a) how and when documents flow in the organization (b) various offices/entities of an organization and the documents as well as physical items which flow between these entities (c) what documents flow in an organization (d) how documents are generated and flow in an organization 3.2.8 Document flow diagrams are usually developed during (a) System design phase (b) Feasibility study (c) Implementation phase (d) Fact gathering phase 3.2.9 Document flow diagrams are developed by (a) systems analyst (b) programmers (c) system designers (d) users and managers of an organization 3.2.10 In a document flow diagram entities are represented by (a) circles (b) rectangles with rounded edges (c) diamond shaped boxes (d) rectangles 3.2.11 In a document flow diagram a dashed line with an arrow depict (a) flow of documents (b) control flow (c) flow of materials (d) data flow 3.2.12 In a document flow diagram a solid line with an arrow depicts (a) flow of documents (b) control flow (c) flow of materials (d) data flow 3.2.13 In a document flow diagram arrows are necessary to depict (a) how documents flow (b) direction of flow of documents (c) when documents flow (d) whether documents flow or not

3.2.14 Data flow diagrams are used to depict (a) how and when data flows in an organization (b) what documents flow in an organization (c) what data flows between entities and how they are processed (d) how data are generated and flow in an organization 3.2.15 Data flow diagrams are usually developed during (a) system design phase (b) feasibility study (c) implementation phase (d) systems analysis phase 3.2.16 Data flow diagrams are developed by (a) systems analyst (b) programmers (c) system designers (d) users and managers of an organization

Key To Objective Questions 3.1.1

a

3.1.2

c

3.1.3

d

3.1.4

c

3.1.5

a

3.1.6

a

3.1.7

b

3.1.8

b

3.1.9

a

3.1.10 d

3.1.11 b

3.1.12 a

3.1.13 c

3.1.14 c

3.1.15 b

3.1.16 c

3.1.17 a

3.1.18 d

3.1.19 c

3.1.20 b

3.2.1

b

3.2.2

c

3.2.3

a

3.2.4

3.2.5

3.2.6

3.2.7

b

3.2.8

d

3.2.9

a

3.2.10 d

3.2.15 d

3.2.16 a

a

3.2.11 c

c

3.2.12 a

3.2.13 b

3.2.14 c

d

MODULE 3

INFORMATION GATHERING Contents 3.1 Strategy to gather information 3.2 Methods of gathering information 3.3 Case study –hostel information system 3.4 Systems requirements specifications 3.5 Classifications of requirements to operational,tactical,strategic

Systems Analysis And Design

©

V. Rajaraman

MOTIVATION ƒ The Information system designed for an organization must meet the requirements of the end users of the organization. ƒ To obtain what an end user expects from the Information System the designer must gain complete knowledge of the organization’s working. ƒ It is important for the student to know the information gathering techniques so that no information is overlooked and the nature and functions of an organization are clearly understood Systems Analysis And Design

© V. Rajaraman

1 of 30 of module3

MOTIVATION ƒ The main purpose of gathering information is to determine the information requirements of an organization ƒ Information requirements are often not stated precisely by management ƒ Analyst’s responsibility to prepare a precise Systems Requirements Specifications understood(SRS) by users ƒ SRS document is a vital document before starting a project Systems Analysis And Design

© V. Rajaraman

2 of 30 of module3

LEARNING GOALS ƒ Strategy to gather information for computerization. ƒ Various sources of information. ƒ Methods of searching for information. ƒ Interviewing techniques to gather information from line managers to top management. ƒ Methods of consensus for formulating requirements. Systems Analysis And Design

© V. Rajaraman

3 of 30 of module3

LEARNING GOALS ƒ Use of document flow diagrams to depict flow of documents in an organization ƒ Specification of Operational,Tactical and strategic information which will be provided by the system ƒ Use of dataflow diagrams to specify flow of records and how they will be processed to create reports

Systems Analysis And Design

© V. Rajaraman

4 of 30 of module3

INFORMATION GATHERING STRATEGIES ƒ Identify Information sources ƒ Evolve a method of obtaining information from the identified sources. ƒ Use Information flow model of organization.

Systems Analysis And Design

© V. Rajaraman

5 of 30 of module3

INFORMATION SOURCES

ƒ Users of System ƒ Forms and Documents used in the organization ƒ Procedure manuals, rule books etc. ƒ Reports used by the organization ƒ Existing computer programs(If Any).

Systems Analysis And Design

© V. Rajaraman

6 of 30 of module3

INFORMATION SOURCES ƒ Interviews are very important ƒ Use organization chart ƒ Understand the importance of the people who operate the system-Clerks,Line managers. ƒ Gather information from Middle level persons who have lot of experience ƒ Gather both qualitative and quantitative information & Observe how the organization works. Systems Analysis And Design

© V. Rajaraman

7 of 30 of module3

INFORMATION GATHERING METHODS Searching for information ƒ Individual Interviews ƒ Group discussions ƒ Several Interviews needed.

Systems Analysis And Design

© V. Rajaraman

8 of 30 of module3

PLANNING AN INTERVIEW

ƒ Make a list of people to be interviewed and in what order ƒ Plan and note down a list of questions to be asked ƒ Plan several interviews with same person-mainly to clarify doubts ƒ Interview groups as appropriate

Systems Analysis And Design

© V. Rajaraman

9 of 30 of module3

INTERVIEWING TECHNIQUE ƒ Make appointment ƒ Allot time ƒ Read background material ƒ State purpose of interview ƒ Be punctual and pay attention to what user says ƒ Do not use computer jargon

SystemsAnalysis And Design

© V. Rajaraman

10 of 30 of module3

INTERVIEWING TECHNIQUE ƒ Obtain both quantitative and qualitative Information ƒ Discriminate between essential and desirable requirements ƒ State what you understand and get it confirmed ƒ Do not prolong interview ƒ Summarize information gathered and get it checked by the interviewee

Systems Analysis And Design

© V. Rajaraman

11 of 30 of module3

USE OF QUESTIONNAIRES ƒ Questionnaires useful for statistical data collection ƒ Useful when large number of persons have to respond ƒ Make questionnaires short ƒ Design questionnaires by enumerating objectives and data needed to meet the objectives ƒ Several follow-ups/personal interviews may be required to get questionnaires back from respondents

Systems Analysis And Design

© V. Rajaraman

12 of 30 of module3

INFORMATION GATHERING OTHER METHODS

ƒ Existing system(If any) ƒ Systems in similar organization ƒ Observe workflow in workplace ƒ Case repository in own organization

Systems Analysis And Design

© V. Rajaraman

13 of 30 of module3

SYSTEM REQUIREMENTS SPECIFICATION ƒ System requirements specification specifies what Information requirements will be provided. ƒ It does not specify how the system will be designed ƒ SRS is obtained after excessive discussions with the user. ƒ

Developing SRS is most important and difficult task of a Systems analyst

Systems Analysis And Design

© V. Rajaraman

14 of 30 of module3

SYSTEM REQUIREMENTS SPECIFICATION How SRS is Developed ƒ Analyst examines the current system if any. ƒ Analyst finds out the shortcomings of the system as seen by the user. ƒ Analyst’s aim is to develop SRS which is understandable by the user and which can be used for detailed design of the system.

Systems Analysis And Design

© V. Rajaraman

15 of 30 of module3

SYSTEM REQUIREMENTS SPECIFICATION Ideal characteristics of SRS

ƒ Complete and Unambiguous. ƒ Specifies operational,tactical, and strategic information requirements ƒ Eliminates possible later disputes between users and Analyst ƒ Uses Graphical aids understood by users who are not computer literate and will also be useful in design. ƒ Jargon Free. Systems Analysis And Design

© V. Rajaraman

16 of 30 of module3

FROM WORD STATEMENT TO SRS • Narratives of requirements by users too long and imprecise • Needs conversion to precise specifications • Step1: Analyse statement Step2: Identify physical entities such as vendors, receiving office, Inspection office etc. Step3:Identify documents which are received/sent by each office Step4:Draw a physical document

Systems Analysis And Design

© V. Rajaraman

17 of 30 of module3

DEVELOPING A DOCUMENT FLOW DIAGRAM EXAMPLE WORD STATEMENT “Our company receives many items from several vendors each accompanied by a delivery note.A receiving office receives the item and checks the delivery note with corresponding order. Any discrepancy is reported to purchase office.The items received along with items received note (with details of items) is sent to the inspection office.” ENTITIES IDENTIFIED-Vendors,Receiving office,Inspection office DOCUMENTS IDENTIFIED-Delivery note,discrepancy note,Items Received note. Using these a document flow diagram is drawn

Systems Analysis And Design

© V. Rajaraman

18 of 30 of module3

SYSTEM REQUIREMENTS SPECIFICATION Graphical Specification Tools ƒ Physical document flow diagram. ƒ Logical Data flow Diagram (abbreviated as DFD) ƒ Document flow diagram depicts various entities or offices & documents generated/transmitted by these entities ƒ Entities represented by Rectangles, Document flow by lines, direction is shown by arrows. ƒ Document flow lines are labeled by name of the document ƒ Dashed lines used to depict flow of physical items. ƒ Document flow diagram depicts various entities and documents generated and/or transmitted by these entities Systems Analysis And Design

© V. Rajaraman

19 of 30 of module3

DOCUMENT FLOW DIAGRAM Delivered Items Vendor

Receiving Office

Delivery note Discrepancy note

Inspection office Items Received note

Purchase Office

ƒ Entities in the Document flow diagram given above are Vendor, Receiving office, Inspection office and purchase office ƒ Documents are:Delivery note,items received note and discrepancy note ƒ Physical flows are delivered items Systems Analysis And Design

© V. Rajaraman

20 of 30 of module3

DOCUMENT FLOW DIAGRAM (CONTD) Delivered Items

Vendor

Delivered Items Receiving Office

Delivery note Discrepancy note

Inspection office Items Received note

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

Systems Analysis And Design

© V. Rajaraman

21 of 30 of module3

DATA FLOW DIAGRAM (DFD) ƒ DFD also has entities and data flows ƒ Besides this DFD specifies processing performed by some of the entities ƒ Data flow diagrams specify which entities generate documents ƒ Details of documents and their flow ƒ Processing performed by some entities ƒ Data stores which are referred while processing data and in which processed data may be written or stored Systems Analysis And Design

© V. Rajaraman

22 of 30 of module3

DATA FLOW DIAGRAM (DFD)

Vendor

Delivery note

Receiving Process

Orders

Items Received note

Inspection Office

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 Systems Analysis And Design

© V. Rajaraman

23 of 30 of module3

DATA FLOW DIAGRAM (CONTD)

Vendor

Delivery note

Receiving Process

Orders

Items Received note

Inspection Office

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

Systems Analysis And Design

© V. Rajaraman

24 of 30 of module3

DATA ELEMENTS IN DATA FLOW & STORE Delivery note: Order no,Vendor code,Vendor name and address,Item name, Item code,Delivery date,Quantity supplied,units. Items Received note: Order no,Item name,Item code,Delivery date,quantity supplied,units. 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. Systems Analysis And Design

© V. Rajaraman

25 of 30 of module3

PROCESSING RULE English statement 1. Compare order no in delivery note with that in order file. If no match return item to vendor. 2. If order no matches then compare item codes, if no match return item to the vendor. 3. If order number matches compare qty delivered with quantity ordered. If excess or deficient send discrepancy note to purchase office. 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 The above statements are shown to the user for his approval. Systems Analysis And Design

© V. Rajaraman

26 of 30 of module3

OPERATIONAL,TACTICAL AND STRATEGIC INFORMATION For this simple examples are: OPERATIONAL: Automatic checking of delivery against order and create discrepancy note.Note discrepancy (if any) of each order. TACTICAL:Evolve vendor performance index based on discrepancy in supplies and quality inspection. STRATEGIC:Use performance index to decide proportion of order for an item to be placed with each vendor.Develop new vendors if all existing vendors performance are poor.

Systems Analysis And Design

© V. Rajaraman

27 of 30 of module3

STEPS IN SYSTEM ANALYSIS AND DESIGN User stated requirements

Study current system Physical document flow diagram Design Logical system Logical data flow diagram

Feasibility document Descriptive Statement of Information

Systems Analysis And Design

New System model

New logical DFD

Data Dictionary Processing rules

© V. Rajaraman

28 of 30 of module3

MODULARIZING REQUIREMENTS SPECIFICATIONS SRS Document

SRS Document now consists of: ƒ Document flow diagrams(as many as needed). ƒ Data Flow Diagrams. ƒ Data elements of each data flow and Data Store

Systems Analysis And Design

© V. Rajaraman

29 of 30 of module3

MODULARIZING REQUIREMENTS SPECIFICATIONS SRS Document ( Continued)

ƒ Processing rules carried out in each circle of DFD. ƒ A descriptive statement of operational,tactical,strategic information will be provided ƒ A data dictionary which consolidates all data elements in the document and data store.

Systems Analysis And Design

© V. Rajaraman

30 of 30 of module3

MODULE 3

INFORMATION GATHERING

Contents

1. MOTIVATION AND LEARNING GOALS

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 The Information system designed for an organization must meet the requirements of the end users of the organization. To obtain what an end user expects from the Information System the designer must gain complete knowledge of the organization’s working. It is important for the student to know the information gathering techniques so that no information is overlooked and the nature and functions of an organization are clearly understood. The main purpose of gathering information is to determine the information requirements of an organization. Information requirements are often not stated precisely by management. It is the analyst’s responsibility to prepare a precise Systems Requirements Specifications (SRS), which is easily understood (SRS) by users, as SRS document is a vital document before starting a project

LEARNING GOALS At the end of this module you will learn: Strategy to gather information for computerization. Various sources of information. Methods of searching for information. Interviewing techniques to gather information from line managers to top management. Methods of consensus for formulating requirements.

LEARNING UNIT 1

Information gathering, strategies, methods

INFORMATION GATHERING STRATEGIES A strategy should be evolved by the analyst to gather information. The strategy consists of identifying information sources, evolving a method of obtaining information from the identified sources and using an information flow model of organization

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).

INFORMATION GATHERING METHODS Searching for information Information can be gathered by interviewing top-level management, middle level management and operational staff. Besides Interviews group discussions also help the analyst to gather information. It is not possible to obtain all information in a single interview, more than one interview is thus required.

PLANNING AN INTERVIEW 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 There are some guidelines to ensure a successful interview: 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 Questionnaires are useful for collecting statistical data. Sometimes the questionnaires are not promptly replied and several follow-ups/personal interviews may be required to get questionnaires back from respondents But if the questionnaires are short the probability of getting the reply is high When data has to be collected form large number of people questionnaires are useful. OTHER METHODS OF INFORMATION GATHERING Other methods of information search are: Systems used in other similar organization Observe workflow in workplace Repository of systems developed for similar organizations available.

LEARNING UNIT 2 System requirements specification, classification of requirements as strategic, tactical, operational and statutory

SYSTEM REQUIREMENTS SPECIFICATION (SRS)

SRS is obtained after excessive discussions with the user. System requirements specification specifies what Information requirements will be provided. It does not specify how the system will be designed. Developing SRS is most important and difficult task of a Systems analyst How SRS is developed Analyst examines the current system, finds out the shortcomings of the system as seen by the user. He then develops an SRS which is understandable by the user and which can be used for detailed design of the system.

Ideal characteristics of SRS Complete and Unambiguous. Specifies operational, tactical, and strategic information requirements Eliminates possible later disputes between users and Analyst Uses Graphical aids understood by users who are not computer literate and will also be useful in design. Jargon Free.

DEVELOPING A DOCUMENT FLOW DIAGRAM EXAMPLE WORD STATEMENT “Our company receives many items from several vendors each accompanied by a delivery note. A receiving office receives the item and checks the delivery note with corresponding order. Any discrepancy is reported to purchase office. The items received along with items received note (with details of items) is sent to the inspection office.” ENTITIES IDENTIFIED-Vendors, Receiving office, Inspection office DOCUMENTS IDENTIFIED-Delivery note, discrepancy note, Items Received note. Using these a document flow diagram is drawn

Delivered Items

Delayed Items

Vendor Delivery note

Receiving Office

Discrepancy note Purchase Office

Items Received note

Inspection office Indicates Physical flow of items

Indicates Documents

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

Vendor

Receiving Process Delivery note

Items Received note

Orders

Inspection Office

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

Data elements in the data flow:

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.

PROCESSING RULE 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

MODULARIZING REQUIREMENTS SPECIFICATIONS SRS Document now consists of Document flow diagrams(as many as needed), Data Flow Diagrams, Data elements of each data flow and Data store, processing rules carried out in each circle of DFD, a descriptive statement of operational,tactical,strategic information will be provided, a data dictionary which consolidates all data elements in the document and data store.

REFERENCES 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. 2. Systems Analysis and Design, by K.E.Kendell and J.E.Kendell published by Pearson Education Asia 2002 discuss in detail fact gathering in pp.117-196. They cover interviewing, questionnaire use and observing an organization very thoroughly.

MODULE 3

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

3.2)

What are the main sources of information of an 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.3)

How should an analyst prepare before an interview? i) Make prior appointment with the person to be interviewed and inform the purpose of the interview, and how much time you would require. ii) An interview should be brief and not exceed 40 minutes. iii)read the background material and go prepared with a checklist.

3.4)

Are there some guidelines for good interviewing? Give reasons. Yes. The guidelines for good interviewing are like i)system analyst should state the purpose of the interview again to brush of the problem. ii) He should try to avoid using computer jargon because the person may not be conversant with the technical terms. iii)He should present good manners and introduce himself before taking interview. If any thing is not understood it should be asked immediately to avoid later confusion

3.5)

When should questionnaires be used? When quantitative data from number of persons is to be collected. Short Questionnaires elicit quick response. Follow up needed to get questionnaires back.

3.6)

Before interviewing the chief warden, what checklist did the system analyst make? The checklist made by the system analyst before interviewing is 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. Fig. 3.10 Figure for Solution 3.10

3.11 What are operational, tactical, and strategic information needed for Exercise 3.10? Operational • Regular billing • Find if bills paid within specified period • Total earnings • Daily rate Tactical • Habitual late payments by students • Predict days with large absentees and adjust food cooked • Most popular extras Strategic • Extras pricing to reduce daily rates • Whether to give rebate for absence • Closing down mess on some days

System Analysis and Design/Information gathering

Question Bank

QUESTION BANK 3.1

Describe the general strategy an analyst should use to gather information.

3.2

What are the main sources of information in an organization?

3.3

What are the methods of gathering information?

3.4

Why are interviews essential in gathering information?

3.5

How should an analyst prepare before an interview?

3.6

Are group discussions useful in information gathering? Give reasons.

3.7

Are there some guidelines for good interviewing? State them.

3.8

What is the advantage of using a questionnaire in fact gathering?

3.9

When should questionnaires be used?

3.10

When should questionnaires be not used?

3.11

State as many sources of information as you can think of.

3.12

What is the last step in information gathering?

V. Rajaraman/IISc

M3/V1/July 2004/1

System Analysis and Design/Information gathering

Question Bank

MODULE 3 CASE

STUDY -

HOSTEL INFORMATION SYSTEM – Fact Gathering and

Requirements Determination System analyst's diary: "I was called at 9 a.m. today (18 March 04) by the chief Warden of Raman Hostel, Prof.V.Ramakrishna. He wants to examine if computers can help in hostel administration. I made an appointment to meet him tomorrow at 10 a.m. in the hostel office. I told him I will need 40 minutes to get an overview of his requirements". I made the following checklist before meeting him. Checklist •

Find out what aspects of hostel operation he wants to analyze and improve.



Find out why he wants this and what benefits he foresees.



Find out his priorities



Find out how early he wants the system.



Find out about the organization of the hostel administration.



Find out who else he wants me to talk to.



Find out if any documentation on existing procedures exists.

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 20 March 04 for his comments are: •

The total mess expenses are divided among members. Policy is set by the Chief Warden in consultation with a student mess committee.

V. Rajaraman/IISc

M3/V1/July 2004/2

System Analysis and Design/Information gathering



Question Bank

He wants correct mess bills to be prepared and despatched within 5 days of the end of the month to the accounts office for collection.



He wishes to know which students have large unpaid bills.



He is eager to control inventories to minimize stock.



He intents to control issue of stores to cooks to minimize wastage.



He wants to do some planning about purchase of

vegetables and fruits to

minimize cost and wastage. •

He desires to have an up-to-date data base of students in hostel.



The primary objective is to minimize students' mess bills, reduce outstanding payments, and have ready information about residents.



The priority order of the Chief Warden is: control inventory, control stores issues, ensure speedy bill collection, student data base.



He would like a new system to be implemented within 4 months.



The organization chart of the hostel is given in Fig.3.1



The Chief Warden wants me to talk to assistant wardens, mess supervisors and students' mess committee members.



There is no procedure manual.

Most operation are done routinely using a

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 V. Rajaraman/IISc

M3/V1/July 2004/3

System Analysis and Design/Information gathering

Question Bank

on 23 March 04 at 4 p.m. in his office. I requested half an hour of his time for discussions. I made the following checklist before meeting him: •

Find out details of accounting and billing procedure currently used.



Ascertain his ideas about the current system and improvements



Try to know his ideas on deployment of personnel if a computer is used.

The following notes were prepared by me on 23 March 04 evening. I used the jottings in my notebook made with Dr.Swamy's permission on 23 March 04 during the interview.

Dr.Swamy is in-charge of all hostel accounts and is assisted by Mr.R.Sampath whose 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).

Presently there are three purchase payment procedures. These are:

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. V. Rajaraman/IISc

M3/V1/July 2004/4

System Analysis and Design/Information gathering

Question Bank

At the end of the month they are verified by the secretary and Dr.Swamy, and payment by cheque made to vendors.

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 by Dr.Swamy. Cash is paid by Mr.Sampath who keeps the cash accounts.

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 Daily rate

=

V. Rajaraman/IISc

Rs.5,60,000 (400 + 395 + 406 + … for 30 days) =

Rs.5,60,000/12043

=

Rs.46.50

M3/V1/July 2004/5

System Analysis and Design/Information gathering

Question Bank

Currently, the manual calculation of bills takes over 6 days and many errors are found. Bills do not go on time to students. This needs a better system.

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 register is used in calculating individual bills.

Dr.Swamy feels that this procedure complicates bill preparation. The student body wants this facility to be continued. Dr..Swamy feels that if a proper system is designed, 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.

V. Rajaraman/IISc

M3/V1/July 2004/6

System Analysis and Design/Information gathering

Question Bank

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 points were noted in the checklist: •

Find out how items are issued to cooks each day



Find out if any inventory control is exercised



Find out how wastage is reduced



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 store keeper, and coordinates with the student mess committee).

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.

V. Rajaraman/IISc

M3/V1/July 2004/7

System Analysis and Design/Information gathering

Question Bank

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 research techniques can be used in this problem. I am somewhat intrigued by this suggestion.

V. Rajaraman/IISc

M3/V1/July 2004/8

System Analysis and Design/Information gathering

Question Bank

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, the mess manager on 27 March morning. He explained his responsibilities as : •

Preparing daily menu based on advise from the mess committee.



Preparing an "issue list" of items and quantities for each meal and sending it to the hostel store for issue to the kitchen.



Preparing a "return list" of items and quantities not used during the day by the cooks to the store.



Stock register updating based on issue and return list.



Keeping track of rebates to students absent

from mess and extras taken by

students which are to be separately charged. Relate rebates to stores issue. •

Ordering items when stock level is low. In practice, however, ordering is done only when an item is exhausted. As delivery at door may be delayed, unnecessary special trips are made to do cash pruchases.

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.

V. Rajaraman/IISc

M3/V1/July 2004/9

System Analysis and Design/Information gathering

Next I met Mr.Mathews, the assistant mess manager.

Question Bank

His responsibilities include

supervising mess staff and day-to-day maintenance of the hostel. He also assists the warden in room allotment by keeping a list of available rooms, preferences, applications 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 bought and monitors quality of supplies.

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. Based on this a consensus was reached on what aspects needed.

Table 3.1 Critical Needs Identified by Various Persons •

Mess bills to be despatched within 5 days to students.



Identify large outstanding bills from students.



Correct billing of extras and rebates to students.



Weekly calculation of daily rate.



Prompt payment to vendors.

V. Rajaraman/IISc

M3/V1/July 2004/10

System Analysis and Design/Information gathering

Question Bank



Issue of exact quantities of items to cooks based on menu and number of students.



Reducing menu repetitions.



Keeping a nutritionally balanced menu and minimizing cost.



Forecasting requirement of stores based on menu and students.



Consolidating purchases to reduce frequent trips for purchase and reducing cartage charges.



Student data base.

Computerization, and priority among them was also determined. The following priority list was prepared as system to be computerised. Preparation of mess bill Stores issue and ordering system Menu planning Data base of hostel residents.

They requested me to begin a feasibility study and provide a cost-benefit analysis of the above systems. End of Fact Gathering and Requirements Specification Phase.

V. Rajaraman/IISc

M3/V1/July 2004/11

MODULE 3 CASE

STUDY -

HOSTEL INFORMATION SYSTEM – Fact Gathering and

Requirements Determination System analyst's diary: "I was called at 9 a.m. today (18 March 04) by the chief Warden of Raman Hostel, Prof.V.Ramakrishna. He wants to examine if computers can help in hostel administration. I made an appointment to meet him tomorrow at 10 a.m. in the hostel office. I told him I will need 40 minutes to get an overview of his requirements". I made the following checklist before meeting him. Checklist •

Find out what aspects of hostel operation he wants to analyze and improve.



Find out why he wants this and what benefits he foresees.



Find out his priorities



Find out how early he wants the system.



Find out about the organization of the hostel administration.



Find out who else he wants me to talk to.



Find out if any documentation on existing procedures exists.

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 20 March 04 for his comments are: •

The total mess expenses are divided among members. Policy is set by the Chief Warden in consultation with a student mess committee.

1



He wants correct mess bills to be prepared and despatched within 5 days of the end of the month to the accounts office for collection.



He wishes to know which students have large unpaid bills.



He is eager to control inventories to minimize stock.



He intents to control issue of stores to cooks to minimize wastage.



He wants to do some planning about purchase of vegetables and fruits to minimize cost and wastage.



He desires to have an up-to-date data base of students in hostel.



The primary objective is to minimize students' mess bills, reduce outstanding payments, and have ready information about residents.



The priority order of the Chief Warden is: control inventory, control stores issues, ensure speedy bill collection, student data base.



He would like a new system to be implemented within 4 months.



The organization chart of the hostel is given in Fig.3.1



The Chief Warden wants me to talk to assistant wardens, mess supervisors and students' mess committee members.



There is no procedure manual.

Most operation are done routinely using a

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 discussions. I made the following checklist before meeting him: •

Find out details of accounting and billing procedure currently used.



Ascertain his ideas about the current system and improvements



Try to know his ideas on deployment of personnel if a computer is used.

The following notes were prepared by me on 23 March 04 evening. I used the jottings in my notebook made with Dr.Swamy's permission on 23 March 04 during the interview.

Dr.Swamy is in-charge of all hostel accounts and is assisted by Mr.R.Sampath whose 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).

Presently there are three purchase payment procedures. These are:

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 by cheque made to vendors.

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 by Dr.Swamy. Cash is paid by Mr.Sampath who keeps the cash accounts.

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 Daily rate

=

Rs.5,60,000 (400 + 395 + 406 + … for 30 days) =

Rs.5,60,000/12043

=

Rs.46.50

4

Currently, the manual calculation of bills takes over 6 days and many errors are found. Bills do not go on time to students. This needs a better system.

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 register is used in calculating individual bills.

Dr.Swamy feels that this procedure complicates bill preparation. The student body wants this facility to be continued. Dr..Swamy feels that if a proper system is designed, 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 points were noted in the checklist: •

Find out how items are issued to cooks each day



Find out if any inventory control is exercised



Find out how wastage is reduced



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 store keeper, and coordinates with the student mess committee).

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 research techniques can be used in this problem. I am somewhat intrigued by this 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, the mess manager on 27 March morning. He explained his responsibilities as : •

Preparing daily menu based on advise from the mess committee.



Preparing an "issue list" of items and quantities for each meal and sending it to the hostel store for issue to the kitchen.



Preparing a "return list" of items and quantities not used during the day by the cooks to the store.



Stock register updating based on issue and return list.



Keeping track of rebates to students absent from mess and extras taken by students which are to be separately charged. Relate rebates to stores issue.



Ordering items when stock level is low. In practice, however, ordering is done only when an item is exhausted. As delivery at door may be delayed, unnecessary special trips are made to do cash purchases.

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 warden in room allotment by keeping a list of available rooms, preferences, applications 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 bought and monitors quality of supplies.

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. Based on this a consensus was reached on what aspects needed.

Table 3.1 Critical Needs Identified by Various Persons •

Mess bills to be despatched within 5 days to students.



Identify large outstanding bills from students.



Correct billing of extras and rebates to students.



Weekly calculation of daily rate.



Prompt payment to vendors. 9



Issue of exact quantities of items to cooks based on menu and number of students.



Reducing menu repetitions.



Keeping a nutritionally balanced menu and minimizing cost.



Forecasting requirement of stores based on menu and students.



Consolidating purchases to reduce frequent trips for purchase and reducing cartage charges.



Student data base.

Computerization, and priority among them was also determined. The following priority list was prepared as system to be computerised. Preparation of mess bill Stores issue and ordering system Menu planning Data base of hostel residents.

They requested me to begin a feasibility study and provide a cost-benefit analysis of the above systems. End of Fact Gathering and Requirements Specification Phase.

10

MODULE 3

REFERENCE BOOKS

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. 2. Systems Analysis and Design, by K.E.Kendell and J.E.Kendell published by Pearson Education Asia 2002 discuss in detail fact gathering in pp.117-196. They cover interviewing, questionnaire use and observing an organization very thoroughly.

Mini Project Suggestion (Module 3)

1. Talk to your medical shop owner and find out what his information requirements are. Divide it into operational, tactical, strategic and statutory components. 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 information needs. How are they currently fulfilled?

SUMMARY OF MODULE 3

1. It is necessary to gather all relevant information about an organization as a first step 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 users of the system at all levels. 4. Other secondary sources are forms and reports used by the organization and any procedure manual or book of rules. 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 level users is vital for the success of any project. 6. Interviewing techniques have to be learnt by an analyst as he or she has to conduct a large number of interviews. 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. 8. Distribution of questionnaires is not a substitute for interviews. Questionnaires are 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 4.1.1

Pick quantified goals from those given below (i) payment should be made promptly (ii) payment should be made before 5th of every month (iii) the age of the persons should be below 35 (iv) the person to be recruited should be middle aged (a) i and ii (b) i and iii (c) ii and iii (d) ii and iv

4.1.2 Quantification of goals is required because (a) without quantification no work can be done (b) when goals are quantified it is possible to verify unambiguously whether they have been fulfilled (c) goals have to be quantified for a good system (d) it facilitates designing a good system 4.1.3 Quantification of goals is done by (a) converting subjective goal statements to ones with numbers (b) converting subjective goal statements to objective goal statements (c) converting objective goal statements to subjective goal statements (d) removing all adjectives in a goal statement

4.1.4 Quantified version of the statement: “The inventory should be reduced substantially“ is (a) the inventory should be reduced effectively (b) the inventory should be reduced significantly (c) the inventory should be reduced very much (d) the inventory should be reduced by 25%

4.1.5 (a) (b) (c) (d)

Goals are identified by finding the deficiencies in the current system observing the current system analyzing competitor’s system finding the advantages in the current system

4.1.6

Deficiencies in a system are pinpointed by identifying missing function excessive cost of operation poor management poor operation (a) i and iii (b) i and ii (c) i and iv (d) ii and iii Goals are identified by discussion with all concerned pinpointing unsatisfactory performance finding poor management examining a variety of documents

(i) (ii) (iii) (iv)

4.1.7 (a) (b) (c) (d)

4.1.8 Characteristics of good goals are that they (i) are quantified (ii) improve quality (iii) are realizable within the constraints of the organization (iv) aim at an ideal system (a) i and ii (b) ii and iv (c) ii and iii (d) i and iii 4.1.9 (a) (b) (c) (d)

Goals should be agreeable to top management project leader all concerned, both management and operational staff programmers

4.1.10 Goals should be broken down to sub-goals as it (a) expedites system design (b) provides a convenient target to aim at during system design (c) is recommended by experienced analysts (d) is good idea to use

LEARNING UNIT 2 4.2.1 During feasibility analysis it is necessary to examine several alternative solutions because (i) a comparison of alternatives will lead to a cost-effective solution (ii) a pre-conceived single solution may turn out to be unimplementable (iii) it is always good to examine alternatives (iv) management normally looks at alternatives (a) i and iii (b) i and iv (c) i and ii (d) ii and iv 4.2.2 A computer-based information system (a) may require some tasks to be done manually (b) should not have any manual tasks (c) is always fully automated (d) may use only computers 4.2.3 (a) (b) (c) (d)

Among alternative solutions for an information system one may consider PC based solutions only an improved manual system only client-server based solutions as they are popular now-a-days whatever management decides

4.2.4 (a) (b) (c) (d)

By technical feasibility of a solution we mean that technology is available to implement it persons are available to implement it persons have technical ability to implement it funds are available to implement it

4.2.5 (a) (b) (c) (d)

By operational feasibility we mean the system can be operated nicely the system is unusable by operators the system can be adapted by an organization without major disruptions the system can be implemented

4.2.6 (a) (b) (c) (d)

By economic feasibility of a system we mean that it is economical to operate it is expensive to operate it will be cost-effective if implemented finances are available to implement the system and it will be cost-effective

4.2.7 (i) (ii) (iii) (iv)

A solution is said to be feasible for implementation if it is cost-effective and finance is available to implement it technology is available to implement it it can be adapted to work in an organization’s environment it has been implemented in another organization (a) ii and iii (b) i, ii and iii (c) i and iv (d) i, ii and iv

LEARNING UNIT 3 4.3.1 (a) (b) (c) (d)

A cost-benefit analysis is performed to assess economic feasibility operational feasibility technical feasibility all of the above

4.3.2 (a) (b) (c)

The primary objective of cost-benefit analysis is to find out direct and indirect cost of developing the information system to determine the tangible benefits of the information system 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.3.3 (a) (b) (c) (d)

A cost-benefit analysis is performed as a part of system design system specification system performance assessment feasibility analysis

4.3.4 A cost benefit analysis consists of (i) finding the direct and indirect cost of developing, implementing and running the system (ii) finding out the tangible and intangible benefit of the system (iii) finding the investment to be made in the system (iv) finding the profit which will accrue from the system (a) iii and iv (b) i and iv (c) ii and iii (d) i and ii 4.3.5 The tangible benefits in the following list are (i) savings due to reducing investment (ii) savings due to sending bills faster and consequent early collection (iii) providing better service to the customers (iv) improving quality of company’s products

(a) i and ii (c) iii and iv 4.3.6 (i) (ii) (iii) (iv)

4.3.7 (a) (b) (c) (d)

(b) ii and iii (d) i and iii

The intangible benefits in the following list are savings due to reducing investment savings due to sending bills faster and consequent early collection providing better service to the customers improving quality of company’s products (a) i and ii (b) ii and iii (c) iii and iv (d) i and iii

Intangible benefits are not very important as important as tangible benefits the most important benefits irrelevant in feasibility study

4.3.8 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.3.9 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.3.10 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.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.13 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.3.14 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.3.15 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.3.16 A detailed system proposal is prepared by a systems analyst if (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 (d) the analyst feels it will be a challenging system to implement

4.3.17 The main objectives of a detailed system proposal are to (i) convince management about the benefits of the proposed system (ii) explain in detail to the management what to expect from the system and at what cost (iii) have a detailed plan on what the system will do and how it will be implemented (iv) make sure that it is possible to implement the system (a) i and ii (b) ii and iii (c) i and iv (d) ii and iv 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 4.1.1 4.1.7 4.2.3 4.3.2 4.3.8 4.3.14

c b b c d b

4.1.2 4.1.8 4.2.4 4.3.3 4.3.9 4.3.15

b d a d c d

4.1.3 4.1.9 4.2.5 4.3.4 4.3.10 4.3.16

a c c d b c

4.1.4 4.1.10 4.2.6 4.3.5 4.3.11 4.3.17

d b d a c b

4.1.5 4.2.1 4.2.7 4.3.6 4.3.12 4.3.18

a c b c b c

4.1.6 4.2.2 4.3.1 4.3.7 4.3.13

b a a b a

MODULE 4

FEASIBILITY ANALYSIS 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. System Analysis And Design

©

V. Rajaraman

MOTIVATION • Before a management decides to implement a computer based system they should know the goals which will be met by the system •These goals should primarily be quantitative goals so that when the system is implemented it is possible to compare quantitatively the achievements with the original goals set. •Analysts should also be able to estimate what hardware and human resources will be needed to implement a system to meet the goals Systems Analysis And Design

© V. Rajaraman

1 of 30

MOTIVATION • 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. Systems Analysis And Design

© V. Rajaraman

2 of 30

LEARNING GOALS • How to formulate the goals to be met by the information system to be designed •How to quantify the goals •How to obtain alternative solutions to satisfy the goals •How to assess the feasibility of implementing alternative solutions. •How to compute cost vs benefits of each alternative feasible solution •How to prepare a system proposal for the potential users of the system

Systems Analysis And Design

© V. Rajaraman

3 of 30

FEASIBILITY ANALYSIS The following are the results of the Information gathering phase: ƒ Deficiency of the current system are found ƒ Consensus is arrived at on requirements ƒ SRS Document is prepared

4.1.1

Systems Analysis And Design

© V. Rajaraman

4 of 30

STEPS IN FEASIBILITY ANALYSIS •

Note down deficiencies in current system found while preparing SRS Document

• Set goals to remove deficiencies • Quantify Goals • Find alternative solutions to meet goals • Evaluate feasibility of alternative solutions taking into account constraints on resources. • Rank order alternatives and discuss with user. • Prepare a system proposal for management approval 4.1.2 Systems Analysis And Design © V. Rajaraman 5 of

30

FEASIBILITY ANALYSIS ƒ Define the goals and sub-goals of the proposed system ƒ Quantify the goals and sub-goals from the verbal statement of goal For example: Send bill soon after month end Quantified statement of the same goal: Send bill within 5 days of month end ƒ Find out whether it is possible to meet these goals. ƒ Determine the cost of meeting each goal ƒ Find cost benefit if quantified 4.1.3

Systems Analysis And Design

© V. Rajaraman

6 of 30

GUIDELINES FOR SEARCHING GOALS ƒ Identify the deficiency by pinpointing -Missing Functions -Unsatisfactory performance -Excessive cost of operations ƒ Set Goals to remove deficiency and provide competitive advantage

4.1.4

Systems Analysis And Design

© V. Rajaraman

7 of 30

CHARACTERSTICS OF A GOAL ƒ Must be quantified ƒ Realizable with the constraints of the organization and the system ƒ Broken down into Sub-Goals ƒ Agreeable to all concerned ƒ In general goals must not only remove deficiency but also give a system which is superior to those of the competitors of the organization 4.1.5

Systems Analysis And Design

© V. Rajaraman

8 of 30

CASE STUDY-HOSTEL INFORMATION SYSTEM (Detailed description of case is given in module3) DEFICIENCIES OF CURRENT SYSTEM IDENTIFIED MISSING FUNCTIONS 1.1 Stores requirement not forecast 1.2 Purchases not consolidated 1.3 Daily rate calculation not frequently updated 1.4 Menu not planned for balanced nutrition and low cost 4.1.6

Systems Analysis And Design

© V. Rajaraman

9 of 30

CASE STUDY-HOSTEL INFORMATION SYSTEM DEFICIENCIES (BAD PERFORMANCE) UNSATISFACTORY PERFORMANCE 2.1 Billing not accurate and prompt 2.2 Student bills not itemized 2.3 Stores issue to cooks arbitrary 2.4 Payments to vendors not prompt 2.5 Large variations in mess bills every month 4.1.7

Systems Analysis And Design

© V. Rajaraman

10 of 30

CASE STUDY-HOSTEL INFORMATION SYSTEM DEFICIENCIES (HIGH OPERATIONAL COST) 3.1Unpaid and long outstanding bills from students 3.2 Extras and rebates not reflected in stores issues 3.3 Frequent small purchases at high cost 3.4 High transport cost due to not consolidating stores requirements

4.1.8

Systems Analysis And Design

© V. Rajaraman

11 of 30

CASE STUDY-HOSTEL INFORMATION SYSTEM FORMULATIOIN OF GOALS MAIN GOALS

Ml . Send bill to students within 5 days of the end of month M2. Control inventory of items in stores & issues to cooks to bring down mess bill by 10% M3. Balance menu to meet nutritional requirements M4. Cost of new menu not to exceed current cost 4.1.9

Systems Analysis And Design

© V. Rajaraman

12 of 30

CASE STUDY-HOSTEL INFORMATION SYSTEM FORMULATION OF SUB-GOALS S1.1 Itemize bills showing extras and rebates with dates S1.2 Ensure less than 5% variations of bills from month to month SI.3 Bills not paid within 10 days of issue brought to the attention of chief warden S1.4 Update daily rates every day Main goals M1 and sub-goals S1.1,S1.2,S1.3 remove deficiencies 1.3,2.1,1.2.2,2.5,3.1 4.1.10 Systems Analysis And Design ©

V. Rajaraman

13 of 30

CASE STUDY-HOSTEL INFORMATION SYSTEM FORMULATIOIN OF SUB-GOALS S2.1 Ensure payment to vendors within five days of supply of items S2.2 Maximum 4 trips per month for purchases. Cartage less than 1% of item cost S2.3 Reduce inventory level. Level not more than 10% of requirements in a month S2.4 Issue to cooks every day not to exceed 5% of calculated values Main goals M1& sub-goals above remove deficiencies 1.1,1.2,2.3,2.4,3.2,3.3,3.4 4.1.11 Systems Analysis And Design ©

V. Rajaraman

14 of 30

EXAMINING ALTERNATIVE SOLUTIONS HOSTEL INFORMATION SYSTEM

ALTERNATIVE SOLUTIONS A: Improve manual system B: Use PC based periodic update system C: An on-line system with server and several clients

4.2.1

Systems Analysis And Design

© V. Rajaraman

15 of 30

SOLUTION A: MANUAL SYSTEM Manual System may be improved as follows • Keep up-to-date running total of extras and rebates for each student • Use look up table to find material needed each day based on number of extras • Cost each day's issue and keep running total • Calculate standard quantities needed and use for vendor order • Track student payments to find overdue payments • Solution does not ensure reduction in bill variations and prompt payment to vendors • Solution not scalable to large student population 4.2.2

Systems Analysis And Design

© V. Rajaraman

16 of 30

SOLUTION B Use a single PC to • Prepare students bills-itemize bills • Prepare number of members who will eat for next two days • Alert warden when bill not paid within 10 days of issue • Vendor order generation • Inventory control of store • Menu planning 4.2.3

Systems Analysis And Design

© V. Rajaraman

17 of 30

SOLUTION B PC configuration needed based on data base sizes PC with 20 MB disk, 1.2 MB floppy sufficient However minimum configuration available today(2004) is PC with 128 MB main memory, 40 GB disk 1.2MB floppy & CD R/W costs Rs. 25,000.Systems software(Windows XP+MSOffice+anti-virus) will cost around Rs.25,000. Total cost=Rs 50,000 Need PC+ printer+uninterrupted power supply cost Rs. 70,000 4.2.4

Systems Analysis And Design

© V. Rajaraman

18 of 30

SOLUTION C • Use a server which is accessed by 3 clients one each in the mess, the stores and the accounts sections; perform on-line transaction processing. • Advantage: Up to the minute status can be found •Number of transactions small and does not justify 4 computers •Solution unnecessarily expensive and rejected

4.2.5

Systems Analysis And Design

© V. Rajaraman

19 of 30

EVALUATING ALTERNATIVE SOLUTIONS • Determine Technical feasibility of each solution,in other words is technology mature to implement a solution • Determine Operational feasibility of each solution.In other words,for a given organizational structure will the solution fit in.Will it provide right information at the right time to users • Determine Economic feasibility of each solution.In other words, are finances available to implement system?Will it be cost effective?Will the money spent be recovered by savings or by better services to users 4.2.6

Systems Analysis And Design

© V. Rajaraman

20 of 30

TECHNICAL AND OPERATIONAL FEASIBILITY •Solution B is selected for further consideration • It is technically feasible as PC of necessary configuration is easily available. • It is also operationally feasible as clerks in hostel office can be easily trained to use a PC. The necessary problems will be written by system analyst/ programmer hired for this purpose.

4.2.7

Systems Analysis And Design

© V. Rajaraman

21 of 30

COST-BENEFIT ANALYSIS • Needed to find economic feasibility of proposed solution • Objective to find whether returns by implementing a system justify the cost • Found by listing all costs direct and indirect • Direct cost- Cost of computer, software, space, human resource, material,travel, training etc. • Indirect cost- Time spent by persons and data gathering • Benefit- Tangible- measurable Intangible- better management -better user satisfaction 4.3.1

Systems Analysis And Design

© V. Rajaraman

22 of 30

BENEFITS Direct - Savings due to reduced inventory, early collection of outstanding payments, reduced wastage,faster production, increased production Indirect –Increased work done with same human resource Intangible - better service to customers - superior product quality - accurate,reliable,timely and up-to-date strategic,tactical and operational information to management 4.3.2

Systems Analysis And Design

© V. Rajaraman

23 of 30

COST – BENEFITS ANALYSIS CASE STUDY OF HOSTEL INFORMATION SYSTEM COST : PC,UPS,Printer+Systems analyst+programmer Capital

70,000

+60,000 =1,30,000

Cost(Recurring) : Stationery, maintenance,floppy etc. Rs. 2000 per month Benefits : - Inventory reduction 5% of mess bill of 400 students Daily rate=Rs 45 Savings= 45*0.05*30*400=Rs 27,000 - Transport cost saving=Rs 800 per month - Savings due to early payment =material cost*1.2%=37.5*400*30*0.012=Rs 5400 - Savings due to early collection =40*1350*0.01=Rs 540

4.3.3

Systems Analysis And Design

© V. Rajaraman

24 of 30

COST – BENEFITS ANALYSIS Direct saving=33740 Indirect benefit : student satisfaction due to itemized bill, predictable daily rate,better menu Net Direct Saving per month= 33740-2000 =R31740 Total capital cost=l,30,000

4.3.4

Systems Analysis And Design

© V. Rajaraman

25 of 30

PAY BACK PERIOD SIMPLE: Cost 1,30,000 Saving 31,740 per month Cost recovered in 130000/31740 = 4.1 months Using interest on capital: Monthly interest=0.015* 1,30,000 =Rs 1950 per month Saving per month=31740-1950=29790 Cost recovered in 130000/29790 = 4.4 months 4.3.5

Systems Analysis And Design

© V. Rajaraman

26 of 30

PRESENT VALUE METHOD Accounts for the fact that a benefit accruing n months later will be lower today as the money if available today would have earned interest If r = Interest rate in % per month. n = number of months x = benefit Present value of benefit accruing n months later is: Present value = x/(1+r)n 4.3.6

Systems Analysis And Design

© V. Rajaraman

27 of 30

COST-BENEFIT Present Value method This account for the fact that benefits each month will also earn interest Month Cost Net-Benefit present value

cumulative Benefit

of Benefit 0

1,30,000

0

0

1

31,740

31271

2

31,740

30809

62080

3

31,740

30354

92434

4

31,740

29905

122339

5

31,740

29463

151802

[email protected]

31271

This also give us less than 5 months as pay back period

4.3.7

Systems Analysis And Design

© V. Rajaraman

28 of 30

STRUCTURE OF EXCUTIVE SUMMARY 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

4.3.8

Systems Analysis And Design

© V. Rajaraman

29 of 30

SYSTEM PROPOSAL STRUCTURE •Introduction with outline of proposal •Data flow diagram of existing system •Modified DFD of proposed system •Discuss alternative solutions •List new equipment to be installed (if any) •Technical,operational feasibility of analysis •Cost- Benefit analysis •New procedures, human resources and training needed •Anticipated problems •Implementation plan 4.3.9

Systems Analysis And Design

© V. Rajaraman

30 of 30

MODULE 4

FEASIBILITY ANALYSIS Contents

1. MOTIVATION AND LEARNING GOALS 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 decisionmaking.

LEARNING GOALS At the end of this module you will know • How to formulate the goals to be met by the information system to be designed •How to quantify the goals •How to obtain alternative solutions to satisfy the goals •How to assess the feasibility of implementing alternative solutions. •How to compute cost vs benefits of each alternative feasible solution •How to prepare a system proposal for the potential users of the system

LEARNING UNIT 1

How to formulate project goals and quantify them

STEPS IN FEASIBILITY ANALYSIS

•Note down deficiencies in current system found while preparing SRS Document •Set goals to remove deficiencies •Quantify Goals •Find alternative solutions to meet goals •Evaluate feasibility of alternative solutions taking into account constraints on resources. •Rank order alternatives and discuss with user. •Prepare a system proposal for management approval ƒ Quantify the goals and sub-goals from the verbal statement of goal For example: Send bill soon after month end Quantified statement of the same goal: Send bill within 5 days of month end ƒ Find out whether it is possible to meet these goals. ƒ Determine the cost of meeting each goal ƒ Find cost benefit if quantified

GUIDELINES FOR SEARCHING GOALS Identify the deficiency by pinpointing missing functions, unsatisfactory performance and excessive cost of operations. Set Goals to remove deficiency and provide competitive advantage

CHARACTERSTICS OF A GOAL

Must be quantified, realizable with the constraints of the organization and the system, broken down into Sub-Goals, agreeable to all concerned, in general goals must not only remove deficiency but also give a system which is superior to those of the competitors of the organization.

CASE STUDY-HOSTEL INFORMATION SYSTEM

(For details of this Case Study see Chapter 5 page 46-58 of book “Analysis and design of Information Systems”, Prentice Hall of India, New Delhi,2002 by V.Rajaraman) 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

DEFICIENCIES (HIGH OPERATIONAL COST) 3.1Unpaid and long outstanding bills from students 3.2 Extras and rebates not reflected in stores issues 3.3 Frequent small purchases at high cost 3.4 High transport cost due to not consolidating stores requirements

FORMULATIOIN OF GOALS MAIN GOALS

Ml . Send bill to students within 5 days of the end of month M2. Control inventory of items in stores & issues to cooks to bring down mess bill by 10% M3. Balance menu to meet nutritional requirements M4. Cost of new menu not to exceed current cost FORMULATION OF SUB-GOALS S1.1 Itemize bills showing extras and rebates with dates S1.2 Ensure less than 5% variations of bills from month to month SI.3 Bills not paid within 10 days of issue brought to the attention of chief warden S1.4 Update daily rates every day Main goals M1 and sub-goals S1.1,S1.2,S1.3 remove deficiencies 1.3,2.1,1.2.2,2.5,3.1 S2.1 Ensure payment to vendors within five days of supply of items S2.2 Maximum 4 trips per month for purchases. Cartage less than 1% of item cost S2.3 Reduce inventory level. Level not more than 10% of requirements in a month S2.4 Issue to cooks every day not to exceed 5% of calculated values Main goals M1& sub-goals above remove deficiencies 1.1,1.2,2.3,2.4,3.2,3.3,3.4

LEARNING UNIT 2 Examining alternative solutions and evaluating proposed solutions

EXAMINING ALTERNATIVE SOLUTIONS HOSTEL INFORMATION SYSTEM ALTERNATIVE SOLUTIONS A: Improve manual system B: Use PC based periodic update system C: An on-line system with server and several clients

SOLUTION A: MANUAL SYSTEM Keep up-to-date running total of extras and rebates for each student, use look up table to find material needed each day based on number of extras, calculate standard quantities needed and use for vendor order, track student payments to find overdue payments. Solution does not ensure reduction in bill variations and prompt payment to vendors, solution not scalable to large student population SOLUTION B: USE PC BASED PERIODIC UPDATE SYSTEM 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. The PC configuration needed based on data base sizes is: PC with 20 MB disk, 1.2 MB floppy is sufficient. However minimum configuration available today(2004) is PC with 128 MB main memory, 40 GB disk 1.2MB floppy & CD R/W costs Rs. 25,000.Systems software (Windows XP, MSOffice, anti-virus) will cost around Rs.25,000. So, the Total cost is Rs 50,000. But a PC with printer and uninterrupted power supply costs Rs. 70,000

SOLUTION C: AN ON-LINE SYSTEM WITH SERVER AND SEVERAL CLIENTS Use a server which is accessed by 3 clients one each in the mess, the stores and the accounts sections; perform on-line transaction processing. The advantage is up to the minute status can be found

EVALUATING ALTERNATIVE SOLUTIONS Determine Technical feasibility of each solution, in other words is technology mature to implement a solution. Determine Operational feasibility of each solution. In other words, for a given organizational structure will the solution fit in. Will it provide right information at the right time to users? Determine Economic feasibility of each solution. In other words, are finances available to implement system? Will it be cost effective? Will the money spent be recovered by savings or by better services to users.

TECHNICAL AND OPERATIONAL FEASIBILITY Solution B is rejected, as it does not meet most of the requirements. Solution C is rejected, as it is a high cost solution. Solution B is selected for further consideration. It is technically feasible as PC of necessary configuration is easily available. It is also operationally feasible as clerks in hostel office can be easily trained to use a PC. System analyst/ programmer hired for this purpose will write the necessary problems.

LEARNING UNIT 3

Cost benefit analysis. Documenting feasibility report.

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 Direct cost- Cost of computer, software, space, human resource, material, travel, training etc. Indirect cost- Time spent by persons and data gathering

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 CASE STUDY OF HOSTEL INFORMATION SYSTEM COST : PC,UPS,Printer+Systems analyst+programmer Capital 70,000 +60,000 =1,30,000 Cost(Recurring) : Stationery, maintenance,floppy etc. Rs. 2000 per month Benefits : - Inventory reduction 5% of mess bill of 400 students Daily rate=Rs 45 Savings= 45*0.05*30*400=Rs 27,000 - Transport cost saving=Rs 800 per month - Savings due to early payment =material cost*1.2%=37.5*400*30*0.012=Rs 5400 - Savings due to early collection =40*1350*0.01=Rs 540 Direct saving=33740 Indirect benefit : student satisfaction due to itemized bill, predictable daily rate, better menu Net Direct Saving per month= 33740-2000 = 31740 Total capital cost=l,30,000

PAY BACK PERIOD SIMPLE: Cost 1,30,000 Saving 31,740 per month Cost recovered in 130000/31740 = 4.1 months Using interest on capital: Monthly interest=0.015* 1,30,000 =Rs 1950 per month Saving per month=31740-1950=29790 Cost recovered in 130000/29790 = 4.4 months

PRESENT VALUE METHOD

Accounts for the fact that a benefit accruing n months later will be lower today as the money if available today would have earned interest If r = Interest rate in % per month. n = number of months x = benefit Present value of benefit accruing n months later is: Present value = x/(1+r)n

COST-BENEFIT

Present Value method This accounts for the fact that benefits each month will also earn interest Month Cost Net-Benefit present value of Benefit 0 1,30,000 0 0 1 31,740 31271 2 31,740 30809 3 31,740 30354 4 31,740 29905 5 31,740 29463

cumulative Benefit

31271 62080 92434 122339 151802

This also give us less than 5 months as pay back period

STRUCTURE OF EXCUTIVE SUMMARY

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

SYSTEM PROPOSAL STRUCTURE •Introduction with outline of proposal •Data flow diagram of existing system •Modified DFD of proposed system •Discuss alternative solutions •List new equipment to be installed (if any) •Technical,operational feasibility of analysis •Cost- Benefit analysis •New procedures, human resources and training needed •Anticipated problems •Implementation plan

REFERENCES 1. This module is based on Chapter 6, “Feasibility Analysis”, of the book Analysis and Design of Information Systems by V.Rajaraman, Prentice Hall of India. Parts of the the book have been used in case studies.

2. J.E.Kandall and J.E.Kandall, Systems Analysis and Design, 5th Edition, Pearson Education (Asia) 2003. Part of Chapter 3 pp.55-63 deal with feasibility analysis. It is reasonably well treated but does not have any quantitative examples.

3. R.Schultheis and Mary Summer, Management Information Systems, Tata McGraw Hill, 1999. Very short treatment of feasibility analysis as part of system Life Cycle (pp.544-545). 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.

5. K.C.Laudon and J.P.Laudon, Management Information Systems, Pearson Education Asia, New Delhi, 2004. Very brief discussion (one para only) on p.390) 6. J.A.Hoffer, J.F.George and J.S.Valacich, Modern Systems Analysis and Design, Pearson Education Asia, New Delhi 2002. Has a good discussion of feasibility. study on pp.168 to 181. Besides Technical, operational and Economic feasibility they also include other parameters which are schedule, legal/contractual and political feasibility which arise when one tries to develop a system.

System Analysis and Design/ Feasibility Analysis

Multiple Choice Questions

4.1 Pick quantified goals from those given below (i) payment should be made promptly (ii)payment should be made before 5th of every month (iii) the age of the persons should be below 35 (iv)the person to be recruited should be middle age a. i and ii b. i and iii c. ii and ii d. ii and iv 4.2 Quantification of goals is required because a. without quantification no work can be done b. When goals are quantified it is possible to verify unambiguously whether they have been fulfilled c. Goals have to be quantified for a good system d. it facilitates designing a good system 4.3 Quantification of goals is done by a. converting subjective goal statements to ones with numbers b.

converting subjective goal statements to objective goal statements

c.

converting objective goal statements to subjective goal statements

d. removing all adjectives in a goal statement 4.4 Quantified version of the statement: “The inventory should be reduced substantially“ is a. the inventory should be reduced effectively b. the inventory should be reduced significantly c. the inventory should be reduced very much d. the inventory should be reduced by 25% 4.5 Goals are identified by a.

finding the deficiencies in the current system

b.

observing the current system

c.

analyzing competitor’s system

d. finding the advantages in the current system

V. Rajaraman/IISc. Bangalore

M4/V1/July 04/1

System Analysis and Design/ Feasibility Analysis

4.6

Multiple Choice Questions

Deficiencies in a system are pinpointed by identifying (i)missing function (ii)excessive cost of operation (iii)poor management (iv)poor operation a. i and iii b. i and ii c. i and iv d. ii and iii

4.7 Goals are identified by a. discussion with all concerned b. pinpointing unsatisfactory performance c. finding poor management d. examining a variety of documents 4.8 Characteristics of good goals are that they (i)are quantified (ii)improve quality (iii)are realizable within the constraints of the organization (iv)aim at an ideal system a. i and ii b. ii and iv c. ii and iii d. i and iii 4.9 Goals should be agreeable to a.

top management

b.

project leader

c.

all concerned, both management and operational staff

d. programmers 4.10

Goals should be broken down to sub-goals as it a.

expedites system design

b.

provides a convenient target to aim at during system design

V. Rajaraman/IISc. Bangalore

M4/V1/July 04/2

System Analysis and Design/ Feasibility Analysis

c.

Multiple Choice Questions

is recommended by experienced analysts

d. is good idea to use 4.11

During feasibility analysis it is necessary to examine several alternative solutions because (i)a comparison of alternatives will lead to a cost-effective solution (ii)a pre-conceived single solution may turn out to be unimplementable (iii)it is always good to examine alternatives (iv)management normally looks at alternatives

4.12

a.

i and iii

b.

i and iv

c.

i and ii

d.

ii and iv

A computer-based information system a.

may require some tasks to be done manually

b.

should not have any manual tasks

c.

is always fully automated

d. may use only computers 4.13

4.14

4.15

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

By technical feasibility of a solution we mean that a.

technology is available to implement it

b.

persons are available to implement it

c.

persons have technical ability to implement it

d.

funds are available to implement it

By operational feasibility we mean a.

the system can be operated nicely

V. Rajaraman/IISc. Bangalore

M4/V1/July 04/3

System Analysis and Design/ Feasibility Analysis

4.16

Multiple Choice Questions

b.

the system is unusable by operators

c.

the system can be adapted by an organization without major disruptions

d.

the system can be implemented

By economic feasibility of a system we mean that a.

it is economical to operate

b.

it is expensive to operate

c.

it will be cost-effective if implemented

d. finances are available to implement the system and it will be cost4.17

A solution is said to be feasible for implementation if

(i)it is cost-effective and finance is available to implement it (ii)technology is available to implement it (iii)it can be adapted to work in an organization’s environment (iv)it has been implemented in another organization

4.18

4.19

a.

ii and iii

b.

i, ii and iii

c.

i and iv

d.

i, ii and iv

A cost-benefit analysis is performed to assess a.

economic feasibility

b.

operational feasibility

c.

technical feasibility

d.

all of the above

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. 4.20

to determine the intangible benefits of the information system

A cost-benefit analysis is performed as a part of

V. Rajaraman/IISc. Bangalore

M4/V1/July 04/4

System Analysis and Design/ Feasibility Analysis

4.21

a.

system design

b.

system specification

c.

system performance assessment

d.

feasibility analysis

Multiple Choice Questions

A cost benefit analysis consists of

(i)finding the direct and indirect cost of developing, implementing and running the system (ii)finding out the tangible and intangible benefit of the system (iii)finding the investment to be made in the system (iv)finding the profit which will accrue from the system

4.22

a.

iii and iv

b.

i and iv

c.

ii and iii

d.

i and ii

The tangible benefits in the following list are (i)savings due to reducing investment (ii)savings due to sending bills faster and consequent early collection (iii)providing better service to the customers (iv)improving quality of company’s products

4.23

a.

i and ii

b.

ii and iii

c.

iii and iv

d.

i and iii

The intangible benefits in the following list are (i)savings due to reducing investment (ii)savings due to sending bills faster and consequent early collection (iii)providing better service to the customers (iv)improving quality of company’s products

V. Rajaraman/IISc. Bangalore

M4/V1/July 04/5

System Analysis and Design/ Feasibility Analysis

4.24

4.25

4.26

4.27

4.28

a.

i and ii

b.

ii and iii

c.

iii and iv

d.

i and iii

Multiple Choice Questions

Intangible benefits are a.

not very important

b.

as important as tangible benefits

c.

the most important benefits

d.

irrelevant in feasibility study

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

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

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

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

V. Rajaraman/IISc. Bangalore

M4/V1/July 04/6

System Analysis and Design/ Feasibility Analysis

4.29

Multiple Choice Questions

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

V. Rajaraman/IISc. Bangalore

M4/V1/July 04/7

System Analysis and Design/ Feasibility Analysis

Multiple Choice Questions

d. the analyst feels it will be a challenging system to implement 4.34

The main objectives of a detailed system proposal are to (i)convince management about the benefits of the proposed system (ii)explain in detail to the management what to expect from the system and at what cost (iii)have a detailed plan on what the system will do and how it will be implemented (iv)make sure that it is possible to implement the system a. i and ii b. ii and iii c. i and iv d. ii and iv

4.35

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

V. Rajaraman/IISc. Bangalore

M4/V1/July 04/8

System Analysis and Design/ Feasibility Analysis

Multiple Choice Questions

Key to Objective Questions

4. 1

c

4.2

b

4.3

a

4.4

d

4.5

a

4.6

b

4.7

b

4.8

d

4.9

c

4.10 b

4.11

c

4.12

a

4.13

b

4.14

a

4.15

c

4.16

d

4.17

b

4.1 8 a

4.19

c

4.20

d

4.21

d

4.22

a

4.23

c

4.24

4.25 d

4.26 c

4.27 b

4.28 c

4.29 b

4.31 b

4.32 d

4.33 c

4.34 b

4.35 c

V. Rajaraman/IISc. Bangalore

b

4.30 a

M4/V1/July 04/9

MODULE 4

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.2 Is it essential to use computers in all information systems? No. Better systematization may sometimes be adequate to meet goals. However with the reduction in the cost of computers most organizations use computers. 4.3 Distinguish between technical, operational, and economic feasibility. A solution is technically feasible if technology is available to implement it. It is operationally feasible if it can fit in within the existing organization with only small changes. It is economically feasible if the investment made leads to adequate returns. A solution which requires, say, a large mainframe computer available in the market is technically feasible but may not be economically feasible due to high cost of the computer relative to expected benefits. It may not be operationally feasible due to lack of trained people to program the computer. 4.4 Give an example of a solution which is technically feasible, but not operationally feasible. It is technically feasible to computerize services in a bank by installing PCs with clerks who can be trained to operate it. It is operationally not feasible in certain banks due to agreement between management and union which do not allow use of computers for certain customer services.

4.5 Is it essential that an operationally feasible solution should be technically feasible? Discuss with examples. No. A computerized enquiry system where enquiries are made using a telephone and answers are automatically spoken out is operationally feasible. It is not technically feasible due to non-availability of speaker independent natural speech recognition technology.

4.6 Is it essential to have tangible benefits to justify an information system? If your answer is no, justify your answer by giving an example. No. A ticket reservation system in railways has not much tangible benefits. However, intangible benefits such as customer satisfaction, and ease of checking daily cash collection are sufficient reasons to implement the system. 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? Year

Cost

Benefit

Current value

Cumulative benefit

0 1 2 3 4

200,000 – – – –

– 50,000 80,000 90,000 70,000

– 45,454 66,116 67,618 47,811

– 45,454 111,570 179,188 226,999

As payback period is 4 years, it is decided to proceed with the project. 4.8 A manager states the following as goals of a production planning system: 1. Reduce stocks of semi-finished products. 2. Provide better information for the production planning 3. Prevent overproduction. How would you quantify the goals? How would you obtain sub-goals and quantify them if appropriate? (i) Goal: Reduce stocks of semi-finished products by 10%. Sub-goal: Classify semi-finished products as due to non-availability of part, non-availability of machine, non-availability of tool. (ii) Goal: Give a table giving requirement of each product. Sub-goal: Prepare list of tools needed and when they will be needed. Prepare maintenance schedules of machines. (ii) Goal: Ensure that production is not more than 5% of estimated demand of each item.

4.9 A university administrator calls a systems analyst to improve the administration of sponsored research projects. The main problems are delay in obtaining latest financial position to project co-ordinators, reconciliation of advances given to co-ordinators, prompt demands not sent to sponsors to collect promised grants and lack of information to answer following questions: Which areas of research get maximum grants? Which agency aids which type of projects? What trends can be seen in the nature of grants? Now: 1. Classify the above problems into missing functions, unsatisfactory performance and excessive cost of operation. 2. How would you set the goals to meet the deficiencies? 3. How would you quantify them? 1.

(i) Missing Function: Analysis of types of grants and grant-giving agencies. (ii) Unsatisfactory Performance: Delay in obtaining financial statements; nonreconciliation of advances. (iii) Excessive cost: Loss due to delay in receipt of grants (loans may have to be taken to meet expenses). 2. (i) Goals to improve performance — Ensure financial statements are sent each month. — Ensure reminders on advances are sent each month. (ii) Goals to reduce cost — Bring to the attention of accounts officer grants overdue by 10 days. — Send reminder ad pre-receipt 10 days before grant is due. (iii) Goals to incorporate missing functions — Codify research areas and granting agencies. — Introduce uniform formats to classify grants. — Create a database of all possible granting agencies and their areas of research. 3.All goals are quantified in 2. Sub-goals — Send list of periodicals received to interested readers within 2 days of arrival of periodicals. — Send for binding loose periodicals within 4 weeks of arrival of last issue. (ii) A Fully manual using cardex system. B Using a PC and a periodicals management information system. C Using the central computing in the university and a remote terminal system in the library dedicated to periodicals management.

4.10

What operational, tactical and strategic information should be provided by the mess billing system mentioned in the text (case study)? The information that will be provided to management by the mess billing system is: Operational – Each student’s bill details. – Details of inventory held. – Details of issues to stores. – Details of trips to town. – Details of expenses each day. Tactical – Number of days taken to despatch bills after end of month. – Variation of daily rate from month to month. – Bills to students unpaid for 10 days after issue. – Bills from vendors unpaid for 5 days. – Inventory level of an item if 10% above average – Issues to cooks if 5% above normal. – Nutrition values of menus. Strategic – Daily rate seasonal trends. – Extras/rebates and trends to enable better inventory planning. Information on menu preferences.

System Analysis and Design/Feasibility Analysis

Question Bank

QUESTION BANK 4 4.1

When are the goals of a project specified?

4.2

How are goals determined?

4.3

What should be the characteristics of goals?

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.6

Is it essential to use computers in all information systems?

4.7

Distinguish between technical, operational and economic feasibility.

4.8

What do you understand by the term feasibility study of a solution?

4.9

Give an example of a solution which is technically feasible, but not operationally feasible.

4.10

Give an example of a technically feasible solution which is not economically feasible.

4.11

Give an example of an operationally feasible solution which is not economically feasible.

4.12

Is it essential that an operationally feasible solution should be technically feasible? Discuss with examples.

4.13

What is the difference between tangible and intangible benefits?

4.14

Give examples of tangible and intangible benefits.

4.15

For the problem of periodical information system (Exercise 4.23 below), specify tangible and intangible benefits.

4.16

What is meant by cost-benefit analysis?

V. Rajaraman/IISc. Bangalore

M4//V1/July 04/1

System Analysis and Design/Feasibility Analysis

4.17

Question Bank

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%, what is the pay back period of the investment? How does inflation affect pay back period? Is it essential to have tangible benefits to justify an information system? If you answer is no, justify your answer by giving an example.

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 project if your criterion is cost/benefit?

4.19

A manager states the following as the goals of a production planning system: 1

Reduce stock of semi-finished products.

2

Provide better information for the production planning.

3

Prevent overproduction.

How would you quantify the goals? How would you obtain sub goals and quantify them if appropriate? 4.20

A university administrator calls a systems analyst to improve the administration of sponsored research projects. The main problems are delay in obtaining latest financial position to project coordinators, reconciliation of advances given to coordinators, prompt demands not sent to sponsors to collect promised grants and lack of information to answer following questions: Which areas of research get maximum grants? Which agency aids which type of projects? What trends can be seen in the nature of grants?

V. Rajaraman/IISc. Bangalore

M4//V1/July 04/2

System Analysis and Design/Feasibility Analysis

Question Bank

Now: 1. Classify the above problems into missing functions, unsatisfactory performance and excessive cost of operation. 2. How would you get goals to meet the deficiencies? 3. How would you quantify them? 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 may not be possible to get the replacement. Periodicals have to be ordered at different times during the year and subscriptions renewed in time. Late payment of subscription may lead to non-availability of earlier issues or paying 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. 2. Quantify these goals. 3. Suggest alternative means of achieving the goals specified by you.

4.22

What operational, tactical, and strategic information should be provided by the mess billing system mentioned in the text? (Case study).

4.23

When is a detailed system proposal prepared? What are the contents of a system proposal?

V. Rajaraman/IISc. Bangalore

M4//V1/July 04/3

System Analysis and Design/Feasibility Analysis

Case Study

CASE STUDY – System Proposal 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.1 Forecasting of stores requirements not done. 1.2 Purchases not consolidated. 1.3 Daily rate calculation not updated frequently. 1.4 Menu not planned for balanced nutrition and low cost. 2. Unsatisfactory performance. 2.1 Billing not accurate and prompt. 2.2 Student bills not itemized. 2.3 Stores issues to cooks not systematic. 2.4 Payments to vendors not prompt. 2.5 Large variations in mess bills every month. 3. Excessive cost of operations due to the following: 3.1 Unpaid long outstanding bills from students. 3.2 Extras and rebates not reflected in stores issues. 3.3 Frequent unplanned visits to city to buy out-of-stock items. 3.4 High transport cost (small purchases at high cost) due to not consolidating stores requirements.

V. Rajaraman/IISc. Bangalore

M4//V1/July 04/1

System Analysis and Design/Feasibility Analysis

Case Study

These deficiencies are to be removed in the proposed information system. Goals of the proposed system. The main quantified goals and the sub-goals of the proposed system are as given below: Main goal M1 Send the bills to students within 5 days of the end of the month. Sub-goals S1.1

Itemize bills indicating extras and rebates with dates.

S1.2

Ensure less than 5% variation of bills from month to month.

S1.3

Bring to the attention of the Chief Warden the bills which are not paid within 10

days of issue. S1.4

Update daily rate. Calculate bills every day.

The main goals and sub-goals to remove deficiencies 1.1, 1.2, 2.3, 2.4 and 3.2-3.4 (mentioned above) are given below: Main goal M2

Control inventory of items and issues to cooks so as to bring down mess bill by

10%. Sub-goals S2.1

Ensure payment to vendors within five days of supply of items.

S2.2

Make sure that at most four trips per month are made to the town for purchase and

consequently transport cost is less than 1% of item cost. 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.

Goals to add function 1.4.

V. Rajaraman/IISc. Bangalore

M4//V1/July 04/2

System Analysis and Design/Feasibility Analysis

Case Study

Main Goals M3.1 Balanced menu to meet nutritional requirements. M3.2 Cost of food not to exceed current cost. Sub-goal S3.1

Randomize menu.

Alternative solutions examined. Three alternative solutions were examined. These are given below: Solution A: Improve the current manual system by improving procedures. Solution B: Use a single PC in the hostel office Solution C: Use three small client computers in the mess, stores and accounts office and connect to a server in the hostel office. Comparison of Solutions: Solution A is feasible but is not scalable. In other words if the number of students increase the system will be difficult to implement. It requires meticulous attention to details by clerks. It is thus rejected. Solution C is very expensive as it needs four computers. It does provide on-line updates but this is not necessary in this problem. Selected solution. Solution B is selected as it is technically and operationally feasible. The cost/benefit of Solution B to assess economic feasibility is given below: 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 XP Office 2000, anti virus and Turbo C) = Rs.70,000. 2. Cost of space (nil). No extra space allocated.

V. Rajaraman/IISc. Bangalore

M4//V1/July 04/3

System Analysis and Design/Feasibility Analysis

Case Study

3. Cost of systems analysts/Programmers/Consultants for 3 months = Rs.60,000/4. Recurring costs:: Stationery cost, floppy cost, Maintenance/Electricity = Rs.2000/- per month). 5.

One time cost = Rs.1,30,000/-

Benefits (Direct savings) 1. Savings per month due to inventory reduction and wastage = 5% of mess bill of 400 students = 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). 2. Savings in transport cost (estimate) Rs.800 per month. 3. Savings due to early payment to vendors = 1.2% of total billing to vendors =37.5 * 400 * 30 * 0.012 = Rs.5400/- per month (Rs.37.50 per day is assumed to be material cost in mess bill) 4. Savings due to better collection (40 defaulting students, 1% interest per month) = 40 * 1350 * 0.01 = Rs.540 per month Intangible benefits 1. Student satisfaction due to itemized bills and less variation.

V. Rajaraman/IISc. Bangalore

M4//V1/July 04/4

System Analysis and Design/Feasibility Analysis

Case Study

2. Better menu planning Total benefits = Rs.33740 per month Recurring cost = Rs.2000 per month Net benefit per month = Rs.31,740 Total capital cost = Rs.1,30,000/New equipment to be installed. PC and printer with the following features: Hardware IBM compatible PC 256 MB main memory 1.2MB floppy drive 40 GB hard disk 15" colour monitor 132 character 80 cps dot printer Software

Windows XP Operating System MS Office 2000 antivirus software Turbo C

Infrastructure

500 VA, Uninterrupted Power Supply Need a dust-free room to locate PC

Benefits expected. (These were as given earlier) Cost of the system. As calculated earlier, the cost of the new system will be Capital cost hardware system software = Rs. 70,000 System analysis/design cost = Rs.60,000

V. Rajaraman/IISc. Bangalore

M4//V1/July 04/5

System Analysis and Design/Feasibility Analysis

Case Study

Recurring cost = Rs. 2000 per month New procedures to be implemented. Using simple pay back method and assuming 1% interest per month we obtain the Table 4.1 Table 4.1 Cost-benefit –Present value method Month

Cost

Net Benefit

0 1 2 3 4 5

1,30,000

31740 31740 31740 31740 31740

Present Value of benefit 31426 31115 30806 30502 30200

Cumulative Present Value 31426 62541 93347 123849 154049

We see that the cumulative benefit exceeds cost of the system by the fifth month. Thus we conclude that the proposed system is economically beneficial. The subsystems involved in this solution are now described. (i)

Billing subsystem. An extras/rebates register will be maintained in the mess 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 per rules. The data entered is used by a program to create a summary statement giving expected number of meals to be prepared 48 hours from 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.

V. Rajaraman/IISc. Bangalore

M4//V1/July 04/6

System Analysis and Design/Feasibility Analysis

(ii)

Case Study

Subsystems in billing system. Subsystem for finding meals to be cooked. INPUT: Extras/rebate requests of each student each day. PROCEDURE •

Check each input record to see if rebate is admissible and extras are correct.



Enter admissible rebates and extras in student billing file.



Find number of meals to be cooked two days from now. Print note to mess manger.

OUTPUT: Note to mess manager giving number of members and meals to be cooked 48 hours from now. (This subsystem runs daily on the PC) (iii)

Subsystem for mess bill calculation. INPUT: Items issued each day (perishable and non-perishable) PROCEDURE: •

From items issued each day find total expenses each day.



Accumulate daily expense and add fixed overhead (salaries etc.)



Using number of members calculate up-to-date daily rate.



Using student billing information file an expense file, calculate the itemized bill for each student at the end of the month.



Enter in student billing file.

OUTPUT: Itemized bills to students. (Updating daily rate is run each day whereas student billing system is run once a month).

V. Rajaraman/IISc. Bangalore

M4//V1/July 04/7

System Analysis and Design/Feasibility Analysis

(iv)

Case Study

Subsystem for unpaid bills INPUT: Payments information. PROCEDURE • Enter all payments in student billing file. • Five days after last date for payment, examine this file and create a list of students with unpaid bills. OUTPUT: List of overdue bills sent to Chief Warden (This system runs once a month) 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.

(i)

System for stores issue and control Subsystem for stores issues to cooks INPUT • Menu for (today's date + 2 i.e., if today's date is 20.04.03 menu is given for 22.04.03). • Number of meal to be cooked for (today's date + 2). PROCEDURE: Using inputs find items to be issued on (today's date + 2). OUTPUT: Items to be issued on (today's date + 2) sent to mess manager. Subsystem for inventory control INPUT: Daily use of stores items, perishables and vendor supplies. PROCEDURE

V. Rajaraman/IISc. Bangalore

M4//V1/July 04/8

System Analysis and Design/Feasibility Analysis



Case Study

Based on past month's total consumption of each item, estimate consumption of current month. Add 2 days consumption as buffer.



Work out minimum amount (=4 days needs) of all critical items.



Decide on order quantities, and place orders.



When goods come in, check in order file and update inventory if items accepted.



Send the cheques to vendors on item acceptance.



Update stores inventory after each issue.



When critical items go below minimum level inform mess manager

OUTPUTS •

Orders to vendors



Cheques to vendors



Low item stock message to mess manager

(This system is run once a day) This system satisfies main goal M2 and sub-goals S2.1-S2.4. ii. System for menu planning INPUT • No. of items in menu • Alternative for each item • Cost of each item • Maximum cost. PROCEDURE • Reduce total cost by trying alternative items in menu.

V. Rajaraman/IISc. Bangalore

M4//V1/July 04/9

System Analysis and Design/Feasibility Analysis

Case Study

• Try an optimization package such as Linear Programming. • Rank menus by cost and keep 14 different menus for each meal. • Randomize menus each week. OUTPUT: Balanced menu at reduced cost. (This system is run once a month) 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 hour back up for the uninterrupted power supply system. 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).

Start Time

0 0+3 week 0+6 week 0+12 week

Time Schedule in weeks Billing system Stores issue system Inventory system Menu planning

V. Rajaraman/IISc. Bangalore

Table 4.2 Implementation Plan Design Implement

Test

3

3

1

Parallel Run Manual System 4

4

3

2

3

4

3

2

3

5

3

2

2

M4//V1/July 04/10

System Analysis and Design/Feasibility Analysis

Case Study

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 expectations of the management.

V. Rajaraman/IISc. Bangalore

M4//V1/July 04/11

System Analysis and Design/Feasibility Analysis

Pointers

References 1. This module is based on Chapter 6, “Feasibility Analysis”, of the book Analysis and Design of Information Systems by V.Rajaraman, Prentice Hall of India. Parts of the the book have been used in case studies. 2. J.E.Kandall and J.E.Kandall, Systems Analysis and Design, 5th Edition, Pearson Education (Asia) 2003. Part of Chapter 3 pp.55-63 deal with feasibility analysis. It is reasonably well treated but does not have any quantitative examples. 3. R.Schultheis and Mary Summer, Management Information Systems, Tata McGraw Hill, 1999. Very short treatment of feasibility analysis as part of system Life Cycle (pp.544-545). 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. 5. K.C.Laudon and J.P.Laudon, Management Information Systems, Pearson Education Asia, New Delhi, 2004. Very brief discussion (one para only) on p.390) 6. J.A.Hoffer, J.F.George and J.S.Valacich, Modern Systems Analysis and Design, Pearson Education Asia, New Delhi 2002. Has a good discussion of feasibility. Study on pp.168 to 181. Besides Technical, operational and Economic feasibility they also include other parameters which are schedule, legal/contractual and political feasibility which arise when one tries to develop a system.

V. Rajaraman/IISc. Bangalore

M4//V1/July 04/1

SUMMARY OF MODULE 4 1. The goals of a project are formulated after gathering facts and having discussions with users. 2. Goals are set by identifying deficiencies such as missing functions, unsatisfactory performance or excessive cost of operation. 3. Goals must be quantified, realizable, agreed to by users and then broken down into sub-goals. 4. After setting goals we look at alternative methods of meeting these goals. 5. Each alternative method is broadly formulated by specifying the inputs, outputs and procedures to be used. Both manual and computer-based procedures are described. 6. How each method will meet the goal is examined. 7. Next the feasibility of implementing each method is examined. 8. A method must be technically, operationally and economically feasible. 9. Technical feasibility examines whether technology is available to

carry out the

project. 10. Operational feasibility examines whether the proposed method can fit in with existing operations or is easy to operate with a modified system. 11. Economic feasibility examines whether the returns (in terms of benefits from the project) are commensurate with the cost of the project. 12. It is necessary to examine both tangible and intangible benefits of each alternative solution before picking a solution.

13. At the end of feasibility analysis, a document consisting of an executive summary on 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 benefits which will accrue by using the system. 15. The detailed proposal will have the following items: (i)

An introduction with outline of proposal

(ii)

A DFD of existing system

(iii)

A modified DFD of proposed system

(iv)

Alternative solutions

(v)

Any new equipment to be installed

(vi)

Cost/Benefit analysis

(vii)

New procedures to be adopted with responsibility assigned to persons

(viii) Any anticipated problems (ix)

Implementation plan with time schedules

QUESTION BANK 4

4.1

When are the goals of a project specified?

4.2

How are goals determined?

4.3

What should be the characteristics of goals?

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.6

Is it essential to use computers in all information systems?

4.7

Distinguish between technical, operational and economic feasibility.

4.8

What do you understand by the term feasibility study of a solution?

4.9

Give an example of a solution which is technically feasible, but not operationally feasible.

4.10

Give an example of a technically feasible solution which is not economically feasible.

4.11

Give an example of an operationally feasible solution which is not economically feasible.

4.12

Is it essential that an operationally feasible solution should be technically feasible? Discuss with examples.

4.13

What is the difference between tangible and intangible benefits?

4.14

Give examples of tangible and intangible benefits.

4.15

For the problem of periodical information system (Exercise 4.23 below), specify

tangible and intangible benefits. 4.16

What is meant by cost-benefit analysis?

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%, what is the pay back period of the investment?

4.18

How does inflation affect pay back period?

4.19

Is it essential to have tangible benefits to justify an information system? If you answer is no, justify your answer by giving an example.

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

this project if your criterion is cost/benefit? 4.21

A manager states the following as the goals of a production planning system: 1. Reduce stock of semi-finished products. 2. Provide better information for the production planning. 3. Prevent overproduction. How would you quantify the goals?

How would you obtain sub goals and

quantify them if appropriate? 4.22

A university administrator calls a systems analyst to improve the administration of sponsored research projects. The main problems are delay in obtaining latest financial position to project coordinators,

reconciliation of advances given to

coordinators, prompt demands not sent to sponsors to collect promised

grants

and lack of information to answer following questions: Which areas of research get maximum grants? Which agency aids which type of projects? What trends can be seen in the nature of grants? Now: 1. Classify the above problems into missing functions, unsatisfactory performance and excessive cost of operation. 2. How would you get goals to meet the deficiencies? 3. How would you quantify them? 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 quickly, it may not be possible to get the replacement. Periodicals have

to

be

ordered at different times during the year and subscriptions renewed in time. Late payment of subscription may lead to non-availability of earlier issues or paying 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. 2. Quantify these goals. 3. Suggest alternative means of achieving the goals specified by you.

4.24

What operational, tactical, and strategic information should be provided by the mess billing system mentioned in the text? (case study).

4.25

When is a detailed system proposal prepared. What are the contents of a system proposal?

MODULE 4

CASE STUDY – System Proposal 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.1 Forecasting of stores requirements not done. 1.2 Purchases not consolidated. 1.3 Daily rate calculation not updated frequently. 1.4 Menu not planned for balanced nutrition and low cost. 2. Unsatisfactory performance. 2.1 Billing not accurate and prompt. 2.2 Student bills not itemized. 2.3 Stores issues to cooks not systematic. 2.4 Payments to vendors not prompt. 2.5 Large variations in mess bills every month. 3. Excessive cost of operations due to the following: 3.1 Unpaid long outstanding bills from students. 3.2 Extras and rebates not reflected in stores issues. 3.3 Frequent unplanned visits to city to buy out-of-stock items.

3.4 High transport cost (small purchases at high cost) due to not consolidating stores requirements. These deficiencies are to be removed in the proposed information system. Goals of the proposed system. The main quantified goals and the sub-goals of the proposed system are as given below: Main goal M1

Send the bills to students within 5 days of the end of the month.

Sub-goals S1.1

Itemize bills indicating extras and rebates with dates.

S1.2

Ensure less than 5% variation of bills from month to month.

S1.3 Bring to the attention of the Chief Warden the bills which are not paid within 10 days of issue. S1.4 Update daily rate. Calculate bills every day. The main goals and sub-goals to remove deficiencies 1.1, 1.2, 2.3, 2.4 and 3.2-3.4 (mentioned above) are given below: Main goal M2 Control inventory of items and issues to cooks so as to bring down mess bill by 10%. Sub-goals S2.1 Ensure payment to vendors within five days of supply of items. S2.2 Make sure that at most four trips per month are made to the town for purchase and consequently transport cost is less than 1% of item cost. 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. Goals to add function 1.4. Main Goals M3.1 Balanced menu to meet nutritional requirements. M3.2 Cost of food not to exceed current cost. Sub-goal S3.1

Randomize menu.

Alternative solutions examined. Three alternative solutions were examined. These are given below: Solution A: Improve the current manual system by improving procedures. Solution B: Use a single PC in the hostel office Solution C: Use three small client computers in the mess, stores and accounts office and connect to a server in the hostel office. Comparison of Solutions: Solution A is feasible but is not scalable. In other words if the number of students increase the system will be difficult to implement. It requires meticulous attention to details by clerks. It is thus rejected. Solution C is very expensive as it needs four computers. It does provide on-line updates but this is not necessary in this problem. Selected solution. Solution B is selected as it is technically and operationally feasible. The cost/benefit of Solution B to assess economic feasibility is given below: 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 XP Office 2000, anti virus and Turbo C) = Rs.70,000. 2. Cost of space (nil). No extra space allocated. 3. Cost of systems analysts/Programmers/Consultants for 3 months = Rs.60,000/4. Recurring costs:: Stationery cost, floppy cost, Maintenance/Electricity = Rs.2000/- per month). 5.

One time cost = Rs.1,30,000/-

Benefits (Direct savings) 1. Savings per month due to inventory reduction and wastage = 5% of mess bill of 400 students = 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). 2. Savings in transport cost (estimate) Rs.800 per month. 3. Savings due to early payment to vendors = 1.2% of total billing to vendors =37.5 * 400 * 30 * 0.012 = Rs.5400/- per month (Rs.37.50 per day is assumed to be material cost in mess bill) 4. Savings due to better collection (40 defaulting students, 1% interest per month) = 40 * 1350 * 0.01 = Rs.540 per month

Intangible benefits 1. Student satisfaction due to itemized bills and less variation. 2. Better menu planning Total benefits = Rs.33740 per month Recurring cost = Rs.2000 per month Net benefit per month = Rs.31,740 Total capital cost = Rs.1,30,000/New equipment to be installed. PC and printer with the following features: Hardware IBM compatible PC 256 MB main memory 1.2MB floppy drive 40 GB hard disk 15" colour monitor 132 character 80 cps dot printer Software

Windows XP Operating System MS Office 2000 antivirus software Turbo C

Infrastructure

500 VA, Uninterrupted Power Supply Need a dust-free room to locate PC

Benefits expected. (These were as given earlier) Cost of the system. As calculated earlier, the cost of the new system will be

Capital cost hardware system software = Rs. 70,000 System analysis/design cost = Rs.60,000 Recurring cost = Rs. 2000 per month New procedures to be implemented. Using simple pay back method and assuming 1% interest per month we obtain the Table 4.1 Table 4.1 Cost-benefit –Present value method Month

Cost

Net Benefit

0 1 2 3 4 5

1,30,000

31740 31740 31740 31740 31740

Present Value of benefit 31426 31115 30806 30502 30200

Cumulative Present Value 31426 62541 93347 123849 154049

We see that the cumulative benefit exceeds cost of the system by the fifth month. Thus we conclude that the proposed system is economically beneficial. The subsystems involved in this solution are now described. (i)

Billing subsystem. An extras/rebates register will be maintained in the mess 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 per rules. The data entered is used

by a program to create a summary statement giving expected number of meals to be prepared 48 hours from 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. (ii)

Subsystems in billing system. Subsystem for finding meals to be cooked. INPUT: Extras/rebate requests of each student each day. PROCEDURE •

Check each input record to see if rebate is admissible and extras are correct.

• •

Enter admissible rebates and extras in student billing file. Find number of meals to be cooked two days from now. Print note to mess manger.

OUTPUT: Note to mess manager giving number of members and meals to be cooked 48 hours from now. (This subsystem runs daily on the PC) (iii)

Subsystem for mess bill calculation. INPUT: Items issued each day (perishable and non-perishable) PROCEDURE: • From items issued each day find total expenses each day. • Accumulate daily expense and add fixed overhead (salaries etc.) • Using number of members calculate up-to-date daily rate. • Using student billing information file an expense file, calculate the itemized bill for each student at the end of the month.

• Enter in student billing file. OUTPUT: Itemized bills to students. (Updating daily rate is run each day whereas student billing system is run once a month). (iv)

Subsystem for unpaid bills INPUT: Payments information. PROCEDURE • Enter all payments in student billing file. • Five days after last date for payment, examine this file and create a list of students with unpaid bills. OUTPUT: List of overdue bills sent to Chief Warden (This system runs once a month) 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. (i)

System for stores issue and control

Subsystem for stores issues to cooks INPUT • Menu for (today's date + 2 i.e., if today's date is 20.04.03 menu is given for 22.04.03). • Number of meal to be cooked for (today's date + 2). PROCEDURE: Using inputs find items to be issued on (today's date + 2). OUTPUT: Items to be issued on (today's date + 2) sent to mess manager.

Subsystem for inventory control INPUT: Daily use of stores items, perishables and vendor supplies. PROCEDURE •

Based on past month's total consumption of each item, estimate consumption of current month. Add 2 days consumption as buffer.



Work out minimum amount (=4 days needs) of all critical items.



Decide on order quantities, and place orders.



When goods come in, check in order file and update inventory if items accepted.



Send the cheques to vendors on item acceptance.



Update stores inventory after each issue.



When critical items go below minimum level inform mess manager

OUTPUTS •

Orders to vendors



Cheques to vendors



Low item stock message to mess manager

(This system is run once a day) This system satisfies main goal M2 and sub-goals S2.1-S2.4. ii. System for menu planning INPUT • No. of items in menu • Alternative for each item • Cost of each item

• Maximum cost. PROCEDURE • Reduce total cost by trying alternative items in menu. • Try an optimization package such as Linear Programming. • Rank menus by cost and keep 14 different menus for each meal. • Randomize menus each week. OUTPUT: Balanced menu at reduced cost. (This system is run once a month) 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 hour back up for the uninterrupted power supply system. 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).

Table 4.2 Implementation Plan Start Time

0 0+3 week 0+6 week 0+12 week

Time Schedule in weeks Billing system Stores issue system Inventory system Menu planning

Design

Implement

Test

3

3

1

Parallel Run Manual System 4

4

3

2

3

4

3

2

3

5

3

2

2

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 expectations of the management.

Annoted References 1. This module is based on Chapter 6, “Feasibility Analysis”, of the book Analysis and Design of Information Systems by V.Rajaraman, Prentice Hall of India. Parts of the the book have been used in case studies. 2. J.E.Kandall and J.E.Kandall, Systems Analysis and Design, 5th Edition, Pearson Education (Asia) 2003. Part of Chapter 3 pp.55-63 deal with feasibility analysis. It is reasonably well treated but does not have any quantitative examples. 3. R.Schultheis and Mary Summer, Management Information Systems, Tata McGraw Hill, 1999. Very short treatment of feasibility analysis as part of system Life Cycle (pp.544-545). 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. 5. K.C.Laudon and J.P.Laudon, Management Information Systems, Pearson Education Asia, New Delhi, 2004. Very brief discussion (one para only) on p.390) 6. J.A.Hoffer, J.F.George and J.S.Valacich, Modern Systems Analysis and Design, Pearson Education Asia, New Delhi 2002. Has a good discussion of feasibility. Study on pp.168 to 181. Besides Technical, operational and Economic feasibility they also include other parameters which are schedule, legal/contractual and political feasibility which arise when one tries to develop a system.

MODULE 5

DATA FLOW DIAGRAMS 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 5.1.1 In a DFD external entities are represented by a (a) rectangle (b) ellipse (c) diamond shaped box (d) circle 5.1.2 A data flow can (a) only emanate from an external entity (b) only terminate in an external entity (c) may emanate and terminate in an external entity (d) may either emanate or terminate in an external entity but not both 5.1.3 A rectangle in a DFD represents (a) a process (b) a data store (c) an external entity (d) an input unit 5.1.4 External Entities may be a (a) source of input data only (b) source of input data or destination of results (c) destination of results only (d) repository of data

5.1.5 By an external entity we mean a (a) unit outside the system being designed which can be controlled by an analyst (b) unit outside the system whose behavior is independent of the system being designed (c) a unit external to the system being designed (d) a unit which is not part of a DFD 5.1.6 A data store in a DFD represents (a) a sequential file (b) a disk store (c) a repository of data (d) a random access memory 5.1.7 A data flow can (a) only enter a data store (b) only leave a data store (c) enter or leave a data store (d) either enter or leave a data store but not both 5.1.8 A data cannot flow between a store and (i) a store (ii) a process (iii) an external entity (a) i and iii (b) i and ii (c) ii and iii (d) ii 5.1.9 Data cannot flow between two data stores because (a) it is not allowed in a DFD (b) a data store is a passive repository of data (c) data can get corrupted (d) they will get merged 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

5.1.11 The following portion of a DFD is not correct as (a) there is no output data flow from the process (b) there are three data flow inputs to the process (c) there is no external entity (d) there is no data store

Quantity Cost/unit

4.0 Billing Process

Discount

5.1.12 The following portion of a DFD is not correct as (a) there are many data flows out of the process (b) there are no input data flows to the process (c) the output does not go to an external entity (d) there is no data store Out of stock Order to vendor

4.0 Billing Proces

Too much stock

5.1.13 The following portion of DFD is wrong as (a) it has only one input (b) it writes and reads from the same data store (c) the process name is missing (d) output data flows to two external entities

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 5.1.15 The following portion of a DFD is incorrect because (a) the processes do not refer to a data store (b) there is a loop between the two processes (c) the processes are not specified correctly (d) this structure is disallowed in a DFD

Gross pay

Employee record 1.0 Find next pay

2.0 Calculate tax Get next record

Deductions 5.1.16 (i) (ii) (iii) (iv)

Data flow in a DFD must have an arrow showing direction of flow of data a meaningful name a label such as: xyz no arrows as they are confusing (a) i and iii (b) ii and iv (c) iii and iv (d) i and ii

Tax deduction statement

LEARNING UNIT 2

5.2.1 A context diagram (a) describes the context of a system (b) is a DFD which gives an overview of the system (c) is a detailed description of a system (d) is not used in drawing a detailed DFD 5.2.2 A context diagram is used (a) as the first step in developing a detailed DFD of a system (b) in systems analysis of very complex systems (c) as an aid to system design (d) as an aid to programmers 5.2.3 By levelling a DFD we mean (a) splitting it into different levels (b) make its structure uniform (c) expanding a process into one with more sub-processes giving more detail (d) summarizing a DFD to specify only the essentials 5.2.4 A DFD is normally levelled as (a) it is a good idea in design (b) it is recommended by many experts (c) it is easy to do it (e) it is easier to read and understand a number of smaller DFDs than one large DFD 5.2.5 A DFD is levelled by (a) examining complex processes in a DFD and expanding them into new DFDs with more processes which are easy to understand (b) merging a number of simple processes in a DFD into a complex processes in a new DFD (c) expanding the functions of a number of external entities into simpler functions (d) splitting a number of data flows into simpler data flows 5.2.6 When a DFD is levelled no new (a) data stores may appear (b) external entities may appear (c) processes may appear (d) data flows may appear

5.2.7 When a DFD is levelled (a) new external entities may be required (b) no new processes are allowed (c) no new data flows are allowed (d) new data stores may be necessary and are allowed 5.2.8 When a DFD is levelled it is a good idea not to (a) be concerned about the number of new processes at the next level (b) allow more than 5 to 10 new processes at the next level for each expanded process (c) allow new data stores at the next level (d) allow any new processes at the next level 5.2.9 When a process is expanded during levelling (a) data flows entering it are replaced (b) all data stores used by it are replaced (c) all data flows entering it must also enter the levelled DFD (d) all external entities used by it are replaced

LEARNING UNIT 3 5.3.1 Before developing a logical DFD it is a good idea to a) develop a physical DFD b) develop a system flow chart c) determine the contents of all data stores d) find out user’s preferences 5.3.2 A physical DFD specifies (a) what processes will be used (b) who generates data and who processes it (c) what each person in an organization does (d) which data will be generated 5.3.3 A physical DFD (a) has no means of showing material flow (b) does not concern itself with material flow (c) can show only stored material (d) can show the flow of material

KEY TO OBJECTIVE QUESTIONS 5.1.1 5.1.7 5.1.13 5.2.3 5.2.9

a c c c c

5.1.2 5.1.8 5.1.14 5.2.4 5.3.1

c a a d a

5.1.3 5.1.9 5.1.15 5.2.5 5.3.2

c d b a b

5.1.4 5.1.10 5.1.16 5.2.6 5.3.3

b d d b d

5.1.5 5.1.11 5.2.1 5.2.7

c a b d

5.1.6 5.1.12 5.2.2 5.2.8

c b a b

MODULE 5

DATA FLOW DIAGRAMS Learning Units 5.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 5.2 Describing systems with DFD & Levelling DFDs 5.3 Logical & Physical DFDs

System Analysis And Design

©

V. Rajaraman

LEARNING GOALS

In this module we will learn 1. What are Data Flow Diagrams (DFDs)? 2. Why they are useful? 3. How are they developed? 4. How to level DFDs? 5. Good style conventions in developing DFDs 6. Difference between Logical and Physical DFDs 7. Tools available to draw DFDs

Systems Analysis And Design

© V. Rajaraman

1 of 26

MOTIVATION WHY DFD ? Provides an overview of -What data a system processes -What transformations are performed -What data are stored -What results are produced and where they flow

Systems Analysis And Design

© V. Rajaraman

2 of 26

MOTIVATION WHY DFD ? Graphical nature makes it a good communication tool between -User and analyst -Analyst and System designer Structure of DFD allows starting from a broad overview and expand it to a hierarchy of detailed diagrams

Systems Analysis And Design

© V. Rajaraman

3 of 26

DATA FLOW DIAGRAMS WHAT ARE DATA FLOW DIAGRAMS? DFDs models the system by depicting ƒ External entities from which the data flows and where results terminate ƒ Processes which transform data flows ƒ Data stores from which the data are read or into which data are written by the processes. 5.1.1

Systems Analysis And Design

© V. Rajaraman

4 of 26

SYMBOLS USED IN DFD PROCESS Stores demand note

1. STORES Issue Advice

Delivery slip

ƒ A circle represents a process ƒ Straight lines with incoming arrows are input data flows ƒ Straight lines with outgoing arrows are output data flows ƒ Processes are given serial numbers for easy reference ƒ Labels are assigned to Data flow.These aid documentation

5.1.2

Systems Analysis And Design

© V. Rajaraman

5 of 26

SYMBOLS USED IN DFD EXTERNAL ENTITIES VENDOR

Invoice

Order Customer Bill

ƒ A Rectangle represents an external entity ƒ They either supply data or receive data ƒ They do not process data

5.1.3

Systems Analysis And Design

© V. Rajaraman

6 of 26

SYMBOLS USED IN DFD DATA STORES

Inventory

Writing

Reading

ƒ A Data Store is a repository of data ƒ Data can be written into the data store This is depicted by an incoming arrow ƒ Data can be read from a data store This is depicted by an outgoing arrow ƒ External entity cannot read or write to the data store ƒ Two data stores cannot be connected by a data flow 5.1.4

Systems Analysis And Design

© V. Rajaraman

7 of 26

RULES OF DATA FLOW • Data can flow from -external entity to process -process to external entity -process to store and back -process to process • Data cannot flow from -external entity to external entity -external entity to store -store to external entity -store to store 5.1.5

Systems Analysis And Design

© V. Rajaraman

8 of 26

DATA FLOW DIAGRAMS An alternate notation is often used A Process

A Data store

Label

3 Store Issue

DS1

Name

Inventory

Name Label

5.1.6

Systems Analysis And Design

© V. Rajaraman

9 of 26

GOOD STYLE IN DRAWING DFD ƒ Use meaningful names for data flows, processes and data stores. ƒ Use top down development starting from context diagram and successively 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 5.1.7

Systems Analysis And Design

© V. Rajaraman

10 of 26

DESCRIBING A SYSTEM WITH A DFD

ƒ An entire system is represented by one DFD which gives the system’s overview ƒ It is called a context diagram ƒ It gives little detail & is also known as the top level DFD ƒ Context diagram of mess management is shown in the next transparency

5.2.1

Systems Analysis And Design

© V. Rajaraman

11 of 26

CONTEXT DIAGRAM OF MESS MANAGEMENT SYSTEM Extras Note

Students

Vendors

Requisitions

Payments Payments Bills

Perishable Items

Supplies

Mess Management Daily rate System

Mess secretary

Menu Item needed Each day

Mess manager

Overdue Bills Overdue Payments

Chief warden

• Observe this diagram gives very little detail 5.2.2

Systems Analysis And Design

© V. Rajaraman

12 of 26

LEVELLING DFD ƒ A context diagram gives an overview ƒ It should be split into major processes which give greater detail. ƒ Each major process is further split to give more detail. ƒ Each major process is further split to give more detail

5.2.3

Systems Analysis And Design

© V. Rajaraman

13 of 26

WHY LEVEL DFD? ƒ If a DFD is too detailed it will have too many data flows and will be large and difficult to understand ƒ Start from a broad overview. Expand to details - Idea similar to using procedures and linking these with a main program ƒ Each DFD must deal with one aspect of a big system

5.2.4

Systems Analysis And Design

© V. Rajaraman

14 of 26

EXPANDED DFD FOR HOSTEL MESS MANAGEMENT Mess Secretary

Students

Update daily rate

Payments Itemized bills at end of month

Chief Warden

1 Billing system

Unpaid bills

Items used each day

Extras/Rebates Student billing Information + bills

Expenses No of meals (today +3)

Mess manager

• Going to next process (Continued in next slide) 5.2.5

Systems Analysis And Design

© V. Rajaraman

15 of 26

EXPANDED DFD FOR HOSTEL MESS MANAGEMENT •Continued Vendor supplies

Vendors Order nonperishable

2 Stores issue and Control system

Low stock (today+2) Items to be issued (today +2) Items used today

Mess Manager Menu (today +2)

Vendor data Stores inventory Perishable order

Orders (perishable)

5.2.6

Order data

Mess Secretary

3 Vegetables and perishable Perishable requisition ordering

Systems Analysis And Design

Vendor data (perishable)

© V. Rajaraman

16 of 26

EXPANDED DFD-BILLING SYSTEM Payments

Itemized bills Mess Secretary

1.2 Calculate Student’s bills

Chief warden Students data

Daily rate average (upto date)

1.4 Find no Of meals to cook

Students data

5.2.7

1.3 Reconcile payments

Students data

Extras/Rebates

No of meals (today + 2)

Bills

Unpaid bills

1.1 Calculate Daily rate

Mess Manager

Expenses data Items rate data

• Observe numbering of processes Systems Analysis And Design © V. Rajaraman

17 of 26

LEVELLING RULES ƒ If process p is expanded, the process at the next level are labeled as p.1,p.2 etc. ƒ All data flow entering or leaving p must also enter or leave its expanded version. ƒ Expanded DFD may have data stores ƒ No external entity can appear in expanded DFD ƒ Keep the number of processes at each level less than 7.

5.2.8

Systems Analysis And Design

© V. Rajaraman

18 of 26

ILLEGAL CONSTRUCTS IN DFD ƒ No loops are allowed in DFD ƒ A process cannot be a pure decision Actual rate > Standard rate

Actual daily rate

Compare Standard daily rate

Actual rate <= Standard rate

ƒ A single data flow should not be split into many flows with different labels ƒ No data flow allowed between data stores 5.2.9

Systems Analysis And Design

© V. Rajaraman

19 of 26

ILLEGAL CONSTRUCTS IN DFD

Record

Get students extra/rebates record Ask for next record

Calculate Bill

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) Mess manager

Items to be used on (today +2)

No of meals to be cooked (today +2)

Items issued Low message stock Order for items

2 Stores issue and control system

Menu for (Today +2)

Mess secretary

Vendor supplies Order

Vendor

Stores inventory

Vendor

Stores issue control system process 5.2.11 Systems Analysis And Design ©

V. Rajaraman

21 of 26

LEVELLING EXAMPLES

2.1 Inventory update And low stock warning

Mess manager Items used today

Low stock item

2.2 Create order for vendor

Items needed From 2.3 Vendor

Vendor supplies

Stores inventory

Order

Vendor data

Order to vendor

Mess secretary

2.3 Calculate Items needed

Menu (today +2)

2.4 Check Item availability

Items needed No of meals to (today +2)

5.2.11 Systems Analysis And Design ©

Low stock items (today+2) Stores inventory

V. Rajaraman

22 of 26

LEVELLING EXAMPLES Top Level process

Ext A

Ext A

1

Ext B

2

4

F1

F4

Ext B

3 Process 1 Ext A

1.1

1.2

Process 2 1.4

2.1

2.2

2.3

F1 1.3

3.1

3.2

3.4

Ext B

4.3

4.1

4.2

F4 3.3

5.2.12 Systems Analysis And Design ©

V. Rajaraman

23 of 26

LOGICAL AND PHYSICAL DFD ƒ DFD’S considered so far are called logical DFDs ƒ A physical DFD is similar to a document flow diagram. ƒ It specifies who does the operations specified by the logical DFD ƒ Physical DFD may depict physical movements of the goods ƒ Physical DFDs can be drawn during fact gathering phase of a life cycle 5.3.1

Systems Analysis And Design

© V. Rajaraman

24 of 26

PHYSICAL DFD FOR ENCASHING CHEQUE Cash

Token

Clerk Customer

Cheque Token

Verify A/C Signature Update Balance

Cashier Verify Token

Cheque with Take Signature Token number Store cheques

Bad Cheque

Entry in Day Book

Customer Accounts

5.3.2

Systems Analysis And Design

© V. Rajaraman

25 of 26

LOGICAL DFD FOR CHEQUE ENCASHMENT

Retrieve Customer Record

Cheque

Cheque

Customer accounts

Check Cheque with Store Balance, Token Token no Issue & cheques token Token Slip Or cheque

Search Update & match Daily Cheque with cash book token token

Customer Token Slip Cash

5.3.3

Cheque store With token no.

Systems Analysis And Design

Day book

© V. Rajaraman

26 of 26

MODULE 5 DATA FLOW DIAGRAMS

Contents

1. MOTIVATION AND LEARNING GOALS

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 DFD provides an overview of what data a system processes, what transformations are performed, what data are stored, what results are produced and where they flow. Graphical nature makes it a good communication tool between -User and analyst -Analyst and System designer Structure of DFD allows starting from a broad overview and expands it to a hierarchy of detailed diagrams LEARNING GOALS At the end of this module you will know

1.What are Data Flow Diagrams (DFDs)? 2.Why they are useful? 3.How are they developed? 4.How to level DFDs? 5.Good style conventions in developing DFDs 6.Difference between Logical and Physical DFDs 7.Tools available to draw DFDs

LEARNING UNIT 1 Developing Data Flow Diagrams(DFD)

DATA FLOW DIAGRAMS DFDs models the system by depicting external entities from which the data flows and where results terminate, processes which transform data flows, data stores from which the data are read or into which data are written by the processes.

SYMBOLS USED IN DFD PROCESS

Stores demand note

1. STORES

Issue Advice

Delivery slip

A circle represents a process Straight lines with incoming arrows are input data flows Straight lines with outgoing arrows are output data flows Processes are given serial numbers for easy reference Labels are assigned to Data flow. These aid documentation

EXTERNAL ENTITIES Invoice

Order

VENDOR

Customer

Bill

A Rectangle represents an external entity. They either supply data or receive data. They do not process data

DATA STORES

Inventory

Writing

Reading

A Data Store is a repository of data Data can be written into the data store and this is depicted by an incoming arrow. Data can be read from a data store and this is depicted by an outgoing arrow External entity cannot read or write to the data store. Two data stores cannot be connected by a data flow

RULES OF DATA FLOW •Data can flow from -external entity to process -process to external entity

-process to store and back -process to process • Data cannot flow from -external entity to external entity -external entity to store -store to external entity -store to store

GOOD STYLE IN DRAWING DFD Use meaningful names for data flows, processes and data stores. Use top down development starting from context diagram and successively 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 Describing systems with DFD & Levelling DFDs

An entire system is represented by one DFD which gives the system’s overview . It is called a context diagram. It gives little detail & is also known as the top level DFD.

Context diagram of mess management is shown

Extras Note Students

Vendors

Requisitions

Payments Payments

Bills

Supplies Mess Manage ment

Daily rate

Mess Secretary

Menu

Perishable Items

Item needed Each day

Mess manager

Overdue Bills Overdue Payments

Chief warden

Note: This diagram gives very little detail

LEVELLING DFD A context diagram gives an overview, it should be split into major processes which give greater detail. Each major process is further split to give more detail. Each major process is further split to give more detail

WHY LEVEL 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

EXPANDED DFD FOR HOSTEL MESS MANAGEMENT

Mess Secretary

Students

Payments

Update daily rate 1 Billing

Itemized bills at end of month

Chief Warden

Unpaid bills

Items used each day

Extras/Rebates Student billing Information + bills

Expenses

Mess manager

No of meals (today +3)

•Going to next process (Continued in next page) Continued

Vendor supplies Vendors Order nonperishable

2 Stores issue and Control system

Low stock (today+2)

Items to be issued (today +2)

Items used today

Mess Manager

Menu (today +2) Vendor data Stores inventory

Perishable order

Order data

3 Perishable ordering

Orders (perishable)

Mess Secretary

Vegetables and perishable requisition

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. Expanded DFD may have data stores

No new external entity can appear in expanded DFD Keep the number of processes at each level less than 7.

ILLEGAL CONSTRUCTS IN DFD No loops are allowed in DFD A process cannot be a pure decision

Actual rate > Standard rate

Actual daily rate Compare Standard daily rate

Actual rate <= Standard rate

A single data flow should not be split into many flows with different labels No data flow allowed between data stores Record

Get students extra/rebates record

Calculate Bill Ask for next record

Extra/rebate store

Above DFD not correct as loop is formed

LEVELLING EXAMPLES

Ext A

Ext A

Ext B

Top Level process

1

2

4

F1

F4

Ext B

3 Process 1 Ext A

1.1

1.2

Process 2 1.4

2.1

2.2

2.3

F1 1.3

3.1

3.2

Ext B

3.4

LEARNING UNIT 3 3.3

4.3

4.1

F4

Logical & Physical DFDs

LOGICAL AND PHYSICAL DFD DFD’S considered so far are called logical DFDs. A physical DFD is similar to a document flow diagram. It specifies who does the operations specified by the logical DFD. Physical DFD may depict physical movements of the goods. Physical DFDs can be drawn during fact gathering phase of a life cycle.

PHYSICAL DFD FOR ENCASHING CHEQUE

Cash

Token Clerk Verify A/C Signature Update Balance

Cashier Verify Token Take Signature

4.2

Cheque

Customer

Cheque with Token number

Token

Entry in Day Book

Store cheques Bad Cheque Customer Accounts

LOGICAL DFD FOR CHEQUE ENCASHMENT

Retrieve Customer Record

Cheque

Check Balance, Issue token

Cheque with Token

Store Token no & cheques

Token Slip Or cheque

Cheque store With token no.

Customer accounts

Cheque

Search & match token

Customer

Token Slip Cash

Cheque with token

Update Daily cash book

Day book

REFERENCES 1. This module is based on Chapter 7 of Analysis and Design of information systems, V.Rajaraman, Prentice Hall of India, New Delhi, 2002. 2. Ian Sommerville, “Software Engineering”, 5th Edition, AddisonWesley, 1996, has a brief discussion of Data Flow Models on pp.101 to 103. 3. T.DeMarco, “Structured Analysis and System Specification”, Yourdon Press, 1978. this book written by the original developer of DFD modeling is a well written book. It is a good reference book. 4. E.Yourdon, “Modern Structured Analysis”, Prentice Hall of India, New Delhi, 1996. Chapter 9 (pp.139 to 187) is a good treatment of Data Flow Diagrams. All the topics covered in this module are discussed in this chapter. 5. Hoffer, J.A., George, J.F. and Valacich J.S., “Modern Systems Analysis and Design”, 3rd Edition, Pearson Education Asia, New Delhi, 2002. Chapter 8 (pp.241 to 271) has a good treatment of

DFDs with a running example of a quick service restaurant. Different types of DFDs and logical checking of DFDs are discussed well. 6. K.E.Kendall and J.E.Kendall, “Systems Analysis and Design”, 5th Edition, Pearson Eduation Asia, New Delhi, 2003. Chapter 9 is devoted to Data Flow Diagrams (pp.241 to 285). Has a number of problems at the end of the chapter which are quite interesting.

System Analysis and Design / Tools for Systems Analysts

5.1.1

5.1.2

5.1.3

5.1.4

5.1.5

5.1.6

5.1.7

5.1.8

5.1.9

Multiple Choice Questions

In a DFD external entities are represented by a (a) rectangle (b) ellipse (c) diamond shaped box (d) circle A data flow can (a) only emanate from an external entity (b) only terminate in an external entity (c) may emanate and terminate in an external entity (d) may either emanate or terminate in an external entity but not both A rectangle in a DFD represents (a) a process (b) a data store (c) an external entity (d) an input unit External Entities may be a (a) source of input data only (b) source of input data or destination of results (c) destination of results only (d) repository of data By an external entity we mean a (a) unit outside the system being designed which can be controlled by an analyst (b) unit outside the system whose behavior is independent of the system being designed (c) a unit external to the system being designed (d) a unit which is not part of a DFD A data store in a DFD represents (a) a sequential file (b) a disk store (c) a repository of data (d) a random access memory A data flow can (a) only enter a data store (b) only leave a data store (c) enter or leave a data store (d) either enter or leave a data store but not both A data cannot flow between a store and (i) a store (ii) a process (iii) an external entity (a) i and iii (b) i and ii (c) ii and iii (d) ii Data cannot flow between two data stores because

V. Rajaraman/IISc. Bangalore

M5/V1/July 04/1

System Analysis and Design / Tools for Systems Analysts

(a) (b) (c) (d)

Multiple Choice Questions

it is not allowed in a DFD a data store is a passive repository of data data can get corrupted they will get merged

5.1.10 (a) (b) (c) (d)

Data cannot flow from an external entity to an external entity because it will get corrupted it is not allowed in DFD an external entity has no mechanism to read or write both are outside the context of the system

5.1.11 (a) (b) (c) (d)

The following portion of a DFD is not correct as there is no output data flow from the process there are three data flow inputs to the process there is no external entity there is no data store Quantity Cost/unit

4.0 Billing Process

Discount 5.1.12 (a) (b) (c) (d)

The following portion of a DFD is not correct as there are many data flows out of the process there are no input data flows to the process the output does not go to an external entity there is no data store Out of stock

Order to vendor

5.1.13 (a) (b) (c) (d)

4.0 Billing Proces

Too much stock

The following portion of DFD is wrong as it has only one input it writes and reads from the same data store the process name is missing output data flows to two external entities

V. Rajaraman/IISc. Bangalore

M5/V1/July 04/2

System Analysis and Design / Tools for Systems Analysts

bill

Multiple Choice Questions

Customer

Invoice

Supplier

Advice

Book Inventory 5.1.14 (a) (b) (c) (d)

The following process diagram in a DFD is incorrect because the process is a single decision the process is not specified correctly there are too many input data flows 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 5.1.15 (a) (b) (c) (d)

The following portion of a DFD is incorrect because the processes do not refer to a data store there is a loop between the two processes the processes are not specified correctly this structure is disallowed in a DFD

Gross pay

Employee record 1.0 Find next pay

2.0 Calculate tax Get next record

Deductions

Tax deduction statement

5.1.16 Data flow in a DFD must have (i) an arrow showing direction of flow of data (ii) a meaningful name (iii)a label such as: xyz (iv) no arrows as they are confusing

V. Rajaraman/IISc. Bangalore

M5/V1/July 04/3

System Analysis and Design / Tools for Systems Analysts

(a) (b) (c) (d) 5.2.1 (a) (b) (c) (d) 5.2.2 (a) (b) (c) (d) 5.2.3 (a) (b) (c) (d) 5.2.4 (a) (b) (c) (d) 5.2.5 (a) (b) (c) (d) 5.2.6 (a) (b) (c) (d) 5.2.7 (a) (b) (c) (d) 5.2.8 (a) (b)

Multiple Choice Questions

i and iii ii and iv iii and iv i and ii A context diagram describes the context of a system is a DFD which gives an overview of the system is a detailed description of a system is not used in drawing a detailed DFD A context diagram is used as the first step in developing a detailed DFD of a system in systems analysis of very complex systems as an aid to system design as an aid to programmers By levelling a DFD we mean splitting it into different levels make its structure uniform expanding a process into one with more sub-processes giving more detail summarizing a DFD to specify only the essentials A DFD is normally levelled as it is a good idea in design it is recommended by many experts it is easy to do it it is easier to read and understand a number of smaller DFDs than one large DFD A DFD is levelled by examining complex processes in a DFD and expanding them into new DFDs with more processes which are easy to understand merging a number of simple processes in a DFD into a complex processes in a new DFD expanding the functions of a number of external entities into simpler functions splitting a number of data flows into simpler data flows When a DFD is levelled no new data stores may appear external entities may appear processes may appear data flows may appear When a DFD is levelled new external entities may be required no new processes are allowed no new data flows are allowed new data stores may be necessary and are allowed When a DFD is levelled it is a good idea not to be concerned about the number of new processes at the next level allow more than 5 to 10 new processes at the next level for each expanded process

V. Rajaraman/IISc. Bangalore

M5/V1/July 04/4

System Analysis and Design / Tools for Systems Analysts

(c) (d) 5.2.9 (a) (b) (c) (d) 5.3.1 a) b) c) d) 5.3.2 (a) (b) (c) (d) 5.3.3 (a) (b) (c) (d)

Multiple Choice Questions

allow new data stores at the next level allow any new processes at the next level When a process is expanded during levelling data flows entering it are replaced all data stores used by it are replaced all data flows entering it must also enter the levelled DFD all external entities used by it are replaced Before developing a logical DFD it is a good idea to develop a physical DFD develop a system flow chart determine the contents of all data stores find out user’s preferences A physical DFD specifies what processes will be used who generates data and who processes it what each person in an organization does which data will be generated A physical DFD has no means of showing material flow does not concern itself with material flow can show only stored material can show the flow of material

V. Rajaraman/IISc. Bangalore

M5/V1/July 04/5

System Analysis and Design / Tools for Systems Analysts

Multiple Choice Questions

KEY TO OBJECTIVE QUESTIONS 5.1.1 5.1.7 5.1.13 5.2.3 5.2.9

a c c c c

5.1.2 5.1.8 5.1.14 5.2.4 5.3.1

c a a d a

V. Rajaraman/IISc. Bangalore

5.1.3 5.1.9 5.1.15 5.2.5 5.3.2

c d b a b

5.1.4 5.1.10 5.1.16 5.2.6 5.3.3

b d d b d

5.1.5 5.1.11 5.2.1 5.2.7

c a b d

5.1.6 5.1.12 5.2.2 5.2.8

c b a b

M5/V1/July 04/6

MODULE 5

DATA FLOW DIAGRAMS WORKED EXAMPLES 5.1 What is the main merit of DFD? The main merit of DFD is that it provides an overview of what data flows in a system, what transformations are done on the data, what files are used and where results flow. 5.2 What is the role of DFD as a documentation aid? It is a good documentation aid which is understood by both programmers and non-programmers (i.e., laypersons). As DFD specifies only what processes are performed and not how they are performed it is easily understood by a nonprogramming user. 5.3 What is a context diagram? A diagram giving an entire system’s data flows and processing with a single Process (circle) is called a context diagram. 5.4 What do you understand by levelling of DFD? A context diagram is expanded into a number of inter-related processes. Each process may be further expanded into a set of inter-connected sub processes. This procedure of expanding a DFD is known as levelling. 5.5 What is a physical DFD? A physical DFD specifies from where data flows and who processes the data and to whom the processed data is sent. 5.6 In what way is physical DFD useful? It is easy to develop during fact gathering stage of systems analysis. Such a physical DFD is easily understood by a lay user who can verify the DFD drawn by an analyst and tell whether such a DFD corresponds to a particular operation taking place in an organization. Physical DFD is the starting point for developing the logical DFD.

5.7 What are the mistakes in each of the DFDs of Fig. 5.7(a)–5.7(e)? Correct these mistakes.

Employee No 1 Compute Gross pay

Fig 5.7(a)

Gross pay

Hours worked

Leave granted

Fig 5.7(b) Employee

Application returned Leave application

1 Check if leave available &update

Fig 5.7(c)

1 Compute net pay

Gross pay

Store amount paid

Pay cheque

Net pay

Deductions

Employee

Net pay & deductions

Fig 5.7(d) a A

b 2 P2 c

B

d 3 P3

Fig 5.7(e)

e

1 P1

Roll No and student Marks Find out if pass or fail

C f

Pass

Fail

(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.2

What are the main merits of using a DFD?

5.3

What is the role of DFD as a documentation aid?

5.4

What is the difference between a source and a sink 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 "no", explain why.

5.7

What is a context diagram?

5.8

What do you understand by leveling of DFD?

5.9

What is the main difference between a flow chart and a DFD?

5.10 What do you understand by top down development of a DFD? 5.11 What is a physical DFD? 5.12 What is the difference between a physical and a logical DFD? 5.13 In what way is physical DFD useful? 5.14 Prepare physical and logical DFDs for the following activities: i.

Issuing out a book from the library

ii.

Returning a book to the library

iii.

Getting a ticket reserved for a train journey

iv.

Getting an item issued from a store

v.

Getting your mark-sheet from a University office.

5.15 Admission procedure in a University is as follows: An advertisement is issued giving essential qualifications for the course, the last date

V. Rajaraman/IISc. Bangalore

M5/V1/July 04/1

System Analysis and Design / Tools for Systems Analysts

Question Bank

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 corresponding to the above problem. 5.16 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 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 the computer-based system.

V. Rajaraman/IISc. Bangalore

M5/V1/July 04/2

System Analysis and Design / Tools for Systems Analysts

Pointers

Annotated References 1. Ian Sommerville, “Software Engineering”, 5th Edition, Addison-Wesley, 1996, has a brief discussion of Data Flow Models on pp.101 to 103. 2. T.DeMarco, “Structured Analysis and System Specification”, Yourdon Press, 1978. this book written by the original developer of DFD modeling is a well written book. It is a good reference book. 3. E.Yourdon, “Modern Structured Analysis”, Prentice Hall of India, New Delhi, 1996. Chapter 9 (pp.139 to 187) is a good treatment of Data Flow Diagrams. All the topics covered in this module are discussed in this chapter. 4. Hoffer, J.A., George, J.F. and Valacich J.S., “Modern Systems Analysis and Design”, 3rd Edition, Pearson Education Asia, New Delhi, 2002. Chapter 8 (pp.241 to 271) has a good treatment of DFDs with a running example of a quick service restaurant. Different types of DFDs and logical checking of DFDs are discussed well. 5. K.E.Kendall and J.E.Kendall, “Systems Analysis and Design”, 5th Edition, Pearson Eduation Asia, New Delhi, 2003. Chapter 9 is devoted to Data Flow Diagrams (pp.241 to 285). Has a number of problems at the end of the chapter which are quite interesting.

V. Rajaraman/IISc. Bangalore

M5/V1/July 04/1

SUMMARY OF MODULE 5 1.

Data flow diagrams (DFDs) are used to depict the flow and transformation of data in an information processing system.

2.

DFDs give an overview to an analyst specifying where data originates, how it is processed and where the results go.

3.

DFDs act as a graphical communication aid between a user and an analyst. It is also useful as a communication aid between an analyst and a system designer.

4.

The procedure to develop a DFD starts with one DFD giving an overview of the system to be de designed. This is called a context diagram.

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 more and more detail is known as levelling.

6.

Some style convention is developing DFDs are: i.

Data flows, processes and data store must have meaningful names.

ii.

A DFD should not have more than 7-9 processes.

iii.

A DFD should not have any loops, crossing lines or pure decisions as processes.

iv. 7.

Data should be conserved in a DFD.

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 data flows between persons performing operations.

QUESTION BANK MODULE 5 5.1

What is the difference between an external entity and a process in a DFD?

5.2

What are the main merits of using a DFD?

5.3

What is the role of DFD as a documentation aid?

5.4

What is the difference between a source and a sink 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 "no", explain why.

5.7

What is a context diagram?

5.8

What do you understand by levelling of DFD?

5.9

What is the main difference between a flow chart and a DFD?

5.10

What do you understand by top down development of a DFD?

5.11

What is a physical DFD?

5.12

What is the difference between a physical and a logical DFD?

5.13

In what way is physical DFD useful?

5.14

Prepare physical and logical DFDs for the following activities:

5.15

i.

Issuing out a book from the library

ii.

Returning a book to the library

iii.

Getting a ticket reserved for a train journey

iv.

Getting an item issued from a store

v.

Getting your marksheet from a University office.

Admission procedure in a University is as follows:

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 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. Give physical and logical DFDs corresponding to the above problem. 5.16

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

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 the computer-based system.

Annotated References 1. Ian Sommerville, “Software Engineering”, 5th Edition, Addison-Wesley, 1996, has a brief discussion of Data Flow Models on pp.101 to 103. 2. T.DeMarco, “Structured Analysis and System Specification”, Yourdon Press, 1978. this book written by the original developer of DFD modeling is a well written book. It is a good reference book. 3. E.Yourdon, “Modern Structured Analysis”, Prentice Hall of India, New Delhi, 1996. Chapter 9 (pp.139 to 187) is a good treatment of Data Flow Diagrams. All the topics covered in this module are discussed in this chapter. 4. Hoffer, J.A., George, J.F. and Valacich J.S., “Modern Systems Analysis and Design”, 3rd Edition, Pearson Education Asia, New Delhi, 2002. Chapter 8 (pp.241 to 271) has a good treatment of DFDs with a running example of a quick service restaurant. Different types of DFDs and logical checking of DFDs are discussed well. 5. K.E.Kendall and J.E.Kendall, “Systems Analysis and Design”, 5th Edition, Pearson Eduation Asia, New Delhi, 2003. Chapter 9 is devoted to Data Flow Diagrams (pp.241 to 285). Has a number of problems at the end of the chapter which are quite interesting.

6.

MODULE 6

PROCESS SPECIFICATION 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 6.1.1 Structured English is used to describe (a) how programs are to be written (b) processes in a DFD in a reasonably precise manner (c) how DFDs are used in data processing (d) data flows in DFD 6.1.2 Structured English is a (a) structured programming language (b) description of processes in simple English (c) method of describing computational procedures reasonably precisely in English (d) natural language based algorithmic language 6.1.3 The objective of using structured English is to (a) describe computational procedures reasonably precisely which can be understood by any user (b) expand a DFD so that a user can understand it (c) develop algorithms corresponding to processes in a DFD (d) ease writing programs for DFDs 6.1.4 Structured English description of processes (i) should be understandable to a user of a computer based system (ii) should be understandable to a programmer (iii) can be descriptive in nature (iv) should be translatable by a compiler (a) i and iii (b) ii and iv (c) i, ii and iv (d) i and ii

6.1.5 A decision table is (a) a truth table (b) a table which facilitates taking decisions (c) a table listing conditions and actions to be taken based on the testing of conditions (d) a table in a Decision Support System 6.1.6 A decision table (a) has a structured English equivalent representation (b) cannot be represented using structured English (c) does not have an equivalent algorithmic representation (d) cannot be used to represent processes in a DFD 6.1.7 A decision table is preferable when the number of (a) conditions to be checked in a procedure is small (b) conditions to be checked in a procedure is large (c) actions to be carried out are large (d) actions to be carried out are small 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.9 Structured English statements must be (a) short and clear (b) specified quantitatively (c) specified qualitatively (d) detailed and descriptive 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.1.12 The following structured English procedure is incorrect because if balance in account <=0 then {issue exception note to dept. mark “stop future issues” in departments record} else if balance in account <minimum balance then { issue item to dept. issue warning to dept.} end if end if (a) end if in second if is not needed (b) nesting of ifs is not correct (c) no action is specified when balance in account >=minimum balance (d) the value of minimum balance is not specified

6.1.13 The following structural English is incorrect because case (income slab) Income slab =1 : tax= 10% Income slab =2 or 3 : tax= 20% Income slab =5 : tax= 30% end case (a) no action is specified for income slab of 4 (b) income slab has to be rupees (c) income slab =2 or 3 is wrong (d) number of cases is too small 6.1.14 The following structured English procedure is incorrect because 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.1.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 the contents of next record is not known

LEARNING UNIT 2 6.2.1 Structured English description of data processing is a (a) non-procedural specification (b) procedural specification (c) purely descriptive specification (d) very imprecise specification 6.2.2 Decision table description of data processing is (a) non-procedural specification (b) procedural specification (c) purely descriptive specification (d) very imprecise specification 6.2.3 In the following word statement the conditions are: “if a student gets 50 marks or more in mathematics and 40 marks or more in English he passes the examination, otherwise he fails” (a) student passes the examination (b) student fails the examination (c) student gets 50 marks or more in mathematics (d) student mathematics marks >= 50 and student English marks >= 40 6.2.4 In the following word statement the actions are “if a student gets 50 marks or more in mathematics and 40 marks or more in English he passes the examination, otherwise he fails” (i) student passes the examination (ii) student fails the examination (iii) student gets 50 marks or more in mathematics (iv) student mathematics marks >= 50 and student English marks >= 40 (a) i and ii (b) i and iii (c) ii and iii (d) iii and iv 6.2.5 In a limited entry decision table the condition stub (a) lists X or – corresponding to actions to be executed (b) lists the conditions to be tested (c) has Y or N or – entries (d) lists the actions to be taken 6.2.6 In a limited entry decision table the condition entries (a) list X or – corresponding to actions to be executed (b) list the conditions to be tested (c) have Y or N or – entries (d) list the actions to be taken

6.2.7 In a limited entry decision table the action stub (a) lists X or – corresponding to actions to be executed (b) lists the conditions to be tested (c) has Y or N or – entries (d) lists the actions to be taken 6.2.8 In a limited entry decision table the action entries (a) list X or – corresponding to actions to be executed (b) list the conditions to be tested (c) have Y or N or – entries (d) list the actions to be taken 6.2.9 In a limited entry decision table the condition entries may be (a) Y or N only (b) Y, N or – (c) A binary digit (d) Any integer 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.11 A rule in a limited entry decision table is a (a) row of the table consisting of condition entries (b) row of the table consisting of action entries (c) column of the table consisting of condition entries and the corresponding action entries (d) columns of the tables consisting of conditions of the stub 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 6.2.15 A—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 6.2.16 An extended entry decision table has (a) only Y, N or – entries (b) entries which extend the condition (c) questions asked extended into the condition entry part of the table (d) only numerical entries 6.2.17 An extended entry decision table (a) has no limited entry equivalent (b) cannot be replaced by a table with only Y, or – entries (c) may have Yes, No answers to conditions (d) can always be converted to an equivalent limited entry decision table 6.2.18 An extended entry decision table is (a) very difficult to understand (b) quite concise compared to a limited entry decision table developed for the same task (c) large compared to a limited entry table developed for the same task (d) is not very often used 6.2.19 A mixed entry decision table (a) may have some conditions with Y, N, or – entries (b) may not have any Y, N, or – entry (c) may have only non-numerical entries (d) may mix numerical and non-numerical entries Given a decision table “test” shown below C1 C2

R1 Y N

R2 N –

R3 Y Y

A1 A2 A3

X – X

–– X –

– X

Decision table–“test”

Answer the following questions: 6.2.20 Rule R1 is interpreted as follows: (a) If C1 is TRUE and C2 is FALSE then perform action A2 (b) If C1 is TRUE and C2 is FALSE then perform action A1 and then action A2 (c) If C1 is TRUE and C2 is FALSE then perform action A3 and then action A1 (d) If C1 is TRUE and C2 is FALSE then perform action A1 and then action A3 6.2.21 Rule R3 is interpreted as follows: (a) If C1 is TRUE and C2 is TRUE then perform action A1 and A2 (b) If C1 is TRUE or C2 is TRUE then perform action A3 (c) If C1 is TRUE and C2 is TRUE then perform action A1 or A2 (d) If C1 is TRUE and C2 is TRUE then perform action A3 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 C2

Y N

N N

Y Y

A1 A2 A3

X – X

– X –

– – X

(b) C1 C2

Y N

N Y

Y Y

A1 A2 A3

X – X

– X –

– – X

(c)

(d)

C1 C2

Y N

N N

N Y

Y Y

A1 A2 A3

X – X

– X –

– X –

– – X

C1 C2

Y N

N N

N Y

Y Y

A1 A2 A3

X – X

– X –

– – X

– – X

LEARNING UNIT 3 6.3.1 The decision table “test” is (a) ambiguous (b) contradictory (c) incomplete (d) complete Answer the following referring to the decision table “test2” C1 : x <= 50 C2 : x >= 70

R1 N –

R2 – N

A1 A2

X –

– X

Decision Table: “test2” 6.3.2 Decision table “test2” is (a) really incomplete (b) complete (c) apparently incomplete (d) apparently complete 6.3.3 Decision table “test2” (a) has a real ambiguity (b) has an apparent ambiguity (c) is logically correct (d) is incomplete

C1 C2

N –

– N

A1 A2

Y –

– Y

DECISION TABLE “testing” 6.3.4 Decision table “testing” can be made complete (i) by putting an ELSE rule (ii) is as it is complete and does not need any more rules (iii) by specifying actions when C1 = Y and C2 = Y (iv) by specifying actions when C1 = N and C2 = N (a) (i), (ii) (b) (i), (iii) (c) (ii), (iii) (d) (ii), (iv) 6.3.5The K-map equivalent of decision table “test2” is C1

a)

C1

Y

C2

Y N

A2

c)

N

Y A2

Y

N

Y

A1

A2

A1

N

A2

A1

Y

N

d) Y

N

C2

A1

C1 C2

b)

N

C1 C2

A1

Y

A1,A2

N

A1 A2

A2

6.3.6 The decision table equivalent of the following structured English statement is if

C2 then

else

TRUE if then else end if do

C1 do do

A1 and A3

end if (a)

(b)

(c)

(d)

TRUE A3 A2

C1 C2

Y Y

Y N

N –

A1 A2 A3

– – X

– X –

X – X

C2 C1

Y Y

Y N

N N

A1 A2 A3

– – X

– X –

X – X

C1 C2

Y Y

N Y

– N

A1 A2 A3

– – X

– X –

X – X

C1 C2

Y Y

N Y

Y N

A1 A2 A3

– – X

– X –

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. else end if

issue warning to dept.} {issue item to dept.}

end if C1=balance in account <=0; C2=balance in account < min. balance A1=issue exception note and mark “no future issues” A2=issue item to dept A3=issue warning to dept. (a)

(b)

(c)

(d)

C1 C2

Y –

N Y

N N

A1 A2 A3

X – –

– X X

– X –

C1 C2

Y N

N Y

N N

Y Y

A1 A2 A3

X – –

– X X

– X –

– X –

C1 C2

N –

N Y

N N

A1 A2 A3

X – –

– X X

– X –

C1 C2

Y N

N Y

Y N

A1 A2 A3

X – –

– X X

– 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

Y

A1

A1

A2

N

A1

A2

A2

YN

The rule for action A1 may be represented by the following minimal Boolean expression (a) C1.C2 + C1.C2.C3 (b) C1.C2.C3 + C1.C3 (c) C1.C3 + C2 (d) C1.C3 + C2.C1

6.4.2

The following decision table may be replaced by its best equivalent shown below:

(a)

(b)

(c)

(d)

C1 C2 C3

N N Y

N N N

N Y N

N Y Y

Y Y Y

Y Y N

Y N N

Y N Y

A1 A2

X –

– X

– X

X –

– X

– X

X X

X X

C1 C2 C3

N – Y

N – N

Y Y –

Y N –

A1 A2

X –

– X

– X

X X

C1 C2 C3

– – N

Y – –

N – Y

Y N –

A1 A2

– X

– X

X –

X X

C1 C2 C3

N – N

– Y N

Y Y –

N – Y

Y N –

A1 A2

– X

– X

– X

X –

X X

C1 C2 C3

Y – –

N – N

N – Y

Y N –

A1 A2

– X

– X

X –

X X

6.4.3 The following decision table may be replaced by its best equivalent shown below:

C1 C2 C3 C4

N N N N

Y N N N

Y N Y N

N N Y N

N Y N Y

Y Y N Y

N Y Y Y

Y Y Y Y

N N N Y

N N Y Y

Y N N Y

Y N Y Y

N Y N N

Y Y N N

N Y Y N

Y Y Y N

A1 A2 A3 A4

X – – –

X – – –

X – – –

X – – –

– X – –

– X – –

– X – –

– X – –

– – X –

– – X –

– – X –

– – X –

– – – X

– – – X

– – – X

– – – X

(a) C1 C2 C3 C4

Y N – N

N N – N

N – N Y

N – Y Y

N N – Y

Y N – Y

– Y N N

– Y Y N

A1 A2 A3 A4

X – – –

X – – –

– X – –

– X – –

– – X –

– – X –

– – – X

– – – X

(b) C2 C4

N N

Y Y

N Y

Y N

A1 A2 A3 A4

X – – –

– X – –

– – X –

– – – X

(c) C1 C2 C3 C4

– – N N

N N – Y

Y N – Y

– Y – Y

– – Y N

A1 A2 A3 A4

X – – X

– – X –

– – X –

– X – –

X – – X

(d)

C2 C3 C4

– – N

N – Y

Y – Y

– Y N

A1 A2 A3 A4

X – – X

– – X –

– X – –

X – – X

Given the decision table “test 3”answer the following questions:

6.4.4 (a) (b) (c) (d)

x>=20 x<=30 y>=x

R1 Y Y Y

R2 Y Y N

R3 Y N Y

R4 Y N N

R5 N Y Y

R6 N Y N

R7 N N Y

R8 N N N

A1 A2 A3

X – –

X – –

X – –

X – –

– X –

– X –

– – X

– – X

Rules R7, R8 are logically impossible Rules R5, R6 are logically impossible Rules R3, R4 are logically impossible Rules R1, R2 are logically impossible

6.4.5 Pick the correct equivalent of “test 3” (a) C1

Y

N

A1 A2

X –

– X

(c) C1 C3 C2

Y N –

Y Y –

N N –

A1 A2

X –

X –

– X

(b) C1 C2

Y –

N Y

N N

A1 A2 A3

X – –

– X –

– – X

N Y –

(d) C1 C2

Y –

N Y

N N

– X

A1 A2 A3

X – –

– X –

– – 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 A1= C3.C1.C2 + C2.C3.C1 A2= C1.C3 + C3.C2.C1+ C1.C2.C3 (a) C1 C2 C3

Y Y N

Y N Y

Y – Y

N N Y

N N N

A1 A2

X –

X –

– X

– X

– X

(b) C1 C2 C3

Y Y Y

Y N Y

Y N –

N N Y

N N N

A1 A2

X –

X –

– X

– X

– X

(c) C2 C1 C3

Y Y N

Y N Y

Y – Y

N N Y

N N N

A1 A2

X –

X –

– X

– X

– X

(d) C1 C2 C3

Y Y N

Y N Y

Y – Y

N N Y

N N N

A1 A2

X X

X X

– X

– X

– X

6.4.8 A decision table “test 4” is given below C1 C2 C3 C4

Y Y Y –

Y – Y Y

N N Y –

– Y – Y

– – Y N

N N N –

Y N N –

N – N N

A1 A2 A3 ?

X – – –

X – – –

X – – –

– X – –

– X – –

– – X –

– – X –

– – – I

where I indicates impossible rule

The contradictory rules are (a) YYYY, NYYY, NNYY (b) YYYN, NYYN, NNYN (c) YYYY, YYYN, NNYN (d) There are no contradictory rules 6.4.9 In “test 4” the contradictory actions are: (a) A1, A3 (b) A1, A2 (c) A2, A3 (d) A2, I 6.4.10 In “test 4” missing rule is: (a) NYNN (b) NYYN (c) YYNN (d) YNYN 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 C2 C3 C4

– N Y Y

– – Y N

– Y – Y

– Y Y –

– – N N

N N N –

A1 A2 A3

X – –

– X –

– X –

– X –

– – X

– – X

(b)

(c)

(d)

C1 C2 C3 C4

N N Y Y

Y N Y Y

– Y N Y

– Y Y –

– – Y N

N – N N

N N N –

A1 A2 A3

X – –

X – –

– X –

– X –

– X –

– – X

– – X

C1 C2 C3 C4

– N Y Y

– – Y N

– Y – Y

– – N N

N N N –

A1 A2 A3

X – –

– X –

– X –

– – X

– – X

C2 C3 C4

N Y Y

Y – –

– Y N

N N –

A1 A2 A3

X – –

– X –

– X –

– – X

6.5.1 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 6.5.2 Decision Tables 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

6.5.3 Structured English is 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

6.5.4 The objective of using decision trees is to a) Expand a DFD so that a user can understand it b) To specify sequence of conditions to be tested and actions to be taken c) Describe a computational procedure that can be easily understood by a person c) Use it as a tool in decision support system 6.5.5 Decision trees are superior to decision tables when a) The number of conditions to be tested is very large b) When sequence of testing conditions is not particularly important c) When sequence of testing conditions is not particularly important c) When a large number of actions are to be specified 6.5.6 Logical correctness of a specifications can be systematically checked by a) Using decision trees b) Using structured English c) Using DFD’s d) Using decision tables 6.5.7 The decision tree equivalent of the following structured English is if C2 then if C1 then A3 else A2 endif else A1,A3 endif A3 Y Y

a)

C2 N

A2

C1 N

A1, A3

Y

A3

b) C1

Y

A2

N

C2

A1

Y

N C1

A3

N

Y Y

C1

c)

A3 N

A2

C2 A1, A3

N

A2 C1

d)

A3 C2 A1A3

6.5.8 Decision tables are better then Decision trees when a) Conditions are to be isolated from actions in a word statement b) Condition sequences are to be found from a word statement c) Logical correctness of a word statement is to be established d) Large number of actions is to be performed

6.5.9 The decision table equivalent of the Decision tree of choice (a) of 6.5.7 is a)

C2 C1

Y N

N Y

N N

Y Y

A1 A2 A3

X X

X -

X X -

X

b) C1 C2

Y Y

Y N

N -

A1 A2 A3

X

X -

X X

c) C1 C2

Y Y

Y N

A1 A2 A3

X

X -

C1 C2

Y Y

Y N

A1 A2 A3

X

X -

N Y X X

d) N Y X X

Else Error

KEY TO OBJECTIVE QUESTIONS

6.1.1

b

6.1.2

c

6.1.3

a

6.1.4

d

6.1.5

c

6.1.6

6.1.7 6.1.13 6.2.4 6.2.10 6.2.16 6.2.22 6.3.4 6.3.10 6.4.6 6.5.1 6.5.7

b a a a c b b b d b c

6.1.8 6.1.14 6.2.5 6.2.11 6.2.17 6.2.23 6.3.5 6.4.1 6.4.7 6.5.2 6.5.8

d c b c d a c c a a c

6.1.9 6.1.15 6.2.6 6.2.12 6.2.18 6.2.24 6.3.6 6.4.2 6.4.8 6.5.3 6.5.9

b b c c b c c a c c b

6.1.10 6.2.1 6.2.7 6.2.13 6.2.19 6.3.1 6.3.7 6.4.3 6.4.9 6.5.4

d b d d a d a b b b

6.1.11 6.2.2 6.2.8 6.2.14 6.2.20 6.3.2 6.3.8 6.4.4 6.4.10 6.5.5

a 6.1.12 a 6.2.3 a 6.2.9 b 6.2.15 d 6.2.21 c 6.3.3 d 6.3.9 a 6.4.5 c 6.4.11 c 6.5.6

a c d b a d a b a d d

MODULE 6

PROCESS SPECIFICATION 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 Systems Analysis And Design

© V. Rajaraman

LEARNING GOALS In this module we will learn 1. How to use structured English to precisely specify processes 2. The terminology used in structured English 3. Terminology of decision tables and how it is used to specify complex logic 4. How to detect errors in decision table specifications 5. Terminology and use of decision trees 6. Comparison of structured English, decision tables and decision trees Systems Analysis And Design

© V. Rajaraman

1 of 54

MOTIVATION ƒ Before designing a system an analyst must clearly understand the logic to be followed by each process block in a DFD ƒ An analyst’s understanding must be cross checked with the user of the information system. ƒ A notation is thus needed to specify process block in detail which can be understood by a user.

Systems Analysis And Design

© V. Rajaraman

2 of 54

MOTIVATION ƒ Notation used must be appropriate for the type of the application to be modelled. ƒ Different notations are needed to represent repetition structures,complex decision situation and situations where sequencing of testing of conditions is important

Systems Analysis And Design

© V. Rajaraman

3 of 54

MOTIVATION ƒ For complex logical procedures a notation is needed which can also be used to detect logical errors in the specifications. ƒA tabular structure for representing logic can be used as a communication tool and can be automatically converted to a program.

Systems Analysis And Design

© V. Rajaraman

4 of 54

PROCESS SPECIFICATION ƒ Once a DFD is obtained the next step is to precisely specify the process. ƒ Structured English, Decision tables and Decision Trees are used to describe process. ƒ Decision tables are used when the process is logically complex involving large number of conditions and alternate solutions ƒ Decision Trees are used when conditions to be tested must follow a strict time sequence. 6.1.1

Systems Analysis And Design

© V. Rajaraman

5 of 54

STRUCTURED ENGLISH ƒ Structured English is similar to a programming language such as Pascal ƒ It does not have strict syntax rules as programming language ƒ Intention is to give precise description of a process ƒ The structured English description should be understandable to the user

6.1.2

Systems Analysis And Design

© V. Rajaraman

6 of 54

STRUCTURED ENGLISH 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 else No Discount end if end if

6.1.3

Systems Analysis And Design

© V. Rajaraman

7 of 54

DECISION TABLE-EXAMPLE ƒ Same structured English procedure given as decision table CONDITIONS

RULE1 Advance payment made Y Purchase amt >=10,000 Regular Customer? -

RULE2 N Y Y

RULE3 N Y N

RULE4 N N -

ACTIONS Give 5% Discount Give No Discount

6.1.4

X -

Systems Analysis And Design

X -

X

X

© V. Rajaraman

8 of 54

DECISION TABLE-EXPLANATION ƒ Conditions are questions to be asked ƒ ‘Y’ is yes,’N’ is no & ‘-’ is irrelevant ƒ A ‘X’ against the action says the action must be taken ƒ A ‘-’ against the action says the action need not be taken Rule 2 in decision table DISCOUNT states: if no advance payment and purchase amount >=10000 and regular customer then give 5% discount 6.1.5

Systems Analysis And Design

© V. Rajaraman

9 of 54

STRUCTURED ENGLISH ƒ Imperative sentences- Actions to be performed should be precise and quantified Good Example: Give discount of 20% Bad Example: Give substantial discount ƒ 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 6.1.6

Systems Analysis And Design

© V. Rajaraman

10 of 54

DECISION TREE-EXAMPLE ƒ The structured English procedure given in 6.1.3 is expressed as a Decision tree below Give 5% Discount Y

Y

C1

C3

N

Y C2

N

Give 5% Discount

No Discount

N No Discount

C1: Advance payment made C2: Purchase amount >=10,000 C3: Regular Customer 6.1.7

Systems Analysis And Design

Y = Yes N = No

© V. Rajaraman

11 of 54

STRUCTURED ENGLISH-DECISION STRUCTURES If condition then { Group of statements } else { Group of statements } end if Example: if(balance in account >= min.balance) then honor request else reject request end if

6.1.8

Systems Analysis And Design

© V. Rajaraman

12 of 54

STRUCTURED ENGLISH-CASE STATEMENT Case (variable) Variable = P: { statements for alternative P} Variable = Q: { statements for alternative Q} Variable = R: { statements for alternative R} None of the above: { statements for default case} end case Example : Case(product code) product code =1 : discount= 5% product code =2 : discount =7% None of the above : discount=0 end case 6.1.9

Systems Analysis And Design

© V. Rajaraman

13 of 54

STRUCTURED ENGLISH-REPETITION STRUCTURE for index = initial to final do { statements in loop } end for Example : Total =0 for subject =1 to subject =5 do total marks=total marks +marks(subject) write roll no,total marks end for

6.1.10 Systems Analysis And Design ©

V. Rajaraman

14 of 54

STRUCTURED ENGLISH-WHILE LOOP

while condition do { statements in loop } end while Example : while there are student records left to do read student record compute total marks find class write total marks, class, roll no end while

6.1.11 Systems Analysis And Design ©

V. Rajaraman

15 of 54

EXAMPLE

Update inventory file for each item accepted record do { search inventory file using item code if successful then { update retrieved inventory record; write updated record in inventory file using accepted record} else { create new record in inventory file; enter accepted record in inventory file} end if end for

6.1.12 Systems Analysis And Design ©

V. Rajaraman

16 of 54

DECISION TABLE-MOTIVATION ƒ A procedural language tells how data is processed ƒStructured English is procedural ƒMost managers and users are not concerned how data is processedthey want to know what rules are used to process data. ƒSpecification of what a system does is non-procedural. ƒDecision Tables are non-procedural specification of rules used in processing data 6.2.1

Systems Analysis And Design

© V. Rajaraman

17 of 54

ADVANTAGES OF DECISION TABLE •Easy

to understand by non-computer literate users and managers

•Good documentation of rules used in data processing. •Simple representation of complex decision rules . •Tabular representation allows systematic validation of specification detection of redundancy,incompleteness & inconsistency of rules •Algorithms exist to automatically convert decision tables to equivalent computer programs. • Allows systematic creation of test data 6.2.2

Systems Analysis And Design

© V. Rajaraman

18 of 54

METHOD OF OBTAINING DECISION TABLE FROM WORD STATEMENT OF RULES 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

6.2.3

Systems Analysis And Design

© V. Rajaraman

19 of 54

DECISION TABLE FROM WORD STATEMENT Condition Stub CODITIONS

Rule 1

Rule 2

Rule 3

Rule 4

C1 : Age >= 21

Y

N

Y

N

C2: Deposit >=100

Y

Y

N

N

A1: Classify as A

X

-

-

-

A2: Classify as B

-

X

-

-

A3: Classify as C

-

-

X

-

A4: Do not open Account

-

-

-

X

ACTIONS

Action Stub

6.2.4

Systems Analysis And Design

© V. Rajaraman

20 of 54

DECISION TABLE NOTATION EXPLAINED CONDITION STUB ACTION STUB

CONDITION ENTRIES ACTION ENTRIES RULE

• 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,NNO,-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

6.2.5

Systems Analysis And Design

© V. Rajaraman

21 of 54

DECISION TABLE NOTATION -CONTD •ORDER OF LISTING CONDITIONS IRRELEVANT i.e. CONDITIONS MAY BE CHECKED IN ANY ORDER •ORDER OF LISTING ACTIONS IMPORTANT •ACTIONS LISTED FIRST CARRIED OUT FIRST SEQUENTIAL EXECUTION OF ACTIONS •RULES MAY BE LISTED IN ANY ORDER

6.2.6

Systems Analysis And Design

© V. Rajaraman

22 of 54

INTERPRETING DECISION TABLE-ELSE RULE R1 Y

R2 Y

C2: Does he have min qualification C3: Is fee paid?

Y

Y

Y

N

A1: Admit letter A2: Provisional Admit letter A3: Regret letter

X

-

-

-

X

-

-

-

X

C1: Is applicant sponsored

ELSE

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 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

6.2.8

R1

R2

R3

R4

C1: Qty ordered <= Quantity in stock? C2: (Qty in stock-Qty ordered)<=reorder level C3: Is the partial shipment ok?

Y

Y

N

N

N

Y

-

-

-

-

Y

N

A1:Qty shipped=Qty ordered A2:Qty shipped=Qty in stock A3:Qty shipped=0 A4:Qty in stock=0 A5:Back order=qty orderedqty shipped

X -

X -

X X

X -

-

-

X

X

A6:Initiative reorder procedure A7: Qty in stockÅQty in stock -Qty shipped

-

X

X

X

X

X

-

-

Systems Analysis And Design

© V. Rajaraman

24 of 54

EXTENDED ENTRY DECISION TABLE ƒ Condition Entries not necessarily Y or N ƒ Action entries not necessarily X or ƒ Extended Entry Decision Tables(EEDT) more concise ƒ EEDT can always be expanded to LEDT Example

R1

R2

R3

R4

R5

R6

C1 : Product code

1

1

1

1

1

2

C2 : Customer code

A

B

A

B

C

-

C3 : Order amount

Discount =

6.2.9

<=500 <=500

5%

7.5%

>500

>500

7.5%

Systems Analysis And Design

10%

-

-

6%

5%

© V. Rajaraman

25 of 54

MIXED ENTRY DECISION TABLE Can mix up Yes, No answers with codes

Rl

R2

R3

R4

R5

Cl : Product code = 1? C2: Customer code = C3: Order amount < 500?

A Y

Y B Y

Y A N

Y B N

Y C -

Discount =

5%

7 5%

7 5%

10%

6%

R6 N 5%

Choice of LEDT, EEDT, MEDT depends on ease of communication with user, software available to translate DTs to programs, ease of checking etc.

6.2.10 Systems Analysis And Design ©

V. Rajaraman

26 of 54

LINKED DECISION TABLE Decision table 1

Decision table 2

Salary point=6 Conduct OK? Diligence OK? Efficiency OK?

N Y Y Y

e l s e

Salary point>2 1 yr as class 1 officer Departmental test Passed?

Go to table 2 No promotion

X -

X

Advance to next salary point No promotion Go to Table3

Decision table3 Complete departmental Course 1 yr since last increment

Y

Advance to next salary point No promotion

X

-

-

X

else Y

N Y

N N N -

Y -

Y

-

-

X - X -

N

X -

X

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

6.2.11 Systems Analysis And Design ©

V. Rajaraman

27 of 54

LOGICAL CORRECTNESS OF DECISION TABLE Consider decision table DTI: Rl Cl: x>60 Y C2:x<40 Al A2 :

X -

DT2:

R11

R2 Y

We can expand decision table by replacing each –by Y & N

X R12

R21

R22

Cl: x>60 Y C2:x<40 Y

Y N

N Y

Y Y

Al A2 :

X -

X

X

X -

A rule which has no – is an Elementary rule

DT2 is an Elementary Rule Decision Table (ERDT)

6.3.1

Systems Analysis And Design

© V. Rajaraman

28 of 54

LOGICAL CORRECTNESS OF DECISION TABLE (CONTD) ƒ A decision table with 1 condition should have 2 elementary rules ƒ Each elementary rule must be distinct ƒ Each elementary rule must have distinct action ƒ If a decision table with k conditions does not have 2k rules specified it is said to be incomplete For example : DT2 does not have the elementary rule C1:N, C2:N. ƒ It is thus incomplete. ƒIf the decision table has the same elementary rule occurring more than once it is said to have multiplicity of specifications For Example:In DT2 The rule C1:Y,C2:Y occurs twice.Thus it has multiplicity of specification

6.3.2

Systems Analysis And Design

© V. Rajaraman

29 of 54

LOGICAL CORRECTNESS OF DECISION TABLE (CONTD) ƒ If action specified for multiple identical rules are different then it is called ambiguous specifications DT2 has an ambiguity.Rules R11 and R21 are identical but have different actions ƒ Ambiguity may be apparent or real ƒ 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

6.3.3

Systems Analysis And Design

© V. Rajaraman

30 of 54

LOGICAL CORRECTNESS OF DECISION TABLE (CONTD)

If an apparently ambiguous specification is real then it is a contradiction For example : If C1:(X > 60) = Y and C2:(X > 40) = Y then X = 70 will satisfy both inequalities. As two actions are specified for (Cl = Y, C2 = Y) and they are different the rule is really ambiguous and is called Contradictory Specification.

6.3.4

Systems Analysis And Design

© V. Rajaraman

31 of 54

LOGICAL CORRECTNESS OF DECISION TABLE (CONTD) • If all 2k elementary rules are not present in a k condition decision table is said to be incomplete. •DT2 (PPT 6.3.1) is incomplete as rule C1:N, C2:N is missing •Rule C1=N, C2:=N is logically possible as C1=N is X<=60 and C2=N is X >= 40. A value of X = 50 will make C1=N,C2=N Thus DT2 has a real incomplete specification •A decision table which has no real ambiguities or real incompleteness is said to be logically correct •A decision table with logical errors should be corrected

6.3.5

Systems Analysis And Design

© V. Rajaraman

32 of 54

USE OF KARNAUGH MAPS ƒ KARNAUGH map abbreviated K-map is a 2 dimensional diagram with one square per elementary rule ƒ The k-map of DT2 is C2

C1

N

? N Y A2

Y Al A1,A2

ƒ If more than one action is in one square it is an ambiguous rule ƒ If a square is empty it signifies incomplete specification

6.3.6

Systems Analysis And Design

© V. Rajaraman

33 of 54

USE OF KARNAUGH MAPS Structured English procedure: 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 C2:Rockwell hardness>50 Y Y N N N Y Y C3 tensile strength>30000 Y N N N Y Y N

Grade

6.3.7

Systems Analysis And Design

10 9 8 7

?

? ?

© V. Rajaraman

N N Y ?

34 of 54

KARNAUGH MAPS – GRADING STEEL C1 C2 NN C3 N 7 Y

?

NY

? ?

YY

YN

9 10

8 ?

ƒThe 3 conditions are independent ƒThe decision table is thus incomplete ƒObserve that in the Structured English specifications the incompleteness is not obvious

6.3.8

Systems Analysis And Design

© V. Rajaraman

35 of 54

DECISION TABLE-ARREARS MANAGEMENT R1 R2 R3 R4 R5 R6

6.3.9

C1:Payment in current month >min.specified payment C2:Payment in current month>0 C3:Any payment in last 3 months C4: Actual arrears > 3(min. Specified payment per month)

Y

A1 : Send letter A A2 : Send letter B A3 : Send letter C A4 : Send letter D A5 : Send letter E

Systems Analysis And Design

N N

-

-

-

-

Y -

Y -

N

N Y

N Y

-

Y

N Y

N

Y

X -

X -

X -

X

X -

X -

© V. Rajaraman

36 of 54

KARNAUGH MAP C1C2 C3C4 NN NN

?

NY YY

A4 A4 A5

NY

YY

YN

A3

A1

A1*

A2A4+ A1A4+ A1A4* A2 A1 A1A4* A3 A1 A1A5*

K – Map for decision table

YN C1 : x>m C2:x>0 C3:y>0 C4:z>3m m>0 C3,C4 independent of C1,C2 C1,C2 dependent C1: Y C2: Y x>m, x>0 possible C1: Y C2: N x>m, x<=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

6.3.10 Systems Analysis And Design ©

V. Rajaraman

37 of 54

CORRECT DECISION TABLE

• If users say that for rules C1C2C3C4:NYNY AND YYNY (marked with + in k-map) the action is A4 and for C1C2C3C4:NNNN also it is A4, the corrected map is C1C2 C3C4 NN NN NY YY YN

NY

YY

A4

A3

A1

A4 A4 A5

A4 A2 A3

A4 A1 A1

6.3.11 Systems Analysis And Design ©

YN

Impossible rules

V. Rajaraman

38 of 54

CORRECTED DECISION TABLE

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

A1

A1

A2 A3 A3

A4

A4

A4 A4 A4

Action

A1

A5

Question: Can the number of rules be reduced Answer : Yes, by combining rules with the same action Action A1 can be represented by the Boolean expression: C1C2C3C4 + C1C2C3C4 + C1C2C3C4 = C1C2C3C4 + C1C2C3 (C4+C4) =C1C2C3C4+C1C2C3 = C1C2C4 + C1C2C3

6.3.12 Systems Analysis And Design ©

V. Rajaraman

39 of 54

REDUNDANCY ELIMINATION •Redundancy can be eliminated by systematically applying four identities of Boolean Algebra • These identities are A + A=1 l.A = A A+A=A 1+A=1 •K-map assists in identifying Boolean terms in which One or more variables can be eliminated •K-map is constructed in such a way that two boxes which are physically adjacent in it are also logically adjacent

6.4.1

Systems Analysis And Design

© V. Rajaraman

40 of 54

KARNAUGH MAP REDUCTION C1 C2

C1 C2 C3 C4 NN

NN NY YY YN C3 C4 A4 NN NY

NN A4

A4

A4

A4

A4

NY

YY

YY

YN

YN

A4=C1C2C3(C4+C4)=C1C2C3

NY YY YN

A4=C3C4(C1C2+C1C2+C1C2+C1C2)=C3C4

•Combining 2 adjacent boxes eliminates 1 variable •Combining 4 adjacent boxes eliminates 2 variable •Combining 8 adjacent boxes eliminates 3 variable •First and last columns of k-map are logically adjacent •First and last rows are also logically adjacent

6.4.2

Systems Analysis And Design

© V. Rajaraman

41 of 54

KARNAUGH MAP REDUCTION C1C2 NN C3 C4 A1 NN NY

A1

NY YY YN A1

C1C2 C3 C4 NN

NY YY YN A2

A2

A2

A2

A2

A2

A2

A2

NN A1 NY

A1

A1

YY

YY A1

A1

YN

YN

C1C2 C3 C4 NN

NY YY YN

NN A3

A3

A3

A3

NY YY 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

6.4.3

Systems Analysis And Design

© V. Rajaraman

42 of 54

REDUCING DECISION TABLES-USE OF K-MAP This is the K-map corresponding to DT of 6.3.12 C1C2 C3C4 NN NY YY A4

A3

A1

Boxes marked X correspond to impossible rules. They can be used if they are useful in reducing rules

A4

A4

A4

Using k-map reduction rules we get

YY

A4

A2

A1

YN

A5

A3

A1

NN NY

6.4.4

YN

A1 : C1C4+C1C3 A2 : C1C2C3C4 A3 : C1C2C4 A4 : C3C4+C2C3+C2C4 A5 : C2C3C4

Systems Analysis And Design

© V. Rajaraman

43 of 54

REDUCING DECISION TABLES REDUCED DECISION TABLE for DT of 6.3.12 C1: Payment in current month > min specified payment C2: Payment in current month>0 C3: Any payment in last 3 months C4: Actual arrears> 3(minimum specified payment per month)

A: Send letter A B: Send letter B C: Send letter C D: Send letter D E: Send letter E

6.4.5

Y -

Y Y

N N Y Y Y - N

N N

N N - Y

N

-

Y

-

Y

X -

X -

Systems Analysis And Design

N Y

- - - X - - X - - X X - - -

N

-

X - X

© V. Rajaraman

44 of 54

EXAMPLE-REDUCTION OF RULES IN WORD STATEMENT Rules : Insure Driver if following rules are satisfied 1. 2. 3. 4. 5.

Drivers annual income > 20000 & is married male Drivers annual income > 20000 & is married and over 30 Drivers annual income <= 20000 & she is married female Driver is male over 30 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

6.4.6

Systems Analysis And Design

© V. Rajaraman

45 of 54

DECISION TABLE FOR INSURANCE RULES Y Y Y -

Cl : Annual income> 20000 C2: Male C3: Married C4: Age > 30 A1:Insure A2 :Do not insure

X -

Y Y Y X -

N N Y X -

Y Y X -

- E - L Y S N E X -

X

C1C2 C3C4

NN

NY YY YN

NN

A1

NY

A1

A1=C3+C2.C4 YY YN

6.4.7

A1

A1

A1

A1

A1

A1

A1

A1

Systems Analysis And Design

© V. Rajaraman

46 of 54

REDUCED DECISION TABLE

C2 : Male

-

Y

C3 : Married

Y

-

C4 : Age > 30

-

Y

Al : Insure

X

X

-

A2 : Do not Insure

-

-

X

ELSE

Reduced rules : Insure if married or male over 30 Observe 5 rules simplified to 2 and 1 condition removed

6.4.8

Systems Analysis And Design

© V. Rajaraman

47 of 54

DECISION TREES

ƒ Used when sequence of testing condition is important ƒ It is more procedural compared to Decision tables

6.5.1

Systems Analysis And Design

© V. Rajaraman

48 of 54

EXAMPLE – DECISION TREE TO BOOK TRAIN TICKET Book by II AC on 4/8/04 if available else book by II AC on 5/8/04.If both not available book by sleeper on 4/8/04 if available else book on 5/8/04 by sleeper.If none available return. Book II AC

Y

C1 N

Book II AC

Y

C2

Book sleeper

Y

N

C3 N

Y

Book ticket

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

6.5.2

Systems Analysis And Design

© V. Rajaraman

49 of 54

DECISION TREES ƒ Decision trees are drawn left to right ƒ Circles used for conditions ƒ Conditions labelled and annotation below tree ƒ Conditions need not be binary For example: C1

>=60

GRADE A

>=50

GRADE B

>=40

GRADE C

else

GRADE F

ƒ Sometimes Decision trees are more appropriate to explain to a user how decisions are taken 6.5.3

Systems Analysis And Design

© V. Rajaraman

50 of 54

DECISION TREES Decision tree for decision table of 6.2.9 [Slide number 25]

A C2 B 1

YES C3 NO C3

C

C1 2

Discount=7.5% Discount=5%

YES

Discount=10%

NO

Discount=7.5% Discount=6% Discount=5%

C1: PRODUCT CODE C2 : CUSTOMER CODE C3: ORDER AMOUNT >500? • Observe that the 3 alternatives for connection C2 shown as three branching lines SOME PEOPLE FIND DECISION TREE EASIER TO UNDERSTAND

6.5.4

Systems Analysis And Design

© V. Rajaraman

51 of 54

DECISION TREES Decision tree equivalent of structured English procedure of 6.3.7 (SLIDE 37) is given below NO

Grade 7

C1 Grade 8

YES

C1

NO YES

C1 C1 : Carbon < 0.7 C2 : Rockwell hardness > 50 C3: Tensile strength > 3000

Grade 9 NO

YES Grade 10

• Observe incompleteness evident in the equivalent Decision Table is not evident in the Decision tree • If the testing sequence is specified and is to be strictly followed the Decision tree is simple to understand.

6.5.5

Systems Analysis And Design

© V. Rajaraman

52 of 54

COMPARISON OF STRUCTURED ENGLISH, DECISION TABLES AND DECISION TREES CRITERION FOR COMPARISON

STRUCTURED ENGLISH

ISOLATING CONDITIONS & ACTIONS

NOT GOOD

SEQUENCING CONDITIONS BY PRIORITY

GOOD

CHECKING FOR COMPLETENESS , CONTRADICTIO N& AMBIGUITIES

6.5.6

NOT GOOD

Systems Analysis And Design

DECISION TABLES

BEST

NOT GOOD

BEST

DECISION TREES

GOOD

BEST

GOOD

© V. Rajaraman

53 of 54

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 ƒ Use Decision trees when sequencing of conditions is important and if there are not many conditions to be tested

6.5.7

Systems Analysis And Design

© V. Rajaraman

54 of 54

MODULE 6

PROCESS SPECIFICATION

Contents

1. MOTIVATION AND LEARNING GOALS

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

Before designing a system an analyst must clearly understand the logic to be followed by each process block in a DFD. An analyst’s understanding must be crosschecked with the user of the information system. A notation is thus needed to specify process block in detail, which can be understood by a user. Notation used must be appropriate for the type of the application to be modelled. Different notations are needed to represent repetition structures, complex decision situation and situations where sequencing of testing of conditions is important. For complex logical procedures a notation is needed which can also be used to detect logical errors in the specifications. This is called Decision Table. A tabular structure for representing logic can be used as a communication tool and can be automatically converted to a program.

LEARNING GOALS At the end of this module you will know 1.How to use structured English to precisely specify processes 2.The terminology used in structured English 3.Terminology of decision tables and how it is used to specify complex logic 4.How to detect errors in decision table specifications 5.Terminology and use of decision trees 6.Comparison of structured English, decision tables and decision trees

LEARNING UNIT 1

Structured English specification 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 Structured English is similar to a programming language such as Pascal. It does not have strict syntax rules as in programming languages as the intention is only to give precise description of a process. The structured English description should be understandable to the user. Example:

if customer pays advance then

Give 5% Discount

else if purchase amount >=10,000 then if the customer is a regular customer then else

Give 5% Discount No Discount

end if DECISION TABLE-EXAMPLE else No Discount if Same structured Englishend procedure given as decision table end if

CONDITIONS

RULE1

RULE2

RULE3

RULE4

Advance payment made

Y

N

N

N

Purchase amt >=10,000

-

Y

Y

N

Regular Customer?

-

Y

N

-

X -

X -

X

X

ACTIONS Give 5% Discount Give No Discount

DECISION TABLE-EXPLANATION Conditions are questions to be asked ‘Y’ is yes,’N’ is no & ‘-’ is irrelevant A ‘X’ against the action says the action must be taken A ‘-’ against the action says the action need not be taken Rule 2 in decision table DISCOUNT states: if no advance payment and purchase amount >=10000 and regular customer then give 5% discount In Structured English, imperative sentences, actions to be performed should be precise and quantified Good Example: Give discount of 20% Bad Example: Give substantial discount The operators and keywords in Structured English are as follows: 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 The structured English procedure given above is expressed as a Decision tree below

Give 5% Discount Y

Give 5% Discount

Y

C1

C3

N

Y C2

N

No Discount

N No Discount

C1: Advance payment made C2: Purchase amount >=10,000 C3: Regular Customer

Y = Yes N = No

STRUCTURED ENGLISH-DECISION STRUCTURES If condition then { Group of statements } else { Group of statements }

end if

Example: if(balance in account >= min.balance) then honor request else reject request end if

STRUCTURED ENGLISH-CASE STATEMENT

Case (variable) Variable = P: { statements for alternative P} Variable = Q: { statements for alternative Q} Variable = R: { statements for alternative R} None of the above: { statements for default case} end case

Example : Case(product code) product code =1 : discount= 5% product code =2 : discount =7% None of the above : discount=0 end case

STRUCTURED ENGLISH-REPETITION STRUCTURE for index = initial to final do { statements in loop } end for Example : Total =0 for subject =1 to subject =5 do

total marks=total marks +marks(subject) write roll no,total marks end for

STRUCTURED ENGLISH-WHILE LOOP while condition do { statements in loop } end while Example : while there are student records left do read student record compute total marks find class write total marks, class, roll no end while

EXAMPLE Update inventory file for each item accepted record do { search inventory file using item code if successful then { update retrieved inventory record; write updated record in inventory file using accepted record} else { create new record in inventory file; enter accepted record in inventory file} end if end for LEARNING UNIT 2 Decision table based specifications

ADVANTAGES OF DECISION TABLE

Easy to understand by non-computer literate users and managers. Good documentation of rules used in data processing. Simple representation of complex decision rules. Tabular representation allows systematic validation of specification detection of redundancy, incompleteness & inconsistency of rules. There exist algorithms to automatically convert decision tables to equivalent computer programs.

METHOD OF OBTAINING DECISION TABLE FROM WORD STATEMENT OF RULES 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

DECISION TABLE FROM WORD STATEMENT

Condition Stub CODITIONS

Rule 1

Rule 2

Rule 3

Rule 4

C1 : Age >= 21

Y

N

Y

N

C2: Deposit >=100

Y

Y

N

N

A1: Classify as A

X

-

-

-

A2: Classify as B

-

X

-

-

A3: Classify as C

-

-

X

-

A4: Do not open Account

-

-

-

ACTIONS

X

Action Stub

DECISION TABLE NOTATION EXPLAINED CONDITION STUB

CONDITION ENTRIES

ACTION STUB

ACTION ENTRIES

• 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 -.YYES,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

INTERPRETING DECISION TABLE-ELSE RULE

C1: Is applicant sponsored?

Y

Y

C2: Does he have min Qualification?

Y

Y

C3: Is fee paid?

Y

N

A1: Admit letter

X

-

-

A2: Provisional Admit letter

-

X

-

ELSE

-

-

X

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

DECISION TABLE FOR SHIPPING RULES

R1

R2

R3

R4

C1: Qty ordered <= Quantity in stock? C2: (Qty in stock-Qty ordered)<=reorder level

Y

Y

N

N

N

Y

-

-

C3: Is the partial shipment ok?

-

-

Y

N

A1:Qty shipped=Qty ordered

X

-

-

X

EXTENDED ENTRY DECISION TABLE

Condition Entries not necessarily Y or N Action entries not necessarily X or - Extended Entry Decision Tables(EEDT) more concise EEDT can always be expanded to LEDT

R1

R2

R3

R4

R5

R6

C1 : Product code

1

1

1

1

1

2

C2 : Customer code

A

B

A

B

C

-

C3 : Order amount

<=500

<=500

>500

-

-

Discount =

5%

10%

6%

5%

Example

7.5%

>500

7.5%

MIXED ENTRY DECISION TABLE Can mix up Yes, No answers with codes

Rl

R2

R3

R4

R5

R6

Cl : Product code = 1? C2: Customer code = C3: Order amount < 500?

Y A Y

Y B Y

Y A N

Y B N

Y C -

N -

Discount =

5% 7.5% 7.5% 10% 6%

5%

Choice of LEDT, EEDT, MEDT depends on ease of communication with user. Softwares are available to translate DTs to programs.DT’s are easy to check.

LINKED DECISION TABLE

Decision table 1 Salary point=6 Conduct OK? Diligence OK? Efficiency OK?

N Y Y Y

e l s e

Go to table 2 No promotion

X -

X

Decision table 2 Salary point>2 1 yr as class 1 officer Departmental test Passed?

Decision table3 Complete departmental Course 1 yr since last increment

Y Y

else

N Y

N N

N -

Y -

Y

-

N

-

Advance to next salary point No promotion

X

-

-

-

-

X

X

-

Go to Table3

-

-

-

X

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

LOGICAL CORRECTNESS OF DECISION TABLE

Consider decision table DTI:

Cl: x>60 C2:x<40

Rl Y -

R2 Y

Al A2 :

X -

X

We can expand decision table by replacing each –by Y & N

DT2:

R11

R12

R21

R22

Cl: x>60 C2:x<40

Y Y

Y N

N Y

Y Y

X -

X -

X

X

Al A2 :

DT2 is an Elementary Rule Decision Table (ERDT)

A rule which has no – is an Elementary rule

From this table we see that the rule YY has two contradictory actions. Thus we need to examine the table further and make sure it is not a serious mistake. Also the rule C1=C2=N is missing which needs further examination

LEARNING UNIT 3 Detecting- Incompleteness, Ambiguity,Contradictions & Redundancy in decision table specification

LOGICAL CORRECTNESS OF DECISION TABLE (CONTD) A decision table with 1 condition should have 2 elementary rules, each elementary rule must be distinct, each elementary rule must have distinct k action, if a decision table with k conditions does not have 2 rules specified it is said to be incomplete. For example : DT2 does not have the elementary rule C1:N, C2:N. It is thus incomplete. If the decision table has the same elementary rule occurring more than once it is said to have multiplicity of specifications For Example: In DT2 The rule C1:Y,C2:Y occurs twice. Thus it has multiplicity of specification. 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. If all 2k elementary rules are not present in a k condition decision table is said to be incomplete. DT2 is incomplete as rule C1:N, C2:N is missing Rule C1=N, C2:=N is logically possible as C1=N is X<=60 and C2=N is X >= 40. A value of X = 50 will make C1=N,C2=N Thus DT2 has a real incomplete specification A decision table which has no real ambiguities or real incompleteness is said to be logically correct. Decision table with logical errors should be corrected USE OF KARNAUGH MAPS KARNAUGH map abbreviated K-map is a 2 dimensional diagram with one square per elementary rule The k-map of DT2 is C1 C2

N

Y

?

Al

A2

A1,A2

N Y

If more than one action is in one square it is an ambiguous rule If a square is empty it signifies incomplete specification. USE OF KARNAUGH MAPS Structured English procedure:

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 else steel is grade 7 end if DT3:

Decision table-Grading steel C1:Carbon content <0.7 C2:Rockwell hardness>50 C3 tensile strength>30000

Grade

Y Y Y N Y N N N Y Y N N N Y Y N Y N N N Y Y N Y 10 9 8 7 ? ? ? ?

KARNAUGH MAPS – GRADING STEEL

C1 C2 NN C3

N Y

NY

YY

YN

7

?

9

8

?

?

10

?

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 >min.specified payment C2:Payment in current month>0 C3:Any payment in last 3 months C4: Actual arrears > 3(min. Specified payment per month)

Y

N

N

-

-

-

-

Y -

Y -

N

N Y

N Y

-

Y

N

Y

N

Y

A1 : Send letter A A2 : Send letter B A3 : Send letter C A4 : Send letter D A5 : Send letter E

X -

X -

X -

X -

X

X -

KARNAUGH MAP

C1C2 C3C4 NN NN ?

NY

YY

YN

A3

A1

A1*

NY

A4

A2A4+

A1A4+

A1A4*

YY

A4

A2

A1

A1A4*

YN

C1 : x>m C2:x>0 C3:y>0 m>0 A5 A3 C4:z>3m A1 A1A5* 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 If users say that for rules C1C2C3C4:NYNY AND YYNY (marked with + in k-map) the action is A4 and for C1C2C3C4:NNNN also it is A4, the corrected map is

C1C2 C3C4 NN NN A4

NY

YY

A3

A1

NY

A4

A4

A4

YY

A4

A2

A1

YN

A5

A3

A1

YN

IMPOSSIBLE RULES

CORRECTED DECISION TABLE DT4

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 Action A1 can be represented by the Boolean expression: C1C2C3C4 + C1C2C3C4 + C1C2C3C4 = C1C2C3C4 + C1C2C3 (C4+C4) =C1C2C3C4+C1C2C3 = C1C2C4 + C1C2C3

LEARNING UNIT 4

Eliminating redundancy in specifications

REDUNDANCY ELIMINATION

Redundancy can be eliminated by systematically applying four identities of Boolean Algebra These identities are

KARNAUGH MAP REDUCTION

C3 C4

NN

NY YY YN

A1

A1

NN NY

NY YY YN A2

A2

A2

A2

A2

A2

A2

A2

NN A1

A1 NY

A1

A1

YY

YY A1

YN

C1C2 C3 C4 NN

A1 YN

C3 C4

NN

NY YY YN

NN A3

A3

A3

A3

NY YY YN

A3=C1C2C3C4+C1C2C3C4+C1C2C3C4+C1C2C3C4 =C2C3C4(C1+C1)+C2C3C4(C1+C1) =C2C4(C3+C3)=C2C4

REDUCING DECISION TABLES-USE OF K-MAP C1C2 C3C4 NN NY YY YN NN

A4

A3

A1

NY

A4

A4

A4

YY

A4

A2

A1

A5 A3 A1 YN Boxes marked X correspond to impossible rules. They can be employed if they are useful in reducing rules Using k-map reduction rules we get A1 : C1C4+C1C3 A2 : C1C2C3C4 A3 : C1C2C4 A4 : C3C4+C2C3+C2C4 A5 : C2C3C4

REDUCING DECISION TABLES C1: Payment in current month > min specified payment C2: Payment in current month>0 C3: Any payment in last 3 months C4: Actual arrears> 3(minimum specified payment per month)

Y -

Y Y

N N Y Y Y - N

N N

N N - Y

N

-

Y

-

Y

N

Y

X X - - - A: Send letter A B: Send letter B X - C: Send letter C -STATEMENT X - EXAMPLE-REDUCTION OF RULES-IN WORD D: Send letter D - X X Rules : Insure E: Send letter E Driver if following rules are- satisfied - - 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

DECISION TABLE FOR INSURANCE RULES

-

N

X - X

Cl : Annual income> 20000 C2: Male C3: Married C4: Age > 30

Y Y Y -

Y Y Y

N N Y -

Y Y

E L Y S N E

A1:Insure A2 :Do not insure

X -

X -

X -

X -

X -

X

C1C2 C3C

NN

NY YY YN

NN NY

A1

A1

YY A1

A1

A1

A1

A1

A1

A1

A1

YN REDUCED DECISION TABLE

C2 : Male C3 : Married C4 : Age > 30

Y -

Y Y

Al : Insure A2 : Do not Insure

X

X

LEARNING UNIT 5 -

A1=C3+C2.C4

ELSE

X

Decision trees for specifications Reduced rules : Insure if married or male over 30 DECISION TREES to 2 and 1 condition removed Observe 5 rules simplified Decision Trees is used when sequence of testing condition is important. It is more procedural compared to Decision tables. EXAMPLE – DECISION TREE TO BOOK TRAIN TICKET Book by II AC on 4/8/04 if available else book by II AC on 5/8/04.If both not available book by sleeper on 4/8/04 if available else book on 5/8/04 by sleeper. If none available return.

Book II AC

Y

C1 N

Book II AC

Y

C2

Book sleeper

Y

N

C3

Book sleeper

Y

N

C4 N Return C1: Is II AC ticket available on 4/8/04 C2: Is II AC ticket available on 5/8/04 C3: Is sleeper available on 4/8/04 C4: Is sleeper available on 5/8/04 Observe in the tree sequencing of conditions which is important in this example CONDITIONS Decision trees are drawn left to right Circles used for conditions Conditions labelled and annotation below tree Conditions need not be binary For example:

>=60 C

>=50 >=40 else

GRADE A GRADE B GRADE C GRADE F

Sometimes Decision trees are more appropriate to explain to a user how decisions are taken

COMPARISON OF STRUCTURED ENGLISH, DECISION TABLES AND DECISION TREES STRUCTURED ENGLISH

ISOLATING CONDITIONS & ACTIONS

NOT GOOD

BEST

GOOD

SEQUENCING CONDITIONS BY PRIORITY

GOOD

NOT GOOD

BEST

BEST

NOT GOOD

CHECKING FOR COMPLETENESS, CONTRADICTION

NOT GOOD

DECISION TABLES

DECISION TREES

CRITERION FOR COMPARISON

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 Use Decision trees when sequencing of conditions is important and if there are not many conditions to be tested

REFERENCES 1. V.Rajaraman, “Analysis and Design of Information Systems”, 2nd Edition, Prentice Hall of India, New Delhi, 2002. Most of the material in this module is based on Chapter 8 and 9 of the above book. The book is perhaps the only one which has extensive discussion on error detection in Decision Tables. 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. 3. J.A.Hoffer, J.F.George, J.S.Velacich, “Modern Systems Analysis and Design”, Third Edition, Pearson Education Asia, 2002. Chapter 7 (pages 282 to 303) cover the topics in this module. The book has a number of interesting case studies and a good problem set. The web site http://prenhall.com/hoffer has material to assist students who use this text book.

4. E.Yourdon “Modern Structured Analysis”, Prentice Hall of India, 1996. Chapter 11 (pages 203 to 232) describes structured English and Decision Tables. There is a larger set of exercises at the end of the chapter.

System Analysis and Design/Structured Systems Analysis and Design Multiple Choice Questions

6.1

Structured English is used to describe a. how programs are to be written b. processes in a DFD in a reasonably precise manner c. how DFDs are used in data processing d. data flows in DFD

6.2

Structured English is a a. structured programming language b. description of processes in simple English c. method of describing computational procedures reasonably precisely in English d. natural language based algorithmic language

6.3

The objective of using structured English is to a. describe computational procedures reasonably precisely which can be understood by any user b.

expand a DFD so that a user can understand it

c. develop algorithms corresponding to processes in a DFD d. ease writing programs for DFDs 6.4

Structured English description of processes (i) should be understandable to a user of a computer based system (ii) should be understandable to a programmer (iii) can be descriptive in nature (iv) should be translatable by a compiler a. i and iii b. ii and iv c. i, ii and iv d. i and ii

6.5

A decision table is a. a truth table b. a table which facilitates taking decisions c. a table listing conditions and actions to be taken based on the testing of conditions

V. Rajaraman/IISc. Bangalore

M6/V1/July 04/1

System Analysis and Design/Structured Systems Analysis and Design Multiple Choice Questions

d. a table in a Decision Support System 6.6

A decision table a. has a structured English equivalent representation b. cannot be represented using structured English c. does not have an equivalent algorithmic representation d. cannot be used to represent processes in a DFD

6.7

A decision table is preferable when the number of a. conditions to be checked in a procedure is small b. conditions to be checked in a procedure is large c. actions to be carried out are large d. actions to be carried out are small

6.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.9

Structured English statements must be a. short and clear b. specified quantitatively c. specified qualitatively d. detailed and descriptive

6.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

V. Rajaraman/IISc. Bangalore

M6/V1/July 04/2

System Analysis and Design/Structured Systems Analysis and Design Multiple Choice Questions

(iv)if weight < 40 kg. reject candidate a. i and ii b. ii and iii c. iii and iv d. ii and iv 6.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

V. Rajaraman/IISc. Bangalore

M6/V1/July 04/3

System Analysis and Design/Structured Systems Analysis and Design Multiple Choice Questions

6.12 The following structured English procedure is incorrect because

if balance in account <=0 then {issue exception note to dept. mark “stop future issues” in departments record} else if balance in account <minimum balance then { issue item to dept. issue warning to dept.} end if end if a. end if in second if is not needed b. nesting of ifs is not correct c. no action is specified when balance in account >=minimum balance d. the value of minimum balance is not specified 6.13 The

following

structural

English

is

incorrect

because

case (income slab) Income slab =1 :

tax= 10%

Income slab =2 or 3 : Income slab =5 :

tax= 20% tax= 30%

end case a. no action is specified for income slab of 4 b. income slab has to be rupees c. income slab =2 or 3 is wrong d. number of cases is too small

V. Rajaraman/IISc. Bangalore

M6/V1/July 04/4

System Analysis and Design/Structured Systems Analysis and Design Multiple Choice Questions

6.14

The following structured English procedure is incorrect because

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

V. Rajaraman/IISc. Bangalore

M6/V1/July 04/5

System Analysis and Design/Structured Systems Analysis and Design Multiple Choice Questions

c. purely descriptive specification d. very imprecise specification 6.17 Decision table description of data processing is a. non-procedural specification b. procedural specification c. purely descriptive specification d. very imprecise specification 6.18 In the following word statement the conditions are:“if a student gets 50 marks or more in mathematics and 40 marks or more in English he passes the examination, otherwise he fails” a. student passes the examination b. student fails the examination c.

student gets 50 marks or more in mathematics

d. student mathematics marks >= 50 and student English marks 6.19 In the following word statement the actions are“if a student gets 50 marks or more in mathematics and 40 marks or more in English he passes the examination,

otherwise

he

fails”

(i)student passes the examination (ii)student fails the examination (iii)student gets 50 marks or more in mathematics (iv)student mathematics marks >= 50 and student English marks >= 40 a. i and ii b. i and iii c. ii and iii d. iii and iv 6.20 In a limited entry decision table the condition stub a. lists X or – corresponding to actions to be executed b. lists the conditions to be tested c. has Y or N or – entries d. lists the actions to be taken

V. Rajaraman/IISc. Bangalore

M6/V1/July 04/6

System Analysis and Design/Structured Systems Analysis and Design Multiple Choice Questions

6.21 In a limited entry decision table the condition entries a. list X or – corresponding to actions to be executed b. list the conditions to be tested c. have Y or N or – entries d. list the actions to be taken 6.22 In a limited entry decision table the action stub a. lists X or – corresponding to actions to be executed b. lists the conditions to be tested c. has Y or N or – entries d. lists the actions to be taken 6.23 In a limited entry decision table the action entries a. list X or – corresponding to actions to be executed b. list the conditions to be tested c. have Y or N or – entries d. list the actions to be taken 6.24 In a limited entry decision table the condition entries may be a. Y or N only b. Y, N or – c. A binary digit d. Any integer 6.25 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.26 A rule in a limited entry decision table is a a. row of the table consisting of condition entries b. row of the table consisting of action entries c. column of the table consisting of condition entries and the corresponding action entries

V. Rajaraman/IISc. Bangalore

M6/V1/July 04/7

System Analysis and Design/Structured Systems Analysis and Design Multiple Choice Questions

d. columns of the tables consisting of conditions of the stub 6.27 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.28 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.29 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 6.30 A—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 6.31 An extended entry decision table has a. only Y, N or – entries b. entries which extend the condition c. questions asked extended into the condition entry part of the table d. only numerical entries 6.32 An extended entry decision table a. has no limited entry equivalent b. cannot be replaced by a table with only Y, or – entries c. may have Yes, No answers to conditions d. can always be converted to an equivalent limited entry decision tabl

V. Rajaraman/IISc. Bangalore

M6/V1/July 04/8

System Analysis and Design/Structured Systems Analysis and Design Multiple Choice Questions

6.33 An extended entry decision table is a. very difficult to understand b. quite concise compared to a limited entry decision table developed for the same task c. large compared to a limited entry table developed for the same task d. is not very often used 6.34 A mixed entry decision table a. may have some conditions with Y, N, or – entries b. may not have any Y, N, or – entry c. may have only non-numerical entries d. may

mix

numerical

and

non-numerical

entries

Given a decision table “test” shown below R1

R2

R3

C1

Y

N

Y

C2

N



Y

A1

X

––

A2



X



A3

X



X

Decision table–“test”

Answer the following questions: 6.35 Rule R1 is interpreted as follows: a. If C1 is TRUE and C2 is FALSE then perform action A2 b. If C1 is TRUE and C2 is FALSE then perform action A1 and then action A2 c. If C1 is TRUE and C2 is FALSE then perform action A3 and then action A1 d. If C1 is TRUE and C2 is FALSE then perform action A1 and then action A3 6.36 Rule R3 is interpreted as follows:

V. Rajaraman/IISc. Bangalore

M6/V1/July 04/9

System Analysis and Design/Structured Systems Analysis and Design Multiple Choice Questions

a. If C1 is TRUE and C2 is TRUE then perform action A1 and A b. If C1 is TRUE or C2 is TRUE then perform action A3 c. If C1 is TRUE and C2 is TRUE then perform action A1 or A2 d. If C1 is TRUE and C2 is TRUE then perform action A3 6.37 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

V. Rajaraman/IISc. Bangalore

M6/V1/July 04/10

System Analysis and Design/Structured Systems Analysis and Design Multiple Choice Questions

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.38 Structured English equivalents of decision table “test” are given below. Pick the right one

(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

V. Rajaraman/IISc. Bangalore

M6/V1/July 04/11

System Analysis and Design/Structured Systems Analysis and Design Multiple Choice Questions

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 a.

The Elementary Rule Decision Table equivalent of decision table “test” is

C1

Y

N

Y

C2

N

N

Y

A1

X





A2



X



A3

X–

b.C1 Y

c.

X

N

Y

C2

N

Y

Y

A1

X





A2



X



A3

X



X

C1

Y

N

N

Y

C2

N

N

Y

Y

A1

X







A2



X

X



X–



X

A3

V. Rajaraman/IISc. Bangalore

M6/V1/July 04/12

System Analysis and Design/Structured Systems Analysis and Design Multiple Choice Questions

d. C1

Y

N

N Y

C2

N

N

Y

Y

A1

X







A2



X





A3

X



X

X

6.39 The decision table “test” is a. ambiguous b. contradictory c. incomplete d. complete

Answer the following referring to the decision table “test2” R1

R2

C1 : x <= 50

N



C2 : x >= 70



N

A1

X



A2



X

Decision Table: “test2” 6.40 Decision table “test2” is a. really incomplete b. complete c. apparently incomplete d. apparently complete 6.41 Decision table “test2” a. has a real ambiguity b. has an apparent ambiguity c. is logically correct

V. Rajaraman/IISc. Bangalore

M6/V1/July 04/13

System Analysis and Design/Structured Systems Analysis and Design Multiple Choice Questions

d. is incomplete

C1

N



C2



N

A1

Y



A2

Y

DECISION TABLE “testing”–

6.42 Decision

table

“testing”

can

be

made

complete

(i)by putting an ELSE rule (ii)is as it is complete and does not need any more rules (iii)by specifying actions when C1 = Y and C2 = Y (iv)by specifying actions when C1 = N and C2 = N a. (i), (ii) b. (i), (iii) c. (ii), (iii) d. (ii), (iv) 6.43 The

K-map

equivalent

of

C1

a. C2

table

“test2”

is

C1

Y

Y N

decision

A2

N

b. C2

Y

N

A1

Y

A1

A2

A1

N

A2

A1

V. Rajaraman/IISc. Bangalore

M6/V1/July 04/14

System Analysis and Design/Structured Systems Analysis and Design Multiple Choice Questions

c.

d.

C1

Y

C1

N

Y

C2

N

C2

Y N

A2

A1

Y

A1,A2

N

6.44

The

following

structured

if

A1 A2

decision English

table

A2

equivalent statement

of

the is

C2 TRUE

then if

C1

TRUE

then do

A3

else

do

A2

do

A1 and A3

end if else end if

a.

b.

C1

Y

Y

N

C2

Y

N



A1





X

A2



X



A3

X



X

C2

Y

Y

N

V. Rajaraman/IISc. Bangalore

M6/V1/July 04/15

System Analysis and Design/Structured Systems Analysis and Design Multiple Choice Questions

c.

d. C1

6.45

C1

Y

N

N

A1





X

A2



X



A3

X



X

C1

Y

N



C2

Y

Y

N

A1





X

A2



X



A3

X



X

Y

N

Y

C2

Y

Y

N

A1





X

A2



X



A3

X



X

The decision table equivalent of the following structured English statement

if

is

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.}

V. Rajaraman/IISc. Bangalore

M6/V1/July 04/16

System Analysis and Design/Structured Systems Analysis and Design Multiple Choice Questions

else {issue item to dept.} end if end if

C1=balance in account <=0; C2=balance in account < min. balance A1=issue exception note and mark “no future issues” A2=issue item to dept A3=issue warning to dept. a.

b.

c.

C1

Y

N

N

C2



Y

N

A1

X





A2



X

X

A3



X



C1

Y

N

N

Y

C2

N

Y

N

Y

A1

X







A2



X

X

X

A3



X





C1

N

N

N

C2



Y

N

A1

X





A2



X

X

A3



X



V. Rajaraman/IISc. Bangalore

M6/V1/July 04/17

System Analysis and Design/Structured Systems Analysis and Design Multiple Choice Questions

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

Y

A1

A1

A2

N

A1

A2

A2

V. Rajaraman/IISc. Bangalore

YN

M6/V1/July 04/18

System Analysis and Design/Structured Systems Analysis and Design Multiple Choice Questions

The rule for action A1 may be represented by the following minimal Boolean expression

a. C1.C2 + C1.C2.C3 b. C1.C2.C3 + C1.C3 c. C1.C3 + C2 d. C1.C3 + C2.C1 6.50

The following decision table may be replaced by its best equivalent shown

a.

b.

below:

C1

N

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

C1

N

N

Y

Y

C2





Y

N

C3

Y

N





A1

X





X

A2



X

X

X

C1



Y

N

Y

C2







N

C3

N



Y



A1





X

X

V. Rajaraman/IISc. Bangalore

N

N

N

Y

Y

Y

Y

M6/V1/July 04/19

System Analysis and Design/Structured Systems Analysis and Design Multiple Choice Questions

c.

d.

A2

X

X



X

C1

N



Y

N

Y

C2



Y

Y



N

C3

N

N



Y



A1







X

X

A2

X

X

X



X

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:

a.

C1

N

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

C1

N

N

Y

Y

C2





Y

N

C3

Y

N





A1

X





X

A2



X

X

X

V. Rajaraman/IISc. Bangalore

N

N

N

Y

Y

Y

Y

M6/V1/July 04/20

System Analysis and Design/Structured Systems Analysis and Design Multiple Choice Questions

b.

c.

d.

6.52

C1



Y

N

Y

C2







N

C3

N



Y



A1





X

X

A2

X

X



X

C1

N



Y

N

Y

C2



Y

Y



N

C3

N

N



Y



A1







X

X

A2

X

X

X



X

C1

Y

N

N

Y

C2







N

C3



N

Y



A1





X

X

A2

X

X



C1

N

N

C2

N

N

Y

Y

Y

Y

N

N

C3

Y

N

N

Y

Y

N

N

Y

A1

X





X





X

X

V. Rajaraman/IISc. Bangalore

N

N

X

Y

Y

Y

Y

M6/V1/July 04/21

System Analysis and Design/Structured Systems Analysis and Design Multiple Choice Questions

a.

b.

c.

d.

A2



X

X



C1

N

N

Y

Y

C2





Y

N

C3

Y

N





A1

X





X

A2



X

X

X

C1



Y

N

Y

C2







N

C3

N



Y



A1





X

X

A2

X

X



X

C1

N



Y

N

Y

C2



Y

Y



N

C3

N

N



Y



A1







X

X

A2

X

X

X



X

C1

Y

N

N

Y

C2







N

C3



N

Y



V. Rajaraman/IISc. Bangalore

X

X

X

X

M6/V1/July 04/22

System Analysis and Design/Structured Systems Analysis and Design Multiple Choice Questions

A1

6.53





X

X

A2

X

X



Given the

R1

X

decision table “test 3”answer the following questions:

R2

R3

R4

R5

R6

R7

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

R8

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.

A1

X



A2



X

Y

N

N

C2



Y

N

A1

X





A2



X



A3





X

C1

Y

N

N

C2



Y

N

c. C1

Y

Y

N

N

C3

N

Y

N

Y

C2









A1

X

X





A1

X





A2





X

X

A2



X



V. Rajaraman/IISc. Bangalore

d.

C1

M6/V1/July 04/23

System Analysis and Design/Structured Systems Analysis and Design Multiple Choice Questions

A3





X

6.55 The decision table “test 3“ is a. Incomplete b. Ambiguous c. Incorrect d. .has redundancies 6.56

The decision table equivalent of the following Boolean expression is

A1= C3.C1.C2 + C2.C3.C1

A2= C1.C3 + C3.C2.C1+ C1.C2.C3

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

V. Rajaraman/IISc. Bangalore

M6/V1/July 04/24

System Analysis and Design/Structured Systems Analysis and Design Multiple Choice Questions

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

where I indicates impossible rule

The contradictory rules are a. YYYY, NYYY, NNYY V. Rajaraman/IISc. Bangalore

M6/V1/July 04/25

System Analysis and Design/Structured Systems Analysis and Design Multiple Choice Questions

b. YYYN, NYYN, NNYN c. YYYY, YYYN, NNYN d. There are no contradictory rules 6.58 a.

In “test 4” the contradictory actions are: A1, A3

b. A1, A2 c. A2, A3 d. A2, I 6.59

In “test 4” missing rule is:

e. NYNN f.

NYYN

g. YYNN h.

YNYN

6.60

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.

b.

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

C1

N

Y







N

V. Rajaraman/IISc. Bangalore

N

M6/V1/July 04/26

System Analysis and Design/Structured Systems Analysis and Design Multiple Choice Questions

c.

d .

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

C1









N

C2

N



Y



N

C3

Y

Y



N

N

C4

Y

N

Y

N



A1

X









A2



X

X





A3







X

X

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

V. Rajaraman/IISc. Bangalore

M6/V1/July 04/27

System Analysis and Design/Structured Systems Analysis and Design Multiple Choice Questions

6.62

Decision Tables 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

6.63 Structured English is preferred when a. any 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 6.64

The objective of using decision trees is to a. Expand a DFD so that a user can understand it b. To specify sequence of conditions to be tested and actions to be taken c.

Describe a computational procedure that can be easily understood by a person

d. 6.65

Use it as a tool in decision support system

Decision trees are superior to decision tables when a. The number of conditions to be tested is very large b.

When sequence of testing conditions is not particularly important

c. When sequence of testing conditions is not particularly important d. 6.66

When a large number of actions are to be specified

Logical correctness of a specifications can be systematically checked by a. Using decision trees b.

Using structured English

c. Using DFD’s d. 6.67

Using decision tables The decision tree equivalent of the following structured English is

if C2 then if C1 then A3

V. Rajaraman/IISc. Bangalore

M6/V1/July 04/28

System Analysis and Design/Structured Systems Analysis and Design Multiple Choice Questions

else A2 endif else A1,A3 endif

A3 Y

C2

Y

a.

N

A2

C1 N

A1, A3

Y b.

A3

C1

Y

A2

N

C2

A1

Y

N C1

A3

N

Y Y c.

C1

A3

N

A2

C2 N V. Rajaraman/IISc. Bangalore

A1, A3 M6/V1/July 04/29

System Analysis and Design/Structured Systems Analysis and Design Multiple Choice Questions

A2 C1 d. A3 C2 A1A3

6.68 Decision tables are better then Decision trees when a. Conditions are to be isolated from actions in a word statement b.

Condition sequences are to be found from a word statement

c. Logical correctness of a word statement is to be established d.

Large number of actions is to be performed

6.69 The decision table equivalent of the Decision tree of choice (a) of 6.5.7 is a.

C2 C1

Y N

N Y

N N

Y Y

A1 A2 A3

X X

X -

X X -

X

b. C1 C2

Y Y

Y N

N -

A1 A2 A3

X

X -

X X

c. C1 C2

Y Y

Y N

A1 A2 A3

X

X -

V. Rajaraman/IISc. Bangalore

N Y X X M6/V1/July 04/30

System Analysis and Design/Structured Systems Analysis and Design Multiple Choice Questions

d. C1 C2

Y Y

Y N

A1 A2 A3

X

X -

V. Rajaraman/IISc. Bangalore

N Y X X

Error

M6/V1/July 04/31

System Analysis and Design/Structured Systems Analysis and Design Multiple Choice Questions

Key to Objective Questions 6.1

b

6.2

c

6.7

b

6.8

d

6.9

b

6.10

6.13

a

6.14

c

6.15

b

6.16

b

6.17

a

6.18

a

6.20

6.21

c

6.22

d

6.23

a

6.24

6.19

6.3

b

a

6.4

d

6.5 d

c 6.11

6.6 a

a 6.12

6.25

a

6.26

c

6.27

c

6.28

d

6.29

b

6.30

6.31

c

6.32

d

6.33

b

6.34

a

6.35 d

6.36

6.37

b

6.38

a

6.39

c

6.40

d

6.41

c

6.43 6.49

b b

c d b a d

6.42

a

6.44

c

6.45

c

6.46

a

6.47

d

6.48

b

6.50

c

6.51

a

6.52

b

6.53

a

6.54

a

a

6.57

c

6.58

b

6.59

6.55

d

6.56

6.61

b

6.62

a

6.63

c

6.67

c

6.68

c

6.69

b

V. Rajaraman/IISc. Bangalore

6.64

b

6.65

c c

6.60 6.66

d d

M6/V1/July 04/32

MODULE 3

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 (i) for each deposit do if deposit >=5000 then if period >= 3 years then interest =12% else interest =10% end if else interest =8% end if end for (ii) Deposit >= 5000 Y Y Period >= 3 years Y N Interest

12

10

N – 8

6.2 An organization maintains an employee file in which each record has 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. (i) While employee records left in file do Read Number, name , gross pay

if gross pay <=1000 then increase = gross pay * 0.15 else if gross pay <= 2500 then increase = gross pay * 0.1 else increase = gross pay * .05 end if end if Gross pay = gross pay + increase Write Number, name, gross pay end while (ii) While employee records left in file do Read Number, name, gross pay do Table Gross pay <= 1000 Gross pay <= 2500 Percent increase

Y –

N Y

N N

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. While record left in customer file do Read customer id, name, address, past meter reading, new meter reading Consumption = new meter reading – old meter reading if consumption <= 500 then charge =10 else if consumption <=800 then charge = 10 + (consumption – 500) * 0.0125 else if consumption <= 30800 then charge = 13.75 +(consumption – 800) * 0.012

else if consumption <=130800 then charge = 373.75 + (consumption – 30800) * 0.011 else charge = 1473.75 + (consumption – 130800) * 0.01 end if end if end if end if write customer id, name, address, past meter reading, new meter reading, consumption, charge end while 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 if (qty. requested = qty. in stock) then { qty. issued = qty. requested qty in stock = 0; send (customer id, qty issued) to accounts send reorder request to purchase } end if if (qty. requested > qty. in stock) then if (partial qty. acceptable) then { qty issued = qty. requested qty in stock = 0; send (customer id , qty issued) to accounts send reorder request to purchase. write (customer id, (qty. requested – qty. issued )) in file} else {qty. issued = 0; send reorder request to purchase

write (customer id, qty requested) in back order file } end if end if end for 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.) Payment Reconciliation Process for each student Bill record do Store student Bill record in Bill file end for for each payment received do Read bill record of student from Bill file if amount paid = grand total to pay then balance due = 0 else balance due = (grand total to pay – amount paid) Store bill record in unpaid bill file end if end for On payment due date, (due date + 10), (due date + 20) do While records left in unpaid Bill file do if balance due > 0 then send overdue notice, end if end while On (payment due date + 30) do While records left in unpaid bill file do if balance due > 0 then send message to warden end if end while

6.7

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 balance to be sent in back-order file. Obtain a decision table for above policy Order <= stock Credit OK

Y Y

Y N

N Y

N N

Supply order Credit not OK Do not supply Supply stock Enter (order – stock) In back Order file

X







– –

X –

– X

X –





X



Observe that the last rule is not specified in the statement of rules. This has been added to complete the table. 6.8 Obtain a decision table to decide whether on a given date an employee in an organization has completed one year’s service or not. Let date of joining be DJ/MJ/YJ (Day/Month/Year) Let today’s date be DT/MT/YT (Day/Month/Year) If (YT – YJ) If (MT – MJ)

>1 –

=1 >0

=1 =0

If (DT – DJ)





>= 0

E L S E

Yes

Yes

No

One year’s service Yes

6.9 Obtain a decision table corresponding to the structured English procedure given in worked example 6.4of decision table for each customer requisition do decision table decision table qty requested < qty in stock qty requested = qty in stock qty requested > qty in stock (qty in stock – qty requested) <= reorder level Partial order OK?

Y – – Y

– Y – –

– – Y –

– – Y –

Y – – N





N

Y



qty issued = qty requested qty issued = qty in stock qty in stock = (qty in stock – qty issued) qty in stock = 0 Send customer id,qty issued to account process qty issued = 0 Send reorder request to purchase process Write (customer id, qty requested – qty issued) in back order file Write (customer id, qty requested) in back order file

X – X – X – X

X – – – – – X – X – – X X X

– X – X X – X

X – X – X – –







X







X





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 requested available?

< Stamp cost = Stamp cost > Stamp cost – Y Y

Amount insufficient Return amount ‘No stamp’ light on Dispense stamp Go to Table 2 Stop

X X – – – X

– – – X – X

– N

– – – X X –

– X X – – X

Table 2: Make Change Amount tendered Stamp cost 25 ps. Available? 10 ps. Available? 5 ps. Available No of 25 ps. Returned No of 10 ps. Returned No of 5 ps. Returned Dispense stamp No. change light on Return amount Stop

50 20 >=1 – >=1

50 20 – >=2 >=2

50 15 >=1 >=1 –

50 15 >=1 – >=2

1 – 1 X – – X

– 2 2 X – – X

1 1 – X – – X

1 – 2 X – – X

50 50 50 25 25 10 5 5 20 15 >=1 >=1 >=1 – – >=1 >= 2 >=1 – >=1 >=1 – >=2 >=1 – 1 1 1 X – – X

1 2 – X – – X

1 1 2 X – – X

– – 1 X – – X

– 1 – X – – X

25 15 – – >=2

25 10 – >=1 >=1

25 5 – >=2 –

25 5 – >=1 >=2

10 5 – – >=1

E L S E

– – 2 X – – X

– 1 1 X – – X

– 2 – X – – X

– 1 2 X – – X

– – 1 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.

C1: Door open? C2: Ring sign on? C3: Enter sign on? C4: Door locked? Ring bell Enter Wait Leave

R1 N N N N

R2 N N N Y

R3 N N Y N

R4 N N Y Y

R5 N Y N N

R6 N Y N Y

R7 N Y Y N

R8 N Y Y Y

R9 Y N N N

– – – X A1

– – – X A1

– – X – X – – – – – X – – X – X A2 A1 A3 A1

X X – – A4

– – – X A1

– – – X A1

R10 R11 R12 R13 R14 R15 Y Y Y Y Y Y N N N Y Y Y N Y Y N N Y Y N Y N Y N ? ? ? ?

– X – – A2

? ? ? ?

X – X – A3

? ? ? ?

X X – – A4

R16 Y Y Y Y ? ? ? ?

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

Fig S6.11 k-map for solution 6.11 Decision table with redundancies removed Decision Table with removed (Condition C1 redundant) C2: Ring on? C3: Enter on? C4: Door locked?

– – Y

N N –

N Y N

Y N N

Y Y N

Ring bell Enter Wait Leave

– – – X A1

– – – X A1

– X – – A2

X – X – A3

X X – – A4

6.12 In installment buying where payments are made on a weekly basis the action taken on “an account goes into arrears” is a crucial aspect of the operation. Table S6.12 illustrates a simplified arrears procedure. Answer the following questions: (i) Are all elementary rules logically possible? (ii) Is the table complete? (iii) Has the table any ambiguities? (iv) Are there logical errors in the table? If yes, point them out. (v) Use reasonable assumptions and correct the table. (vi) Remove any redundancies in the corrected table (Table S6.12). Table S6.12 A Simplified Arrears Procedure C1: This week’s cash > weekly rate C2: This week’s cash > 0 C3: Any cash during last month C4: Arrears . >2 * weekly rate C5: Arrears >4 * weekly rate

Y – – – N

Y – – – Y

N Y – Y N

N Y – N –

– – N – N

– – N – Y

– N Y N –

– N Y Y N

– N Y – Y

Send arrears letter A Send arrears letter B Send arrears letter C Send arrears letter D Notify accounts Take special action

– – – – X –

X – – – – –

– X – – – –

– – – – X –

– – X – – –

– – – – – X

– – – – X –

– – – X – –

– – – – – X

A1 A2 A3 A1 A4 A5 A1 A6 A5

K-map for the decision table C1C2

C1C2

YY

NN NY A4 A1 A4 A4 A3 A4 A6 A3

YN

A1

C3C4

NN NY

A1

YY A1 A4 A1 A4 A1

C3C4

YN

NN

NY

YY

A5

A5

A5

?

A2 A5 A2

NN NY YY

A1

YN

C5 = N

C5=Y Fig S6.12

Assume weekly rate >0 Impossible rule: C1 = Y

C2 = N

Impossible rule: C4 = N

C5 = Y

YN

K- map (Fig. S 9.10) has incompleteness marked by ? C1 N

C2 Y

C3 Y

C4 Y

C5 Y

Logically contradictory rules C1

C2

C3

C4

C5

N N Y Y Y

Y Y Y Y Y

N N N N N

N Y N Y Y

N N N N 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 A6 = C2 . C3 . C4 . C5

C1C2 C3C4 NN NY

YY YN

NN

NY

YY

A4

A1

A1

A4

A1

A1

A6 A1

A3 A1

C5=N Fig S.6.13

A1 A1

YN

C1C2 C3C4

NN

NY

YY

YN

NN NY

YY

A5

A5

A1

A5

A1

A2

YN

C5=Y FigS6.14 C1: This week’s cash > weekly rate C2: This week’s cash > 0 C3: Any cash during last month C4: Arrears . > 2 * weekly rate C5: Arrears > 4 * weekly rate

– – Y N –

Y – – – N

– Y N – N

Y – N – –

N Y Y – Y

Y – Y – Y

N Y Y Y N

– N N – N

N – N – Y

– N – Y Y

– N Y Y N

Send arrears letter A Send arrears letter B Send arrears letter C Send arrears letter D Notify accounts Take special action

– – – – X –

– – – – X –

– – – – X –

– – – – X –

– – – – X –

X – – – – –

– X – – – –

– – X – – –

– – – – – X

– – – – – X

– – – X – –

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 Y

Do not supply send intimation

N

C1 N

Supply what is in the stock. Enter balance in the back order file

Y N

C2

Do not supply send intimation

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 Y

Ring bell and enter

C3 Y

N

N N

Y

C2

Y C1

N C3 N

C4 Y

Ring bell and wait Enter

Leave

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. Obtain a decision tree for the above problem

Pass Y C2 Y N C1

C4

Appear in mathematics

Y N

N

Y C3

Fail C5

Y

Pass

N

Fail

N Fail

Pass

>=50 >=50

C2

>=40

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% CORRECTED DECISION TREE

>=50 C1

>=40

Pass Fail

C2

Pass C3 Fail

>=60 C2 <40

Pass Repeat math 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 C1 N

Y Book ticket Y

C2

Book ticket N

Y

C3

Book ticket N

Y

C4

Book ticket N

Y

C5

Book ticket N

Y

C6 N

C1 : Is ticket available on early morning flight on 21/4/04 C2 : Is ticket available on late morning flight on 21/4/04 C3 : Is ticket available on evening flight on 21/4/04 C4 : Is ticket available on early morning flight on 22/4/04 C5 : Is ticket available on late morning flight on 22/4/04 C6 : Is ticket available on evening flight on 22/4/04

No ticket available

System Analysis and Design / Structured Systems Analysis and Design

Question Bank

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.4 A narrative of a user’s requirements in an organization is given below: "Our company receives a number of items from 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

V. Rajaraman/IISc. Bangalore

M6/V1/July 04/1

System Analysis and Design / Structured Systems Analysis and Design

6.5 6.6 6.7 6.8 6.9

Question Bank

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. Develop the processing rules in Structured English for the inspection process of the user’s requirements stated in Exercise 6.4 Develop the processing rules in Structured English for the purchase process of the user’s requirements stated in Exercise 6.4. Develop the processing rules in Structured English for the accounting process stated in Exercise 6.4 Develop the processing rules in Structured English for the stores process stated in Exercise 6.4 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.

V. Rajaraman/IISc. Bangalore

M6/V1/July 04/2

System Analysis and Design / Structured Systems Analysis and Design

Question Bank

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. (a) obtain an EEDT for the rules (b) obtain an LEDT for the rules check the logical correctness of the decision table 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: (i) Are all elementary rules logically possible? (ii) Is the table complete? (iii) Has the table any ambiguities? (iv) Are there logical errors in the table? If yes, point them out. (v) Use reasonable assumptions and correct the table. (vi) Remove any redundancies in the corrected table (Table 6.) 6.15 Obtain a decision tree for Exercise 6.9. 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.17 Obtain a decision tree for Exercise 6.12.

V. Rajaraman/IISc. Bangalore

M6/V1/July 04/3

System Analysis and Design / Structured Systems Analysis and Design

Question Bank

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 − − Send arrears letter A Send arrears letter B Send arrears letter C Send arrears letter D Notify accounts Take special action

V. Rajaraman/IISc. Bangalore

− − − − X − A1

X − − − − − A2

− X − − − − A3

− − − − X − A1

− − X − − − A4

− − − − − X A5

− − − − X − A1

− − − X − − A6

− − − − − X A5

M6/V1/July 04/4

System Analysis and Design / Structured Systems Analysis and Design

Pointers

References 1. V.Rajaraman, “Analysis and Design of Information Systems”, 2nd Edition, Prentice Hall of India, New Delhi, 2002. Most of the material in this module is based on Chapter 8 and 9 of the above book. The book is perhaps the only one which has extensive discussion on error detection in Decision Tables. 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. 3. J.A.Hoffer, J.F.George, J.S.Velacich, “Modern Systems Analysis and Design”, Third Edition, Pearson Education Asia, 2002. Chapter 7 (pages 282 to 303) cover the topics in this module. The book has a number of interesting case studies and a good problem set. The web site http://prenhall.com/hoffer has material to assist students who use this text book. 4. E.Yourdon “Modern Structured Analysis”, Prentice Hall of India, 1996. Chapter 11 (pages 203 to 232) describes structured English and Decision Tables. There is a larger set of exercises at the end of the chapter.

V. Rajaraman/IISc. Bangalore

M6/V1/July 04/1

SUMMARY OF MODULE 6

1.

Procedures are used to transform input data into processed results.

2.

Procedure can be described in natural English. Such a description is often ambiguous due to impreciseness of natural English. Structured English attempts to describe verbal statements made in natural English more precisely. Precision is obtained by using ideas of logic and block structuring as in programming languages. Decision tables are more appropriate when a large number of conditions are to be checked in arriving at a set of actions. In structured English a number of key words are used for representing commonly used operations. Some important keywords are; search, retrieve, if, then, else, do, case, while, for. The important control structures used to describe a process are: Selection structure (using if then else or case), loop structure (using for, while and repeat unitl).

3. 4. 5. 6.

7.

8.

Decision tables specify actions to be performed for each combination of results obtained by testing a set of conditions relevant in a problem.

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.

18.

Incompleteness and ambiguity are easily specified by using a two-dimensional diagram onto which a decision table is mapped. The diagram is called a Karnaugh may (K-map).

19.

K-maps are also useful to detect redundant rules.

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.

21.

Pre-processors are available to automatically convert decision tables to program in a programming language.

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

6.2

6.3

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 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. 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.4

A narrative of a user’s requirements in an organization is given below: "Our company receives a number of items from 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 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.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. (a) obtain an EEDT for the rules (b) obtain an LEDT for the rules (c) check the logical correctness of the decision table 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: (i) (ii) (iii) (iv)

Are all elementary rules logically possible? Is the table complete? Has the table any ambiguities? Are there logical errors in the table? If yes, point them out.

(v) (vi)

Use reasonable assumptions and correct the table. Remove any redundancies in the corrected table (Table 6.)

6.15 Obtain a decision tree for Exercise 6.9. 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.17 Obtain a decision tree for Exercise 6.12. 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.

C1: rate C2: C3: C4: C5:

Table P.6.14 A simplified Arrears Procedure This week's cash > weekly Y Y N N This week's cash > 0 Any cash during last month Arrears > 2 * weekly rate Arrears > 4 * weekly rate

Send arrears letter A Send arrears letter B Send arrears letter C Send arrears letter D Notify accounts Take special action











− − − N

− − − Y

Y − Y N

Y − N −

− N − N

− N − Y

N Y N −

N Y Y N

N Y − Y

− − − − X − A1

X − − − − − A2

− X − − − − A3

− − − − X − A1

− − X − − − A4

− − − − − X A5

− − − − X − A1

− − − X − − A6

− − − − − X A5

References 1.

V.Rajaraman, “Analysis and Design of Information Systems”, 2nd Edition, Prentice Hall of India, New Delhi, 2002. Most of the material in this module is based on Chapter 8 and 9 of the above book. The book is perhaps the only one which has extensive discussion on error detection in Decision Tables. 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. 3. J.A.Hoffer, J.F.George, J.S.Velacich, “Modern Systems Analysis and Design”, Third Edition, Pearson Education Asia, 2002. Chapter 7 (pages 282 to 303) cover the topics in this module. The book has a number of interesting case studies and a good problem set. The web site http://prenhall.com/hoffer has material to assist students who use this text book.

4. E.Yourdon “Modern Structured Analysis”, Prentice Hall of India, 1996. Chapter 11 (pages 203 to 232) describes structured English and Decision Tables. There is a larger set of exercises at the end of the chapter.

MODULE 7

DATA INPUT METHODS 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 7.1.1 A data dictionary has consolidated list of data contained in (i) dataflows (iii) data outputs (a) (b) (c) (d)

(ii) data stores (iv) processes

(i) and (iii) (i) and (ii) (ii) and (iv) (i) and (iv)

7.1.2 A data dictionary is useful as (i) (ii) (iii)

(a) (b) (c) (d)

it is a documentation aid it assists in designing input forms it contains al data in an application including temporary data used in processes (iv) it is a good idea in system design (i) and (ii) (i) and (iv) (i),(ii) and (iii) (i) and (iv)

7.1.3 By metadata we mean (a) (b) (c) (d)

very large data data about data data dictionary meaningful data

7.1.4 A data dictionary is usually developed (a) (b) (c) (d)

At requirements specification phase During feasibility analysis When DFD is developed When a datadase is designed

7.1.5 A data dictionary has information about (a) every data element in a data flow (b) only key data element in a data flow (c) only important data elements in a data flow (d) only numeric data elements in a data flow 7.1.6 A data element in a data dictionary may have (a) (b) (c) (d)

only integer value no value only real value only decimal value

7.1.7 A data element in a data flow (i) (ii) (iii) (iv)

(a) (b) (c) (d)

may be an integer number may be a real number may be binary may be imaginary

(i),(ii),(iv) (iii),(iv),(ii) (i),(ii),(iii) (i) and (ii)

LEARNING UNIT 2

7.2.1 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.2.2 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.2.3 Good system design prevents data entry errors by (i) Designing good forms with plenty of space to write in block capitals (ii) By giving clear instructions to a user on how to fill a form (iii) Reducing keystrokes of an operator (v) Designing good keyboard (a) i, ii, iii (c) i, ii

(b) i, ii, iv (d) iii and iv

7.2.4 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.2.5 The main problems encountered in off-line data entry are: (i) Data are entered by operators (ii) Data entered by hand in forms batched and forms may be missed or misread (iii) Errors are detected after a lapse of time (iv) Data are entered by users (a) i and ii (c) ii and iii

(b) i and iii (d) iii and iv

7.2.6 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.2.7 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.2.8 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

LEARNING UNIT 3 7.3.1 Data inputs which required coding are (a) fields which specify prices (b) key fields (c) name fields such as product name (e) fields which are of variable length 7.3.2 Key fields are normally coded (i) as they provide a unique identification (ii) as they are used for retrieving records (iii) as they facilitate cross referencing between applications which use the key (iv) as it is useful (a) i and ii (c) ii and iii

(b) i and iv (d) i and iii

7.3.3 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 (e) it is needed in database design

7.3.4 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 (e) includes all relevant characteristics of item being coded 7.3.5 By the term “expandable code” we understand that the code (a) conveys information on item being coded (b) is of small length (c) can add new item easily (e) includes all relevant characteristics of item being coded 7.3.6 By the term “meaningful code” we understand that the code (a) conveys information on item being coded (b) is of small length (c) can add new item easily (e) includes all relevant characteristics of item being code

7.3.7 By the term “comprehensive 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.3.8 A concise code is necessarily (a) precise (b) meaningful (c) comprehensive (d) difficult 7.3.9 Serial numbers used as codes are (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.3.10 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.3.11 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.3.12 Significant codes are (i) concise (ii) meaningful (iii) expandable (iv) comprehensive (a) i and ii (c) ii, iii and iv

(b) i, ii and iii (d) i, ii and iv

7.3.13 In significant codes some or all parts of the code (a) are meaningful (b) are usable (c) are significant (d) represent values 7.3.14 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.3.15 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.3.16 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.3.17 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 7.3.18 A modulus-17 check will detect single transcription errors in (a) alphanumeric codes (b) hexadecimal codes (c) decimal numerical codes (d) serial number codes 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.20 For modulus-11 check digit to detect a single transcription errors (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.21 Modulus-11 check digit for the code 45672 is (a) 0 (b) 1 (c) 2 (d) 3 7.3.22 Modulus-11 check digit for the code 85672 is (a) 0 (b) 1 (c) X (d) 3 7.3.23 For modulus-11 check digit to detect single transposition or single transcription error the number of digits in the codes should not exceed (a) 9 (b) 10 (c) 11 (d) 99 7.3.24 Modulus-17 check character for the hexadecimal code AB4567 is (a) F (b) D (c) 1 (d) 0 7.3.25 Sequence numbering of records is used to (i) Identify each record uniquely (ii) Track a missing record in a batch of records

(iii) Count number of records (iv) Sort the records (a) i, ii (b) i, ii, iii (c) i, ii, iii, iv (d) i and iv 7.3.26 A batch control record uses (i) Batch totals of selected fields (ii) A simple count of number of records in a batch (iii) Modulus-11 check digit of each key field (iv) Totals of selected fields of record totalled for the batch (a) i and ii (b) i, ii, iv (c) i, ii, iii, iv (d) iii and iv

7.3.27 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.3.28 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.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.30 Radix check for a field representing year is (a) possible (b) not possible (c) not relevant (d) may be tried 7.3.31 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.3.32 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.3.33 An appropriate range check of age of a tenth standard student in a high school is (a) 5 to 15 (b) 10 to 25 (c) 8 to 20 (d) 3 to 18 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 7.3.35 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.3.36 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.3.37 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

KEY TO OBJECTIVE QUESTIONS

7.1.1 b 7.1.7 c 7.2.6 c 7.3.4 b 7.3.10 b 7.3.16 b 7.3.22 c 7.3.28 c 7.3.34 d

7.1.2 7 .2.1 7.2.7 7.3.5 7.3.11 7.3.17 7.3.23 7.3.29 7.3.35

c b a c c c b b a

7.1.3 7.2.2 7.2.8 7.3.6 7.3.12 7.3.18 7.3.24 7.3.30 7.3.36

b c b a c b b b c

7.1.4 7.2.3 7.3.1 7.3.7 7.3.13 7.3.19 7.3.25 7.3.31 7.3.37

c a b d d d c b c

7.1.5 7.2.4 7.3.2 7.3.8 7.3.14 7.3.20 7.3.26 7.3.32

a a d a b b b c

7.1.6 7.2.5 7.3.3 7.3.9 7.3.15 7.3.21 7.3.27 7.3.33

b c a d c b d c

System Analysis and Design/ Data Oriented Systems Design

Motivation

Motivation ™ When a DFD is developed we have knowledge of all data elements required by an application. ™ Data dictionary lists all data elements but does not say anything about relationships between data elements. ™ Relationships are needed to logically group data elements into related sets or tables. ™ Such an organization o Reduces data duplication o Simplifies adding, deleting and updating data o Simplifies retrieval of desired data ™ Logical databases give conceptual model.. ™ Logical databases need to be stored in physical media such as a hard disk for use by applications. ™ A system is needed to map the logical database to a physical medium, which is transparent to an application program.. ™ Database management systems achieve this purpose.

V. Rajaraman/IISc. Bangalore

//V1/July 04/1

MODULE 7

DATA INPUT METHODS

LEARNING UNITS 7.1 Data Dictionary : its development and use 7.2 Data input methods : Batch and Interactive 7.3 Coding technique for unique data representation.

Systems Analysis And Design

© V. Rajaraman

LEARNING GOALS 1. The need for a data dictionary for an application 2. How to develop a data dictionary for an application 3. Design of forms and screens for data input. 4. Need and methods of coding data elements. 5. Coding schemes for automatic error detection while inputting data 6. Need for and design of input data validation methods.

Systems Analysis And Design

© V. Rajaraman

1 of 41

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.

Systems Analysis And Design

© V. Rajaraman

2 of 41

MOTIVATION ƒ 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.

Systems Analysis And Design

© V. Rajaraman

3 of 41

MOTIVATION ƒ 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.

Systems Analysis And Design

© V. Rajaraman

4 of 41

MOTIVATION ƒUnless data input is correct, results will be unreliable ƒInformation systems normally have a large volume of data ƒBecause of large volume special controls are needed to ensure correctness of data input - otherwise it is difficult to find which data is incorrect ƒThus it is important to design appropriate data input methods to prevent errors while entering data ƒKey data elements are important to identify records.They need to be unique,concise and understandable by users.Thus we need to study methods of coding key data element

Systems Analysis And Design

© V. Rajaraman

5 of 41

WHAT IS DATA DICTIONARY ƒ Data dictionary is a catalogue of all data used in an application, their names, type and their origin. ƒ In other words it is data about data which is called metadata ƒ Data dictionary gives a single point reference of data repository of an organization ƒ It is thus an important documentation which would be useful to maintain a system 7.1.1

System Analysis And Design

© V. Rajaraman

6 of 41

HOW IS DATA DICTIONARY DEVELOPED? ƒ Starting point is DFD Example : Consider the Receiving office process described in Module 3. DFD is reproduced below.

Vendor

Delivery note

Receiving Process

Items Received note

Inspection Office

Purchase Office

Orders

Discrepancy note

We will recall the word statement from requirement specification now.

7.1.2

System Analysis And Design

© V. Rajaraman

7 of 41

WORD STATEMENT OF REQUIREMENTS ƒ 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. 7.1.3

System Analysis And Design

© V. Rajaraman

8 of 41

DATA ELEMENTS IN DATA FLOW From word statement we derive data elements in each data flow.

1. Delivery note ƒ

Order no,Vendor name,Vendor address,item name,delivery date,quantity supplied,units 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.

Thus delivery note is: Delivery note = Order no + Vendor code + Vendor name + Vendor address + item code + item name + delivery date + quantity supplied + units.

7.1.4

System Analysis And Design

© V. Rajaraman

9 of 41

DATA ELEMENTS IN DATA FLOW Discrepancy note : Order no + Vendor code + Vendor name + Vendor address + item code + item name + delivery date + quantity supplied + units + excess/deficiency + no of days late/early. Items received note = Delivery note Data in data store Order records = order no + vendor code + vendor name + vendor address + item code + item name + order date + qty ordered + units + delivery period. 7.1.5

System Analysis And Design

© V. Rajaraman

10 of 41

DATA DICTIONARY FORMAT Data dictionary gives in detail the characteristics of a data element. Typical characteristics are: Data name : Should be descriptive and self explanatory.This will help in documentation and maintenance Data description : What it represents Origin : Where the data originates e.g. input from forms, comes from receiving office, keyed in by user etc. Destination : Where data will flow and will be used (if any) Data Type : numeric, alphanumeric,letters(or text),binary(0 or 1; True or False),Integer, Decimal fixed point, real(floating point), currency unit, date 7.1.6

System Analysis And Design

© V. Rajaraman

11 of 41

TYPICAL CHARACTERSTICS OF DATA ELEMENTS(CONTD)

Length : no of columns needed Limits on value : (if relevant) e.g. upper and lower bounds of value (age>0,<100) Remarks : (if any)

7.1.7

System Analysis And Design

© V. Rajaraman

12 of 41

EXAMPLE OF DATA DICTIONARY ENTRY Name : Order number Description : Used to identify order given to vendor Origin : Part of delivery note from vendor Destination : Receiving process Data type : Numeric Integer Length : 8 digits Limits on value : >000,<=99999999 Actual value not relevant.Used only as unique identifier Remarks: It is a key field.

7.1.8

System Analysis And Design

© V. Rajaraman

13 of 41

EXAMPLE OF DATA DICTIONARY ENTRY(CONTD

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

7.1.9

System Analysis And Design

© V. Rajaraman

14 of 41

DATA DICTIONARY USES

ƒ Data dictionary can be enormous in size.Requires careful development. However,it is centralized reference document. ƒ Invaluable resource to design •Input forms and screens •Data checking programs •Process specification •Database ƒ Very useful in understanding and maintaining system

7.1.10

System Analysis And Design

© V. Rajaraman

15 of 41

DATA INPUT METHODS

ƒ ON-LINE - User directly Enters data using screen prompts ƒ OFF-LINE -Forms filled by users- for examplecandidates for admission to a college fill forms ƒ Data from forms keyed in by a data entry operator

7.2.1

System Analysis And Design

© V. Rajaraman

16 of 41

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 ƒ System should prevent user making mistakes by •Good form design by leaving enough space for writing legibly •Clear instructions to fill form ƒ System should prevent data entry operator making mistakes by •Good form design •Reducing key strokes •Immediate error feedback 7.2.2

System Analysis And Design

© V. Rajaraman

17 of 41

OFF LINE DATA ENTRY - PROBLEMS

ƒ 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

7.2.3

System Analysis And Design

© V. Rajaraman

18 of 41

BATCH DATA ENTRY

Data entered in forms

Keyboard Data entry

Input batch

Input file

Error batch Error report

Output report

7.2.4

Data validation program

Data processing program

System Analysis And Design

Update program

Data store

© V. Rajaraman

19 of 41

BATCH DATA ENTRY Name

Address

Bad design : Tendency will be to fill name on top line. Not enough space for letters of address

Tick as applicable Individual Hindu undivided family Parent/Guardian of minor

7.2.5

Bad design : Choices are not codified. Data entry operator will be confused.

System Analysis And Design

© V. Rajaraman

20 of 41

BATCH DATA ENTRY Enter date

Enter date

Day month Year (Good design)

7.2.6

(Bad design)

Enter time Hr Min Sec

Enter time

(Good design)

(Bad design)

System Analysis And Design

© V. Rajaraman

21 of 41

BATCH DATA ENTRY Enter name and address using capital letters Use one box for each alphabet Tick any of the following Shri

Smt 1

Kum 2

3

Name Only address (do not Repeat name) Pin I am applying as: Tick one of the boxes below Individual

Hindu undivided family

Parent or guardian Of minor

Clear instructions . Enough space for entry manually.Data entry operator can be simple instructions for data entry

7.2.7

System Analysis And Design

© V. Rajaraman

22 of 41

COMPUTER READABLE FORMS ƒ As manual data input from forms are slow and expensive attempts have been made to automate form reading using scanners ƒ Needs hand writing recognition and correct form alignment – Not very 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.

7.2.8

System Analysis And Design

© V. Rajaraman

23 of 41

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 ƒUse of mouse and icons simplifies pre-determined choices of data 7.2.9

System Analysis And Design

© V. Rajaraman

24 of 41

INTERACTIVE DATA INPUT

Three main models of interactive data input : ƒ Menus ƒ Templates ƒ Commands

7.2.10

System Analysis And Design

© V. Rajaraman

25 of 41

MODELS OF DATA INPUT MENUS User presented several alternatives and asked to type his/her choice EXAMPLE SELECT ALTERNATIVE Type 1 For entering new student record Type 2 For deleting student record Type 3 For changing student record Your choice

7.2.11

System Analysis And Design

© V. Rajaraman

26 of 41

MODELS OF DATA INPUT TEMPLATE ƒ Template

analogous to form ƒ Has features to reject incorrect data input using built-in program ƒ User friendly visual presentation

Example Roll no Name FIRST NAME/INTIALS Dept code

LAST NAME

CE

CS ME EE CODES

IT

Year Hostel code

A

B

C

D

Pre-programmed to reject incorrect Roll no,Dept code,Year, Hostel code

7.2.12

System Analysis And Design

© V. Rajaraman

27 of 41

MODELS OF DATA INPUT Interactive commands guides user through alternatives 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 7.2.13

System Analysis And Design

© V. Rajaraman

28 of 41

MODELS OF DATA INPUT ƒ Normally all three models will occur together in application .In other words Menu, Forms and Commands are not mutually exclusive ƒ Graphical user interface design very rich arealanguages such as Visual Basic simplifies design of user interface ƒWe have given only a flavor of the topic

7.2.14

System Analysis And Design

© V. Rajaraman

29 of 41

WHY DO WE NEED CODES? NEED FOR CODING ƒ UNIQUE IDENTIFIER -Example Roll no instead of name ƒ CROSS REFERENCING BETWEEN APPLICATIONS -unique Roll no may be used in examination records,accounts, health centre ƒ EFFICIENT STORAGE AND RETRIEVAL - Codes concise- a long name will have a shorter roll no

7.3.1

System Analysis And Design

© V. Rajaraman

30 of 41

WHAT ARE THE REQUIREMENTS OF A GOOD CODE? ƒCONCISE - Smallest length to reduce storage and data input effort ƒEXPANDABLE - Add new members easily ƒMEANINGFUL- Code must convey some information about item being coded ƒCOMPREHENSIVE - Include all relevant characteristics of item being coded ƒPRECISE - Unique, unambiguous code

7.3.2

System Analysis And Design

© V. Rajaraman

31 of 41

WHAT METHODS DO WE USE TO CODE 1) SERIAL NO: Assign serial number to each item 2) BLOCK CODES: Blocks of serial numbers assigned to different categories. 3) GROUP CLASSIFICATION CODE- Groups of digits/characters assigned for different characteristics Roll no

87 Year admitted

(use meaningful characters) 87

1 Term admitted 1

05

2

Dept

Status UG/PG

CS

UG

465 Serial no In dept 465

4) SIGNIFICANT CODES - Some or all parts given values Roll no

7.3.4

BA

1

95

C

B

Banian

Male

Chest size cms

Cotton

Color (blue)

System Analysis And Design

R Style (Round neck)

© V. Rajaraman

32 of 41

CHARACTERSTICS OF CODES Characteristics

7.3.5

Codes

Concise

Expandable

Meaningful

Comprehensive

Precise

SERIAL NO

Yes

Yes

No

No

Yes

BLOCK CODES

Moderate

Yes

No

No

Yes

GROUP CLASSIFICATION CODE

No

Yes

Yes

Yes

Yes

SIGNIFICANT CODE

No

Yes

Yes

Yes

Yes

System Analysis And Design

© V. Rajaraman

33 of 41

ERROR DETECTION CODE

ƒIncorrect data entry can lead to chaos ƒMistakes occur as volume of data processed is large ƒNeed to detect and if possible correct errors in data entry ƒError detected by introducing controlled redundancy in codes ƒError control digits added based on statistics of types of errors normally committed during data entry

7.3.6

System Analysis And Design

© V. Rajaraman

34 of 41

MODULUS 11 CHECK DIGIT SYSTEM ƒ Error detection digit added at the end of a numeric code ƒ Code designed in such a way as to detect all single transcription and single transposition errors which is 95% of all errors Single transcription error-Æ49687Æ48687 Single transposition errorÆ 45687Æ48657 ƒ 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 ƒ If remainder is 1 then append(11-1)=10 code as X

7.3.7

System Analysis And Design

© V. Rajaraman

35 of 41

ERROR DETECTION 496871

486871

Correct code

Code as entered

Error detection -

1*1 + 7*2 + 8*3 + 6*4 + 8*5 + 4*6 = 127/11

496871

Remainder != 0 => Error

416879

Error detection -

9*1 + 7*2 + 8*3 + 6*4 + 1*5 + 4*6

= 100/11 Remainder != 0 => Error

7.3.8

System Analysis And Design

© V. Rajaraman

36 of 41

WHY DOES MODULUS 11 CHECK DIGIT WORK ƒ Given dn,dn-1,……..d1 where d1 is the check digit 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

As (∑Widi ) mod N=0 (t-dk ) Wk mod N = 0 (t- dk ) Wk =p.N where p is any integer

Conditions 1. 2. 3. 4.

7.3.9

0<Wk10 Product of integer not a prime => N a prime Smallest prime > 10 =11 => N=11

System Analysis And Design

© V. Rajaraman

37 of 41

WHY DOES MODULUS 11 CHECK DIGIT WORK Single transposition error Let dk and dm get interchanged n [ ∑ Wi,di + (dkWm + dmWk - dkWk - dmWm )] mod N = 0 i=1 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

7.3.10

System Analysis And Design

© V. Rajaraman

38 of 41

OTHER CHECKING SYSTEMS

ƒUSE MODULO N CHECK WITH N PRIME > LARGEST CODE CHARACTER VALUE ƒFOR HEXADECIMAL CODES SYMBOLS = 16, N =17 ƒFOR ALPHANUMERIC CODES

26 LETTERS 10 DIGITS 36 SYMBOLS

ƒTherefore N=37.

7.3.11

System Analysis And Design

© V. Rajaraman

39 of 41

VALIDATING INPUT DATA ƒ WHEN LARGE VOLUME OF DATA IS INPUT SPECIAL PRECAUTIONS NEEDED TO VALIDATE DATA ƒ VALIDATION CHECKS : ƒ SEQUENCE NUMBERING - detects missing record ƒ BATCH CONTROL - Use batch totals ƒ DATA ENTRY AND VERIFICATION-Dual input ƒ RECORD TOTALS-Add individual values for checking ƒMODULUS 11 CHECK DIGIT

7.3.12

System Analysis And Design

© V. Rajaraman

40 of 41

CHECKS ON INDIVIDUAL FIELDS ƒ 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 8th class cannot have age > 25 7.3.13

System Analysis And Design

© V. Rajaraman

41 of 41

MODULE 7 DATA INPUT METHODS

Contents

1. MOTIVATION AND LEARNING GOALS

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. Unless data input is correct, results will be unreliable. Information systems normally have a large volume of data. Because of large volume special controls are needed to ensure correctness of data input - otherwise it is difficult to find which data is incorrect. Thus it is important to design appropriate data input methods to prevent errors while entering data. Key data elements are important to identify records. They need to be unique, concise and understandable by users. Thus we need to study methods of coding key data element LEARNING GOALS At the end of this module you will know 1.The need for a data dictionary for an application 2.How to develop a data dictionary for an application 3.Design of forms and screens for data input. 4.Need and methods of coding data elements. 5.Coding schemes for automatic error detection while inputting data 6.Need for and design of input data validation methods.

LEARNING UNIT 1

Data Dictionary : its development and use

WHAT IS DATA DICTIONARY Data dictionary is a catalogue of all data used in an application, their names, type and their origin. In other words it is data about data which is called metadata. Data dictionary gives a single point reference of data repository of an organization. It is thus an important documentation which would be useful to maintain a system

HOW IS DATA DICTIONARY DEVELOPED?

The Starting point of developing a data dictionary is a DFD. Example: Consider the Receiving office DFD.

Vendor

Delivery note

Receivin g Process

Orders

Items Received note

Inspection Office

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. DATA ELEMENTS IN DATA FLOW From word statement we derive data elements in each data flow. Order no,Vendor name,Vendor address,item name,delivery date,quantity supplied,units Item name and Vendor name may not be unique. To ensure uniqueness we assign unique codes for them. Name of item is however still kept as it is to aid people. Thus delivery note is: Delivery note = Order no + Vendor code + Vendor name + Vendor address + item code + item name + delivery date + quantity supplied + units. Discrepancy note : Order no + Vendor code + Vendor name + Vendor address + item code + item name + delivery date + quantity supplied + units + excess/deficiency + no of days late/early. Items received note = Delivery note Data in data store Order records = order no + vendor code + vendor name + vendor address + item code + item name + order date + qty ordered + units + delivery period.

TYPICAL CHARACTERSTICS OF DATA ELEMENTS(CONTD) Data dictionary gives in detail the characteristics of a data element. Typical characteristics are: Data name : Should be descriptive and self explanatory.This will help in documentation and maintenance Data description : What it represents Origin : Where the data originates e.g. input from forms, comes from receiving office, keyed in by user etc. Destination : Where data will flow and will be used (if any) Data Type : numeric, alphanumeric,letters(or text),binary(0 or 1; True or False), Integer, Decimal fixed point, real(floating point), currency unit, date Length : no of columns needed Limits on value : (if relevant) e.g. upper and lower bounds of value (age>0,<100) Remarks : (if any)

EXAMPLE OF DATA DICTIONARY ENTRY 1)

Name : Order number Description : Used to identify order given to vendor Origin : Part of delivery note from vendor Destination : Receiving process Data type : Numeric Integer Length : 8 digits Limits on value : >000,<=99999999 Actual value not relevant.Used only as unique identifier Remarks: It is a key field.

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 DATA DICTIONARY USES Data dictionary can be enormous in size. Requires careful development. However, it is centralized reference document. It is an invaluable resource to design input forms, screens, data checking programs, process specification and database. It is very useful in understanding and maintaining system

LEARNING UNIT 2

Data input methods : Batch and Interactive

ON-LINE - User directly Enters data using screen prompts OFF-LINE -Forms filled by users- for example-candidates for admission to a college fill forms

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. OFF LINE DATA ENTRY – PROBLEMS 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 Keyboard Data entry

Data entered in forms

Input batch

Output report

Data validation program

Input file

Error batch Update program

Error report

Data processing program

Data store

Name

Address Bad design : Tendency will be to fill name on top line. Not enough space for letters of address

Bad design : Choices are not codified. Tick as applicable Individual Hindu undivided family Parent/Guardian of minor

Data entry operator will be confused

.

Enter date

Enter date

Day month Year (Bad design)

(Good design)

Enter time Enter time Enter name and address using capital letters Use one box for each alphabet Hr Min Sec Tick any of the following design) Shri (Good Smt 1 2

(Bad design)

Kum 3

Name Only address (do not Repeat name)

Pin

I am applying as: Tick oneClear of the boxes below instructions. Enough space for entry manually. Hindu undivided family COMPUTER READABLE FORMS

Individual

Parent or guardian Of minor

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 Three main models of interactive data input : Menus Templates Commands MODELS OF DATA INPUT MENUS User presented several alternatives and asked to type his/her choice EXAMPLE SELECT ALTERNATIVE Type 1 For entering new student record Type 2 For deleting student record Type 3 For changing student record Your choice

TEMPLATE Template is analogous to form. It has features to reject incorrect data input using built-in program and is user friendly Example Roll no Name FIRST NAME/INTIALS

Dept code

LAST NAME

CE

CS

ME EE IT

Year Hostel code

A

B

C

D

Pre-programmed to reject incorrect Roll no,Dept code,Year, Hostel code Interactive commands guides user through alternatives 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

Coding technique for unique data representation.

WHY DO WE NEED CODES? UNIQUE IDENTIFIER -Example Roll no instead of name CROSS REFERENCING BETWEEN APPLICATIONS -unique Roll no may be used in examination records, accounts, and health centre EFFICIENT STORAGE AND RETRIEVAL - Codes concise- a long name will have a shorter roll no

WHAT ARE THE REQUIREMENTS OF A GOOD CODE? CONCISE - Smallest length to reduce storage and data input effort EXPANDABLE - Add new members easily MEANINGFUL- Code must convey some information about item being coded COMPREHENSIVE - Include all relevant characteristics of item being coded PRECISE - Unique, unambiguous code

WHAT METHODS DO WE USE TO CODE 1) SERIAL NO: Assign serial number to each item 2) BLOCK CODES: Blocks of serial numbers assigned to different categories. 3) GROUP CLASSIFICATION CODE- Groups of digits/characters assigned for different characteristics

Roll no

87

Year admitte (use meaningful characters) 87

1

05

2

Term admitte

Dept

Status UG/PG

CS

UG

1

465 Serial no In dept 465

4) SIGNIFICANT CODES - Some or all parts given values Roll no

BA

1

Banian

Male

95 Chest size cms

C Cotton

B Color (blue)

R Style (Round neck)

CHARACTERSTICS OF CODES

Characteristics Codes

Concise

Expandable

Meaningful

Comprehensive

Precise

SERIAL NO

Yes

Yes

No

No

Yes

BLOCK CODES

Moderate

Yes

No

No

Yes

GROUP CLASSIFICATION CODE

No

Yes

Yes

Yes

Yes

SIGNIFICANT No Yes CODEERROR DETECTION CODE

Yes

Yes

Yes

Incorrect data entry can lead to chaos.Mistakes occur as volume of data processed is large. Therfore its necessary to detect and if possible correct errors in data entry. Error can be detetected by introducing controlled redundancy in codes.

MODULUS 11 CHECK DIGIT SYSTEM Error detection digit added at the end of a numeric code Code designed in such a way as to detect all single transcription and single transposition errors which is 95% of all errors Single transcription error- 49687 48687

Single transposition error 45687 48657 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 If remainder is 1 then append(11-1)=10 code as X WHY DOES MODULUS 11 CHECK DIGIT WORK Given dn,dn-1,……..d1 where d1 is the check digit

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

As (∑Widi ) mod N=0 (t- dk ) Wk mod N = 0 OTHER SYSTEMS (tdk ) WCHECKING k =p.N where p is any integer Use modulo n check with n prime > largest code character value Conditions For hexadecimal codes symbols = 16, n =17 • For0<Wk10 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 When large volume of data is input special precautions are needed to validate data validation checks methods: sequence numbering - detects missing record batch control - use batch totals data entry and verification-dual input record totals-add individual values for checking modulus 11 check digit CHECKS ON INDIVIDUAL FIELDS 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). 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.

System Analysis and Design/Data Oriented Systems Design

7.1

A data dictionary has consolidated list of data contained in (i) dataflows (ii) data stores (iii) data outputs

7.2

Multiple Choice Questions

(iv) processes

a. (i) and (iii) b. (i) and (ii) c. (ii) and (iv) d. (i) and (iv) A data dictionary is useful as (i) it is a documentation aid (ii) it assists in designing input forms (iii) it contains al data in an application including temporary data used in processes (iv) it is a good idea in system design

7.3

7.4

7.5

7.6

a. (i) and (ii) b. (i) and (iv) c. (i),(ii) and (iii) d. (i) and (iv) By metadata we mean a. very large data b. data about data c. data dictionary d. meaningful data A data dictionary is usually developed a. At requirements specification phase b. During feasibility analysis c. When DFD is developed d. When a datadase is designed A data dictionary has information about a. every data element in a data flow b. only key data element in a data flow c. only important data elements in a data flow d. only numeric data elements in a data flow A data element in a data dictionary may have a. only integer value b. no value c. only real value d. only decimal value

V. Rajaraman/IISc. Bangalore

M7/V1/July 04/1

System Analysis and Design/Data Oriented Systems Design

7.7

Multiple Choice Questions

A data element in a data flow (i) may be an integer number (ii) may be a real number (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 (i) Designing good forms with plenty of space to write in block capitals (ii)By giving clear instructions to a user on how to fill a form (iii)Reducing keystrokes of an operator (iv)Designing good keyboard

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 (i)Data are entered by operators

V. Rajaraman/IISc. Bangalore

entry

are:

M7/V1/July 04/2

System Analysis and Design/Data Oriented Systems Design

Multiple Choice Questions

(ii)Data entered by hand in forms batched and forms may be missed or misread (iii) Errors are detected after a lapse of time (iv)Data are entered by users

7.13

7.14

7.15

7.16

7.17

7.18

7.19

7.20

a. i and ii b. i and iii c. ii and iii d. iii and iv 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 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 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 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 Key fields are normally coded a. i and ii b. i and iv c. ii and iii d. i and iii 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 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 By the term “expandable code” we understand that the code a. conveys information on item being coded b. is of small length

V. Rajaraman/IISc. Bangalore

M7/V1/July 04/3

System Analysis and Design/Data Oriented Systems Design

7.21

7.22

7.23

7.24

Multiple Choice Questions

c. can add new item easily d. includes all relevant characteristics of item being coded By the term “meaningful 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 code By the term “comprehensive 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 A concise code is necessarily a. Precise b. Meaningful c. Comprehensive d. Difficult Serial numbers used as codes are (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

V. Rajaraman/IISc. Bangalore

M7/V1/July 04/4

System Analysis and Design/Data Oriented Systems Design

Multiple Choice Questions

(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

7.28

7.29

7.30

7.31

7.32

a. i and ii b. i, ii and iii c. ii, iii and iv d. i, ii and iv In significant codes some or all parts of the code a. are meaningful b. are usable c. are significant d. represent values 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 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 A modulus-11 check digit is used to detect error in a. alphanumeric codes b. numeric codes c. hexadecimal codes d. serial number code 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. b. c. d.

i and iii i and iv i and ii iii and iv

V. Rajaraman/IISc. Bangalore

M7/V1/July 04/5

System Analysis and Design/Data Oriented Systems Design

Multiple Choice Questions

7.33 A modulus-17 check will detect single transcription errors in a. alphanumeric codes b. hexadecimal codes c. decimal numerical codes d. serial number codes 7.34 For modulus-11 check digit to detect a single transposition errors 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.35 For modulus-11 check digit to detect a single transcription errors 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.36 Modulus-11 check digit for the code 45672 is a. 0 b. 1 c. 2 d. 3 7.37 Modulus-11 check digit for the code 85672 is a. 0 b. 1 c. X d. 3 7.38 For modulus-11 check digit to detect single transposition or single transcription error the number of digits in the codes should not exceed a. 9 b. 10 c. 11 d. 99 7.39 Modulus-17 check character for the hexadecimal code AB4567 is a. F b. D c. 1 d. 0 7.40 Sequence numbering of records is used to (i)Identify each record uniquely (ii)Track a missing record in a batch of records (iii)Count number of records (iv) Sort the records

a. b. c. d.

i, ii i, ii, iii i, ii, iii, iv i and iv

V. Rajaraman/IISc. Bangalore

M7/V1/July 04/6

System Analysis and Design/Data Oriented Systems Design

Multiple Choice Questions

7.41 A batch control record uses (i)Batch totals of selected fields (ii)A simple count of number of records in a batch (iii)Modulus-11 check digit of each key field (iv)Totals of selected fields of record totalled for the batch

7.42

7.43

7.44

7.45

7.46

7.47

7.48

a. i and ii b. i, ii, iv c. i, ii, iii, iv d. iii and iv 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 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 If a field is known to represent days of a month, radix used to check should a. 30 b. 31 c. 28 d. 29 Radix check for a field representing year is a. Possible b. not possible c. not relevant d. may be tried 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 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 An appropriate range check of age of a tenth standard student in a high school a. 5 to 15 b. 10 to 25

V. Rajaraman/IISc. Bangalore

M7/V1/July 04/7

System Analysis and Design/Data Oriented Systems Design

Multiple Choice Questions

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

V. Rajaraman/IISc. Bangalore

M7/V1/July 04/8

System Analysis and Design/Data Oriented Systems Design

Multiple Choice Questions

Key to Objective Questions 7.1 b 7.2 c 7.3 b 7.4 c 7.5 a 7.6 b 7.7 c 7 .8 b 7.9 c 7.10 a 7.11 a 7.12 c 7.13 c 7.14 a 7.15 b 7.16 b 7.17 d 7.18 a 7.19 b 7.20 c 7.21 a 7.22 d 7.23 a 7.24 d 7.25 b 7.26 c 7.27 c 7.28 d 7.29 b 7.30 c 7.31 b 7.32 c 7.33 b 7.34 d 7.35 b 7.36 b 7.37 c 7.38 b 7.39 b 7.40 c 7.41 b 7.42 d 7.43 c 7.44 b 7.45 b 7.46 b 7.47 c 7.48 c 7.49 d 7.50 a 7.51 c 7.52 c

V. Rajaraman/IISc. Bangalore

M7/V1/July 04/9

MODULE 7

DATA INPUT METHODS WORKED EXAMPLES

7.1 What is the purpose of data validation program? To detect errors which may have been made by a data entry operator in entering data from forms into a computer’s secondary memory. The detected errors are then corrected to ensure that data file has no errors. 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

Your budget code: 1 2 Sales details

D D M M Y Y Date:

Item Code

Description

Qty. Sold

Price

K 2 4 8

Toilet soap

256

3.50

J 4 6 8

Detergent cake

468

2.25

P 7 6 4

Liquid soap bottles

28

8.45

752

14.20

Enter Totals Customer details Customer name: Customer code: Customer address: PIN

Mode of payment (Tick code) 1 CASH

2 CHEQUE

3 BILL

7.4 Is concise code comprehensive? If not, why? No. In a concise code the aim is to keep the length of the code small whereas in a comprehensive code it is to include as much information as possible about the entity being coded. 7.5 Is meaningful code necessarily comprehensive? No. Meaningful code aids in recognizing the entity being coded whereas a comprehensive code tries to include as much information as possible about the entity being coded. For example BICYCLE 24 indicates a 24 inch height cycle. It is meaningful. A code such as BC 24 G R HERO 2684 Describes 24-inch bicycle, which is for gents, red in color, manufactured by Hero with serial number 2684. 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. (i) Motor vehicles Types of vehicle 2 alphabets

Year of manufacture 4 digits

Engine CC 4 digits

Brand

Serial no.

3 alphabets

7 digits

Mnemonic codes Vehicle types Two wheeler Three wheeler Private car Taxi Bus

code TW RW PC TA BU

Manufacturer Bajaj Telco Leyland Maruti Ambassador Vespa Fiat Honda

Code BAJ TEL LEL MAR AMB VSP FAT HDA

Sample code: PC 19 88 800 MAR 0056789 (ii) Music cassettes Types of music

Nature of music Type

Publisher code Serial no.

2 alphabets

2 alphabets

3 digits

1 digit

4 digits

Mnemonic codes Music type

Code

Nature of music

Code

Classical North Classical South Classical West Film North Film South Film West Pop North Pop South Pop West

CN CS CW FN FS FW PN PS PW

Instrumental Vocal Orchestra Chorus

IN VO OR CH

Type Mono Stereo

Code 1 2

Publisher code: 3 digits, Serial no.: 4 digits. Example: FNIN14506784

(iii) Books ISBN code is a good example. Area U.S. U.K. Germany, U.S.S.R. etc. Example: 0

Publisher code

Book no. 8 digits (Total)

Check digit

Publishers publishing a small number of books have a long publisher code and smaller no. of digits for book no. | 87692 | 617 | 0

7.8 Give an example of significant code. Are significant codes expandable? Code for a shirt SH

40

95

58

Shirt

Collar size (Cm)

Chest size (Cm)

Sleeve size (Cm)

Yes. 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. 7.10 Modulus–37 check is suitable for alphanumeric codes. Add a modulus-37 character to the codes (i) 4AB9W (ii) XBY483 and (iii) CAZ4642. (i) 2 (ii) N (iii) N.

7.11 If modulus-11 check digit system is to generate detection of multiple identical digit transcription error (i.e., a code such as 45565 is wrongly entered as 48868), what should be constraints on the weights? A digit t becomes x for weights wq, wr, ws. Let wi be the weights. n ∑ widi = p.N if no error i=1 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) Weighted sum =

∑n

i =1

widi + wkt – wqt with these errors condition is

∑n

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 i =1

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 Paper 1

Marks (out of 100) 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. 7.17 Give some examples of inter-field relationship checks Employee status vs. salary Age vs. marital status (Age <= 12 cannot normally be married) Age vs. Education 7.18 Design a dialogue hierarchy for entering data on customers (of a manufacturer). Select Menu alternative 1

2

3

New customer

Delete customer

Change customer details

Enter details

Enter details

Details to be changed

Verify OK

Delete

No

Manual

New name

New address

Status change

0 Individual

7.19

1 Retailer

2 Distributor

3 Wholesale

Design a dialogue hierarchy and the screens for a system used to reserve seats in long distance buses. Select Menu alternative 1

2

3

Reservation

Cancellation

Change of date

Queries to customer Queries to customer 1. Destination 1. Destination 2. Date 2. Date 3. Time 3. Time 4. No. of seats 4. No. of seats 5. Display position 5. Display refund of seats (status) 6. Enter selection 7. Display ticket

Queries to customer 1. Destination 2. Date 3. Time 4. New date 5. New time 6. No. of seats 7. Display position 8. Enter selection 9. Display excess charge

Screen 1 Reservation

1

Cancellation 2

Change of date

Screen 2 reservation commands • What is your destination ? Mercara • Date of journey? 260589 • Time of bus 0830 • How many seats? • Adults 2 • child 1 • Screen display Front

• Queries on terminal User responses

3

(Seats in bus)

1

2

Entrance

3

4

5

6

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

already booked

32 •

Which seats do you want ? 19 20 21 • Ticket display DESTINATION

DATE

TIME

SEAT Nos.

FARE

MERCARA

260589

0830

19

Rs. 140

20

21

System Analysis and Design / Data Oriented Systems Design

Question Bank

Question Bank – 7 7.1 What is a data dictionary? 7.2 Why is a data dictionary necessary? 7.3 What are the main advantages of creating a data dictionary? 7.4 What data about a data element is stored in a data dictionary? 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.8 What is the purpose of a data validation program? 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 executed by him at different customer locations. 7.12 What is the main difference between menus, templates and command modes of interactive data entry? When is each of these modes appropriate? 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 long distance buses. 7.15 Why are data fields coded in an information system?

V. Rajaraman/IISc. Bangalore

M7/V1/July 04/1

System Analysis and Design / Data Oriented Systems Design

Question Bank

7.16 Can the name of a person be used as a code, for say, his bank account? If not, why? 7.17 What are the requirements of a good coding scheme? 7.18 Is a concise code comprehensive? If not, why? 7.19 Is a meaningful code necessarily comprehensive? 7.20 Is a comprehensive code necessarily meaningful? 7.21 Is a precise code necessarily concise? 7.22 What is the advantage of a serial number code? Why is it not normally used? 7.23 What is the main advantage of block codes? 7.24 Design a group classification code to code (i) motor vehicles,, (ii) music cassettes, and (iii) books 7.25 Is a group classification code meaningful? 7.26 Give an example of a significant code. Are significant codes expandable? 7.27 Add a Modulus-11 check digit to the codes (i) 48467, (ii) 96432, and (iii) 87646257. 7.28 Modulus-37 check is suitable for alphanumeric codes. Add a modulus-37 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 modulus-11 check digit. Is this code correct? 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 transcription and transposition errors are to be detected?

V. Rajaraman/IISc. Bangalore

M7/V1/July 04/2

System Analysis and Design / Data Oriented Systems Design

Question Bank

7.31 If modulus-11 check digit system is to generate detection of multiple identical digit transcription error (i.e., a code such as 45565 is wrongly entered as 48868), what should be the constraints on the weights? 7.32 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? 7.33 Why is it useful to assign sequence numbers for data records? What are the types of errors detected by sequence numbering? 7.34 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. 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.39 Give some examples of inter-field relationship checks. 7.40 What is the main difference between menus, templates and command modes of interactive data entry? When is each of these modes appropriate?

V. Rajaraman/IISc. Bangalore

M7/V1/July 04/3

System Analysis and Design / Data Oriented Systems Design

Question Bank

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 long distance buses.

V. Rajaraman/IISc. Bangalore

M7/V1/July 04/4

System Analysis and Design /Data Oriented Systems Design

Pointers

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.

V. Rajaraman/IISc. Bangalore

M7/V1/July 04/1

Summary Module 7 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 values,length and where used. 2. It is useful as a documentation and assists in maintaining systems and also in designing data input. 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. 5. Off-line data entry is suitable if the number of records is very large. 6. In off-line data entry, batches of data are formed and entered. They are checked by a validation program and the corrected records are stored in a file. 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 during data entry and can be immediately corrected. 9. Common methods of interactive data input is by use of menus, templates and interactive commands for data entry.

10. 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. 11. These methods are combined to provide a user the most appropriate technique for a particular type of interactive data entry. 12. Important data elements are coded. Codes are necessary for unique identification, easily cross-referencing and efficient storage and retrieval. 13. There are many methods for coding. An ideal code must be concise, expandable, meaningful, comprehensive and precise. It is not possible to incorporate all these ideal features in a code. 14. Codes are classified as: (i) Serial number codes, (ii) Block codes, (iii) Group classification codes, and (iv) Significant codes. Group classification codes and Significant codes are most meaningful, expandable, precise and comprehensive. 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 identification codes must be detected during data entry. 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 all data entry errors. 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 a midulus-11 check digit code. 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 the remainder is not zero then there is an error in the code. 19. Modulus-11 check digit code guarantees detection of all single transcription and transposition errors. It also detects 95% of all other errors. 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 detecting errors. This information is provided by controls exercised during data preparation. 21. Important control mechanisms are; giving unique sequence numbers to each data record, providing a batch control record containing a count of number of records and a total of one of the fields.. 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 of allowed values, range of reasonable values, and relationships between different fields. Batch control provides information to detect incorrect values entered, missing records, and data in the wrong sequence. 24. With the advent of Personal Computers, remote terminals connected to a computer and local computer networks, considerable amount of data is entered in files interactively.

Question Bank – 7 7.1 What is a data dictionary? 7.2 Why is a data dictionary necessary? 7.3 What are the main advantages of creating a data dictionary? 7.4 What data about a data element is stored in a data dictionary? 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.8 What is the purpose of a data validation program? 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 executed by him at different customer locations. 7.12 What is the main difference between menus, templates and command modes of interactive data entry? When is each of these modes appropriate? 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 long distance buses. 7.15 Why are data fields coded in an information system?

7.16 Can the name of a person be used as a code, for say, his bank account? If not, why? 7.17 What are the requirements of a good coding scheme? 7.18 Is a concise code comprehensive? If not, why? 7.19 Is a meaningful code necessarily comprehensive? 7.20 Is a comprehensive code necessarily meaningful? 7.21 Is a precise code necessarily concise? 7.22 What is the advantage of a serial number code? Why is it not normally used? 7.23 What is the main advantage of block codes? 7.24 Design a group classification code to code (i) motor vehicles,, (ii) music cassettes, and (iii) books 7.25 Is a group classification code meaningful? 7.26 Give an example of a significant code. Are significant codes expandable? 7.27 Add a Modulus-11 check digit to the codes (i) 48467, (ii) 96432, and (iii) 87646257. 7.28 Modulus-37 check is suitable for alphanumeric codes. Add a modulus-37 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 modulus-11 check digit. Is this code correct? 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 transcription and transposition errors are to be detected?

7.31 If modulus-11 check digit system is to generate detection of multiple identical digit transcription error (i.e., a code such as 45565 is wrongly entered as 48868), what should be the constraints on the weights? 7.32 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? 7.33 Why is it useful to assign sequence numbers for data records? What are the types of errors detected by sequence numbering? 7.34 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. 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.39 Give some examples of inter-field relationship checks. 7.40 What is the main difference between menus, templates and command modes of interactive data entry? When is each of these modes appropriate?

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 long distance buses.

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.

MODULE 8

LOGICAL DATABASE DESIGN 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 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 (a) teacher code, teacher name, dept, phone no (b) course no, course name, semester offered, credits (c) teacher code, course no, semester no (d) teacher code, course no, teacher name, dept, phone no 8.1.10 The expansion of E-R diagram is (a) Entity-Relationship diagram (b) Entity-Relative diagram (c) Entity-Relation diagram (d) Entity-Rationalized diagram 8.1.11 In an E-R diagram entities are represented by (a) circles (b) rectangles (c) diamond shaped box (d) ellipse

8.1.12 In an E-R diagram relationship is represented by (a) circles (b) rectangles (c) diamond shaped box (d) ellipse 8.1.13 Entities are identified from the word statement of a problem by (a) picking words which are adjectives (b) picking words which are nouns (c) picking words which are verbs (d) picking words which are pronouns 8.1.14 Relationships are identified from the word statement of a problem by (a) picking words which are adjectives (b) picking words which are nouns (c) picking words which are verbs (d) picking words which are pronouns 8.1.15 One entity may be (a) related to only one other entity (b) related to itself (c) related to only two other entities (d) related to many other entities

LEARNING UNIT 2

8.2.1 By relation cardinality we mean (a) number of items in a relationship (b) number of relationships in which an entity can appear (c) number of items in an entity (d) number of entity sets which may be related to a given entity 8.2.2 If an entity appears in only one relationship then it is (a) a 1:1 relationship (b) a 1:N relationship (c) a N:1 relationship (d) a N:M relationship 8.2.3 If an entity appears in N relationships then it is (a) a 1:1 relationship (b) a 1:N relationship (c) a N:1 relationship (d) a N:M relationship

8.2.4 If an entity appears in not more than 5 relationships then it is a (a) 1:1 relationship (b) 1:5 relationship (c) 5:1 relationship (d) 5:5 relationship 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 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

LEARNING UNIT 3 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 (c) is manual and requires semantic information (d) is finding the key of a relation 8.3.4 The following relation is not normalized because Roll no

Name

Courses taken Course No Dept

Sem

4568

A.B Moni

CS 101 EE 545 Phy 325

C.S. E.E. Physics

1 2 1

4894

R. Chamnlal

4954

R. Gupta

Phy 101 Chem202 Math 103 CS 101 CS 101

Physics Chemistry Math. C.S. C.S.

1 2 1 1 1

(a) It is difficult to store due to non–uniform size of the attributes (b) Roll no. 4568 have 3 course line whereas Roll no. 4954 has only one course line (c) The composite attribute (CS 101, C.S., 1) is repeated (d) Some item lines have composite attributes 8.3.5 The relation given in Exercise 10.4.4 may be converted to 1 NF relation by (a) eliminating composite attributes (b) eliminating common attributes (c) duplicating common attributes as many times as lines in corresponding attributes (d) putting composite attributes in a separate table

8.3.6 A relation is said to be in 1NF if (a) there is no duplication of data (b) there are no composite attributes in the relation (c) there are only a few composite attributes (d) all attributes are of uniform type 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.8 A relation which is in a higher normal form (a) implies that it also qualifies to be in lower normal form (b) does not necessarily satisfy the conditions of lower normal form (c) is included in the lower normal form (d) is independent of lower normal forms 8.3.9 Given an attribute x, another attribute y is dependent on it, if for a given x (a) there are many y values (b) there is only one value of y (c) there is one or more y values (d) there is none or one y value 8.3.10 An attribute y may be functionally dependent on (i) a composite attribute x,y (ii) a single attribute x (iii) no attribute (a) i and ii (b) i and iii (c) ii and iii (d) iii 8.3.11 A second Normal Form (2 NF) relation should (a) be in 1 NF (b) not have a composite key (c) not have attributes dependent on key attribute (d) not have attributes dependent on one another 8.3.12 A relation is said to be in 2 NF if (i) it is in 1 NF (ii) non-key attributes dependent on key attribute (iii) non-key attributes are independent of one another (iv) if it has a composite key, no non-key attribute should be dependent on part of the composite key (a) i, ii, iii (b) i and ii (c) i, ii, iv (d) i, iv

8.3.13 Given the following relation vendor order (vendor no, order no, vendor name, qty supplied, price/unit) it is not in 2 NF because (a) it is not in 1 NF (b) it has a composite key (c) non-key attribute vendor name is dependent on vendor no. which is one part of the composite key (d) Qty supplied and price/unit are dependent 8.3.14 Given the following relation vendor order (vendor no, order no, vendor name, qty supplied , price/unit) the second normal form relations are (a) vendor (vendor no, vendor name) qty (qty supplied, price/unit) order (order no, qty supplied) (b) vendor (vendor no, vendor name) order (order no, qty supplied, price/unit) (c) vendor (vendor no, vendor name) order (order no, qty supplied, price/unit) vendor order (vendor no, order no) (d) vendor (vendor no, vendor name, qty supplied, price/unit) vendor order (order no, vendor no) 8.3.15 A third Normal Form (3 NF) relation should (a) be in 2 NF (b) not have complete key (c) not be 1 NF (d) should not have non-key attributes depend on key attribute 8.3.16 A relation is said to be in 3 NF if (i) it is in 2 NF (ii) non-key attributes are independent of one another (iii) key attribute is not dependent on part of a composite key (iv) has no multi-valued dependency (a) i and iii (b) i and iv (c) i and ii (d) ii and iv 8.3.17

Given the following relation it is not 3 NF because Student (roll no, name, course no, course max. marks, year of study, address) (a) it is not in 2 NF (b) it does not have composite key (c) non-key attributes course no and course max. marks are functionally dependent (d) it has more than 3 non-key attributes

8.3.18 Given the following relation Student (roll no, name, course no, course max. marks, year of study, address) The corresponding 3 NF relations are (a) student (roll no, name, year of study, address) course (course no, course max. marks) (b) student ( roll no, name, year of study, address) student (roll no, course no) course (course no, course max. marks) (c) student (roll no , name, address) year (roll no, year of study) course (course no, course max. marks) (d) student (roll no, name, address) course (course no, course max. marks, year of study) 8.3.19 Boye Codd Normal Form (BCNF) is needed when (a) two non-key attributes are dependent (b) there is more then one possible composite key (c) there are two or more possible composite overlapping keys and one attribute of a composite key is dependent on an attribute of another composite key (d) there are two possible keys and they are dependent on one another 8.3.20 A relation is said to be in BCNF when (a) it has overlapping composite keys (b) it has no composite keys (c) it has no multivalued dependencies (d) it has no overlapping composite keys which have related attributes 8.3.21 A 3 NF relation is converted to BCNF by (a) removing composite keys (b) removing multivalued dependencies (c) dependent attributes of overlapping composite keys are put in a separate relation (d) dependent non-key attributes are put in a separate table 8.3.22 BCNF is needed because (a) otherwise tuples may be duplicated (b) when a data is deleted tuples may be lost (c) updating is otherwise difficult (d) when there is dependent attributes in two possible composite keys one of the attributes is unnecessarily duplicated in the tuples

8.3.23

Given the relation Supplier(s_id, p_order, s_name, qty) Given that there is a unique s_name for each s_id and that s_id, p_order is a composite key, find the correct statement among the following: (i) this relation is a BCNF (ii) this is 3 NF relation (iii) this is a 2 NF relation (iv) this is a 1 NF relation (a) i and ii (b) ii and iii (c) i and iv (d) i and iii

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.25 Fourth normal form (4 NF) relations are needed when (a) there are multivalued dependencies between attributes in composite key (b) there are more than one composite key (c) there are two or more overlapping composite keys (d) there are multivalued dependency between non-key attributes 8.3.26 A 3 NF relation is split into 4 NF (a) by removing overlapping composite keys (b) by splitting into relations which do not have more than one independent multivalued dependency (c) removing multivalued dependency (d) by putting dependent non-key attribute in a separate table 8.3.27 A relation project guidance Project Guidance(professor, project, student no. st-name, dept) A professor can give many projects to many students A project will have many students A project may be guided by many professors The 4 NF relation corresponding to this are

(a) Prof_Project (professor, st_name, dept) Proj_stud (project, student no.) (b) Prof_stud (professor, student no) Proj_stud (project, student no) Student (student no, st_name, dept) (c) Student (student no, st_name, dept) Professor(professor, project) (d) Professor( professor, project, dept) Student (student no, st_name, dept) 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 8.3.29 5 NF relations equivalent to the relation of Exercise 10.8.3 are (a) Prof_stud (professor, student_no) Proj_stud ( project, student_no) Prof_proj (professor, project) Student (student_no, st_name, dept) (b) Professor (professor, professor details) Student (student_no, st_name, dept) Project (project no, project details) (c) Prof_stud (professor, student_no) Prof_proj (professor, project) (d) Prof_stud (professor, student_no) Stud_proj (student_no, project) Student (student_no, st_name, dept)

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

8.4.3

TEACHES-COURSES relation in Mini-case example 2 is in (a) 3 NF. Does not need any further normalization (b) BCNF (c) 4 NF (d) unnormalized form

8.4.4 TEACHER-STUDENT relation in Mini-case example 2 is required because (a) it is in 3 NF (b) it has a multivalued key (c) it has a composite key with multivalued dependency relation (d) Without this relation database is incomplete and some queries cannot be answered

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.3 Data availability is often difficult in file based system (a) as files are duplicated (b) as unnecessary data are stored in files (c) as one has to search different files and these files may be in different update states (d) redundant data are stored in files

8.5.4 Management policy changes are difficult to implement in a file based system because (a) relating data in different files is difficult (b) files are duplicated (c) redundant data are stored (d) unnecessary data is stored 8.5.5 Some of the objectives of a database management system are to (i) minimize duplication of data (ii) ensure centralized management control of data (iii) ease retrieval of data (iv) maintain a data dictionary (a) i and ii (b) i, ii and iv (c) i and iii (d) i, ii and iii 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.7 A database models data so that it is (a) appropriate for application (b) independent of application program (c) optimized for most frequent applications (d) optimized for all applications 8.5.8 A database should be designed to allow providing (a) different views of portions of data requested by an application (b) data only to selected applications as decided by an organization (c) a uniform view of data to all applications (d) data to all applications 8.5.9 The abbreviation DBMS stands for (a) Data Base Manipulation System (b) Data Bank Manipulating System (c) Data Base Management System (d) Data Bank Management System 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.12 One of the main objectives of a DBMS is to (a) Create a database for an organization (b) Facilitate sharing of a database by current and future applications (c) Allow sharing application programs (d) Replace file based systems 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.14 By data independence we mean application programs (a) do not need data (b) may be developed independent of data (c) may be developed without knowing the organization of data (d) may be developed with independent data 8.5.15 Data independence allows (i) no changes in application programs (ii) change in database without affecting application programs (iii) hardware to be changed without affecting application programs (iv) system software to be changed without affecting application programs (a) i, ii (b) ii, iii (c) ii, iii, iv (d) i, ii, iv 8.5.16 Data independence allows (a) sharing the same database by several applications (b) extensive modification of applications (c) no data sharing between applications (d) elimination of several application programs

8.5.17 Among objectives of DBMS are ensuring (i) data integrity (ii) data redundancy (iii) data security (iv) easy data retrieval (a) i, ii (b) i, iii (c) i, iii, iv (d) i, ii, iii 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.5.19 By data integrity we mean (a) maintaining consistent data values (b) integrated data values (c) banning improper access to data (d) not leaking data values 8.5.20 Data integrity is ensured by (a) good data editing (b) propagating data changes to all data items (c) preventing unauthorized access (d) preventing data duplication 8.5.21 By data security in DBMS we mean (a) preventing access to data (b) allowing access to data only to authorized users (c) preventing changing data (d) introducing integrity constraints 8.5.22 DBMS must implement management controls to (i) control access rights to users (ii) implement audit trail when changes are made (iii) allow data to be used extensively in the organization (iv) duplicate databases (a) i, ii (b) ii, iii (c) iii, iv (d) i, iv

LEARNING UNIT 6

8.6.1 An E-R modelling for given application leads to (a) conceptual data model (b) logical data model (c) external data model (d) internal data model 8.6.2 A conceptual data model is converted using a Relational Data Base Management System to a (a) logical data model (b) external data model (c) internal data model (d) an entity-relation data model 8.6.3 A subset of logical data model accessed by programmers is called a (a) conceptual data model (b) external data model (c) internal data model (d) an entity-relation data model 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 8.6.5 A DBMS has the following components (i) a data definition language (ii) a query language (iii) a security system (iv) audit trail (a) i, ii (b) i, ii, iii (c) i, ii, iii, iv (d) i, ii, iv 8.6.6 A check pointing system is needed (a) to ensure system security (b) to recover from transient faults (c) to ensure system privacy (d) to ensure system integrity

8.6.7 A database administrator (a) administers data in an organization (b) controls all inputs and all outputs of programs (c) is controller of data resources of an organization (d) controls all data entry operators 8.6.8 The responsibilities of a database administrator includes (i) maintenance of data dictionary (ii) ensuring security of database (iii) ensuring privacy and integrity of data (iv) obtain an E-R model (a) i, ii (b) i, ii, iii (c) i, ii, iii, iv (d) ii, iii, iv 8.6.9 Access right to a database is controlled by (a) top management (b) system designer (c) system analyst (d) database administrator 8.6.10 The sequence followed in designing a DBMS are (a) physical model conceptual model logical model (b) logical model physical model conceptual model (c) conceptual model logical model physical model (d) conceptual model physical model logical model 8.6.11 Designing physical model of DBMS requires information on (i) data volume (ii) frequency of access to data (iii) programming language used (iv) secondary memory characteristics (a) i, ii (b) i, ii, iii (c) i, ii, iii, iv (d) i, ii, iv 8.6.12A good database design (i) caters primarily to current needs (ii) caters to current and future needs as organizations grow (iii) has to be modified when hardware is upgraded (iv) ensures data security (a) i, ii (b) i, ii, iii (c) ii, iv (d) iii, iv

8.6.13 A good database design (i) is expandable with growth and changes in organization (ii) easy to change when software changes (iii) ensures data integrity (iv) allows access to only authorized users (a) i, ii (b) ii, iii (c) i, ii, iii, iv (d) i, ii, iii

KEY TO OBJECTIVE QUESTIONS

8.1.1 8.1.7 8.1.13 8.2.4 8.2.10 8.3.4 8.3.10 8.3.16 8.3.22 8.3.28 8.5.1

b a b b b d a c d c b

8.1.2 c 8.1.8 c 8.1.14 c 8.2.5 a 8.2.11 b 8.3.5 c 8.3.11 a 8.3.17 c 8.3.23 d 8.3.29 a 8.5.2 a

8.1.3 b 8.1.9 c 8.1.15 d 8.2.6 b 8.2.12 b 8.3.6 b 8.3.12 c 8.3.18 b 8.3.24 a 8.4.1 a 8.5.3 c

8.1.4 8.1.10 8.2.1 8.2.7 8.3.1 8.3.7 8.3.13 8.3.19 8.3.25 8.4.2 8.5.4

8.5.7

b

8.5.8

8.5.9

c

8.5.10 d

8.5.11 c

8.5.12 b

a

c a b c a d c c a c a

8.1.5 8.1.11 8.2.2 8.2.8 8.3.2 8.3.8 8.3.14 8.3.20 8.3.26 8.4.3 8.5.5

a 8.1.6 d b 8.1.12 c a 8.2.3 b d 8.2.9 a b 8.3.3 b a 8.3.9 b c 8.3.15 a d 8.3.21 c b 8.3.27 b a 8.4.4 d d 8.5.6 c

8.5.13 a

8.5.14 c

8.5.15 c

8.5.16 a

8.5.17 c

8.5.18 b

8.5.19 a

8.5.20 b

8.5.21 b

8.5.22 a

8.6.1

a

8.6.2

a

8.6.3 b

8.6.4

c

8.6.5

8.6.6

8.6.7

c

8.6.8

b

8.6.9 d

8.6.10

c

8.6.11 d

c

b

8.6.12 c

8.6.13 c

System Analysis and Design / Data Input Methods

Motivation

Motivation ™ During systems analysis it is essential for an analyst to decide the necessary and sufficient data for designing an application. DFD gives the data flows and stores of a system ™ Individual data elements of data flows 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. ™ Unless data input is correct, results will be unreliable ™ Information systems normally have a large volume of data ™ Because of large volume special controls are needed to ensure correctness of data input - otherwise it is difficult to find which data is incorrect ™ Thus it is important to design appropriate data input methods to prevent errors while entering data

V. Rajaraman/IISc. Bangalore

//V1/July 04/1

System Analysis and Design / Data Input Methods

Motivation

™ Key data elements are important to identify records. They need to be unique, concise and understandable by users. Thus we need to study methods of coding key data element

V. Rajaraman/IISc. Bangalore

//V1/July 04/1

MODULE 8

LOGICAL DATABASE DESIGN 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.

Systems Analysis And Design

© V. Rajaraman

LEARNING GOALS In this module we will learn: 1. 2. 3. 4. 5. 6. 7. 8.

The Entity-Relationship(ER) modelling to develop a conceptual model of data. How to organize data required in an application as relations The need for normalizing relations The various normal forms and their relevance How to normalize relations to successive higher normal forms to form a relational database The need for an integrated database in organizations The goals of Data Base Management systems (DBMS) The structure and organization of DBMS.

Systems Analysis And Design

© V. Rajaraman

1 of 72

MOTIVATION ƒ When a DFD is developed we have a knowledge of all data elements required by an application ƒ Data dictionary lists all data elements but does not say anything about relationships between data elements ƒ Relationships are needed to logically group data elements into related sets or tables

Systems Analysis And Design

© V. Rajaraman

2 of 72

MOTIVATION

ƒ Such an organization - Reduces data duplication - Simplifies adding, deleting and updating data - Simplifies retrieval of desired data

Systems Analysis And Design

© V. Rajaraman

3 of 72

MOTIVATION

ƒ Logical databases give conceptual model. ƒ Logical databases need to be stored in physical media such as a hard disk for use by applications ƒ A system is needed to map the logical database to a physical medium which is transparent to an application program. ƒ Database management systems achieve this purpose

Systems Analysis And Design

© V. Rajaraman

4 of 72

LOGICAL DATABASE DESIGN-INTRODUCTION ƒ ƒ ƒ ƒ

Purpose to develop conceptual model of data This model specifies relationships among data items Using this, raw data are organized into tables of related data These tables are organized in such a way that: a) duplication of data is reduced b) operations of adding,deleting, changing data(together know as updating data) is simplified and systematized c) systematization reduces accidental errors d) Retrieval of data is facilitated

ƒ

Collection of these tables are called the database for the application

8.1.1

Systems Analysis And Design

© V. Rajaraman

5 of 72

LOGICAL DATABASE DESIGN-INTRODUCTION ƒ Loosely one may call organization of related data put in a table as a “RELATION“ ƒ Systematization by which related data are put in a table is called “NORMALIZATION” ƒ A method called entity-relationship analysis facilitates creation of relations

8.1.2

Systems Analysis And Design

© V. Rajaraman

6 of 72

ENTITY-RELATIONSHIP MODEL ENTITY: SPECIFIES DISTINCT REAL WORLD ITEMS IN AN APPLICATION For example: vendor,item,student,course,teachers RELATIONSHIP: MEANINGFUL DEPENDENCIES BETWEEN ENTITIES For example: vendor supplies items teacher teaches courses Relationships are underlined above 8.1.3

Systems Analysis And Design

© V. Rajaraman

7 of 72

ENTITY SETS

An entity set is collection of similar entities Examples : * Set of all vendors of an organization is a vendor set * Set of all items in a store is an item set Every member of an entity set is described by its attributes

8.1.4

Systems Analysis And Design

© V. Rajaraman

8 of 72

ATTRIBUTES Attributes specify properties of members of entity set Attributes also specify properties of relationships Examples: Entity : Vendor Attributes : vendor code,vendor name,address Relationship : supplies Attributes : vendor code, item code,order no., qty. supplied,date of supply,price/unit

8.1.5

Systems Analysis And Design

© V. Rajaraman

9 of 72

ENTITES AND ATTRIBUTES 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

8.1.6

Systems Analysis And Design

© V. Rajaraman

10 of 72

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 EXAMPLES

ENTITY

VENDOR

ORDERS

SUPPLIES

PLACED WITH

RELATIONSHIP ENTITY ITEMS

8.1.7

Systems Analysis And Design

VENDOR

© V. Rajaraman

11 of 72

HOW TO IDENTIFY ENTITIES AND RELATIONSHIPS ƒNo algorithms to identify entities and relationship ƒWhen a word statement is used to describe an applications nouns normally are entities and verbs relationships Students attend courses Noun ENTITY

Verb RELATIONSHIP

Noun ENTITY

Teachers teach Courses Noun ENTITY

8.1.8

Verb RELATIONSHIP

Systems Analysis And Design

Noun ENTITY

© V. Rajaraman

12 of 72

ENTITY-RELATIONSHIP DIAGRAMS ƒ ONE ENTITY MAY BE RELATED TO MANY OTHER ENTITIES BY MULTIPLE RELATIONSHIPS Order no Order date

ORDERS Order no Item code

Placed for

Placed with

Order no Vendor code Item code Qty ordered Price/unit

Item code Item name

Vendor code items

vendors

Vendor name address

ƒ Underlined attributes are unique identifiers

8.1.9

Systems Analysis And Design

© V. Rajaraman

13 of 72

RELATION CARDINALITY •Relation cardinality - number of relationships in which an entity can appear •An entity may appear in - Only one relationship or - In fixed number of relationships or - In a variable number of relationships V1

Vendor1 supplies items il,i3,i5

i1 i2 i3 i4 i5

V2 V3 Vendor

supplies

Vendor2 supplies items il and i2

items

Vendor3 supplies items i4 and i5

Observe a vendor can supply many items Observe also that many vendors can supply the same item

8.1.10

Systems Analysis And Design

© V. Rajaraman

14 of 72

RELATION CARDINALITY REPRESENTATION vendor

vendor N

supplies

N supplies 6

M

items

items

A vendor cannot supply more than 6 items N vendors can supply a given item

vendor 2

An item cannot be supplied by more than 2 vendors

supplies M

items

8.1.11

Systems Analysis And Design

© V. Rajaraman

15 of 72

EXAMPLES Teacher id teacher 1

Name Dept address

Teacher id student id

advises N

students

Student id Name Dept address

1 Teacher advises N students ƒ Observe that in the advises relationship the identifier need not be composite ƒ If it is N : M relationship then the relationship will have the identifier of both participating entities sets 8.1.12 16 of 72 Systems Analysis And Design © V. Rajaraman

EXAMPLES (CONTD) ƒ Not all teachers may be required to advise ƒ A teacher can advise not more than 3 students Represented by ER diagram , small open circle specifies that some teachers may not participate in advises relationship

Teacher 1 advises 3

students

8.1.13

Systems Analysis And Design

© V. Rajaraman

17 of 72

WHY IS FINDING CARDINALITY NECESSARY ƒThe identifier of the relationship will be composite if cardinality is N:M ƒIt will be single if cardinality is 1:M ƒIf an entity has attached to it ,not all entities in the set may be present in the relationship ƒWill be useful later in designing data base

8.1.14

Systems Analysis And Design

© V. Rajaraman

18 of 72

RELATIONS

ƒ 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

8.2.1

Systems Analysis And Design

© V. Rajaraman

19 of 72

EXAMPLES OF A RELATION VENDOR CODE

VENDOR NAME

1456 1685 1284 1694

Ram & co Gopal & sons Sivaraj brother Gita ltd

ADDRESS 112, 1st cross Bangalore-12 452,4th main, Delhi-8 368 M.G Road, Pune-8 495 N.S.C Road,Calicut

RELATION name:Vendor(same name as entity name) RELATION ATTRIBUTES: vendor code, vendor name address Row of relation is called a tuple In a RELATION rows can be in any order columns can be of any order No two rows are identical No two columns are identical

8.2.2

Systems Analysis And Design

© V. Rajaraman

20 of 72

RELATION NOTATION ƒ Relation is an entire table ƒ However a concise notation used ƒ Notation uses: relation name and attributes ƒ Vendor relation: Vendor(Vendor code, Vendor name,address ) Relation Relation name Identifier

8.2.3

Relation attributes

Systems Analysis And Design

© V. Rajaraman

21 of 72

EXAMPLES OF RELATIONS Item (Item code, Item name) Supplies (vendor code, Item code ,order no , qty supplied ,date of supply ,price/unit) Relationship Teacher (Teacher_id ,name ,dept ,address ) Advises (Teacher_id ,student_id) Student (Student_id ,name ,dept ,,address) Bold faced attributes are key attributes 8.2.4

Systems Analysis And Design

© V. Rajaraman

22 of 72

WHY RELATION ? ƒ Ease of storage of entity set as flat file in a computer's storage ƒ Sound theory of relations allows systematic design of relational data base ƒ Theory of normalizing relations ƒ Reduces duplication of data ƒ Tries to eliminate errors in adding, deleting, altering items in a data base ƒ Simplifies retrieval of data

8.2.5

Systems Analysis And Design

© V. Rajaraman

23 of 72

NORMALIZING RELATIONS ƒWhat is normalization of relations ? ƒWhy normalize relations ? ƒHow are relations normalized ? ƒNormalizing is the process of restructuring relations to a form which:* Minimizes duplication of data in a database * Operations of adding, deleting,modifying data in a database do not lead to inconsistent data in a database * Retrieval of data simplified 8.3.1

Systems Analysis And Design

© V. Rajaraman

24 of 72

WHY NORMALIZE ? ƒA collection of relations relevant for an application constitute a relational database ƒRelations are normalized to ensure that: ƒCollection of relations do not unnecessarily hold duplicate data ƒWhen a data item is modified it is modified in all relations where it appears - no inconsistency is there ƒWhen data is deleted accidentally, required data is not deleted ƒSimplifies retrieval of required data

8.3.2

Systems Analysis And Design

© V. Rajaraman

25 of 72

HOW ARE RELATIONS NORMALIZED ? UNNORMALIZED RELATION Order no

Item lines Item code Qty

Price/unit

1456

26021999

3687 4627 3214

52 38 20

50.40 60.20 17.50

1886

04031999

1788

04111999

4629 4627 4627

45 30 40

20.25 60.20 60.20

1. 2. 3. 4. 5. 6.

8.3.3

order date

Observe order for many items Item lines has many attributes-called composite attributes Each tuple has variable length Difficult to store due to non-uniformity Given item code difficult to find qty-ordered Called Unnormalized relation Systems Analysis And Design

© V. Rajaraman

26 of 72

FIRST NORMAL FORM ƒ Identify composite attributes ƒ Convert composite attributes to individual attributes ƒ Duplicate common attributes as many times as lines in composite attribute ƒ Every attribute describes single property -no composite attribute ƒ Some data duplicated ƒ This is called First normal form (1NF) also called flat file FIRST NORMAL FORM – 1NF Order No

Order date

Item code

Qty

Price/unit

26021999

3687

52

50.40

1456

26021999

4627

38

60.20

1456

26021999

3214

20

17.50

1886

04031999

4629

45

20.25

1886

04031999

4627

30

60.20

1788

04111999

4627

40

60.20

8.3.4

1456

Systems Analysis And Design

© V. Rajaraman

27 of 72

HIGHER NORMAL FORMS ƒ First normal form is first essential step in normalization ƒ Higher normal forms known as 2NF,3NF,BCNF,4NF,5NF exist ƒ Each is an improvement of the preceding one ƒ A higher normal form also satisfies requirements of a lower normal form 5NF 4NF BCNF 3NF 2NF 1NF

8.3.5

Systems Analysis And Design

© V. Rajaraman

28 of 72

HIGHER NORMAL FORMS

Higher normalization steps based on : ƒ Detecting dependence between attributes ƒ Identifying key attributes ƒ Detecting multivalued dependency between attributes

8.3.6

Systems Analysis And Design

© V. Rajaraman

29 of 72

FUNCTIONAL DEPENDENCY •Given X,Y as two attributes in a relation •Given X if only one value of Y corresponds to it then Y is functionally dependent on X X

Y

e.g. Given Item code - Item name known Therefore Item code

Item name

•Functional dependence may be based on a composite attribute X,Z

Y

composite attribute Order no. ,item code ---------Æ Qty , price composite attribute

8.3.7

Systems Analysis And Design

© V. Rajaraman

30 of 72

DEPENDENCY DIAGRAM Student (Roll no, name, address, dept., year of study ) Name Address Roll no Department Called relation key

Year of study

ƒ Roll no. determines uniquely values of all other attributes in the relation ƒ Therefore it is called a key

8.3.8

Systems Analysis And Design

© V. Rajaraman

31 of 72

DEPENDENCY DIAGRAM

Vendor code Item code

Qty.supplied Date of supply Price/unit

Composite key

Composite key enclosed in one box in diagram

8.3.9

Systems Analysis And Design

© V. Rajaraman

32 of 72

WHY NORMALIZE RELATIONS-REVISITED

ƒTo ensure that while operating on data base we do not - Lose data - Introduce inconsistencies ƒOperations on data base ƒInsertion of new data should not force leaving blank fields for some attributes ƒDeletion of a tuple should not delete vital information ƒUpdating - changing value of an attribute should be possible without exhaustively searching all tuples of relation

8.3.10 Systems Analysis And Design ©

V. Rajaraman

33 of 72

EXAMPLE TO SHOW NEED FOR NORMALIZATION FIRST NORMAL FORM – 1NF Order No

Order date

Item code

Qty

Price/unit

1456

26021999

3687

52

50.40

1456

26021999

4627

38

60.20

1456

26021999

3214

20

17.50

1886

04031999

4629

45

20.25

1886

04031999

4627

30

60.20

1788

04111999

4627

40

60.20

INSERTION : Enter new item with code 3945 and price 30.50 for which no order has been placed. Inserted tuple will have no values(i.e have to be left blank) for order no and order date 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

8.3.11

Systems Analysis And Design

© V. Rajaraman

34 of 72

IDEAL NORMALIZATION At the end of normalization a normalized relation ƒShould have no data values duplicated in rows ƒEvery attribute in a row must have a value ƒDeletion of a row must not lead to accidental loss of information ƒAdding a row should not affect other rows ƒA value of an attribute in a row can be changed independent of other rows 8.3.12

Systems Analysis And Design

© V. Rajaraman

35 of 72

SECOND NORMAL FORM (2NF)

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.

8.3.13 Systems Analysis And Design ©

V. Rajaraman

36 of 72

2NF FORM NORMALIZATION-EXAMPLE INF : itemorder (Order no,Item code, Order date,Qty,Price/unit) Composite key Dependency diagram

Order date

Order no

Qty

Item code

Price/unit ƒ Not in 2NF as non key attribute dependent on part of a key attribute(Price/unit dependent on Item code) ƒ 2NF relations are Order(order no,order date) Prices(item code,price/unit) Order details(order no,item code,qty) ƒ Observe a single 1NF relation split into three 2NF relations

8.3.14

Systems Analysis And Design

© V. Rajaraman

37 of 72

2NF FORM 1 NF Orders Relation Order No 1456 1456 1456 1886 1886 1788

Order date 26021999 26021999 26021999 04031999 04031999 04041999

Item code 3687 4627 3214 4629 4627 4627

Qty 52 38 20 45 30 40

Price/unit 50.40 60.20 17.50 20.25 60.20 60.20

2 NF Relations ORDERS Order No Order date 1456 26021999 1886 04031999 1788 04041999

8.3.15

ORDER DETAILS Order No Item code 1456 3687 1456 4627 1456 3214 1886 4629 1886 4627 1886 4627

Systems Analysis And Design

Qty 52 38 20 45 30 40

PRICES Item code Price/unit 3687 50.40 4627 60.20 3214 17.50 4629 20.25

© V. Rajaraman

38 of 72

ADVANTAGES OF 2NF * NON KEY ATTRIBUTES WHOLLY DEPENDENT ON KEY ƒ Repetition of order date removed ƒ If order 1886 for item 4629 is cancelled the price/unit is lost in INF as the whole tuple would be deleted ƒ In 2NF item price not lost when order 1886 for item 4629 cancelled. Only row 4 in order details deleted ƒ Duplication of data in a relation is not there

8.3.16 Systems Analysis And Design ©

V. Rajaraman

39 of 72

THIRD NORMAL FORM ƒ 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

8.3.17 Systems Analysis And Design ©

V. Rajaraman

40 of 72

NORMALIZATION TO 3NF Student( Roll no, name, dept, year ) Hostel (year, hostel) This is in 3NF Example : 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) 8.3.18

Systems Analysis And Design

© V. Rajaraman

41 of 72

NORMALIZATION TO 3NF 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)

8.3.19

Systems Analysis And Design

© V. Rajaraman

42 of 72

BOYCE-CODD NORMAL FORM 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

8.3.20 Systems Analysis And Design ©

V. Rajaraman

43 of 72

EXAMPLE EXAMPLE Professor (Prof code, Dept, Head of Dept, Percent time) RELATION Professor code P1 P1 P2 P2 P3 P4 P4

Dept Physics Maths Chem Physics Maths Maths Physics

Head of dept Ghosh Krishnan Rao Ghosh Krishnan Krishnan Ghosh

Percent time 50 50 25 75 100 30 70

ƒ Observe two possible composite keys (Prof code, Dept) or (Prof code,Head of Dept) ƒ Observe Head of dept name is repeated ƒ 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:

Prof code

Percent time Dept

Dept

Head of Dept

Head of Dept

Percent time

Prof code

Dept

Head of Dept

ƒ Percent time a Prof.spends in the department is dependent on Prof code and Department ƒ Head of Dept depends on department

8.3.22 Systems Analysis And Design ©

V. Rajaraman

45 of 72

NEED FOR BCNF ƒ 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 pointed out ƒ Problem due to the fact that there are two possible composite keys ƒAn attribute of one of the composite key depends on a attribute of the other possible composite key ƒ This leads to the problem indicated

8.3.23 Systems Analysis And Design ©

V. Rajaraman

46 of 72

NORMALIZING TO BCNF •Identify the dependent attributes in the possible composite keys •Remove them and create anew relation EXAMPLE Composite keys 1. Prof code ,Dept Dependency : Dept

2. Prof code,Head of Dept Head of dept

New relations Professor

(Prof code, Dept, Percent time )

Department ( Dept, Head of Dept) 8.3.24

Systems Analysis And Design

© V. Rajaraman

47 of 72

NORMALIZED BCNF RELATIONS Professor code P1 P1 P2 P2 P3 P4 P4

Dept Physics Maths Chem Physics Maths Maths Physics

Percent time 50 50 25 75 100 30 70

Dept Physics Maths Chem

Head of Dept Ghosh Krishnan Rao

ƒ Observe there is no redundancy ƒ If P2 resigns information of Head of dept of chemistry is not lost

8.3.25 Systems Analysis And Design ©

V. Rajaraman

48 of 72

FOURTH NORMAL FORM ƒ Needed when there are multi-valued dependencies Example : (Vendor, Project, Item) relations Assumptions : -A vendor capable of supplying many items to many projects -A project needs many items -Project may order the same item from many vendors Vendor

Project

Items

V

Item

P Multivalued dependency

Vendor-Project-Item supply capability relation

8.3.26 Systems Analysis And Design ©

V. Rajaraman

49 of 72

FOURTH NORMAL FORM (CONTD) 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 •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 •Split vendor-project-item relation into two relations •Resulting relation must have not more than one independent multivalued dependency RESULTING RELATIONS Vendor VI

Item 11

VI

12

V2

12

V2

13

V3

11

Project

Item

P1 P1 P1 P2 P3 P3

I1 I2 I3 I1 I1 I2

OBSERVE NO UNNECESSARY DUPLICATION

8.3.28 Systems Analysis And Design ©

V. Rajaraman

51 of 72

NEED FOR 5NF ƒ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 8.3.29

Systems Analysis And Design

© V. Rajaraman

52 of 72

OBTAINING 5NF RELATIONS ƒWe add a third relation to the two 4NF relations ƒThis is vendor-project relation shown below VENDOR CODE V1 V1 V2 V3 V3

PROJECT NO P1 P3 P1 P1 P2

ƒ 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

8.3.30

Systems Analysis And Design

© V. Rajaraman

53 of 72

EXAMPLES OF DATA BASE DESIGN ORDER - VENDOR - ITEMS ORDERED EXAMPLE IN CASE STUDY Information on dependencies given : •Orders for item placed with many vendors •A given order no is only to one vendor •Many items supplied against a given order no •A vendor has capacity to supply many items but only some items may be ordered ER - DIAGRAM

Orders Placed for

Placed with

Items

Vendors Supply

8.4.1

Systems Analysis And Design

© V. Rajaraman

54 of 72

RELATIONS-UNNORMALIZED RELATIONS-UNNORMALIZED 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.Relation 3 is reduced to: 7.ORDER PLACED WITH(order no,vendor code)

8.4.2

Systems Analysis And Design

© V. Rajaraman

55 of 72

NORMALIZATION OF SUPPLIES RELATION 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 •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

8.4.3

Systems Analysis And Design

© V. Rajaraman

56 of 72

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

K

M Teaches

Attends

N

P Courses

8.4.4

Systems Analysis And Design

© V. Rajaraman

57 of 72

RELATION-UNNORMALIZED 1 TEACHER (Teacher code,teacher name, address, rank, dept) 2 TEACHER_COURSES (Teacher code,Course no,no of students, section no ) 3 COURSE (Course no , semester taught ,Course name, credits) 4 STUDENT (Student no, student name, dept, year ) 5 STUDENT COURSES (Student no, Course no, semester no ) a)Relations 1,3,4 in 3NF b)Relations 2 and 5 have multi-attribute key which has multi-valued dependency but do not need normalization c)However information on which teacher teaches a given student a specified course cannot be found from relations 1 to 5 Therefore Add relation 6

TEACHER_STUDENT (Teacher code, Student no, Course no) THIS SET NORMALIZED

8.4.5

Systems Analysis And Design

© V. Rajaraman

58 of 72

CONCLUSIONS

ƒ We have seen how data relevant to applications are organized logically into set of relations ƒ The process of normalization depends on the semantics, i.e, meanings of data and an understanding of how various data elements are related ƒIt is thus a human intensive activity-it cannot be automated

8.4.6

Systems Analysis And Design

© V. Rajaraman

59 of 72

CONCLUSIONS (CONTD)

ƒ In most problems in practice one is satisfied with 3NF.Higher normal forms are theoretically important and in some cases becomes essential. ƒ There is a mathematical theory which underpins the idea of relations and normalization giving it a sound basis. We have not discussed it in this module. ƒ A full fledged course in Data Base will describe in detail the mathematical basis and methods of querying a database

8.4.7

Systems Analysis And Design

© V. Rajaraman

60 of 72

PROBLEMS WITH FILE BASED SYSTEMS If programs and files independently developed for each application in the organization it leads to the following problems ƒ DATA REDUNDANCY-Some data may be duplicated in many files. e.g.: Address of customer ƒ LACK OF DATA INTEGRITY- Duplicated data may be different in different files (New address in one file and old address in another file) ƒ DATA AVAILABILITY- May require search of number of files to access a specified data ƒ CONTROL BY MANAGEMENT-Difficult as data scattered across files. All files should be accessed to find specified data Aim of data base management systems is to reduce above problems

8.5.1

Systems Analysis And Design

© V. Rajaraman

61 of 72

DATABASE AND DATABASE MANAGEMENT SYSTEM DATA BASE - A Collection of related data necessary to manage an organization (Excludes transient data) - Models data resource and is independent of applications DATA BASE MANAGEMENT- A set of procedures that manage the database and provides access to the database in the form required by the application program

8.5.2

Systems Analysis And Design

© V. Rajaraman

62 of 72

DATABASE MANAGEMENT SYSTEM

Application1 Database Application2

Database Management System DBMS

Application1

Organized collection of data for several applications

Procedures to provide data in the form required by applications. Applications need not know physical organization of data

8.5.3

Systems Analysis And Design

© V. Rajaraman

63 of 72

OBJECTIVES OF A DATABASE MANAGEMENT SYSTEM ƒ Data is an organizational resource. It should be collected, validated, protected, logically organized and stored with controlled redundancy. This is the organizational database ƒ One of the main objectives of DBMS is to facilitate sharing of a database by current and future applications ƒ DBMS must ensure data independence for programs

8.5.4

Systems Analysis And Design

© V. Rajaraman

64 of 72

OBJECTIVES OF DBMS

ƒData independence to be provided to application programs ƒData independence allows -Change of database without affecting application programs -Change of hardware or system software without affecting application programs -Sharing of data by different applications by providing views appropriate for the application

8.5.5

Systems Analysis And Design

© V. Rajaraman

65 of 72

OBJECTIVES OF DBMS ƒ Control of Redundancy - Avoid unnecessary duplication ƒ Relations between data items specified ƒ Data integrity - Preserve consistency of data values ƒ Data Security - Permit access to data to authorized users only ƒ Performance - Provide timely information when needed ƒ Ensure management control on addition, deletion, change and dissemination of data

8.5.6

Systems Analysis And Design

© V. Rajaraman

66 of 72

OVERVIEW OF DBMS ƒData needs of current and possible future applications determined ƒUsing E-R data modelling conceptual data model found ƒConverted to relations if Relational DBMS used - called logical data model ƒApplication programmers access subset of logical data model - called external data model •Logical model mapped to physical model for storage in disk store - called internal model •External data model kept invariant 8.6.1

Systems Analysis And Design

© V. Rajaraman

67 of 72

VARIOUS TERMS USED IN DESCRIBING DBMS

Current 1 applications 2 Future Applications

p q

Application programs

8.6.2

Conceptual model

1 2 p q

External Model

Systems Analysis And Design

logical model

Internal Model

Database

© V. Rajaraman

68 of 72

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

8.6.3

Systems Analysis And Design

© V. Rajaraman

69 of 72

DATABASE ADMINISTRATOR

Database Administrator’s responsibilities ƒ Controller of data recourse ƒ Ensure integrity,security and privacy ƒ Maintenance of data dictionary ƒ Coordination of development and maintenance of data base ƒ Determining access rights

8.6.4

Systems Analysis And Design

© V. Rajaraman

70 of 72

STEPS IN DESIGNING DATABASE INPUTS

E-R Diagram based on existing and potential applications

DESIGN STEPS Design conceptual model Of database Design logical model of Data base

Features of DBMS to be used

User Feedback to improve

Design physical model of database Data on frequency of access, volume Additions/deletion

Evaluate performance of physical model Implement

8.6.5

Systems Analysis And Design

© V. Rajaraman

71 of 72

CHARACTERSTICS OF A GOOD DATA BASE DESIGN ƒ

Satisfy current and future needs of organization

ƒ

Cater to unanticipated user requirements in the best possible way

ƒ

Expandable with growth and changes in organization

ƒ

Easy to change when hardware and software change

ƒ

Ensure data security by allowing only authorized persons to access and modify database

8.6.6

Systems Analysis And Design

© V. Rajaraman

72 of 72

MODULE 8 LOGICAL DATABASE DESIGN

Contents

1. MOTIVATION AND LEARNING GOALS

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 When a DFD is developed we have knowledge of all data elements required by an application,data dictionary lists all data elements but does not say anything about relationships between data elements. Relationships are needed to logically group data elements into related sets or tables. Such an organization reduces data duplication, simplifies adding, deleting and updating data and simplifies retrieval of desired data Database management systems achieve the purpose of mapping the logical database to a physical medium which is transparent to an application program. LEARNING GOALS At the end of this module you will learn 1.The Entity-Relationship(ER) modelling to develop a conceptual model of data. 2.How to organize data required in an application as relations 3.The need for normalizing relations 4.The various normal forms and their relevance 5.How to normalize relations to successive higher normal forms to form a relational database 6.The need for an integrated database in organizations 7.The goals of Data Base Management systems (DBMS) 8.The structure and organization of DBMS.

LEARNING UNIT 1

Entity-relationship(E-R) modelling of data elements of an application.

LOGICAL DATABASE DESIGN-INTRODUCTION Loosely one may call organization of related data, put in a table as a “RELATION“. Systematization by which related data are put in a table is called “NORMALIZATION”. A method called entity-relationship analysis facilitates creation of relations. ENTITY-RELATIONSHIP MODEL ENTITY: Specifies distinct real world items in an application For example: vendor, item, student, course, teachers RELATIONSHIP: Meaningful dependencies between entities For example: vendor supplies items teacher teaches courses Relationships are underlined above

ENTITY SETS An entity set is collection of similar entities Examples : * Set of all vendors of an organization is a vendor set * Set of all items in a store is an item set Every member of an entity set is described by its attributes

ATTRIBUTES Attributes specify properties of members of entity set & also specify properties of relationships Examples: Entity : Vendor Attributes : vendor code, vendor name, address Relationship : supplies Attributes : vendor code, item code,order no., qty. supplied,date of supply,price/unit ENTITES AND ATTRIBUTES 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

ENTITY

ITEMS

VENDOR

HOW TO IDENTIFY ENTITIES AND RELATIONSHIPS When a word statement is used to describe applications, nouns normally are entities and verbs relationships.

Students attend courses

Noun ENTITY

Verb RELATIONSHIP

Noun ENTITY

Teachers teach Courses

Noun

Verb

ENTITY

RELATIONSHIP

Noun ENTITY

ENTITY-RELATIONSHIP DIAGRAMS One entity may be related to many other entities by multiple relationships Order no Order date

ORDERS

Order no Item code

Placed for

Placed with

Order no Vendor code 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 i2 i3 i4 i5

V2 V3 Vendor

supplies

Vendor1 supplies items il,i3,i5 Vendor2 supplies items il and i2 Vendor3 supplies items i4 and i5

items

Observe a vendor can supply many items, and also that many vendors can supply the same item RELATION CARDINALITY REPRESENTATION

A vendor can supply upto M items

A vendor cannot supply more than 6 items N vendors can supply a given item

vendor

vendor

N

N supplies

supplies

M items

N vendors can supply a given item

6 items

vendor

2 An item cannot be supplied by more than 2 vendors A vendor cannot supply more than M items

supplies

M items

WHY IS FINDING CARDINALITY NECESSARY 1. The identifier of the relationship will be composite if cardinality is N:M 2. It will be single if cardinality is 1:M 3. Will be useful later in designing data base

LEARNING UNIT 2

Organization of data as relations

RELATIONS 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 VENDOR CODE

VENDOR NAME

1456 1685 1284 1694

Ram & co Gopal & sons Sivaraj brother Gita ltd

ADDRESS 112, 1st cross Bangalore-12 452,4th main, Delhi-8 368 M.G Road, Pune-8 495 N.S.C Road,Calicut

RELATION name:Vendor(same name as entity name) RELATION ATTRIBUTES: vendor code, vendor name, address Row of relation is called a tuple. In a RELATION rows and columns can be in any order. No two rows and two columns are identical.

RELATION NOTATION Relation is an entire table Vendor relation: Vendor (Vendor code, Vendor name, address )

Relation name

Relation Identifier

Relation attributes

WHY RELATION ? Entity set can be easily stored as a flat file in a computer's storage Sound theory of relations allows systematic design of relational data base, reduces duplication of data, tries to eliminate errors in adding, deleting, altering items in a data base and simplifies retrieval of data.

LEARNING UNIT 3 Normalization of relations NORMALIZING RELATIONS Normalizing is the process of restructuring relations to a form which: Minimizes duplication of data in a database Operations of adding, deleting, modifying data in a database do not lead to inconsistent data in a database Retrieval of data simplified

WHY NORMALIZE ? Relations are normalized to ensure that, collection of relations do not unnecessarily hold duplicate data. It is easy to modify a data item as it gets modified in all relations where it appears and hence no consistency is there. When data is deleted accidentally, required data does not get deleted. It also simplifies retrieval of required data.

HOW ARE RELATIONS NORMALIZED ? UNNORMALIZED RELATION

Order no 1456

1886

order date 26021999

Item lines Item code Qty 3687 4627 3214

52 38 20

04031999

4629 45 4627 30 1.Observe order for many items 1788 2.Item lines has 04111999 4627 attributes40 many attributes-called composite

Price/unit 50.40 60.20 17.50 20.25 60.20 60.20

3.Each tuple has variable length 4.Difficult to store due to non-uniformity 5.Given item code difficult to find qty-ordered and hence called Unnormalized relation

FIRST NORMAL FORM Identify the composite attributes, convert the composite attributes to individual attributes. Duplicate the common attributes as many times as lines in composite attribute. Every attribute now describes single property and

not multiple properties, some data will be duplicated. Now this is called First normal form (1NF) also called flat file. FIRST NORMAL FORM – 1NF

Order No

Order date

Item code

Qty

Price/unit

1456 1456 1456 1886 1886 1788

26021999 26021999 26021999 04031999 04031999 04111999

3687 4627 3214 4629 4627 4627

52 38 20 45 30 40

50.40 60.20 17.50 20.25 60.20 60.20

HIGHER NORMAL FORMS

First normal form is first essential step in normalization. Higher normal forms known as 2NF, 3NF, BCNF, 4NF, 5NF also exist. Each is an improvement of the preceding one. A higher normal form also satisfies requirements of a lower normal form 5NF 4NF BCNF 3NF 2NF 1NF

Higher normalization steps are based on : Detecting dependence between attributes Identifying key attributes Detecting multivalued dependency between attributes

FUNCTIONAL DEPENDENCY Given X,Y as two attributes in a relation Given X if only one value of Y corresponds to it then Y is functionally dependent on X X

Y

e.g. Given Item code - Item name known Therefore Item code

Item name

Functional dependence may be based on a composite attribute X,Z Y

composite attribute Order no. ,item code ---------

Qty , price

composite attribute

DEPENDENCY DIAGRAM Student (Roll no, name, address, dept., year of study )

Name Address Roll no Department Called relation key

Year of study

Roll no determines uniquely values of all other attributes in the relation, therefore it is called a key.

Qty.supplied Vendor Item code

Date of supply 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

FIRST NORMAL FORM – 1NF Order No 1456 1456 1456 1886 1886 1788

Order date

Item code

Qty

Price/unit

26021999 3687 52 50.40 26021999 4627 38 60.20 26021999 3214 20 17.50 04031999 4629 45 20.25 04031999 4627 30 60.20 INSERTION : 04111999 Enter new item with4627 code 3945 and40 price 30.5060.20 for which no order has been placed. Inserted tuple will have no values (i.e have to be left blank) for order no and order date 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 At the end of normalization a normalized relation Should have no data values duplicated in rows Every attribute in a row must have a value Deletion of a row must not lead to accidental loss of information Adding a row should not affect other rows A value of an attribute in a row can be changed independent of other rows

SECOND NORMAL FORM (2NF) A relation is in 2NF if it is in 1NF, non-key attributes are functionally dependent on key attribute and if there is a composite key then no non-key attribute is functionally depend on one part of the key.

2NF FORM 1 NF Orders Relation Order No

Order date

Item code

Qty

1456 1456 1456 1886 1886 1788

26021999 26021999 26021999 04031999 04031999 04041999

3687 4627 3214 4629 4627 4627

52 38 20 45 30 40

Price/unit 50.40 60.20 17.50 20.25 60.20 60.20

2 NF Relations

ORDERS Order No Order date 1456 26021999 1886 04031999 1788 04041999

ORDER DETAILS Order No Item code 1456 3687 1456 4627 1456 3214 1886 4629

Qty 52 38 20 45

PRICES Item code Price/unit 3687 50.40 4627 60.20 3214 17.50

NON KEY ATTRIBUTES WHOLLY DEPENDENT ON KEY Repetition of order date removed. If order 1886 for item 4629 is cancelled the price/unit is lost in INF as the whole tuple would be deleted. In 2NF item price not lost when order 1886 for item 4629 cancelled. Only row 4 in order details deleted. Duplication of data in a relation is not there.

THIRD NORMAL FORM A Relation in 2NF may have functional dependency between some Non-key attributes. This needs further normalization as the non-keys being dependent leads to unnecessary duplication of data. Normalization to 3NF ensures that there is no functional dependency between non-key attributes. 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 Student( Roll no, name, dept, year )

Hostel (year, hostel) This is in 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)

BOYCE-CODD NORMAL FORM 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 P1 P1 P2

Dept Physics Maths Chem

Head of dept Ghosh Krishnan Rao

Percent time 50 50 25

P2 P3 P4 P4

Physics Maths Maths Physics

Ghosh Krishnan Krishnan Ghosh

75 100 30 70

Observe two possible composite keys (Prof code, Dept) or (Prof code,Head of Dept) Observe Head of dept name is repeated If professor P2 resigns the fact that Rao is Head of Chemistry is lost as lines 3 & 4 will be deleted

The dependency diagrams are: Prof code

Percent time

Dept

Head of Dept Dept

Head of Dept

Percent time

Prof code

Dept

Head of Dept

Percentage time a Prof. spends in the department is dependent on Prof code and Department Head of Dept depends on department NEED FOR BCNF 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 •Identify the dependent attributes in the possible composite keys •Remove them and create a new relation EXAMPLE Composite keys 1.Prof code ,Dept Dependency : Dept

2. Prof code,Head of Dept Head of dept

New relations Professor (Prof code, Dept, Percent time ) Department ( Dept, Head of Dept)

NORMALIZED BCNF RELATIONS

Professor code P1 P1 P2 P2 P3 P4

Dept Physics Maths Chem Physics Maths Maths

Percent time 50 50 25 75 100 30

Dept Physics Maths Chem

Head of Dept Ghosh Krishnan Rao

FOURTH NORMAL FORM 4NF is needed when there are multi-valued dependencies Example : (Vendor, Project, Item) relations Assumptions : -A vendor capable of supplying many items to many projects -A project needs many items -Project may order the same item from many vendors

Vendor-Project-Item supply capability relation Vendor

Item

Project

Multivalued dependency

V Item

Vendor code VI VI VI VI V2 V2 V3 V3

Project code PI PI P3 P3 PI PI PI P2

Item code I1 I2 I1 I2 I2 I3 I1 I1

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

Solution: •Split vendor-project-item relation into two relations •Resulting relation must have not more than one independent multivalued dependency RESULTING RELATIONS

Vendor VI VI V2 V2 V3

Item I1 I2 I2 I3 I1

Project P1 P1 P1 P2 P3 P3

Item I1 I2 I3 I1 I1 I2

Vendor Capability Project needs OBSERVE NO UNNECESSARY DUPLICATION NEED FOR 5NF 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

Additional relation for 5NF Vendor

Project

V1 V1 V2 V3 V3 Vendors permitted for projects

P2 P3 P1 P1 P2

The above relation is in addition to the two relations of 4NF.

LEARNING UNIT 4

Creation of logical relational database EXAMPLES OF DATA BASE DESIGN ORDER - VENDOR - ITEMS ORDERED EXAMPLE IN CASE STUDY Information on dependencies given : •Orders for item placed with many vendors •A given order no is only to one vendor •Many items supplied against a given order no •A vendor has capacity to supply many items but only some items maybe ordered from him at a particular time ER - DIAGRAM Orders

R

N

Placed for

Placed with S

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. Relation 3 is reduced to: 7.ORDER PLACED WITH(order no,vendor code)

NORMALIZATION OF SUPPLIES RELATION 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 K

M

Teaches

Attends N

P Courses

RELATION-UNNORMALIZED 1 TEACHER (Teacher code,teacher name, address, rank, dept) 2 TEACHER_COURSES (Teacher code,Course no,no of students, section no ) 3 COURSE (Course no , semester taught ,Course name, credits) 4 STUDENT (Student no, student name, dept, year ) 5 STUDENT COURSES (Student no, Course no, semester no ) a)Relations 1,3,4 in 3NF b)Relations 2 and 5 have multi-attribute key which has multi-valued dependency but do not need normalization c)However information on which teacher teaches a given student a specified course cannot be found from relations 1 to 5 Therefore Add relation 6TEACHER_STUDENT (Teacher code, Student no, Course no)

THIS SET IS NORMALIZED

CONCLUSIONS We have seen how data relevant to applications are organized logically into set of relations The process of normalization depends on the semantics, i.e, meanings of data and an understanding of how various data elements are related It is thus a human intensive activity-it cannot be automated In most problems in practice one is satisfied with 3NF.Higher normal forms are theoretically important and in some cases becomes essential. There is a mathematical theory which underpins the idea of relations and normalization giving it a sound basis. We have not discussed it in this module. A full fledged course in Data Base will describe in detail the mathematical basis and methods of querying a database

LEARNING UNIT 5 Objectives of database management system(DBMS) PROBLEMS WITH FILE BASED SYSTEMS If programs and files independently developed for each application in the organization, it leads to the following problems DATA REDUNDANCY-Some data may be duplicated in many files. e.g.: Address of customer LACK OF DATA INTEGRITY- Duplicated data may be different in different files (New address in one file and old address in another file) DATA AVAILABILITY- May require search of number of files to access a specified data CONTROL BY MANAGEMENT-Difficult as data scattered across files. All files should be accessed to find specified data Aim of data base management systems is to reduce above problems DATABASE AND DATABASE MANAGEMENT SYSTEM DATA BASE is a collection of related data necessary to manage an organization (Excludes transient data).It models a data resource and is independent of applications

DATA BASE MANAGEMENT-is a set of procedures that manage the database and provides access to the database in the form required by the application program

Application1

Application2

Database Management System DBMS

Database Organized collection of data for several applications

Application1 Procedures to provide data in the form required by applications. Applications need not know physical organization of data OBJECTIVES OF A DATABASE MANAGEMENT SYSTEM Data is an organizational resource. It should be collected, validated, protected, logically organized and stored with controlled redundancy. This is the organizational database One of the main objectives of DBMS is to facilitate sharing of a database by current and future applications DBMS must ensure data independence for programs Data independence to be provided to application programs Data independence allows -Change of database without affecting application programs -Change of hardware or system software without affecting application programs -Sharing of data by different applications by providing views appropriate for the application Control of Redundancy - Avoid unnecessary duplication Relations between data items specified Data integrity - Preserve consistency of data values Data Security - Permit access to data to authorized users only

LEARNING UNIT 6

Overview of DBMS.

OVERVIEW OF DBMS Data needs of current and possible future applications determined Using E-R data modelling conceptual data model found Converted to relations if Relational DBMS used - called logical data model Application programmers access subset of logical data model - called external data model •Logical model mapped to physical model for storage in disk store - called internal model •External data model kept invariant

VARIOUS TERMS USED IN DESCRIBING DBMS

Current application Future Applications

1 2 p q

Application programs

Conceptual model

1 2 p q

logical model

External Model

Internal Model

Database

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 Database Administrator’s responsibilities are controlling of data recourse, to ensure integrity, security and privacy, maintenance of data dictionary, coordination of development and maintenance of data base and determining access rights

CHARACTERSTICS OF A GOOD DATA BASE DESIGN Satisfy current and future needs of organization Cater to unanticipated user requirements in the best possible way Expandable with growth and changes in organization Easy to change when hardware and software change Ensure data security by allowing only authorized persons to access and modify database

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. Chapter 10 Logical Data Base Design, pp.130 to 153. Chapter 12 , Data Base Management Systems, pp. 171 –1719. 2. Good treatment of E-R Modelling and Normalization may be found in the book “Introduction to Systems analysis and Design”, by I.T.Hawryszkiewycz, Prentice Hall of India, 1989.

3. For those interested in detailed study of Data Base Design and DBMS, the following books are standard texts: 1, R.Elmasri and S.B.Navathe, Fundamentals of Data Base Systems, 4th Edition, Pearson Education Asia, New Delhi, 2004. 2. T.Connolly and C.Begg, Dta Base Systems, 3rd Edition, Pearson Education Asia, New Delhi, 2003.

System Analysis and Design/ Logical Database Design

Multiple Choice Questions

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

V. Rajaraman/IISc. Bangalore

M8/V1/July 04/1

System Analysis and Design/ Logical Database Design

(a) (b) (c) (d)

Multiple Choice Questions

teacher code, teacher name, dept, phone no course no, course name, semester offered, credits teacher code, course no, semester no teacher code, course no, teacher name, dept, phone no

8.1.10 The expansion of E-R diagram is (a) Entity-Relationship diagram (b) Entity-Relative diagram (c) Entity-Relation diagram (d) Entity-Rationalized diagram 8.1.11In an E-R diagram entities are represented by (a) circles (b) rectangles (c) diamond shaped box (d) ellipse 8.1.12 In an E-R diagram relationship is represented by (a) circles (b) rectangles (c) diamond shaped box (d) ellipse 8.1.13 Entities are identified from the word statement of a problem by (a) picking words which are adjectives (b) picking words which are nouns (c) picking words which are verbs (d) picking words which are pronouns 8.1.14 Relationships are identified from the word statement of a problem by (a) picking words which are adjectives (b) picking words which are nouns (c) picking words which are verbs (d) picking words which are pronouns 8.1.15 One entity may be (a) related to only one other entity (b) related to itself (c) related to only two other entities (d) related to many other entities 8.2.1 By relation cardinality we mean (a) number of items in a relationship (b) number of relationships in which an entity can appear (c) number of items in an entity (d) number of entity sets which may be related to a given entity 8.2.2 If an entity appears in only one relationship then it is (a) a 1:1 relationship (b) a 1:N relationship (c) a N:1 relationship (d) a N:M relationship V. Rajaraman/IISc. Bangalore

M8/V1/July 04/2

System Analysis and Design/ Logical Database Design

Multiple Choice Questions

8.2.3 If an entity appears in N relationships then it is (a) a 1:1 relationship (b) a 1:N relationship (c) a N:1 relationship (d) a N:M relationship 8.2.4 If an entity appears in not more than 5 relationships then it is a (a) 1:1 relationship (b) 1:5 relationship (c) 5:1 relationship (d) 5:5 relationship 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

V. Rajaraman/IISc. Bangalore

M8/V1/July 04/3

System Analysis and Design/ Logical Database Design

Multiple Choice Questions

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

V. Rajaraman/IISc. Bangalore

M8/V1/July 04/4

System Analysis and Design/ Logical Database Design

Multiple Choice Questions

(c) is manual and requires semantic information (d) is finding the key of a relation 8.3.4 The following relation is not normalized because Roll no

Name

4568

A.B Moni

4894

R. Chamnlal

Courses taken Course No Dept CS 101 EE 545 Phy 325

C.S. E.E. Physics

Sem 1 2 1

Phy 101 Physics 1 Chem202 Chemistry 2 Math 103 Math. 1 CS 101 C.S. 1 4954 R. Gupta CS 101 C.S. 1 (a) It is difficult to store due to non–uniform size of the attributes (b) Roll no. 4568 have 3 course line whereas Roll no. 4954 has only one course line (c) The composite attribute (CS 101, C.S., 1) is repeated (d) Some item lines have composite attributes 8.3.5 The relation given in Exercise 10.4.4 may be converted to 1 NF relation by (a) eliminating composite attributes (b) eliminating common attributes (c) duplicating common attributes as many times as lines in corresponding attributes (d) putting composite attributes in a separate table 8.3.6 A relation is said to be in 1NF if (a) there is no duplication of data (b) there are no composite attributes in the relation (c) there are only a few composite attributes (d) all attributes are of uniform type 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.8 A relation which is in a higher normal form (a) implies that it also qualifies to be in lower normal form (b) does not necessarily satisfy the conditions of lower normal form (c) is included in the lower normal form (d) is independent of lower normal forms 8.3.9 Given an attribute x, another attribute y is dependent on it, if for a given x (a) there are many y values (b) there is only one value of y (c) there is one or more y values (d) there is none or one y value V. Rajaraman/IISc. Bangalore

M8/V1/July 04/5

System Analysis and Design/ Logical Database Design

Multiple Choice Questions

8.3.10 An attribute y may be functionally dependent on (i) a composite attribute x,y (ii) a single attribute x (iii) no attribute (a) i and ii (b) i and iii (c) ii and iii (d) iii 8.3.11A second Normal Form (2 NF) relation should (a) be in 1 NF (b) not have a composite key (c) not have attributes dependent on key attribute (d) not have attributes dependent on one another 8.3.12 A relation is said to be in 2 NF if (i) it is in 1 NF (ii) non-key attributes dependent on key attribute (iii) non-key attributes are independent of one another (iv) if it has a composite key, no non-key attribute should be dependent on part of the composite key (a) i, ii, iii (b) i and ii (c) i, ii, iv (d) i, iv 8.3.13 Given the following relation vendor order (vendor no, order no, vendor name, qty supplied, price/unit) it is not in 2 NF because (a) it is not in 1 NF (b) it has a composite key (c) non-key attribute vendor name is dependent on vendor no. which is one part of the composite key (d) Qty supplied and price/unit are dependent 8.3.14 Given the following relation vendor order (vendor no, order no, vendor name, qty supplied , price/unit) the second normal form relations are (a) vendor (vendor no, vendor name) qty (qty supplied, price/unit) order (order no, qty supplied) (b) vendor (vendor no, vendor name) order (order no, qty supplied, price/unit) (c) vendor (vendor no, vendor name) order (order no, qty supplied, price/unit) vendor order (vendor no, order no) (d) vendor (vendor no, vendor name, qty supplied, price/unit) vendor order (order no, vendor no) 8.3.15A third Normal Form (3 NF) relation should (a) be in 2 NF (b) not have complete key (c) not be 1 NF (d) should not have non-key attributes depend on key attribute

V. Rajaraman/IISc. Bangalore

M8/V1/July 04/6

System Analysis and Design/ Logical Database Design

Multiple Choice Questions

8.3.16A relation is said to be in 3 NF if (i) it is in 2 NF (ii) non-key attributes are independent of one another (iii) key attribute is not dependent on part of a composite key (iv) has no multi-valued dependency (a) i and iii (b) i and iv (c) i and ii (d) ii and iv 8.3.17 Given the following relation it is not 3 NF because Student (roll no, name, course no, course max. marks, year of study, address) (a) it is not in 2 NF (b) it does not have composite key (c) non-key attributes course no and course max. marks are functionally dependent (d) it has more than 3 non-key attributes 8.3.18Given the following relation Student (roll no, name, course no, course max. marks, year of study, address) The corresponding 3 NF relations are (a) student (roll no, name, year of study, address) course (course no, course max. marks) (b) student ( roll no, name, year of study, address) student (roll no, course no) course (course no, course max. marks) (c) student (roll no , name, address) year (roll no, year of study) course (course no, course max. marks) (d) student (roll no, name, address) course (course no, course max. marks, year of study) 8.3.19 Boye Codd Normal Form (BCNF) is needed when (a) two non-key attributes are dependent (b) there is more then one possible composite key (c) there are two or more possible composite overlapping keys and one attribute of a composite key is dependent on an attribute of another composite key (d) there are two possible keys and they are dependent on one another 8.3.20 A relation is said to be in BCNF when (a) it has overlapping composite keys (b) it has no composite keys (c) it has no multivalued dependencies (d) it has no overlapping composite keys which have related attributes 8.3.21 A 3 NF relation is converted to BCNF by (a) removing composite keys (b) removing multivalued dependencies (c) dependent attributes of overlapping composite keys are put in a separate relation

V. Rajaraman/IISc. Bangalore

M8/V1/July 04/7

System Analysis and Design/ Logical Database Design

Multiple Choice Questions

(d) dependent non-key attributes are put in a separate table 8.3.22 BCNF is needed because (a) otherwise tuples may be duplicated (b) when a data is deleted tuples may be lost (c) updating is otherwise difficult (d) when there is dependent attributes in two possible composite keys one of the attributes is unnecessarily duplicated in the tuples 8.3.23 Given the relation Supplier(s_id, p_order, s_name, qty) Given that there is a unique s_name for each s_id and that s_id, p_order is a composite key, find the correct statement among the following: (i) this relation is a BCNF (ii) this is 3 NF relation (iii) this is a 2 NF relation (iv) this is a 1 NF relation (a) i and ii (b) ii and iii (c) i and iv (d) i and iii 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.25 Fourth normal form (4 NF) relations are needed when (a) there are multivalued dependencies between attributes in composite key (b) there are more than one composite key (c) there are two or more overlapping composite keys (d) there are multivalued dependency between non-key attributes 8.3.26 A 3 NF relation is split into 4 NF (a) by removing overlapping composite keys (b) by splitting into relations which do not have more than one independent multivalued dependency (c) removing multivalued dependency (d) by putting dependent non-key attribute in a separate table 8.3.27 A relation project guidance Project Guidance(professor, project, student no. st-name, dept) A professor can give many projects to many students A project will have many students A project may be guided by many professors The 4 NF relation corresponding to this are

V. Rajaraman/IISc. Bangalore

M8/V1/July 04/8

System Analysis and Design/ Logical Database Design

Multiple Choice Questions

(a) Prof_Project (professor, st_name, dept) Proj_stud (project, student no.) (b) Prof_stud (professor, student no) Proj_stud (project, student no) Student (student no, st_name, dept) (c) Student (student no, st_name, dept) Professor(professor, project) (d) Professor( professor, project, dept) Student (student no, st_name, dept) 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 8.3.29 5 NF relations equivalent to the relation of Exercise 10.8.3 are (a) Prof_stud (professor, student_no) Proj_stud ( project, student_no) Prof_proj (professor, project) Student (student_no, st_name, dept) (b) Professor (professor, professor details) Student (student_no, st_name, dept) Project (project no, project details) (c) Prof_stud (professor, student_no) Prof_proj (professor, project) (d) Prof_stud (professor, student_no) Stud_proj (student_no, project) Student (student_no, st_name, dept) 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

V. Rajaraman/IISc. Bangalore

M8/V1/July 04/9

System Analysis and Design/ Logical Database Design

Multiple Choice Questions

8.4.3

TEACHES-COURSES relation in Mini-case example 2 is in (a) 3 NF. Does not need any further normalization (b) BCNF (c) 4 NF (d) unnormalized form 8.4.4 TEACHER-STUDENT relation in Mini-case example 2 is required because (a) it is in 3 NF (b) it has a multivalued key (c) it has a composite key with multivalued dependency relation (d) Without this relation database is incomplete and some queries cannot be answered 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.3 Data availability is often difficult in file based system (a) as files are duplicated (b) as unnecessary data are stored in files (c) as one has to search different files and these files may be in different update states (d) redundant data are stored in files 8.5.4 Management policy changes are difficult to implement in a file based system because (a) relating data in different files is difficult (b) files are duplicated (c) redundant data are stored (d) unnecessary data is stored 8.5.5 Some of the objectives of a database management system are to (i) minimize duplication of data (ii) ensure centralized management control of data (iii) ease retrieval of data (iv) maintain a data dictionary (a) i and ii (b) i, ii and iv (c) i and iii (d) i, ii and iii 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

V. Rajaraman/IISc. Bangalore

M8/V1/July 04/10

System Analysis and Design/ Logical Database Design

Multiple Choice Questions

8.5.7 A database models data so that it is (a) appropriate for application (b) independent of application program (c) optimized for most frequent applications (d) optimized for all applications 8.5.8 A database should be designed to allow providing (a) different views of portions of data requested by an application (b) data only to selected applications as decided by an organization (c) a uniform view of data to all applications (d) data to all applications 8.5.9 The abbreviation DBMS stands for (a) Data Base Manipulation System (b) Data Bank Manipulating System (c) Data Base Management System (d) Data Bank Management System 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.12 One of the main objectives of a DBMS is to (a) Create a database for an organization (b) Facilitate sharing of a database by current and future applications (c) Allow sharing application programs (d) Replace file based systems 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.14 By data independence we mean application programs (a) do not need data (b) may be developed independent of data (c) may be developed without knowing the organization of data (d) may be developed with independent data 8.5.15 Data independence allows (i) no changes in application programs (ii) change in database without affecting application programs V. Rajaraman/IISc. Bangalore

M8/V1/July 04/11

System Analysis and Design/ Logical Database Design

Multiple Choice Questions

(iii) hardware to be changed without affecting application programs (iv) system software to be changed without affecting application programs (a) i, ii (b) ii, iii (c) ii, iii, iv (d) i, ii, iv 8.5.16 Data independence allows (a) sharing the same database by several applications (b) extensive modification of applications (c) no data sharing between applications (d) elimination of several application programs 8.5.17 Among objectives of DBMS are ensuring (i) data integrity (ii) data redundancy (iii) data security (iv) easy data retrieval (a) i, ii (b) i, iii (c) i, iii, iv (d) i, ii, iii 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.5.19 By data integrity we mean (a) maintaining consistent data values (b) integrated data values (c) banning improper access to data (d) not leaking data values 8.5.20 Data integrity is ensured by (a) good data editing (b) propagating data changes to all data items (c) preventing unauthorized access (d) preventing data duplication 8.5.21 By data security in DBMS we mean (a) preventing access to data (b) allowing access to data only to authorized users (c) preventing changing data (d) introducing integrity constraints 8.5.22 DBMS must implement management controls to (i) control access rights to users (ii) implement audit trail when changes are made (iii) allow data to be used extensively in the organization (iv) duplicate databases (a) i, ii (b) ii, iii (c) iii, iv (d) i, iv 8.6.1An E-R modelling for given application leads to

V. Rajaraman/IISc. Bangalore

M8/V1/July 04/12

System Analysis and Design/ Logical Database Design

Multiple Choice Questions

(a) conceptual data model (b) logical data model (c) external data model (d) internal data model 8.6.2A conceptual data model is converted using a Relational Data Base Management System to a (a) logical data model (b) external data model (c) internal data model (d) an entity-relation data model 8.6.3A subset of logical data model accessed by programmers is called a (a) conceptual data model (b) external data model (c) internal data model (d) an entity-relation data model 8.6.4When 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 8.6.5A DBMS has the following components (i) a data definition language (ii) a query language (iii) a security system (iv) audit trail (a) i, ii (b) i, ii, iii (c) i, ii, iii, iv (d) i, ii, iv 8.6.6A check pointing system is needed (a) to ensure system security (b) to recover from transient faults (c) to ensure system privacy (d) to ensure system integrity 8.6.7 A database administrator (a) administers data in an organization (b) controls all inputs and all outputs of programs (c) is controller of data resources of an organization (d) controls all data entry operators 8.6.8 The responsibilities of a database administrator includes (i) maintenance of data dictionary (ii) ensuring security of database (iii) ensuring privacy and integrity of data (iv) obtain an E-R model (a) i, ii (b) i, ii, iii

V. Rajaraman/IISc. Bangalore

M8/V1/July 04/13

System Analysis and Design/ Logical Database Design

(c) i, ii, iii, iv

Multiple Choice Questions

(d) ii, iii, iv

8.6.9 Access right to a database is controlled by (a) top management (b) system designer (c) system analyst (d) database administrator 8.6.10 The sequence followed in designing a DBMS are (a) physical model conceptual model logical model (b) logical model physical model conceptual model (c) conceptual model logical model physical model (d) conceptual model physical model logical model 8.6.11 Designing physical model of DBMS requires information on (i) data volume (ii) frequency of access to data (iii) programming language used (iv) secondary memory characteristics (a) i, ii (b) i, ii, iii (c) i, ii, iii, iv (d) i, ii, iv 8.6.12A good database design (i) caters primarily to current needs (ii) caters to current and future needs as organizations grow (iii) has to be modified when hardware is upgraded (iv) ensures data security (a) i, ii (b) i, ii, iii (c) ii, iv (d) iii, iv 8.6.13 A good database design (i) is expandable with growth and changes in organization (ii) easy to change when software changes (iii) ensures data integrity (iv) allows access to only authorized users (a) i, ii (b) ii, iii (c) i, ii, iii, iv (d) i, ii, iii

V. Rajaraman/IISc. Bangalore

M8/V1/July 04/14

System Analysis and Design/ Logical Database Design

Multiple Choice Questions

Key To Objective Questions 8.1.1 8.1.7 8.1.13 8.2.4 8.2.10 8.3.4 8.3.10 8.3.16 8.3.22 8.3.28 8.5.1

b a b b b d a c d c b

8.1.2 c 8.1.8 c 8.1.14 c 8.2.5 a 8.2.11 b 8.3.5 c 8.3.11 a 8.3.17 c 8.3.23 d 8.3.29 a 8.5.2 a

8.1.3 b 8.1.9 c 8.1.15 d 8.2.6 b 8.2.12 b 8.3.6 b 8.3.12 c 8.3.18 b 8.3.24 a 8.4.1 a 8.5.3 c

8.1.4 8.1.10 8.2.1 8.2.7 8.3.1 8.3.7 8.3.13 8.3.19 8.3.25 8.4.2 8.5.4

8.5.7

b

8.5.8

8.5.9

c

8.5.10 d

8.5.11 c

8.5.12 b

a

c a b c a d c c a c a

8.1.5 8.1.11 8.2.2 8.2.8 8.3.2 8.3.8 8.3.14 8.3.20 8.3.26 8.4.3 8.5.5

a 8.1.6 d b 8.1.12 c a 8.2.3 b d 8.2.9 a b 8.3.3 b a 8.3.9 b c 8.3.15 a d 8.3.21 c b 8.3.27 b a 8.4.4 d d 8.5.6 c

8.5.13 a

8.5.14 c

8.5.15 c

8.5.16 a

8.5.17 c

8.5.18 b

8.5.19 a

8.5.20 b

8.5.21 b

8.5.22 a

8.6.1

a

8.6.2

a

8.6.3 b

8.6.4

c

8.6.5

8.6.6

8.6.7

c

8.6.8

b

8.6.9 d

8.6.10

c

8.6.11 d

V. Rajaraman/IISc. Bangalore

c

b

8.6.12 c

8.6.13 c

M8/V1/July 04/15

MODULE 8

LOGICAL DATABASE DESIGN WORKED EXAMPLES

8.1 What is an entity? Give examples of entities. Entities specify distinct real world items, in an application, e.g., employees, books, cars, fan, chair etc . 8.2 In what ways is an attribute different from an entity? 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). 8.3 What do you understand by a 1 to 1, 1 to many, many to many relationships? Give an example for each. If for every value of an attribute A in a relation there is a unique value of an attribute B in another relation then A and B are dependent 1 to 1. If for each A there are N values of B, then A and B are 1:N. Finally if for each value of A there are M values of B and for each B there are N values of A, then A and B are M:N related. Example of 1 to 1 relationship A student can enroll in only one dept. Student id dept. id Example of 1 to many A teacher teaching 3 courses 1:3

Teacher id Course id Example of many to many Students take 4 courses Each course can have 40 students Student id

N:M

Course id

8.4 What is the difference between a relation and a relationship? Relationship depicts the dependency or connection between two entities. A relation is a flat table. 8.5 What is normalization of a relation? Normalization is a procedure used to transform a set of relations into another set which has the following desirable properties: 1. Duplication of data in database is minimized. 2. Operations of adding, deleting, modifying data in a database do not lead to inconsistent data in database. 3. Retrieval of data is simplified 8.6 Why should relations be normalized? 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. Normalization also simplifies retrieval of data from a database. 8.7 What is functional dependency? Let X and Y be two attributes of a relation. Given a value of X, if there is only one value of Y corresponding to it then Y is functionally dependent on X. 8.8 What is the key attribute in a relation? If an attribute X in a relation is such that the value of all the other attributes are uniquely determined by the value of X, then X is the key attribute of the relation. 8.9 What is the difference between a 2 NF and a 3 NF relation? In 2 NF all non-key attributes are dependent on the key attribute. No non-key attribute should be dependent in a part of a composite key. There may be a dependency between non-key attributes. Such a dependency is not allowed in 3 NF relation. 8.10 When is BCNF required? If there is a dependency between attributes of two overlapping multi-attribute keys the relation needs to be normalized to BCNF. It implies that a relation needing BCNF has more than one candidate key. 8.11 When are 4 NF and 5 NF required? When there is more than 1 independent multi-valued dependency between attributes in a relation then 4 NF and 5 NF are required.

8.12 What is the difference between 4 NF and 5 NF? 5 NF adds one more relation with attributes which have multi-valued dependency in the 4 NF relation. 8.13 Develop E-R diagram for the following: (i)Customer withdraws money from his account. (ii)Students write examinations. (iii)Students attend classes. (iv)Professors write books. (v)Driver drives a car.

Customer

Withdraws from

Account

(i)

Professor

Student

Writes exam in

Subject

(ii)

Attends

Classes

(iii)

Driver

Writes

Drives

Books

Cars

(iv)

Student

(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) Relations (i), (ii), (iv) are already in normal form. Relation (iii) has multi-valued dependency if we assume that a course may be taught by many teachers a teacher can teach many courses a student may attend many courses We should add relations TEACHER-COURSE (Teacher id., course no., roll no.) In relation (v), non-key attributes are dependent in the relation CAR as given manufacturer and model of car, the horse power is known. We thus split CAR into two relations as shown: (i) CAR REGISTRATION(Registration no., manufacturer, model, year, chassis no., body no. ) (ii) CAR PARTICULARS(Manufacturer, model, year, horse power, no. of seats)

8.15 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 identification.” PART(Part no., part name, material type, qty. needed) PART-MACHINE(Part no., machine no., time needed on machine) MACHINE(Machine no., machine name, details of machine) MACHINISTS(Machinist id., name, wage) MACHINE ASSIGNMENT(Machine no., machinist no., part no., start time, end time)

N Parts N Made using

Made by

M

1 N

Machinists

Operate on

M Machines

8.16 Admission procedure in a university is as follows: 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 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. Obtain an E-R diagram and a set of relations for the above problem statement.

Assumptions: 1. An applicant sends separate applications for each course. 2. A clerk (or case worker) in Registrar’s office verifies several applications 3. Several case workers are there in Registrar’s office 4. The department has only one person who decides the result on scrutiny of application APPLICANT(Applicant no., Applicant name, address) SENDS(Applicant no., Application no.) APPLICATION(Application no., dept no., fee paid, marks) APPLICATION-SCRUTINY(Application no., dept no.) DEPARTMENT(Dept no., Dept name, no. of student) APPLICATION-REPLY(Application no., dept no., admit)

Applicant

Sends reply to

Sends

Applications

8.17

Scrutinized by

Department

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

1 Sent to

Pays

1 Subscription

1 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.19 What do you understand by the term data integrity? If a data field is stored in different files with different values there is no data integrity. For example, if a student’s address in the department’s file is different from that in the hostel file then there is no data integrity. 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.22 What do you understand by the term data independence? By data independence we mean that an application programmer need not know the physical format and storage of data to use the data in an application. 8.23 Distinguish between issues of privacy and security in a database? Data security is concerned with protecting access to data. Authorization levels for updating, retrieving different data elements are specified. Protection against accidental loss of data is planned. Data privacy is concerned with preventing use of individual’s data without his/her permission. 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. 8.25 What is RDBMS? In relational DBMS relations are used to represent the logical data model. 8.25 What are the responsibilities of a Database Administrator (DBA) in an organization? A database administrator is responsible for ensuring integrity, security and privacy of data.

System Analysis and Design/Data Input Methods

Question Bank

QUESTION BANK 8.1

What is an entity? Give examples of entities.

8.2

What is a relationship? In what way is it different from an entity?

8.3

In what way is an attribute different from an entity?

8.4

What do you understand by a 1 to 1, 1 to many, many to many relationships? Give one example for each.

8.5

What is the difference between a relation and a relationship?

8.6

What is normalization of a relation?

8.7

Why should relations be normalized?

8.8

What is a functional dependency?

8.9

What is a key attribute in a relation?

8.10

What is the difference between a 2NF and a 3NF relation?

8.11

When is BCNF required?

8.12

When are 4NF and 5NF required?

8.13

What is the difference between 4NF and 5NF?

8.14

Develop E-R diagram for the following: Customer withdraws money from his account Students write examinations. Students attend classes Professors write books Driver drives a car

8.15

Draw an E-R diagram showing the cardinality for the following: (i)

A bill is sent to a customer. A customer can receive many bills.

V. Rajaraman/IISc. Bangalore

M8/V1/July 04/1

System Analysis and Design/Data Input Methods

Question Bank

(ii)

A clerk works in a bank. The bank has many clerks

(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 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 assumptions and state the assumptions.

8.19

For the problem statement of Exercise 5.15 (Module 5) obtain the E-R diagram and relations for the problem.

8.20

For the problem statement of Exercise 5.16 (Module 5), obtain the E-R diagram and a set of relations by using the 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.23

What do you understand by the term data integrity?

V. Rajaraman/IISc. Bangalore

M8/V1/July 04/2

System Analysis and Design/Data Input Methods

Question Bank

8.24

If redundant data is stored can it lead to data integrity problem?

8.25

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.

8.26

Define a database of an organization.

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.29

What do you understand by the term data independence?

8.30

What advantages are available to a programmer from data independence?

8.31

Draw an analogue between the advantages of high level language programming and data independence of application programs.

8.32

How can data integrity be maintained in a database?

8.33

Distinguish between issues of privacy and security in a database.

8.34

What is the role of E-R diagrams in database design?

8.35

What is the difference between a conceptual model and a logical model of a database?

8.36

What is an internal model of a DBMS?

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 model, and internal model?

V. Rajaraman/IISc. Bangalore

M8/V1/July 04/3

System Analysis and Design/Data Input Methods

Question Bank

8.39

How is data independence of application programs ensured in a DBMS?

8.40

What is RDBMS?

8.41

What are the responsibilities of a Database Administrator (DBA) in an organization?

8.42

What are the ideal features of a database system?

8.43

Are DBMS relevant to Personal Computers (PCs)?

V. Rajaraman/IISc. Bangalore

M8/V1/July 04/4

System Analysis and Design/Data Input Methods

Case Study

Mini Case Example 1 We will illustrate the method used to obtain an E-R diagram with an example. Usually an imprecise statement of the needs of an organization is given by the management. We now give a sample of such a statement. This is to be used to obtain an E-R diagram. User's narrative of requirements: "Our company receives a number of items from 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 office if the inventory level of an item.

V. Rajaraman/IISc. Bangalore

M8/V1/July 04/1

System Analysis and Design/Data Input Methods

Case Study

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". The E-R diagram for the problem is: orders

Placed for

Placed with

items

vendors

Supplies

The relations are: ORDER (order no.., order date) ORDER PLACED FOR (order no., item code, qty. ordered, delivery time allowed) ORDER PLACEDWITH (order no.. vendor code, item code) VENDOR (vendor code, vendor name, vendor address) ITEM (item code, item name, price/unit) SUPPLIES (vendor code, item code, order no., qty.supplied, date of supply). The key attribute(s) are in bold letter(s) in each relation.

V. Rajaraman/IISc. Bangalore

M8/V1/July 04/2

System Analysis and Design/Data Input Methods

Case Study

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. ORDER PLACED WITH (order no., vendor code) 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 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.

V. Rajaraman/IISc. Bangalore

M8/V1/July 04/3

System Analysis and Design/Data Input Methods

Case Study

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. •

A teacher may teach more than one course in a semester



A teacher is affiliated to only one department



A student may take many courses in a semester



The same course may have more than one section and different sections will be taught by different teachers.



A course may be taught in more than one semester

An entity relationship diagram for this problem is given below. The relations corresponding to the E-R diagram are:

V. Rajaraman/IISc. Bangalore

M8/V1/July 04/4

System Analysis and Design/Data Input Methods

Teacher

Case Study

Studnet

M

K

Teaches

Attends

N

P Courses

An E-R diagram for teacher database TEACHER (Teacher code, teacher’s name, teacher’s address, rank, dept.) TEACHES COURSES (Teacher code, course no., semester no., no.of students, section no) COURSE (course no., semester no., course name, credits) STUDENT (student no., student’s name, dept., year) STUDENT –COURSES (student’s no., course no., semester 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 relation is normalized in 3NF (No higher NFs are applicable). 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 relations TEACHES COURSES and STUDENT-COURSES have multiattribute keys, but

V. Rajaraman/IISc. Bangalore

M8/V1/July 04/5

System Analysis and Design/Data Input Methods

Case Study

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 to student no. Y in Semester 2?” Let us add a relation. TEACHER-STUDENT (Teacher code, student no., course no.) 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 TEACHERSTUDENT as it is specified above is sufficient to give the idea that student Y takes course X from Teacher Z.

V. Rajaraman/IISc. Bangalore

M8/V1/July 04/6

System Analysis and Design/Data Input Methods

Pointers

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.

Chapter 10

Logical Data Base Design, pp.130 to 153. Chapter 12 , Data Base Management Systems, pp. 171 –1719. 2. Good treatment of E-R Modelling and Normalization may be found in the book “Introduction to Systems analysis and Design”, by I.T.Hawryszkiewycz, Prentice Hall of India, 1989. 3. For those interested in detailed study of Data Base Design and DBMS, the following books are standard texts: 1, R.Elmasri and S.B.Navathe, Fundamentals of Data Base Systems, 4th Edition, Pearson Education Asia, New Delhi, 2004. 2. T.Connolly and C.Begg, Dta Base Systems, 3rd Edition, Pearson Education Asia, New Delhi, 2003.

V. Rajaraman/IISc. Bangalore

M8/V1/July 04/1

SUMMARY OF MODULE 8

1. A conceptual model of data used in an application is obtained by using an entity relationship model (E-R model). 2. Entities specify distinct real world items in an application, relationships represent dependencies between entities, and attributes specify properties of entities and relationships. 3. Entity set describes items which are similar. Students, courses, teachers are examples of entity sets. 4. Examples of relationship are students attend courses, Teachers teach courses. “Attend” and “teach” are relationships. 5. E-R models have the facility to describe 1 to 1, 1 to many, many to many, conditional and optional relationships. 6. E-R models assist in designing relational databases. 7. A relation is a table which depicts an entity set. Each column in the relation corresponds to an attribute of the entity. Each row contains a member of the entity set. 8. A relational database consists of a collection of relations relevant for a specified application. 9. Relations in a database are normalized. Normalization is a procedure used to 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 simple. This results in a relation said to be in First Normal Form (INF). 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. Summary of Normalization Steps Input Relation All relations

INF relation

2NF

3NF

BCNF

4NF

Transformation Eliminate variable length records. Remove multiattribute lines in table Remove dependency of non-key attributes on part of a multiattribute key Remove dependency of non-key attributes on other non-key attributes Remove dependency of an attribute of a multiattribute key on an attribute of another (overlapping) multiattribute key Remove more than one independent multivalued dependency from relation by splitting relation Add one relation relating attributes with multivalued dependency to the two relations with multivalued dependency

Output relation INF

2NF

3NF

BCNF

4NF

5NF

15. Traditionally, application programs were written after designing data files appropriate to the application. 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 wasting storage space. 17. Waste of storage space is not the only problem. The same data (such as an address of an individual) may be in different forms in different files, leading to 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 organization may have to be changed. Such a change is time consuming and expensive. 20. Instead of designing independent files for different applications, it is better to design a common database which can be used for all current applications and applications expected to be implemented in the future. 21. A database constitutes the data resource of an organization. It incorporates not only data but also relationships between data items. It is modelled not for specific current applications, but all current and potential applications. 22. A Database Management System (DBMS) is a set of procedures that manage a database and provide application programs access to the database in a form requested by the applications programs.

23. A good DBMS allows sharing of data among applications. Sharing of data is possible if application programs can be written without having a knowledge of data representation, location or access. In other words, application programs should be free to have their own view of data by DBMS. 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 ensure fast access to data required by application programs. 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, normalised relations constitute the logical model. 26. The physical data model is then designed to ensure good performance. User's view of data for application is primarily the logical view.

QUESTION BANK - MODULE 8 8.1

What is an entity? Give examples of entities.

8.2

What is a relationship? In what way is it different from an entity?

8.3

In what way is an attribute different from an entity?

8.4

What do you understand by a 1 to 1, 1 to many, many to many relationships? Give one example for each.

8.5

What is the difference between a relation and a relationship?

8.6

What is normalization of a relation?

8.7

Why should relations be normalized?

8.8

What is a functional dependency?

8.9

What is a key attribute in a relation?

8.10

What is the difference between a 2NF and a 3NF relation?

8.11

When is BCNF required?

8.12

When are 4NF and 5NF required?

8.13

What is the difference between 4NF and 5NF?

8.14

Develop E-R diagram for the following:

Customer withdraws money from his account Students write examinations. Students attend classes Professors write books Driver drives a car

8.15

Draw an E-R diagram showing the cardinality for the following:

(i)

A bill is sent to a customer. A customer can receive many bills.

(ii)

A clerk works in a bank. The bank has many clerks

(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 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

assumptions and state the assumptions. 8.19

For the problem statement of Exercise 5.15 (Module 5) obtain the E-R diagram and relations for the problem.

8.20

For the problem statement of Exercise 5.16 (Module 5), obtain the E-R diagram and a set of relations by using the 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.23

What do you understand by the term data integrity?

8.24

If redundant data is stored can it lead to data integrity problem?

8.25

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.

8.26

Define a database of an organization.

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.29

What do you understand by the term data independence?

8.30

What advantages are available to a programmer from data independence?

8.31

Draw an analogue between the advantages of high level language programming and data independence of application programs.

8.32

How can data integrity be maintained in a database?

8.33

Distinguish between issues of privacy and security in a database.

8.34

What is the role of E-R diagrams in database design?

8.35

What is the difference between a conceptual model and a logical model of a database?

8.36

What is an internal model of a DBMS?

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 model, and internal model?

8.39

How is data independence of application programs ensured in a DBMS?

8.40

What is RDBMS?

8.41

What are the responsibilities of a Database Administrator (DBA) in an organization?

8.42

What are the ideal features of a database system?

8.43

Are DBMS relevant to Personal Computers (PCs)?

Module 8 Mini Case Example 1 We will illustrate the method used to obtain an E-R diagram with an example. Usually an imprecise statement of the needs of an organization is given by the management. We now give a sample of such a statement. This is to be used to obtain an E-R diagram.

User's narrative of requirements. "Our company receives a number of items from 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 office if the inventory level of an ite 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".

The E-R diagram for the problem is:

orders

Placed for

Placed with

items

vendors

Supplies

The relations are: ORDER (order no.., order date) ORDER PLACED FOR (order no., item code, qty. ordered, delivery time allowed) ORDER PLACEDWITH (order no.. vendor code, item code)

VENDOR (vendor code, vendor name, vendor address) ITEM (item code, item name, price/unit) SUPPLIES (vendor code, item code, order no., qty.supplied, date of supply). The key attribute(s) are in bold letter(s) in each relation. 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. ORDER PLACED WITH (order no., vendor code) 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 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. •

A teacher may teach more than one course in a semester



A teacher is affiliated to only one department



A student may take many courses in a semester



The same course may have more than one section and different sections will be taught by different teachers.



A course may be taught in more than one semester

An entity relationship diagram for this problem is given below. The relations corresponding to the E-R diagram are:

Teacher

Studnet

M

K

Teaches

Attends

N

P Courses

An E-R diagram for teacher database TEACHER (Teacher code, teacher’s name, teacher’s address, rank, dept.) TEACHES COURSES (Teacher code, course no., semester no., no.of students, section no) COURSE (course no., semester no., course name, credits) STUDENT (student no., student’s name, dept., year) STUDENT –COURSES (student’s no., course no., semester 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 relation is normalized in 3NF (No higher NFs are applicable). 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 relations TEACHES COURSES and STUDENT-COURSES have multiattribute keys, but

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 to student no. Y in Semester 2?”. Let us add a relation. TEACHER-STUDENT (Teacher code, student no., course no.) 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 TEACHERSTUDENT as it is specified above is sufficient to give the idea that student Y takes course X from Teacher Z.

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.

Chapter 10

Logical Data Base Design, pp.130 to 153. Chapter 12 , Data Base Management Systems, pp. 171 –1719. 2. Good treatment of E-R Modelling and Normalization may be found in the book “Introduction to Systems analysis and Design”, by I.T.Hawryszkiewycz, Prentice Hall of India, 1989. 3. For those interested in detailed study of Data Base Design and DBMS, the following books are standard texts: 1, R.Elmasri and S.B.Navathe, Fundamentals of Data Base Systems, 4th Edition, Pearson Education Asia, New Delhi, 2004. 2. T.Connolly and C.Begg, Dta Base Systems, 3rd Edition, Pearson Education Asia, New Delhi, 2003.

MODULE 9

OBJECT-ORIENTED SYSTEM MODELLING 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 9.1.1 Computer systems are designed by (a) simplifying requirements of system (b) breaking of the system into smaller self-contained co-operating subsystems (c) breaking up the systems into independent parts (d) modular design 9.1.2 Functions and procedures are (a) not useful in designing computer systems (b) old fashioned and they are not useful (c) useful in designing computer systems (d) have side effects which require special care if they are used as subsystems 9.1.3 A subsystem of a complex system must specify (a) what task it performs (b) how it performs a task (c) with which subsystems it co-operates (d) how it co-operates with other systems

9.1.4 A subsystem of a complex system must (i) know how other subsystems perform their task (ii) know what tasks other subsystems perform (iii) know what task it performs and other subsystems perform to access its data (iv) know how to send requests to other systems for getting tasks done by them (a) i, ii (b) ii, iii (c) ii, iv (d) iii, iv 9.1.5 A subsystem of a complex system (i) should be reusable in other complex system (ii) must not be able to inherit the properties of other subsystems (iii) must have clearly specified responsibilities (iv) must know the stimuli to which it should respond (a) i, ii, iii (b) ii, iii, iv (c) i, iii, iv (d) i, ii, iv 9.1.6 By polymorphism of a subsystem we mean (a) it should be reusable (b) it should have polymorphic data types (c) it should accept generic commands and interpret appropriately (d) it should morph polygons 9.1.7 The advantages of object-oriented modelling are (i) it allows easy integration of subsystems (ii) it promotes reuse of code written earlier (iii) it allows modification of some objects by other objects (iv) it allows data structures in objects to be modified by other objects (a) i, ii (b) i, iii (c) ii, iii (d) i, iv 9.1.8 Objects are (i) tangible entities (ii) intangible entities (iii) transient entities (iv) uniquely identifiable (a) i, ii (c) i, ii, iii, iv

(b) i, ii, iii (d) i, ii, iv

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 (c) i, iii, iv

(b) ii, iii, iv (d) i, ii, iii, iv

9.1.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.1.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.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 9.1.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.1.15 An instance of an object is created by a (a) query operation (b) update operation (c) constructor operation (d) open operation 9.1.16 An update operation in an object instance (a) updates the class (b) has no side effects (c) deletes an instance (d) alters values of attribute(s) of an object instance

9.1.17 In object-oriented design (a) operations and methods are identical (b) methods specify algorithms whereas operations only state what is to be done (c) methods do not change values of attributes (d) methods and constructor are same 9.1.18 By abstraction in object-oriented modelling we mean picking (a) only attributes appropriate to model an object (b) only operations (c) both operation and attributes with operations appropriate to model an object (d) the appropriate abstract data type 9.1.19 By encapsulation in object-oriented modelling we mean (a) encapsulating data and programs (b) hiding attributes of an object from users (c) hiding operations on object from users (d) hiding implementation details of methods from users of objects 9.1.20 Encapsulation in object-oriented modelling is useful as (a) it allows improving methods of an object independent of other parts of system (b) it hides implementation details of methods (c) it allows easy designing (d) encapsulates attributes and operations of object 9.1.21 Objects may be viewed as (a) clients in a system (b) servers in a system (c) as both clients and servers in a system (d) neither as clients nor as servers in a system 9.1.22 Inheritance in object-oriented system is used to (a) create new classes from existing classes (b) add new operations to existing operations (c) add new attributes to existing attributes (d) add new states to existing states 9.1.23 Inheritance in object-oriented modelling can be used to (a) generalize classes (b) specialize classes (c) generalize and specialize classes (d) create new classes

9.1.24 When a subclass is created using inheritance the resulting class (a) may have only attributes of parent class (b) may have only operations of parent class (c) may have new operations only in addition to those in parent class (d) may have new attributes and new operations in addition to those of the parent class 9.1.25 By polymorphism in object-oriented modelling we mean (a) the ability to manipulate objects of different distinct classes (b) the ability to manipulate objects of different distinct classes knowing only their common properties (c) use of polymorphic operations (d) use of similar operations to do similar things 9.1.26 A polymorphic operation (a) has same name (b) has same name but uses different methods depending on class (c) uses different methods to perform on the same class (d) uses polymorphic method

LEARNING UNIT 2 9.2.1 Given a word statement of a problem potential objects are identified by selecting (a) verb phrases in the statement (b) noun phrases in the statement (c) adjectives in the statement (d) adverbs in the statement 9.2.2 Given a word statement of problem potential operations appropriate for objects are identified by selecting (a) verb phrases in the statement (b) noun phrases in the statement (c) adjectives in the statement (d) adverbs in the statement 9.2.3 Objects selected to model a system (i) must be essential for functioning of the system (ii) must have all attributes which are invariant during operations of a system (iii) must have attributes relevant for performing services of object (iv) must be able to perform assigned services (a) i, ii, iii (b) ii, iii, iv (c) i, iii, iv (d) i, ii, iii, iv

9.2.4 An object is selected for modelling a system provided (a) its attributes are invariant during operation of the system (b) its attributes change during operation of the system (c) it has numerous attributes (d) it has no attributes relevant to the system 9.2.5 An object is considered an external entity in object-oriented modelling if (a) its attributes are invariant during operation of the system (b) its attributes change during operation of the system (c) it has numerous attributes (d) it has no attributes relevant to the system

LEARNING UNIT 3 9.3.1 Object-oriented system modelling using CRC method gives (a) Java programs for the system (b) C++ programs for the system (c) Classes of the system, their responsibilities and collaborating classes (d) Objective C programs for the system 9.3.2 The expansion of the acronym CRC is (a) Collecting Responsibilities Classes (b) Collaborating with Relevant Classes (c) Class Responsibilities and Collaborators (d) Creating Relevant Classes 9.3.3 In CRC based design a CRC team consists of (i) one or two user’s representatives (ii) several programmers (iii) project coordinators (iv) one or two system analysts (a) i, ii (b) i, iii (c) i, iii, iv (d) i, ii, iii, iv 9.3.4 A class index card contains besides class name (i) superclasses and subclasses (ii) short description of class (iii) collaborators (iv) private responsibilities of class (v) contract(s) with collaborators (a) i, ii, iii (b) i, iii, iv, v (c) i, ii, iii, iv (d) i, ii, iii, iv and v

9.3.5 The CRC modelling primarily requires (i) identifying classes and their responsibilities (ii) identifying collaborators of each class and their responsibilities (iii) developing a collaboration graph (a) i, ii (b) i, iii (c) ii, iii (d) i, ii, iii

KEY TO OBJECTIVE QUESTIONS 9.1.1 b 9.1.7 a

9.1.2 d 9.1.8 d

9.1.3 c 9.1.9 b

9.1.4 c 9.1.10 d

9.1.5 c 9.1.11 c

9.1.6 c 9.1.12 b

9.1.13 b

9.1.14 b

9.1.15 c

9.1.16 d

9.1.17 b

9.1.18 c

9.1.19 d

9.1.20 a

9.1.21 c

9.1.22 a

9.1.23 c

9.1.24 d

9.1.25 b 9.2.5 a

9.1.26 b 9.3.1 c

9.2.1 b 9.3.2 c

9.2.2 a 9.3.3 c

9.2.3 c 9.3.4 d

9.2.4 b 9.3.5 d

System Analysis and Design /Designing Outputs

Motivation

Motivation ™ Presenting results of processing in an attractive and easily understood form is important ™ Management requires these reports to initiate actions and thus the significance of outputs must be easily perceived ™ Must be aware of new output devices being introduced to use them appropriately ™ Must 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 which uses the World Wide Web.

V. Rajaraman/IISc. Bangalore

//V1/July 04/1

MODULE 9

OBJECT ORIENTED SYSTEM MODELLING Learning Units 9.1 Objects and their properties 9.2 Identifying objects in an application 9.3 Modelling systems with object

Systems Analysis And Design

© V. Rajaraman

MOTIVATION ƒ Information Systems are becoming very complex ƒ We thus need methods to design complex systems ƒ Main method is to break up a large system into a number of cooperation components and designing each component or subsystem separately ƒ Question: How do we do this? ƒ The main purpose of this module is to answer this question

Systems Analysis And Design

© V. Rajaraman

1 of 41

DESIRABLE PROPERTIES OF COMPONENTS

Each subsystem or component must • Have clearly defined responsibility • Acts when requested by an "order" • How the component does its task need not be known to other components • What the component does should be known

9.1.1

System Analysis And Design

© V. Rajaraman

2 of 41

DESIRABLE PROPERTIES OF COMPONENTS (CONTD) • Components must be general enough to be reusable

• Variety of components should be reduced-this is facilitated by allowing components to inherit properties of other components • Another aid to genaralize the function of a component is to allow generic commands which make components do their task • This is called POLYMORPHISM

9.1.2

System Analysis And Design

© V. Rajaraman

3 of 41

OBJECT ORIENTED MODELLING

Use of component oriented design • Facilitates changes in the system at low cost • Promotes reuse of components • Problem of integrating components to configure large system simplified •Simplifies design of distributed systems

9.1.3

System Analysis And Design

© V. Rajaraman

4 of 41

OBJECT AND THEIR PROPERTIES ƒ All tangible entities in an application can normally be modelled as objects For example: A student,a cycle,a train ticket ƒ Some intangible entities may also be modelled as objects For example: a bank account, stack data structure ƒ Objects with similar meaning and purpose grouped together as CLASS ƒ A member of a class is an object instance

9.1.4

System Analysis And Design

© V. Rajaraman

5 of 41

CHARACTERSTICS OF OBJECTS ƒ All objects have attributes Example : student : Name Roll no Address Year Department ƒ All objects have a state Example Ticket : reserved, waiting list Student : present, absent 9.1.5

System Analysis And Design

© V. Rajaraman

6 of 41

CHARACTERSTICS OF OBJECTS

ƒ All objects have set of OPERATIONS which can be performed on them Operations determine object behavior Example : Admit student Cancel ticket

9.1.6

System Analysis And Design

© V. Rajaraman

7 of 41

CLASS DIAGRAM – UML NOTATION ƒ Universal Modelling Language (UML) is an industry standard notation to represent a class Example of UML notation for a Class Vendor Vendor id Name Address Vendor type Add vendor Delete vendor Find address Change address Find vendor type

9.1.7

System Analysis And Design

CLASS NAME LIST OF ATTRIBUTES

OPERATIONS OR (METHODS)

© V. Rajaraman

8 of 41

INSTANCE DIAGRAM – UML NOTATION ƒ Shows an object instance's attributes and values EXAMPLE Class name Object name and its Class name

A 2546 : VENDOR VENDORNAME = AD SINGH & CO

Vendor id

VENDOR TYPE = DISTRIBUTOR VENDOR ADDRESS = 5, MALL

Attributes and their values

ROAD,KANPUR 208001

9.1.8

System Analysis And Design

© V. Rajaraman

9 of 41

OPERATION TYPES ON OBJECTS

ƒ Constructor-creating new instances of a class Deleting existing instance of class Example : add new vendor ƒ Query - accessing state without changing value - has no side effects Example : find vendor address

9.1.9

System Analysis And Design

© V. Rajaraman

10 of 41

OPERATION TYPES ON OBJECTS

ƒ Update - changes value of one or more attributes - affect state of object - has side effects example : change address of vendor Implementation of operations on objects called methods

9.1.10

System Analysis And Design

© V. Rajaraman

11 of 41

IMPLEMENTATION OF CLASSES

TERMINOLOGY USED IN OBJECT ORIENTED MODELLING ƒ ABSTRACTION Picking necessary operation and attributes to specify objects ƒ ENCAPSULATION Hiding implementation details of methods from outside world ƒ ENCAPSULATION AlSO KNOWN AS INFORMATION HIDING ƒ INFORMATION HIDING ALLOWS IMPROVEMENT OR MODIFICATION OF METHODS USED BY OBJECTS WITHOUT AFFECTING OTHER PARTS OF A SYSTEM

9.1.11

System Analysis And Design

© V. Rajaraman

12 of 41

VIEW OF OBJECTS AS CONTRACTORS

1) Objects can be thought of contractors who carry out assigned contracts for clients 2) Clients need not know how the contractor carries out its contracts 3) Contractors can modify/improve methods they use to carry out contracts without “informing” clients 4) External interface presented to clients remain same

9.1.12

System Analysis And Design

© V. Rajaraman

13 of 41

INHERITANCE ƒ 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

9.1.13

System Analysis And Design

© V. Rajaraman

14 of 41

EXAMPLE OF INHERITANCE Class name

College student Roll no Name Address Year of study

Attributes

Operations

Science student Roll no Name Address Year of study Department Laboratory name Admit Promote Calculate laboratory fee

9.1.14

Admit Promote

Class Name

Arts student

Attributes

Roll no Name Address Year of study Department

Operations

Admit Promote Calculate field trip fee

System Analysis And Design

© V. Rajaraman

15 of 41

GENERALISATION/SPECIALISATION Given a class Eye surgeon we can generalize it to surgeons which will inherit most of the attributes and operations of the eye surgeon A general class School, will inherit many properties of middle school, primary school Given a class Doctor we can obtain subclasses : Surgeon, Physician, General Practitioner, Consulting Doctor.All these will inherit many properties of doctor and will have their own new attributes and operations

9.1.15

System Analysis And Design

© V. Rajaraman

16 of 41

POLYMORPHISM ƒBy polymorphism we mean ability to manipulate objects of different distinct classes knowing only their common properties ƒConsider classes hospital & school For both the operation admit will be meaningful - they will be interpreted differently by each class ƒAdvantage of polymorphism is ease of understanding by a client ƒA client gives a generic request - each contractor interprets and executes request as appropriate to the circumstances

9.1.16

System Analysis And Design

© V. Rajaraman

17 of 41

IDENTIFYING OBJECTS

ƒ Simple method - identify nouns in Requirements specification. These are potential objects - Identify verbs in requirements specification. These are potential operations

9.2.1

System Analysis And Design

© V. Rajaraman

18 of 41

CRITERIA FOR PICKING OBJECTS

1) We remind that an object class has many objects as members 2) Wherever there is no possibility of confusion we use them synonymously 3) Objects should perform assigned services.In other words they must have responsibilities specified by us. 4)

9.2.2

Objects must have relevant attributes which are necessary to perform service. Attributes must have Non-Null values.

System Analysis And Design

© V. Rajaraman

19 of 41

CRITERIA FOR PICKING OBJECTS

5) A class must be essential for functioning of the system

6) Must have common set of attributes and operations which are necessary for all occurrences of the objects in the class

7) Objects should be independent of implementation of the system.

9.2.3

System Analysis And Design

© V. Rajaraman

20 of 41

HOW TO SELECT OBJECTS 1) Potential objects selected from word statement primarily by examining noun phrases 2) All Noun phrases need not be objects 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 4) We will illustrate selecting objects using examples

9.2.4

System Analysis And Design

© V. Rajaraman

21 of 41

EXAMPLE 1 –WORD STATEMENT ESSENTIALS OF AN ADMISSION PROCESS TO A UNIVERSITY ARE ƒ Applicants send applications to a university registrar’s office ƒ A clerk in the registrar's office scrutinizes applications to see if mark list is enclosed and fee paid ƒ If scrutiny successful applications passed on to the relevant department

9.2.4

System Analysis And Design

© V. Rajaraman

22 of 41

EXAMPLE 1 –WORD STATEMENT

ƒ Departmental committee scrutinizes applications sent to it.Applications are ranked. Depending on the seats available decides to admit, wait list or reject.The application is returned with the message to the registrar’s office clerk. ƒ Registrar's office clerk informs the applicant the result of his applications

9.2.5

System Analysis And Design

© V. Rajaraman

23 of 41

EXAMPLE 1 –IDENTIFICATION OF OBJECTS POTENTIAL OBJECTS 1. 2. 3. 4. ƒ ƒ ƒ ƒ

9.2.6

APPLICANT APPLICATION REGISTRAR’S OFFICE CLERK DEPARTEMENTAL (COMMITTEE)

How to select relevant objects? Decision based on answers to following questions Does it have attributes? Are operations performed on the attributes?

System Analysis And Design

© V. Rajaraman

24 of 41

EXAMPLE 1 –IDENTIFICATION OF OBJECTS ANSWERS FOR EXAMPLE 1 1.

Applicant has attributes. However no operations performed on it.It is not an object in this problem.

2.

Application has attributes operations are performed using attributes of application.Result conveyed to applicant.Admit it as an object

3.

Registrar’s office clerk has attributes,performs operations on application, attributes and not on clerk’s attributes.Thus reject.

4. Department taken as potential object.It has attributes.Operations are performed using attributes. Operations are performed using attributes of application object and also using attributes of department.Thus admit department as an object

9.2.7

System Analysis And Design

© V. Rajaraman

25 of 41

ATTRIBUTES AND OPERATIONS PERFORMED BY IDENTIFIED OBJECTS CLASS NAME

CLASS NAME

APPLICATION

DEPARTEMENT

ATTRIBUTES APPLICATION NUMBER APPLICANT NAME APPLICANT ADDRESS MARKS SHEET FEE PAID RECEIPT DEPT. APPLIED CODE APPLN STATUS CLERK CODE

ATTRIBUTES DEPARTMENT CODE DEPARTMENT NAME COURSE NO OF STUDENTS TO BE ADMITTED NO ON WAIT LIST MIN. ENTRY QUALIFICATION STATUS OF APPLICATION

OPERATIONS SCRUTINIZE SEND APPLICATION TO DEPT SEND RESPONSE ADMIT/W.L/REJECT TO APPLICANT

9.2.8

System Analysis And Design

OPERATIONS SCRUTINIZE APPLICATION SEND APPLICATION STATUS

© V. Rajaraman

26 of 41

EXAMPLE 2 : RECEIVING ITEMS ORDERED ABSTRACT OF WORD STATEMENTS ƒ Receiving office receives several items from vendors ƒ Receiving office checks delivery note against orders and detects excess/deficient deliveries if any ƒ Discrepancy note (if any) sent to purchase office ƒ Receiving office sends items received note to inspection office ƒ Inspection office physically inspects items received and accepts good items.Bad items returned to vendor ƒ Items accepted note sent to stores office ƒ Discrepancy note sent to purchase office ƒ Stores office updates inventory based on items accepted note ƒ Stores office sends taken into stock report to the accounts office for payment to vendor ƒ Accounts office sends payments to vendors

Candidate objects underlined 9.2.9

System Analysis And Design

© V. Rajaraman

27 of 41

PICKING RELEVANT OBJECTS POTENTIAL OBJECTS (UNDERLINED IN LAST PPT) ARE: 1. RECEIVING OFFICE 2. ITEMS 3. VENDORS 4. DELIVERY NOTE 5. ORDERS 6. DISCREPANCY NOTE 7. PURCHASE OFFICE 8. ITEMS RECEIVED NOTE 9.INSPECTION OFFICE 10. ACCEPTED ITEMS NOTE 11. STORES OFFICE 12. INVENTORY 13. GOODS TAKEN IN STOCK REPORT 14. ACCOUNTS OFFICE 15. PAYMENT VOUCHER OBJECTS NOT RELEVANT TO THIS APPLICATION ƒ Items ƒ Orders ƒ Inventory As no operations on these ƒ Goods taken in stock ƒ Payment voucher 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

9.2.10

System Analysis And Design

© V. Rajaraman

28 of 41

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

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

9.2.11

System Analysis And Design

© V. Rajaraman

29 of 41

ATTRIBUTES OF DELIVERY NOTE AND ORDER TO VENDOR CLASS : DELIVERY NOTE Attributes : Receiving clerk id Order no Vendor code Delivery date Item code Qty supplied Units

9.2.12

System Analysis And Design

CLASS : ORDER TO VENDOR Attributes : Order no Vendor code Item code Item name Qty ordered Units Price/Unit Order date Delivery period

© V. Rajaraman

30 of 41

RECEIVING OFFICE OBJECT Receiving office is selected as an object.Its attributes are attributes derived from delivery note and order to vendor The class diagram is give below CLASS RECEIVING OFFICE

9.2.13

Is Part of

Is Part of

DELIVERY NOTE

ORDER TO VENDOR

System Analysis And Design

© V. Rajaraman

31 of 41

RECEIVING OFFICE OBJECT

CLASS : RECEIVING OFFICE

Attributes : Derived as shown in the previous slide 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)

9.2.14

System Analysis And Design

© V. Rajaraman

32 of 41

OTHER RELEVANT OBJECTS

CLASS : STORES OFFICE Attributes : Attributes of inspection office + qty in stock Operations : ƒ Update inventory by adding no of items accepted to qty in stock ƒSend advice to accounts object to make payment for qty accepted

9.2.15

System Analysis And Design

© V. Rajaraman

33 of 41

NEXT OBJECT IS INSPECTION OFFICE

CLASS : INSPECTION OFFICE Attributes : Derived attributes from delivery note + no of items accepted Operations : ƒ Send information an accepted items to store and accounts ƒ Send discrepancy note( if any) to purchase office and vendor

9.2.16

System Analysis And Design

© V. Rajaraman

34 of 41

OTHER OBJECTS ARE

CLASS : ACCOUNTS OFFICE Attributes : Derived from inspection office attributes + price/unit of item 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

9.2.17

System Analysis And Design

© V. Rajaraman

35 of 41

OBJECT ORIENTED MODELLING-CRC METHOD Steps in object oriented modelling 1) Find objects and their classes 2) Determine responsibilities of each object 3) State responsibilities, that is, actions. It can can carry out on its own using its knowledge 4) Determine objects with whom they collaborate. 5) State contracts each object assigns to its collaborations 6) A collaborator either performs a requested action or gives information 7) Document each class – its responsibilities,its collaborators and their responsibilities 8) Develop an object interaction/collaboration graph 9.3.1

System Analysis And Design

© V. Rajaraman

36 of 41

CRC TEAM IDEA CRC TEAM : user's representative System analyst(s) project coordinator

RESPONSIBILITY : Identify objects Specify responsibility Specify collaborators and their responsibilities Prepare a card for each class called class index cards 9.3.2

System Analysis And Design

© V. Rajaraman

37 of 41

CRC METHODOLOGY 1. Make CRC Card for each class CRC CARD CLASS NAME : SUPER CLASSES AND SUBCLASSES : SHORT DESCRIPTION OF CLASS : COLLABORATORS : PRIVATE RESPONSIBILITIES OF CLASS : CONTARCTS WITH COLLABORATORS :

Develop a graph to show interaction between classes

9.3.3

System Analysis And Design

© V. Rajaraman

38 of 41

CRC MODEL - EXAMPLE For Example1 of last learning unit the CRC model is given below 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

9.3.4

System Analysis And Design

© V. Rajaraman

39 of 41

CRC MODEL – EXAMPLE (CONTD)

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 Contract(s) and Collaborator(s): Send reply to applicationclass on admitted, rejected or wait list

9.3.5

System Analysis And Design

© V. Rajaraman

40 of 41

COLLABORATION GRAPH CLASS Admit/reject/wait list APPLICATION

Examine application

CLASS DEPARTMENT

Application status

Applicant

COLLABORATION GRAPH FOR EXAMPLE2 Delivery Vendor

CLASS RECEIVING OFFICE

Inspect

CLASS INSPECTION OFFICE

Payment

Update Inventory

Delivery copy Discrepancy note

CLASS CLASS PURCHASE OFFICE Payment ACCOUNTS OFFICE Make copy

9.3.6

System Analysis And Design

CLASS STORES OFFICE

payment

© V. Rajaraman

41 of 41

MODULE 9 OBJECT ORIENTED SYSTEM MODELLING

Contents

1. MOTIVATION AND LEARNING GOALS

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 Information Systems are becoming very complex, we thus need methods to design complex systems. Main method is to break up a large system into a number of cooperation components and designing each component or subsystem separately. How do we do this? The main purpose of this module is to answer this question.

LEARNING GOALS At the end of this module you will know: 1. 2. 3. 4.

What are objects. Why is it necessary to identify objects in an application. How to identify objects given requirement specifications. How objects are used to model information system.

LEARNING UNIT 1

Objects and their properties DESIRABLE PROPERTIES OF COMPONENTS Each subsystem or component must • Have clearly defined responsibility • Act when requested by an "order" • How the component does its task need not be known to other components • What the component does should be known • Components must be general enough to be reusable • Variety of components should be reduced-this is facilitated by allowing components to inherit properties of other components • Another aid to generalize the function of a component is to allow generic commands which make components do their task. This is called POLYMORPHISM OBJECT ORIENTED MODELLING Use of component oriented design facilitates changes in the system at low cost, promotes reuse of components, problem of integrating components to configure large system will be simplified. It also simplifies design of distributed systems.

OBJECT AND THEIR PROPERTIES All tangible entities in an application can normally be modelled as objects For example: A student,a cycle,a train ticket Some intangible entities may also be modelled as objects For example: a bank account, stack data structure Objects with similar meaning and purpose grouped together as CLASS. And a member of a class is an object instance.

CHARACTERSTICS OF OBJECTS All objects have attributes Example : student : Name Roll no Address Year Department All objects have a state Example Ticket: reserved, waiting list Student: present, absent All objects have set of OPERATIONS which can be performed on them. Operations determine object behavior Example : Admit student Cancel ticket CLASS DIAGRAM – UML NOTATION Universal Modelling Language (UML) is an industry standard notation to represent a class Example of UML notation for a Class

Vendor Vendor id Name Address Vendor type

CLASS NAME

LIST OF ATTRIBUTES

Add vendor Delete vendor OPERATIONS OR (METHODS) Find address INSTANCE DIAGRAM – UML NOTATION Change address Find vendor type Shows an object instance's attributes and values

EXAMPLE

Class name

A 2546 : VENDOR

Vendor id

VENDOR ID = A2546 VENDORNAME = AD SINGH & CO VENDOR TYPE = DISTRIBUTOR VENDOR ADDRESS = 5, MALL ROAD,KANPUR 208001

Object name and its Class name

Attributes and their values

OPERATION TYPES ON OBJECTS Constructor-creating new instances of a class and deleting existing instance of class Example : add new vendor Query - accessing state without changing value, has no side effects Example : find vendor address 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 ABSTRACTION Picking necessary operation and attributes to specify objects

ENCAPSULATION Hiding implementation details of methods from outside world, it is also known as information hiding. Information hiding allows improvement or modification of methods used by objects without affecting other parts of a system

VIEW OF OBJECTS AS CONTRACTORS 1) Objects can be thought of contractors who carry out assigned contracts for clients 2) Clients need not know how the contractor carries out its contracts 3) Contractors can modify/improve methods they use to carry out contracts without “informing” clients 4) External interface presented to clients remain same

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

Class name Attributes

Operations

Science student Roll no Name Address Year of study Department Laboratory name Admit Promote Calculate laboratory fee

College student Roll no Name Address Year of study Admit Promote

Class Name

Arts student

Attributes

Roll no Name Address Year of study Department

Operations

Admit Promote Calculate field trip fee

GENERALISATION/SPECIALISATION Given a class Eye surgeon we can generalize it to surgeons which will inherit most of the attributes and operations of the eye surgeon

A general class School, will inherit many properties of middle school, primary school Given a class Doctor we can obtain subclasses : Surgeon, Physician, General Practitioner, Consulting Doctor.All these will inherit many properties of doctor and will have their own new attributes and operations POLYMORPHISM By polymorphism we mean ability to manipulate objects of different distinct classes knowing only their common properties, Consider classes hospital & school For both the operation admit will be meaningful, but they will be interpreted differently by each class. Advantage of polymorphism is ease of understanding by a client. A client gives a generic request - each contractor interprets and executes request as appropriate to the circumstances

LEARNING UNIT 2

Identifying objects in an application

IDENTIFYING OBJECTS Simple method - identify nouns in Requirements specification. These are potential objects - Identify verbs in requirements specification. These are potential operations CRITERIA FOR PICKING OBJECTS 1)We remind that an object class has many objects as members 2)Wherever there is no possibility of confusion we use them synonymously 3)Objects should perform assigned services. In other words they must have responsibilities specified by us. 4)Objects must have relevant attributes which are necessary to perform service. Attributes must have Non-Null values. 5)A class must be essential for functioning of the system 6)Must have common set of attributes and operations which are necessary for all occurrences of the objects in the class 7)Objects should be independent of implementation of the system. HOW TO SELECT OBJECTS 1) Potential objects are selected from word statement primarily by examining noun phrases 2) All Noun phrases need not be objects 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 EXAMPLE 1 –WORD STATEMENT ESSENTIALS OF AN ADMISSION PROCESS TO A UNIVERSITY ARE

Applicants send applications to a university registrar’s office A clerk in the registrar's office scrutinizes applications to see if mark list is enclosed and fee paid If scrutiny successful applications passed on to the relevant department Departmental committee scrutinizes applications sent to it. Applications are ranked. Depending on the seats available decides to admit, wait list or reject. The application is returned with the message to the registrar’s office clerk. Registrar's office clerk informs the applicant the result of his applications POTENTIAL OBJECTS 1. 2. 3. 4.

APPLICANT APPLICATION REGISTRAR’S OFFICE CLERK DEPARTEMENTAL (COMMITTEE)

1.

Applicant has attributes. However no operations performed on it. It is not an object in this problem. 2. Application has attributes operations are performed using attributes of application. Result conveyed to applicant. Admit it as an object 3. Registrar’s office clerk has attributes, performs operations on application’s attributes and not on clerk’s attributes. Thus reject. 4. Department taken as potential object. It has attributes. Operations are performed using attributes. Operations are performed using attributes of application object and also using attributes of department. Thus admit department as an object

ATTRIBUTES AND OPERATIONS PERFORMED BY IDENTIFIED OBJECTS

APPLICATION

DEPARTEMENT

ATTRIBUTES APPLICATION NUMBER APPLICANT NAME APPLICANT ADDRESS MARKS SHEET FEE PAID RECEIPT DEPT. APPLIED CODE APPLN STATUS CLERK CODE

ATTRIBUTES DEPARTMENT CODE DEPARTMENT NAME COURSE NO OF STUDENTS TO BE ADMITTED NO ON WAIT LIST MIN. ENTRY QUALIFICATION STATUS OF APPLICATION

OPERATIONS

OPERATIONS

SCRUTINIZE SEND APPLICATION TO DEPT SEND RESPONSE ADMIT/W.L/REJECT TO APPLICANT

SCRUTINIZE APPLICATION SEND APPLICATION STATUS

EXAMPLE 2 : RECEIVING ITEMS ORDERED ABSTRACT OF WORD STATEMENTS

Receiving office receives several items from vendors Receiving office checks delivery note against orders and detects excess/deficient deliveries if any Discrepancy note (if any) sent to purchase office Receiving office sends items received note to inspection office Inspection office physically inspects items received and accepts good items.Bad items returned to vendor Items accepted note sent to stores office Discrepancy note sent to purchase office Stores office updates inventory based on items accepted note Stores office sends taken into stock report to the accounts office for payment to vendor Accounts office sends payments to vendors PICKING RELEVANT OBJECTS POTENTIAL OBJECTS ARE: 1. RECEIVING OFFICE 2. ITEMS 3. VENDORS 4. DELIVERY NOTE 5. ORDERS 6. DISCREPANCY NOTE 7. PURCHASE OFFICE 8. ITEMS RECEIVED NOTE 9.INSPECTION OFFICE 10. ACCEPTED ITEMS NOTE 11. STORES OFFICE 12. INVENTORY 13. GOODS TAKEN IN STOCK REPORT 14. ACCOUNTS OFFICE 15. PAYMENT VOUCHER OBJECTS NOT RELEVANT TO THIS APPLICATION Items Orders Inventory Goods taken in stock Payment voucher 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 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 OF DELIVERY NOTE AND ORDER TO VENDOR CLASS : DELIVERY NOTE

Attributes : Receiving clerk id Order no Vendor code Delivery date Item code Qty supplied Units

CLASS : ORDER TO VENDOR

Attributes : Order no Vendor code Item code Item name Qty ordered Units Price/Unit Order date Delivery period

RECEIVING OFFICE OBJECT Receiving office is selected as an object. Its attributes are attributes derived from delivery note and order to vendor

The class diagram is given below CLASS RECEIVING OFFICE

Is Part of DELIVERY NOTE

Is Part of ORDER TO VENDOR

RECEIVING OFFICE OBJECT

CLASS : RECEIVING OFFICE Attributes : Derived as shown above

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) OTHER RELEVANT OBJECTS CLASS : STORES OFFICE Attributes : Attributes of inspection office + qty in stock

Operations : Update inventory by adding no of items accepted to qty in stock Send advice to accounts object to make payment for qty accepted

CLASS : INSPECTION OFFICE Attributes : Derived attributes from delivery note + no of items accepted

Operations : Send information on accepted items to store and accounts Send discrepancy note( if any) to purchase office and vendor

CLASS : ACCOUNTS OFFICE Attributes : Derived from inspection office attributes + price/unit of item

Operations : Calculate amount to be paid Print cheque Request vendor object for vendor address Print vendor address label

LEARNING UNIT 3

Modelling systems with object OBJECT ORIENTED MODELLING-CRC METHOD

Steps in object oriented modelling 1) Find objects and their classes 2) Determine responsibilities of each object 3) State responsibilities, that is, actions. It can carry out on its own using its knowledge 4) Determine objects with whom they collaborate. 5) State contracts each object assigns to its collaborators 6) A collaborator either performs a requested action or gives information 7) Document each class – its responsibilities,its collaborators and their responsibilities 8) Develop an object interaction/collaboration graph

CRC TEAM IDEA CRC TEAM : user's representative System analyst(s) project coordinator RESPONSIBILITY : Identify objects Specify responsibility Specify collaborators and their responsibilities Prepare a card for each class called class index cards

CRC METHODOLOGY 1. Make CRC Card for each class CRC CARD CLASS NAME : SUPER CLASSES AND SUBCLASSES : SHORT DESCRIPTION OF CLASS :

Develop a graph to show interaction between classes CRC MODEL – EXAMPLE1 Class : APPLICATION Super class : None Sub class : None 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 to department(CONTD) : When it passes scrutiny else send reject to applicant CRC application MODEL – EXAMPLE 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’s in application:admitted,rejected or in waiting list depending o available seats Contract(s) and Collaborator(s): Send reply to applicationclass on admitted, rejected or wait list

COLLABORATION GRAPH Examine application CLASS DEPARTMENT

CLASS APPLICATION

Admit/reject/wait list

Application status

Applicant

COLLABORATION GRAPH FOR EXAMPLE2 : Receiving items ordered by a company

Delivery

Vendor

CLASS RECEIVING OFFICE

Inspect

CLASS INSPECTION OFFICE

Payment Update Inventory

Delivery copy Discrepancy note CLASS PURCHASE OFFICE Payment copy

CLASS ACCOUNTS OFFICE

Make payment

CLASS STORES OFFICE

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) 2. There are several standard books on object oriented modeling for those who want to study deeper. Some of these are: (i) I.Jacobson et.al “Object Oriented Software Engineering”, Pearson Education Asia, 1998 (ii) David Colemen et.al “Object Oriented Development”, Prentice Hall, Inc., N.J., WA,1999 (iii) J.Rumbaugh et.al “Object Oriented Design and Applications”, Benjamin Cumming, U.S.A., 1991

System Analysis and Design/ Object-Oriented System Modeling

Multiple Choice Questions

9.1 Computer systems are designed by a. simplifying requirements of system b. breaking of the system into smaller self-contained co-operating subsystems c. breaking up the systems into independent parts d. modular design 9.2 Functions and procedures are a. not useful in designing computer systems b. old fashioned and they are not useful c. useful in designing computer systems d. have side effects which require special care if they are used as subsystems 9.3 A subsystem of a complex system must specify a. what task it performs b. how it performs a task c. with which subsystems it co-operates d. how it co-operates with other systems 9.4

A subsystem of a complex system must a.

ii, iii

b.

ii, iv

c.

iii, iv

9.5 A subsystem of a complex system (i)should be reusable in other complex system (ii)must not be able to inherit the properties of other subsystems (iii)must have clearly specified responsibilities (iv)must know the stimuli to which it should respond a. i, ii, iii b. ii, iii, iv c. i, iii, iv d. i, ii, iv

V. Rajaraman/IISc. Bangalore

M9/V1/July 04/1

System Analysis and Design/ Object-Oriented System Modeling

9.6

Multiple Choice Questions

By polymorphism of a subsystem we mean a. it should be reusable b. it should have polymorphic data types c. it should accept generic commands and interpret appropriately d. it should morph polygons

9.7

The advantages of object-oriented modelling are a. i, ii b. i, iii c. ii, iii d. i, iv

9.8

Objects

are (i)tangible entities (ii)intangible entities (iii)transient entities (iv) uniquely identifiable

a. i, ii b. i, ii, iii c. i, ii, iii, iv d. i, ii, iv 9.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.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

V. Rajaraman/IISc. Bangalore

M9/V1/July 04/2

System Analysis and Design/ Object-Oriented System Modeling

c.

i, iii, iv

d.

i, ii, iii, iv

Multiple Choice Questions

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

V. Rajaraman/IISc. Bangalore

M9/V1/July 04/3

System Analysis and Design/ Object-Oriented System Modeling

Multiple Choice Questions

9.16 An update operation in an object instance a.

updates the class

b.

has no side effects

c.

deletes an instance

d.

alters values of attribute(s) of an object instance

9.17 In object-oriented design a.

operations and methods are identical

b.

methods specify algorithms whereas operations only state what is to be done

c.

methods do not change values of attributes

d.

methods and constructor are same

9.18 By abstraction in object-oriented modelling we mean picking a. only attributes appropriate to model an object b.

only operations

c.

both operation and attributes with operations appropriate to model an object

d.

the appropriate abstract data type

9.19 By encapsulation in object-oriented modelling we mean a. encapsulating data and programs b. hiding attributes of an object from users c. hiding operations on object from users d. hiding implementation details of methods from users of objects 9.20 Encapsulation in object-oriented modelling is useful as a. it allows improving methods of an object independent of other parts of system b. it hides implementation details of methods c. it allows easy designing d. encapsulates attributes and operations of object 9.21 Objects may be viewed as a. clients in a system b. servers in a system

V. Rajaraman/IISc. Bangalore

M9/V1/July 04/4

System Analysis and Design/ Object-Oriented System Modeling

Multiple Choice Questions

c. as both clients and servers in a system d. neither as clients nor as servers in a system 9.22 Inheritance in object-oriented system is used to a. create new classes from existing classes b. add new operations to existing operations c. add new attributes to existing attributes d. add new states to existing states 9.23 Inheritance in object-oriented modelling can be used to a. generalize classes b. specialize classes c. generalize and specialize classes d. create new classes 9.24 When a subclass is created using inheritance the resulting class a. may have only attributes of parent class b. may have only operations of parent class c. may have new operations only in addition to those in parent class d. may have new attributes and new operations in addition to those of the parent class 9.25 By polymorphism in object-oriented modelling we mean a. the ability to manipulate objects of different distinct classes b. the ability to manipulate objects of different distinct classes knowing only their common properties c. use of polymorphic operations d. use of similar operations to do similar things 9.26 A polymorphic operation a. has same name b. has same name but uses different methods depending on class c. uses different methods to perform on the same class d. uses polymorphic method 9.27 Given a word statement of a problem potential objects are identified by selecting

V. Rajaraman/IISc. Bangalore

M9/V1/July 04/5

System Analysis and Design/ Object-Oriented System Modeling

Multiple Choice Questions

a. verb phrases in the statement b. noun phrases in the statement c. adjectives in the statement d. adverbs in the statement 9.28 Given a word statement of problem potential operations appropriate for objects are identified by selecting a. verb phrases in the statement b. noun phrases in the statement c. adjectives in the statement d. adverbs in the statement 9.29

Objects selected to model a system (i)must be essential for functioning of the system (ii)must have all attributes which are invariant during operations of a system (iii)must have attributes relevant for performing services of object (iv) must be able to perform assigned services a. i, ii, iii b. ii, iii, iv c. i, iii, iv d. i, ii, iii, iv

9.30 An object is selected for modelling a system provided a. its attributes are invariant during operation of the system b. its attributes change during operation of the system c. it has numerous attributes d. it has no attributes relevant to the system 9.31 An object is considered an external entity in object-oriented modelling a. its attributes are invariant during operation of the system b. its attributes change during operation of the system c. it has numerous attributes d. it has no attributes relevant to the system

V. Rajaraman/IISc. Bangalore

M9/V1/July 04/6

System Analysis and Design/ Object-Oriented System Modeling

Multiple Choice Questions

9.32 Object-oriented system modelling using CRC method gives a. Java programs for the system b. C++ programs for the system c. Classes of the system, their responsibilities and collaborating classes d. Objective C programs for the system 9.33 The expansion of the acronym CRC is a. Collecting Responsibilities Classes b. Collaborating with Relevant Classes c. Class Responsibilities and Collaborators d. Creating Relevant Classes 9.34

In CRC based design a CRC team consists of (i) one or two user’s representatives (ii) several programmers (iii) project coordinators (iv) one or two system analysts

9.35

a.

i, ii

b.

i, iii

c.

i, iii, iv

d.

i, ii, iii, iv

A class index card contains besides class name (i) superclasses and subclasses (ii) short description of class (iii)collaborators (iv)private responsibilities of class (v)contract(s) with collaborators

9.36

a.

i, ii, iii

b.

i, iii, iv, v

c.

i, ii, iii, iv

d.

i, ii, iii, iv and v

The CRC modeling primarily requires (i)identifying classes and their responsibilities

V. Rajaraman/IISc. Bangalore

M9/V1/July 04/7

System Analysis and Design/ Object-Oriented System Modeling

(ii)identifying

collaborators

of

Multiple Choice Questions

each

class

and

their

responsibilities (iii)developing a collaboration graph a.

i, ii

b.

i, iii

c.

ii, iii

d.

i, ii, iii

V. Rajaraman/IISc. Bangalore

M9/V1/July 04/8

System Analysis and Design/ Object-Oriented System Modeling

Multiple Choice Questions

Key to Objective Questions 9.1

b

9.2

d

9.3

c

9.4

9.7

a

9.8

d

9.9

b

9.10 d

9.11 c

9.12 b

9.16 d

9.17 b

9.18 c

9.13 b

9.14 b

9.15

c

9.19 d

9.20 a

9.21

c

9.25 b 9.31 a

9.26 b

9.27

9.32 c

V. Rajaraman/IISc. Bangalore

b9.28 a

9.33 c

9.22 a 9.29 9.34 c

c

9.5

9.23 c

c

9.6

c

c 9.24 9.30

9.35

d

b d

9.36

d

M9/V1/July 04/9

MODULE 9

OBJECT-ORIENTED SYSTEM MODELLING

WORKED EXAMPLES

13.1What is object-oriented modelling? Object-oriented modelling is a methodology of analyzing requirements of a system with the aim of identifying subsystems with the following desirable properties: (a) Each subsystem should have clearly specified responsibility of performing a part of overall task. (b) Other parts of the subsystem should not have to know how a subsystem performs the task assigned to it, rather they should only know what task a subsystem does (c) Each subsystem should be self-contained and independent (d) Each subsystem should know what other subsystems do and how to send requests to them for assistance so that it can cooperate with them to get its own job done (e) Subsystem should hide from outside world the data it uses (f) The subsystem should be designed to be reusable 13.2 Why is object-oriented modelling used in practice? Object-oriented modelling is used in practice as it • Facilitates changing of system to improve functionality during the system life time • Facilitates reuse of code of each of the subsystems used to design the large system • Facilitates integrating subsystems into a large system • Facilitates design of distributed systems 13.3 When is objected-oriented modelling particularly useful? An object-oriented modelling is particularly useful in the following situations: • It is required to change an existing system by adding new functionality • While designing large system and it is found that it can be designed as a collection of existing reusable objects

13.4 Define an object. An object is an entity, which is uniquely identifiable and permanent relative to the life time cycle of an application. It may be tangible or intangible. Examples of tangible objects are bus, student etc. Examples of intangible objects are bank account, queue data structure etc. 13.5 What is the difference between a class and an object? A class can be termed as a group of objects having similar behavior and similar attributes. A class is a template or blueprint, which defines all the properties and attributes that an object belonging to it possess. An object is a particular instance of a class. Each object has values assigned to its attributes. 13.6What are subclasses and superclasses? Give examples of each of these Subclasses are classes which have some common attributes and operations inherited from parent class. The parent class is called superclass. There may be more than one superclass for a subclass. Though the operations in subclasses are same as superclasses but they may be interpreted in a different way. A subclass overrides the functionality of superclass. For example, if class furniture is a superclass then its subclasses are tables, chairs, cots etc. A vehicle is a superclass and its subclasses may be cycle, scooter, car, buses etc. 13.7 What do you understand by information hiding? Why is it resorted to in designing information systems? How is it achieved? Information hiding is the way of hiding the implementation details of an object from the outside world. Any changes in the way the operations are performed by an object is not visible to the client and vice-versa. An object can change the code used by it without affecting the functionality of client. It is achieved by specifying the operations which an object can perform and publicising them. 13.8 What do you mean by inheritance in object-oriented systems? Why is it useful? Give an example of inheritance. Inheritance is a technique by which the properties and attributes of a class are inherited by a subclass. With inheritance we can refine the subclasses by adding some new attributes and functionality. For Example, the Employee class shown below is the superclass and the classes Salesman and Accounts_Assistant are inherited classes.

Class name

Employee

Attributes

Emp_no Emp_name Address Date_of_joining

Operations

Calculate_salary() Calculate_incometax()

Salesman Emp_no Emp_name Address Date_of_joining Dept. Sell_product() Calculate_commsn()

class name

Accounts Assistant

Attributes

Emp_no Emp_name Address Date_of_joining Dept.

Operations

Accounts_of_purchased_ items() Generate_salary_bill()

13.9What do you understand by the term polymorphism in object-oriented system? Why is it useful? Give an example of polymorphism. By polymorphism we mean , the ability to manipulate objects of different distinct classes using only knowledge of their common property. For example: An operation reservation would be interpreted appropriately by a class describing a train using rules relevant to the railway. The same operation reservation would be interpreted differently by another class representing an airline.

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: Attributes:

Subscription Accounts Magazine_id Sub_id Sub_address Subcn_exp_date Subscn_amount

Operations: Send_first_reminder(sub_id) Send_second_reminder(sub_id) Delete_subscriber(sub_id) Update_subscriber_account(sub_id)

Magazine Publishing Company Class Class: Magazine Publishing Company Superclass: None Subclass: None Collaborators: Subscription Accounts Description: The class represents the company, which prints many magazines monthly and sends magazine with magazine_id to the subscription accounts class Private responsibilities: Request_subscn_accounts processing Delete the subscriber’s name from acknowledgement Contract(s) with collaborator(s): Dispatch the receipt after receiving the money

the

mailing

list

and

send

Subscription Accounts Class Class: Subscription Accounts Superclass: None Subclass: None Collaborators: Magazine Publishing Company Description: This class processes subscription accounts Private responsibilities: Send Subscription, reminders, update subscribers Contractor(s) and Collaborators: Send confirmation along with money for subscription Send acknowledgement after receiving magazine

Class Magazine_publishing company

Send the magazine and mag_id

Class Magazine_subscn_acc ounts

Send ack Send cheque

Request_Subscn Subscriber

Collaboration graph

13.12Give brief requirements specification for a bus ticket reservation system. Model it using objects. For making reservation for a bus a passenger has to fill-up a form, which has field specifications like name, address, date of journey, destination etc. After filling up the form the ticket is issued from the counter after checking for the availability of the seats. A passenger has an option to cancel his ticket. The two classes taken here are ticket class and bus class. The ticket class sends a message to bus class regarding the availability of seats and gets the confirmation from the bus class.

Class:

Ticket

Attributes:

Bus_No Ticket_No Date_of_issue Date_of_journey Starting_Point Destination Passenger_Name Fare Departure_Time Checkin_Time

Operation:

Issue_ticket() Cancel_ticket() Query()

Class:

Bus

Attributes:

Operation:

Bus_No No_of_Seats Availability Route_No 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

Get the status of the bus Passenger

Bus 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.1

What is object oriented modelling?

9.2

Why is object oriented modelling used in practice?

9.3

When is object oriented modelling particularly useful

9.4

Define an object

9.5

What is the difference between a class and an object

9.6

What are subclasses and superclasses. Give examples of each of these.

9.7

What do you understand by information hiding? Why is it resorted to in designing information systems? How is it achieved?

9.8

What do you mean by inheritance in object oriented systems? Why is it useful? Give an example of inheritance.

9.9

What do you understand by the term polymorphism in object oriented system? Why is it useful? Give an example of polymorphism.

9.10

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".

1

V. Rajaraman/IISc. Bangalore

M9/V1/July 04/1

System Analysis and Design /Object Oriented System Modeling

9.11

Question Bank

Pick objects and model the following requirements statement using objects. "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 the subscriber informed".

9.12

Give a brief requirement specification for a bus ticket reservation system. Model it using objects.

2

V. Rajaraman/IISc. Bangalore

M9/V1/July 04/2

System Analysis and Design /Object Oriented System Modeling

Pointers

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.180199) 2. There are several standard books on object oriented modeling for those who want to dwell deeper. Some of these are: (i)

I.Jacobson et.al “Object Oriented Software Engineering”, Pearson Education Asia, 1998

(ii)

David Colemen et.al “Object Oriented Development”, Prentice Hall, Inc., N.J., WA,1999

(iii)

J.Rumbaugh et.al “Object Oriented Design and Applications”, Benjamin Cumming, U.S.A., 1991.

V. Rajaraman/IISc. Bangalore

M9/V1/July 04/1

SUMMARY of Module 9 1.

Complex systems are designed by breaking down such systems into a number of cooperating subsystems which are reasonably independent and self-contained.

2.

One method of design is to use what are known as objects as subsystems.

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.

4.

Objects also promote their reuse in many systems.

5.

An object is an entity which is uniquely identifiable and is permanent relative to 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.

6.

Objects collaborate by responding to requests from other objects to carry out specified operations.

7.

Objects having similar meaning and purpose may be grouped together to form a class. A class may be considered as a template for objects of a particular type.

8.

Special properties of objects are encapsulation, inheritance and polymorphism.

9.

Encapsulation is the hiding of implementation details of an object from the clients who use the services provided by an object.

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 operations and attributes of class B.

11.

Using inheritance a hierarchy of classes may be constructed where children 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.

Polymorphism is the ability to manipulate objects of different distinct classes using only knowledge of their common property. 13.

To model an information system using objects the requirements specification is examined and all nouns in it are picked as potential objects.

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 objects with whom they collaborate

16.

A documents is prepared for each class giving its own responsibilities, its collaborators and their responsibilities.

17.

A graph showing pictorially the classes and their mutual collaboration completes object oriented modeling.

2

Question Bank – Module 9 13.1

What is object oriented modelling?

13.2

Why is object oriented modelling used in practice?

13.3

When is object oriented modelling particularly useful

13.4

Define an object

13.5

What is the difference between a class and an object

13.6

What are subclasses and superclasses. Give examples of each of these.

13.7

What do you understand by information hiding?

Why is it resorted to in

designing information systems? How is it achieved? 13.8

What do you mean by inheritance in object oriented systems? Why is it useful? Give an example of inheritance.

13.9

What do you understand by the term polymorphism in object oriented system? Why is it useful? Give an example of polymorphism.

13.1

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".

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 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 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 Design of Information Systems”, 2nd Edition, V.Rajaraman, Prentice Hall of India, New Delhi, 2003. Chapter 13, Object Oriented System Modelling (pp.180199) 2. There are several standard books on object oriented modeling for those who want to dwell deeper. Some of these are: (i)

I.Jacobson et.al “Object Oriented Software Engineering”, Pearson Education Asia, 1998

(ii)

David Colemen et.al “Object Oriented Development”, Prentice Hall, Inc., N.J., WA,1999

(iii)

J.Rumbaugh et.al “Object Oriented Design and Applications”, Benjamin Cumming, U.S.A., 1991

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 10.1.1 (i) (ii) (iii) (iv)

A line printer prints an entire line at a time is a non-impact printer allows multiple copies to be taken at a time prints one character at a time (a) i and ii (b) i and iii (c) iii and iv (d) ii and iii

10.1.2 (i) (ii) (iii) (iv)

A dot matrix printer prints an entire line at time is a non-impact printer allows multiple copies to be taken at a time prints one character at a time (a) i and ii (b) i and iii (c) iii and iv (d) ii and iii

10.1.3 (i) (ii) (iii) (iv)

An inkjet printer prints an entire line at time is a non-impact printer allows multiple copies to be taken at a time prints one character at a time (a) i and ii (b) i and iii (c) iii and iv (d) ii and iii

10.1.4 (i) (ii) (iii) (iv)

A laser printer prints an entire line at a time is a non-impact printer allows multiple copies to be taken at a time prints one character at a time (a) i and ii (b) i and iii (c) iii and iv (d) ii and iii

10.1.5 A laser printer (i) gives a better quality printout compared to inkjet printer (ii) is less expensive than an inkjet printer (iii) is more expensive than a dot matrix printer (iv) gives a better quality printout compared to dot matrix printer (a) i and ii (b) ii and iii (c) i, ii, iv (d) i, iii, iv 10.1.6 An audio output unit (a) can speak out small range of digits and specified words (b) is not used in information system (c) is very expensive and is thus not used (d) is normally used to give only background music

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 10.2.2 Outputs needed by top-managers are (a) summary reports with good grouping (b) exception reports (c) detailed reports (d) expected reports 10.2.3 Outputs needed by middle level managers are (a) summary reports with good grouping (b) exception reports (c) detailed reports (d) expected reports

10.2.4 Outputs needed by operational managers are (a) summary reports with good grouping (b) exception reports (c) detailed reports (d) expected reports

LEARNING UNIT 3 10.3.1 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.3.2 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.3.3 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.3.4 Control 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.3.5 Control footings are printed because (a) it is required in documentation (b) it is suggested by management (c) it summarizes information in logically grouped items (d) it is necessary for error detection

10.3.6 Good report allows one to (i) read it from left to right and top to bottom (ii) read it from any point (iii) find out easily the beginning and end of the report (iv) printed it in one page (a) i and ii (b) i and iii (c) ii and iii (d) iii and iv 10.3.7 Print chart is (a) a printed chart (b) one which is filled in by an analyst while formatting a report (c) prepared by users (d) printed by computer

LEARNING UNIT 4 10.4.1 Screens normally have (a) 70 columns and 24 lines (b) 80 columns and 20 lines (c) 80 columns and 24 lines (d) 72 columns and 22 lines 10.4.2 Designing screens uses principles (a) which are unique (b) similar to those used for printed reports (c) different from those used for printed reports (d) which are well specified 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 10.4.4 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 shown (d) trends as a function of time is to be illustrated 10.4.5 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.4.6 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

KEY TO OBJECTIVE QUESTIONS

10.1.1 b

10.1.2 c

10.1.3 a

10.1.4 a

10.1.5 d 10.1.6 a

10.2.1 d

10.2.2 a

10.2.3 b

10.2.4 c

10.3.1 b 10.3.2 d

10.3.3 b 10.4.2 b

10.3.4 c 10.4.3 a

10.3.5 c 10.3.6 b 10.4.4 b 10.4.5 c

10.3.7 b 10.4.1 c 10.4.6 d

System Analysis and Design / Object Oriented Systems Modeling

Motivation

Motivation ™ Information Systems are becoming very complex. ™ We thus need methods to design complex systems. ™ Main method is to break up a large system into a number of cooperation components and designing each component or subsystem separately. ™ Question: How do we do this? ™ The main purpose of this module is to answer this question.

V. Rajaraman/IISc. Bangalore

//V1/July 04/1

MODULE 10

DESIGNING OUTPUTS Contents 10.1 Output Devices 10.2 Objectives of output design 10.3 Design of output reports 10.4 Design of screens and graphics

Systems Analysis And Design

©

V. Rajaraman

LEARNING GOALS •Review characteristics of devices used to output information from computers •Objectives of output design •Design of reports •design of screens •Role of graphics in output design

Systems Analysis And Design

© V. Rajaraman

1 of 29

MOTIVATION •

Presenting results of processing in an attractive and easily understood form is important



Management requires these reports to initiate actions and thus the significance of outputs must be easily perceived

• Must be aware of new output devices being introduced to use them appropriately •

Must 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 which uses the world wide web. Systems Analysis And Design

© V. Rajaraman

2 of 29

OUTPUT DEVICES •HARD COPY DEVICES - PRINTERS •SOFT DEVICES - VIDEO DISPLAY DEVICES TEXT AUDIO - SPEECH SYNTHESISER

•MULTIMEDIA GRAPHICS VIDEO

10.1.1

Systems Analysis And Design

© V. Rajaraman

3 of 29

HARD COPY DEVICES ƒ Printers used when - there is large volume of data - several copies normally needed ƒ Types of printers Line Printers

• Impact

• Non-Impact

10.1.2

Dot matrix character printers

Laser printer Inkjet printer

Systems Analysis And Design

© V. Rajaraman

4 of 29

PRINTER CHARACTERSTICS LINE PRINTERS -LARGE VOLUME OUTPUT -FAST - ENTIRE LINE PRINTED -MULTIPLE COPIES -HIGH CAPITAL COST BUT LOW RUNNING COST

DOT MATRIX PRINTERS - SLOW - INEXPENSIVE ( PER COPY COST) - MULTIPLE COPIES WITH CARBON PAPER - POOR GRAPHICS 10.1.3

Systems Analysis And Design

© V. Rajaraman

5 of 29

PRINTER CHARACTERSTICS 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 10.1.4

Systems Analysis And Design

© V. Rajaraman

6 of 29

SOFT COPY MEDIA • Used to distribute manuals, massive reports, user documents, software FLOPPY DISK CDROM Alternatives DVD ROM FLASH MEMORY (SEMI CONDUCTOR)

10.1.5

Systems Analysis And Design

© V. Rajaraman

7 of 29

SOFT COPY MEDIA (CONTD) • FLOPPY DISK - Inexpensive - Easy to mail/transport - Low capacity –1.4MB - Read/write - Contact recording – number of read/writes limited

10.1.6

Systems Analysis And Design

© V. Rajaraman

8 of 29

SOFT COPY MEDIA (CONTD) • 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 10.1.7

Systems Analysis And Design

© V. Rajaraman

9 of 29

SOFT COPY MEDIA (CONTD) • 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

10.1.8

Systems Analysis And Design

© V. Rajaraman

10 of 29

SPEECH OUTPUT DEVICES • Audio such as beeps used for alerting users • Device used is a speaker - Very small and inexpensive for beeps - Inexpensive for speech quality • Useful when eyes are busy,for example, while driving,pilots etc. • Pre-recorded speech is output in such cases • Text-to-speech also useful for giving instructions where manuals cannot be read.

10.1.9

Systems Analysis And Design

© V. Rajaraman

11 of 29

OBJECTIVES OF OUTPUT DESIGN 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

10.2.1

Systems Analysis And Design

© V. Rajaraman

12 of 29

NATURE OF OUTPUT REPORTS

•TOP MANAGEMENT - Summary highlighting important results

Graphical Output – Pie charts - Bar charts -Maps Needed for strategic management

10.2.2

Systems Analysis And Design

© V. Rajaraman

13 of 29

NATURE OF OUTPUT REPORTS

•MIDDLE MANAGEMENT - Exception reports

- Reduced output volume - Needed for tactical management

10.2.3

Systems Analysis And Design

© V. Rajaraman

14 of 29

NATURE OF OUTPUT REPORTS

• OPERATIONAL MANAGEMENT - DETAILS NEEDED For example -Payroll -Grade sheets -Cheques

10.2.4

Systems Analysis And Design

© V. Rajaraman

15 of 29

PERIODICITY OF OUTPUT REPORTS (CONTD) • 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 10.2.5

Systems Analysis And Design

© V. Rajaraman

16 of 29

PERIODICITY OF OUTPUT REPORTS (CONTD) • OPERATIONAL MANAGEMENT -Regular periods -Periods depend on application -Example : Payroll monthly

10.2.6

Systems Analysis And Design

© V. Rajaraman

17 of 29

DESIGNING OF OPERATIONAL OUTPUT REPORTS 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

10.3.1

Systems Analysis And Design

© V. Rajaraman

18 of 29

DESIGNING OF OPERATIONAL OUTPUT REPORTS (Contd) 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

10.3.2

Systems Analysis And Design

© V. Rajaraman

20 of 29

EXAMPLE OF TERMINOLOGY Report heading Page heading Control heading Detail lines

INDIAN INSTITUTE OF SCIENCE - ACADEMIC ROLL LIST ROLL LIST OF STUDENTS SEM 1/2000-2001

LIST OF STUDENTS IN AEROSPACE ENGG DEPT Roll No 97101115 97101125 97101135 .

Name A.B.BHATTACHARYA A.K.CHANDRA R.K.GUPTA

97201198

P.R.RAO

..

Control footing

TOTAL NO OF STUDENTS Roll No 97102105 97102121 .

Name A.C.ARVIND L.S.BHATIA

97102131

P.R.ZAVERI

..

Control footing Final control footing Report footing 10.3.3

TOTAL NO OF STUDENTS IN CHEMICAL ENGG.DEPT = 63 TOTAL NO OF STUDENTS IN SEM 1/200-2001 = 852 END OF IISc BANGALORE ROLL LIST FOR SEM 1/2000-2001

Systems Analysis And Design

© V. Rajaraman

19 of 29

PRINT CHART

• Print chart used by analyst to develop paper report format • Languages available to describe format of report and a report generation program creates report

10.3.4

Systems Analysis And Design

© V. Rajaraman

21 of 29

GENERAL PRINCIPLES OF DESIGNING REPORTS •Should be able to read left to right, top to bottom •Easy to find important items such as keys •All pages numbered and has heading. Report date essential •All columns labelled •Keep essential details only •Proper use of control footings •Page and report footing useful •Space for end of report signature if needed

10.3.5

Systems Analysis And Design

© V. Rajaraman

22 of 29

DESIGN OF SCREENS •Screen display convenient for interactive use •Screen size normally smaller than printer - usually 80 cols per line and 24 lines per screen •Principle of layout similar –Primarily ease of reading •Provision 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

10.4.1

Systems Analysis And Design

© V. Rajaraman

23 of 29

EXAMPLES OF SCREENS SCREEN FOR GENERAL STUDENT INFORMATION INDIAN INSTITUTE OF SCIENCE STUDENT INFORMATION SYSTEM ROLL NO 9501325 9602415 9602325 9701425 9702112

NAME A.B.BHATTACHARYA A.P.DAS P.GANAPATHY G.HARI H.JAI SINGH

DETAILS

DEPT AEROSPACE CSA EE MET CIVIL

CONTINUE

YEAR ME 1 Ph.D M.Sc ME II Ph.D

EXIT

CLICK BUTTON AS REQUIRED 10.4.2

Systems Analysis And Design

© V. Rajaraman

24 of 29

EXAMPLES OF SCREENS SCREEN FOR DETAILED STUDENT INFORMATION INDIAN INSTITUTE OF SCIENCE STUDENT INFORMATION SYSTEM 05-05-2000 ROLL NO NAME YEAR GUARDIAN ADDRESS

9701425 G.HARI ME II P.GANESHAN 41 OLIVER STREET MYLAPORE MADRAS 600 004 DETAILS

10.4.3

Systems Analysis And Design

RETURN

© V. Rajaraman

25 of 29

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

10.4.4

Systems Analysis And Design

© V. Rajaraman

26 of 29

Total sales of textiles (in lakhs)

USE OF GRAPH

140 120 100 80 60 40 20 0 0

85

86

87

88

89

90

Year 10.4.5

Systems Analysis And Design

© V. Rajaraman

27 of 29

BAR CHART

No of employees

350 300 250 200 150 100 50 0 0

20

25

30

35

40

45

50

55

60

Age 10.4.6

Systems Analysis And Design

© V. Rajaraman

28 of 29

PIE CHART Dividends 15%

Equipment 10% Tax 10%

R& D 5% Misc 15%

Interest payment 15%

Raw material 20% Salaries 20%

10.4.7

Systems Analysis And Design

© V. Rajaraman

29 of 29

PIE CHART Dividends 15%

Equipment 10% Tax 10%

R& D 5% Misc 15%

Interest payment 15%

Raw material 20% Salaries 20% Systems Analysis And Design

© V. Rajaraman

16 of 25 of module3

MODULE 10 DESIGNING OUTPUTS

Contents

1. MOTIVATION AND LEARNING GOALS

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 At the end of this module you will know •Review characteristics of devices used to output information from computers •Objectives of output design •Design of reports •design of screens •Role of graphics in output design

LEARNING UNIT 1 Output Devices

1) HARD COPY DEVICES – PRINTERS 2) SOFT DEVICES - VIDEO DISPLAY DEVICES

TEXT

AUDIO - SPEECH SYNTHESISER 3) MULTIMEDIA 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 DOT MATRIX PRINTERS - 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

SOFT COPY MEDIA Used to distribute manuals, massive reports, user documents, etc FLOPPY DISK CDROM Alternatives DVD ROM

FLASH MEMORY (SEMI CONDUCTOR)

• FLOPPY DISK - 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 SPEECH OUTPUT DEVICES • Audio such as beeps used for alerting users • Device used is a speaker - Very small and inexpensive for beeps - Inexpensive for poor speech quality • Useful when eyes are busy, for example, while driving, pilots etc. • Pre-recorded speech is output in such cases • Text-to-speech also useful for giving instructions where manuals cannot be read. LEARNING UNIT 2

Objectives of output design 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 NATURE OF OUTPUT REPORTS •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

PERIODICITY OF OUTPUT REPORTS • 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

Design of output reports

DESIGNING OF OPERATIONAL OUTPUT REPORTS 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

Report heading

INDIAN INSTITUTE OF SCIENCE - ACADEMIC ROLL LIST

Page heading

Roll No 97101115

Name A.B.BHATTACHARYA

ROLL LIST OF STUDENTS SEM 1/2000-2001 Control heading

Control footing

LIST OF STUDENTS IN AEROSPACE ENGG DEPT

TOTAL NO OF STUDENTS IN AEROSPACE ENG DEPT=68 LIST OF STUDENTS IN CHEM ENGG DEPT Roll No

Control footing Final control footing Report footing

Name

97102105 A.C.ARVIND 97102121 L.S.BHATIA . . 97102131 P.R.ZAVERI TOTAL NO OF STUDENTS IN CHEMICAL ENGG.DEPT = 63 TOTAL NO OF STUDENTS IN SEM 1/200-2001 = 852 END OF IISc BANGALORE ROLL LIST FOR SEM 1/2000-2001

PRINT CHART Analyst to develop paper report format uses print chart. Languages are available to describe format of report and a report generation program creates report

GENERAL PRINCIPLES OF DESIGNING REPORTS 1. 2. 3. 4. 5. 6. 7. 8.

Should be able to read from left to right, top to bottom Easy to find important items such as keys All pages numbered and has heading. Report date is essential All columns should be labelled Keep essential details only Proper use of control footings Page and report footing useful Space for end of report signature if needed

LEARNING UNIT 4

Design of screens and graphics

DESIGN OF SCREENS 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 SCREEN FOR GENERAL STUDENT INFORMATION

INDIAN INSTITUTE OF SCIENCE STUDENT INFORMATION SYSTEM ROLL NO 9501325 9602415 9602325 9701425 9702112

NAME A.B.BHATTACHARYA A.P.DAS P.GANAPATHY G.HARI H.JAI SINGH

DETAILS

DEPT AEROSPACE CSA EE MET CIVIL

CONTINUE

YEAR ME 1 Ph.D M.Sc ME II Ph.D

EXIT

CLICK BUTTON AS REQUIRED

SCREEN FOR DETAILED STUDENT INFORMATION

INDIAN INSTITUTE OF SCIENCE STUDENT INFORMATION SYSTEM ROLL NO NAME YEAR GUARDIAN ADDRESS DETAILS

BUISNESS GRAPHICS

9701425 G.HARI ME II P.GANESHAN 41 OLIVER STREET MYLAPORE MADRAS 600 004RETURN

05-05-2000

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

Year

BAR CHART

55

60

350 300 250 200 150 100 50 0 0

20

25

30

35

40

45

50

Age

PIE CHART Dividends 15%

Equipment 10%

R& D 5%

Tax 10%

Misc 15%

Interest payment 15%

Raw material 20% Salaries 20%

55

60

References

1. Most of the material is taken from Chapter 14 of the text book “Analysis and Design of Information Systems” by V.Rajaraman, 2nd Edition, Prentice Hall of India, New Delhi. 2. There is a good coverage of this type in Kendall and Kendall “System Analysis and Design”, Pearson Education Asia, 2003, Chapter 15, pp.478-496. 3. J.A.Hoffer, J.F.George, J.S.Valachich, “Modern Systems Analysis and Design”, 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 prenticehall.com/hoffer for multiple choice questions etc.

System Analysis and Design/ Designing Outputs

Multiple Choice Questions

10.1 A line printer (i) prints an entire line at a time (ii) is a non-impact printer (iii) allows multiple copies to be taken at a time (iv) prints one character at a time a. i and ii b. i and iii c. iii and iv d. ii and iii 10.2

A dot matrix printer (i) prints an entire line at time (ii) is a non-impact printer (iii) allows multiple copies to be taken at a time (iv) prints one character at a time a. i and ii b. i and iii c. iii and iv d. ii and iii

10.3

An inkjet printer (i) prints an entire line at time (ii) is a non-impact printer (iii) allows multiple copies to be taken at a time (iv) prints one character at a time a. i and ii b. i and iii c. iii and iv d. ii and iii

10.4

A laser printer (i)prints an entire line at a time (ii)is a non-impact printer (iii)allows multiple copies to be taken at a time

V. Rajaraman/IISc. Bangalore

M10/V1/July 04/1

System Analysis and Design/ Designing Outputs

Multiple Choice Questions

(iv) prints one character at a time a. i and ii b. i and iii c. iii and iv d. ii and iii 10.5

A laser printer (i)gives a better quality printout compared to inkjet printer (ii)is less expensive than an inkjet printer (iii)is more expensive than a dot matrix printer (iv)gives a better quality printout compared to dot matrix printer a. i and ii b. ii and iii c. i, ii, iv d. i, iii, iv

10.6

An audio output unit a. can speak out small range of digits and specified words b. is not used in information system c. is very expensive and is thus not used d. is normally used to give only background music

10.7

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

10.8

Outputs needed by top-managers are a. summary reports with good grouping

V. Rajaraman/IISc. Bangalore

M10/V1/July 04/2

System Analysis and Design/ Designing Outputs

Multiple Choice Questions

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

V. Rajaraman/IISc. Bangalore

M10/V1/July 04/3

System Analysis and Design/ Designing Outputs

Multiple Choice Questions

c. the labels printed at the end of each control group d. the labels printed at the end of a report 10.15 Control footings are printed because a. it is required in documentation b. it is suggested by management c.

it summarizes information in logically grouped items

d. it is necessary for error detection 10.16 Good report allows one to (i)read it from left to right and top to bottom (ii)read it from any point (iii)find out easily the beginning and end of the report (iv) printed it in one page a. i and ii b. i and iii c. ii and iii d. iii and iv 10.17 Print chart is a. a printed chart b. one which is filled in by an analyst while formatting a report c. prepared by users d. printed by computer 10.18 Screens normally have a. 70 columns and 24 lines b. 80 columns and 20 lines c. 80 columns and 24 lines d. 72 columns and 22 lines 10.19 Designing screens uses principles a. which are unique b. similar to those used for printed reports c. different from those used for printed reports d. which are well specified

V. Rajaraman/IISc. Bangalore

M10/V1/July 04/4

System Analysis and Design/ Designing Outputs

Multiple Choice Questions

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

V. Rajaraman/IISc. Bangalore

M10/V1/July 04/5

System Analysis and Design/ Designing Outputs

Multiple Choice Questions

Key to Objective Questions 10.1 b

10.2 c

10.3 a

10.4 a

10.5 d

10.6 a

10.7 d

10.8 a

10.9 b

10.10 c

10.11 b

10.12 d

10.13 b

10.14 c

10.15 c

10.16 b

10.17 b

10.18 c

10.19 b

10.20 a

10.21 b

V. Rajaraman/IISc. Bangalore

10.22 c

10.23 d

M10/V1/July 04/6

MODULE 10

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.

V. Rajaraman/IISc. Bangalore

M10/V1/July 04/1

System Analysis and Design/ Designing Outputs

Pointers

References 1. Most of the material is taken from Chapter 14 of the text book “Analysis and Design of Information Systems” by V.Rajaraman, 2nd Edition, Prentice Hall of India, New Delhi. 2. There is a good coverage of this type in Kendall and Kendall “System Analysis and Design”, Pearson Education Asia, 2003, Chapter 15, pp.478-496. 3. J.A.Hoffer, J.F.George, J.S.Valachich, “Modern Systems Analysis and Design”, 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 prenticehall.com/hoffer for multiple choice questions etc.

V. Rajaraman/IISc. Bangalore

M10/V1/July 04/1

SUMMARY of Module 10 1.

The most commonly used output devices are printers, video display terminals and audio output devices.

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 taken using carbon paper.

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 laser printers can display graphics output.

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 interactive and a user has to be instructed how to get appropriate information.

6.

Audio outputs are becoming popular with the advent of inexpensive speech synthesizers. Currently audio output is used in enquiry systems to answer simple queries.

7.

Auido outputs are essential when eyes are otherwise busy.

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 information for strategic management.

1

10 Reports for middle management must not contain details. Exceptions should be .

printed or displayed to assist in tactical management.

11 Routine outputs such as payslips, address labels, etc., are massive and periodic and are printed on a line printer or character printer depending on the volume to be 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 the report printed at the top of the report. 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 the print chart. 14 Report generator systems are available in languages such as COBOL. These are useful to convert report specifications to printed reports. 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 be used wherever they are appropriate. 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

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: (i)

Strategic management

(ii)

Tactical management

iii.

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? 3

10.14

Pick the appropriate graphics presentation 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 regions of a country.

(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.

(v) 10.15

Engineering colleges established in different parts of a country.

When is colour presentation of graphics useful? Give examples.

4

REFERENCES 1. Most of the material is taken from Chapter 14 of the text book “Analysis and Design of Information Systems” by V.Rajaraman, 2nd Edition, Prentice Hall of India, New Delhi. 2. There is a good coverage of this type in Kendall and Kendall “System Analysis and Design”, Pearson Education Asia, 2003, Chapter 15, pp.478-496. 3. J.A.Hoffer, J.F.George, J.S.Valachich, “Modern Systems Analysis and Design”, 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 prenticehall.com/hoffer for multiple choice questions etc.

5

MODULE 11

DOCUMENTS ON WEB 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 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 11.1.2 The facilities available in the internet are (i) electronic mail (ii) remote login (iii) file transfer (iv) word processing (a) i, ii (b) i, ii, iii (c) i, ii, iv (d) ii, iii and iv 11.1.3 Internet requires (a) an international agreement to connect computers (b) a local area network (c) a commonly agreed set of rules to communicate between computers (d) a World Wide Web 11.1.4 Each computer connected to the internet must (a) be an IBM PC (b) have a unique IP address (c) be internet compatible (d) have a modem connection

11.1.5 IP address is currently (a) 4 bytes long (b) available in plenty (c) 6 bytes long (d) not assigned as it is all used up 11.1.6 IP addresses are converted to (a) a binary string (b) alphanumeric string (c) a hierarchy of domain names (d) a hexadecimal string 11.1.7 Internet addresses must always have atleast (i) a country name or organization type (ii) internet service provider’s name (iii) name of organization (iv) name of individual (v) type of organization (a) i, ii, iii (b) ii, iii, iv (c) i, iii (d) ii, iii, iv, v 11.1.8 Internet uses (a) Packet switching (b) Circuit switching (c) Telephone switching (d) Telex switching 11.1.9 Internet data is broken up as (a) fixed length packets (b) variable length packets (c) not packetized (d) 64 bytes packets 11.1.10

Internet packet data structure consists of (i) source address (ii) destination address (iii) serial number of packets (iv) message bytes (v) control bits for error checking (vi) path identification bits (a) i, ii, iii (b) i, ii, iii, iv (c) i, ii, iii, iv, v (d) i, ii, iii, iv, v, vi

11.1.11 The packets of an internet message (a) take a predetermined path (b) take a path based on packet priority (c) go along different paths based on path availability (d) take the shortest path from source to destination 11.1.12 The time taken by internet packets (a) can be predetermined before transmission (b) are same for all packets (c) may be different for different packets (d) is irrelevant for audio packets 11.1.13 By an intranet we mean (a) a LAN of an organization (b) a Wide Area Network connecting all branches of an organization (c) a corporate computer network (d) a network connecting all computers of an organization and using the internet protocol 11.1.14 By an extranet we mean (a) an extra fast computer network (b) the intranets of two co-operating organizations interconnected via a secure leased line (c) an extra network used by an organization for higher reliability (d) an extra connection to internet provided to co-operating organizations

11.1.15 World Wide Web (a) is another name for internet (b) world wide connection for computers (c) a collection of linked information residing on computers connected by the internet (d) a collection of world wide information 11.1.16 Among services available on the World Wide Web are (i) Encryption (ii) HTTP (iii) HTML (iv) Firewalls (a) i and ii (b) ii and iii (c)iii and iv (d) i and iv

11.1.17 A world wide web contains web pages (a) residing in many computers (b) created using HTML (c) with links to other web pages (d) residing in many computers linked together using HTML 11.1.18 A web page is located using a (a) Universal Record Linking (b) Uniform Resource Locator (c) Universal Record Locator (d) Uniformly Reachable Links 11.1.19 A URL specifies the following: (i) protocol used (ii) domain name of server hosting web page (iii) name of folder with required information (iv) name of document formatted using HTML (v) the name of ISP (a) i, ii, iii, iv (b) ii, iii, iv, v (c) i, iii, iv (d) i, ii, iii, v 11.1.20 A search engine is a program to search (a) for information (b) web pages (c) web pages for specified index terms (d) web pages for information using specified search terms ‘

LEARNING UNIT 2 11.2.1 HTML stands for (a) Hyper Text Making Links (b) Hyper Text Markup Language (c) Higher Textual Marking of Links (d) Hyper Text Mixer of Links 11.2.2 HTML is similar to a (a) word processing language (b) screen editor (c) scripting language (d) search engine

11.2.3 Desirable properties of a website are (i) a meaningful address (ii) Help and search facilities (iii) Links to related sites (iv) Features to allow users to give feedback (v) Hosting on a mainframe (a) i, ii, iii (b) i, ii, iii, iv (c) i, ii, iii, iv, v (d) i, ii, iii, v

11.2.4 HTML uses (a) (b) (c) (d)

pre-specified tags user defined tags tags only for linking fixed tags defined by the language

11.2.5 HTML tags define (a) (b) (c) (d)

The data types of elements of document Presentation of specified elements of a document The contents of the document The structure of the document

11.2.6 The tag used in HTML to link it with other URL’s is: (a) (b) (c) (d) 11.2.7 The tags used for specifying fonts in HTML are (i) (ii) (iii) (iv)



(a) (i) and (ii)

(b) (i) and (iii)

(c) (ii) and (iv)

(d) (i),(ii) and (iii)

11.2.8 It is possible to display pictures (i.e, images) in HTML specification by using the tag. (a) (b) (c) (d)



11.2.9 SGML stands for (a) (b) (c) (d)

Standard Generalized Markup Language Structured General Markup Language Standard Graphics Mapping Language Standard General Markup Links

11.2.10 HTML and XML are markup languages (a) (b) (c) (d)

Specially development for the web Are based on SGML Are versions of SGML Independent of SGML

11.2.11 XML stands for (a) (b) (c) (d)

Extra Markup Language Excellent Markup Links Extended Markup Language Extended Marking Links

11.2.12 XML uses (a) (b) (c) (d)

user define tags pre-defined tags both predefined and user-defined tags Extended tags used in HTML and makes them powerful

11.2.13 In order to interpret XML documents one should (a) (b) (c) (d)

Use standardized tags Have a document type definition which defines the tags Define the tags separately Specify tag filename

11.2.14 The advantages of XML over HTML are (i) (ii) (iii) (iv)

It allows processing of data stored in web-pages It uses meaningful tags which aids in understanding the nature of a document Is simpler than HTML It separates presentation and structure of document

(a) (i),(ii) and (iii)

(b) (i),(ii) and(iv)

(c ) (ii),(iii) and (iv)

(d) (i),(iii) and (iv)

11.2.15 XSL definition is used along with XML definition to specify (a) (b) (c) (d)

The data types of the contents of XML document The presentation of XML document The links with other documents The structure of XML document

11.2.16 XLL definition is used along with XML to specify (a) (b) (c) (d)

The data types of the contents of XML document The presentation of XML document The links with other documents The structure of XML document

11.2.17 DTD definition is used along with XML to specify (a) The data types of the contents of XML document (b) The presentation of XML document (c) The links with other documents (d) The structure of XML document

KEY TO OBJECTIVE QUESTIONS

11.1.1 11.1.7 11.1.13 11.1.19 11.2.5 11.2.11 11.2.17

d c d a b c a

11.1.2 11.1.8 11.1.14 11.1.20 11.2.6 11.2.12

b a b d a a

11.1.3 11.1.9 11.1.15 11.2.1 11.2.7 11.2.13

c b c b a b

11.1.4 11.1.10 11.1.16 11.2.2 11.2.8 11.2.14

b 11.1.5 a 11.1.6 c c 11.1.11 c 11.1.12 c b 11.1.17 d 11.1.18 b a 11.2.3 b 11.2.4 d c 11.2.9 a 11.2.10 b b 11.2.15 b 11.2.16 c

MODULE 11

DOCUMENTS ON WEB

Learning Units 11.1 The internet and the world wide web 11.2 Documents and the world wide web

Systems Analysis And Design

© V. Rajaraman

Learning Goals ƒ The basic technology used to build the internet ƒ How the world wide web uses the internet ƒ How documents are specified using HTML ƒ The distinction between presentation and structure of documents ƒ How documents are specified in XML

Systems Analysis And Design

© V. Rajaraman

1 of 35

Motivation ƒ We examined in the last module how documents are formatted and printed using a computer. ƒ Documents in that context meant results computed by a computer ƒ In a more general context one should look at also documents which are to be disseminated via the world wide web. ƒBesides dissemination one should also consider possibility of reading values from documents stored in remote computers and processing them for various purposes ƒThe need to exchange documents electronically and processing them have gained importance since the emergence of e-commerce

Systems Analysis And Design

© V. Rajaraman

2 of 35

Motivation (Contd)

ƒ To understand the need to distribute documents electronically we should first understand how computers are connected together and communicate in an orderly fashion among themselves ƒ Thus we will first examine very briefly the internet and the world wide web which uses the internet infrastructure

Systems Analysis And Design

© V. Rajaraman

3 of 35

Computer Networks ƒ Now-a-days no computer has an isolated existence ƒ Computers in an organization are interconnected by local area networks (LAN) ƒ Home computers are connected to Public Switched Telephone Network (PSTN) which provide a connection to an Internet Service Provider (ISP) ƒ LANs of organizations connected to LANs of other organizations via PSTN using routers

11.1.1 Systems Analysis And Design ©

V. Rajaraman

4 of 35

Logical Network-internet •Internet is the network of networks and interconnects millions of computers all over the world •Internet is used to exchange electronic mail, exchange files and log into remote computers •Common set of rules used by computers connected to the internet to communicate - called Internet Protocol (IP) •Each computer connected to the internet has a unique address called IP address •IP address is 4 bytes long •IP addresses are a scarce resource 11.1.2 Systems Analysis And Design ©

V. Rajaraman

5 of 35

Internet-continued • IP address converted to strings of characters which are easy to remember • Group of characters combined as domains • In the address [email protected] in – Top most domain –country code ernet – Internet Service Provider (ISP) in country serc –Department within organization-name assigned by organization rajaram – Name of the user in department – assigned by department • Hierarchy of addressing facilitates expansion 11.1.3 Systems Analysis And Design ©

V. Rajaraman

6 of 35

Internet -Continued •Internet breaks up messages sent from source to destination into a number of packets •Packet structure : CONTROL BITS FOR CHECKING

SERIAL NO OF THE PACKET

SOURCE ADDRESS

HEADER (20 bytes)

DESTINATION ADDRESS

MESSAGE

PAYLOAD (upto 1KB)

•Packets need not be of fixed length. Maximum length of a packet is 1 KB •Message packetised to allow different packets to go along different paths - called packet switching 11.1.4

Systems Analysis And Design

© V. Rajaraman

7 of 35

Packet Switching – Advantages And Disadvantages

ƒ Each packet can pick free (cheapest) path to take ƒ Finally packets reassembled using serial no. ƒ Packet switching less expensive and adaptive as faulty paths can be avoided ƒ Major disadvantage of packet switching is the difficulty in predicting time taken by different packets to travel from source to destination

11.1.5

Systems Analysis And Design

© V. Rajaraman

8 of 35

Packet Switching – Advantages And Disadvantages ƒ 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

11.1.6

Systems Analysis And Design

© V. Rajaraman

9 of 35

Intranet And Extranet ƒ A network of computers within an organization using TCP/IP protocol an use all internet facilities such as e-mail, file transfer, remote login etc –called an intranet or corporate intranet ƒ Two corporate intranets may be interconnected using a leased line from PSTN – such a network is called an extranet ƒ Extranet between cooperating organizations can provide internet services such as e-mail,file transfer among them

11.1.7

Systems Analysis And Design

© V. Rajaraman

10 of 35

World Wide Web Services • World Wide Web (WWW) is a world wide multimedia information service available on the internet • www contains web pages – created using a language called HTML (Hyper Text Markup Language) • HTML has features to embed links within web pages to point to other pages – we can thus navigate through links and search for required information

11.1.8

Systems Analysis And Design

© V. Rajaraman

11 of 35

World Wide Web • Web page located using a scheme known as Uniform Resource Locator(URL) Example of URL http://www.freesoft.org/connected/index.html

Protocol used

Domain name Of server Having web page

Folder with Required information

Required document formatted Using hypertext markup language

• Web browsers is a program on one’s PC used to search for required information

11.1.9

Systems Analysis And Design

© V. Rajaraman

12 of 35

Search Engines •Browsers use search engines - that is programs which will navigate web pages using links •Navigation based on search terms given by user •All organizations now maintain web pages t o establish their "web presence" •Web presence important to publicize organization for primarily advertising their services

11.1.10 Systems Analysis And Design ©

V. Rajaraman

13 of 35

What Is A Document? A document has three parts 1. CONTENT: The string of characters normally coded in ASCII or UNICODE - A document now-a-days also includes, besides text, pictures, audio and video-all bit strings when digitized. - We will however be primarily concerned with textual data in this module.

2. PRESENTATION: How the data looks like to a human userpresentation may be on a video screen or on paper.

3. STRUCTURE: Helps interpretation of data by a computer Information such as type of data (Numeric, Alphanumeric) and its nature, for example an invoice, a purchase order, a recipe etc.

11.2.1

Systems Analysis And Design

© V. Rajaraman

14 of 35

How Are Documents Processed By Computers ƒ

Text processors add special annotations primarily to help format the resulting print outs Examples are: Paragraphing, Font selection, Placing titles, pagination,Tabulation etc. Examples: WORD, TEX etc.

ƒ

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.

11.2.2

Systems Analysis And Design

© V. Rajaraman

15 of 35

Text Processing By Computers ƒ

Word processors primarily used for applications such as -Preparation of manuals -Preparation of catalogues -Routine office correspondence -Desk top publishing

ƒ

Report Generators (Discussed in Module10) are special variety which use a special language to generate and format reports.

ƒ

These are primarily for linear texts and not meant for linked text known as hypertext

11.2.3

Systems Analysis And Design

© V. Rajaraman

16 of 35

Documents On World Wide Web ƒ

In the world wide web documents located in many computers are linked

ƒ

Each document called a web page. Each web page has a unique path to retrieve it.

ƒ

Documents to be used in web pages need special annotations or markups mainly for formatting and for linking them to other documents in the web

ƒ

These annotations are called MARKUPS.

11.2.4

Systems Analysis And Design

© V. Rajaraman

17 of 35

Documents On World Wide Web ƒ

As documents on the world wide web are linked to many documents they are called hypertext.

ƒ

The markup used to link documents called Hyperlink.

ƒ

Web pages are retrieved from the host computers where they are located by a program called web browser running on a client.

ƒ

Clients use a communication protocol called Hyper Text Transfer Protocol (HTTP) to retrieve web pages

ƒ

HTTP recognizes a language called Hyper Text Markup Language (HTML)

11.2.5

Systems Analysis And Design

© V. Rajaraman

18 of 35

Hyper Text Markup Language ƒ

An HTML Document has the following general layout {Version optional}

( ! Is symbol used for comments) 11.2.6

Systems Analysis And Design

© V. Rajaraman

19 of 35

Example Of An Html Documents <TITLE> Description of a book on Information Technology

Introduction o Information technology

A first level book in I.T

Publisher : Prentice – Hall of India

Year of publication: 2003



11.2.7

Systems Analysis And Design

© V. Rajaraman

20 of 35

Display Of Html Document

When the document is viewed using a browser it will appear as shown below

Introduction to Information technology A first level book in I.T Publisher : Prentice – Hall of India Year of publication: 2003

11.2.8

Systems Analysis And Design

© V. Rajaraman

21 of 35

Explanation Of Tags In Html ƒ tells it is an HTML document ƒ End of HTML documents is indicated by ƒ version optional ƒ <TITLE> used to identify the document in the browsers title bar and is stored as the bookmark of this document ƒ

,

indicate headings.

to

available H1 highest size bold face and H6 lowest ƒ

indicates paragraphing ƒ Italics and bold face font ƒ ƒ Stand alone tags are also there in HTML.

11.2.9

Systems Analysis And Design

© V. Rajaraman

22 of 35

Linking Documents ƒ HTML can link to documents in other files.For Example to link an image we use : ƒ IMG indicates image and src the source (Observe the tag IMG is standalone and does not have end tag ƒ HTML has feature to list items with serial number or bullets ƒ HTML can also display tables and forms ƒ HTML is as rich as some word processors.

11.2.10 Systems Analysis And Design ©

V. Rajaraman

23 of 35

Hyperlinking Html Documents ƒ HTML allows a web page to refer to other web pages ƒ When a reference link in the page is clicked the browser switches to the referenced site. ƒ The specification is
where A is called anchor tag. ƒ Linking can also be to other files . ƒ Automatic conversion of word documents to HTML is possible using a tool 11.2.11 Systems Analysis And Design ©

V. Rajaraman

24 of 35

Shortcomings Of Html ƒ HTML is the earliest markup language which made it possible to retrieve documents stored in the world wide web ƒ HTML is primarily to facilitate presentation of contents of a web page. ƒ HTML does not have any means of specifying what the documents represents. Is it an invoice? A purchase order, book description etc. ƒ It also has no means of specifying the type of data to allow manipulation of data by browser. ƒ We thus need a markup language which is richer and is more descriptive of structure of a document and what it represents 11.2.12 Systems Analysis And Design ©

V. Rajaraman

25 of 35

EXtensible Markup Language ƒ A document has CONTENT, it has a STRUCTURE and it needs to be PRESENTED for ease of reading ƒ Word processors and HTML emphasize presentation of content and have no means of specifying structure (or what the data actually represents) ƒ XML is a new markup language which is capable of specifying what a document really represents ƒ XML is a proper subset of an international standard known as STANDARD GENERALISED MARKUP LANGUAGE (SGML).It is open standard and not proprietary 11.2.13 Systems Analysis And Design ©

V. Rajaraman

26 of 35

Parts Of XML System ƒ XML defines the structure of a document ƒ Unlike HTML it has tags which are user defined.This allows easy understanding of the nature of the document and assists in its processing. ƒ 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) ƒ Linking documents to create hypertext is also not integrated in XML unlike HTML where tag is a general purpose linking tag. Much more powerful linking is enabled by separating it to a companion language called XLL (Extensible Link Language). 11.2.14 Systems Analysis And Design ©

V. Rajaraman

27 of 35

Example Of XML Document • A purchase order is represented in XML as below < purchase_order > < order_no > B55567 < date> < year > 2004 < month > 10 < day > 9 ABC Traders

<street> 201 MG Road Bangalore 560001


11.2.15 Systems Analysis And Design ©

V. Rajaraman

28 of 35

Example Of XML Document (Contd)

C Programming ISBN 81-203-0859-X 50 <supplier> P-H India

11.2.16 Systems Analysis And Design ©

V. Rajaraman

29 of 35

Example Of XML Document ƒ Observe that the tags used have a syntax similar to HTML. The tags are, however, meaningful to a human reader ƒ The XML definition clearly brings out the structure of an invoice. ƒ However to interpret such a document and process it by a computer a companion document called Document Type Definition (DTD) is needed. ƒ DTD has its own syntax . We give DTD for this XML document in the next transparency. 11.2.17 Systems Analysis And Design ©

V. Rajaraman

30 of 35

Document Type Definition (DTD) ƒ DTD of XML document of 11.2.15 is given below
ELEMENT ELEMENT ELEMENT ELEMENT ELEMENT ELEMENT ELEMENT ELEMENT ELEMENT ELEMENT ELEMENT ELEMENT ELEMENT ELEMENT ELEMENT ELEMENT ELEMENT ELEMENT

DTD Statements purchase order (entry +) > order_no (#PC DATA) > date (year, month ,day) year (#PC DATA)> month(#PC DATA)> day (#PC DATA)> purchaser (name,address)> name (#PC DATA)> address (street,city,pin-code)> street (#PC DATA)> city (#PC DATA)> pin-code (#PC DATA)> item (item_name,item_code,quantity)> item_name (#PC DATA)> item_code (#PC DATA)> quantity (#PC DATA)> supplier (name)> name(#PC DATA)>

11.2.18 Systems Analysis And Design ©

V. Rajaraman

31 of 35

Explanation Of Document Type Definition ƒ Each statement in DTD declares the elements of XML program ƒ states that purchase order is the top level element with one or more entry following it ƒ 2 statements are introduced at the start of XML definition which specifies the version of XML and the file name of DTD specification ƒ Assuming DTD is in a file purchase_order.dtd the declarations are ƒ The tags used in XML definition are then specified.

11.2.19 Systems Analysis And Design ©

V. Rajaraman

32 of 35

Explanation Of Document Type Definition ƒ
V. Rajaraman

33 of 35

Some Application Of XML ƒ XML’s main use is in creating documents for the World Wide Web which can be retrieved by browsers at client computers. ƒ User defined tags give several advantages including use in - Push Technology – In this application time varying data specified by users e.g. Hourly stock prices of specified shares are automatically sent to the client’s browser - Online banking – A standard XML format known as financial exchange initiative is used to obtain information such as bank statements.

11.2.21

Systems Analysis And Design

© V. Rajaraman

34 of 35

Some Application Of XML ƒ Software and database updates ƒ XML adaptable to many natural languages such as Kannada as it uses Unicode standard. ƒ Use in Scientific Publications – Markup languages based on XML have been developed for chemistry – CML (Chemistry Markup Language) and MML (Mathematical Markup Language)

11.2.22 Systems Analysis And Design ©

V. Rajaraman

35 of 35

MODULE 11

DOCUMENTS ON WEB 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 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 11.1.2 The facilities available in the internet are (i) electronic mail (ii) remote login (iii) file transfer (iv) word processing (a) i, ii (b) i, ii, iii (c) i, ii, iv (d) ii, iii and iv 11.1.3 Internet requires (a) an international agreement to connect computers (b) a local area network (c) a commonly agreed set of rules to communicate between computers (d) a World Wide Web 11.1.4 Each computer connected to the internet must (a) be an IBM PC (b) have a unique IP address (c) be internet compatible (d) have a modem connection

11.1.5 IP address is currently (a) 4 bytes long (b) available in plenty (c) 6 bytes long (d) not assigned as it is all used up 11.1.6 IP addresses are converted to (a) a binary string (b) alphanumeric string (c) a hierarchy of domain names (d) a hexadecimal string 11.1.7 Internet addresses must always have atleast (i) a country name or organization type (ii) internet service provider’s name (iii) name of organization (iv) name of individual (v) type of organization (a) i, ii, iii (b) ii, iii, iv (c) i, iii (d) ii, iii, iv, v 11.1.8 Internet uses (a) Packet switching (b) Circuit switching (c) Telephone switching (d) Telex switching 11.1.9 Internet data is broken up as (a) fixed length packets (b) variable length packets (c) not packetized (d) 64 bytes packets 11.1.10

Internet packet data structure consists of (i) source address (ii) destination address (iii) serial number of packets (iv) message bytes (v) control bits for error checking (vi) path identification bits (a) i, ii, iii (b) i, ii, iii, iv (c) i, ii, iii, iv, v (d) i, ii, iii, iv, v, vi

11.1.11 The packets of an internet message (a) take a predetermined path (b) take a path based on packet priority (c) go along different paths based on path availability (d) take the shortest path from source to destination 11.1.12 The time taken by internet packets (a) can be predetermined before transmission (b) are same for all packets (c) may be different for different packets (d) is irrelevant for audio packets 11.1.13 By an intranet we mean (a) a LAN of an organization (b) a Wide Area Network connecting all branches of an organization (c) a corporate computer network (d) a network connecting all computers of an organization and using the internet protocol 11.1.14 By an extranet we mean (a) an extra fast computer network (b) the intranets of two co-operating organizations interconnected via a secure leased line (c) an extra network used by an organization for higher reliability (d) an extra connection to internet provided to co-operating organizations

11.1.15 World Wide Web (a) is another name for internet (b) world wide connection for computers (c) a collection of linked information residing on computers connected by the internet (d) a collection of world wide information 11.1.16 Among services available on the World Wide Web are (i) Encryption (ii) HTTP (iii) HTML (iv) Firewalls (a) i and ii (b) ii and iii (c)iii and iv (d) i and iv

11.1.17 A world wide web contains web pages (a) residing in many computers (b) created using HTML (c) with links to other web pages (d) residing in many computers linked together using HTML 11.1.18 A web page is located using a (a) Universal Record Linking (b) Uniform Resource Locator (c) Universal Record Locator (d) Uniformly Reachable Links 11.1.19 A URL specifies the following: (i) protocol used (ii) domain name of server hosting web page (iii) name of folder with required information (iv) name of document formatted using HTML (v) the name of ISP (a) i, ii, iii, iv (b) ii, iii, iv, v (c) i, iii, iv (d) i, ii, iii, v 11.1.20 A search engine is a program to search (a) for information (b) web pages (c) web pages for specified index terms (d) web pages for information using specified search terms ‘

LEARNING UNIT 2 11.2.1 HTML stands for (a) Hyper Text Making Links (b) Hyper Text Markup Language (c) Higher Textual Marking of Links (d) Hyper Text Mixer of Links 11.2.2 HTML is similar to a (a) word processing language (b) screen editor (c) scripting language (d) search engine

11.2.3 Desirable properties of a website are (i) a meaningful address (ii) Help and search facilities (iii) Links to related sites (iv) Features to allow users to give feedback (v) Hosting on a mainframe (a) i, ii, iii (b) i, ii, iii, iv (c) i, ii, iii, iv, v (d) i, ii, iii, v

11.2.4 HTML uses (a) (b) (c) (d)

pre-specified tags user defined tags tags only for linking fixed tags defined by the language

11.2.5 HTML tags define (a) (b) (c) (d)

The data types of elements of document Presentation of specified elements of a document The contents of the document The structure of the document

11.2.6 The tag used in HTML to link it with other URL’s is: (a)
(b) (c) (d) 11.2.7 The tags used for specifying fonts in HTML are (i) (ii) (iii) (iv)



(a) (i) and (ii)

(b) (i) and (iii)

(c) (ii) and (iv)

(d) (i),(ii) and (iii)

11.2.8 It is possible to display pictures (i.e, images) in HTML specification by using the tag. (a) (b) (c) (d)



11.2.9 SGML stands for (a) (b) (c) (d)

Standard Generalized Markup Language Structured General Markup Language Standard Graphics Mapping Language Standard General Markup Links

11.2.10 HTML and XML are markup languages (a) (b) (c) (d)

Specially development for the web Are based on SGML Are versions of SGML Independent of SGML

11.2.11 XML stands for (a) (b) (c) (d)

Extra Markup Language Excellent Markup Links Extended Markup Language Extended Marking Links

11.2.12 XML uses (a) (b) (c) (d)

user define tags pre-defined tags both predefined and user-defined tags Extended tags used in HTML and makes them powerful

11.2.13 In order to interpret XML documents one should (a) (b) (c) (d)

Use standardized tags Have a document type definition which defines the tags Define the tags separately Specify tag filename

11.2.14 The advantages of XML over HTML are (i) (ii) (iii) (iv)

It allows processing of data stored in web-pages It uses meaningful tags which aids in understanding the nature of a document Is simpler than HTML It separates presentation and structure of document

(a) (i),(ii) and (iii)

(b) (i),(ii) and(iv)

(c ) (ii),(iii) and (iv)

(d) (i),(iii) and (iv)

11.2.15 XSL definition is used along with XML definition to specify (a) (b) (c) (d)

The data types of the contents of XML document The presentation of XML document The links with other documents The structure of XML document

11.2.16 XLL definition is used along with XML to specify (a) (b) (c) (d)

The data types of the contents of XML document The presentation of XML document The links with other documents The structure of XML document

11.2.17 DTD definition is used along with XML to specify (a) The data types of the contents of XML document (b) The presentation of XML document (c) The links with other documents (d) The structure of XML document

KEY TO OBJECTIVE QUESTIONS

11.1.1 11.1.7 11.1.13 11.1.19 11.2.5 11.2.11 11.2.17

d c d a b c a

11.1.2 11.1.8 11.1.14 11.1.20 11.2.6 11.2.12

b a b d a a

11.1.3 11.1.9 11.1.15 11.2.1 11.2.7 11.2.13

c b c b a b

11.1.4 11.1.10 11.1.16 11.2.2 11.2.8 11.2.14

b 11.1.5 a 11.1.6 c c 11.1.11 c 11.1.12 c b 11.1.17 d 11.1.18 b a 11.2.3 b 11.2.4 d c 11.2.9 a 11.2.10 b b 11.2.15 b 11.2.16 c

System Analysis and Design/Documents On Web

11.1

Multiple Choice Questions

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

11.2

The facilities available in the internet are (i) electronic mail (ii) remote login (iii)file transfer (iv)word processing a. i, ii b. i, ii, iii c. i, ii, iv d. ii, iii and iv

11.3

Internet requires a. an international agreement to connect computers b. a local area network c. a commonly agreed set of rules to communicate between computers d. a World Wide Web

11.4

Each computer connected to the internet must a. be an IBM PC b. have a unique IP address c. be internet compatible d. have a modem connection

11.5

IP address is currently a. 4 bytes long

V. Rajaraman/IISc. Bangalore

M11/V1/July 04/1

System Analysis and Design/Documents On Web

Multiple Choice Questions

b. available in plenty c. 6 bytes long d. not assigned as it is all used up 11.6

IP addresses are converted to a. a binary string b. alphanumeric string c. a hierarchy of domain names d. a hexadecimal string

11.7

Internet addresses must always have at least (i) a country name or organization type (ii) internet service provider’s name (iii) name of organization (iv) name of individual (v) type of organization a. i, ii, iii b. ii, iii, iv c. i, iii d. ii, iii, iv, v

11.8

Internet uses a. Packet switching b. Circuit switching c. Telephone switching d. Telex switching

11.9

Internet data is broken up as a. fixed length packets b. variable length packets c. not packetized

V. Rajaraman/IISc. Bangalore

M11/V1/July 04/2

System Analysis and Design/Documents On Web

Multiple Choice Questions

d. 64 bytes packets 11.10 Internet packet data structure consists of (i)source address (ii) destination address (iii)serial number of packets (iv)message bytes (v)Control bits for error checking (vi) Path identification bits a. i, ii, iii b. i, ii, iii, iv c. i, ii, iii, iv, v d. i, ii, iii, iv, v, vi 11.11 The packets of an internet message a. take a predetermined path b. take a path based on packet priority c. go along different paths based on path availability d. take the shortest path from source to destination 11.12 The time taken by internet packets a. can be predetermined before transmission b. may be different for different packets c. is irrelevant for audio packets 11.13 By an intranet we mean a. a LAN of an organization b. a Wide Area Network connecting all branches of an organization c. a corporate computer network d. a network connecting all computers of an organization and using the internet protocol

V. Rajaraman/IISc. Bangalore

M11/V1/July 04/3

System Analysis and Design/Documents On Web

Multiple Choice Questions

11.14 By an extranet we mean a. an extra fast computer network b. the intranets of two co-operating organizations interconnected via a secure leased line c. an extra network used by an organization for higher reliability d. an extra connection to internet provided to co-operating organizati 11.15 World Wide Web a. is another name for internet b. world wide connection for computers c. a collection of linked information residing on computers connected by the internet d. a collection of world wide information 11.16 Among

services

available

on

the

World

Wide

Web

are

(i)Encryption (ii)HTTP (iii)HTML (iv)Firewalls a. i and ii b. ii and iii c. iii and iv d. i and iv 11.17 A world wide web contains web pages a. residing in many computers b. created using HTML c. with links to other web pages d. residing in many computers linked together using HTML 11.18 A web page is located using a

V. Rajaraman/IISc. Bangalore

M11/V1/July 04/4

System Analysis and Design/Documents On Web

Multiple Choice Questions

a. Universal Record Linking b. Uniform Resource Locator c. Universal Record Locator d. Uniformly Reachable Links 11.19 A URL specifies the following: (i) protocol used (ii) domain name of server hosting web page (iii) name of folder with required information (iv) name of document formatted using HTML (v) the name of ISP a. i, ii, iii, iv b. ii, iii, iv, v c. i, iii, iv d. i, ii, iii, v 11.20 A search engine is a program to search a. for information b. web pages c. web pages for specified index terms d. web pages for information using specified search terms 11.21 HTML stands for a. Hyper Text Making Links b. Hyper Text Markup Language c. Higher Textual Marking of Links d. Hyper Text Mixer of Links 11.22 HTML is similar to a a. word processing language b. screen editor

V. Rajaraman/IISc. Bangalore

M11/V1/July 04/5

System Analysis and Design/Documents On Web

Multiple Choice Questions

c. scripting language d. search engine 11.23

Desirable properties of a website are (i)a meaningful address (ii)Help and search facilities (iii) Links to related sites (iv)Features to allow users to give feedback (v)Hosting on a mainframe

a. i, ii, iii b. i, ii, iii, iv c. i, ii, iii, iv, v d. i, ii, iii, v 11.24 HTML uses a. pre-specified tags b. user defined tags c. tags only for linking d. fixed tags defined by the language 11.25 HTML tags define a. The data types of elements of document b. Presentation of specified elements of a document c. The contents of the document d. The structure of the document 11.26 The tag used in HTML to link it with other URL’s is: a.
b. c. d.

V. Rajaraman/IISc. Bangalore

M11/V1/July 04/6

System Analysis and Design/Documents On Web

Multiple Choice Questions

11.27 The tags used for specifying fonts in HTML are (i) (ii) (iii) (iv) a. (i) and (ii) b. (i) and (iii) c. (ii) and (iv) d. (i),(ii) and (iii) 11.28

It is possible to display pictures (i.e, images) in HTML specification by using

the

tag.

a. b. c. d.
HTML and XML are markup languages

a. Specially development for the web b. Are based on SGML c. Are versions of SGML

V. Rajaraman/IISc. Bangalore

M11/V1/July 04/7

System Analysis and Design/Documents On Web

Multiple Choice Questions

d. Independent of SGML 11.31

XML stands for

a. Extra Markup Language b. Excellent Markup Links c. Extended Markup Language d. Extended Marking Links 11.32

XML uses

a. user define tags b. pre-defined tags c. both predefined and user-defined tags d. Extended tags used in HTML and makes them powerful 11.33

In order to interpret XML documents one should

a. Use standardized tags b. Have a document type definition which defines the tags c. Define the tags separately d. Specify tag filename 11.34

The advantages of XML over HTML are (i) It allows processing of data stored in web-pages (ii) It uses meaningful tags which aids in understanding the nature of a document (iii)Is simpler than HTML (iv)It separates presentation and structure of document a. (i),(ii) and (iii) b. (i),(ii) and(iv) c. (ii),(iii) and (iv) d. (i),(iii) and (iv) 11.35

XSL definition is used along with XML definition to specify

V. Rajaraman/IISc. Bangalore

M11/V1/July 04/8

System Analysis and Design/Documents On Web

Multiple Choice Questions

a. The data types of the contents of XML document b. The presentation of XML document c. The links with other documents d. The structure of XML document 11.36

XLL definition is used along with XML to specify

a. The data types of the contents of XML document b. The presentation of XML document c. The links with other documents d. The structure of XML document 11.37 DTD definition is used along with XML to specify a. The data types of the contents of XML document b. The presentation of XML document c. The links with other documents d. The structure of XML document

V. Rajaraman/IISc. Bangalore

M11/V1/July 04/9

System Analysis and Design/Documents On Web

Multiple Choice Questions

Key to Objective Questions 11.1

d

11.2

b

11.3

c

11.4

b

11.5

11.7

c

11.8

a

11.9

b

11.10 c

11.11 c

11.13 d

11.14

b

11.15 c

11.19 a

11.20 d

11.21

b

11.22

11.26

11.27

a

11.28

11.25

b

11.31 c

11.32 a

a

11.33 b

11.16 b

11.34 b

11.17 a c

11.23 11.29

a

11.6

c

11.12 c

d

11.18 b b 11.24 a

11.35 b 11.36

d

11.30 b c

11.37 a

V. Rajaraman/IISc. Bangalore

M11/V1/July 04/10

MODULE 11

DOCUMENTS ON WEB WORKED EXAMPLES

11.1

What do you understand by an IP address? How is an IP address represented numerically? An IP address is an unique address required by a computer interface to access the internet. Presently an IP address is a 4 byte address and is expressed in what is known as the dotted decimal format like 144.16.68.201.

11.2

What is a domain name? How are e-mail addresses assigned? Since IP addresses are represented numerically which is difficult to remember, these addresses are converted into a string of characters for ease of remembering. These addresses are grouped into domains. On the Internet, a domain consists of a set of network addresses. This domain is organized in levels. The top level identifies geographic location or purpose commonality (for example, .in for India, .com for commerce and .edu for education). The second level identifies a unique place within the top level domain and is, in fact, equivalent to a unique address on the Internet (or IP). Lower levels of domain may also be used. Domain addresses are assigned by an international authority known as Internet Corporation for Assigned Names and Numbers (ICANN).

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.4

What is extranet? Give an example of an extranet An Extranet is private connection of intranets and leased lines from public telecommunication system to share part of business’s information or operations with suppliers, vendors, partners, customers, or other businesses. We can call it as a “private internet” Companies can use extranet to:

(a) Exchange large volumes of data using Electronic data Interchange(EDI) (b) Share product catalogs exclusively with wholesalers or those “in the trade” (c) Collaborate with other companies on joint development efforts (d) Jointly develop and use training programs with other companies An example of extranet is one which connects an automobile manufacturer with supplies of ancilliaries such as batteries, tyres, brakes etc. Another example is banknet connecting banks. 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 eCommerce. The html code to display the information is given below:

Introduction to e-Commerce

This is a new book



11.8

What is a URL? Explain the various parts of an URL? A URL stands for Uniform Resource Locator. A URL is the address of a (resource) accessible on the Internet. The type of resource depends on the Internet application protocol. In the URL http://www.entertainment.msn.com/movie.html the http stands for protocol to be used i.e., here hyper text transfer protocol. The www.msn.com preceded by:// is the address (called domain name) of computer, which is permanently connected to the internet. The entertainment is one directory. Under entertainment directory the file for information on movie is movie.html. The protocol can be http, ftp (file transfer protocol). The com stands for commercial organization.

Similarly there are different domains like edu, net etc., which are universally agreed as of specific type. 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. The specification for linking an image file to a HTML document is
< /A> where is called the anchor tag.

11.10 What is XML? In what way is it superior to HTML? XML or Extended Markup Language a subset of a SGML (Standard Generalized Markup Language), is a new markup language that is capable of specifying what a document really represents, unlike HTML which emphasizes on presentation of the content and no means of specifying structure. 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) Linking documents to create hypertext is also not integrated in XML unlike HTML where tag
is a general purpose linking tag. Much more powerful linking is enabled by separating it to a companion language called XLL (Extensible Link Language).

11.11 What language do you use to format XML documents? Formatting is not a part of XML. This is delegated to a companion language called XSL (Extensible style language)

System Analysis and Design/Documents On Web

Question Bank

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.3

What is the purpose of a data validation program?

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 executed by him at different customer locations.

11.7

Why are data fields coded in an information system?

11.8

Can the name of a person be used as a code, for say, his bank account? If not, why?

11.9

What are the requirements of a good coding scheme?

11.10

Is a concise code comprehensive? If not, why?

11.11

Is a meaningful code necessarily comprehensive?

11.12

Is a comprehensive code necessarily meaningful?

11.13

Is a precise code necessarily concise?

11.14

What is the advantage of a serial number code? Why is it not normally used?

11.15

What is the main advantage of block codes?

11.16

Design a group classification code to code (i) motor vehicles,, (ii) music cassettes, and (iii) books

11.17

Is a group classification code meaningful?

11.18

Give an example of a significant code. Are significant codes expandable?

V. Rajaraman/IISc. Bangalore

M11/V1/July 04/1

System Analysis and Design/Documents On Web

11.19

Question Bank

Add a Modulus-11 check digit to the codes (i) 48467, (ii) 96432, and (iii) 87646257.

11.20

Modulus-37 check is suitable for alphanumeric codes. Add a modulus-37 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 modulus-11 check digit. Is this code correct?

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 transcription and transposition errors are to be detected?

11.23

If modulus-11 check digit system is to generate detection of multiple identical digit transcription error (i.e., a code such as 45565 is wrongly entered as 48868), what should be the constraints on the weights?

11.24

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?

11.25

Why is it useful to assign sequence numbers for data records? What are the types of errors detected by sequence numbering?

11.26

What is the purpose of batch control record? What is the type of information contained in a batch control record?

11.27

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

V. Rajaraman/IISc. Bangalore

M11/V1/July 04/2

System Analysis and Design/Documents On Web

Question Bank

other appropriate checks for the fields. 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.32

Give some examples of inter-field relationship checks.

11.33

What is the main difference between menus, templates and command modes of interactive data entry? When is each of these modes appropriate?

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 long distance buses.

V. Rajaraman/IISc. Bangalore

M11/V1/July 04/3

System Analysis and Design/Documents On Web

Pointers

References 1. Most traditional books on Systems Analysis and Design do not discuss HTML and XML and documents on the web. 2. HTML is discussed in Wall D.A., using world wide web, 2nd edition, Prentice Hall of India, New Delhi, 1996. 3. Detailed Presentation of XML may be found in the book by Sean McGrath, “XML by Example”, Prentice Hall, Inc., N.J., U.S.A., 1998. 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, New Delhi, 1999. 6. HTML 4.0 specifications may be found in http://www/w3.org/TR/html40

V. Rajaraman/IISc. Bangalore

M11/V1/July 04/1

SUMMARY of Module 12 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.

2.

Off-line data entry is suitable if the number of records is very large.

3.

In off-line data entry, batches of data are formed and entered. They are checked by a validation program and the corrected records are stored in a file.

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, easily cross-referencing and efficient storage and retrieval.

6.

There are many methods for coding. An ideal code must be concise, expandable, meaningful, comprehensive and precise. It is not possible to incorporate all these ideal features in a code.

7.

Codes are classified as: (i) Serial number codes, (ii) Block codes, (iii) Group classification codes, and (iv) Significant codes. Group classification codes and Significant codes are most meaningful, expandable, precise and comprehensive. 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 identification codes must be detected during data entry.

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 all data entry errors. 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 check digit code.

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 the remainder is not zero then there is an error in the code.

12.

Modulus-11 check digit code guarantees detection of all single transcription and transposition errors. It also detects 95% of all other errors.

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 detecting errors. This information is provided by controls exercised during data preparation.

14.

Important control mechanisms are; giving unique sequence numbers to each data record, providing a batch control record containing a count of number of records and a total of one of the fields..

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 fields. Batch control provides information to detect incorrect values entered, missing records, and data in the wrong sequence. 17.

With the advent of Personal Computers, remote terminals connected to a computer and local computer networks, considerable amount of data is entered in files 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 during data entry and can be immediately corrected.

19.

Common methods of interactive data input is by use of menus, templates and interactive commands for data entry.

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 a particular type of interactive data entry.

QUESTION BANK – MODULE 11 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.3

What is the purpose of a data validation program?

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 executed by him at different customer locations.

11.7

Why are data fields coded in an information system?

11.8

Can the name of a person be used as a code, for say, his bank account? If not, why?

11.9

What are the requirements of a good coding scheme?

11.10

Is a concise code comprehensive? If not, why?

11.11

Is a meaningful code necessarily comprehensive?

11.12

Is a comprehensive code necessarily meaningful?

11.13

Is a precise code necessarily concise?

11.14

What is the advantage of a serial number code? Why is it not normally used?

11.15

What is the main advantage of block codes?

11.16

Design a group classification code to code (i) motor vehicles,, (ii) music cassettes, and (iii) books

11.17

Is a group classification code meaningful?

11.18

Give an example of a significant code. Are significant codes expandable?

11.19

Add a Modulus-11 check digit to the codes (i) 48467, (ii) 96432, and (iii) 87646257.

11.20

Modulus-37 check is suitable for alphanumeric codes. Add a modulus-37 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 modulus-11 check digit. Is this code correct?

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 transcription and transposition errors are to be detected?

11.23

If modulus-11 check digit system is to generate detection of multiple identical digit transcription error (i.e., a code such as 45565 is wrongly entered as 48868), what should be the constraints on the weights?

11.24

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?

11.25

Why is it useful to assign sequence numbers for data records? What are the types of errors detected by sequence numbering?

11.26

What is the purpose of batch control record? What is the type of information contained in a batch control record?

11.27

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. 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.32

Give some examples of inter-field relationship checks.

11.33

What is the main difference between menus, templates and command modes of interactive data entry? When is each of these modes appropriate?

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 long distance buses.

REFERENCES 1. Most traditional books on Systems Analysis and Design do not discuss HTML and XML and documents on the web. 2. HTML is discussed in Wall D.A., using world wide web, 2nd edition, Prentice Hall of India, New Delhi, 1996. 3. Detailed Presentation of XML may be found in the book by Sean McGrath, “XML by Example”, Prentice Hall, Inc., N.J., U.S.A., 1998. 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, New Delhi, 1999. 6. HTML 4.0 specifications may be found in http://www/w3.org/TR/html40

MODULE 12

CONTROL,AUDIT AND SECURITY OF INFORMATION SYSTEM

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 12.1.1 Control in design of an information system is used to (a) inspect the system and check that it is built as per specifications (b) protect data from accidental or intentional loss (c) ensure that the system processes data as it was designed to and that the results are reliable (d) ensure privacy of data processed by it 12.1.2 Controls are necessary in information systems as (i) massive amounts of data are processed and human errors are expected in data entry (ii) accidental errors can lead to loss of money and credibility in a system (iii) to protect the system from virus attack (iv) data may be lost due to disk crashes (a) i and ii (b) i and iii (c) i and iv (d) ii and iii 12.1.3 The major objectives of control are (i) guard against frauds in data entry/processing (ii) check clerical handling of data before it enters a computer (iii) to provide a method to trace the steps and find where error has occurred (iv) automatically correct errors in data entry/processing (a) i, ii and iv (b) i, ii, iii and iv (c) i, ii and iii (d) i and iii

12.1.4 Organizational measures in control mean (a) a set of well organized methods (b) assignment of appropriate responsibilities to individuals in data processing in an organization (c) proper organization of data (d) creation of an organization for controlling system 12.1.5 Proof figures are used to check (i) arithmetic errors in processing (ii) data entry errors in processing (iii) loop errors in program (iv) proof of program correctness (a) i and ii (b) i and iii (c) ii and iv (d) iii and iv 12.1.6 A proof figure is (a) a figure used to prove the correctness of data entry (b) an additional data entered with each record to facilitate detection of arithmetic error (c) a number used during data entry (d) a modulus-11 check digit 12.1.7 A two way check (a) calculates the same quantity in two different ways and compares them for equality (b) calculates the quantities and compares them for equality (c) checks a data item in two different ways (d) enters data two times and cross-checks them 12.1.8 A two-way check is used to (i) check program correctness (ii) find data entry errors (iii) find multiplication errors (iv) find arithmetic error in processing (a) i and ii (b) ii and iii (c) ii and iv (d) i and iv

12.1.9 A relationship check (a) is concerned with checking a relation (b) uses an entity-relationship model for checking (c) finds out if a relationship is satisfied in computation (d) uses the fact that a known relationship exists between two data elements and checks if it is satisfied during computation 12.1.10 A check-point procedure (a) checks program correctness at certain points (b) divides a program into smaller parts (c) breaks a programs into portions at the end of each of which a check point program is executed (d) finds points in a program where it is convenient to check it 12.1.11 At each check-point (i) quantities such as control totals and proof figures are checked for correctness (ii) process state is stored in secondary storage (iii) a program halts for check by programmers (iv) a self-checking system is invoked by the analyst (a) i and iv (b) ii and iii (c) i and ii (d) i and iii

LEARNING UNIT 2 12.2.1 Audit in the design of information system is used to (a) inspect the system and check that it is built as per specifications (b) protect data from accidental or intentional loss (c) ensure that the system processes data as it was designed to and that the results are reliable (d) ensure privacy of data processed by it 12.2.2 Auditing of information systems is primarily required to ensure that (i) all input records are correct and are included in processing (ii) the system has ample protection against frauds (iii) the processing performance is reliable (iv) the system is developed at low cost (a) i and ii (b) iii and iv (c) ii and iii (d) i, ii and iii

12.2.3 By auditing around the computer we mean (a) the inputs and the corresponding outputs are compared and checked for correctness (b) the programs and procedures are checked for correctness (c) special synthetic data is input and outputs checked for correctness (d) programs are written to check the functioning of the computer hardware 12.2.4 By auditing with a computer we mean (a) the inputs and the corresponding outputs are compared and checked for correctness (b) the programs and procedures are checked for correctness (c) special synthetic data is input and outputs checked for correctness (d) programs are written to check the functioning of the computer hardware 12.2.5 By auditing through the computer we mean (a) the inputs and the corresponding outputs are compared and checked for correctness (b) the programs and procedures are checked for correctness (c) special synthetic data is input and outputs checked for correctness (d) programs are written to check the functioning of the computer hardware 12.2.6 An audit trail is established in a system to (a) detect errors in a system (b) enable auditing of a system (c) localize the source of an error in a system (d) trail a program 12.2.7 Some audit and control procedures in a system (i) detect and correct errors in programs (ii) selectively print records in a system which meet certain criteria (iii) examine credit and debit balances in an accounting system and check if they balance (iv) provide a facility to trace a variable value through processing steps and print intermediate values when required (a) i and ii (b) ii and iii (c) i, ii, iii (d) ii, iii, iv 12.2.8 It is advisable for an auditor to require an operational information system to (i) keep logs of all system runs and people involved (ii) ensure that the programs and system operation are well documented (iii) ensure that no changes are allowed (iv) ensure that the inputs and batch controls are properly designed (a) i, ii, iii (b) ii, iii, iv (c) i, ii, iv (d) i, ii

12.2.9 In auditing with a computer (a) auditing programs are designed and used to check a system (b) the hardware of the computer is thoroughly checked for malfunctions (c) system software is thoroughly checked to ensure error free operations (d) auditors check system with a computer 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 12.3.1 By information system testing we mean (a) testing an information system correctly (b) determining whether a system is performing as per specifications (c) determining whether a system is performing optimally (d) ensuring proper function of a system 12.3.2 The main objectives of testing are (i) when correct inputs are fed to the system the outputs are correct (ii) when incorrect inputs are fed to the system they are detected and rejected (iii) the requirement specifications are correct (iv) verify that the controls incorporated in the system function correctly (a) i, ii (b) i, ii, iii (c) i, ii, iii, iv (d) i, ii, iv 12.3.3 The scope of the system test includes (a) both computerized and manual procedures (b) only test of computer procedures (c) computerized procedures, manual procedures, computer operations and controls (d) mainly computerized procedures and operations controls

12.3.4 Program tests use test data to (i) exercise all paths taken by a program (ii) test loop counters (iii) test with values which change state of logical variables (iv) comprehensively exercise program (a) i, ii (b) i, ii, iii (c) i, ii, iii, iv (d) i, ii, iv 12.3.5 By string test we mean (a) a test which tests operations with strings (b) a string of tests on programs (c) Test on related programs (d) The output of a program is sent as input to related program(s) to see if data is transferred correctly 12.3.6 Parallel runs are used (a) during regular operation of an information system (b) when a system is initially implemented (c) whenever errors are found in a computerized system (d) whenever management insists 12.3.7 The purpose of parallel run is to (a) to see whether outputs of a newly computerized system matches those of currently running manual or legacy system (b) have redundancy for reliability (c) test an operational information system (d) test a system being newly designed

LEARNING UNIT 4 12.4.1 Security in the design of information system is used to (a) inspect the system and check that it is built as per the specifications (b) protect data and programs from accidental or intentional loss (c) ensure that the system processes data as it was designed to and that the results are reliable (d) ensure privacy of data processed by it

12.4.2 By security of an information system we mean protecting (i) data from accidental or intentional damage or loss (ii) programs from accidental or intentional corruption or loss (iii) programs and data from unauthorized disclosure or change (iv) individual private data from disclosure (a) i and ii (b) i and iii (c) i, ii, iii (d) i, ii, iii, iv 12.4.3 It is necessary to protect information system from the following risks: (i) natural disasters like fire, floods etc (ii) disgruntled employees (iii) poorly trained employees (iv) hackers (v) industrial spies (vi) data entry operators (a) ii, iii, iv, v (b) i, ii, iii, iv, v (c) i, iv, v (d) i, ii, iii, iv, v, vi 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 12.4.5 Some security measures commonly used are (i) data encryption (ii) logging of all accesses to an information system and recording changes made (if any) (iii) data compression (iv) copying of files (a) ii and iii (b) i and iii (c) i and ii (d) ii and iv 12.4.6 To protect a system from viruses one should (i) not allow unauthorized use of floppy disks (ii) scan viruses in files received via a network or floppies (iii) isolate a system from networks (iv) install a roll-back recovery program in the system (a) i and iii (b) i and ii (c) ii and iv (d) i, iii, iv

12.4.7 A firewall is used in a system connected to a wide area network to (a) prevent spread of fire in the network (b) prevent unauthorized access by hackers (c) to scan for viruses in files (d) to extinguish fire spreading via network cables

KEY TO OBJECTIVE QUESTIONS 12.1.1 12.1.7 12.2.2 12.2.8 12.3.4 12.4.3

c a d c b d

12.1.2 12.1.8 12.2.3 12.2.9 12.3.5 12.4.4

a c a a d a

12.1.3 12.1.9 12.2.4 12.2.10 12.3.6 12.4.5

c d c b b c

12.1.4 12.1.10 12.2.5 12.3.1 12.3.7 12.4.6

c c b b a b

12.1.5 12.1.11 12.2.6 12.3.2 12.4.1 12.4.7

a c c d b b

12.1.6 12.2.1 12.2.7 12.3.3 12.4.2

b a d c c

System Analysis and Design/ Control – audit and Security of Information Systems

Motivation

Motivation for Controls ™ It is very important to ensure the reliability of reports produced by an information system ™ If unreliability is seen by users the entire credibility of the system is lost ™ Ensuring reliability is not difficult for small systems but when a system has to handle massive data it is a challenge ™ Systematic controls are thus essential when a system is designed Motivation for Audits ™ Many organizations are now entirely dependent on computer based information system ™ These information systems contain financial data and other critical procedures ™ It is essential to protect the systems against frauds and ensure that sound accounting practices are followed ™ It is necessary to trace the origin and fix responsibilities when frauds occur ™ Audit methods primary purpose is to ensure this. Motivation for Testing ™ Systems contain many individual subsystems ™ Usually sub-systems and programs are individually tested ™ However when a whole system is integrated unforeseen errors may be seen ™ Thus before releasing a system the entire operational system should be tested for correctness and completeness Motivation for Security ™ Systems contain sensitive data about the organization and also about persons working in the organization ™ Sensitive 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.

V. Rajaraman/IISc. Bangalore

//V1/July 04/1

System Analysis and Design/ Control – audit and Security of Information Systems

Motivation

Motivation for Disaster Recovery ™ Organizations depend on Information systems for their entire operations ™ It is thus essential to ensure continuity of service when unforeseen situations such as disk crashes, fires, floods and such disasters take place. ™ Thus it is essential to ensure quick recovery from disasters and ensure continuity of service.

V. Rajaraman/IISc. Bangalore

//V1/July 04/1

MODULE 12

CONTROL AUDIT AND SECURITY OF INFORMATION SYSTEM Learning Units 12.1 Controls in Information systems 12.2 Need and methods of auditing Information systems 12.3 Testing Information systems 12.4 Security of Information systems

Systems Analysis And Design

© V. Rajaraman

LEARNING GOALS ƒ Why controls are necessary in Information systems ƒ Methods of controlling Information systems ƒ How controls are introduced in Information systems ƒ Why Information systems need auditing ƒ How are systems audited ƒ The methods used to test Information systems ƒ How the security of an Information system is ensured

Systems Analysis And Design

© V. Rajaraman

1 of 27

MOTIVATION FOR CONTROLS ƒ It is very important to ensure the reliability of reports produced by an information system ƒ If unreliability is seen by users the entire credibility of the system is lost ƒ Ensuring reliability is not difficult for small systems but when a system has to handle massive data it is a challenge ƒ Systematic controls are thus essential when a system is designed

Systems Analysis And Design

© V. Rajaraman

2 of 27

MOTIVATION FOR AUDITS ƒ Many organizations are now entirely dependent on computer based information system ƒ These information systems contain financial data and other critical procedures ƒ It is essential to protect the systems against frauds and ensure that sound accounting practices are followed ƒ It is necessary to trace the origin and fix responsibilities when frauds occur ƒ Audit methods primary purpose is to ensure this.

Systems Analysis And Design

© V. Rajaraman

3 of 27

MOTIVATION FOR TESTING ƒ Systems contain many individual subsystems ƒ Usually sub-systems and programs are individually tested ƒ However when a whole system is integrated unforeseen errors may be seen ƒ Thus before releasing a system the entire operational system should be tested for correctness and completeness

Systems Analysis And Design

© V. Rajaraman

4 of 27

MOTIVATION FOR SECURITY ƒ Systems contain sensitive data about the organization and also about persons working in the organization ƒ Sensitive 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. Systems Analysis And Design

© V. Rajaraman

5 of 27

MOTIVATION FOR DISASTER RECOVERY ƒ Organizations depend on Information systems for their entire operations ƒ It is thus essential to ensure continuity of service when unforeseen situations such as disk crashes,fires,floods and such disasters take place. ƒ Thus it is essential to ensure quick recovery from disasters and ensure continuity of service.

Systems Analysis And Design

© V. Rajaraman

6 of 27

CONTROL AUDIT AND SECURITY OF INFORMATION SYSTEM • CONTROL- Method to ensure that a system processes data as per design and that all data is included and are correct • AUDIT AND TESTING - Ensure that the system is built as per specifications and that processed results are correct. Protect systems from frauds. • SECURITY- Protection of data resources,programs,and equipment from illegal use,theft,vandalism,accidents, disasters etc. 12.1.1

Systems Analysis And Design

© V. Rajaraman

7 of 27

NEED OF CONTROLS

• Information systems handle massive amounts of data – accidents such as not including some data can cause serious damage • Incorrect data entry can lead to high monetary losses • Credibility in the information system may be lost if errors are found in operational systems

12.1.2

Systems Analysis And Design

© V. Rajaraman

8 of 27

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 which occur due to bad data or bad program •Ensure legal requirements are met •To guard against frauds

12.1.3

Systems Analysis And Design

© V. Rajaraman

9 of 27

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

12.1.4

Systems Analysis And Design

© V. Rajaraman

10 of 27

CONTROL TECHNIQUES • INPUT PREPARATOIN CONTROL -Sequence numbering -Batch controls -Data entry and verification -Record totals -Self checking digits, (Covered in Module 7)

12.1.5

Systems Analysis And Design

© V. Rajaraman

11 of 27

PROCESSING CONTROLS ƒ PROOF FIGURES –An additional data element introduced to detect data entry/processing error Example:item code,qty supplied,cost/unit,proof cost(proof cost is additional data introduced. Proof cost=(H-cost/unit)where H is a constant > maxcost Check if H ∑ qty = ∑qty *proof cost + ∑qty * cost/unit If two sides are not equal, there is an error.

12.1.6

Systems Analysis And Design

© V. Rajaraman

12 of 27

PROCESSING CONTROLS ƒ TWO WAY CHECK – Calculate same qty in two different ways and they should be equal Example : ∑gross pay - ∑deductions = ∑net pay ƒ RELATIONSHIP CHECK –We know relation between variable. Example : Rebate total = ∑Sales * discount percent ƒ CHECKPOINT RESTART – Periodical storing of process state. If there is a failure roll back to saved state and restart computation. ƒ CHECK POINTS also useful to check intermediate results in long and complex calculations.Region where an error occurred can thus be isolated 12.1.7

Systems Analysis And Design

© V. Rajaraman

13 of 27

AUDITING OF INFORMATION SYSTEMS

OBJECTIVES ƒ Ensure computer based financial and other information reliable ƒ Ensure all records included while processing ƒ Ensure protection from frauds

12.2.1

Systems Analysis And Design

© V. Rajaraman

14 of 27

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

12.2.2 Systems Analysis And Design ©

V. Rajaraman

15 of 27

AUDITING THROUGH THE COMPUTER ƒ Facility to trace transaction value and print intermediate results ƒ Selective printing of records meeting criteria specified by the auditor For example :Inactive accounts,overactive accounts, accounts with high balance ƒ Comparing credit and debit balances ƒ Ensure logs are kept of who did what in critical data entry and processing to fix responsibility.Called an Audit trail. ƒ Auditor’s own check inputs and expected outputs. 12.2.3

Systems Analysis And Design

© V. Rajaraman

16 of 27

AUDITING WITH THE COMPUTER Use special audit packages to check system Audit package allows ƒ Extracting data based on the specified criterion for inspection(e.g. Students with wide disparity in marks in two subjects) ƒ Totaling specified subset of data for check ƒ Procedure to check sale discounts ƒ Process with independent data file created by auditor and verify to see if system is as per specification 12.2.4

Systems Analysis And Design

© V. Rajaraman

17 of 27

SYSTEM TESTING 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 12.3.1

Systems Analysis And Design

© V. Rajaraman

18 of 27

CLASIFICATION OF SYSTEM TESTS •PROGRAM TESTS -Program tests with test data - Normally individual modules tested then integration test done - Test boundary conditions - Test using loop counts

•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

12.3.3

Systems Analysis And Design

© V. Rajaraman

20 of 27

SYSTEM TESTING (CONTD)

• 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

12.3.4

Systems Analysis And Design

© V. Rajaraman

21 of 27

SECURITY OF INFORMATION SYSTEMS ƒ Security means protection of data from accidental or

intentional modification, destruction or disclosure to unauthorised persons POTENTIAL THREATS TO SECURITY ƒNatural disasters such as fire, floods, earthquakes ƒAccidents such as disk crashes, file erasure by inexperienced operators ƒTheft/erasure of data by disgruntled employees

12.4.1

Systems Analysis And Design

© V. Rajaraman

22 of 27

SECURITY OF INFORMATION SYSTEMS POTENTIAL THREATS TO SECURITY (CONTD) ƒ Frauds by changing programs, data by employees ƒ Industrial espionage ƒ Viruses/Worms ƒ Hackers who break into systems connected to the internet ƒ Denial of service attacks by flooding with mail 12.4.2

Systems Analysis And Design

© V. Rajaraman

23 of 27

HOW TO PROTECT DATA/PROGRAMS ƒ 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) 12.4.3

Systems Analysis And Design

© V. Rajaraman

24 of 27

HOW TO PROTECT DATA/PROGRAMS ƒEncrypting sensitive data/programs ƒ Identification of all persons who read or modify data and logging it in a file ƒ Training employees on data care/handling and security ƒ Antivirus software ƒ Firewall protection when connected to internet

12.4.4

Systems Analysis And Design

© V. Rajaraman

25 of 27

DATA SECURITY, PRIVACY AND INTEGRITY ƒ Data security is concerned with protecting data from erasure,theft,unauthorized access and unauthorized modifications ƒ Data privacy is concerned with protecting data regarding individuals from being accessed and used without the permission/knowledge of concerned individuals ƒ Data integrity is concerned with the quality and reliability of raw as well as processed data 12.4.5

Systems Analysis And Design

© V. Rajaraman

26 of 27

DATA SECURITY, PRIVACY AND INTEGRITY ƒ Security does not imply privacy or integrity ƒ Privacy controls need specific law against disclosure of personal data ƒ Ultimately data and system integrity most important

12.4.6

Systems Analysis And Design

© V. Rajaraman

27 of 27

MODULE 12

CONTROL AUDIT AND SECURITY OF INFORMATION SYSTEM

Contents

1. MOTIVATION AND LEARNING GOALS

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

MOTIVATION FOR CONTROLS It is very important to ensure the reliability of reports produced by an information system. If users see unreliability the entire credibility of the system is lost. Ensuring reliability is not difficult for small systems but when a system has to handle massive data it is a challenge. Systematic controls are thus essential when a system is designed. MOTIVATION FOR AUDITS Many organizations are now entirely dependent on computer based information system. These information systems contain financial data and other critical procedures. It is essential to protect the systems against frauds and ensure that sound accounting practices are followed. It is necessary to trace the origin and fix responsibilities when frauds occur. Audit methods primary purpose is to ensure this. MOTIVATION FOR TESTING Systems contain many individual subsystems. Usually sub-systems and programs are individually tested. However when a whole system is integrated unforeseen errors may be seen. Thus before releasing a system the entire operational system should be tested for correctness and completeness. MOTIVATION FOR SECURITY 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 Organizations depend on Information systems for their entire operations. It is thus essential to ensure continuity of service when unforeseen situations such as disk crashes, fires, floods and such disasters take place. Thus it is essential to ensure quick recovery from disasters and ensure continuity of service.

LEARNING GOALS At the end of the module you will learn:

ƒ ƒ ƒ ƒ ƒ ƒ ƒ

Why controls are necessary in Information systems Methods of controlling Information systems How controls are introduced in Information systems Why Information systems need auditing How are Information systems audited The methods used to test Information systems How the security of an Information system is ensured

LEARNING UNIT 1

Controls in Information systems

CONTROL AUDIT AND SECURITY OF INFORMATION SYSTEM • CONTROL- Method to ensure that a system processes data as per design and that all data is included and are correct • AUDIT AND TESTING - Ensure that the system is built as per specifications and that processed results are correct. Protect systems from frauds. • SECURITY- Protection of data resources, programs, and equipment from illegal use, theft, vandalism, accidents, disasters etc. NEED OF CONTROLS Information systems handle massive amounts of data – accidents such as not including some data can cause serious damage. Incorrect data entry can lead to high monetary losses. Credibility in the information system may be lost if errors are found in operational systems. 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. • INPUT PREPARATOIN CONTROL -Sequence numbering -Batch controls -Data entry and verification -Record totals -Self checking digits PROCESSING CONTROLS ƒ PROOF FIGURES –An additional data element introduced to detect data entry/processing error Example:item code,qty supplied,cost/unit,proof cost(proof cost is additional data introduced). Proof cost=(H-cost/unit)where H is a constant > maxcost Check if H * qty = ∑qty *proof cost + ∑qty * cost/unit If two sides are not equal, there is an error. ƒ TWO WAY CHECK – Calculate same qty in two different ways and they should be equal Example : ∑ gross pay - ∑deductions = ∑net pay ƒ RELATIONSHIP CHECK –We know relation between variable. Example : Rebate total = ∑Sales * discount percent ƒ CHECKPOINT RESTART – Periodical storing of process state. If there is a failure roll back to saved state and restart computation. ƒ CHECK POINTS also useful to check intermediate results in long and complex calculations. Region where an error occurred can thus be isolated

LEARNING UNIT 2

Need and methods of auditing Information systems

AUDITING OF INFORMATION SYSTEMS OBJECTIVES ƒ Ensure computer based financial and other information reliable ƒ Ensure all records included while processing ƒ Ensure protection from frauds 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 AUDITING THROUGH THE COMPUTER ƒFacility to trace transaction value and print intermediate results ƒ Selective printing of records meeting criteria specified by the auditor For example :Inactive accounts, overactive accounts, accounts with high balance ƒ Comparing credit and debit balances ƒ Ensure logs are kept of who did what in critical data entry and processing to fix responsibility. Called an Audit trail. ƒ Auditor’s own check inputs and expected outputs. AUDITING WITH THE COMPUTER Use special audit packages to check system Audit package allows ƒ Extracting data based on the specified criterion for inspection (e.g. Students with wide disparity in marks in two subjects) ƒ Totaling specified subset of data for check ƒ Procedure to check sale discounts ƒ Process with independent data file created by auditor and verify to see if system is as per specification LEARNING UNIT 3

Testing Information systems 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 CLASIFICATION OF SYSTEM TESTS •PROGRAM TESTS -Program tests with test data - Normally individual modules tested then integration test done - Test boundary conditions - Test using loop counts •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 means protection of data from accidental or intentional modification, destruction or disclosure to unauthorised persons POTENTIAL THREATS TO SECURITY ƒNatural disasters such as fire, floods, earthquakes ƒAccidents such as disk crashes, file erasure by inexperienced operators ƒTheft/erasure of data by disgruntled employees ƒ Frauds by changing programs, data by employees ƒ Industrial espionage ƒ Viruses/Worms ƒ Hackers who break into systems connected to the internet ƒ Denial of service attacks by flooding with mail 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) HOW TO PROTECT DATA/PROGRAMS Data/Programs can be protected in the following ways: ƒEncrypting sensitive data/programs ƒIdentification of all persons who read or modify data and logging it in a file ƒTraining employees on data care/handling and security ƒAntivirus software ƒFirewall protection when connected to internet

DATA SECURITY, PRIVACY AND INTEGRITY ƒData security is concerned with protecting data from erasure, theft, unauthorized access and unauthorized modifications. ƒData privacy is concerned with protecting data regarding individuals from being accessed and used without the permission/knowledge of concerned individuals ƒData integrity is concerned with the quality, reliability and trustworthiness of raw as well as processed data ƒSecurity does not imply privacy or integrity ƒPrivacy controls need specific law against disclosure of personal data ƒUltimately data and system integrity most important

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. 2. M.Bishop, Computer Security, Pearson Education Asia, New Delhi, 2003. It is an 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 various aspect of security, audit and integrity of information systems. 3. D.A. Watne, P.B.B. Turney, Auditing EDP Systems, Prentice Hall Inc. N.J., U.S.A., 1990, is an extensive treatment of auditing information systems.

System Analysis and Design/Control, Audit And Security Of Information System

Multiple Choice Questions

12.1 Control in design of an information system is used to a. inspect the system and check that it is built as per specifications b. protect data from accidental or intentional loss c. ensure that the system processes data as it was designed to and that the results are reliable d. ensure privacy of data processed by it 12.2 Controls are necessary in information systems as (i) massive amounts of data are processed and human errors are expected in data entry (ii)

accidental errors can lead to loss of money and credibility in a system

(iii) to protect the system from virus attack (iv) data may be lost due to disk crashes a. i and ii b. i and iii c. i and iv d. ii and iii 12.3 The major objectives of control are (i)guard against frauds in data entry/processing (ii)check clerical handling of data before it enters a computer (iii)to provide a method to trace the steps and find where error has occurred (iv)automatically correct errors in data entry/processing a. i, ii and iv b. i, ii, iii and iv c. i, ii and iii d. i and iii 12.4 Organizational measures in control mean a. a set of well organized methods b. assignment of appropriate responsibilities to individuals in data processing in an organization c. proper organization of data

V. Rajaraman/IISc. Bangalore

M12/V1/July 04/1

System Analysis and Design/Control, Audit And Security Of Information System

Multiple Choice Questions

d. creation of an organization for controlling system 12.5 Proof figures are used to check (i) arithmetic errors in processing (ii)data entry errors in processing (iii)loop errors in program (iv)proof of program correctness a. i and ii b. i and iii c. ii and iv d. iii and iv 12.6 A proof figure is a.

a figure used to prove the correctness of data entry

b. an additional data entered with each record to facilitate detection of arithmetic error c. a number used during data entry d. a modulus-11 check digit 12.7 A two way check a. calculates the same quantity in two different ways and compares them for equality b. calculates the quantities and compares them for equality c. checks a data item in two different ways d. enters data two times and cross-checks them 12.8 A two-way check is used to (i)check program correctness (ii)find data entry errors (iii)find multiplication errors (iv)find arithmetic error in processing a. i and ii b. ii and iii c. ii and iv d. i and iv

V. Rajaraman/IISc. Bangalore

M12/V1/July 04/2

System Analysis and Design/Control, Audit And Security Of Information System

Multiple Choice Questions

12.9 A relationship check a. is concerned with checking a relation b. uses an entity-relationship model for checking c. finds out if a relationship is satisfied in computation d. uses the fact that a known relationship exists between two data elements and checks if it is satisfied during computation 12.10 A check-point procedure a. checks program correctness at certain points b. divides a program into smaller parts c. breaks a programs into portions at the end of each of which a check point program is executed d. finds points in a program where it is convenient to check it 12.11 At each check-point (i)quantities such as control totals and proof figures are checked for correctness (ii)process state is stored in secondary storage (iii)a program halts for check by programmers (iv)a self-checking system is invoked by the analyst a. i and iv b. ii and iii c. i and ii d. i and iii 12.12 Audit in the design of information system is used to a. inspect the system and check that it is built as per specifications b. protect data from accidental or intentional loss c. ensure that the system processes data as it was designed to and that the results are reliable d. ensure privacy of data processed by it 12.13 Auditing of information systems is primarily required to ensure the (i)all input records are correct and are included in processing (ii)the system has ample protection against frauds

V. Rajaraman/IISc. Bangalore

M12/V1/July 04/3

System Analysis and Design/Control, Audit And Security Of Information System

Multiple Choice Questions

(iii)the processing performance is reliable (iv)the system is developed at low cost a. i and ii b. iii and iv c. ii and iii d. i, ii and iii 12.14 By auditing around the computer we mean a. the inputs and the corresponding outputs are compared and checked for correctness b. the programs and procedures are checked for correctness c. special synthetic data is input and outputs checked for correctness d. programs are written to check the functioning of the computer har 12.15 By auditing with a computer we mean a. the inputs and the corresponding outputs are compared and checked for correctness b. the programs and procedures are checked for correctness c. special synthetic data is input and outputs checked for correctness d. programs are written to check the functioning of the computer hardware 12.16 By auditing through the computer we mean a. the inputs and the corresponding outputs are compared and checked for correctness b. the programs and procedures are checked for correctness c. special synthetic data is input and outputs checked for correctness d. programs are written to check the functioning of the computer hardware 12.17 An audit trail is established in a system to a. detect errors in a system b. enable auditing of a system c. localize the source of an error in a system d. trail a program 12.18 Some audit and control procedures in a system (i)detect and correct errors in programs

V. Rajaraman/IISc. Bangalore

M12/V1/July 04/4

System Analysis and Design/Control, Audit And Security Of Information System

Multiple Choice Questions

(ii)selectively print records in a system which meet certain criteria (iii)examine credit and debit balances in an accounting system and check if they balance (iv)provide a facility to trace a variable value through processing steps and print intermediate values when required a. i and ii b. ii and iii c. i, ii, iii d. ii, iii, iv 12.19 It is advisable for an auditor to require an operational information system

to (i)keep logs of all system runs and people involved (ii)ensure that the programs and system operation are well documented (iii)ensure that no changes are allowed (iv)ensure that the inputs and batch controls are properly designed

a. i, ii, iii b. ii, iii, iv c. i, ii, iv d. i, ii 12.20 In auditing with a computer a. auditing programs are designed and used to check a system b. the hardware of the computer is thoroughly checked for malfunctions c. system software is thoroughly checked to ensure error free operations d. auditors check system with a computer 12.21 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

V. Rajaraman/IISc. Bangalore

M12/V1/July 04/5

System Analysis and Design/Control, Audit And Security Of Information System

Multiple Choice Questions

(iv) Hardware faults recovery a. i, ii b. i, ii, iii c. i, ii, iii, iv d. i, ii, iv 12.22 By information system testing we mean a. testing an information system correctly b. determining whether a system is performing as per specifications c. determining whether a system is performing optimally d. ensuring proper function of a system 12.23 The main objectives of testing are (i)when correct inputs are fed to the system the outputs are correct (ii)when incorrect inputs are fed to the system they are detected and rejected (iii)the requirement specifications are correct (iv) verify that the controls incorporated in the system function correctly a. i, ii b. i, ii, iii c. i, ii, iii, iv d. i, ii, iv 12.24 The scope of the system test includes a. both computerized and manual procedures b. only test of computer procedures c. computerized procedures, manual procedures, computer operations and controls d. mainly computerized procedures and operations controls 12.25 Program tests use test data to (i) exercise all paths taken by a program (ii)test loop counters

V. Rajaraman/IISc. Bangalore

M12/V1/July 04/6

System Analysis and Design/Control, Audit And Security Of Information System

Multiple Choice Questions

(iii)test with values which change state of logical variables (iv)comprehensively exercise program a. i, ii b. i, ii, iii c. i, ii, iii, iv d. i, ii, iv 12.26 By string test we mean a. a test which tests operations with strings b. a string of tests on programs c. Test on related programs d. The output of a program is sent as input to related program(s) to see if data is transferred correctly 12.27 Parallel runs are used a. during regular operation of an information system b. when a system is initially implemented c. whenever errors are found in a computerized system d. whenever management insists 12.28 The purpose of parallel run is to a. to see whether outputs of a newly computerized system matches those of currently running manual or legacy system b. have redundancy for reliability c. test an operational information system d. test a system being newly designed 12.29 Security in the design of information system is used to a. inspect the system and check that it is built as per the specifications b. protect data and programs from accidental or intentional loss c. ensure that the system processes data as it was designed to and that the results are reliable d. ensure privacy of data processed by it 12.30

By

security

of

an

information

system

we

mean

protecting

(i)data from accidental or intentional damage or loss

V. Rajaraman/IISc. Bangalore

M12/V1/July 04/7

System Analysis and Design/Control, Audit And Security Of Information System

Multiple Choice Questions

(ii)programs from accidental or intentional corruption or loss (iii)programs and data from unauthorized disclosure or change (iv)individual private data from disclosure a. i and ii b. i and iii c. i, ii, iii d. i, ii, iii, iv 12.31

It is necessary to protect information system from the following (i)natural disasters like fire, floods etc (ii)disgruntled employees (iii)poorly trained employees (iv)hackers (v)industrial spies (vi)data entry operators a. ii, iii, iv, v b. i, ii, iii, iv, v c. i, iv, v d. i, ii, iii, iv, v, vi

12.32 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 12.33 Some security measures commonly used are (i)data encryption

V. Rajaraman/IISc. Bangalore

M12/V1/July 04/8

System Analysis and Design/Control, Audit And Security Of Information System

Multiple Choice Questions

(ii)logging of all accesses to an information system and recording changes made (if any) (iii)data compression (iv)copying of files a. ii and iii b. i and iii c. i and ii d. ii and iv 12.34 To protect a system from viruses one should (i)not allow unauthorized use of floppy disks (ii)scan viruses in files received via a network or floppies (iii)isolate a system from networks (iv)install a roll-back recovery program in the system a. i and iii b. i and ii c. ii and iv d. i, iii, iv 12.35 A firewall is used in a system connected to a wide area network to a. prevent spread of fire in the network b. prevent unauthorized access by hackers c. to scan for viruses in files d. to extinguish fire spreading via network cables

V. Rajaraman/IISc. Bangalore

M12/V1/July 04/9

System Analysis and Design/Control, Audit And Security Of Information System

Multiple Choice Questions

Key to Objective Questions 12.1 c

12.2a 12.3

c 12.4

c 12.5

a 12.6

b

12.7 a

12.8 c

12.9 d

12.10 c

12.11 c

12.12 a

12.13 d

12.14 a

12.15 c

12.16 b

12.17 c

12.18 d

12.19 c

12.22 a

12.21 b

12.22 b

12.23 d

12.24 c

12.25 b

12.26 d

12.27 b

12.28 a

12.29 b

12.30 c

12.31 d

12.32 a

12.33 c

V. Rajaraman/IISc. Bangalore

12.34 b

12.35 b

M12/V1/July 04/10

MODULE 12

CONTROL OF INFORMATION SYSTEMS AUDIT AND SECURITY WORKED EXAMPLES

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.3 What is the difference between control and audit? Controls are essential to enable an auditor to check the correctness of a system. An auditor checks whether controls put in a system are adequate. 12.4 What is an audit package? Enumerate some of the important features of an audit package. An audit package is a program developed by an auditor to check whether processing is done by a system as per specifications. Audit packages have features to (i)Extract data satisfying a specified criterion. (ii) Total specified fields for inspection. (iii) Check specified selected fields for inspection. (iv) Check totals of specified sets with certain characteristics. (iv) Matching data files with an auditor’s own file. 12.5 What is the purpose of security measures in an information system? Security measures are used to protect data and programs from accidental loss or theft. They also protect the system from unauthorized access, unauthorized change or copying. 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.8 Is a password system sufficient to ensure security of access to files? No. Passwords can be broken by sustained effort. Double protection is slightly better. In this case two different passwords should be used. After the first password is accepted a second password is needed. Data stored may also be transformed and stored using a secret code (called encryption).

12.9 How can privacy be ensured in an information system? By proper legal protection given to individuals data. Requiring an individual’s written permission to divulge data on him/her. 12.10 Why are system tests necessary? System tests are necessary to ensure that a system conforms to specifications during operation, meets user requirements, controls function effectively, and its outputs are correct. 12.11 What are the objectives of system tests? The main objectives of system testing are: • To ensure that during operation the system will perform as per specifications. • To make sure that the system meets users’ requirements during operation. • To verify that the controls incorporated in the system function as intended. • To see that when correct inputs are fed to the system the outputs are correct. • To make sure that during operation, incorrect input, processing and outputs will be detected. 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.3

What is the purpose of a data validation program?

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 executed by him at different customer locations.

12.7

Why are data fields coded in an information system?

12.8

Can the name of a person be used as a code, for say, his bank account? If not, why?

12.9

What are the requirements of a good coding scheme?

12.10

Is a concise code comprehensive? If not, why?

12.11

Is a meaningful code necessarily comprehensive?

12.12

Is a comprehensive code necessarily meaningful?

12.13

Is a precise code necessarily concise?

12.14

What is the advantage of a serial number code? Why is it not normally used?

12.15

What is the main advantage of block codes?

12.16

Design a group classification code to code (i) motor vehicles,, (ii) music cassettes, and (iii) books

12.17

Is a group classification code meaningful?

12.18

Give an example of a significant code. Are significant codes expandable?

12.19

Add a Modulus-11 check digit to the codes (i) 48467, (ii) 96432, and (iii) 87646257.

12.20

Modulus-37 check is suitable for alphanumeric codes. Add a modulus-37 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 modulus-11 check digit. Is this code correct?

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 transcription and transposition errors are to be detected?

12.23

If modulus-11 check digit system is to generate detection of multiple identical digit transcription error (i.e., a code such as 45565 is wrongly entered as 48868), what should be the constraints on the weights?

12.24

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?

12.25

Why is it useful to assign sequence numbers for data records? What are the types of errors detected by sequence numbering?

12.26

What is the purpose of batch control record? What is the type of information contained in a batch control record?

12.27

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. 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.32

Give some examples of inter-field relationship checks.

12.33

What is the main difference between menus, templates and command modes of interactive data entry? When is each of these modes appropriate?

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 long distance buses.

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. 2. M.Bishop, Computer Security, Pearson Education Asia, New Delhi, 2003. It is an 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 various aspect of security, audit and integrity of information systems. 3. D.A. Watne, P.B.B. Turney, Auditing EDP Systems, Prentice Hall Inc. N.J., U.S.A., 1990, is an extensive treatment of auditing information systems.

SUMMARY of Module 12 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.

2.

Off-line data entry is suitable if the number of records is very large.

3.

In off-line data entry, batches of data are formed and entered. They are checked by a validation program and the corrected records are stored in a file.

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, easily cross-referencing and efficient storage and retrieval.

6.

There are many methods for coding. An ideal code must be concise, expandable, meaningful, comprehensive and precise. It is not possible to incorporate all these ideal features in a code.

7.

Codes are classified as: (i) Serial number codes, (ii) Block codes, (iii) Group classification codes, and (iv) Significant codes. Group classification codes and Significant codes are most meaningful, expandable, precise and comprehensive. 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 identification codes must be detected during data entry.

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 all data entry errors. 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 check digit code.

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 the remainder is not zero then there is an error in the code.

12.

Modulus-11 check digit code guarantees detection of all single transcription and transposition errors. It also detects 95% of all other errors.

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 detecting errors. This information is provided by controls exercised during data preparation.

14.

Important control mechanisms are; giving unique sequence numbers to each data record, providing a batch control record containing a count of number of records and a total of one of the fields..

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 fields. Batch control provides information to detect incorrect values entered, missing records, and data in the wrong sequence. 17.

With the advent of Personal Computers, remote terminals connected to a computer and local computer networks, considerable amount of data is entered in files 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 during data entry and can be immediately corrected.

19.

Common methods of interactive data input is by use of menus, templates and interactive commands for data entry.

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 a particular type of interactive data entry.

MODULE 13

ELECTRONIC COMMERCE 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 13.1.1 By Electronic Commerce we mean: (a) Commerce of electronic goods (b) Commerce which depends on electronics (c) Commerce which is based on the use of internet (d) Commerce which is based on transactions using computers connected by telecommunication network 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 13.1.5 Advantages of B2C commerce are (i) Business gets a wide reach to customers (ii) Payment for services easy (iii) Shop can be open 24 hours a day seven days a week (iv) Privacy of transaction always maintained (a) i and ii (b) ii and iii (c) i and iii (d) iii and iv 13.1.6 B2C commerce (a) includes services such as legal advice (b) means only shopping for physical goods (c) means only customers should approach customers to sell (d) means only customers should approach business to buy 13.1.7 Advantages of B2C commerce to customers are (i) wide variety of goods can be accessed and comparative prices can be found (ii) shopping can be done at any time (iii) privacy of transactions can be guaranteed (iv) security of transactions can be guaranteed (a) i and ii (b) ii and iii (c) iii and iv (d) i and iv 13.1.8 Disadvantages of e-Commerce in India are (i) internet access is not universally available (ii) credit card payment security is not yet guaranteed (iii) transactions are de-personalized and human contact is missing (iv) cyberlaws are not in place (a) i and ii (b) ii and iii (c) i, ii, iii (d) i, ii, iii, iv

LEARNING UNIT 2 13.2.1 Electronic Data Interchange is necessary in (a) B2C e-Commerce (b) C2C e-Commerce (c) B2B e-Commerce (d) Commerce using internet 13.2.2 EDI requires (a) representation of common business documents in computer readable form (b) data entry operators by receivers (c) special value added networks (d) special hardware at co-operating Business premises 13.2.3 EDI standards are (a) not universally available (b) essential for B2B commerce (c) not required for B2B commerce (d) still being evolved 13.2.4 EDIFACT is a standard (a) for representing business forms used in e-Commerce (b) for e-mail transaction for e-Commerce (c) for ftp in e-Commerce (d) protocol used in e-Commerce 13.2.5 EDIFACT standard was developed by (a) American National Standard Institute (b) International Standard Institute (c) European Common Market (d) United Nations Economic Commission for Europe 13.2.6 ANSI X.12 is a standard developed by (a) American National Standard Institute (b) International Standard Institute (c) European Common Market (d) United Nations Economic Commission for Europe

13.2.7 In B2B e-Commerce (i) Co-operating Business should give an EDI standard to be used (ii) Programs must be developed to translate EDI forms to a form accepted by application program (iii) Method of transmitting/receiving data should be mutually agreed (iv) It is essential to use internet (a) i, ii (b) i, ii, iii (c) i, ii, iii, iv (d) ii, iii, iv 13.2.8 EDI use (a) requires an extranet (b) requires value added network (c) can be done on internet (d) requires a corporate intranet 13.2.9 EDI over internet uses (a) MIME to attach EDI forms to e-mail messages (b) FTP to send business forms (c) HTTP to send business forms (d) SGML to send business forms 13.2.10 For secure EDI transmission on internet (a) MIME is used (b) S/MIME is used (c) PGP is used (d) TCP/IP is used 13.2.11 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

LEARNING UNIT 3 13.3.1 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.3.2 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.3.3 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.3.4 Firewall as part of a router program (a) filters only packets coming from internet (b) filters only packets going to internet (c) filters packets travelling from and to the intranet from the internet (d) ensures rapid traffic of packets for speedy e-Commerce 13.3.5 Filtering of packets by firewall based on a router has facilities to (i) prevent access to internet to some clients in the intranet (ii) prevent access at certain specified times (iii) filter packets based on source or destination IP address (iv) prevent access by certain users of the internet to other specified users of the internet (a) i, iii (b) i, ii, iii (c) i, ii, iii, iv (d) ii, iii, iv 13.3.6 Main function of proxy application gateway firewall is (a) to allow corporate users to use efficiently all internet services (b) to allow intranet users to securely use specified internet services (c) to allow corporate users to use all internet services (d) to prevent corporate users from using internet services 13.3.7 Proxy application gateway (i) acts on behalf of all intranet users wanting to access internet securely (ii) monitors all accesses to internet and allows access to only specified IP addresses (iii) disallows use of certain protocols with security problems (iv) disallows all internet users from accessing intranet (a) i, ii (b) i, ii, iii (c) i, ii, iii, iv (d) ii, iii, iv

13.3.8 A hardened firewall host on an intranet (i) has a proxy application gateway program running on it (ii) allows specified internet users to access specified services in the intranet (iii) initiates all internet activities requested by clients and monitors them (iv) prevents outsiders from accessing IP addresses within the intranet (a) i, ii (b) i, ii, iii (c) i, ii, iii, iv (d) ii, iii, iv 13.3.9 A hardened firewall host on an Intranet is (a) a software which runs in any of the computers in the intranet (b) a software which runs on a special reserved computer on the intranet (c) a stripped down computer connected to the intranet (d) a mainframe connected to the intranet to ensure security 13.3.10 By encryption of a text we mean (a) compressing it (b) expanding it (c) scrambling it to preserve its security (d) hashing it 13.3.11 Encryption is required to (i) protect business information from eavesdropping when it is transmitted on internet (ii) efficiently use the bandwidth available in PSTN (iii) to protect information stored in companies’ databases from retrieval (iv) to preserve secrecy of information stored in databases if an unauthorized person retrieves it (a) i and ii (b) ii and iii (c) iii and iv (d) i and iv 13.3.12 Encryption can be done (a) only on textual data (b) only on ASCII coded data (c) on any bit string (d) only on mnemonic data 13.3.13 By applying permutation (31254) and substitution by 5 characters away from current character (A Æ F , B Æ G etc..) the following string ABRACADABRA becomes (a) FGWCAAADRBF (b) RABCAAADRBF (c) WFGHFFFIWGF (d) None of the above

13.3.14 The following ciphertext was received. The plaintext was permuted using permutation (34152) and substitution. Substitute character by character +3 (A Æ D, etc). The plain text after decryption is: Cipher text : PDLJDLXHVQC (a) MAIGAIUESNZ (b) IAMAGENIUSZ (c) LDPDJHPLXVZ (d) IAMAGENIUSC 13.3.15 By symmetric key encryption we mean (a) one private key is used for both encryption and decryption (b) private and public key used are symmetric (c) only public keys are used for encryption (d) only symmetric key is used for encryption 13.3.16 The acronym DES stands for (a) Digital Evaluation System (b) Digital Encryption Standard (c) Digital Encryption System (d) Double Encryption Standard 13.3.17 DES works by using (a) permutation and substitution on 64 bit blocks of plain text (b) only permutations on blocks of 128 bits (c) exclusive ORing key bits with 64 bit blocks (d) 4 rounds of substitution on 64 bit blocks with 56 bit keys 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.3.19 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.3.20 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.3.21 Triple 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.3.22 Triple DES (i) is a symmetric key encryption method (ii) guarantees excellent security (iii) is implementable as a hardware VLSI chip (iv) is public key encryption method with three keys. 13.3.23 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 13.3.24 Public key system is useful because (a) it uses two keys (b) there is no key distribution problem as public key can be kept in a commonly accessible database (c) private key can be kept secret (d) it is a symmetric key system 13.3.25 In public key encryption if A wants to send an encrypted message to B (a) A encrypts message using his private key (b) A encrypts message using B’s private key (c) A encrypts message using B’s public key (d) A encrypts message using his public key

13.3.26 In public key encryption system if A encrypts a message using his private key and sends it to B (a) if B knows it is from A he can decrypt it using A’s public key (b) Even if B knows who sent the message it cannot be decrypted (c) It cannot be decrypted at all as no one knows A’s private key (d) A should send his public key with the message 13.3.27 Message can be sent more securely using DES by (a) encrypting plain text by a different randomly selected key for each transmission (b) encrypting plain text by a different random key for each message transmission and sending the key to the receiver using a public key system (c) using an algorithm to implement DES instead of using hardware (d) designing DES with high security and not publicizing algorithm used by it 13.3.28 DES and public key algorithm are combined (i) to speed up encrypted message transmission (ii) to ensure higher security by using different key for each transmission (iii) as a combination is always better than individual system (iv) as it is required in e-Commerce (a) i and ii (b) ii and iii (c) iii and iv (d) i and iv 13.3.29 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.3.30 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.3.31 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.3.32 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 13.3.33 While sending a signed message, a sender (a) sends message key using public key encryption using DES and hashed message using public key encryption (b) sends message using public key encryption and hashed message using DES (c) sends both message and hashed message using DES (d) sends both message and hashed message using public key encryption 13.3.34 The responsibility of a certification authority for digital signature is to authenticate the (a) hash function used (b) private keys of subscribers (c) public keys of subscribers (d) key used in DES 13.3.35 Certification of Digital signature by an independent authority is needed because (a) it is safe (b) it gives confidence to a business (c) the authority checks and assures customers that the public key indeed belongs to the business which claims its ownership (d) private key claimed by a sender may not be actually his

LEARNING UNIT 4 13.4.1 The Secure Electronic Transaction protocol is used for (a) credit card payment (b) cheque payment (c) electronic cash payments (d) payment of small amounts for internet services 13.4.2 In SET protocol a customer encrypts credit card number using (a) his private key (b) bank’s public key (c) bank’s private key (d) merchant’s public key 13.4.3 In SET protocol a customer sends a purchase order (a) encrypted with his public key (b) in plain text form (c) encrypted using Bank’s public key (d) using digital Signature system 13.4.4 One of the problems with using SET protocol is (a) the merchant’s risk is high as he accepts encrypted credit card (b) the credit card company should check digital signature (c) the bank has to keep a database of the public keys of all customers (d) the bank has to keep a database of digital signatures of all customers 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.6 In electronic cheque payments developed, it is assumed that most of the transactions will be (a) customers to customers (b) customers to business (c) business to business (d) banks to banks

13.4.7In cheque payment protocol, the purchase order form is signed by purchaser using (a) his public key (b) his private key (c) his private key using his signature hardware (d) various public 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 13.4.9 In NetBill’s protocol for small payments for internet services (i) Key to decrypt information is sent to customer by NetBill only when there is enough amount in debit account (ii) The vendor supplies the key to NetBill server when he receives payment (iii) Checksum of encrypted information received by customer is attached to his payment order (iv) Vendor does not encrypt information purchased by customer (a) i, ii (b) i, ii, iii (c) i, ii, iii, iv (d) i, ii, iv 13.4.10 In Electronic cash payment (a) a debit card payment system is used (b) a customer buys several electronic coins which are digitally signed by coin issuing bank (c) a credit card payment system is used (d) RSA cryptography is used in the transactions 13.4.11 In Electronic cash payment (i) a customer withdraws “coins” in various denominations signed by the bank (ii) the bank has a database of issued coins (iii) the bank has a database of spent coins (iv) the bank cannot trace a customer (a) i, ii (b) i, ii, iii (c) i, ii, iii, iv (d) ii, iii, iv

KEY TO OBJECTIVE QUESTIONS 13.1.1 13.1.7 13.2.5 13.2.11 13.3.6 13.3.12 13.3.18 13.3.24 13.3.30 13.4.1 13.4.7

d a d b b c c b b a c

13.1.2 c 13.1.8 c 13.2.6 a 13.3.1 d 13.3.7 b 13.3.13 c 13.3.19 c 13.3.25 c 13.3.31 c 13.4.2 b 13.4.8 d

13.1.3 13.2.1 13.2.7 13.3.2 13.3.8 13.3.14 13.3.20 13.3.26 13.3.32 13.4.3 13.4.9

a c b c c b b a b d b

13.1.4 c 13.2.2 a 13.2.8 c 13.3.3 a 13.3.9 b 13.3.15 a 13.3.21 a 13.3.27 b 13.3.33 a 13.4.4 c 13.4.10 b

13.1.5 13.2.3 13.2.9 13.3.4 13.3.10 13.3.16 13.3.22 13.3.28 13.3.34 13.4.5 13.4.11

c b a c c b b a c a b

13.1.6 a 13.2.4 a 13.2.10 b 13.3.5 b 13.3.11 d 13.3.17 a 13.3.23 b 13.3.29 c 13.3.35 c 13.4.6 c

System Analysis and Design / Electronic Commerce

Motivation

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

V. Rajaraman/IISc. Bangalore

//V1/July 04/1

MODULE 13

ELECTRONIC COMMERCE Learning Units 13.1 What is E-Commerce? 13.2 Electronic Data Interchange 13.3 Security of E-Commerce 13.4 Payment in E-Commerce

Systems Analysis And Design

©

V. Rajaraman

Learning Goals ƒ The basics of Electronic Commerce abbreviated as e-commerce ƒ The advantages and disadvantages of e-commerce ƒ Architecture of e-commerce systems ƒ Electronic Data Interchange in e-commerce ƒ The need for security in e-commerce transactions and how to ensure it ƒ How Electronic payment schemes work in e-commerce.

Systems Analysis And Design

© V. Rajaraman

1 of 92

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.

Systems Analysis And Design

© V. Rajaraman

2 of 92

Motivation (Contd) ƒ 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 dayto-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 Systems Analysis And Design

© V. Rajaraman

3 of 92

What Is Electronic 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)

13.1.1

Systems Analysis And Design

© V. Rajaraman

4 of 92

E-commerce Applications-example •RETAIL STORES - Books, Music •AUCTION SITES •COOPERATING BUSINESSES –Placing orders,paying invoices etc. •ELECTRONIC BANKING •BOOKING TICKETS - TRAINS, CINEMA, AIRLINES •ELECTRONIC PUBLISHING •FILLING TAX RETURNS WITH GOVERNMENT DEPT.

13.1.2

Systems Analysis And Design

© V. Rajaraman

5 of 92

Business To Business E-commerce LAN of buisness2

Public switched telephone network

LAN of buisness1

PSTN or LEASED LINE

Vendor Local computers

Purchase store accounts 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

13.1.3

Systems Analysis And Design

© V. Rajaraman

6 of 92

B2B E-commerce (Contd) •Business 1 can compare delivery note against order -both are in computer readable form •Discrepancy note(if any) can be immediately sent to the vendor •Business 1 can carry out all local transactions using its LAN •Local transactions are inventory update by stores - advice to accounts to pay for goods taken into stock • Accounts can make payment electronically to Vendor

13.1.4

Systems Analysis And Design

© V. Rajaraman

7 of 92

Implementing B2B E-commercerequirements 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

13.1.5

Systems Analysis And Design

© V. Rajaraman

8 of 92

Steps In B2C E-commerce 1. Customer uses a browser and locates vendor or he has vendor's web page address 2. Sees Vendor's web page listing of items available, prices etc 3. Customer selects item and places order. Order may include credit card details or may be cash on delivery 4. Vendor checks with credit card company customer’s credit 5. Credit card company OKs transaction 6. Vendor acknowledges Customer’s order and gives details of delivery date, mode of transport, cost etc 7. Vendor orders with distributor who ships item to vendor's warehouse from where item supplied to customer 8. Customer's credit card company debits his account, credits vendor's account and sends bill to customer for payment 13.1.6

Systems Analysis And Design

© V. Rajaraman

9 of 92

Customer to Customer E-Commerce

Customer1

Customer2

Internet

Wants to buy Item 1

Wants to sell Item 1 Broker’s website •Advertises - "for sale"

•Brings together buyer and seller •Transports items •Collects fee from both Seller &Buyer

13.1.7

Systems Analysis And Design

© V. Rajaraman

10 of 92

Advantages Of E-commerce 1. Buying/selling a variety of goods and services from one's home or business 2. Anywhere, anytime transaction 3. Can look for lowest cost for specific goods or service 4. Businesses can reach out to worldwide clients - can establish business partnerships

13.1.8

Systems Analysis And Design

© V. Rajaraman

11 of 92

Advantages Of E-commerce 5. Order processing cost reduced 6. Electronic funds transfer faster 7. Supply chain management is simpler, faster, and cheaper using e-commerce - Can order from several vendors and monitor supplies. - Production schedule and inventory of an organization can be inspected by cooperating supplier who can in-turn schedule their work.

13.1.9

Systems Analysis And Design

© V. Rajaraman

12 of 92

Disadvantages Of E-commerce 1. Electronic data interchange using EDI is expensive for small businesses 2. Security of internet is not very good - viruses, hacker attacks can paralise e-commerce 3. Privacy of e-transactions is not guaranteed 4. E-commerce de-personalises shopping.People go shopping to meet others - window shop and bargain

13.1.10 Systems Analysis And Design

© V. Rajaraman

13 of 92

E-commerce System Architectures LOGICAL LAYERS

SERVICES IN LAYER

Application layer

B2B,B2C,C2C

Middleman services

Hosting services,value added nets payment services,Certificates

Secure messaging

Encryption,EDI,Firewalls

World wide web services Logical network

HTTP,HTML,XML,OLE Software agents Intranet,internet,extranet

Physical network

PSTN,LAN,Bridges,routers

Layered architecture 13.1.11 Systems Analysis And Design

© V. Rajaraman

14 of 92

Electronic Data Interchange •Computer readable forms for business documents such as invoices, purchase orders, delivery notes needed in B2B ecommerce so that e-documents can be exchanged. •Essential to eliminate manual data entry which is error prone • Essential to agree on common formats for commonly used forms. •Electronic data interchange (EDI) standard gives specifications for commonly used standard business forms •Currently two standards are available for EDI forms • It is possible to adapt these standards for documents which use XML for specification. 13.2.1

Systems Analysis And Design

© V. Rajaraman

15 of 92

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.

13.2.2

Systems Analysis And Design

© V. Rajaraman

16 of 92

EDI Transactions in B2B E-commerce •Cooperating businesses agree on EDI standard •Programs needed to translate data received in EDI format to a form needed by the application program •Method of sending/receiving data between businesses to be agreed on - is it PSTN, Extranet or VAN (value added network) service ? •Important to ensure reliable, guaranteed and secure receipt of electronic documents by intended receiver

13.2.3

Systems Analysis And Design

© V. Rajaraman

17 of 92

EDI Using Value Added Network Service •VAN provides post box for all subscribers •Guarantees delivery •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 •Disadvantage high cost. Used by large businesses - may not be cost-effective for smaller businesses 13.2.4

Systems Analysis And Design

© V. Rajaraman

18 of 92

EDI Using Internet • 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 pagecooperating business can use a DTD to interpret XML documents. •Use MIME (multipurpose internet mail extension) to attach EDI forms to e-mail messages

13.2.5

Systems Analysis And Design

© V. Rajaraman

19 of 92

EDI Using Internet • Can use Simple Mail Transfer Protocol(SMTP) of internet • If secure transmission needed use S/MIME (Security enhanced MIME) which uses encryption and digital signature –(We will describe encryption and digital signature later in this module) • If very long document or many documents are to be sent together File Transfer Protocol (FTP) may be more appropriate.

13.2.6

Systems Analysis And Design

© V. Rajaraman

20 of 92

EDI Standard •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

13.2.7

Systems Analysis And Design

© V. Rajaraman

21 of 92

Security In E-commerce •Transactions between organizations take place in many e-commerce applications using the Internet •Internet is widely accessible and insecure as eavesdropping is possible •Need to protect company confidential information from snoopers •We need to protect a company's network from unauthorised entry both hardware and software techniques used •When an organization receives a message it has to be sure from whom it came and whether the message is authentic and not changed by an unauthorised person •We thus need a digital signature which can be used in a court of law 13.3.1

Systems Analysis And Design

© V. Rajaraman

22 of 92

Network Security Using Firewall •Firewall is a security device deployed at the boundary of an organization' s network to protect it from unauthorised external access •It links an organization's intranet to the internet and restricts the type of traffic that it will pass, thus providing security •Simple firewalls may be implemented in some routers, called packet filtering firewalls, they pass only some packets based on simple specified criteria such as -Type of access (such as email, ftp, telnet as determined by TCP port number) -Direction of traffic -Source or destination IP address -Time of day 13.3.2

Systems Analysis And Design

© V. Rajaraman

23 of 92

Proxy Application Gateway •Primarily for allowing members of an organization on corporate intranet to access internet facility ensuring organizational discipline and security •Proxy application program running on a firewall machine is the one which acts on behalf of all members of an organization wanting to use the internet •This program monitors all requests - allows access to only designated addresses outside, limits use of certain browsers and disallows use of some protocols with known security holes •Proxy application program may also be allowed to run on some user's machine who have authorization for internet use

13.3.3

Systems Analysis And Design

© V. Rajaraman

24 of 92

Hardened Firewalls With Proxy Application Gateway •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

13.3.4

Systems Analysis And Design

© V. Rajaraman

25 of 92

Hardened Firewalls With Proxy Application Gateway •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

13.3.5

Systems Analysis And Design

© V. Rajaraman

26 of 92

Data Encryption With Secret Keys •Data sent via a public network may be accessed and used by unauthorized persons •Thus necessary to scramble it so that even if one accesses it, it cannot be understood •Similarly data stored in data bases accessible via internet should be scrambled •Method of scrambling known as encryption •Method of unscrambling known as decryption 13.3.6

Systems Analysis And Design

© V. Rajaraman

27 of 92

Plain Text And Ciphertext •Plain text is data in its natural form •Encryption is taking data in any form(Text, Audio,Video etc.) and transforming it to another form which cannot be understood •Transformed data is known as cryptogram or cipher text

13.3.7

Systems Analysis And Design

© V. Rajaraman

28 of 92

Example Text Encryption Start plaintext

THIS IS A MESSAGE X

Block plaintext (5character blocks)

THISI SAMES SAGEX

Transpose characters with permutation (4 1 2 5 3)

4Æ1

STHII ESASM ESAXG

Substitute character by the one 4 letters away

WXLMM IWEWQ IXEBK

(eg AÆE,ZÆD) Cipher text This is an example of two transformations - permutation followed by substitution The keys are permutation function and substitution function

13.3.8

Systems Analysis And Design

© V. Rajaraman

29 of 92

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. 13.3.9

Systems Analysis And Design

© V. Rajaraman

30 of 92

Symmetric Encryption • 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 very difficult. • Advantage of symmetric key is easy and fast to transform plain text to cipher text.

13.3.10 Systems Analysis And Design

© V. Rajaraman

31 of 92

Digital Encryption Standard DES - Proposed by IBM in 1975 Standardised by US Govt in 1977 Reasonably secure It is a combination of permutation and substitution on blocks of 64 bits. A message is broken up into 64 bit blocks and each block is separately encrypted.

13.3.11 Systems Analysis And Design

© V. Rajaraman

32 of 92

Digital Encryption Standard #General idea used in DES M = PLAINTEXT 01101100

11011000

11011010

K = KEY

10101111

00101100

01011011

E= M+K

11000011

11110100

10000001 encryption

M= E + K

01101100

11011000

11011010 decryption

See simplicity of Transformation using Exclusive OR

13.3.12 Systems Analysis And Design

© V. Rajaraman

33 of 92

Digital Encryption Standard Algorithm 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. 13.3.13 Systems Analysis And Design

© V. Rajaraman

34 of 92

Digital Encryption Standard Algorithm 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

13.3.14 Systems Analysis And Design

© V. Rajaraman

35 of 92

Digital Encryption Standard Algorithm • 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. 13.3.15 Systems Analysis And Design

© V. Rajaraman

36 of 92

Digital Encryption Standard Algorithm • The encryption process uses simple binary operations. They can thus be realised in hardware as an integrated circuit chip. • DES chips are inexpensive. Key externally fed. • The complex encryption algorithm is explained using two block diagrams in the next two transparencies.

13.3.16 Systems Analysis And Design

© V. Rajaraman

37 of 92

64 bit block of plain text

IP

R O U N D 1 R O U N D 2

L1

Initial Permutation Permute

R1 K1

F

+ L2

L1 +

F(R1,K1) Permute

K2

F

+ . . .

L16

L2 +

R3

Left circular shift

P1

R2

L3 .

56 bit key

DES Encryption Block Diagram

F(R2,K2) K16

P2 . . . . P16

. . . . .

Left circular shift

Left circular shift

+

R16

IP-1

64 bit Cipher text

Inverse of Initial permutation (F is a complex function involving two table look ups and dropping bits of K1 to get 32 bits for bitwise Exclusive OR of L1 and F(K1,R1) )

38 of 92

Details of One Round of DES Encryption 64 bit Plain Text

56-bit key

Permute 32 bits 32 bits L1 R1

Permute 28 bits 28 bits KL KB

Left Shifts

48 bits

Permute and Contract

L1

Round1

F(R1,K1)

K1

+ L2

R2 . . . .

KL

KB

For next key

Repeat 15 more times

13.3.18 Systems Analysis And Design

© V. Rajaraman

39 of 92

DES Chip

64 Input block Key

DES CHIP

64

Encrypted Block

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

13.3.19 Systems Analysis And Design

© V. Rajaraman

40 of 92

DES - Discussion • Cryptanalysis is technique for breaking a code, given 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.

13.3.20 Systems Analysis And Design

© V. Rajaraman

41 of 92

DES - Discussion • 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.

13.3.21 Systems Analysis And Design

© V. Rajaraman

42 of 92

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 • Remember that in DES Decryption of encrypted plain text with a different key is almost same as another encryption. •This is true as encryption and decryption use the same algorithm

13.3.22 Systems Analysis And Design

© V. Rajaraman

43 of 92

Triple DES • To decrypt cipher text we reverse the operations. Plain text = Dk1[Ek2 [Dk3[Cipher Text]]] BLOCK DIAGRAMS OF TRIPLE DES Encryption K1

Plain text (64 bit block)

E

K2

D

K3

Cipher text (64bit block)

E

Decryption K3

Cipher text

E

K2

D

13.3.23 Systems Analysis And Design

K1

E © V. Rajaraman

Plain text

44 of 92

Triple DES(Contd) • 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 data encrypted using single DES hardware.In this case K3=K2=K1 (Single key used) (See block diagram)

13.3.24 Systems Analysis And Design

© V. Rajaraman

45 of 92

Triple DES(Contd) • 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.

13.3.25 Systems Analysis And Design

© V. Rajaraman

46 of 92

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 completely specified and easily understood. • Security must reside in key – Not in algorithm

13.3.26 Systems Analysis And Design

© V. Rajaraman

47 of 92

Requirements of Symmetric Key Cryptography Algorithm(NIST) –Advanced Encryption System(AES) • Must be available for all users • Adaptable for use in diverse applications e.g.credit cards • Implementable economically in electronic devices • Must be efficient to use as both software and hardware • Must allow one to validate it.

13.3.27 Systems Analysis And Design

© V. Rajaraman

48 of 92

Requirements of Symmetric Key Cryptography Algorithm(NIST) –Advanced Encryption System(AES) • 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. • In October 2000 it announced the selection of an algorithm – called Rijin dael(Pronounce RAIN DOLL) as new Advance Encryption Standard (AES) •Details may be found in www.nist.gov/aes 13.3.28 Systems Analysis And Design

© V. Rajaraman

49 of 92

Public Key Encryption •In Private Key Encryption transmission of key without compromising not easy •It is necessary to assign different private key to each business partner. When this is done a directory of keys should be kept which should be secret.This is difficult. •Only secure way is to change the private key every time a message is sent •Public Key Encryption eliminates the key distribution problem •There is a pair of keys for each organization - A Private Key and its Public Key •If A wants to send message to B, A encrypts the message with B's Public Key When message is received by B he decrypts it with his Private Key

A

Plain text

ENCRYPT

DECRYPT Cipher text

B’s Public Key

SENDER A 13.3.29 Systems Analysis And Design

Plain text

B

B’s Private Key

RECEIVER B

© V. Rajaraman

50 of 92

RSA Code Details.”R” Wants To Find His Public And Private Keys 1. Pick large primes p and q. Let n =p * q 2 Find ø = (p-l)*(q-l) 3 Find e relatively prime to Ø, i.e. gcd(ø,e)=1; 1<e<ø. {e,n} is R's Public Key 4 Find a number d which satisfies relation (d * e) mod (ø) =1 {d,n} is R’s Private key

13.3.30 Systems Analysis And Design

© V. Rajaraman

51 of 92

RSA Code Details.”R” Wants To Find His Public And Private Keys 5. Let plain text = t. Encrypt t using R’s public key. Encryption = te (mod n) = c (cipher text) 6. Decryption

cd (mod n) =t

(Both n and e should be known to encrypt.Similarly both n and d should be known to decrypt)

13.3.31 Systems Analysis And Design

© V. Rajaraman

52 of 92

Example Of RSA Use •

This example is a toy example to illustrate the method.In practice the primes p and q will be very large – each at least 300 digits long to ensure security.

RSA Algorithm 1. Pick as prime numbers p=3,q=11 n = p * q=33 Note : The message to be encrypted should be smaller than 33.If we do letter by letter encryption of English alphabets (A to Z Æ 1 to 26) this is OK 2. Ø = (p-1) x (q-1) = 2 x 10 = 20 13.3.32 Systems Analysis And Design

© V. Rajaraman

53 of 92

Example Of RSA Use RSA Algorithm (Contd) 3. Pick a number relatively prime to 20. We pick 7. The Public key of R = {7,33} 4. To pick private key of R find d from relation (d x e)mod(ø) = 1 (d x 7) mod (20) =1 This gives d =3 Therefore, the private key of R = {3,33}

13.3.33 Systems Analysis And Design

© V. Rajaraman

54 of 92

Applying RSA Algorithm 1. Let the message be CODE If we use code C=3, O=14,D=4,E=5 The message is 3,14,4,5 2. We will encrypt one letter at a time Thus cipher of plain text 3 is 3e mod (n) =37 mod(33) 37 mod (33) =2187 mod (33)=9 (14)7 mod (33) = 105413504mod(33)=20 (4)7 mod (33) =16384 mod (33) =16 (5)7 mod (33) =78125 mod(33) = 14 3. Thus cipher text = 9,20,16,14 13.3.34 Systems Analysis And Design

© V. Rajaraman

55 of 92

Applying RSA Algorithm 4. Decryption : cd mod (n) d=3,n=33 93 mod (33) = 729 mod(33) = 3 203 mod(33) = 8000 mod(33)=14 163 mod(33) = 4096 mod(33) =4 143 mod(33) = 2744 mod(33) =5 We see that we get the original text 3,14,4,5

13.3.35 Systems Analysis And Design

© V. Rajaraman

56 of 92

Discussion on RSA • The security RSA encryption is dependent on the fact that factorising a large prime number to its factors is very difficult. • RSA algorithm is symmetric.In other words if a plain text is encoded by the private key of S, the sender, it can be decrypted using the public key of R, the receiver (We will find later that this symmetry property is used in creating digital signature) •Example using S’s keys S’s Private key = {3,33} S’s Public key = {7,33}

13.3.36 Systems Analysis And Design

© V. Rajaraman

57 of 92

Discussion on RSA • 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 •Decrypting with S’s Public key we get (5)7 mod (33) =78125 mod(33) ={(2367 x 33) + 14} mod (33) =14

13.3.37 Systems Analysis And Design

© V. Rajaraman

58 of 92

DISCUSSION – RSA Vs DES •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

13.3.38 Systems Analysis And Design

© V. Rajaraman

59 of 92

DISCUSSION – RSA Vs DES •DES computationally simple-implemented in hardware thus very fast •Each communication between two businesses can use a different key –provided key is securely exchanged •If key can be sent separately encrypted using RSA, then a recipient can use this to decrypt DES encrypted message. •We look next at combining DES and RSA.

13.3.39 Systems Analysis And Design

© V. Rajaraman

60 of 92

Combining RSA And DES KEY

SENDER PLAIN TEXT

ENCRYPT

DECRYPT

Public key Of the receiver

Private key Of the receiver

DES

DES

RECOVERED KEY

RECEIVER PLAIN TEXT

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. 13.3.40 Systems Analysis And Design

© V. Rajaraman

61 of 92

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" 13.3.41 Systems Analysis And Design

© V. Rajaraman

62 of 92

Digital Signature •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"

13.3.42 Systems Analysis And Design

© V. Rajaraman

63 of 92

Digital Signature (Contd) 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.

13.3.43 Systems Analysis And Design

© V. Rajaraman

64 of 92

Signing A Message Using Digital Signature R’s Private key

R’s Public key KE

K

ENCRYPT

DECRYPT K

K

SENDER

M

ENCRYPT

Forgery

ME

DECRYPT

MR

RECEIVER

no DS

Hash

ENCRYPT

DECRYPT

H

H

S’s Private key

Hash

Equal

S’s Public key

HR yes

Signature OK Accept M 13.3.44 Systems Analysis And Design

© V. Rajaraman

65 of 92

Certificate Authority For Digital Signature •As the hashed message in Digital Signature system is decrypted using senders public key,this key must be certified as belonging to sender by an independent authority •Certification needed to ensure authenticity of public keys of organizations as public key is used to verify signature •Certification authority keeps data base of public keys of organizations participating in e-commerce after verifying their credentials. •Potential business partners can authenticate public keys by sending request to certifying authority who certifies after receiving a fee for his services 13.3.45 Systems Analysis And Design

© V. Rajaraman

66 of 92

Electronic Payment Systems • In any commercial transaction payment is an integral part for goods supplied. •Four types of payments may be made in e-commerce they are •Credit card payments •Electronic cheque payments •Micro or small payments for internet based services such as music download. •Electronic-cash payments Each of these requires a different system of payment. We will examine first credit card payments. 13.4.1

Systems Analysis And Design

© V. Rajaraman

67 of 92

Review Of Manual Credit Card Payment Four parties are invoked in credit card payments. They are: • Customer having a credit card • Merchant accepting credit cards (such as VISA, MASTER CARD etc) • Bank which issues credit cards to customers and collects payments from customers

13.4.2

Systems Analysis And Design

© V. Rajaraman

68 of 92

Review Of Manual Credit Card Payment •Acquirer which is financial institution that establishes an account with a merchant,validates credit card information sent electronically by merchant and authorises sale based on customer’s credit status. • Acquirer accepts credit cards of several card companies and guarantees payment to merchants. •Acquirer gets reimbursed by bank issuing credit card.

13.4.3

Systems Analysis And Design

© V. Rajaraman

69 of 92

Sequence Of Transactions In Manual Credit Card Payment Step 1: Customer presents credit card after purchase. Merchant swipes it on his special phone and enters amount

Step 2: Data from merchant’s terminal goes to acquirer via a private telephone line

Step 3: Acquirer checks with the issuing bank validity of card and credit-available

13.4.4

Systems Analysis And Design

© V. Rajaraman

70 of 92

Sequence Of Transactions In Manual Credit Card Payment Step 4: Acquirer authorizes sale if all OK and sends approval slip which is printed at merchant’s terminal.

Step 5: Merchant takes customer’s signature on the slip-verifies it with the signature on card and delivers the goods.

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.

13.4.5

Systems Analysis And Design

© V. Rajaraman

71 of 92

Block Diagram Of Steps In Credit Card Transaction Step1

Customer

Merchant Step5 Step 4

Step2 Step6

Acquirer

Step3

Issuing bank

Step3 Step6

Steps correspond to that given in previous 2 PPT’s 13.4.6

Systems Analysis And Design

© V. Rajaraman

72 of 92

Credit Card In E-commerce Main Problems 1. Main Problem is: if a merchant had only a web presence, a Customer needs to be reassured that the merchant is genuine. 2. Customers Signature cannot be physically verified.Customer needs electronic signature. 3. Secrecy of credit card number has to be ensured. 4. Dispute settlement mechanism must be worked out.

13.4.7

Systems Analysis And Design

© V. Rajaraman

73 of 92

Secure Electronic Transaction Protocol • •

Standardised credit card payments in e-commerce by major card companies such as Visa, MasterCard etc. To use SET protocol it is assumed that 1. Each party involved in e-commerce transaction has a public and private key.A public key encryption is used. 2. All parties have their public keys certified. 3. A standard hashing algorithm is used to create message digest for signature verification.

13.4.8

Systems Analysis And Design

© V. Rajaraman

74 of 92

Secure Electronic Transaction Protocol Main Features •

Customers credit card number is not revealed to a merchant. It is revealed only to the acquirer who authorises payment.



Purchase invoice details are not revealed to the acquirer.Only the credit card number and total amount are revealed to him



Purchase invoice + credit card number is digitally signed by the customer.In case of a dispute an arbitrator can use this to settle the dispute. (Computer protocol runs to 262 pages and may be found in www.ibm.com/redbook/SG244978)

13.4.9

Systems Analysis And Design

© V. Rajaraman

75 of 92

Secure Electronic Transaction Protocol DUAL SIGNATURE SCHEME • Dual signature scheme is an innovation in SET protocol Steps followed in the protocol are: 1. Customer purchase information has 3 parts (i) Purchase Order (PO) (ii) Credit Card Number(CCN) (iii) Amount to be paid 2. Merchant should know (PO + Amount)=POA 3. Acquirer should know (CCN+Amount)=CCA 13.4.10 Systems Analysis And Design

© V. Rajaraman

76 of 92

Secure Electronic Transaction Protocol 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) 7. Hash (POD||CCD) giving PPD

13.4.11 Systems Analysis And Design

© V. Rajaraman

77 of 92

Secure Electronic Transaction Protocol 8. PPD is encrypted using Private key of customer.This is customer’s digitally signed purchase order DS = Encrypt (PPD) with CPRK CPRK is Private key of customer. This is sent to merchant by customer.DS is called Dual Signature as a private key is used to sign two separate digests concatenated together. 9. POA separately encrypted by customer using merchant’s public key and sent to merchant 10. Merchant decrypts it using his private key.He thus gets Purchase order +Amount 13.4.12 Systems Analysis And Design

© V. Rajaraman

78 of 92

Secure Electronic Transaction Protocol 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. 13. Merchant can compute H(POD||CCD) If H(POD||CCD)=PPD,then customer’s signature is OK. 14. Merchant forwards to acquirer CCA,POD,DS each separately encrypted using acquirer’s public key. 13.4.13 Systems Analysis And Design

© V. Rajaraman

79 of 92

Secure Electronic Transaction Protocol 15. Acquirer’s forwards to bank. 16.Bank finds CCN and Amount.Verifies balance amount.Bank also verifies customer’s digital signature using CCD,POD and DS.If all OK acquirer is informed. 17. Acquirer OK’s transaction to merchant 18. Merchant supplies item.Gets payment from acquirer.Bank collects from customer.

13.4.14 Systems Analysis And Design

© V. Rajaraman

80 of 92

Dual Signature System To Merchant C U S T O M E R

P.O+Amount

POA

Hash

POD Concatenate

C.C No + Amount

CCA

Hash

CCD

Hash POD||CCD

To Bank

PPD

Encrypt

Private key Of customer CPRK

DS Dual signature

POA: (Purchase Order + Amount) POD: Purchase Order Digest CCA: (Credit card + Amount) CCD: (Credit card + Amount)Digest || : Concatenation operator which strings together POD and CCD PPD : Purchase Payment Digest CPRK: Private Key of Customer

13.4.15 Systems Analysis And Design

© V. Rajaraman

81 of 92

Secure Electronic Transaction Protocol - Step1 : [(POA)EM + (CCA)EB + CCD +DS] to Merchant - Step2 : Merchant sends [(CCA)EB + DS + POD] to Acquirer - Step3 : Acquirer sends (CCA)EB + DS +POD to Bank. - Bank finds (CC No. + amount) sees if OK Computes H(CCD||POD) Decrypts DS with customer’s public key If (DS)CPK = H(CCD || POD) Signature verified - Step4 : OK to acquirer if credit and signature OK - Step5 : Ok to Merchant Merchant finds H(H(POA) || CCD)=PPD Decrypts DS with public key of customer.If match signature verified. - Step6 : Sends delivery details - Step7 : Bill to customer 13.4.16 Systems Analysis And Design

© V. Rajaraman

82 of 92

Secure Electronic Transaction Protocol Merchant Step 1

Step2

Step5

Step6

Customer

Acquirer

Step3

Bank

Step4 Step 7

13.4.17 Systems Analysis And Design

© V. Rajaraman

83 of 92

Secure Electronic Transaction Protocol Step1: Customer fills Purchase order, amount and credit card number in his PC. A software in PC strips it into two parts Purchase Order + Amount (POA), Credit Card No. + Amount(CCA) POA is encrypted using merchants. Public key and CCA with bank’s public key.These are sent with customer’s public key certificates, CCD and DS. Merchant verifies DS. Step2: Merchant forwards to acquirer DS and CCD (These are encrypted using acquirer’s public key) Step3: Acquirer forwards to bank. Bank decrypts CCA with its private key.Checks validity of credit card and balance. If OK informs acquirer

13.4.18 Systems Analysis And Design

© V. Rajaraman

84 of 92

Secure Electronic Transaction Protocol Step4: Acquirer OK’s transaction to merchant and credits merchant's account. Step5: Merchant accepts customer’s order and proceeds to dispatch items. Step6: At the end of the month bank sends bill to customer. (All these done by clicks of mouse button)

13.4.19 Systems Analysis And Design

© V. Rajaraman

85 of 92

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

Debit Advice

Credit Advice

Cheque Signature Certificate

Deposit slip

Secure Envelope Purchaser’s Bank

Clearing House

Vendor’s Bank Deposit Cheque

13.4.21 Systems Analysis And Design

Cheque Signature Certificates Endorsement Certificate

© V. Rajaraman

87 of 92

Payments Of Small Amounts On Internet NETBILL'S PROPRIETARY SYSTEM •Customer charged only when information delivered •Vendor guaranteed payment when information delivered •Netbill is the intermediary 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 13.4.22 Systems Analysis And Design

© V. Rajaraman

88 of 92

Paying for Small Internet Transactions 1 2 3 4

Customer

1. 2. 3. 4. 5. 6. 7.

Request for information. Quote Order Encrypted Text Customer Bill+key Ok to vendor Key to customer

Customer’s Bank

Vendor 7

5

6 Net Bill’s Server

Credit in Account

Net Bill’s Server

13.4.23 Systems Analysis And Design

Batch Payment

© V. Rajaraman

Vendor’s Bank

89 of 92

Electronic Cash •Cash for small payments •Cash preserves anonymity •Cash should not be traceable We will discuss only traceable cash payments STEPS 1.Customer withdraws coins in various denominations signed by bank STRUCTURE------> serial no, denomination, signature of bank Bank stores issued coins copy 2.Customer pays vendor using signed coins 3.Bank checks whether it is current or spent 4.If current it authorises dispatch of goods and credits vendor account with electronic coins 13.4.24 Systems Analysis And Design

© V. Rajaraman

90 of 92

Electronic Cash(contd) • Cheaper than credit card transaction • DES normally used for these transaction as it is cheap and amounts involved is small

13.4.25 Systems Analysis And Design

© V. Rajaraman

91 of 92

Electronic Cash Payment Amt 10 5

ID 1568 6789

Signature

5

Customer

Vendor 2

86ABC 86ABC 1

4 Yes

3 OK?

Bank 1. 2. 3. 4. 5.

Withdraw Pay Check if OK Replying OK Accept order

13.4.26 Systems Analysis And Design

Spent Amt

. .

© V. Rajaraman

Coins ID

. .

92 of 92

MODULE 13

ELECTRONIC COMMERCE Contents

1. MOTIVATION AND LEARNING GOALS

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 At the end of this module you will know: ƒ The basics of Electronic Commerce abbreviated as e-commerce ƒ The advantages and disadvantages of e-commerce ƒ Architecture of e-commerce systems ƒ Electronic Data Interchange in e-commerce ƒ The need for security in e-commerce transactions and how to ensure it ƒ How Electronic payment schemes work in e-commerce.

LEARNING UNIT 1

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 •RETAIL STORES - Books, Music •AUCTION SITES •COOPERATING BUSINESSES –Placing orders, paying invoices etc. •ELECTRONIC BANKING •BOOKING TICKETS - TRAINS, CINEMA, AIRLINES •ELECTRONIC PUBLISHING •FILLING TAX RETURNS WITH GOVERNMENT DEPT.

Business To Business E-commerce

LAN of buisness2

Public switched telephone network

LAN of buisness1

PSTN or LEASED LINE Vendor Local computers

Purchase store accounts 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 •Business 1 can compare delivery note against order -both are in computer readable form •Discrepancy note(if any) can be immediately sent to the vendor(business 2) •Business 1 can carry out all local transactions using its LAN •Local transactions are inventory update by stores - advice to accounts to pay for goods taken into stock • Accounts can make payment electronically to Vendor

Implementing B2B E-commerce-requirements 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.

Steps In B2C E-commerce 1. Customer uses a browser and locates vendor or he has vendor's web page address 2. Sees Vendor's web page listing of items available, prices etc 3. Customer selects item and places order. Order may include credit card details or may be cash on delivery 4. Vendor checks with credit card company customer’s credit 5. Credit card company OKs transaction 6. Vendor acknowledges Customer’s order and gives details of delivery date, mode of transport, cost etc 7. Vendor orders with distributor who ships item to vendor's warehouse from where item supplied to customer 8. Customer's credit card company debits his account, credits vendor's account and sends bill to customer for payment.

Customer to Customer E-Commerce

Customer 1

Customer 2

Internet

Wants to buy Item 1

Wants to sell Item 1 Broker’s website

•Advertises - "for sale" •Brings together buyer and seller •Transports items •Collects fee from both Seller &Buyer

Advantages Of E-commerce 1. Buying/selling a variety of goods and services from one's home or business 2. Anywhere, anytime transaction 3. Can look for lowest cost for specific goods or service 4. Businesses can reach out to worldwide clients - can establish business partnerships 5. Order processing cost reduced 6. Electronic funds transfer faster 7. Supply chain management is simpler, faster, and cheaper using ecommerce - Can order from several vendors and monitor supplies. - Production schedule and inventory of an organization can be inspected by cooperating supplier who can in-turn schedule their work.

Disadvantages Of E-commerce 1. Electronic data interchange using EDI is expensive for small businesses 2. Security of internet is not very good - viruses, hacker attacks can paralise e-commerce 3. Privacy of e-transactions is not guaranteed 4. E-commerce de-personalises shopping. People go shopping to meet others - window shop and bargain E-commerce System Architectures LOGICAL LAYERS Application layer

SERVICES IN LAYER B2B,B2C,C2C

Middleman services

Hosting services, value added nets payment services, Certificates

Secure messaging

Encryption, EDI, Firewalls

World wide web services

HTTP, HTML, XML, OLE Software agents

Logical network

Intranet, internet, extranet

Physical network

PSTN, LAN, Bridges, routers Layered architecture

LEARNING UNIT 2 Electronic Data Interchange •Computer readable forms for business documents such as invoices, purchase orders, delivery notes needed in B2B e-commerce so that edocuments can be exchanged. •Essential to eliminate manual data entry, which is error prone •Essential to agree on common formats for commonly used forms. •Electronic data interchange (EDI) standard gives specifications for commonly used standard business forms •Currently two standards are available for EDI forms •It is possible to adapt these standards for documents which use XML for specification. 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. EDI Transactions in B2B E-commerce •Cooperating businesses agree on EDI standard. •Programs needed to translate data received in EDI format to a form needed by the application program. •Method of sending/receiving data between businesses to be agreed on - is it PSTN, Extranet or VAN (value added network) service? •Important to ensure reliable, guaranteed and secure receipt of electronic documents by intended receiver.

EDI Using Value Added Network Service 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

EDI Using Internet Cheaper method for use by small business is to use XML for EDI and email, 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 email messages. Can use Simple Mail Transfer Protocol (SMTP) of internet If secure transmission needed use S/MIME (Security enhanced MIME) which uses encryption and digital signature –(We will describe encryption and digital signature later in this module). If very long document or many documents are to be sent together File Transfer Protocol (FTP) may be more appropriate.

LEARNING UNIT 3

Security of E-Commerce Transactions between organizations take place in many e-commerce applications using the Internet. Internet is widely accessible and insecure as eavesdropping is possible. Hence, there is need to protect company confidential information from snoopers. We also need to protect a company's network from unauthorised entry. When an organization receives a message it has to be sure from whom it came and whether the message is authentic and not changed by an unauthorised person. We thus need a digital signature which can be used in a court of law. Network Security Using Firewall Firewall is a security device deployed at the boundary of an organization' s network to protect it from unauthorised external access. It links an organization's intranet to the internet and restricts the type of traffic that it will pass, thus providing security. Simple firewalls may be implemented in some routers, called packet filtering firewalls, they pass only some packets based on simple specified criteria such as -Type of access (such as email, ftp, telnet as determined by TCP port number) -Direction of traffic -Source or destination IP address -Time of day Proxy Application Gateway Proxy application program running on a firewall machine is the one which acts on behalf of all members of an organization wanting to use the internet. This program monitors all requests - allows access to only designated addresses outside, limits use of certain browsers and disallows use of some protocols with known security holes. Proxy application program may also be allowed to run on some user's machine who have authorization for internet use.

Hardened Firewalls With Proxy Application Gateway 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 Data Encryption With Secret Keys Data sent via a public network may be accessed and used by unauthorized persons. Thus it is necessary to scramble it so that even if one accesses it, it cannot be understood. Similarly data stored in data bases accessible via internet should be scrambled. Method of scrambling is known as encryption. Method of unscrambling is known as decryption. Plain Text And Ciphertext •Plain text is data in its natural form •Encryption is taking data in any form(Text, Audio,Video etc.) and transforming it to another form which cannot be understood •Transformed data is known as cryptogram or cipher text

Example Text Encryption

Start plaintext

THIS IS A MESSAGE X

Block plaintext (5character blocks)

THISI SAMES SAGEX

Transpose characters with

4Æ1

permutation (4 1 2 5 3)

STHII ESASM ESAXG

Substitute character by the one 4 letters away (eg AÆE,ZÆD)

WXLMM IWEWQ IXEBK

Cipher text This is an example of two transformations - permutation followed by substitution The keys are permutation function and substitution function

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 DES - Proposed by IBM in 1975 Standardised by US Govt in 1977 It is a combination of permutation and substitution on blocks of 64 bits. A message is broken up into 64 bit blocks and each block is separately encrypted.

#General idea used in DES M = PLAINTEXT 01101100 11011000 11011010 K = KEY 10101111 00101100 01011011 E= M⊕K 11000011 11110100 10000001 encryption M= E ⊕ K 01101100 11011000 11011010 decryption Digital Encryption Standard Algorithm 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 Key

DES CHIP

64

Encrypted Block

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 Remember that in DES Decryption of encrypted plain text with a different key is almost same as another encryption. This is true as encryption and decryption use the same algorithm. To decrypt cipher text we reverse the operations. Plain text = Dk1[Ek2 [Dk3[Cipher Text]]]

BLOCK DIAGRAMS OF TRIPLE DES

K3

D

Cipher text (64bit block)

E

K1

D

E

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.

Plain text

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 completely specified and easily understood. • Security must reside in key – Not in algorithm • Must be available for all users • Adaptable for use in diverse applications e.g.credit cards • Implementable economically in electronic devices • Must be efficient to use as both software and hardware • Must allow one to validate it. • 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. • In October 2000 it announced the selection of an algorithm – called Rijin dael(Pronounce RAIN DOLL) as new Advance Encryption Standard (AES) •Details may be found in www.nist.gov/aes

Public Key Encryption In Private Key Encryption transmission of key without compromising not easy. It is necessary to assign different private key to each business partner. When this is done a directory of keys should be kept which should be secret. This is difficult. Only secure way is to change the private key every time a message is sent. Public Key Encryption eliminates the key distribution problem. There is a pair of keys for each organization - A Private Key and its Public Key. If A wants to send message to B, A encrypts the message with B's Public Key When message is received by B he decrypts it with his Private Key .

RSA Code Details.”R” Wants To Find His Public And Private Keys 1. Pick large primes p and q. Let n =p * q 2 Find ø = (p-l)*(q-l) 3 Find e relatively prime to Ø, i.e. gcd(ø,e)=1; 1<e<ø. {e,n} is R's Public Key 4 Find a number d which satisfies relation (d * e) mod (ø) =1 {d,n} is R’s Private key 5. Let plain text = t. Encrypt t using R’s public key. Encryption = te (mod n) = c (cipher text) 6.Decryption cd (mod n) =t (Both n and e should be known to encrypt. Similarly both n and d should be known to decrypt) Example Of RSA Use This example is a toy example to illustrate the method. In practice the primes p and q will be very large – each at least 300 digits long to ensure security. RSA Algorithm 1.Pick as prime numbers p=3,q=11 n = p * q=33 Note : The message to be encrypted should be smaller than 33.If we do letter by letter encryption of English alphabets (A to Z as 1 to 26) this is OK 2. Ø = (p-1) x (q-1) = 2 x 10 = 20 3.Pick a number relatively prime to 20. We pick 7. The Public key of R = {7,33} 4.To pick private key of R find d from relation (d x e)mod(ø) = 1 (d x 7) mod (20) =1 This gives d =3 Therefore, the private key of R = {3,33}

Applying RSA Algorithm 1.Let the message be CODE If we use code C=3, O=14,D=4,E=5 The message is 3,14,4,5 2.We will encrypt one letter at a time Thus cipher of plain text 3 is 3e mod (n) =37 mod(33) 37 mod (33) =2187 mod (33)=9 (14)7 mod (33) = 105413504mod(33)=20 (4)7 mod (33) =16384 mod (33) =16 (5)7 mod (33) =78125 mod(33) = 14 3.Thus cipher text = 9,20,16,14 4. Decryption : cd mod (n) d=3,n=33 93 mod (33) = 729 mod(33) = 3 203 mod(33) = 8000 mod(33)=14 163 mod(33) = 4096 mod(33) =4 143 mod(33) = 2744 mod(33) =5 We see that we get the original text 3,14,4,5

Discussion on RSA • The security RSA encryption is dependent on the fact that factorising a large prime number to its factors is very difficult. • RSA algorithm is symmetric. In other words if a plain text is encoded by the private key of S, the sender, it can be decrypted using the public key of R, the receiver (We will find later that this symmetry property is used in creating digital signature) •Example using S’s keys S’s Private key = {3,33} S’s Public key = {7,33} • 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 •Decrypting with S’s Public key we get (5)7 mod (33) =78125 mod(33) ={(2367 x 33) + 14} mod (33) =14

DISCUSSION – RSA Vs DES •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 •DES computationally simple-implemented in hardware - thus very fast •Each communication between two businesses can use a different key – provided key is securely exchanged •If key can be sent separately encrypted using RSA, then a recipient can use this to decrypt DES encrypted message.

Combining RSA And DES

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

Certificate Authority For Digital Signature •As the hashed message in Digital Signature system is decrypted using senders public key, this key must be certified as belonging to sender by an independent authority •Certification needed to ensure authenticity of public keys of organizations as public key is used to verify signature •Certification authority keeps data base of public keys of organizations participating in e-commerce after verifying their credentials. •Potential business partners can authenticate public keys by sending request to certifying authority who certifies after receiving a fee for his services

LEARNING UNIT 4

Payment in E-Commerce In any commercial transaction payment is an integral part for goods supplied. Four types of payments may be made in e-commerce they are •Credit card payments •Electronic cheque payments •Micro or small payments for internet based services such as music download. •Electronic-cash payments Each of these requires a different system of payment.

Review Of Manual Credit Card Payment Four parties are invoked in credit card payments. They are: • Customer having a credit card • Merchant accepting credit cards (such as VISA, MASTER CARD etc) • Bank which issues credit cards to customers and collects payments from customers •Acquirer which is financial institution that establishes an account with a merchant, validates credit card information sent electronically by merchant and authorises sale based on customer’s credit status. Acquirer accepts credit cards of several card companies and guarantees payment to merchants. Acquirer gets reimbursed by bank issuing credit card.

Sequence Of Transactions In Manual Credit Card Payment Step 1: Customer presents credit card after purchase. Merchant swipes it on his special phone and enters amount Step 2: Data from merchant’s terminal goes to acquirer via a private telephone line Step 3: Acquirer checks with the issuing bank validity of card and creditavailable Step 4: Acquirer authorizes sale if all OK and sends approval slip which is printed at merchant’s terminal. Step 5: Merchant takes customer’s signature on the slip-verifies it with the signature on card and delivers the goods. 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

Credit Card In E-commerce Main Problems 1.Main Problem is: if a merchant had only a web presence, a Customer needs to be reassured that the merchant is genuine. 2.Customers Signature cannot be physically verified. Customer needs electronic signature. 3.Secrecy of credit card number has to be ensured. 4.Dispute settlement mechanism must be worked out.

Secure Electronic Transaction Protocol To use SET protocol it is assumed that 1. Each party involved in e-commerce transaction has a public and private key.A public key encryption is used. 2. All parties have their public keys certified. 3. A standard hashing algorithm is used to create message digest for signature verification. Main Features •Customers credit card number is not revealed to a merchant. It is revealed only to the acquirer who authorises payment. •Purchase invoice details are not revealed to the acquirer.Only the credit card number and total amount are revealed to him •Purchase invoice + credit card number is digitally signed by the customer.In case of a dispute an arbitrator can use this to settle the dispute. (Computer protocol runs to 262 pages and may be found in www.ibm.com/redbook/SG244978) DUAL SIGNATURE SCHEME Dual signature scheme is an innovation in SET protocol Steps followed in the protocol are: 1. Customer purchase information has 3 parts (i) Purchase Order (PO) (ii) Credit Card Number (CCN) (iii) Amount to be paid 2. Merchant should know (PO + Amount)=POA 3. Acquirer should know (CCN+Amount)=CCA 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) 7. Hash (POD||CCD) giving PPD 8. PPD is encrypted using Private key of customer. This is customer’s digitally signed purchase order DS = Encrypt (PPD) with CPRK CPRK is Private key of customer. This is sent to merchant by customer. DS is called Dual Signature as a private key is used to sign two separate digests concatenated together. 9. POA separately encrypted by customer using merchant’s public key and sent to merchant 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. 13. Merchant can compute H(POD||CCD) If H(POD||CCD)=PPD,then customer’s signature is OK. 14. Merchant forwards to acquirer CCA,POD,DS each separately encrypted using acquirer’s public key. 15. Acquirer’s forwards to bank. 16.Bank finds CCN and Amount.Verifies balance amount.Bank also verifies customer’s digital signature using CCD,POD and DS.If all OK acquirer is informed. 17. Acquirer OK’s transaction to merchant 18. Merchant supplies item.Gets payment from acquirer.Bank collects from customer.

Dual Signature System

EM: Public key of Merchant EB: Public key of bank (POA) EM is encrypted value with merchant’s public key POA: (Purchase Order + Amount) POD: Purchase Order Digest CCA: (Credit card + Amount) CCD: (Credit card + Amount)Digest || : Concatenation operator which strings together POD and CCD PPD : Purchase Payment Digest CPRK: Private Key of Customer, CPK: Public Key of customer - Step1 : [(POA)EM , (CCA)EB , CCD ,DS] to Merchant - Step2 : Merchant sends [(CCA)EB , DS , POD] to Acquirer - Step3 : Acquirer sends (CCA)EB + DS +POD to Bank. - Bank finds (CC No. + amount) using its private key sees if OK Computes H(CCD||POD) Decrypts DS with customer’s public key If (DS)CPK = H(CCD || POD) Signature verified - Step4 : OK to acquirer if credit and signature OK - Step5 : Ok to Merchant Merchant finds H(H(POA) || CCD)=PPD Decrypts DS with public key of customer. If it gives PPD signature verified. - Step6 : Sends delivery details - Step7 : Bill to customer

Step1: Customer fills Purchase order, amount and credit card number in his PC. A software in PC strips it into two parts Purchase Order + Amount (POA), Credit Card No. + Amount(CCA) POA is encrypted using merchant’s public key and CCA with bank’s public key.These are sent with customer’s public key certificates, CCD and DS. Merchant verifies DS. Step2: Merchant forwards to acquirer DS and CCD (These are encrypted using acquirer’s public key) Step3: Acquirer forwards to bank. Bank decrypts CCA with its private key.Checks validity of credit card and balance. If OK informs acquirer Step4: Acquirer OK’s transaction to merchant and credits merchant's account. Step5: Merchant accepts customer’s order and proceeds to dispatch items. Step6: At the end of the month bank sends bill to customer. (All these done by clicks of mouse button)

Electronic Cheque Payment Most cheque based transactions will be between businesses -thus a special hardware is attached to PC’s for signing payments. Signature is 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. Credit advice goes to vendor, and consolidated debit advice sent to purchaser periodically Clearing Cheque Payment Electronically

Payments Of Small Amounts On Internet NETBILL'S PROPRIETARY SYSTEM •Customer charged only when information delivered •Vendor guaranteed payment when information delivered •Netbill is the intermediary 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 Paying for Small Internet Transactions

Electronic Cash •Cash for small payments •Cash preserves anonymity •Cash should not be traceable •Cheaper than credit card transaction •DES normally used for these transaction as it is cheap and amount involved is small Traceable cash payments STEPS 1.Customer withdraws coins in various denominations signed by bank STRUCTURE------> serial no, denomination, signature of bank Bank stores issued coins copy 2.Customer pays vendor using signed coins 3.Bank checks whether it is current or spent 4.If current it authorises dispatch of goods and credits vendor account with electronic coins

Electronic Cash Payment

REFERENCES 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 2. There are many books on E-Commerce, which describe E-Commerce in detail. Among these are: E.Awad, Electronic Commerce, Prentice-Hall of India, New Delhi 2002.This book takes managers perspective and not very strong on technology aspects of E-Commerce. All the examples have a strong American bias as the book is primarily intended for students in America. The language is clear but the book is verbose. What can be said in 100 pages is said in 400 pages as it includes all kinds of gossip not relevant to students wanting the learn the subject. 3. D.Minoli and E.Minoli, Web Commerce Technology Handbook, Tata McGraw-Hill, New Delhi, 1999.This book is strong in technology and has wide coverage. 4. W. Stallings, Network Security Essentials, Pearson Education Asia, New Delhi,2001. Has good presentation on DES, Triple DES, RSA and SET protocol. 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

13.1

Multiple Choice Questions

By Electronic Commerce we mean: a. Commerce of electronic goods b. Commerce which depends on electronics c. Commerce which is based on the use of internet d. Commerce which is based on transactions using computers connected by telecommunication network

13.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.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.4 For carrying out C2C e-Commerce the following infrastructure is essential (i) World Wide Web (ii) Corporate network (iii) Electronic Data Interchange standards V. Rajaraman/IISc. Bangalore

M13/V1/July 04/1

System Analysis and Design/Electronic Commerce

Multiple Choice Questions

(iv) Secure Payment Services (v)Secure electronic communication link connecting businesses a. i and ii b. ii and iv c. i and iii d. i and iv 13.5 Advantages of B2C commerce are (i) Business gets a wide reach to customers (ii) Payment for services easy (iii)Shop can be open 24 hours a day seven days a week (iv)Privacy of transaction always maintained a. i and ii b. ii and iii c. i and iii d. iii and iv 13.6 B2C commerce a. includes services such as legal advice b. means only shopping for physical goods c. means only customers should approach customers to sell d. means only customers should approach business to buy 13.7 Advantages of B2C commerce to customers are (i)wide variety of goods can be accessed and comparative prices can be found (ii) shopping can be done at any time (iii)privacy of transactions can be guaranteed (iv)security of transactions can be guaranteed a. i and ii b. ii and iii c. iii and iv d. i and iv

V. Rajaraman/IISc. Bangalore

M13/V1/July 04/2

System Analysis and Design/Electronic Commerce

Multiple Choice Questions

13.8 Disadvantages of e-Commerce in India are (i) internet access is not universally available (ii) Credit card payment security is not yet guaranteed (iii) Transactions are de-personalized and human contact is missing (iv) Cyberlaws are not in place a. i and ii b. ii and iii c. i, ii, iii d. i, ii, iii, iv 13.9 Electronic Data Interchange is necessary in a. B2C e-Commerce b. C2C e-Commerce c. B2B e-Commerce d. Commerce using internet 13.10 EDI requires a. representation of common business documents in computer readable forms b. data entry operators by receivers c. special value added networks d. special hardware at co-operating Business premises 13.11 EDI standards are a. not universally available b. essential for B2B commerce c. not required for B2B commerce d. still being evolved 13.12 EDIFACT is a standard a. for representing business forms used in e-Commerce b. for e-mail transaction for e-Commerce c. for ftp in e-Commerce d. protocol used in e-Commerce 13.13 EDIFACT standard was developed by a. American National Standard Institute V. Rajaraman/IISc. Bangalore

M13/V1/July 04/3

System Analysis and Design/Electronic Commerce

Multiple Choice Questions

b. International Standard Institute c. European Common Market d. United Nations Economic Commission for Europe 13.14

ANSI X.12 is a standard developed by a. American National Standard Institute b. International Standard Institute c. European Common Market d. United Nations Economic Commission for Europe

13.15 In B2B e-Commerce (i)

Co-operating Business should give an EDI standard to be used

(ii)

Programs must be developed to translate EDI forms to a form accepted by application program

(iii) Method of transmitting/receiving data should be mutually agreed (iv) It is essential to use internet a. i, ii b. i, ii, iii c. i, ii, iii, iv d. ii, iii, iv 13.16 EDI use a. requires an extranet b. requires value added network c. can be done on internet d. requires a corporate intranet 13.17 EDI over internet uses a. MIME to attach EDI forms to e-mail messages b. FTP to send business forms c. HTTP to send business forms d. SGML to send business forms 13.18 For secure EDI transmission on internet a. MIME is used b. S/MIME is used V. Rajaraman/IISc. Bangalore

M13/V1/July 04/4

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 V. Rajaraman/IISc. Bangalore

M13/V1/July 04/5

System Analysis and Design/Electronic Commerce

Multiple Choice Questions

b. filters only packets going to internet c. filters packets travelling from and to the intranet from the internet d. ensures rapid traffic of packets for speedy e-Commerce 13.24 Filtering of packets by firewall based on a router has facilities to a. i, iii b. i, ii, iii c. i, ii, iii, iv d. ii, iii, iv 13.25 Main function of proxy application gateway firewall is a. to allow corporate users to use efficiently all internet services b. to allow intranet users to securely use specified internet services c. to allow corporate users to use all internet services d. to prevent corporate users from using internet services 13.26 Proxy application gateway (i) acts on behalf of all intranet users wanting to access interne securely (ii)monitors all accesses to internet and allows access to only specified IP addresses (iii) disallows use of certain protocols with security problems (iv) disallows all internet users from accessing intranet a. i, ii b. i, ii, iii c. i, ii, iii, iv d. ii, iii, iv 13.27 A hardened firewall host on an intranet (i) has a proxy application gateway program running on it (ii)Allows specified internet users to access specified services in the intranet (iii) Initiates all internet activities requested by clients and monitors them (iv) prevents outsiders from accessing IP addresses within the intranet a. i, ii b. i, ii, iii c. i, ii, iii, iv d. ii, iii, iv V. Rajaraman/IISc. Bangalore

M13/V1/July 04/6

System Analysis and Design/Electronic Commerce

Multiple Choice Questions

13.28 A hardened firewall host on an Intranet is a. a software which runs in any of the computers in the intranet b. a software which runs on a special reserved computer on the intranet c. a stripped down computer connected to the intranet d. a mainframe connected to the intranet to ensure security 13.29 By encryption of a text we mean a. compressing it b. expanding it c. scrambling it to preserve its security d. hashing it 13.30 Encryption is required to (i) protect business information from eavesdropping when it is transmitted on internet (ii)efficiently use the bandwidth available in PSTN (iii) to protect information stored in companies’ databases from retrieval (iv) to preserve secrecy of information stored in databases if an unauthorized person retrieves it a. i and ii b. ii and iii c. iii and iv d. i and iv 13.31 Encryption can be done a. only on textual data b. only on ASCII coded data c. on any bit string d. only on mnemonic data 13.32

By applying permutation (31254) and substitution by 5 characters away

from current character (A Æ F , B Æ G etc..) the following string ABRACADABRA becomes a. FGWCAAADRBF b. RABCAAADRBF c. WFGHFFFIWGF V. Rajaraman/IISc. Bangalore

M13/V1/July 04/7

System Analysis and Design/Electronic Commerce

Multiple Choice Questions

d. None of the above 13.33 The following ciphertext was received. The plaintext was permuted using permutation (34152) and substitution. Substitute character by character +3 (A Æ D, etc). The plain text after decryption is: Cipher text : PDLJDLXHVQC a. MAIGAIUESNZ b. IAMAGENIUSZ c. LDPDJHPLXVZ d. IAMAGENIUSC 13.34 By symmetric key encryption we mean a. one private key is used for both encryption and decryption b. private and public key used are symmetric c. only public keys are used for encryption d. only symmetric key is used for encryption 13.35 The acronym DES stands for a. Digital Evaluation System b. Digital Encryption Standard c. Digital Encryption System d. Double Encryption Standard 13.36 DES works by using a. permutation and substitution on 64 bit blocks of plain text b. only permutations on blocks of 128 bits c. exclusive ORing key bits with 64 bit blocks d. 4 rounds of substitution on 64 bit blocks with 56 bit keys 13.37 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 V. Rajaraman/IISc. Bangalore

M13/V1/July 04/8

System Analysis and Design/Electronic Commerce

Multiple Choice Questions

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. V. Rajaraman/IISc. Bangalore

M13/V1/July 04/9

System Analysis and Design/Electronic Commerce

Multiple Choice Questions

13.43 Public key system is useful because a. it uses two keys. b. there is no key distribution problem as public key can be kept in a commonly accessible database. c. private key can be kept secret. d. it is a symmetric key system. 13.44 In public key encryption if A wants to send an encrypted message a. A encrypts message using his private key b. A encrypts message using B’s private key c. A encrypts message using B’s public key d. A encrypts message using his public key 13.45 In public key encryption system if A encrypts a message using his private key and sends it to B a. if B knows it is from A he can decrypt it using A’s public key b. Even if B knows who sent the message it cannot be decrypted c. It cannot be decrypted at all as no one knows A’s private key d. A should send his public key with the message 13.46 Message can be sent more securely using DES by a. encrypting plain text by a different randomly selected key for each transmission b. encrypting plain text by a different random key for each message transmission and sending the key to the receiver using a public key system c. using an algorithm to implement DES instead of using hardware d. designing DES with high security and not publicizing algorithm used by it 13.47 DES and public key algorithm are combined (i) to speed up encrypted message transmission (ii)to ensure higher security by using different key for each transmission (iii) as a combination is always better than individual system (iv) as it is required in e-Commerce a. i and ii b. ii and iii V. Rajaraman/IISc. Bangalore

M13/V1/July 04/10

System Analysis and Design/Electronic Commerce

Multiple Choice Questions

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 V. Rajaraman/IISc. Bangalore

M13/V1/July 04/11

System Analysis and Design/Electronic Commerce

Multiple Choice Questions

13.52 While sending a signed message, a sender a. sends message key using public key encryption using DES and hashed message using public key encryption b. sends message using public key encryption and hashed message using DES c.

sends both message and hashed message using DES

d. sends both message and hashed message using public key encryption 13.53 The responsibility of a certification authority for digital signature is to authenticate the a. hash function used b. private keys of subscribers c. public keys of subscribers d. key used in DES 13.54 Certification of Digital signature by an independent authority is needed because a. it is safe b. it gives confidence to a business c. the authority checks and assures customers that the public key indeed belongs to the business which claims its ownership d. private key claimed by a sender may not be actually his 13.55 The Secure Electronic Transaction protocol is used for a. credit card payment b. cheque payment c. electronic cash payments d. payment of small amounts for internet services 13.56 In SET protocol a customer encrypts credit card number using a. his private key b. bank’s public key c. bank’s private key d. merchant’s public key 13.57 In SET protocol a customer sends a purchase order V. Rajaraman/IISc. Bangalore

M13/V1/July 04/12

System Analysis and Design/Electronic Commerce

Multiple Choice Questions

a. encrypted with his public key b. in plain text form c. encrypted using Bank’s public key d. using digital Signature system 13.58 One of the problems with using SET protocol is a. the merchant’s risk is high as he accepts encrypted credit card b. the credit card company should check digital signature c. the bank has to keep a database of the public keys of all customers d. the bank has to keep a database of digital signatures of all customers 13.59 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.60 In electronic cheque payments developed, it is assumed that most of the transactions will be a. customers to customers b. customers to business c. business to business d. banks to banks 13.61 In cheque payment protocol, the purchase order form is signed by purchaser using a. his public key b. his private key c. his private key using his signature hardware d. various public keys 13.62 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 V. Rajaraman/IISc. Bangalore

M13/V1/July 04/13

System Analysis and Design/Electronic Commerce

Multiple Choice Questions

(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 13.63 In NetBill’s protocol for small payments for internet services (i) Key to decrypt information is sent to customer by NetBill only when there is enough amount in debit account (ii) The vendor supplies the key to NetBill server when he receives payment (iii) Checksum of encrypted information received by customer is attached to his payment order (iv) Vendor does not encrypt information purchased by customer a. i, ii b. i, ii, iii c. i, ii, iii, iv d. i, ii, iv 13.64 In Electronic cash payment a. a debit card payment system is used b. a customer buys several electronic coins which are digitally signed by coin issuing bank c. a credit card payment system is used d. RSA cryptography is used in the transactions 13.65 In Electronic cash payment (i) a customer withdraws “coins” in various denominations signed by the bank (ii)the bank has a database of issued coins (iii) the bank has a database of spent coins (iv) the bank cannot trace a customer a. i, ii b. i, ii, iii c. i, ii, iii, iv d. ii, iii, iv

V. Rajaraman/IISc. Bangalore

M13/V1/July 04/14

System Analysis and Design/Electronic Commerce

Multiple Choice Questions

Key to Objective Questions 13.1

d

13.2 c

13.3

a 13.4

c 13.5

c 13.6

a

13.7

a

13.8 c

13.9

c 13.10

a 13.11

b 13.12

a

13.13

d

13.19 b

13.14a 13.20 d

13.25 b

13.26 b

13.31 c

13.32 c

13.37 c

13.38 c

13.44 c

13.45 a

c

13.51

13.55 13.61 c

a

13.15

b 13.56 b 13.62 d

b

13.21 13.27

c c

13.33 b 13.39 b

13.16 c 13.22 a

13.17

a

13.18 b

13.23

c

13.24 b

13.28 b

13.29 c

13.30 d

13.34 a

13.35 b

13.36 a

13.40 a

13.41 b

13.46b

13.47 a

13.48 c

13.52 a

13.53 c

13.54 c

13.58 c

13.59

13.57 13.63

V. Rajaraman/IISc. Bangalore

d b

13.64 b

13.42 b

13.43

13.49 b

a

13.60

b 13.50

c

13.65 b

M13/V1/July 04/15

MODULE 13

ELECTRONIC COMMERCE WORKED EXAMPLES

13.1 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 month’s time to booksellers for payment

Warehouse of Bookseller

Book Received(6)

Distributor’s warehouse

Reminder if bill not paid within one month (14) Acknowledge order and send bill(5) Enquire Availability (2) Distributor’s Bookseller website

Stock goes below level(1)

Display various books(3) Places order (4) Send cheque(7) Receipt to Book supplied to seller(13) bookseller (6)

Distributor’s bank

Cheque sent Ok’s after verification of Cheque seller’s public (11) key certificates (8)

Send cheque for clearance (9) Credit to distributor’s bank A/C (13)

Ok’s clearance (10)

Book seller’s bank

Information flow (Normally electronically) Physical item flows

Clearing house

Debit advice to book seller’s bank (12)

13.2 Explain B2C e-Commerce of a customer reserving airline tickets from his home or place of work. B2C e-Commerce involves the business between an individual and an organization. For the case given in question, the customer has to visit the site of the travel agency or a broker and get the status of the availability of tickets. If ticket is available he/she will book the ticket and input the credit card details. He/She will be given the details of delivery of ticket. The block diagram below depicts the total process

(8) Acknowledge order and sends ticket (1) Request Service Website of travel agency

Customer (2) Display information on various flights

(8) Bill to Customer

(3) Places order with credit card details

Travel agency’s bank A/C

(5) Ok’s Credit (4) Credit card card details

Credit Card companies computer (7) Debit advice giving credit card no

(8) Credit to travel agency’s A/C Customer’s Bank

13.3

Explain C2C e-Commerce with an appropriate example Here the selling and purchasing is carried out between two individuals. One is a seller and the other is a buyer. The items are usually used items, collector’s items such as stamps/coins or antiques. The seller posts the description of the item and the expected price of the item on a web site maintained by a company which acts as a middle man or broker. For example: Consider a company Y which acts as a broker. Suppose an indivi-dual A has to sell some items, so it will post the description of the items in Y’s site. A person B is interested to purchase some items, then he/she will visit Y’s site. Here we can have three cases. Case I: The broker Y can just acts as an advertising agency and make the two persons meet each other and carry out further transaction. For this it gets some commission from both the parties. This is described in the block diagram below:

Negotiations are made and deal is finalized (5) Places order (6) Send the mail id of A(4)

Request for items (3) Website of Y

B

Display items (2)

Post Description of items (1) A

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: Negotiations are made and deal is finalized (5)

Places order with credit card details(7)

Pays the amount received after taking commission(13)

Send the mail id of A(4) Communication regarding the price settled (6) Request for items (3)

Post Description of items (1)

Website of Y

B

Display items (2)

A

Acknowledge order (10)

Send credit card details (8)

Y’s Bank A/C

Bill sent to B(12)

Shiping Advice (11)

Credit to Y’s A/C (11)

Ok’s credift card(9)

Credit Card companies computer Debit advice giving Credit card no (9) B’s bank

Items delivered to B (11)

Y’s warehouse

Information flow (Normally electronically) Physical items flow

Case III: The broker Y can act as an advertising agency and displays items posted by the seller with prices. Both the buyer and seller will not have knowledge of each other. Y takes all responsibilities until the item is delivered. For this he gets some commission from both the parties. This is described in the block diagram below:

Places order with credit card details(4)

Pays the amount received after taking commission(12)

Request for items (3)

Post Description of items (1)

Website of Y

B

Display items (2)

A

Acknowledge order (7)

Send credit card details (5)

Y’s Bank A/C

Bill sent to B(11)

Shiping Advice (9)

Credit to Y’s A/C (11)

Ok’s credift card(6)

Credit Card companies computer Debit advice giving Credit card no (8) B’s bank

Items delivered to B (10)

Y’s warehouse

Information flow (Normally electronically) Physical items flow

13.4

What do you understand by EDI? Is EDI used in B2C or B2B eCommerce? Why is EDI important in e-Commerce? EDI stands for Electronic Data Interchange. It is a standard electronic format used for purchase orders, invoices etc. When such electronic forms are received they can be interpreted correctly by recipient’s computer program and used. EDI is used in B2B e-Commerce . It is important in e-Commerce because there is no manual intervention and data transfer is faster. As the format is agreed between two organizations, communication is simple.

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 eCommerce? 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.7 What is a firewall? What are the functions of a firewall? A firewall is a set of related programs , located at a network gateway server that protects the resources of private network from other networks. Basically firewall, working closely with a router program, filters all network packets to determine whether to forward them toward their destination.

The different functions of firewall are: • • • • •

Protection from vulnerable service Control access to site system Concentrated security Enhance privacy Logging and statistics on Network use and misuse

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.9 Given a plain text: THIS IS A SAMPLE SENTENCE FOR ENCRYPTION. Apply the permutation (231564) and the substitution: (letter Æ letter + 6 ) and obtain the cipher text. Step 1: write the message in block of 6 characters THISIS ASAMPL ESENTE NCEFOR ENCRYP TION Step 2: follow permutation(231564) HITISS SAAPLM SEETEN CENORF NCEYPR TION Step 3: make substitution (Letter Æ Letter + 6) NOZOYY YGGVRS YKKZKT IKTUXL TIKEVXZOUT 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)

For more information on DES please refer to book “APPLIED CRYPTOGRAPHY” written by Bruce Schneier.

Plain Text IP

Lo

Ro



f K1 R1=L1⊕ f(R1,K2)

L1 =R0



f K2

L2 =R1

R2=L1⊕ f(R1,K2)

L15 =R14

R15=L14⊕ f(R14,K15)



f K16

R16=L15⊕ f(R15,K16)

L16 =R15

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.15

What types of electronic payment systems are required in eCommerce? Why are there different types of payment systems? Explain the necessary characteristics of each type of payment system and give an example each of where it is used. The different types of electronic payment systems required in e-Commerce are: cash payments, credit card payments and cheque payments. Each of these payments have their own advantages and disadvantages Cash payment is used for small transactions and mostly used for C2C eCommerce Credit card is used for middle size transactions and mostly used for B2C e-Commerce Cheque payment system is used for voluminous transactions and mostly used for B2B e-Commerce The characteristics of e-Cash or electronic cash payments are: • •

e-Cash must have monetary value e-Cash must be interoperable i.e., exchangeable for other e-cash, paper-cash, goods and services • It must be storable and retrievable The characteristics of credit card transactions are: • •

The credit card number entered by the customer should be encrypted The merchant should not have the knowledge of the credit card number of the customer

The characteristics of cheque payment are: • Both the parties involved in business should have public key certificates • The cheque should be cleared by a clearing house before any transaction occurs Necessary dedicated hardware device is required for signing and encrypting the order. 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.1

Define E-commerce. What are the different types of E-commerce?

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 month's time to booksellers for payment.

13.3

Explain B2C E-Commerce of a customer reserving airline tickets from his home or place of work.

13.4

Explain C2C E-Commerce with an appropriate example.

13.5

List the advantages and disadvantages of E-Commerce

13.6

Explain the system architecture of E-Commerce by looking at it as a set of layers with the physical network at the bottom layer and applications at the top layer.

13.7

Define internet. Why is internet important in E-Commerce?

13.8

What do you understand by EDI? Is EDI used in B2C or B2B E-Commerce? Why is EDI important in E-Commerce?

13.9

What are two major EDI standards used in E-Commerce? Which is the standard accepted for Government transactions in India?

13.10

What is VAN? What services do VANs provide? What are the advantages and disadvantages of VAN?

13.11

If internet is to be used for EDI which mail standard is used?

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 taken into account while designing a security system for E-Commerce?

13.14

What is a firewall? What are the functions of a firewall?

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 different from proxy application gateway?

13.18

Given a plain text: THIS IS A SAMPLE SENTENCE FOR ENCRYPTION. Apply the permutation (231564) and the substitution: (letter Æ letter + 6 ) and obtain the cipher text.

13.19

What is DES? Explain what DES does when the following hexadecimal plain text is input to a DES hardware. A1907FBCD986543201FED14E890ABCA5

13.20

What do you understand by symmetric key cryptography? What are the main advantages and disadvantages of symmetric key cryptography?

13.21

What is public key encryption? In what way is it different from private key encryption? Why is it important in E-Commerce?

13.22

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?

13.23

Given two prime numbers 23 and 41 design a RSA system. Explain with an example how it works.

13.24

What is a digital signature? Why is it necessary in E-Commerce? What are the necessary conditions a hash function used in digital signature should satisfy?

13.25

Give a block diagram of a system for transmitting a signed purchase order from business 1 to business 2.

13.26

What is a certifying authority? Why is a certifying authority required in ECommerce? How does a certifying authority performs its tasks?

13.27

What types of electronic payment systems are required in E-Commerce? Why are there different types of payment systems? Explain the necessary characteristics of each type of payment system and give an example each of where it is used.

13.28

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?

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 for the same item purchased?

13.30

What are the main differences between electronic cheque payment and credit card payment in E-Commerce? Explain cheque transaction protocol used in ECommerce.

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 made is actually delivered to the customer?

13.32

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?

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 spend the same electronic coins issued to him/her?

References 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 2. There are many books on E-Commerce, which describe E-Commerce in detail. Among these are: E.Awad, Electronic Commerce, Prentice-Hall of India, New Delhi 2002.This book takes managers perspective and not very strong on technology aspects of ECommerce. All the examples have a strong American bias as the book is primarily intended for students in America. The language is clear but the book is verbose. What can be said in 100 pages is said in 400 pages as it includes all kinds of gossip not relevant to students wanting the learn the subject. 3. D.Minoli and E.Minoli, Web Commerce Technology Handbook, Tata McGrawHill, New Delhi, 1999.This book is strong in technology and has wide coverage. 4. W. Stallings, Network Security Essentials, Pearson Education Asia, New Delhi,2001. Has good presentation on DES, Triple DES, RSA and SET protocol. 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 1.

The sharing of

business information, maintaining business relationships and

conducting business transactions by using telecommunication networks is usually defined as Electronic Commerce. 2.

E-commerce is normally categorised as Business to Business (B2B), Business to Customer (B2C) and Customer to Customer (C2C)

3.

The major advantages of

E-Commerce are anytime, anywhere transaction,

reduction in cost of transactions, reduction in time to market products, faster interbusiness transaction and faster transfer of funds. 4.

The major disadvantages of E-commerce are poor security of transactions unless special precautions are taken, loss of privacy, lack of legislation to settle disputes and menace of hackers.

5.

E-Commerce architecture consists of the following layers: 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 layers are necessary to write application systems.

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 organizations is to use Public Switched Telephone Network. 7.

Internet is the most important logical network which enables E-Commerce. internet protocol called TCP/IP is universally used.

The

Organizational private

networks which use TCP/IP protocol are called intranets. Organizational intranets are often connected by a private secure communication link. Such a network is called an Extranet. 8.

World wide web is a global multimedia information service available on the Deleted: prepared using hyper text markup language.

internet. It supports web pages . 9.

Deleted: ¶

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.

12.

Electronic Data Interchange (EDI) is essential in E-Commerce.

EDI replaces

printed forms by a standard electronic format which can be interpreted correctly by computer programs of cooperating businesses.

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 exchange EDI documents. They guarantee security and delivery of documents. They also provide services to convert an organization's forms to standard format such as EDIFACT. Deleted: le

15.

If internet is used for exchanging business documents Secure Multipurpose Internet Mail Extension (S/MIME) standard is recommended.

16.

An organizaion's intranet is connected to the internet via a proxy server or a Deleted: f

hardware unit.

This is called a firewall . Firewall protects an organization's

computers from unauthorised intruders. 17.

Messages exchanged between organizations using the internet can be easily tapped by eaves droppers. It is thus necessary to scramble them to prevent eavesdroppers from understanding the messages. It is done by encrypting messages.

18.

Message (plain text) is encrypted by transposing characters of the plain text by a specified

permutation and substituting characters by other characters.

The

encrypted text is called ciphertext. 19.

This general idea is used in a standard encryption method called Digital Encryption Standard(DES). DES encrypts 64 bit blocks with a 56 bit key.

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. The receiver can decrypt it if he is given the key. 21.

A system in which the encrypting and decrypting keys are same is called a symmetric key system.

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 problem. It is, however, slower than the symmetric key system.

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 Transaction (SET protocol). It uses RSA system and digital signatures.

30.

Cheque payments are made between organizations using digitally signed cheques and public key certificates issued by a certifying authority.

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 that the coin has not been spent earlier. 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 information only after payment is received by the vendor.

It also guarantees

delivery of contracted information by the vendor.

6

Formatted

QUESTION BANK 13.1

Define E-commerce. What are the different types of E-commerce?

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 month's time to booksellers for payment.

13.3

Explain B2C E-Commerce of a customer reserving airline tickets from his home or place of work.

13.4

Explain C2C E-Commerce with an appropriate example.

13.5

List the advantages and disadvantages of E-Commerce

13.6

Explain the system architecture of E-Commerce by looking at it as a set of layers with the physical network at the bottom layer and applications at the top layer.

13.7

Define internet. Why is internet important in E-Commerce?

7

13.8

What do you understand by EDI? Is EDI used in B2C or B2B E-Commerce? Why is EDI important in E-Commerce?

13.9

What are two major EDI standards used in E-Commerce? Which is the standard accepted for Government transactions in India?

13.10

What is VAN? What services do VANs provide? What are the advantages and disadvantages of VAN?

13.11

If internet is to be used for EDI which mail standard is used?

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 taken into account while designing a security system for E-Commerce?

13.14

What is a firewall? What are the functions of a firewall?

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 different from proxy application gateway?

13.18

Given a plain text: THIS IS A SAMPLE SENTENCE FOR ENCRYPTION. Apply the permutation (231564) and the substitution: (letter Æ letter + 6 ) and obtain the cipher text.

13.19

What is DES? Explain what DES does when the following hexadecimal plain text is input to a DES hardware. A1907FBCD986543201FED14E890ABCA5 8

13.20

What do you understand by symmetric key cryptography? What are the main advantages and disadvantages of symmetric key cryptography?

13.21

What is public key encryption? In what way is it different from private key encryption? Why is it important in E-Commerce?

13.22

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?

13.23

Given two prime numbers 23 and 41 design a RSA system. Explain with an example how it works.

13.24

What is a digital signature? Why is it necessary in E-Commerce? What are the necessary conditions a hash function used in digital signature should satisfy?

13.25

Give a block diagram of a system for transmitting a signed purchase order from business 1 to business 2.

13.26

What is a certifying authority? Why is a certifying authority required in ECommerce? How does a certifying authority performs its tasks?

13.27

What types of electronic payment systems are required in E-Commerce? Why are there different types of payment systems? Explain the necessary characteristics of each type of payment system and give an example each of where it is used.

13.28

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?

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 for the same item purchased?

13.30

What are the main differences between electronic cheque payment and credit card payment in E-Commerce? Explain cheque transaction protocol used in ECommerce.

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 made is actually delivered to the customer?

13.32

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?

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 spend the same electronic coins issued to him/her?

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 1. The expansion of CASE tools is: (a) Computer Assisted Self Evaluation (b) Computer Aided Software Engineering (c) Computer Aided Software Environment (d) Core Aids for Software Engineering

2. CASE tools are used by industries to (i) Improve productivity of their software engineers (ii) Reduce time to develop applications (iii)Improve documentation (iv)Automate system analysis (a) i and ii (c) i, ii, and iii

(b) i and iii (d) ii and iii

3. The following are the disadvantages of CASE tools (i) Some tools are expensive (ii) All software engineers need to be trained to use these tools (iii) A lot of time is wasted in using the tools (iv) Software developed using CASE tools are of poor quality (a) i, ii, iii, iv (c) ii, iii, and iv

(b) iii and iv (d) i and ii

4. CASE tools are useful (a) only during system design stage (b) during all the phases of system life cycle (c) only for system documentation (d) only during system analysis stage 5. CASE tools have the following advantages (i) they integrate the development done during each phase of system development (ii) they permit effective communication with users (iii) they are useful as communication aids with users of the system (iv) they are useful in estimating cost of changes in system requested by users 6. CASE tools are (a) A Set of rules to be used during system analysis and design (b) Program, packages used during system analysis and design (c) A set of tools used by analysts (d) Needed for use case development. 7. By open domain CASE tools we mean (a) tools available in open domain (b) software packages which can be downloaded form the internet (c) software packages to aid each phase of the systems analysis and design which can be downloaded free of cost from the internet (d) source codes of CASE tools 8. Open domain CASE tools (a) are better than commercial tools (b) are not very useful (c) do not usually have very good user interface but are otherwise useful (d) are full of bugs 9. Open domain CASE tools (a) always provide the source code (b) are available for use only for a limited period (c) never provide the source code (d) are usually object files available for unrestricted use with on-line help files 10. Open domain CASE tools (a) are available for almost all phases of system analysis and design life cycle (b) are available only for drawing DFD’s (c) are no available to document SRS (d) creating data dictionaries

11. CASE tools are classified often as (a) Classical and Modern CASE tools (b) Upper and lower CASE tools (c) Source and Object CASE tools (d) Object oriented and Structured CASE tools 12. Upper CASE tools are used (a) for developing DFD’s (b) for screen design (c) during all phases of system analysis and design life cycle (d) for converting structured English procedures to source code into a language such as C 13. Lower CASE tools are used for (a) for developing DFD’s (b) for screen design (c) during all phases of system analysis and design life cycle (d) for converting structured English procedures to source code into a language such as C 14. Lower CASE tools are used for (a) develop graphical user interface (b) for converting decision tables to source programs (c) for generating test cases (d) for developing use cases 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. 2. 3. 4. 5. 6. 7. 8.

b c d b ? b c c

10 a 11 b 12 a 13 d 14 b 15 a

MODULE 14

CASE TOOLS Learning Units 14.1 CASE tools and their importance 14.2 Some CASE tools and their use

Systems Analysis And Design

©

V. Rajaraman

Learning Goals ƒ What are CASE tools? ƒ Why are they important in systems analysis and design? ƒ When are they used? ƒ How are they used?

Systems Analysis And Design

© V. Rajaraman

1 of 9

Motivation ƒ Industries routinely use CASE tools as productivity aid to reduce time to develop systems. ƒ A student should know what these tools are and how they are useful ƒ The intention of this module is not to make you an expert in the use of these tools but to make you aware about them and their importance in industrial practice

Systems Analysis And Design

© V. Rajaraman

2 of 9

CASE Tools and their importance ƒ CASE tools stand for Computer Aided Software Engineering tools ƒ As the name implies they are computer based programs to increase the productivity of analysts ƒ They permit effective communication with users as well as other members of the development team. ƒ They integrate the development done during each phase of a system life cycle. ƒ They assist in correctly assessing the effects and cost of changes so that maintenance cost can be estimated.

Systems Analysis And Design

© V. Rajaraman

3 of 9

Available CASE tools • Commercially available systems provide tools (i.e computer program packages) for each phase of the system development life cycle. A typical package is Visual Analyst which has several tools integrated together.

• Tools are also in the open domain which can be downloaded and used. They do not usually have very good user interfaces.

14.1.1

Systems Analysis And Design

© V. Rajaraman

4 of 9

Available CASE tools • System requirements specification documentation tool • Data flow diagramming tool • System flow chart generation tool • Data dictionary creation • Formatting and checking structured English process logic

14.1.2

Systems Analysis And Design

© V. Rajaraman

5 of 9

Available CASE tools •Decision table checking • Screen design for data inputting • Form design for outputs. • E-R diagramming • Data base normalization given the dependency information

14.1.3

Systems Analysis And Design

© V. Rajaraman

6 of 9

When are tools used • 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 • Tools are available which will generate computer screen code from higher level descriptions such as structured English and decision tables,They are called lower CASE tools

14.1.4

Systems Analysis And Design

© V. Rajaraman

7 of 9

Object Oriented System Design Tools • Unified Modelling Language is currently the standard • UML tool set is marketed by Rational Rose a company whose tools are widely used. • This is an expensive tool and not in our scope in his course.

14.1.5

Systems Analysis And Design

© V. Rajaraman

8 of 9

How to use the 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 as notes.

14.2.1

Systems Analysis And Design

© V. Rajaraman

9 of 9

MODULE 14

CASE TOOLS Contents

1. MOTIVATION AND LEARNING GOALS

2. LEARNING UNIT 1 CASE tools and their importance

3. LEARNING UNIT 2 Some CASE tools and their use

4. REFERENCES

CASE TOOLS MOTIVATION

Industries routinely use CASE tools as productivity aid to reduce time to develop systems. A student should know what these tools are and how they are useful. The intention of this module is not to make you an expert in the use of these tools but to make you aware about them and their importance in industrial practice.

LEARNING GOALS ƒ ƒ ƒ ƒ

What are CASE tools? Why are they important in systems analysis and design? When are they used? How are they used?

LEARNING UNIT 1

CASE Tools and their importance

CASE tools stand for Computer Aided Software Engineering tools. As the name implies they are computer based programs to increase the productivity of analysts. They permit effective communication with users as well as other members of the development team. They integrate the development done during each phase of a system life cycle and also assist in correctly assessing the effects and cost of changes so that maintenance cost can be estimated. Available CASE tools Commercially available systems provide tools (i.e computer program packages) for each phase of the system development life cycle. A typical package is Visual Analyst which has several tools integrated together. Tools are also in the open domain which can be downloaded and used. However, they do not usually have very good user interfaces. Following types of tools are available: ƒ ƒ ƒ ƒ ƒ ƒ ƒ ƒ ƒ ƒ

System requirements specification documentation tool Data flow diagramming tool System flow chart generation tool Data dictionary creation Formatting and checking structured English process logic Decision table checking Screen design for data inputting Form design for outputs. E-R diagramming Data base normalization given the dependency information

When are tools used 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

Object Oriented System Design Tools Unified Modelling Language is currently the standard. UML tool set is marketed by Rational Rose a company whose tools are widely used. This is an expensive tool and not in our scope in his course.

LEARNING UNIT 2

How to use the 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.

I. SYSTEM FLOWCHART AND ER-DIAGRAM GENERATION TOOL Name of the tool: SMARTDRAW URL: This Software can be downloaded from: http://www.smartdraw.com. This is a paid software, but a 30-day free trial for learning can be downloaded.

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, ERdiagrams 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 Name of the tool: IBMS/DFD URL: This a free software that can be downloaded from: http://viu.eng.rpi.edu

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

Name of the tool: COPE URL: This is a free tool and should be worked online at http://www.cs.adelaide.edeu.au/users/dwyer/examples.html

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 YNYN XX - -XXX

is A = 0. is B = 0. Move 0 to C. 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. There is online help provided at: http://www.cs.adelaide.edu.au/users/dwyer/COPE-MAN.html#RTFToC1 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 Name of the tool: ARM URL: The tool can be downloaded without cost at http://sw-assurance.gsfc.nasa.gov/disciplines/quality/index.php

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 Name of the tool: Visual Basic URL: http://www.microsoft.com/downloads/details.aspx?FamilyID=bf9a24f9-b5c548f4-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/enus/vbcon98/html/vbconpart1visualbasicbasics.asp

VI A TOOL FOR DESIGNING AND MANIPULATING DECISION TABLES Name of the tool: Prologa V.5 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: 1. J.A.Hoffer, J.F.George and J.S.Valacich “Modern Systems Analysis and Design”, Pearson Education Asia,New Delhi,2002 Chapter 4 “Automated Tools for Systems Development” has a good discussion of CASE tools. 2. G.Booch, J.Rumbaugh, I.Jacobson; “The Unified Modelling Language User Guide”, Addison Wesley, Reading, MA, USA, KGG authentic Introduction to Rational Commercial tools for Object oriented modelling 3. URL’s of various available CASE tools (a) System flowchart and Er-diagram generation tool: Smartdraw http://www.smartdraw.com (b) Data flow diagram tool: IBMS/DFD http://viu.eng.rpi.edu (c) Tool to convert decision table to structured english: COPE http://www.cs.adelaide.edeu.au/users/dwyer/examples.html (d) System Requirements Specification documentation tool: ARM http://sw-assurance.gsfc.nasa.gov/disciplines/quality/index.php

(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 (f) A tool for creation, manipulation and checking of decision tables:Prologa v.5 http://www.econ.kuleuven.ac.be/prologa

System Analysis and Design/Case Tools

Multiple Choice Questions

14.1 The expansion of CASE tools is: a. Computer Assisted Self Evaluation b. Computer Aided Software Engineering c. Computer Aided Software Environment d. Core Aids for Software Engineering 14.2 CASE tools are used by industries to (i)

Improve productivity of their software engineers

(ii)

Reduce time to develop applications

(iii)

Improve documentation

(iv)

Automate system analysis a.

i and ii

b.

i and iii

c.

i, ii, and iii

d. ii and iii 14.3 The following are the disadvantages of CASE tools (i)

Some tools are expensive

(ii)

All software engineers need to be trained to use these tools

(iii)

A lot of time is wasted in using the tools

(iv)

Software developed using CASE tools are of poor quality a. i, ii, iii, iv b. iii and iv c. ii, iii, and iv d.

i and ii

14.4 CASE tools are useful a. only during system design stage b. during all the phases of system life cycle c. only for system documentation d. only during system analysis stage 14.5 CASE tools have the following advantages a. they integrate the development done during each phase of system development

V. Rajaraman/IISc. Bangalore

M14/V1/July 04/1

System Analysis and Design/Case Tools

Multiple Choice Questions

b. they permit effective communication with users c. they are useful as communication aids with users of the system d. they are useful in estimating cost of changes in system requested by users 14.6 CASE tools are a. A Set of rules to be used during system analysis and design b. Program, packages used during system analysis and design c. A set of tools used by analysts d. Needed for use case development. 14.7 By open domain CASE tools we mean a. tools available in open domain b. software packages which can be downloaded form the internet c. software packages to aid each phase of the systems analysis and design which can be downloaded free of cost from the internet d. source codes of CASE tools 14.8 Open domain CASE tools a. are better than commercial tools b. are not very useful c. do not usually have very good user interface but are otherwise useful d. are full of bugs 14.9 Open domain CASE tools a. always provide the source code b. are available for use only for a limited period c. never provide the source code d. are usually object files available for unrestricted use with on-line help files 14.10 Open domain CASE tools a. are available for almost all phases of system analysis and design life cycle b. are available only for drawing DFD’s c. are no available to document SRS d. creating data dictionaries 14.11 CASE tools are classified often as a. Classical and Modern CASE tools

V. Rajaraman/IISc. Bangalore

M14/V1/July 04/2

System Analysis and Design/Case Tools

Multiple Choice Questions

b. Upper and lower CASE tools c. Source and Object CASE tools d. Object oriented and Structured CASE tools 14.12 Upper CASE tools are used a. for developing DFD’s b. for screen design c. during all phases of system analysis and design life cycle d. for converting structured English procedures to source code into a language such as C 14.13 Lower CASE tools are used for a. for developing DFD’s b. for screen design c. during all phases of system analysis and design life cycle d. for converting structured English procedures to source code into a language such as C 14.14 Lower CASE tools are used for a. develop graphical user interface b. for converting decision tables to source programs c. for generating test cases d. for developing use cases 14.15 The current standard tool for designing object oriented systems is called a. Unified Modeling Language b. Booch Modeling Language c. Object Modeling Language d. Class, responsibilities and collaborators language

V. Rajaraman/IISc. Bangalore

M14/V1/July 04/3

System Analysis and Design/Case Tools

Multiple Choice Questions

Key to Objective Questions 1. b

2.c

3. d

4.b

6 .b

7.c

8.c

10.a

11.b

12 .a

13.d

14 .b

15.a

V. Rajaraman/IISc. Bangalore

M14/V1/July 04/4

MODULE 14

CASE TOOLS WORKED EXAMPLES

14.1 What is the expansion of CASE tools? CASE tools stand for Computer Aided Software Engineering tools.

14.2 What are the advantages of using CASE tools? The advantages of CASE tools are as follows: 1. CASE tools are software packages, which allows software engineers to develop systems faster. 2. CASE tools also assist in better communication among members of a team developing a system. They improve communication between team members and users of the system 3. Use of CASE tools result in better documentation of systems 4. CASE tools also assist in correctly assessing the effects and cost of changes requested by users during system development and maintenance 5.

System Analysis and Design/Case Tools

Question Bank

Exercises 1. Use a DFD diagramming to draw DFD’s for the following: Admission procedure in a University. 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 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. Give physical and logical DFDs corresponding to the above problem. 2. Use a DFD diagramming to draw DFD’s for the following: 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. 3. Use a CASE tool to format and check structured English processing rules for the following: An organization maintains an employee file in which each record has 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) While employee records left in file do Read Number, name , gross pay if gross pay <=1000 then increase = gross pay  0.15 else if gross pay <= 2500 then increase = gross pay  0.1 else increase = gross pay  .05 end if end if Gross pay = gross pay + increase Write Number, name, gross pay end while (ii) While employee records left in file do Read Number, name, gross pay do Table Gross pay <= 1000 Y N N Gross pay <= 2500 – YN Percent increase 15 10 5

V. Rajaraman/IISc. Bangalore

M14/V1/July 04/1

System Analysis and Design/Case Tools

Question Bank

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 C1: Door open? C2: Ring sign on? C3: Enter sign on? C4: Door locked?

R4 N N N N

R5 N N N Y

R6 R7 R8 R9 R10R11R12R13R14 N N N N N N Y Y Y Y N N Y Y Y Y N N N N Y Y N N Y Y N N Y Y N Y N Y N Y N Y N Y

R15R16 Y Y Y Y Y Y N N Y N Y N

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 C3: Any cash during last month Y – N N Y Y Y N N – C4: Arrears . > 2 * weekly rate N – – – – – Y – – Y C5: Arrears > 4 * weekly rate – N N – Y Y N N Y Y Send arrears letter A – – – – Send arrears letter B – – – – Send arrears letter C – – – – Send arrears letter D – – – – Notify accounts X X X X Take special action – – – – 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. V. Rajaraman/IISc. Bangalore

– – – – X –

X – – – – –

– X – – – –

– – X – – –

– – – – – X

– – – – – X

Y Y Y Y ?

– N Y Y N – – – X – –

M14/V1/July 04/2

System Analysis and Design/Case Tools

Question Bank

(v) Driver drives a car. 9. Use ER-Diagramming tool to solve the following (i) A bill is sent to a customer. A customer can receive many bills. (ii) A clerk works in a bank. The bank has many clerks. (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. 10. Use ER-Diagramming tool to solve the following: 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 identification.” 11.Design an input screen using a tool to reserve tickets in a long distance bus. 12.Design an input screen using a tool to enter examination marks of students. Each record has Roll no, Name, Marks in all subjects, total and class.

V. Rajaraman/IISc. Bangalore

M14/V1/July 04/3

System Analysis and Design/Case Tools

Pointers

References: 1. J.A.Hoffer, J.F.George and J.S.Valacich “Modern Systems Analysis and Design”, Pearson Education Asia,New Delhi,2002 Chapter 4 “Automated Tools for Systems Development” has a good discussion of CASE tools. 2. G.Booch, J.Rumbaugh, I.Jacobson; “The Unified Modelling Language User Guide”, Addison Wesley, Reading, MA, USA, KGG authentic Introduction to Rational Commercial tools for Object oriented modelling 3. URL’s of various available CASE tools (a) System flowchart and Er-diagram generation tool: Smartdraw http://www.smartdraw.com (b) Data flow diagram tool: IBMS/DFD http://viu.eng.rpi.edu (c) Tool to convert decision table to structured english: COPE http://www.cs.adelaide.edeu.au/users/dwyer/examples.html (d) System Requirements Specification documentation tool: ARM http://swassurance.gsfc.nasa.gov/disciplines/quality/index.php (e) A tool for screen design and data inputting: Visual Basic http://www.microsoft.com/downloads/details.aspx?FamilyID=bf9a24f9b5c5-48f4-8edd-cdf2d29a79d5&displaylang=en (f) A tool for creation, manipulation and checking of decision tables:Prologa v.5 http://www.econ.kuleuven.ac.be/prologa

V. Rajaraman/IISc. Bangalore

M14/V1/July 04/1

Module 14 Summary 1. CASE is an acronym for Computer Assisted Software Engineering 2. CASE tools are readymade computer programe, which assist a system analyst and applications programmer to increase his/her productivity tools 3. Besides improving productivity thus also provide better interaction among members of a system development team. 4. CASE tools allow tracking of progress of projects. 5. They also aid in assessing cost and time needed to effect changes in a system. 6. There are both commercial and open domain tools to assist in all phases of a system analysis and design life cycle. 7. Commercial tools are expensive. They however have better user interfaces and customer support. 8. For object oriented systems analysis and design Universal Modelling Language (UML) is the correct standard. 9. A tool for Object oriented analysis using UML is marketed by a company named Rational Rose and is the most popular tool set used by industry. 10. In the notes we have given the URL’s of a number of open domain tools, which can be tried by students.

References: 1. J.A.Hoffer, J.F.George and J.S.Valacich “Modern Systems Analysis and Design”, Pearson Education Asia,New Delhi,2002 Chapter 4 “Automated Tools for Systems Development” has a good discussion of CASE tools. 2. G.Booch, J.Rumbaugh, I.Jacobson; “The Unified Modelling Language User Guide”, Addison Wesley, Reading, MA, USA, KGG authentic Introduction to Rational Commercial tools for Object oriented modelling 3. URL’s of various available CASE tools (a) System flowchart and Er-diagram generation tool: Smartdraw http://www.smartdraw.com (b) Data flow diagram tool: IBMS/DFD http://viu.eng.rpi.edu (c) Tool to convert decision table to structured english: COPE http://www.cs.adelaide.edeu.au/users/dwyer/examples.html (d) System Requirements Specification documentation tool: ARM http://sw-assurance.gsfc.nasa.gov/disciplines/quality/index.php

(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 (f) A tool for creation, manipulation and checking of decision tables:Prologa v.5 http://www.econ.kuleuven.ac.be/prologa

System Analysis and Design/Case Study

Learning Objectives

Learning Objectives In this module we will learn using two examples ™ How an informal description of a problem is analyzed to obtain a more formal specification of requirements. ™ How various techniques learnt in the rest of the modules of this course are integrated to develop a complete information system to meet requirements specifications. ™ How an information system is documented.

V. Rajaraman/IISc. Bangalore

//V1/Sep 05/1

MODULE 15

CASE STUDY

Learning Units 15.1 Analysis and design of a journal acquisition system 15.2 Analysis and design of a data processing system for small hotel

Systems Analysis And Design

© V. Rajaraman

Learning Goals In this module we will learn using two examples 1. How an informal description of a problem is analyzed to obtain a more formal specification of requirements 2. How various techniques learnt in the rest of the modules of this course are integrated to develop a complete information system to meet requirements specifications 3. How an information system is documented

Systems Analysis And Design

© V. Rajaraman

MOTIVATION 1. It is necessary at the end of a course to understand how various techniques learnt as separate modules can be used together in some full case studies. This integrated the learning experience 2. By following the case study analysis and design a student will learn how to go through a step-by-step process and finally document the designed step.

Systems Analysis And Design

© V. Rajaraman

System Analysis and Design/Case Study

Question Bank

Exercises 1. Passenger Reservation System Assume that ABC Bus Corporation has approached you for computerizing their bus reservation system for various destinations originating from Bangalore. The Corporation has currently about 1000 buses spread over 60 routes operating from Bangalore to various places. Of them, 700 are regular, 200 are semi-luxury, and remaining are super deluxe buses. The seating capacity are 48, 42 and 36, respectively. The Corporation would like to have at least one week advance reservation. The details required to be provided by the passenger would be date of journey, starting point, destination, number of seats (half or full), concession required, if any, route no., and departure time of the service. If seats are available, your system should be able to provide enquiry services in a variety of ways to help the passenger take a decision. ƒ What is the route nos., which halt at the place requested by the passenger either as a final destination or as an intermediate point? ƒ Whether seats are available by same route no. but at a different departure time. ƒ Whether seats are available by a different route no. on the same day. ƒ The earliest date on which seats are available for a place by a given route no. ƒ The cost of travel by various categories of buses (namely, ordinary, deluxe, etc) to a destination by various routes. The above are some of the questions that could be asked by the customer. Two seats are reserved VIPs and/or emergency quota. However , if nobody turns up for the same, upto half an hour before the departure, the seats are allotted to those in the waiting list according to priority. Concessions are given in respect of students during summer vacation. Thus they need to pay only 50% of the actual fare. Employees and their eligible family members may travel free once a year, by producing the appropriate identity cards. Your system must verify that the total distance travelled by such a person does not exceed 3000km. Seats are not allowed for half ticket but a seat may be allotted for half tickets issued. You system should provide a facility for cancellation. 10% of the fare shall be forfeited if the cancellation is done atleast two days prior to the journey. 20% shall be forfeited if the cancellation is done one day prior to the journey but not more than two days, 25% if done 8 hours and 40% for less than half an hour and up to half an hour after departure of the bus. In all other cases the amount is forfeited. The reservation fee of Rs. 5 is always nonrefundable. Journey can be postponed/advanced subject to availability of seats by the same route at most once at no extra cost. Your system would have to maintain a database of various routes originationg from Bangalore and the fare by each of them for various categories of buses to various destinations. Frequently the Corporation revises the fares and your system should accommodate this. Assume that more than one counter is simultaneously active for reservation/cancellation. 2. Hostel Information System Assume that your college hostel authorities have approached you for developing a computerized information system that can handle hostel room allotments and keep track of them.

V. Rajaraman/IISc. Bangalore

M15/V1/Sep 05/1

System Analysis and Design/Case Study

Question Bank

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.).

V. Rajaraman/IISc. Bangalore

M15/V1/Sep 05/2

System Analysis and Design/Case Study

Question Bank

General

Special

4-bed

8-bed

200

150

Maternity

Single 400

Double 300

250

Intensive care unit costs Rs. 1000/- per day. The doctor notes down the clinical details on the patient’s card, which contains the following details. The name of the patient, address, date of visit, doctor’s name etc. If the patient has to be admitted, other details such as bed no., ward no., type, and date of admission are noted. If the patient has been recommended or desires a special ward but is currently not available, he may be admitted in a general ward and later transferred when a bed is available. Operation costs are not fixed and are determined on a case by case basis. When the patient is discharged, the bed charges should be computed. To this should be added costs of medicine, treatment, consultation fees, operation charges if any, and laboratory charges. Assume that another subsystem of hospital information system gives you these details and is available. Your system will have to compute equipment charges for those used by patients. Whenever an equipment is used by the patient, the details are noted. Assume that the available equipment are X-ray machine, infra red radiation generation machine, scanner, ultrasound machine, etc. The charges are based on number of exposures incase of X-ray at Rs.50 per exposure. The others are based on number of hours of usage, at Rs. 100, 150, and 200, respectively All the above costs are to be added and presented in final bill. Your system should keep track of patients data, history ward/equipment usage to calculate other costs, ward/bed allotted or otherwise, operation theatre used. The following problems are encountered by the hospital: ƒ Currently the hospital is not able to keep track of the free/allotted wards/beds and their details due to frequent shifting of the patients, difficulty in tracking both wardwise and patientwise. ƒ Patients data, especially history is also difficult to extract. Your system should be able to provide the following information: ƒ Details of a patient such as when a patient was admitted, his or her charges, facilities used, date of discharge, etc. ƒ State of beds/wards, free/occupied etc. 4. Insurance The Bangalore divisional office of XYZ Insurance Corporation of India desires to have computerized information system and has approached you for developing the same. Assume that the Corporation offers 2 types of policies, namely, endowment and moneyback. The endowment policy operates as follows: the policy holder pays premium until the maturity of the policy or his death, at which time the sum assured and bonus is paid to the holder or the nominee respectively.

V. Rajaraman/IISc. Bangalore

M15/V1/Sep 05/3

System Analysis and Design/Case Study

Question Bank

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.

(ii)

Age at entry

18

25

30

35

Policy term 15 years 20 years 25 years 30 years

70 52 41 34

72 53 42 34.5

74 54 42.75 35

76.25 56 44 -

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

V. Rajaraman/IISc. Bangalore

M15/V1/Sep 05/4

System Analysis and Design/Case Study

Question Bank

to operational information, your system should handle queries such as the following: ƒ Which agents perform consistently well/badly? ƒ Which areas can be assigned to more agents and which have already too many? ƒ Which type of policies perform well/badly? 5. Book Publisher’s Assistant This system attempts to help a book publisher in maintaining details about his books, customers, receipts/payments, etc. A book may be published afresh or it could be a new Edition or just reprint. The copyright may belong to either the author(s) or publisher. The publisher may reprint any number of copies if he holds the copyright. If the author holds the copyright, he may publish only as much as is asked by the author. Further, the publisher may have to pay royalty in such a case for every book sold. Various book sellers, libraries, institutions, etc., order books. If the required number of copies is available the publisher sends the books and updates his stock level. If they are not available, he may send a partial consignment provided it is acceptable to the customer. Payments may be either cash/credit, subject to suitable credit limits. The publisher may decide to reprint a popular book if he holds the copyright. Otherwise he approaches the author for consent. The author may also revise it and the publisher brings out a new edition. Assume that the publisher has published roughly 10,000 books of various titles in various subjects and that roughly 100 new books are oublished every year and that 100 new editions are also brought each year. Assume that 200 reprints of various books are also published. The minimum number of copies published is 1000. On an average about 5000 copies of each book is published. Your system should provide the following information: ƒ A list of various customers, libraries, etc., placing orders has to maintained, with relevant details. ƒ For each customer the list of books ordered with details such as cost, address of customer, date of order, date of delivery, qty.delivered, etc. ƒ Details of reprints, new editions of books. ƒ Details of current stock, books and their quantity in publication etc. ƒ Books published by an author. ƒ List of books in a given subject ƒ The books that get sold out fast, the authors who are popular, etc. ƒ The publisher would also like to send a list of new books published every year to various customers/libraries, etc., with relevant details such as title and author.

V. Rajaraman/IISc. Bangalore

M15/V1/Sep 05/5

A BRIEF OUTLINE OF ANALYSIS AND DESIGN OF SYSTEM FOR ROOM BOOKING IN A HOTEL 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.

A

i)

FACT GATHERING AND REQUIREMENTS SPECIFICATION

Hierarchy chart of the organization

Manager

Hotel Staff

Front desk receptionist

House keeping staff

ii) List of persons to be interviewed Manager Front desk receptionist Accounts staff

Restaurant staff

Communication systems

Accounts office

ii) Questions to be asked a) b) c) d) e) f) g) h) i) j) k)

What are the various rooms and their details? What are the rates applicable to each type of room? Is advance booking like booking via internet, phone etc to be allowed? What are the facilities provided by the hotel? Is the utilization of these considered as extra charges or is it included along with the room charges? What are the functions of the front desk receptionist? What communications services are provided? How many days ahead of stay can a room be reserved? Can companies book rooms on credit and clear the bills when sent to them? Can a person extend his stay? What if the customer does not turn up even after he books?

iii) Records of Discussion: a) The hotel has rooms in the first, second and third floor. b) Rooms may be regular/deluxe/suite type and can be either single/double/triple. c) Suite types are double or triple occupancy. d) Rooms may or may not be air-conditioned. e) All deluxe/suite types are always air-conditioned f) The no of rooms and booking rates are shown below:

Rates per day (Rs) and No of rooms in each floor

Rate AC Single Non-AC Single AC Double Non-AC Double AC Triple Non-AC Triple Floor

150 100 250 175 350 275

Regular No. of 50 75 20 30 10 10 G

30 30 10 15 05 F

rooms

Rate

20 30 10 15 05 S

250 400 600 -

Deluxe No. of 30 40 05 G

40 20 10 F

rooms 40 20 10 S

Suite Rate No. of rooms 500 700 -

10 03 G

30 20 05 07 F S

g) Facility for online booking on the internet is to be provided. 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 should be able to respond immediately. h) A room can be booked a week well in advance with an advance payment. Advanced booking by a company for its employees is allowed. But this requires an advance of 50% of estimated charge to be paid. 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. 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 Not available, list of available rooms

CUSTOMER

Request for room reservation through Web/Phone/letter/spot request/company request Customer details

FRONT END OFFICE

Checks Updates

AVAILABLE ROOMS IN EACH FLOOR

Response to request Informs ready status of the room HOUSE KEEPING STAFF

Informs about the exit

CREDIT CARD Advance/Payment /CASH Avails

FACILITIES

Customer details

Accept after checking validity

Informs about the bill settlement

EXIT/CASH COUNTER

Room rent +Extra charges for use of facilities

Invoice/ Receipt of cash payment

The outputs of the Document flow diagram: a) List of available rooms in each floor b) Generation of invoice, including the room rent and extra charges of the facilities availed. c) Updating of the available room list after a customer vacates.

B SYSTEM SPECIFICATIONS (i) Detailed DFD

Avails

Confirms Room reservation Room Not Available List of available rooms

CUSTOMER

Requests for room/Exit request

Records Receipt/ Invoice

Customer details

Confirms room reservation /Informs about the exit

1. Processing a room reservation request Checks availability

Updates Available rooms

2. Payment Section

Room rates Invoice Payments Receipt/Remainder

Bank

Intimate about unreconciled accounts

Credit card payment

Informs the ready status of the room House keeping staff

Validity of the credit card

Confirms Bills for use of facilities

Company database

Company customer

Informs vacating rooms

Checks

Inform about the allotment Room request

List of facilities and its cost details

Available Rooms

Advance/Payment Confirms Room reservation

3. Facilities

4. Reconciliation of accounts

Invoices for use

Customer accounts Update customer accounts

Update Reconciled 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). b. If the requested room is available CUSTOMER DETAILS (Customer name, Type of room, Contact Address, Credit card No, Date of Arrival, Date of leaving) is recorded, saved in the database so that Process2 can access it. Inform the customer about the room allotment, after Process2 sends the confirmation of allotment. c. If the requested room type is not available intimate the customer so that he could ask for an alternate room or try elsewhere. d. If the customer is been sponsored by a company check for the availability of the room from the database and confirm the allotment if available. Obtain the customer details and inform about the allotment to the Process2. 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. f. If there is request for exit from the customer, inform Process 2 g. Informs the house keeping staff upon exit of a customer, so that the room can be made ready for the next occupant. h. Upon cancellation of room reservation or reducing the number of days of stay request, intimate Process2, so that it can take care of forfeit charges. i. If the customer requires an extension, check whether the room is not allotted to some other customer and hence is vacant. If it is vacant and is not booked by any other customer, provide extension for stay, otherwise deny the request. j. Incase of a customer’s request to extend his stay after 7 days, the customer is asked to pay 50% of his current account balance, provided the room is vacant and is not booked by any other

customer. Inform Process 2. Allot the room after confirmation obtained form Process 2. 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 a. For the customer who is sponsored by a company maintain his accounts in a COMPANY DATABASE (Customer Name, Company, Type of room, Contact Address, Date of Arrival, Date of leaving). b. Collect advance payment from the customer either by cash or by credit card based on the room rates and advance payment conditions. If credit card, checks for the validity of the credit card and confirms him about the room allocation. c. Maintains customer’s accounts in CUSTOMER ACCOUNTS database (Room no, Advance, Extra charges, Forfeited cost, Total). d. Send the customer receipt of the current transactions. e. Updates the AVAILABLE ROOM list in the database after allotment. f. Inform Process 1 about the confirmation of room request. 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: a. Updates the customer accounts database by the details of FACILITIES (Room no, Facility details, Cost) availed by the customer and its corresponding charges. Sends invoices to Process 2 for updating customer’s accounts.

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. The structured English description of each process is given below: Procedure for process1 (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 room is vacant then accept the request for extension; else deny the request; end if 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

Procedure for process2 (a) for every room allotment request obtained from a customer do receive an advance payment by the customer if the mode of payment is credit card then check for the validity of the card inform Process1 about the confirmation; Send the customer the receipt of current transaction; else if mode of payment is cash then Collect the advance cash Inform Process1 about the confirmation; Send the customer the receipt of current transaction; else State as room not allotted; end if end for

if the room is allotted then Create the customers account to maintain the customer’s transactions; Update the customer accounts database; end if (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 Procedure for process4: (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 if the mode of payment is credit card then collect the invoice payment from Bank; update the customer’s account; update reconciled accounts database; else if amount from the bank has not reached the hotel within the deadline then intimate the bank about the unreconciled amount Send a remainder to the company end if end for

ER DIAGRAM 1

Customer

Request

Customer Num Customer Name Customer type Date of arrival Duration Address Customer Num Room type Date of arrival Duration

Rooms

Room Num Room type Check-in time Checkout time Cost/day

Rooms

Room Num Room type Check-in time Checkout time Cost/day

ER DIAGRAM 2

Allocated to

Customer ER DIAGRAM 3

Room num Customer num

Customer Num Customer Name Customer type Date of arrival Duration Address

Customer

Avails

Facilities

Customer Num Customer Name Customer type Date of arrival Duration Address Customer num Facility Num Date of use

Facility Num Facility name Facility Cost Facility Details

ER DIAGRAM 4 (At the time of Exit)

Customer

Pays

Invoice

Customer Num Customer Name Customer type Date of arrival Duration Address

Customer Num Invoice Num Last date for payment

Invoice Num 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

Outstanding Invoices

Sent to

Customer

Customer Num Invoice Num Last 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

Invoice Num Customer Num Last date for payment

Customer Num 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)

Cancellation Receipt

Sent to

Customer

Receipt Num Customer Num Customer Name Advance paid Check-in time Checkout time Forfeited cost/ Cancellation fee Balance amount

Receipt Num Customer Num

Customer Num Customer Name 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 Customer-room relation : Customer Num, Room Num Facilities: Facility Num, Facility name, Facility Cost Customer-facility relation: Customer Num, Facility Num, Date of Use 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. Customer-pays-Invoice relation: Customer Num, Invoice Num, Last date of payment

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 2. MENU B: PAYMENT SECTION a) Accept advance payment (after checking validity if necessary) b) Send confirmation of room allocation c) Add the customer to the customer accounts database d) Update the Available room database e) Exit from MENU B

3. MENU C: FACILITIES a) List of Facilities and cost details b) Update customer account c) Exit from MENU C 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

CONTROL AUDIT AND TEST PLAN

USE CASE: Room reservation Goal in context: A customer requests for a room and is allocated if available. Primary Actor: Customer Level: User Goal level 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: 1.Customer initiates the requests. 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 1. Design the input screen 2. Create a database of available rooms, their cost and their status 3. Create a database for customer details 4. Create customer accounts database 5. Integrate all database and processes designed 6. Test each process designed using sample data 7. Create transactions to check the various processes mentioned in the test plan. 8. Create user manual 9. Create systems manual 10. Design user’s feedback form and system review plan

DATA DICTIONARY

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) Date of arrival: Varchar (10) Has the date when the customer arrived to the hotel in the form DD/MM/YYYY Duration: Num(3) This field contains the duration of the customers stay Customer Type: Num(1), Not Null Two types of customers 1Æ Company Customer 2Æ Ordinary Customer

Facilities Facility Num: Num(2), Primary Key Holds the serial number of each facility Facility Name: Char(50) Holds the name of the facility provided by the hotel. [The list of facilities provided by the hotel is as follows:

Telephone, telex, fax services, extra beds, laundry services, internet surfing and Restaurant].

Facility Cost: Num(7) Contains the cost charged for each facility Room Room Num: Num(3), Primary Key

This field contains the room number Room type: Char(1) The room types can be as follows: AC Single Non-AC Single AC Double Non-AC Double AC Triple Non-AC Triple Room cost/day: Num(3) Contains the cost of the room charged on daily basis Check-in time: Varchar(7) Records the time when the customer checked into the room Checkout time: Varchar(7) Record the time when the customer checked out of the room Rooms available: Num(3) Has a record of Number of room currently available

Invoice Invoice Num: Num (10), Primary Key

Contains a unique Invoice number

Customer Num: Num(10) Holds the customer number Date of arrival: Varchar (6) Has the date when the customer arrived to the hotel

Date of departure: Varchar (6) The date when the customer leaves the hotel Room type: Char (1) The room types can be as follows: AC Single Non-AC Single AC Double Non-AC Double AC Triple Non-AC Triple Room rent: Num (3) Contains the cost of the room charged on daily basis Name of facility: Char (2)

Holds the name of the facility provided by the hotel. [The list of facilities provided by the hotel is as follows:

Telephone, telex, fax services, extra beds, laundry services, internet surfing and Restaurant]. Date when used: Varchar (10) Holds the date when the facility was used in the format DD/MM/YYYY

Facility cost: Num(3) Contains the cost charged for each facility Last date of payment: Varchar (10) The date within which the payment has to be made in the format DD/MM/YYYY Advance paid: Num(6) Advance amount paid by the customer. Total: Num(8) The gross amount that the customer has to pay

Outstanding invoices Customer Num: Num(10), Primary Key Holds the Unique Customer Number Invoice Num: Num (10), Primary Key

Contains a unique Invoice number Last date of payment: Varchar (10) The date within which the payment has to be made in the format DD/MM/YYYY Customer Name: First Name: char (50) Last Name: char (50) Holds the name of the Customer

Date of arrival: Varchar (6) Has the date when the customer arrived to the hotel

Date of departure: Varchar (6) The date when the customer leaves the hotel Room Num: Num(3), Primary Key This field contains the room number

Room type: Char(1) The room types can be as follows: AC Single Non-AC Single AC Double Non-AC Double AC Triple Non-AC Triple Room rent: Num (3) Contains the cost of the room charged on daily basis Name of facility: Char (2) Holds the name of the facility provided by the hotel. [The list of facilities provided by the hotel is as follows:

Telephone, telex, fax services, extra beds, laundry services, internet surfing and Restaurant]. Date when used: Varchar (10) Holds the date when the facility was used in the format DD/MM/YYYY

Facility cost: Num(3) Contains the cost charged for each facility Advance paid: Num(6) Advance amount paid by the customer. Total: Num(8) The gross amount that the customer has to pay

Cancellation Receipt Receipt Num: Num (10), Primary Key

Contains a unique Invoice number 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 Advance paid: Num(6) Advance amount paid by the customer.

Forfeited cost/ Cancellation fee: Num(6) Contains the cost the customer will be charged upon cancellation of the booked room. Balance: Num(8)

The gross amount that the customer has to pay

CASE STUDY 1 A SYSTEM FOR JOURNAL ACQUISITION Statement of Problem A small library in an educational institution subscribes to 300 journals. It is desired to automate the journal acquisition and subscription system. We will follow the steps given in Table1 to analyze and design the system. The first step in design is fact gathering. The outcome of fact gathering is given below.

FACT GATHERING AND REQUIREMENTS SPECIFICATION

i)

Hierarchy chart of the organization

LIBRARIAN

DEPUTY LIBRARIAN JOURNAL ORGANIZATION

Programmer

Library assistant

ii) List of persons to be interviewed a. Librarian overall incharge of library b. Deputy Librarian incharge of journal acquisition c. Library Assistant who assists deputy librarian ii) Questions to be asked a. b. c. d. e.

Why is the computer-based system being considered? What are the basic objectives of the proposed system? What is the volume of data to be processed? What is the frequency of processing? What are the benefits expected from the system?

iii) Records of Discussion:

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. The basic objectives of the system are: a. To follow up regularly receipt of journals, promptly detect delay in receipt of an issue and send a reminder to the journal publisher b. To follow up with the publisher to send invoice for journal subscription well ahead of time c. To renew subscriptions of journal promptly d. To print out each week a list of journals received to be displayed so that users know of the arrival of journals e. To answer queries about the status of subscription, receipts, missing issues, etc, of any journal in the collection The main benefits expected by using the computer–based systems are a. Prompt follow-up with publishers to get replacement of missing issues of journals b. Prompt renewal of subscription and follow up with accounts section. This will avoid late payment of subscription and consequent cancellation of subscription and missing/late issues. c. Ability to answer enquiries about receipt of journals d. Analyze budget for journals, allocation of money to different disciplines.

iv) Document flow diagram

Journal order and cheque Remainder for journals Remainder for invoice

Publisher

Invoice

Receiving Office

Journals Journals Library

Invoice Received Journal Information

Journal Processing group

Journal received list

Invoice + Indent reference + cheque

Indent Purchase section

Accounts section Invoice copy

Journals for binding list The outputs required from the system and frequencies of outputs are described below: a. List of journals received - each week b. List of completed volumes ready to be bound – Once a year. c. Journal renewal with subscription to publishers - Before Nov 30 , each year starting on November 1. d. Reminder to publishers on non-receipt of journal – Aperiodic e. Indents for journal procurement to be sent to Accounts section – Before Nov1 each year starting Oct 1 Feasibility of the system We saw that the system is fairly simple and straightforward to implement and can be done with just 1 PC. The benefits here have already been listed. The cost is just that of a PC with system software and applications. It is around Rs 35,000 at 2005 prices.

SYSTEM SPECIFICATIONS

(i)

Detailed DFD

Request for missing journal issue

3 Generate reminder

Journals not received

Publisher Received journal details

Request for invoice

1 Check with order

Journal master

Received journal details

2 Update journals received and print

Weekly list

Library office

Journals ready for binding Journal master

4 Renewal process

Invoice for renewal

Journal publisher master

Journal expected

Generate Indent

Purchase section

Journal Received file

Payment authorization

5 Send Payment

Journal publisher master

Accounts section

Draft details with invoice copy

Payments detail with Invoice copy

Journal master

Journal publisher master

Journal payment Detail file

The functions of the each process in the DFD are as follows:

Process 1: 1. When a journal is received check journal ordered master 2. Generate details of journal received (journal identity, name, volume, issue no, month) and send details to Process 2. Process 2: 1. Enter journal received detail in journal received file 2. Print list of journals received during a week 3. Check list of journals expected with the journals received file. Send the list of journals expected and not received to process 3 4. When all issues of journal expected during the year have been received, send the information to journal binding section of the library Process 3: 1. Using the journals not received list, generate reminders to the publishers and request replacement Process 4: 1. In September, October and November check whether an invoice is received from the publisher for journal due for renewal in that month. If not, send request for invoice to the publisher. 2. When an invoice is received from the publisher, generate an indent to be sent to the purchase section 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: Procedure for process1

for each journal received do Enter journal identification code, volume and issue no. if journal is in ordered file then Retrieve journal details from master file and send details to Process2; else Give message “Journal not in master. Check identification code entered”; end for

Procedure for process2 for each journal received transaction sent by process1 do Enter journal received file; Print journal received in weekly list; end for Send list of journals received during week to the library. At the end of each month for each journal expected during the month do Search in journal received file; if not in file then send journal identification, volume no, and not received transaction to process 3; end for At year end for each journal in journal received file do if all issues of volume received then print journal details in binding list end for Send list to library

Procedure for process3 for each journal received note from process2 do using journal identification find publisher details from Journal-publisher master file; print letter requesting replacement to publisher; end for

Procedure for process4 At the end the month for each invoice received from the publisher do Search journal master file to find journal details; Search publisher master file to find publisher details; Generate indent and send to purchase section; Enter journal ordered information in journal master file; end for

Procedure for process5 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)

(ii)

(iii)

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. 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 Data about publisher/agent supplying journal: Publisher identification, Publisher’s name, address, agent or publisher.

The entity-relationship diagram for the application is shown below:

Publisher

1

1

1 Expected from

Ordered from

Publishes

1

N Journals

N

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. Publisher/Agent: Publisher id, publisher’s name, address, agent or publisher, publisher type. Journal-publisher relation: Journal-id, publisher id 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.

The relations needed by each process in the DFD:

Process

Relations to be read

1.

Journal expected

2.

Journal Journal expected

3.

Journal-publisher Publisher

4.

Journal-publisher Publisher Journal

5.

Journal-publisher Journal

Relations to be written

Journal received

Journal payment details

(iv)

Data encoding: All journals have a standard international code known as ISSN that can be used. In our design a simple serial number is used as a code to reduce data entry. In this case this is acceptable as the number of journals is quite small.

MENUS FOR DATA INPUT MAIN MENU AUTOMATED SERIALS CONTROL SYSTEM LIBRARY “XYZ” A> ORDER PROCESSING B> JOURNAL MAINTENANCE C> SUPPLIER MASTER MAINTENANCE D> QUERY E> EXIT ENTER YOUR OPTION

MENU A : ORDER PROCESSING 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 MENU B: JOURNAL MAINTEINANCE 1. UPDATE JOURNAL INFORMATION 2. ENTER JOURNAL RECEIVED DETAILS 3. PRINT REMINDERS 4. EXIT ENTER OPTION AND PRESS RETURN MENU C: MAINTAINING PUBLISHER MASTER 1. ADD PUBLISHER NAME 2. DELETE PUBLISHER NAME 3. MODIFY PUBLISHER DETAILS 4. EXIT ENTER OPTION AND PRESS RETURN

MENU D: ENQUIRY OR PRINTING ENQUIRY

PRINT 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 ENTER YOUR OPTION AND PRESS Esc CONTROL, AUDIT AND TEST PLAN 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 1. 2. 3. 4. 5. 6.

Codify journals being subscribed Create a master database of journals with details Codify publishers and agents who supply journals Create a master database of publishers with addresses Create journal id, publisher id, database Based on knowledge of delays in delivery, enter in journal expected relation the expected delay 7. Create a sample set of weekly, monthly and year-end transaction 8. Create transactions corresponding to receiving draft from accounts for subscription payment. 9. Design screens for data input and query answering 10. Test each process using sample data 11. Integrate all processes and databases 12. Create user manuals 13. Create system manuals 14. Design user’s feedback forms and system review plan (i)

(ii)

(iii)

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 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 Review plan: The system is to be reviewed at the end of one year.

AVAILABLE CASE TOOLS

I. SYSTEM FLOWCHART AND ER-DIAGRAM GENERATION TOOL Name of the tool: SMARTDRAW

URL: This Software can be downloaded from: http://www.smartdraw.com. This is a paid software, but a 30-day free trial for learning can be downloaded. 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 Name of the tool: IBMS/DFD

URL: This a free software that can be downloaded from: http://viu.eng.rpi.edu

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 Name of the tool: COPE

URL: This is a free tool and should be worked online at http://www.cs.adelaide.edeu.au/users/dwyer/examples.html

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 YNYN XX - -XXX

is A = 0. is B = 0. Move 0 to C. 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. There is online help provided at: http://www.cs.adelaide.edu.au/users/dwyer/COPE-MAN.html#RTFToC1 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 Name of the tool: ARM

URL: The tool can be downloaded without cost at http://sw-assurance.gsfc.nasa.gov/disciplines/quality/index.php

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 Name of the tool: Visual Basic

URL: http://www.microsoft.com/downloads/details.aspx?FamilyID=bf9a24f9-b5c548f4-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/enus/vbcon98/html/vbconpart1visualbasicbasics.asp

VI A TOOL FOR DESIGNING AND MANIPULATING DECISION TABLES Name of the tool: Prologa V.5 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? 3. Explain how data will be processed in a bank when a cheque is presented by a customer and payment made to him (assume the bank uses computers)

Module2 4. What benefits do you expect if an information system for a hostel is designed? 5.

In designing an information system for a hostel what constraints should be taken into account during feasibility analysis?

Module3

6. A hostel warden states the following requirements for a hostel information system: "Our hostel has 500 rooms and 4 messes. Currently, there are 1000 students 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 also given to students when they ask for it. Such extras are entered in an 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.

Module4 7.

Is it essential that an operationally feasible solution should be technically feasible? Discuss with examples.

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. 20. Modulus-37 check is suitable for alphanumeric codes. Add a modulus-37 character to the codes (i) 4AB9W, (ii) XBY483, and (iii) CAZ4642. 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. Develop E-R diagram for the following: Customer withdraws money from his account Students write examinations. Students attend classes Professors write books Driver drives a car 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 26. Prepare a print chart for stores data processing system. 27. Pick the appropriate graphics presentation for the following applications: (i) (ii) (iii) (iv)

Relative enrollment of students in various departments in a University. Growth of student strength in a department over a period of 10 years. Sales percent of a product in 6 regions of a country. Proportion of total revenue of a state from direct taxes, indirect taxes, public loan, land revenue, income from public sector companies, and

miscellaneous receipts. Module11. 28. Give a HTML code to display Introduction to e-Commerce This is a new book 29. Give an example of an extranet 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. 31. Design a proof figure for the above example.

Module13 32. Given a plain text: THIS IS A SAMPLE SENTENCE FOR ENCRYPTION. 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 34. Given two prime numbers 23 and 41 design a RSA system 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?

Related Documents