Presentation is loading. Please wait.

Presentation is loading. Please wait.

Software Development Process.  You should already know that any computer system is made up of hardware and software.  The term hardware is fairly easy.

Similar presentations


Presentation on theme: "Software Development Process.  You should already know that any computer system is made up of hardware and software.  The term hardware is fairly easy."— Presentation transcript:

1 Software Development Process

2  You should already know that any computer system is made up of hardware and software.  The term hardware is fairly easy to understand, because you can see it. It is all the pieces of equipment that make up the system – the processor, monitor, keyboard, mouse, printer, scanner and so on.  Software is not so obvious. It is all the programs, instructions and data that allow the hardware to do something useful and interesting.

3  Microsoft Word (the word processing program that I use – I regularly use three versions of it: Word 2000, Word 98 for MacOS 8, Word v.X for MacOS X)  Microsoft Excel (spreadsheet used to keep charity accounts for which I am the treasurer)  AppleWorks (integrated package – I mainly use its word processor and simple database sections)  Internet Explorer (both PC and Mac versions – for browsing the web)

4 1. What is the meaning of the term hardware ? 2. Give three examples of software. 3. Identify each of the items in the table as either hardware or software: ItemHardwareSoftware monitor database Windows 97 scanner an e-mail Internet Explorer mouse modem

5 Any product, whether it is hardware or software it is always developed following essentially the same process. This process is called the Software Development Process.

6  It is important that you learn the steps in the correct order: A nalysis D esign I mplementation T esting D ocumentation E valuation M aintenance

7 We remember the stages and order of the Software Development Process using a rhyme: ADanceInInTheDarkEveryMonday nalysisnalysis esignesign mplementationmplementation estingesting ocumentationocumentation valuationvaluation aintenanceaintenance

8  The main purpose of the analysis stage is to be absolutely clear about what the program is supposed to do.  The result of this stage is the program specification agreed by both the customer (whoever wants the program written) and the developer (the person or company who are developing the program).

9 Copy this table at the back of your jotter and copy out the description of analysis. StageDescription 1. Analysis Produce a Program Specification Have a clear understanding of exactly what the program is required to do. 2. Design 3. Implementation 4. Testing 5. Documentation 6. Evaluation 7. Maintenance Occurs after the software is complete

10  It is worth spending time at the design stage working out some of the important details, including how the program will look on the screen, how the user will interact with the program, and how the program might be structured.  Program designers use a variety of methods for describing the program structure.  Two common ones are called pseudocode and structure diagrams.

11  Pseudocode is a non-graphical design notation.  It is a numbered list of instructions written in normal human language (in this case, English).  It doesn’t go into all the details, but it gives the main steps.

12  Problem – Write a program that allows a user to enter a score out of 50. The program should calculate and display the percentage.  Before you write the pseudocode it is good to work out the Inputs, Processes (calculations) and Outputs. InputsProcessesOutputs ScorePercentage

13  Pseudocode 1. Get the score 1.1 Prompt user for a score 1.2 Accept 2. Calculate Percentage 2.1 percentage= score / 50 * 100 3. Display Message  Here is the trick:  Start with the input variables and put “Get the” in front of them.  Next comes the process variables. Put calculate in front of them.  And always put Display Message at end

14 Each instruction goes into a separate box. You read pseudocode from top to bottom. You read a structure diagram from top to bottom, left to right. Name of program Step 1Step 2Step 3Step 4Step 5

15  Here is the previous problem as a structured diagram: Percentage Program Get the ScoreCalculate Percentage Display Message

16 Now fill the table in your jotter out with the description of design. StageDescription 1. Analysis 2. Design Working out the details of what the screens will look like, what menus and functions there will be and other detailed aspects of the program. Use pseudocode and/or structured diagram 3. Implementation 4. Testing 5. Documentation 6. Evaluation 7. Maintenance

17  Implementation is the process of converting a program design into a suitable program language. The screen should look like your screen design The structure of your code should follow your pseudocode and your structured diagrams  Any changes made during implementation MUST be recorded and change in design.

18  There are thousands of different programming languages, all with their own advantage and disadvantages.  You have already used Prolog in the AI unit of this course. This language is good for creating knowledge bases for expert systems.

19 Written Task Now fill the table in your jotter out with the description of implementation. StageDescription 1. Analysis 2. Design 3. Implementation Actual writing all the program code and creating of the user interface 4. Testing 5. Documentation 6. Evaluation 7. Maintenance

20  When you finish programming you will need to test your program rigorously.  This will be carefully planned to test a wide range of conditions.  We can divide it up into three types of testing. Normal Extreme Exceptional

21  Testing normal conditions Making sure the program does what it should do when used ‘normally’. Within the boundaries of normal use. If the program asks for a percentage enter any number between 1 and 99, e.g.12 as it should accept this.  Testing extreme conditions Making sure the program can handle situations that are at the edge of what would be considered normal. On the boundaries of normal use. If the program asks for a percentage enter 0 or 100.  Testing exceptional conditions Making sure it can handle situations or inputs that it has not been designed to cope with. Out with the boundaries of normal use. If the program asks for a percentage enter “computing” or -12 or any number out with the boundaries of normal use. It should give you an error message and not crash.

22 Written Task Now fill the table in your jotter out with the description of testing. StageDescription 1. Analysis 2. Design 3. Implementation 4. Testing Getting users to try out the program to make sure it works under most conditions 5. Documentation 6. Evaluation 7. Maintenance

23  This is the documentation that the user gets when they buy a piece of software.  When you buy a PS3 game you get; On the outside a label saying PS3 so that you know what console it is for. In the package a booklet telling you what control does what and how to work the basics of the game.  There are two main types of documents; User Guide & Technical Guide

24  This tells you how to use the product.  It might also contain a tutorial, taking you through the use of the product step by step.  Some user guides come in the form of a booklet or on a CD.

25  This gives technical information about the type of computer the software will run on, including; how much RAM it needs, how fast a processor it must have, which operating system is required.  The Technical Guide should also include instructions on how to install the software.

26 Written Task Now fill the table in your jotter out with the description of documentation. StageDescription 1. Analysis 2. Design 3. Implementation 4. Testing 5. Documentation Writing a user guide and technical guide for the software 6. Evaluation 7. Maintenance

27  The final stage in the process before the software can be distributed or sold is evaluation.  Evaluation involves reviewing the software under various headings to see if it is of the quality required.  In this course, we will review software under the following three headings; fitness for purpose user interface readability.

28  Is the software fit for purpose ?  To answer this question the programmer must go back to the program specification (produced at the analysis stage) and checking that all the features of the software have been implemented.  It also means considering the results of testing, and making sure that the program works correctly and is free from bugs.

29  The user interface should also be evaluated. The user interface is the way in which the user interact with the program.  To evaluate a program answer the following questions; Is the program easy to use? Is it clear what all the menus, commands and options are supposed to do? Could it be improved in any way?

30  This is not for the end-user, but for the programmer.  It is assessing the way that the coding has been implemented.  If a programmer can take a program they have not written and understand it, it is deemed readable.

31  Using meaning variable names If the program asks for a user name call the variable “user name”!  Use internal comment lines Beside each section of code write a small sentence on what that piece of code does.

32 Written Task Now fill the table in your jotter out with the description of evaluation. StageDescription 1. Analysis 2. Design 3. Implementation 4. Testing 5. Documentation 6. Evaluation Checking that the program does what it is supposed to do, is easy to use and can be fixed if there is a problem 7. Maintenance

33 This final phase happens after the program has been put into use (sold), so we cannot put this stage into action in class. There are different types of maintenance that might be required, these are called; Corrective maintenance (fixing bugs), Perfective maintenance (adding new features) Adaptive maintenance (taking account of new conditions, e.g. new OS).

34 Written Task Now fill the table in your jotter out with the description of maintenance. StageDescription 1. Analysis 2. Design 3. Implementation 4. Testing 5. Documentation 6. Evaluation 7. Maintenance Occurs after the software is complete, e.g. adapting the game to run on a different type of computer


Download ppt "Software Development Process.  You should already know that any computer system is made up of hardware and software.  The term hardware is fairly easy."

Similar presentations


Ads by Google