Information systems analysis Define the problem • terms of reference • goals and boundaries • understand user requirements
System analysis: detailed appraisal of the existing system • how to describe a complex system • iterative refinement • data flow diagrams
System design: produce a design for the new system • which parts to automate, which remain manual? • off-the-shelf software components? • design databases and program modules
System construction • development • implementation • testing
Expect trouble: computer systems are the most complex artifacts ever built!
Maintenance • post-implementation review • bug fixing • new/altered requirements
103-4
Objectives Different design cycles Dataflow diagrams Structure charts
System analysis and design
Perform a case study …
Identify agents and their operations • types of people • types of operations Identify agent/operation relationships • who does what with whom/what? Identify data requirements • what information is involved? • what fields does the database require? • what types are the fields? • what formats should be used? • general formats of database files 103-5
1
Top-down vs. evolutionary design Top-down design
e.g. accounts system
systems with well-defined objectives well-understood implementation techniques limited human-computer interaction
Evolutionary design
e.g. research
experimental systems new techniques need to be developed involve significant human-computer interaction
103-6
Linear system design cycle project definition
user requirements
terms of reference: project goal project bounds verify feasibility resource limits study conceptual solution expected costs and validation benefits verify
system analysis system model detailed system objectives broad design
verify system design
validation validation
Validation: Checking that a product satisfies user requirements Verification: Checking that an input has been converted correctly to an output
verify detailed design
user procedures proposed equipment configuration program and database specifications
verify construction
system implementation
installation
validation
postinstallation review
maintenance working system
validation
103-7
2
Linear Prototyping systemdesign designcycle cycle project definition
user requirements
feasibility study
system Build a prototype analysis
The prototype clarifies
Test prototype on users Gather feedback for detailed design
broad design
system objectives critical problems logical solutions
detailed design
construction
postinstallation review
installation
maintenance
103-8
Simplified design cycle The seven steps to heaven Definition Specification: feasibility? analysis? prototyping? Design Construction Testing Installation Maintenance
user requirements
103-9
3
Systems analysis case study: Lemonade stand A young girl decides to run an “old-fashioned lemonade” stand on the footpath outside her suburban home. Using the savings from her piggy-bank, she goes to the grocery store and buys some lemons and sugar to make her first batch. She starts selling her old-fashioned lemonade at 20 cents per glass to passers-by. By the end of the day she has run out of lemons and sugar, and has secured a small profit. That night, she tells a friend about her success in the business world, and her friend wants to get in on the action. The next day, the young girl takes her earnings from the previous day, goes to the grocery store and buys twice as much sugar and lemons as before. She sets up two stands on different streets, getting her friend to manage one of them for her. At the end of the day she collects the earnings her friend made, letting her friend keep part of the profits as salary. Before long, news of the business has spread, and the young girl now has six friends running stands for her. She is starting to have trouble keeping track of supplies, earnings, costs and wages. She decides to computerize her business and calls on her parent (YOU!) for help. 103-10
sugar
103-11
4
sugar
103-12
Lemonade stand: Agent/Operations girl
grocery
buy supplies (add to inventory) remove supplies from inventory make lemonade distribute lemonade collect income
sell supplies
employees
sell lemonade pass along income
passers-by
buy lemonade
103-13
5
Lemonade stand: Agent/Operations Agent
Action
Object
girl girl girl girl girl girl employee
buy supplies add supplies remove supplies make lemonade distribute lemonade collect income sell lemonade
grocery inventory inventory lemonade employee employee passers-by 103-14
Dataflow diagrams process
data store
source
data flow
sink
103-15
6
Dataflow diagram rule 1
source
source
sink
move data
sink
103-16
Dataflow diagram rule 2
database 1
database 2
move data
103-17
7
Dataflow diagram rule 3 A
A
A
B 103-18
Top-level dataflow diagram Overview of entire system One process only grocery store
friend employee
supplies money
0 make and sell lemonade
money lemonade
103-20
8
Second-level dataflow diagram grocery store supplies
receipt
inventory
3.0 add
supplies lemons and sugar
payment
purchase record
1.0
4.0
purchase supplies
remove lemons and sugar
accounts
5.0 make
income record
2.0 receive income
revenue
lemonade friend employee 103-21
Database design 1.0
purchase record
purchase supplies
accounts income record
2.0
Identify what information is to be stored/retrieved Define “fields” in each record Determine “types” and “formats” for each field
receive income
103-22
9
Records, fields, formats 1.0
purchase record
Purchase date:
string item: string quantity: integer cost: float
(or …)
Income
date: string from: string amount: float
(or …)
purchase supplies
accounts income record
2.0
date:
receive income
date 2001-04-17 2001-04-18 2001-04-21 2001-04-22
3 March 2001 03/03/01 2001-03-03 20010303
description purchase lemons (quantity 2) income (from Joe) purchase sugar (quantity 1) income (from Kate)
amount – 0.70 + 8.20 – 1.65 + 6.90
103-23
Database operations 1.0
purchase record
purchase supplies
accounts income record
2.0 receive income
1. Operations specified in dataflow diagram add purchase record add income record
these involve appending data to the end of a transaction file
2. Operations required by users calculate account balance summarize purchases summarize income
reports generated by processing transaction file in one of three ways, based on user’s request 103-24
10
Ada Lovelace
“Mother of all programmers”
Born: 10 December, 1815, London (Lord Byron’s daughter) Died: 27 November, 1853 1828 Designed a flying machine 1833 Met Charles Babbage Heard of his ideas for a new calculating machine then … got married and had 3 kids 1843 Translated an article about the analytic engine from French to English Added her own notes, which tripled its length
Wrote the first computer program (maybe) 103-26
Questions 1. The word “system” in the phrases “system analysis” and “system design” actually refers to two different systems. What are they? 2. What are the three basic steps in system analysis? 3. Under what circumstances should you use top-down design, and under what circumstances should you use evolutionary design? 4. What are the seven steps (the “seven steps to heaven”) in the simplified system design cycle? 5. What are the four basic elements in a dataflow diagram? 6. In a typical accounts system (such as the “lemonade stand”), there are two types of database operations: ones specified in the dataflow diagram and ones required by users of the system. Give two examples of the first kind and three of the second kind. 7. What is a “structure chart”?
103-27
11
Questions (cont) 8.
An established wholesale paper warehouse wants to computerize its sales, inventory and customer billing systems. The warehouse buys its stock directly from the manufacturer in packages of very large sheets of paper. It cuts and sells packages of smaller paper sizes to various printers and stationers. The wholesaler’s sales people bring purchase orders from the customers to the warehouse and give them to the stock clerk. The clerk checks first to see if the order can be satisfied with offcuts (paper ends left over from previous orders after cutting). If no suitable offcuts are available, the clerk sends a stock handler to retrieve new stock from the warehouse shelves. Once the appropriate stock has been collected together, the stock clerk sends it to the paper cutter who trims it to the desired dimensions. Any useable offcuts are returned to the stock clerk in case they can be used for subsequent purchase orders. The cutter sends the trimmed stock to the shipping clerk who checks to see if the order has been satisfied correctly. If there are any problems, the shipping clerk sends the trimmed stock back to the stock clerk who corrects the order and sends it back by way of the cutter. Once the shipping clerk has a correctly filled order, it is given to the truck driver for delivery, and the purchase order is sent to accounting for appropriate billing. 1. 2. 3. 4.
Identify the scope of the system using a context diagram. Draw a physical dataflow diagram to represent the activity in the system. The diagram should show top-level activity only. Give a process description for one process from your top-level dataflow diagram. Identify which data stores might be computerized. Describe the data and provide a few examples of representative data.
103-28
12