3.8

9
6.2 - 1 Chapter 3.8 Systems Development, Implementation, Management and Applications 3.8 (a) Techniques for Developing Computer Systems The figure below shows the stages involved when using Structured Systems Analysis and Design Method (SSADM). Data Flow Diagrams DFDs provide a graphic representation of information flowing through a system. The system may be manual, computerized or a mixture of both. The advantages of using DFDs are that it is a simple technique; is easy to understand by users, analysts and programmers; gives an overview of the system; is a good design aid; can act as a checking device; clearly specifies communications in a system; ensures quality. DFDs use only four symbols. These are shown in Fig. 3.8 (a)2. Feasibility Study Requirements Analysis Requirements Specification Logical System Specification Physical Design

Upload: samimvez

Post on 16-Nov-2014

426 views

Category:

Documents


1 download

DESCRIPTION

 

TRANSCRIPT

Page 1: 3.8

6.2 - 1

Chapter 3.8 Systems Development, Implementation, Management and

Applications

3.8 (a) Techniques for Developing Computer Systems

The figure below shows the stages involved when using Structured Systems Analysis and

Design Method (SSADM).

Data Flow Diagrams

DFDs provide a graphic representation of information flowing through a system. The

system may be manual, computerized or a mixture of both.

The advantages of using DFDs are that it

is a simple technique;

is easy to understand by users, analysts and programmers;

gives an overview of the system;

is a good design aid;

can act as a checking device;

clearly specifies communications in a system;

ensures quality.

DFDs use only four symbols. These are shown in Fig. 3.8 (a)2.

Feasibility Study

Requirements Analysis

Requirements Specification

Logical System Specification

Physical Design

Page 2: 3.8

6.2 - 2

Fig. 3.8 (a)2

All names used should be meaningful to the users, whether they are computer literate or

not.

The steps to be taken when developing DFDs are given in Table 3.8 (a)1.

Step Notes

1. Identify dataflows. e.g. documents, VDU screens, phone messages.

2. Identify the external entities. e.g. Customer, Supplier

3. Identify functional areas. e.g. Departments, individuals.

4. Identify data paths. Identify the paths taken by the dataflows identified in

step 1.

5. Agree the system boundary. What is inside the system and what is not.

6. Identify the processes. e.g. Production of invoices, delivery notes, payroll

production.

7. Identify data stores. Determine which data are to be stored and where.

8. Identify interactions. Identify the interaction between the data stores and the

processes.

9. Validate the DFD. Check that meaningful names have been used.

Check that all processes have data flows entering and

leaving.

Check with the user that the diagram represents what

Entity Outside environment (e.g. Customer)

Process

e.g.

Produce Invoices

2 Accounts Dept

Data Flow e.g. Order

D1 Data Store D1 Customer Orders e.g.

Page 3: 3.8

6.2 - 3

is happening now or what is required.

10. Fill in the details.

Table 3.8 (a)1

Fig. 3.8 (a)3 shows the different levels that can be used in DFDs.

Fig. 3.8 (a)3

Now consider the following scenario.

A hotel reception receives a large number enquiries each day about the availability of

accommodation. Most of these are by telephone. It also receives confirmation of

bookings. These are entered onto a computer database.

While a guest is resident in the hotel, any expenses incurred by the guest are entered into

the database by the appropriate personnel. If guests purchase items from the bar or

restaurant, they have to sign a bill which is passed to a receptionist who enters the details

into the database.

When guests leave the hotel they are given an invoice detailing all expenditure. When

they pay, the database is updated and a receipt is issued.

The flow of data in this system is shown below:

0 Payroll System

1 Get hours worked 2 Calculate wages 3 Produce wage slips

2.1 Validate

Data

2.3 Calculate

deductions

2.4 Calculate

net wage

2.2 Calculate

gross wage

Level 1

(Top

Level)

Level 2

(Lower

Level)

Level 3

(Not

always

needed)

Page 4: 3.8

6.2 - 4

The symbol for Customer, an external entity, has a diagonal line to indicate that it occurs

more than once. This does not mean that these symbols represent different customers. It

is simply used to make the diagram clearer. Without this, there would be too many flow

lines between this symbol and the internal processes.

Data stores may also be duplicated. This is done by having a double vertical line on the

left hand side as shown in Fig. 3.8 (a)5.

Fig. 3.8 (a)5

Notice this data store is numbered M1 whereas those in Fig. 3.8 (a)4 were numbered D1

and D2. In data stores, M indicates a manual store and D indicates a computer based data

M1 Customer data

1 Reception

Process

bookings and

accounts

1 Bar

Process

bookings and

accounts

1 Restaurant

Process

bookings and

accounts

D2 Customer Accounts

D1 Customer Details

Customer

Confirmation

of booking

Final Bill

Enquiry

Reply Drinks Order

Drinks Bill

Customer's

expenditure

Customer

Details

Customer

Details

Drinks Bill

Food Bill

Confirmation

of booking

Payment

Food Bill

Food Order

Receipt

Customer

Customer

Page 5: 3.8

6.2 - 5

store. Also, there can be no data flows between an external entity and a data store. The

flow of data from, or to, an external entity must be between the external entity and a

process.

The example of the hotel system only shows one external entity, the customer. Usually

there is more than one external entity. Suppose we are dealing with a mail order

company. Clearly, one external entity is the customer. However, another is the supplier.

Note that although there are more than one customer and supplier, in the diagram they are

written in the singular.

When a major project is undertaken, there will be a number of different tasks to be

carried out. (If the project consisted of a single task it could hardly be called ‘major’).

With a number of tasks, some may be possible at the same time, while with others it

becomes important to do them in the correct order.

It may also be important to work out how long the project should take to complete.

Major projects like this can be represented graphically to show the different tasks and

how they join together, or relate to each other.

Take, as an example, the major project of building a bungalow. It can be divided into a

number of tasks.

A Concreting the foundations takes 4 days

B Building the walls takes 4 days

C Making the doors and windows takes 7 days

D Tiling the roof takes 2 days

E Installing the plumbing takes 3 days

F Doing the interior carpentry takes 4 days

G Installing the electrics takes 6 days

H Decorating takes 5 days

One way of deciding how long the bungalow takes to build is to add up all the separate

times, 35 days. On the other hand they are separate jobs so as long as enough people are

working, it will only take as long as the longest task, 7 days. This is silly, the decorating

can’t be done before the roof is on!

The real time for the project is somewhere between 7 and 35 days.

H

G

F

E

D

C

B

A

4 8 12 16 20 24 No of Days

Fig. 3.8 (a)6

Fig. 3.8 (a)6 shows when all the different tasks can start and when they must end.

Page 6: 3.8

6.2 - 6

It shows which can overlap, and by how much.

Finally, it shows how long the project will take. (Your ideas of how a bungalow is built

may be different, but this is the method used by B and L Construction.)

Another type of graph might be similar to a flow diagram. The circles represent stages

and the arrows the tasks needed to reach that stage and the time, in days, needed to carry

them out.

4 A

4

B

2

7 D 6

C G

4

3 F

E 5

H

1 Start

2 Foundations finished

3 Start making the windows and doors

4 Walls finished

5 Roof finished

6 Interior finished

7 Bungalow finished

There are many routes through the diagram. The one that gives the time taken to

complete the bungalow is

1 2 4 5 6(G) 7

A total of 21 days. This is the critical path. The bungalow cannot be built in a shorter

time.

The arrows show the order in which the tasks must be carried out, so E (the plumbing)

cannot be done before B (building the walls), but can be done at the same time as tiling

the roof (D). Each node can have an optimum time worked out. Node 6 has an optimum

time of 4+4+2+6 = 16 days. This is the time to be sure of getting to node 6 whichever

route you choose. Each node can also have a latest starting time before it holds up

another node. Node 1 must start immediately otherwise the walls (4) won’t be finished

by day 8. However, node 3 could start immediately or wait a day without affecting the

rest.

1 2

3 4 5

6

7

Page 7: 3.8

6.2 - 7

Complex computing projects require effective management or they may get out of

control. Different personnel will be needed for different tasks. Their time must be

booked in advance so that they are free from working on other tasks or projects when

they are needed. This means that an accurate prediction of the start times of the various

tasks must be made. It is also necessary to assess how long the different tasks will last so

that other projects can book personnel.

There is now specialist project management software available that can take more

complex projects than the one that we were considering and produce the type of analysis

that we have been talking about. If the software is compatible with the diary software

used by a firm then it can automatically book the workers when they are needed.

3.8 (b) The Purpose of Documentation

It is important that the design of a solution is accurate BEFORE it is implemented. For

the design to be accurate, the original specification must be accurate. This means that,

when we are asked to produce a solution, we must make sure that we thoroughly

understand the problem. This can only be achieved by checking our analysis with those

who are going to use our system. Users are not usually technical people and so we

require simple ways of showing our understanding of the problem. One of the best ways

of doing this is to use diagrams.

An E-R diagram shows the relationships between entities so that we can check these

relationships with the end user. These diagrams help us to ask questions like

Can a customer only have one product?

Can a customer own many products?

Can a student borrow many books?

Thus, we can ensure that the relationships are correct. We can also ensure that we have

included all the entities.

Similarly, our Data Flow Diagrams (DFDs) show how data is moving through the

organization and we can ask questions like

Are there any other data requirements?

Are all data moving between the right departments?

Are all the external entities present?

This continual validation process is essential if we are to reduce the cost of maintenance

due to errors and omissions. The careful documentation also helps to maintain a piece of

software when it is to be upgraded by adding extra facilities.

Page 8: 3.8

6.2 - 8

3.8 (d) Appropriate Response Times

A classic example is the file of goods that needs to be accessed directly if it is to be used

at the point of sale terminal, and sequentially if the details are to be used for ordering of

replacements. The solution is to store the file in an indexed sequential format. At the

point of sale the item required is identified by a laser scanner whereas at the head office

the item name will likely be typed in at a keyboard. If a single item needs to be found

then a program can be written to find the details directly from the key field by using a

hashing algorithm, alternatively the items can be held sequentially in an index and a

program can be written to find the particular item by using a binary search of the index.

Dependent upon the method of search the data needs to be stored differently.

3.8 (e) Implementation Techniques Direct Implementation

Parallel Implementation

Phased Implementation

3.8 (f) Managing, Monitoring and Maintenance of Systems Adaptive Maintenance

Corrective Maintenance

Perfective Maintenance

User Request

Initial Study

Feasibility

Study

Systems

Analysis

Systems

Design

Implementation

Change Over

Evaluation

and

Maintenance

Page 9: 3.8

6.2 - 9

3.8 Example Questions

1. Explain what is meant by the term entity model. (4)

2. A computer system has been designed and produced for a person who works from

home for a publisher of fiction books as a proof reader of manuscripts. Another

system is designed for a graphic designer who sends work to clients electronically.

Describe how the hardware specifications for the two systems would differ. (10)

3. Describe how the forms of implementation:

(i) Parallel running

(ii) Phased

(iii) Direct

are carried out. In each case describe one aspect of an application which would

make that form of implementation appropriate in that case.

4. Discuss the need for project management when a major project is being

implemented.