+ All Categories
Home > Documents > 1 The Systems Cycle - markhunter.org - Paul Long text book... · 1 – The Systems Cycle Contents...

1 The Systems Cycle - markhunter.org - Paul Long text book... · 1 – The Systems Cycle Contents...

Date post: 26-Aug-2018
Category:
Upload: dangthu
View: 217 times
Download: 0 times
Share this document with a friend
73
A2 ICT 4 OCR @ A Level (G063) – Chapter 1 Published by paullong.net © paullong.net 2012 Page 1 of 73 by Paul Long 1 – The Systems Cycle Contents Contents ............................................................................................................................................... 1 a. describe the following stages of the system life cycle (definition of the problem, investigation and analysis, design, implementation, testing, installation, documentation, evaluation and maintenance) and how the stages relate to ICT systems .................................................................... 3 Definition of the problem ................................................................................................................ 4 Feasibility Study ............................................................................................................................... 5 Investigation & Analysis ................................................................................................................... 6 Design ............................................................................................................................................... 9 Implementation ............................................................................................................................. 13 Testing ............................................................................................................................................ 15 Installation ..................................................................................................................................... 17 Documentation .............................................................................................................................. 18 Evaluation....................................................................................................................................... 20 Maintenance .................................................................................................................................. 21 b. describe the advantages and disadvantages of different approaches an analyst might use when investigating a system: questionnaires, interviews, meetings, document analysis, observation ........................................................................................................................................ 23 Questionnaires ............................................................................................................................... 23 Interviews and Meetings................................................................................................................ 24 Document Analysis......................................................................................................................... 26 Observation .................................................................................................................................... 27 c. describe the following software development methodologies: prototyping and rapid application development (RAD) ......................................................................................................... 29 Prototyping .................................................................................................................................... 29 Rapid Application Development .................................................................................................... 30 d. describe the purpose of test data and explain the importance of testing and test plans ........ 32 Importance of Testing .................................................................................................................... 32 Purpose of Test Data ...................................................................................................................... 33 Importance of Test Plans ............................................................................................................... 34 e. describe the contents of the requirements specification, the design specification and the system specification, distinguishing between them .......................................................................... 37 Requirements Specification ........................................................................................................... 37 Design Specification ....................................................................................................................... 39 System Specification ...................................................................................................................... 39 f. describe the roles and responsibilities of the following members of the project team: project manager, systems analyst, systems designer, programmer and tester ............................................ 41 Project Manager............................................................................................................................. 41 Systems Analyst ............................................................................................................................. 42 Systems Designer ........................................................................................................................... 42 Programmer ................................................................................................................................... 42 Tester ............................................................................................................................................. 42 g. describe, interpret and create critical path analysis (CPA) and Gantt charts, and for each explain its suitability for use in a given application ........................................................................... 44 Gantt Charts ................................................................................................................................... 44
Transcript

A2 ICT 4 OCR @ A Level (G063) – Chapter 1 Published by paullong.net

© paullong.net 2012 Page 1 of 73 by Paul Long

1 – The Systems Cycle

Contents Contents ............................................................................................................................................... 1

a. describe the following stages of the system life cycle (definition of the problem, investigation and analysis, design, implementation, testing, installation, documentation, evaluation and maintenance) and how the stages relate to ICT systems .................................................................... 3

Definition of the problem ................................................................................................................ 4

Feasibility Study ............................................................................................................................... 5

Investigation & Analysis ................................................................................................................... 6

Design ............................................................................................................................................... 9

Implementation ............................................................................................................................. 13

Testing ............................................................................................................................................ 15

Installation ..................................................................................................................................... 17

Documentation .............................................................................................................................. 18

Evaluation ....................................................................................................................................... 20

Maintenance .................................................................................................................................. 21

b. describe the advantages and disadvantages of different approaches an analyst might use when investigating a system: questionnaires, interviews, meetings, document analysis, observation ........................................................................................................................................ 23

Questionnaires ............................................................................................................................... 23

Interviews and Meetings................................................................................................................ 24

Document Analysis ......................................................................................................................... 26

Observation .................................................................................................................................... 27

c. describe the following software development methodologies: prototyping and rapid application development (RAD) ......................................................................................................... 29

Prototyping .................................................................................................................................... 29

Rapid Application Development .................................................................................................... 30

d. describe the purpose of test data and explain the importance of testing and test plans ........ 32

Importance of Testing .................................................................................................................... 32

Purpose of Test Data ...................................................................................................................... 33

Importance of Test Plans ............................................................................................................... 34

e. describe the contents of the requirements specification, the design specification and the system specification, distinguishing between them .......................................................................... 37

Requirements Specification ........................................................................................................... 37

Design Specification ....................................................................................................................... 39

System Specification ...................................................................................................................... 39

f. describe the roles and responsibilities of the following members of the project team: project manager, systems analyst, systems designer, programmer and tester ............................................ 41

Project Manager ............................................................................................................................. 41

Systems Analyst ............................................................................................................................. 42

Systems Designer ........................................................................................................................... 42

Programmer ................................................................................................................................... 42

Tester ............................................................................................................................................. 42

g. describe, interpret and create critical path analysis (CPA) and Gantt charts, and for each explain its suitability for use in a given application ........................................................................... 44

Gantt Charts ................................................................................................................................... 44

A2 ICT 4 OCR @ A Level (G063) – Chapter 1 Published by paullong.net

© paullong.net 2012 Page 2 of 73 by Paul Long

Describing Gantt Charts ............................................................................................................. 44

Interpreting Gantt Charts ........................................................................................................... 46

Creating Gantt Charts ................................................................................................................ 47

Critical Path Analysis ...................................................................................................................... 49

Describing Critical Path Analysis Diagrams ................................................................................ 49

Interpreting Critical Path Analysis Diagrams ............................................................................. 50

Creating Critical Path Analysis Diagrams ................................................................................... 52

h. describe, interpret and create data flow diagrams and flowcharts, and for each explain its suitability for use in a given application. ........................................................................................... 57

Flowcharts ...................................................................................................................................... 57

Describe flowcharts and explain their suitability ...................................................................... 57

Interpret flowcharts ................................................................................................................... 58

Create flowcharts ....................................................................................................................... 59

Data Flow Diagrams ....................................................................................................................... 59

Describe data flow diagrams and explain their suitability ........................................................ 59

Interpret data flow diagrams ..................................................................................................... 62

Create data flow diagrams ......................................................................................................... 66

A2 ICT 4 OCR @ A Level (G063) – Chapter 1 Published by paullong.net

© paullong.net 2012 Page 3 of 73 by Paul Long

a. describe the following stages of the system life cycle (definition of the problem, investigation and analysis, design, implementation, testing, installation, documentation, evaluation and maintenance) and how the stages relate to ICT systems

Note: it is strongly recommended to teach this section alongside the G064 project and to use the

Model Project Answers available from www.paullong.net as a guide for examples of each of the stages of the system life cycle

The system life cycle is a process used for developing ICT systems. An ICT system is one which processes inputs and produces outputs. Review the diagram below of a standard system:

Example – a block paving system An example of a system is a piece of software which allows the user to enter measurements (input) of a driveway and it calculates (process) an invoice (output) to show how much it will cost to resurface the driveway. The file Block Paving.xls shows this system example.

When developing an ICT system, a team of people or an individual will follow the process in the diagram below starting with definition.

As the team or individual work through the life cycle, each stage is dependent upon the previous stage being completed. It is also possible to return to previous stages to make corrections or

Input Process Output

Measurements Calculations Invoice

A2 ICT 4 OCR @ A Level (G063) – Chapter 1 Published by paullong.net

© paullong.net 2012 Page 4 of 73 by Paul Long

changes. Different specialists may be used at each stage. For example, an analyst may complete the definition, investigation and analysis stages whereas a programmer may complete the implementation stage. Throughout the whole process it is imperative that the user is involved so that the system that is eventually delivered is one which meets the user’s needs.

Definition of the problem

The purpose of this stage is to identify the user’s problem. A problem is not necessarily an error or something that is wrong. The problem may be that the user requires a system to perform some calculations or to create some invoices or to create drawing pins using CAD/CAM.

Example – problem Using the Block Paving example, the problem is that the user requires a system that will calculate how much it will cost to pave a driveway and produce an invoice detailing the costs.

Solving a problem may require a completely new system to be built or it may involve upgrading an existing system. A very brief investigation will take place where an analyst will interview the user to find out what their problem is and get a rough idea of what the user wants a system to do. The analyst will also find out what the current system does and how it works. The current system may be a computerised one or may be a manual system.

A2 ICT 4 OCR @ A Level (G063) – Chapter 1 Published by paullong.net

© paullong.net 2012 Page 5 of 73 by Paul Long

The analyst will identify what the reasons are for a new system to be developed. Some examples include:

maintenance (see chapter 5 learning objectives g and h)

inefficiency of the current system

the organisation has grown in size requiring tasks to be automated

the existing system is out of date

the existing system is no longer suitable for its purpose Problems that are suitable for computerisation include:

repetitive tasks (eg calculating and printing pay slips)

need for precision (eg producing pistons for a car engine)

complex operations (eg projecting pension payments)

dangerous situations (eg bomb disposal)

Example – reasons The current block paving system requires the user to calculate all the costs manually using a calculator, pen and paper. This is inefficient and sometimes inaccurate meaning that a more efficient system is required. It is a repetitive task and so is suitable for computerisation and it also requires complex operations which are the calculations to work out the invoice figures.

Feasibility Study

The system life cycle used by OCR does not include a feasibility study as a separate stage. There are different schools of thought regarding whether a feasibility study is a separate stage or whether it is part of the definition or the investigation and analysis stage. For the purposes of the examination, assume that it is part of the definition stage. The word “feasible” has the following synonyms:

possible

practicable

viable

achievable

realistic The purpose of a feasibility study is to determine whether it is feasible (practicable, realistic, viable) to produce the system that has been defined. Questions have to be asked such as whether it is worth producing a new system or whether it is possible to produce a new system.

A2 ICT 4 OCR @ A Level (G063) – Chapter 1 Published by paullong.net

© paullong.net 2012 Page 6 of 73 by Paul Long

The analyst has to consider restrictions such as:

time available to produce the system

cost of producing the new system compared with the cost of not producing it

availability of technology (hardware and software) that will be needed to solve the problem

availability of personnel to work through the system life cycle See chapter 5 learning objective c for further restrictions that have to be considered.

Feasibility Task – follow me Discuss some of the AS tasks you completed last year:

Which were suitable for computerisation?

Which ones were not necessary?

Which ones could have been done better in a different way?

Investigation & Analysis

This is an extension of the definition stage but is only completed if it is decided that the system will be feasible. It is all about finding out the detail of the current system and the requirements for a new system. The analyst will find out the following information

full details of the problem to be solved

current methods used to carry out the tasks

detailed requirements (user needs) for the new system

A2 ICT 4 OCR @ A Level (G063) – Chapter 1 Published by paullong.net

© paullong.net 2012 Page 7 of 73 by Paul Long

Example – analysis The analyst has interviewed the user to find out more about the block paving problem:

The user needs a system that will allow him to enter the length and width of a driveway, the type of block to be used and the type of base (concrete or hardcore) as well as the customer’s name and address. He wants the system to automatically calculate and produce an invoice.

The analyst has watched how the user works to discover that this is how the user creates invoices at the moment (current system):

The user multiplies the length by the width to calculate the area in square metres.

The user finds out the cost of each brick by looking it up in the catalogue.

The user writes down the area of each brick which is found from the catalogue

The user works out how many bricks are needed by dividing the area of the driveway by the area of one brick and adding an extra 5%

The user works out the cost of the bricks by multiplying the number of bricks by the cost of a single brick

……. in the real analysis of the current system, all the other calculations would also be

included here.

The analyst then looks at some examples of current invoices used by the user and interviews the customer to find out what each invoice should contain (output requirements):

“Block Paving Ltd” and the logo at the top of the page

“Quote for Driveway” underneath the company name

The customer’s name and address

The date of the quotation

The dimensions of the driveway including length, width and area with units included (eg m and m2)

The analyst then used some questionnaires to find out what existing customers thought about the invoices they received and what sort of information they might like to see on future invoices.

The analyst will also determine what the input requirements are in order to produce the output and what calculations must be made in the new system.

In order to gather the information in the example above, you will notice that the analyst used different methods to elicit information from the user. These were:

interviews with the user

observing how the user worked (to find out how it’s really done)

questionnaires (suitable for large numbers of users or customers)

examining documents (to find out what data is used) From these findings, the analyst will produce two reports:

analysis of the current system, current methods and the problem to be solved

user requirements for the new system

A2 ICT 4 OCR @ A Level (G063) – Chapter 1 Published by paullong.net

© paullong.net 2012 Page 8 of 73 by Paul Long

The user requirements form a foundation for the rest of the life cycle as they will continually be used to check that the user is getting what they have asked for. The user requirements document is like a contract that will be signed by the user. It must be detailed enough for a designer to design a new system that meets all of the user’s needs. If it lacks detail or is inaccurate then the design will also be inaccurate. The user must be involved during all stages of the system life cycle (see chapter 5 learning objective c) but predominantly during the investigation and analysis stage. If the user is not involved, then the system that is produced is one that the analyst thinks is appropriate rather than one which will be useful for the user. The analyst will provide drafts of the current systems analysis document and the user requirements document to the user so that feedback can be given to the analyst and corrections can be made before a final version is produced. This helps to reduce misunderstandings between the analyst and the user and errors that may appear. See chapter 1 learning objective e for more information about requirements specifications.

A2 ICT 4 OCR @ A Level (G063) – Chapter 1 Published by paullong.net

© paullong.net 2012 Page 9 of 73 by Paul Long

Design

The design stage follows the investigation and analysis stage. The requirements specification is used by a designer to produce draft layouts, plans and data structures. By following the requirements specification, the designer is ensuring that the user’s needs are met. However, mistakes do occur and often errors are identified during the design stage that were not identified during the investigation and analysis stage. This is good news because it gives an opportunity for the user to give feedback before the real system is produced and it means that changes can be made to the requirements specification. The designer will perform some or all of the tasks below:

project planning (see chapter 1 learning objective g) ­ Gannt charts ­ Critical Path Analysis (CPA)

defining the data dictionary ­ tables, fields, data formats and formulae used to store and process the data ­ validation routines to reduce errors ­ error messages so that the user knows what to do when an error has occurred ­ relationships including an ERD (entity relationship diagram) ­ query structures using pseudo code or SQL

sketching layouts of data capture methods, for example membership application forms, OMR sheets or questionnaires

identifying input methods ­ sketching data entry screen layouts ­ identifying what data must be included when input ­ screen connectivity diagrams to show how the user can move from one screen to

another

A2 ICT 4 OCR @ A Level (G063) – Chapter 1 Published by paullong.net

© paullong.net 2012 Page 10 of 73 by Paul Long

identifying outputs ­ sketching output screens to show where data will be displayed ­ sketching reports that might be printed to show where data will be listed ­ identifying what data must be included in each output ­ audio, video and other multimedia elements (eg story board)

defining processes that need to take place ­ pseudo code (a language in a particular structure that most people can understand

and is used to describe the processes that will take place) ­ flow charts to show the order of processes and decisions that are made ­ descriptions of processes so the developer understands what will need to be done

design specifications ­ identifying the fonts, colours, sizes, backgrounds etc used on documents

test plan ­ identifying each of the tests that should be carried out once the system has been

developed ­ identifying the data that will be used for each test (including normal,

invalid/erroneous and extreme data) ­ identifying how to carry out each test ­ identifying the expected results for each test ­ the test plan must be related to the requirements specification ­ a user test plan that can be followed by the user ­ see chapter 1 learning objective d for the purpose of test data

See chapter 1 learning objective e for information about what is included in the design specification.

A2 ICT 4 OCR @ A Level (G063) – Chapter 1 Published by paullong.net

© paullong.net 2012 Page 11 of 73 by Paul Long

Example – input screen layout

1 - Drop down box for category will show the categories listed in the table called CATEGORY. Only those categories can be selected.

2 - Drop down box for supplier will show the ID, Name, and post code of the data in the SUPPLIER table. Only those suppliers can be selected.

3 – Text box for description should allow up to 30 characters to be entered.

4 – The Save button will save the data on the screen into the PRODUCTS table.

5 – The Clear button will clear all the input data on the screen without saving it.

6 – The Menu button will close the products form and open the menu. If data hasn’t been saved, then the user should be prompted to save it first.

7 – The Help button will go to a help screen to explain what all the options on the data entry screen mean.

A2 ICT 4 OCR @ A Level (G063) – Chapter 1 Published by paullong.net

© paullong.net 2012 Page 12 of 73 by Paul Long

Design Task Read the “Design” chapter of the AS Structured Tasks Support Book v4 or “OCR ICT for AS” first edition by Paul Long et al. You will find the activities/tasks in this chapter particularly useful for your own coursework project for unit G064. Depending on the type of project you are doing (eg Spreadsheet/Database), follow the appropriate tasks. Clicking on the hyperlinks for tasks will take you to copies of the tasks that have been included with this online book to save you using the AS book. The hyperlinks for examples take you to a developed version of the example but you will need the AS book or Support Book v4 for the actual designs.

Task/Example Software First Edition Page

Support Book v4 Page

Example: Draft Design Layout Any 207 Task: Screen Layout Any 208 Example: Report Layout Any 208 Task: Report Layout Any 209 Example: Audio Output Any 210 Task: Audio Output Any 210 Example: Video Output Web / Video / Multimedia 210 Example: Screen Connectivity 1 Any 210 Example: Screen Connectivity 2 Any 210 Task: Mail Merge Design Specification Word Processing / Spreadsheet

/ Database 212

Example: Multimedia Design Specification Multimedia / Website / Presentation

213

Task: Website online Form Design Specification Website 214 Example: Entity Relationship Diagram Database 215 Task: Entity Relationship Diagram Database 216 Example: Entity Structure Design Database 217 Task: Entity Structure Design Database 217 Example: Data Types Design Database 218 Task: Data Dictionary 1 Database 218 Example: Validation Design Database 219 Task: Data Dictionary 2 Database 220 Example: Other Data Dictionaries Database 220 Example: Calculations Spreadsheet / Database 221 Example: Routines Any 222 Example: Flowchart Any 224 Task: Flowchart Any 225

A2 ICT 4 OCR @ A Level (G063) – Chapter 1 Published by paullong.net

© paullong.net 2012 Page 13 of 73 by Paul Long

Implementation

The implementation stage involves the actual creating of the system / software. It is more commonly known as the “development” stage, but for OCR’s purposes, you should refer to it as the implementation stage. One or more software developers will be used during this stage to develop the system. They will be expected to follow the design exactly and to refer to the requirements specification to ensure they are meeting the user’s needs. Often developers will use prototyping (see chapter 1 learning objective c) to create the system. This involves creating the basic user interface and showing it to the user for feedback, then moving on to the next stage and at all times getting feedback from the user. A system might be developed from scratch using programming software such as C++ or Visual Basic (known as custom-written software). Alternatively, a developer may user a spreadsheet, database or other standard off-the-shelf software to create the system and tailor it to the user needs.

A2 ICT 4 OCR @ A Level (G063) – Chapter 1 Published by paullong.net

© paullong.net 2012 Page 14 of 73 by Paul Long

The tasks that the developer will carry out include creating:

data capture forms (eg a paper order form)

data structures (eg ERD, tables, data types)

formulae

validation routines and associated error messages

processes using code or macros (eg what happens when a button is pressed – such as printing an invoice)

input methods including data entry screens

queries

output reports (eg lists, letters, invoices)

multimedia aspects (eg video, sound)

house style

Example – block paving development In the Block Paving.xls example, the developer has done the following:

1 - input methods (the “Input Screen” including drop down menus, text entry and button clicks)

2 - validation (the length and width – try entering letters instead of numbers)

3 - process (the macros that are used to display and print the invoice when the buttons are pressed)

4 - formulae (for several calculations on the invoice)

5 - data structures (the lookup tables used in the “Brick Types” sheet

6 - output report (the invoice)

7 - house style (the name of the company and logo)

Development Task Read the “Development” chapter of the AS Structured Tasks Support Book v4 or “OCR ICT for AS” first edition by Paul Long et al.

The original examples can be found here.

A2 ICT 4 OCR @ A Level (G063) – Chapter 1 Published by paullong.net

© paullong.net 2012 Page 15 of 73 by Paul Long

Testing

During the design stage, test data would have been chosen and a detailed test plan drawn up. The system was then created during the implementation stage. Test data is now entered into the system ready for testing. It is now time to follow the test plan to find out what works and what errors there are. The testing can be carried out by the same person that developed the system. This has the advantage that the tester is familiar with the system, but it also means that their motivation is to NOT find errors. If a different person or team is used from the implementation stage, then the motivation can be to find errors. This may sound bad, but it’s actually good. The more errors that are found means the more opportunities there are to correct them and have a good quality working system. In industry, a testing team can be known as the “black team of death” and there will be a lot of banter between them and the developers because the team of death will be motivated by finding errors whereas the developers want their system to work well first time. The amount of testing that is carried out will depend upon how life or mission critical the system is. For example, a system that monitors the heartbeat of a baby is life critical; if it fails, then a baby could die. Therefore, thorough testing would be carried out on such a system to make sure that it is as close to perfect as possible. However, a system that monitors attendance of students at school is very useful, but it would not be a disaster if some minor errors occurred. Therefore, although the testing will still be done well, it won’t be done in as much detail as a life critical system. Testing takes a lot of time and is therefore expensive so careful consideration has to be made as to how much testing can realistically be carried out.

A2 ICT 4 OCR @ A Level (G063) – Chapter 1 Published by paullong.net

© paullong.net 2012 Page 16 of 73 by Paul Long

Some of the testing will be done by the user. The user will follow the test plan that was created by the designer. The main purpose of user testing is to make sure that the requirements specification has been met. When errors are found in the system, they will be recorded on the test plan. The developer will then have the responsibility of correcting these errors. This means going back to the development stage and making the correction. The system can then be re-submitted to the tester to see if the corrections have worked and also to test the impact of the corrections on other parts of the system. Sometimes it might be the design that is wrong or even the requirements specification. This then involves making changes to the requirements specification and/or the design specification before changes can be made to the code or customisation in the development stage. This process of going back and forth between stages is known as “iteration” parts of each stage have to be repeated. See chapter 1 learning objective d for reasons why testing is important. You may find it appropriate to study this chapter now rather than later.

A2 ICT 4 OCR @ A Level (G063) – Chapter 1 Published by paullong.net

© paullong.net 2012 Page 17 of 73 by Paul Long

Installation

This stage is when the system is installed ready for the users to use. It is sometimes known as “implementation” but should not be confused with how “implementation” is used by OCR which is “development”. It is also known as changeover which is when the old system is changed over to the new system. See chapter 5 learning objective d for more information about different methods of installation which include:

Method Description Parallel The old system and the new system are run together at the same time during the

changeover period. Direct The old system is retired immediately and the new system fully used immediately. Phased Parts of the new system are used while other parts of the old system continue to be

used. More new parts are introduced during the changeover period. Pilot A group of people within an organisation use the new system and then more groups

of people start to use the new system during the changeover period.

A2 ICT 4 OCR @ A Level (G063) – Chapter 1 Published by paullong.net

© paullong.net 2012 Page 18 of 73 by Paul Long

Documentation

Documentation is used so that the user knows how to use the system. It would normally be provided to the customer during the installation stage. There are 3 main types of documentation:

Documentation Description User documentation

This is usually in the form of a book or other printed material and contains instructions to show the user how to use the software. User documentation would normally include:

Front Cover Identifying the name of the system and the fact that this is user documentation.

Contents Page A list of the main topics with page numbers.

Introduction / Overview A brief overview of what the purpose of the user guide is and what the purpose of the system is.

Hardware Requirements A list of the minimum specification of hardware needed to run the system.

Software Requirements A list of the minimum specification of software needed to run the system.

Instructions Step by step instructions to how to use the software including screenshots of software and photographs of hardware.

Glossary An alphabetical list of common terms used throughout the system with a definition of each term.

Troubleshooting Common problems are described, including all error messages, with causes for why the problem may have occurred and possible solutions.

A2 ICT 4 OCR @ A Level (G063) – Chapter 1 Published by paullong.net

© paullong.net 2012 Page 19 of 73 by Paul Long

The user documentation should include:

screenshots to show the user the system working

photographs of hardware if appropriate

page numbers

a header and/or footer

bullets or numbering for sequential instructions User documentation is very likely to be used as part of the training of users. Each user will then have a copy of the user documentation to use as a reference guide when using the software.

On-screen documentation

This would normally be created during the development stage. It includes:

error messages telling the user what to do

on-screen tips giving guidance to the user

help topics when a key, button or hyperlink is pressed

appropriately labelled buttons

instructions that appear on data entry screens

videos and animations showing the user how to do something Technical documentation

This is needed for maintenance of the system that might need to take place in the future. Maintenance may be required because errors are found, improvements are needed or changes need to be made to adapt to new circumstances. The maintenance team are unlikely to be the same people as the development team and so they need detailed instructions about how the system was constructed so that they can understand how to make changes to the system. Technical documentation would include:

Data dictionary Showing all the data structures used within the system.

Programming Code Annotated to explain what each section does.

Back-up routines Showing how they have been setup, where files are stored and how to recover from a backup.

Validation rules Showing the constraints and error messages.

Filenames A list of all filenames used within the system and each file’s purpose.

Functions and formulae

Each one will be explained to describe its purpose and how it works.

Macros A list of all the macros used, together with explanations of what each one does and how it was created.

Buttons/Hyperlinks A list of all buttons and hyperlinks, their locations and their destinations.

Installation guide Showing how the system should be installed.

Testing logs Showing all the results of testing.

Security details Showing how different groups can log on, what the permissions are and how to change the security.

Documentation Task 1) Read the documentation chapter of the AS Structured Tasks Support Book v4 or “OCR ICT for

AS” first edition by Paul Long et al.

2) Look at this example of user documentation. Identify each of the sections described above.

A2 ICT 4 OCR @ A Level (G063) – Chapter 1 Published by paullong.net

© paullong.net 2012 Page 20 of 73 by Paul Long

Evaluation

After the system has been handed over to the client (user), the job of the people who analysed, designed, developed and tested is nearly over. The final thing to take place is an evaluation of how well the system life cycle went for this system. A number of different personnel will be involved in the evaluation. These include:

project manager

analysts

designers

developers

testers

trainers

users The aims of the evaluation include:

compare the system against the original requirements specification to see how well it does the job it was intended to do

see how successful the project has been

learn from mistakes so tasks can be completed better in the future

compare planned timescales and actual timescales

identify any maintenance that is required.

A2 ICT 4 OCR @ A Level (G063) – Chapter 1 Published by paullong.net

© paullong.net 2012 Page 21 of 73 by Paul Long

Maintenance

Maintenance involves making changes to the system. Maintenance takes place because:

improvements are wanted by the user (perfective)

changes need to be made to adapt to new circumstances (adaptive)

errors need to be corrected (corrective) It would appear that this is the final stage of the system life cycle. However, it is just a starting point of the whole life cycle all over again. When a change is made, it needs to be:

identified (definition)

specified (investigation & analysis)

designed (design)

developed (implementation)

tested (testing)

updated in the system (installation)

documented (documentation)

evaluated (evaluation)

A2 ICT 4 OCR @ A Level (G063) – Chapter 1 Published by paullong.net

© paullong.net 2012 Page 22 of 73 by Paul Long

Questions – follow me 1) Describe two reasons why a new ICT system might be developed. [2]

2) Describe the term “feasibility study”. [2]

3) Describe two methods used by analysts to elicit information from users. [2]

4) Explain the importance of the requirements specification to the designer. [2]

5) Describe two tasks that a designer will carry out. [2]

6) At what point in the system life cycle does the implementation (development) stage occur? [2]

7) Describe the testing stage of the system life cycle. [2]

8) Identify three methods of installation. [3]

9) Identify two items of documentation. [2]

10) Describe the purpose of the evaluation stage of the system life cycle. [2]

A2 ICT 4 OCR @ A Level (G063) – Chapter 1 Published by paullong.net

© paullong.net 2012 Page 23 of 73 by Paul Long

b. describe the advantages and disadvantages of different approaches an analyst might use when investigating a system: questionnaires, interviews, meetings, document analysis, observation

During the investigation and analysis stage of the system life cycle, an analyst must find out the following information:

full details of the problem to be solved

current methods of carrying out tasks

detailed requirements (user needs) for the new system The following investigation methods may be used by analysts:

interviews (with selected users)

questionnaires (suitable for large numbers of users)

examining documents (to find out what data is used)

observing user activities (to find out how it’s really done) The methods the analyst uses will be dependent upon:

the information required by the analyst

the users/people who need to be involved

availability of personnel

what is permitted by the organisation

Questionnaires

Questionnaires are useful for gathering information from lots of users. Questions need to be structured carefully to:

elicit the information required

enable analysis of the data effectively

gather enough information without causing a large burden upon the users

On-line questionnaires enable quicker analysis of data because the users fill in the data on-line and then the data is entered directly into a database. This saves time with additional data entry. A balance of questions on a questionnaire is required:

Question Reason Multiple Choice To make analysis of results more effective because answers can be categorised and

counted in those categories.

Opinion Ratings To find out how effective current systems are and what potential users think of the plans for a new system.

Open Questions To enable users to add their own ideas and opinions.

A2 ICT 4 OCR @ A Level (G063) – Chapter 1 Published by paullong.net

© paullong.net 2012 Page 24 of 73 by Paul Long

Advantages Questionnaires are appropriate for large groups of users, or customers, because it would

be impractical to interview everybody individually. The same information is gathered from each user and so this makes it easy to compare the

results. Sometimes results might be analysed statistically, or for a ‘medium’ sized group then each one would be analysed individually.

The questions are planned in advance and so are designed to gather the information required.

Questionnaires can also be useful if the analyst has difficulty getting appointment times with users.

Honest answers are also more likely to be given on questionnaires if they are anonymous. Disadvantages

Questionnaires are inappropriate for one user or a very small number of users because they do not enable the analyst to find out exactly what the user wants.

The respondent to the questionnaire (the user) is restricted to answering just those questions and so the analyst can’t ask the user to elaborate.

Questionnaires can appear to be impersonal which may alienate the user(s). Many users may not have the time to complete the questionnaire or just may ‘not be

bothered’ meaning that not all questionnaires will be returned.

Interviews and Meetings

Interviews tend to be used for individuals or small groups of people. People that are interviewed may include:

People Reason Management To find out what the needs are of the

organisation and what information needs to be used for decision making.

End-Users To find out how everyday tasks are completed and what is needed to make these tasks more efficient.

Customers To find out what features of the current system the customer likes and dislikes and what improvements customers might like to see (for example emailed invoices).

Questions for interviews need to be well planned:

Questions need to be planned so that they elicit the information that is required

Potential answers should be considered so that the interviewer is prepared for how to respond to those answers

Possible follow-up questions should be planned so that more detailed information can be gathered from the interviewee.

Sometimes “focus groups” might be used instead of individual people. These would be carefully selected people that cover a broad spectrum. For example, customers of different ages could be selected so that a range of views are gathered. These can be expensive to set up because each customer is likely to be paid for their expenses.

A2 ICT 4 OCR @ A Level (G063) – Chapter 1 Published by paullong.net

© paullong.net 2012 Page 25 of 73 by Paul Long

Interview Task – follow me Interview Role Play

Organise yourselves into groups of three:

Analyst

User

Observer

Imagine a new Automated Teller Machine System is to be pro```duced

Scenario one:

Analyst: plan questions and ask the user about their requirements for a main menu screen. Think about all the things that might be required an ensure you ask enough questions to develop a requirements specification.

Observer: identify the techniques used by the analyst and suggest areas of improvement

Scenario two (change roles):

Analyst: plan questions and ask the user about their requirements for a single (or set of) withdrawal screen

Observer: identify the information that the analyst has gathered and identify any information that is missing

Scenario three (change roles):

Analyst: plan questions and ask the user about their requirements for a screen to change the user’s PIN number

Observer: compare the analyst’s plan to what actually happens in the interview. Identify times where the analyst has needed to deviate from the plan.

Advantages

More detailed information can be obtained than questionnaires because the interviewee can answer open questions with open answers

The analyst can ask the users to elaborate upon their answers meaning that they can get detailed responses and therefore get all the information that is needed

Additional questions can be asked if the analyst suddenly thinks of something that may provide useful information

Opinions can be expressed informally Body language can be read meaning that the interviewer gets more information about the

interviewee’s feelings or opinions about current or future systems

A2 ICT 4 OCR @ A Level (G063) – Chapter 1 Published by paullong.net

© paullong.net 2012 Page 26 of 73 by Paul Long

Disadvantages

Interviews are time consuming because they have to be planned, arranged, carried out and then the responses need to be analysed.

Interviews are not appropriate for lots of users because of the amount of time it would take

Interviews do not provide statistical data analysis because they are not as structured as questionnaires

It may be difficult to arrange a mutually convenient time for the interview Lack of anonymity may lead to honest answers not being given and therefore true opinions

about the current or future system cannot be elicited

Document Analysis

This is all about examining documents that are used by the organisation. By looking at the documents used, an analyst can identify what information is currently used by the organisation and how procedures are carried out. This is particularly useful for identifying how data flows within an organisation. Some of the documents that might be examined include:

data collection forms (eg membership applications)

invoices

receipts

calendars

purchase order forms

business cards

letter head

Invoice Task – follow me Look at this sample of an invoice.

1) Identify all the information that would be static on each invoice

2) Identify all the data that changes on each invoice

Document examination Task – follow me Collect between three and five documents from an organisation (eg school, club, shop, business, church, political party).

1) Identify the information that is repeated on all documents

2) Identify the information that is repeated on most documents

3) Identify information that is specific to each individual document

A2 ICT 4 OCR @ A Level (G063) – Chapter 1 Published by paullong.net

© paullong.net 2012 Page 27 of 73 by Paul Long

Advantages

lots of data that is used within an organisation can be quickly identified data flows within an organisation can be established

Disadvantages

on its own, document analysis will not show all the data that is used within an organisation it only shows data that is used ‘formally’ – any data that is used verbally will not be seen often an organisation can have standard documents such as purchase orders but the

people within the organisation do not use the documents and so an incorrect picture of the current system can be imagined

Observation

This is about watching people in their normal environment and seeing how they carry out everyday tasks. This can be done by sitting with the users which means the analyst can ask questions as the day goes along, or it can be done using video cameras so that users are not as aware of the presence of an observer and therefore less intimidated. Watching things happen in real life gives a clearer picture of current systems than descriptions of tasks that are gathered at interview. It’s particularly useful when documents are not available to examine, for example on a building site. However, when users are being watched, they are likely to try and do everything how it should be done rather than how they usually do this. This is because they think they are being monitored rather than watched. This is particularly the case when the observer is sitting with a user and this can give an inaccurate picture of how things are really done. Observations that the analyst will make will include:

tasks that are completed

how long each tasks takes

the input and output data used for each task

inefficiencies with tasks that could be improved upon Advantages

the analyst can see for themselves how tasks are performed rather than getting a description of the task

inefficiencies in tasks can be identified which will enable a better new system to be created when documentation isn’t available, this allows the analyst to identify what data is being

used verbally and visually the analyst can share the experience of the users, including any frustrations the analyst can ask the users questions as they do their work so that the analyst can elicit

the detailed information required to produce a requirements specification

A2 ICT 4 OCR @ A Level (G063) – Chapter 1 Published by paullong.net

© paullong.net 2012 Page 28 of 73 by Paul Long

Disadvantages

users may feel intimidated if they are being watched and this may slow them down or make them less efficient with their tasks than they would be normally

users may do things ‘properly’ because they feel they are being monitored rather than watched meaning the analyst doesn’t get a true picture of how the current system works

it takes up a lot of the analyst’s time to watch users at work, particularly if there are lots of repetitive tasks being performed

only a ‘snapshot’ of the time that the analyst observes is gathered and so there may be other tasks that are regularly carried out but not at that particular time

Observation Task – follow me Observe one of your peers answering a couple of the questions below:

1) What information do they refer to when answering the questions?

2) Where does this information come from?

3) What do they write down?

4) What software and hardware is used?

5) Where are files saved?

Questions – follow me

1) Identify two advantages of using questionnaires. [2]

2) Describe two disadvantages of interviews. [4]

3) You are developing a system for a builder. He is the only person in his company. Identify which methods of investigation would you use and for each give a reason why you would use it. [4]

4) Give one disadvantage of document analysis. [1]

5) Describe one advantage of observation. [2]

A2 ICT 4 OCR @ A Level (G063) – Chapter 1 Published by paullong.net

© paullong.net 2012 Page 29 of 73 by Paul Long

c. describe the following software development methodologies: prototyping and rapid application development (RAD)

Software development methodologies are specific ways of completing the design and implementation (development) stages of the system life cycle.

OCR need you to learn about two of these methodologies:

prototyping

rapid application development

Prototyping

This is an iterative (repetitive) process between the design and implementation (development) stages of the system life cycle. The system is designed at the same time it is developed. This is done in stages whereby an initial prototype will be created. A prototype is a ‘mock-up’ of what the real system will eventually look like. It is not complete. The first prototype of a software system will usually show what the user interface will look like. This allows the user to see what the system will look like and give some feedback to the designers/developers. They can then modify the design as they go along by implementing the changes the user asks for. The developers will then produce the next prototype which might include data structures and the user will again be asked for feedback. This is very useful for the user because they do not have to interpret designs but instead get to see what the actual system is going to look like. It also means that the developers can implement user feedback as and when it is given rather than waiting until the end of the

Design Development

A2 ICT 4 OCR @ A Level (G063) – Chapter 1 Published by paullong.net

© paullong.net 2012 Page 30 of 73 by Paul Long

development stage. The main problem with this approach is that the user can keep changing their mind and trying to add in new features.

The diagram above shows how feedback from the users is received after a prototype is developed and then how this leads to the next prototype being developed. Eventually this will result in the final system being completed.

Prototype video Task Watch these videos:

Developing a prototype of a user interface

Prototyping an iPhone app

An example of a user giving feedback on a website

Rapid Application Development

RAD Video Task Watch this introduction to RAD.

RAD (Rapid Application Development) is a methodology that is used to speed up the process of building a system – typically 2-3 months. RAD was initially created in response to problems with the traditional life cycle whereby the systems would take so long to complete that the original user requirements had become out of date. It was particularly popular in the 1990s and is now used for developing mobile phone apps. RAD uses prototyping as its core method for design and development. The diagram below shows an overview of how the RAD process works. Each cycle is known as a ‘time box’, each of which enhances the user’s requirements and builds a better prototype. For each time box, the features that are going to be developed will be agreed before

Prototype

User Feedback

Changes Implemented

Next Stage Developed

A2 ICT 4 OCR @ A Level (G063) – Chapter 1 Published by paullong.net

© paullong.net 2012 Page 31 of 73 by Paul Long

any work takes place so that the development is focussed on those features and does not expand into other aspects of the system. Requirements are gathered using focus groups or workshops of users, developers and managers. A design is created that is made into a prototype. This is then discussed with the users and the users can refine their requirements now that they can see what a system might look like. This is particularly useful when a user does not know exactly what they want a system to do.

RAD usually uses CASE (Computer Aided Software Engineering) tools which are software tools to assist with:

feasibility

gathering requirements

design

prototyping / development

testing

documentation The development aspects are often created automatically from the design. This means that programmers are not necessarily required because the software tools will create the code instead. Libraries of code that have been used for other systems are re-used rather than creating a whole system from scratch.

RAD video examples Task Watch these videos:

Rad with Glade 3

Developing mobile phone apps with RAD

Questions – follow me 1) Expand the following acronyms: RAD, CASE [2]

2) Describe the role of ‘time boxes’ within RAD [2]

Gather Requirements

Create Design

Build Prototype

Refine Requirements

A2 ICT 4 OCR @ A Level (G063) – Chapter 1 Published by paullong.net

© paullong.net 2012 Page 32 of 73 by Paul Long

d. describe the purpose of test data and explain the importance of testing and test plans

Importance of Testing

Although testing takes place after the implementation stage, the test data is chosen during the design stage and the test plans are also written during the design stage. The human nature of developers means that errors are inevitable. Therefore testing is necessary. The process of testing involves:

select data that will be used to test the system

plan the tests

run the tests

identify faults

correct the faults

user testing The purpose of testing is to:

ensure the system is free of errors ­ although this cannot be guaranteed ­ depends on the depth of testing

ensure system matches requirements specification

give users confidence in the new system

ensure the system works and is reliable

A2 ICT 4 OCR @ A Level (G063) – Chapter 1 Published by paullong.net

© paullong.net 2012 Page 33 of 73 by Paul Long

Testing review Task Read the section on testing in chapter 1 learning objective a.

Purpose of Test Data

Test data is selected during the design stage. It is important that a range of test data, that covers the variety of data that a user will use in the end system, is selected. Assuming that a validation rule is being used for data entry and the rule is that the entered value must be <50, then the following data could be selected as test data:

Valid (normal) data ­ Data that is acceptable to the system ­ eg 35

Invalid data ­ Data that is not acceptable to the system ­ Data that generates error messages ­ eg 65

Extreme valid data ­ Data that is only just acceptable to the system ­ eg 49

Extreme invalid data ­ Data that is only just not acceptable to the system ­ eg 50

Each of the above types of data are examples of data that the user may enter into the system. By selecting valid test data, this ensures that the system will work as it is intended to do based upon normal operation by the user. By choosing invalid data to test the system, this ensures that the error message(s) work as they are intended to do when invalid data is entered. The final types of test data are extreme values. These are very important because they test the system to its limit. By entering the value 50, it ensures that the lowest possible invalid item of data produces an error message. If the developer accidentally creates a validation rule of <=50 then this will also identify the problem. By entering the value 49, it ensures that the highest possible valid item of data is accepted by the system. If the developer accidentally creates a validation rule of <5 then this will identify the problem.

A2 ICT 4 OCR @ A Level (G063) – Chapter 1 Published by paullong.net

© paullong.net 2012 Page 34 of 73 by Paul Long

Test data Task Read the Test Data section of the “Testing” chapter of the AS Structured Tasks Support Book v4 or “OCR ICT for AS” first edition by Paul Long et al. You will find the examples/tasks in this chapter particularly useful for your own coursework project for unit G064. Depending on the type of project you are doing (eg Spreadsheet/Database), follow the appropriate tasks. Clicking on the hyperlinks for tasks will take you to copies of the tasks that have been included with this online book to save you using the AS book.

Task Software First Edition Page

Support Book v4 Page

Example: Range Validation Test Data Any 278

Example: Format Validation Test Data Any 279

Example: Lookup in List Validation Test Data Any 279

Task: Input Test Data Any 279 Task: Formulae Test Data Spreadsheet / Database 281 Example: Testing Outputs (Members Database) Database 282 Task: Query Test Data Database 282

Importance of Test Plans

Test plans are created during the design stage. Test plans are extremely important because they will ensure all routes through a system are covered when it comes to testing. Without a plan, testing will be sporadic and many features of the system will remain untested and this increases the likelihood of errors not being found. Reasons that test plans are important include:

to identify all the tests needed so that none are missed out meaning that all features are tested which means most errors are likely to be found

to cover all requirements so that the user’s needs are met meaning that the user will be satisfied that the system does what it was intended to do

to ensure that testers follow all tests so that no routes through the system are missed out and most errors are likely to be found

to help with documenting the testing process so that if errors are found in the future then it may be possible to discover what happened during testing

A test plan should include for each test:

a test number to identify the test for documentation purposes

a description of what is being tested

the type of test - valid, extreme valid, invalid, extreme invalid, button, query, report, hyperlink etc

the specific input data value(s) to be used for the test

the specific expected results which may be values or something that happens

space for actual results so that when the testing is carried out the tester can record what actually happened during testing and compare that with the expected result

A2 ICT 4 OCR @ A Level (G063) – Chapter 1 Published by paullong.net

© paullong.net 2012 Page 35 of 73 by Paul Long

Example – test plan The test plan below is just a part of what could be used to plan the testing for the Block Paving.xls example system. It shows how different types of data are used and how input values and expected results have to be specified very precisely so that a tester in the future will know what to do. The designer would be expected to include in the test plan all possible calculations, buttons and routes through the system. A real test plan for this system could have over 50 lines of testing.

Number Description Type Input Value Expected Result 1 Area calculation Valid Input Screen:

Length = 12, Width = 7 Area on Invoice = 84

2 Customer Name on Invoice

Valid Input Screen: Customer Name = “Mr Blobby”

Invoice customer name = “Mr Blobby”

3 Length validation

Invalid Input Screen: Length = “twelve”

Error Message = “Only use real numbers (eg 12.3)”

4 View Invoice Button

Button Input Screen: Click on “View Invoice Button”

Invoice displays in print preview mode with same data from input screen

Test Plan Task – follow me 1 – create another 4 entries for the test plan above

2 – follow the test plan above and see if the actual results match the expected results

3 – ask somebody else to follow your test plan entries exactly as they are written and see if there is anything you could have put more clearly

Test Plan Project Task Read the Test Plans section of the “Testing” chapter of the AS Structured Tasks Support Book v4 or “OCR ICT for AS” first edition by Paul Long et al. You will find the activities/tasks in this chapter particularly useful for your own coursework project for unit G064. Depending on the type of project you are doing (eg Spreadsheet/Database), follow the appropriate tasks. Clicking on the hyperlinks for tasks will take you to copies of the tasks that have been included with this online book to save you using the AS book. The hyperlinks for examples take you to a developed version of the example but you will need the AS book or Support Book v4 for the actual test plans.

Task/Activity Software First Edition Page

Support Book v4 Page

Example: Quiz Validation Test Plan Any 278 Example: Testing Relationships (Car Insurance) Database 283 Example: Navigational Paths Test Plan Any 284 Task: Navigational Paths Test Plan Any 285 Example: Validation Test Plan (Mileage) Any 286 Task: Validation Test Plan Spreadsheet / Database / Website 286 Example: Calculations Test Plan Spreadsheet / Database 286 Task: Formulae Test Plan Spreadsheet / Database 287 Example: Query Test Plan (Peripherals) Database 287 Example: Multimedia Test Plan Presentation / Website 288 Task: Multimedia Test Plan Presentation / Website 288

A2 ICT 4 OCR @ A Level (G063) – Chapter 1 Published by paullong.net

© paullong.net 2012 Page 36 of 73 by Paul Long

Questions – follow me 1) Identify three process that are carried out during testing. [3]

2) Describe one reason why testing is carried out. [2]

3) Identify two types of data that should be used when selecting test data. [2]

4) Explain the importance of using a test plan. [4]

A2 ICT 4 OCR @ A Level (G063) – Chapter 1 Published by paullong.net

© paullong.net 2012 Page 37 of 73 by Paul Long

e. describe the contents of the requirements specification, the design specification and the system specification, distinguishing between them

These 3 specifications can be summarised as follows:

Requirements Specification

The requirements specification is a document that specifies in detail exactly what the client wants the system to be able to do. The document is produced by the systems analyst and it forms a contract between the development team and the client (user). The requirements specification will include:

the scope of the system (the limits of what is to be developed)

the objectives of the system

deadlines which must be met

input requirements (input screens, data capture forms etc)

output requirements (reports, output screens etc)

processing requirements (validation, formulae, procedures etc)

performance targets of the system (eg must be able to process 100,000 records in 5 seconds)

Requirements

Design

System

• contract

• what the system must do

• how the system should look

• how the system should function

• structure of the system

• software and hardware required by the system

A2 ICT 4 OCR @ A Level (G063) – Chapter 1 Published by paullong.net

© paullong.net 2012 Page 38 of 73 by Paul Long

Example - output specification A subscriptions department require address labels to be produced. The specification for printing the address labels may look something like this:

Print Address Labels:

Information for each subscriber:

Full name: Title, initials, surname (printed)

Address: 5 lines (printed)

Postcode (printed)

Number of copies (not printed)

Whether subscription valid (not printed)

Information printed to fit in standard adhesive labels

Labels to be printed in batches of variable size

Example - data specification The overall information requirement for the database could be given as:

For each subscriber:

Identification Code (for internal use only)

Surname

Initials

Title

Address (five lines)

Postcode

Number of copies

Subscription Validity Code (Valid, Lapsed, Cancelled)

Subscription Expiry Date (Month and Year)

Date of Last Payment (Day, Month and Year)

Example - requirements specifications Read the requirements specification for a newsagency software system

Read the outline requirements specification for a school website

A2 ICT 4 OCR @ A Level (G063) – Chapter 1 Published by paullong.net

© paullong.net 2012 Page 39 of 73 by Paul Long

Design Specification

The design specification is effectively the documentation that is produced by the designer. It will include:

the data dictionary ­ tables, fields, data formats and formulae ­ validation routines and error messages ­ relationships including an ERD (entity relationship diagram)

sketches of layouts of data capture methods ­ for example membership application forms, OMR sheets or questionnaires

sketches of data entry screen layouts

sketches of output layouts (eg reports)

fonts, colours, sizes & styles to use

types of data entry to use (eg combo box / text box / list box / option buttons)

screen resolutions and proportions

page sizes and orientations

instructions to be included

animations / transitions

button actions and other processes

style templates

file naming conventions

purpose of formulae (not actual formula, but what each needs to do)

pseudo code (a language in a particular structure that most people can understand and is used to describe the processes that will take place)

flow charts to show the order of processes and decisions that are made

Design Task Attempt to design a couple of small parts of the newsagency software system or school website based upon their requirements.

Identify any weaknesses in the requirements specification that made it difficult to complete the designs.

System Specification

This document identifies the minimum software and hardware required in order for the system to run effectively. It would normally be produced during the design stage. It will include:

amount of storage required

input devices required

output devices required

processing power required

primary memory (RAM) required

security requirements

A2 ICT 4 OCR @ A Level (G063) – Chapter 1 Published by paullong.net

© paullong.net 2012 Page 40 of 73 by Paul Long

System specification Task – follow me Use the world wide web to find out what the minimum hardware and software requirements are for the latest version of Microsoft Office.

Questions – follow me 1) Describe two items you would expect to find in a requirements specification. [2]

2) Identify four items you would expect to find in a design specification. [4]

3) During which stage of the system life cycle is the requirements specification produced? [1]

4) Describe the system specification. [2]

5) Describe two differences between the requirements and the design specifications. [4]

A2 ICT 4 OCR @ A Level (G063) – Chapter 1 Published by paullong.net

© paullong.net 2012 Page 41 of 73 by Paul Long

f. describe the roles and responsibilities of the following members of the project team: project manager, systems analyst, systems designer, programmer and tester

Custom-written solutions are usually large projects where an individual person could not complete the whole project alone. Therefore there is a need for a project team where different members will have different skills, training and experience. The need for a variety of skills is similar to that of a sports team. For example, a netball team needs goal attackers, goal defenders, wing attackers etc. Each of these people will have different skills for playing the game. The roles within of a project team include:

Project Manager

Systems Analyst

Systems Designer

Programmer

Tester Each of these roles may be carried out by a single person or by a sub-team of more than one person. It is also possible that one person may carry out more than one role. For example, in small projects the same person often carries out the roles of Systems Analyst and Systems Designer.

Apprentice Task – follow me Watch an episode of “The Apprentice” and select one of the two teams.

What is the function of the Project Manager

Is there a sub-team? If there is, what do the two sub-teams do differently to each other?

List each of the individual people within the team and identify the tasks that they carry out and the skills/experience that have enabled them to carry out those tasks.

Project Manager

The Project Manager is the boss! This person is responsible for the whole project and manages the personnel within the team. They will use tools such as Gantt Charts and Critical Path Analysis to plan timescales and deadlines for each stage of the life cycle and for all the tasks within each stage. These tools will also be used to monitor the progress of the project and to enable the Project Manager to intervene if the project falls behind. The Project Manager can also plan ahead to decide which personnel are needed at which times. The Project Manager will troubleshoot any problems as they arise and plan to resolve them using the resources available. They will be responsible for making all financial plans including setting the budget, planning expenditure throughout the project and comparing the expenditure against the agreed budget. They will be the client’s main contact for liaison at all stages and will ensure that all documentation is completed on time and delivered to the client.

A2 ICT 4 OCR @ A Level (G063) – Chapter 1 Published by paullong.net

© paullong.net 2012 Page 42 of 73 by Paul Long

Systems Analyst

This person is responsible for the investigation and analysis stage which involves analysing the current systems and writing the requirements specification. The main tasks that the analyst will carry out include those listed in chapter 1 learning objective b:

conducting interviews with client and users

creating and analysing questionnaires

observing the users at work

examining documents The Systems Analyst may work alone or may have a team of other analysts to help with this stage of the life cycle.

Systems Designer

This person is responsible for the design stage which involves following the requirements specification in order to produce a design specification. They will design and plan all aspects of the proposed system. The general tasks of a Systems Designer include:

liaising with the analyst following the investigation and analysis stage to ensure the requirements specification is followed

liaising with programmers before and during the development stage

liaising with the client to get feedback and act upon it

selecting the actual hardware and software that will be used

creating the design specification

creating a test plan

Programmer

This is the person or group of people that will implement (develop) the system during the implementation stage of the life cycle. The tasks will include:

liaising with the designer at the end of the design stage to ensure the design specification is followed

following the design specification

creating the software solution using software including writing any programming code

creating the technical documentation

liaising with the client to obtain feedback

Tester

This is the person or team that will be responsible for testing the system during the testing stage of the life cycle. The tester will follow the test plan and their aim will be to find errors within the system. Although they work for the same company as the Programmer, they are not expected to

A2 ICT 4 OCR @ A Level (G063) – Chapter 1 Published by paullong.net

© paullong.net 2012 Page 43 of 73 by Paul Long

be ‘gentle’ and let small mistakes go. They must identify the mistakes in order that the system can be improved before it is handed over to the client. The tester will document all the results of the testing and compare the actual results of each test with the expected results. When the actual results do not meet the expected results, the tester will feedback this information to the Programmer so that corrections can be made. At time is can appear that the tester works against the Software Developer because the aim of the tester is to find errors that the Software Developer has made. The motivation of the Tester is to find bugs and errors by testing the system to its limits. For this reason, a Testing team can be known as the ‘Black team of death’. However, the Tester is actually helping the whole team, including the Software Developer, by identifying the errors before the final version is given to the client. You could compare the Tester to you teacher who checks your coursework before you submit it. Lots of red ink from your teacher can be a good thing because your teacher is helping you to improve your work rather than just leaving it with errors.

Questions – follow me 1) Identify three tasks carried out by the Programmer. [3]

2) Describe two roles of the Systems Analyst. [2]

3) Describe two responsibilities of the Tester [2]

A2 ICT 4 OCR @ A Level (G063) – Chapter 1 Published by paullong.net

© paullong.net 2012 Page 44 of 73 by Paul Long

g. describe, interpret and create critical path analysis (CPA) and Gantt charts, and for each explain its suitability for use in a given application

Critical Path Analysis (CPA) and Gantt charts are tools used by Project Managers to help plan the project. They are particularly focussed on planning timescales and the resources required. Software tools are used to create these charts. Critical Path Analysis is also known as Critical Path Method (CPM).

Gantt Charts

Gantt Chart produced using Gantt Project from http://www.ganttproject.biz See sample file.

Describing Gantt Charts

A Gantt Chart is effectively a timeline showing each of the tasks as a blocked line. The length of the line represents how long each task will take. A Gantt Chart is created by listing all of the tasks, how long each task will take (usually in days) and then adding any dependencies. Dependencies are tasks which must take place before another task can be started. For example, before you drive a car, you must have passed your test, purchased a car, insured it, taxed it and got an MOT. These are all dependencies for driving a car.

A2 ICT 4 OCR @ A Level (G063) – Chapter 1 Published by paullong.net

© paullong.net 2012 Page 45 of 73 by Paul Long

Example – Gantt chart This example has been created using OpenProj software. This is freeware and so you can download it and use it at home. The file that this project is saved in can be opened here.

This example is all about making breakfast. The tasks that need to be completed have been listed together with their durations. It’s not possible to use minutes, so imagine that each day is a minute. The first 3 tasks can all be started straight away and completed at the same time. Three different people could do these things and so it’s possible that the tasks can be run concurrently (at the same time). When it comes to frying the bacon, there are two dependencies for this task. Firstly, the ingredients must be prepared. Secondly, the cooking utensils must be ready. For this reason, frying the bacon cannot take place until these two dependencies have been completed.

The table below shows how the dependencies (called predecessors in this software) have been entered into the table. The diagram is then changed to show which tasks can be completed and when. Notice that serving the food cannot happen until all the cooking has been completed and all the crockery and cutlery is ready.

The red line shows the Critical Path. This is the shortest time that the project can take. If there are any delays to the tasks along the critical path then the whole project will be delayed. Later in this section, you will see how this can be turned into a diagram.

A2 ICT 4 OCR @ A Level (G063) – Chapter 1 Published by paullong.net

© paullong.net 2012 Page 46 of 73 by Paul Long

Gantt spreadsheet Task Use this spreadsheet template to create a Gantt Chart for the example above. You will need to create 2 new rows to fit in all 9 tasks. Enter the number of minutes in the M (most likely) column as a number of days. Alternatively, use jxProject.

This spreadsheet template works slightly differently because it uses a method called PERT (Program Evaluation Review Technique) which calculates times for tasks based upon minimum, most likely and maximum estimates. You will therefore need to estimate minimum and maximum times as well. These can be any sensible estimate.

Gantt Charts can be used when planning the project in order to schedule tasks and personnel. They can also be used to monitor progress throughout the project.

Interpreting Gantt Charts

In an exam, you may be asked to interpret a Gantt Chart. The example and task below take you through interpreting a Gantt Chart.

Example This example uses this Gantt Chart which was created using Gantt Project.

This project is about creating a database and installing it for the customer. It is the same example used in the G064 Model Project. In this chart, you can see straight away that the longest task is changeover which is also the last task. You should also notice that there is a gap between June and July when there was probably a company holiday. Each of the arrows represents a dependency from an earlier task.

A2 ICT 4 OCR @ A Level (G063) – Chapter 1 Published by paullong.net

© paullong.net 2012 Page 47 of 73 by Paul Long

Now we can see some of the tasks more clearly. The first dependency is that “Create Tables” is dependent upon “Setup Database & Security”. This can be interpreted by looking at the arrow between the two tasks. You should then see that there are 6 tasks that are dependent upon “Create Tables” by following the arrows leaving the “Create Tables” task. The task “Create Orders” form is dependent upon both “Create Tables” and “Set up Relationships” – this is shown by the 2 lines/arrows leaving those 2 tasks.

Interpret a Gantt chart Task – follow me Look at the next part of the Gantt Chart below:

paullong.net Project Plan.gan

Identify the longest task.

Describe each of the dependencies.

Identify how long the project will take.

Creating Gantt Charts

You may be asked in an examination to create a Gantt Chart. You will not have access to software to do this for you so you will have to draw the chart. Start by identifying the tasks which have no dependencies (predecessors). These tasks can be started straight away and the lengths drawn in. Then look at each of the other tasks and their dependencies and start to put those onto the diagram. The example below shows you how this can be done.

A2 ICT 4 OCR @ A Level (G063) – Chapter 1 Published by paullong.net

© paullong.net 2012 Page 48 of 73 by Paul Long

Example Create a Gantt Chart for the following scenario:

Task A takes 4 days

Task B takes 2 days and is dependent upon A

Task C takes 5 days

Task D takes 3 days and is dependent upon C

Task E takes 4 days and is dependent upon B and D

Task F takes 2 days and is dependent upon E

Start by creating a timeline and adding Tasks A and C which have no dependencies.

Task/Day 1 2 3 4 5 6 7 8 9 10 11 12 13 14

A

C

Now add the first task which has dependencies. This is task B. It cannot start until A has completed so it must start on day 5. Then add the arrow for the dependency.

Task/Day 1 2 3 4 5 6 7 8 9 10 11 12 13 14

A

B

C

Do the same for the remaining tasks:

Task D is dependent upon C so cannot start until day 6

Task E is dependent upon B and D so cannot start until both are completed – day 8

Task F is dependent upon E so cannot start until E is completed – day 13

Task/Day 1 2 3 4 5 6 7 8 9 10 11 12 13 14

A

B

C

D

E

F

In an exam, it is unlikely that you will be required to add the dependency arrows, but it is good practice to get used to doing these.

A2 ICT 4 OCR @ A Level (G063) – Chapter 1 Published by paullong.net

© paullong.net 2012 Page 49 of 73 by Paul Long

Task – follow me Create a Gantt Chart for the following scenario:

Task A takes 1 day

Task B takes 4 days

Task C takes 5 days and is dependent upon A

Task D takes 3 days and is dependent upon B

Task E takes 4 days and is dependent upon C and D

Task F takes 3 days and is dependent upon E

Task/Day 1 2 3 4 5 6 7 8 9 10 11 12 13 14

A

B

C

D

E

F

Add dependency arrows to the Gantt Chart.

Critical Path Analysis

Describing Critical Path Analysis Diagrams

Critical Path Analysis (CPA) is all about finding the critical path for a project – in other words, the minimum time it will take for a project and which tasks must be on time for the project to succeed. You have already seen how a Gantt Chart can help with this. Another method is to create a CPA diagram. This is a diagram used to show how each task within a project relates to the other tasks. Below is an example of a CPA diagram:

Example – CPA diagram

A2 ICT 4 OCR @ A Level (G063) – Chapter 1 Published by paullong.net

© paullong.net 2012 Page 50 of 73 by Paul Long

There are many ways of creating this diagram, but this is the method preferred by OCR. Each of the tasks are listed by the lines. The numbers by the arrows represent the number of days each task takes. The numbers in circles represent milestones – these are points which have been reached within a project. Each arrow represents a dependency. CPA diagrams are used by Project Managers to see visually which tasks must be completed before others can commence. It shows the dependencies for each task and which tasks must be completed sequentially (one after another) and also which tasks can be completed concurrently (at the same time).

Example – Alternative CPA diagram An alternative method of producing a CPA diagram can be seen here.

Interpreting Critical Path Analysis Diagrams

Most Project Managers would use a PERT chart rather than a CPA diagram. The example files that you’ve seen so far for the Gantt Charts all have PERT charts that have been created automatically. The PERT chart below shows the project for cooking breakfast:

A2 ICT 4 OCR @ A Level (G063) – Chapter 1 Published by paullong.net

© paullong.net 2012 Page 51 of 73 by Paul Long

Example – Interpreting a CPA diagram For the cooking breakfast example, we are going to use a style of CPA diagram that might typically be given in an examination.

0 represents that start of the project.

F represents the finish of the project.

When the ingredients are prepared and cooking utensils retrieved, milestone 1 is reached which is 2 minutes.

The longest task is to Eat Food which is 8 minutes

There are 3 shortest tasks of 1 minute each.

Between milestone 1 and milestone 2, there are 4 tasks. The longest of these is 7 minutes and so that forms the critical path.

To calculate the critical path, it is necessary to look at the longest time it takes to get to each milestone.

1) The longest task between 0 and 1 is Prepare Ingredients – 2 minutes

2) The longest task between 1 and 2 is Grill Sausages which is 7 minutes. However, there is another task of Getting the Cutlery but this is only 1 minute. Add the 7 minutes to the 2 minutes to get to milestone 1 and the critical path is 9 minutes so far.

3) Add the 1 minute to Serve the Food and the critical path is 10 minutes so far.

4) Add the 8 minutes to Eat Breakfast and the critical path is 18 minutes long. Therefore, 18 minutes should be allowed each morning for cooking and eating breakfast.

0 1 21

3 F

Prepare Ingredients

2

Get Cooking Utensils

1

Get Crockery and Cutlery

1

Fry Bacon

6

Boil Eggs

4 Toast the bread

3 Grill Sausages

7

Serve Food

1

Eat Food

8

A2 ICT 4 OCR @ A Level (G063) – Chapter 1 Published by paullong.net

© paullong.net 2012 Page 52 of 73 by Paul Long

Interpret CPA Task – follow me

Look at the CPA diagram below:

Identify the longest task.

Identify the shortest task.

What do the numbers 1, 2, 3, 4, 5 mean?

What does 0 represent?

What does F represent?

Which tasks are dependent upon task A completing?

What are the dependencies for task H?

How many days does it take to get from 1 to 5?

Calculate how long the project will take by following the critical path.

Creating Critical Path Analysis Diagrams

Example – Creating a CPA Diagram Create a CPA diagram for the following scenario:

Task A takes 4 days

Task B takes 2 days and is dependent upon A

Task C takes 5 days

Task D takes 3 days and is dependent upon C

Task E takes 4 days and is dependent upon B and D

Task F takes 2 days and is dependent upon E

This is the same set of tasks used to create the example Gantt chart. The best way to draw a CPA diagram is to work backwards from the final tasks and then draw on each dependency. It’s also wise to use a pencil and paper. Therefore, start with the finish and add on task F which takes 2 days.

F

F

2

0 A

1 1

3

4

2

51

F

C

5

A2 ICT 4 OCR @ A Level (G063) – Chapter 1 Published by paullong.net

© paullong.net 2012 Page 53 of 73 by Paul Long

You now have a milestone 2 days before F. Task F is only dependent upon task E, so task E can be added to the diagram:

Task E is dependent upon both B and D so you will have two arrows coming towards it:

B is dependent upon A so you can add the arrow for A and because A has no dependencies, you also know that you have reached the start:

Finally, you know that D is dependent upon C and so the arrow for C can be added and the milestones can be put in.

The critical path is worked out by looking at how long it takes to get to milestone 3. A+B is 4+2=6 days. C+D is 5+3=8 days. Therefore, it takes 8 days to get to milestone 3, another 2 days to get to milestone 4 and another 2 days to get to milestone F which means the critical path is 12 days long.

F

F

2

E

2

F

F

2

E

2

F

F

2

E

2 0

F

F

2 4

E

2 3 0

1

2

A2 ICT 4 OCR @ A Level (G063) – Chapter 1 Published by paullong.net

© paullong.net 2012 Page 54 of 73 by Paul Long

Create CPA Task – follow me

Create a CPA diagram for the following scenario:

Task Dependencies Time (Days)

A 4

B A 5

C A 2

D B 3

E C 6

F C 1

G D,E,F 4

H F 4

I G,H 6

J I 2

Questions – follow me

1) Describe how a Project Manager might use a Gantt Chart. [4]

2) Look at the extract from the Gantt Chart below:

Interpret Gantt Question.gan

a) identify the longest task.

b) identify the shortest task.

c) list the two dependencies (predecessors) for Task D.

d) how many days will the project take?

e) what is the special name given to the line taken by tasks A, B, F, G.

f) which two tasks are dependent upon B completing? [8]

A2 ICT 4 OCR @ A Level (G063) – Chapter 1 Published by paullong.net

© paullong.net 2012 Page 55 of 73 by Paul Long

3) Create a Gantt Chart for the following scenario:

Task A takes 5 days

Task B takes 6 days and is dependent upon A

Task C takes 5 days and is dependent upon A

Task D takes 1 day and is dependent upon C

Task E takes 2 days and is dependent upon B and D [5]

4) Describe three features of Critical Path Analysis diagrams. [6]

5) Look at the CPA diagram below:

a) Which is the longest task?

b) Which tasks are dependent upon C completing?

c) What are the dependencies for task H?

d) How long does it take to get from milestone 4 to the finish?

e) Which tasks form the critical path?

f) How many days is the critical path? [6]

F

I

3 5

H

2

3

0

1

2

4

A2 ICT 4 OCR @ A Level (G063) – Chapter 1 Published by paullong.net

© paullong.net 2012 Page 56 of 73 by Paul Long

6) Create a CPA diagram for the following scenario.

Task Dependencies Time (Days)

A 3

B A 5

C A 6

D B 2

E C 3

F D, E 7

G F 2

H F 4

I F 5

J G, H, I 4

[6]

A2 ICT 4 OCR @ A Level (G063) – Chapter 1 Published by paullong.net

© paullong.net 2012 Page 57 of 73 by Paul Long

h. describe, interpret and create data flow diagrams and flowcharts, and for each explain its suitability for use in a given application.

During the analysis stage, diagrams are used as models to show what the current system looks like and how it works. Analysts and users can then use these diagrams to check that they both understand the current system in the same way. They can also be used during design to show how the new system should work. The designer can show the diagrams to the user and get feedback about whether this is what the user actually wants the new system to do. The diagrams can then be followed during the development stage. Although the focus in this section is on flow charts and data flow diagrams, you should also be aware that entity relationship diagrams (ERDs) are also used during analysis and design. You studied these at AS Level. For the exam, you will need to be able to:

describe the different types of diagrams – flowcharts and data flow diagrams

interpret a diagram to describe what it is showing

create a diagram based upon a given scenario

explain the suitability of each diagram for a purpose

Flowcharts

Describe flowcharts and explain their suitability

Flow charts are used to show the processes and activities that take place within an organisation. Arrows are used to show the order of processes and decisions can be made meaning that alternative routes can be taken through a flowchart. Flowcharts are used during analysis to show the processes in an existing system and during design to plan the order of processes for the proposed new system. Flowcharts can show an overview of a whole system or they can show detailed processes within a sub-system. All flowcharts must start with “Start” and finish with “End”. Decisions usually only have two flows – “Yes” and “No”. These symbols are one example of the symbols used within a flowchart. Performing an image search on Google for “flowchart” will show you that there are many variations of symbols.

A2 ICT 4 OCR @ A Level (G063) – Chapter 1 Published by paullong.net

© paullong.net 2012 Page 58 of 73 by Paul Long

Interpret flowcharts

In an exam, you might be shown a flowchart and asked to interpret it. Below is an example of how this could be done.

Example The flowchart below shows what happens when after a user has filled in an online website form to make a complaint to customer services. It shows the validation process that takes place.

User clicks submit

Is name box

empty?

Display

confirmation page

Inform user of

name errorY

N

Does e-mail

have @

symbol

Inform user of

email errorN

Y

User makes

changes

Is complaint

max 200

characters?

Inform user of

complaint errorN

Y

Is order code 7

characters

long?

Inform user of

emailerrorN

Y

Send data to

customer services

End

Start

This indicates the start of the process.

Process: the user clicks submit and then the validation begins.

Decision: a check is performed to see if the name box is empty.

Process: If it is, then the user is informed of the error and then another process allows the user to make changes. Before clicking submit again.

If the name box was not empty, then another decision is made to see if the e-mail address has an @ symbol included. If it does not have an @ symbol then the user is informed of the email error and then allowed to make changes before clicking submit again.

Similar decisions take place with regard to the length of the complaint text and the order code.

If all the checks are successful then the data is sent to customer services. The next process displays a confirmation page as an output (document) to the user before this section is completed (end).

In summary, the user submits their complaint, if there are errors then the user is informed of them before being allowed to submit the complaint again. If there are no errors then the data is sent to customer services and a confirmation page displayed.

A2 ICT 4 OCR @ A Level (G063) – Chapter 1 Published by paullong.net

© paullong.net 2012 Page 59 of 73 by Paul Long

Create flowcharts

When you create a flowchart, you should always start with the “Start” symbol. Identify the processes and the decisions. Now add the first process and continue to add on decisions and processes as per the scenario. Each decision will need to be a question with a “yes” or “no” route. If an output is produced, then use the output symbol. You can also use the data and database symbols, although it is unlikely that these will be used in an exam.

Task – follow me Create a flowchart for the following scenario:

A customer books a collection of a parcel from a delivery firm

If the booking is made before 3pm, the collection is made the same day, otherwise it is

made the next day

If the booking is made between 3pm Friday and 3pm Monday then it is collected on the

Monday

When the parcel is collected, the customer is given a receipt

The parcel is then taken to the local depot

If the parcel is to go to the local area, it is left at the depot overnight

If the parcel is for another area of the country, it is sent to a different depot

The parcel is then put onto a delivery van

The driver attempts to deliver the parcel

If the recipient is at home, the parcel is delivered

If the recipient is not at home, the parcel is returned to the depot so it can be delivered the

next day

You can see the answer in Visio format or JPEG format.

If you are finding this difficult, then try using part of the answer (Visio here or PDF here) and you can complete the rest.

Data Flow Diagrams

Describe data flow diagrams and explain their suitability

Data flow diagrams (DFD) are used to show how data flows within a system. They do not show processes that take place in order like a flow chart does. It’s all about the flow of data and how the data moves from one place to another. A data flow diagram consists of the following features:

External

Entity

Functional

Area

ProcessData

Flow

Data

Store

A2 ICT 4 OCR @ A Level (G063) – Chapter 1 Published by paullong.net

© paullong.net 2012 Page 60 of 73 by Paul Long

Processes are activities that change data within the system. They receive an incoming data flow, process that data, then send out a new outgoing data flow.

Data Flows are the data that are sent to be processed, stored or sent to an external entity or functional area. The arrow shows the direction of flow of the data.

Functional Areas are departments or sub-systems within an organisation.

External Entities are people, organisations or other systems external to the organisation.

Data Stores are places where data is stored temporarily or permanently. They can be electronic (eg a database) or traditional manual methods (eg a filing cabinet).

Each data flow must be linked to a process, either as an input to the process or as an output from a process. Without a process, the data does not change and therefore the data flow does not change. The other end of the data flow can link to either another process, an external entity, a functional area or a data store. Data can be sent or retrieved from external entities and data stores represented by the direction of the arrow. Here is an example of a data flow diagram:

Recruitment Activities

Check

Application

Form

Produce Cosnent

Form and Label

Enter Member

Details

Enter Activity

Details

Produce Member

Age List

Produce Activity

Consent Form

Member Names

on Activity

Member

Names

& DoBMembers

on

Activity

Activity

Member

ListAge

Activity

Consent

Form

Member

File

Schools

ListConsent

Form

Checked App Form

Consent form

in Envelope

Address and Medical Details

Member

Details

MEMBERSPARENTS

Data flow diagrams can exist at 3 different levels:

Level 0 (Context DFD)

Level 1 (Data flows within a sub-system or department)

Level 2 (Detailed data flows within a process)

A2 ICT 4 OCR @ A Level (G063) – Chapter 1 Published by paullong.net

© paullong.net 2012 Page 61 of 73 by Paul Long

For the OCR examination, you need to know about level 0 and level 1 DFDs. Level 0 DFDs show data flows between sub-systems or departments only. They do NOT show any processes or data stores. They exist purely to show how data flows between different areas of an organisation and its external entities. This diagram gives the analyst and user a clear understanding of the overview of how data is used within an organisation. Here is an example of a Level 0 DFD for a Youth Group. The diagram you saw on the previous page is a Level 1 DFD for the Administration department of this Youth Group.

Recruitment

AdministrationActivities

Consent FormSchools List

Application Form

Consent Form in Envelope

Activity

Consent

Form

Activity Member List

Age Group List

Level 0 DFD - Youth Group

PARENTS

MEMBERS

Level 1 DFDs show the data flows within a single functional area (sub-system / department). They includes processes and data stores. Any data flows to other functional areas or external entities are shown but are not broken down. These diagrams give the analyst and user a clear understanding of how data is used within each functional area.

A2 ICT 4 OCR @ A Level (G063) – Chapter 1 Published by paullong.net

© paullong.net 2012 Page 62 of 73 by Paul Long

Interpret data flow diagrams

Example – Level 0 DFD

Deliveries

Administration Finance

Orders

Delivery

List

Order for

Supplies

Payment

Invoice

Overdue

List

Overdue

Letter

Level 0 DFD - Newsagents

SUPPLIER

CUSTOMER

DFD – Newsagents.vsd

There are 3 functional areas - Finance, Deliveries and Administration.

There are 2 external entities – customers and suppliers

Customers send data about orders to administration

Administration send data about overdue payments to the customer

Administration send data about orders for suppliers to suppliers

Customers send data about the payments they make to finance

Finance send details of payments due to the customer in the form of an invoice

Finance send details about overdue payments to administration

Administration send details about deliveries to the deliveries department

A2 ICT 4 OCR @ A Level (G063) – Chapter 1 Published by paullong.net

© paullong.net 2012 Page 63 of 73 by Paul Long

Task – follow me

Interpret (describe) this level 0 DFD for a youth group. Take each data flow in turn and describe where it comes from and where it goes to.

Recruitment

AdministrationActivities

Consent FormSchools List

Application Form

Consent Form in Envelope

Activity

Consent

Form

Activity Member List

Age Group List

Level 0 DFD - Youth Group

PARENTS

MEMBERS

DFD – Youth Group.vsd

1) List the data flows

2) List the functional areas

3) List the external entities

4) Describe each data flow

Compare your answer with the sample answer.

A2 ICT 4 OCR @ A Level (G063) – Chapter 1 Published by paullong.net

© paullong.net 2012 Page 64 of 73 by Paul Long

Example – Level 1 DFD

Administration

Produce Invoice Receive Payment Produce Overdue List

Invoice PaymentOverdue List

Enter Payment

Details

Deliveries Made Overdue PaymentsPayments

File

Level 1 DFD - Newsagents (Finance)

Name

And

Address

Customer

File

CUSTOMER

DFD – Newsagents.vsd

This is a Level 1 DFD for the finance area of a newsagent

There is one external entity linked to the finance functional area – customer

There is another functional area linked to the finance functional area - administration

There are 3 processes within the finance functional area – Produce Invoice, Receive Payment and Produce Overdue List

There are 2 data stores – Customer File and Payments File

The produce invoice process

obtains data about the customer’s name and address from the customer file

obtains data about deliveries that have been made from the Payments file

it uses this data to produce an invoice and sends the invoice data to the customer

The receive payment process

receives information about payments made by customers from the customers

records the data about the payments in the payments file

The produce overdue list process

obtains data about overdue payments from the payments file

produces overdue lists and sends the data to the administration functional area

A2 ICT 4 OCR @ A Level (G063) – Chapter 1 Published by paullong.net

© paullong.net 2012 Page 65 of 73 by Paul Long

Task – follow me

Interpret (describe) this level 1 DFD for the administration functional area of the youth group. Take each data flow in turn and describe where it comes from and where it goes to.

Recruitment Activities

Check

Application

Form

Produce Cosnent

Form and Label

Enter Member

Details

Enter Activity

Details

Produce Member

Age List

Produce Activity

Consent Form

Member Names

on Activity

Member

Names

& DoBMembers

on

Activity

Activity

Member

ListAge

Activity

Consent

Form

Member

File

Schools

ListConsent

Form

Checked App Form

Consent form

in Envelope

Address and Medical Details

Member

Details

Level 1 DFD - Youth Group (Administration)

MEMBERSPARENTS

DFD – Youth Group.vsd

1) List the data flows

2) List the processes

3) List the data stores

4) List the functional areas that are external to this process

5) Describe each data flow

Compare your answer with the sample answer.

A2 ICT 4 OCR @ A Level (G063) – Chapter 1 Published by paullong.net

© paullong.net 2012 Page 66 of 73 by Paul Long

Create data flow diagrams

To create a Level 0 DFD, start by identifying each:

Functional area (department / sub-system)

External entity Add the functional areas and external entities to a diagram but don’t link them yet. Ignore any processes at this stage (they are for level 1 DFDs. Now read the information gathered during analysis to create the data flows between functional areas and external entities. When you identify the data flows, bear in mind that you are focussing on data and not on physical objects. For example, if a customer receives a product in the post, it is the data that comes with that product that matters rather than the product itself. This would usually be the data on a delivery note.

Example – Level 0 DFD Draw a level 0 data flow diagram to depict the following data flows in a typical retail organisation:

Orders are received from customers by the order processing department who check the orders are valid and enter the orders into the order book.

The order processing department send lists of goods required to the warehouse.

The warehouse sends the goods to the customer along with a delivery note. They also send a copy of the delivery note to the order processing department.

The order processing department sends a list of all goods delivered for each customer to the finance department who calculate the bill.

The finance department send invoices out to customers.

Customers are expected to make payments to the finance department who record the payments in the ledger.

If customers need to make a complaint they contact the customer services department. The customer services department will reply to the customer by letter.

If a customer needs to return goods then they must contact the customer services department who will send them a returns form. The customer should fill in the returns form and send the goods back to the Customer Service Department who will then reallocate the stock to the stock files. The customer service department will also pass the information onto the Finance Department who will send a refund to the customer.

A2 ICT 4 OCR @ A Level (G063) – Chapter 1 Published by paullong.net

© paullong.net 2012 Page 67 of 73 by Paul Long

Start by adding the functional areas and external entities:

Warehouse Finance DepartmentOrder Processing

Department

Customer Services

Department

Customer

Now identify the data flows:

Warehouse Finance DepartmentOrder Processing

Department

Customer Services

Department

Order

Goods

Required

Delivery Note

Delivery

Note

Details Delivered

Goods

Complaint

Response

Returns

Form

Return

Details

Invoice

Payment

Refund

Customer

DFD – Retail Organisation.vsd

A2 ICT 4 OCR @ A Level (G063) – Chapter 1 Published by paullong.net

© paullong.net 2012 Page 68 of 73 by Paul Long

Task – follow me Draw a level 0 data flow diagram to depict the following data flows in a typical school:

An applicant to a school fills in an application form which is sent to the admissions tutor. The admissions tutor will decide whether to accept or reject the applicant and will send an appropriate letter to the student to inform them of the decision. Students who are accepted are recorded on the provisional student lists.

If an applicant accepts a place at the school then they fill in an acceptance form and send it to the Admissions Tutor who will update the provisional list.

The admissions tutor will contact a referee and ask for a reference to be sent in.

All applicants must take a test at an independent testing centre. The test scores are sent from the testing centre to the admissions tutor who checks to see if the score is above the required level.

Once a complete list of students is ready, the Admissions Tutor will pass the list onto the Sixth Form Administrator who records this information into the student record cards.

Once a place has been accepted by a student, the student must fill in a form to request the A Level courses they want to study. This is sent to the Sixth Form Administrator who records the name of each student in the class list.

If a class is full, the Sixth Form Administrator sends a decline note to the student who then has to fill in a change of course form to study something else.

Once all students have selected their courses, the Sixth Form Administrator sends out class lists to each department and a timetable to each student.

A suggested answer can be found here in Visio format or JPG format.

If you find this task difficult, you can try out the partially completed task instead.

Imagine a level 1 DFD as being an expanded window of a functional area. To create a Level 1 DFD:

identify all the existing data flows (from level 0 DFD) for that functional area ONLY

use the current external entities for those data flows

use the current functional areas for those data flows

link a process to each existing data flow

add any other processes that are required

add any data stores that are required

add the additional data flows Ignore any data flows that are for other functional areas as these will go in a different Level 1 DFD.

A2 ICT 4 OCR @ A Level (G063) – Chapter 1 Published by paullong.net

© paullong.net 2012 Page 69 of 73 by Paul Long

Example – Level 1 DFD Draw a level 1 data flow diagram to depict the order processing functional area in a typical retail organisation (remember to only focus on the order processing data flows):

Orders are received from customers by the order processing department who check the orders are valid by checking comparing to products in the stock file and enter the orders into the order book.

The order processing department send lists of goods required to the warehouse.

The warehouse sends the goods to the customer along with a delivery note. They also send a copy of the delivery note to the order processing department.

The order processing department sends a list of all goods delivered for each customer to the finance department who calculate the bill.

The finance department send invoices out to customers.

Customers are expected to make payments to the finance department who record the payments in the ledger.

If customers need to make a complaint they contact the customer services department. The customer services department will reply to the customer by letter.

If a customer needs to return goods then they must contact the customer services department who will send them a returns form. The customer should fill in the returns form and send the goods back to the Customer Service Department who will then reallocate the stock to the stock files. The customer service department will also pass the information onto the Finance Department who will send a refund to the customer.

Start by:

identify all the existing data flows for that functional area ONLY

use the current external entities for those data flows

use the current functional areas for those data flows

CustomerWarehouse Finance Department

Delivery Note Details

Goods Required

Order Delivered Goods

A2 ICT 4 OCR @ A Level (G063) – Chapter 1 Published by paullong.net

© paullong.net 2012 Page 70 of 73 by Paul Long

Then:

link a process to each existing data flow

Record deliveries made

CustomerWarehouse Finance Department

Send delivery lists to

FinanceCheck Valid OrderSend list of goods required

Delivery Note Details Goods Required Order Delivered Goods

Finally:

add any other processes that are required

add any data stores that are required

add the additional data flows

Retail Organisation - Order Processing - Level 1 DFD

Record deliveries made

Order

Book

CustomerWarehouse Finance Department

Send delivery lists to

FinanceCheck Valid Order

Stock File

Send list of goods required

Record Order Details

Delivery Note Details Goods Required Order

Stock Details

Order

Details

Valid

Order

Delivered Goods

DFD – Retail Organisation.vsd

Ignore any data flows that are for other functional areas as these will go in a different Level 1 DFD.

A2 ICT 4 OCR @ A Level (G063) – Chapter 1 Published by paullong.net

© paullong.net 2012 Page 71 of 73 by Paul Long

Task – follow me Draw a level 1 data flow diagram to depict the sixth form administrator functional area in a typical school (only focus on the sixth form administrator data flows):

An applicant to a school fills in an application form which is sent to the admissions tutor. The admissions tutor will decide whether to accept or reject the applicant and will send an appropriate letter to the student to inform them of the decision. Students who are accepted are recorded on the provisional student lists.

If an applicant accepts a place at the school then they fill in an acceptance form and send it to the Admissions Tutor who will update the provisional list.

The admissions tutor will contact a referee and ask for a reference to be sent in.

All applicants must take a test at an independent testing centre. The test scores are sent from the testing centre to the admissions tutor who checks to see if the score is above the required level.

Once a complete list of students is ready, the Admissions Tutor will pass the list onto the Sixth Form Administrator who records this information into the student record cards.

Once a place has been accepted by a student, the student must fill in a form to request the A Level courses they want to study. This is sent to the Sixth Form Administrator who records the name of each student in the class list.

If a class is full, the Sixth Form Administrator sends a decline note to the student who then has to fill in a change of course form to study something else.

Once all students have selected their courses, the Sixth Form Administrator sends out class lists to each department and a timetable to each student.

A suggested answer can be found here in Visio format or JPG format.

If you find this task difficult, you can try out the partially completed task instead.

A2 ICT 4 OCR @ A Level (G063) – Chapter 1 Published by paullong.net

© paullong.net 2012 Page 72 of 73 by Paul Long

Questions – follow me

1) Describe the processes and decisions that take place from the start of this flow chart up to and including “Select Borrower’s Name”. [6]

2) Complete the flowchart from “Select Borrower’s Name” based on the information below: [10]

Peter will then need to select the book. He will do this by scanning the barcode. If the barcode is recognised then he can move on to the next stage, if not then he will need to re-scan the barcode.

He will then need to decide the date the book must be returned. He will be presented with a date that shows him a default date of one month in advance. If he wants to accept this then he clicks on “Accept Date”. If he wants a different date, then he must enter the new date by selecting from an on-screen calendar, then clicking on OK.

Finally, Peter will be asked by the computer if the book should be loaned out. He will be prompted with “Yes” or “No”. If he clicks “Yes”, then the loan is recorded in the database. If he clicks “No” then the loan will be cleared.

You can open the original Visio file here.

START

Select Borrower

from List

Borrower

Exists?

Enter new

Borrower

Y

N

Shown Date one

month in advance

N

Y

Y

N

A2 ICT 4 OCR @ A Level (G063) – Chapter 1 Published by paullong.net

© paullong.net 2012 Page 73 of 73 by Paul Long

3) Describe the purpose of data flow diagrams. [4]

4) Identify each of these symbols used in data flow diagrams. [5]

5) Complete the Level 1 Data Flow Diagram below for the following voicemail sub-system. Add the direction of arrows. [10]

Customers use their mobile phone to dial the voicemail number (eg 123). Their mobile phone number is then automatically sent to the voicemail system.

The voicemail system retrieves the customers voicemail data from the voicemail storage.

The customer hears a set of options to listen to which include Option 1 to listen to the voicemail.

The customer enters number 1 on the dial pad and the system finds the first message from the voicemail box it retrieved earlier and plays it to the customer.

Retrieve

voicemail

box

Customer

Number

Play

voicemail


Recommended