In computing this week, we’ve been learning about the software development process. The three stages that we’ve covered are Analysis, Design and the biggest of the seven, implementation.
The Analysis stage:
In this stage the client explains the problem to the systems analyst and then he/she must be able to understand the problem at hand. To understand the problem futhermore, the analyst will most likelly interview the client and ask questions which consist of
What type features would be suitable within the client’s program? e.g. drop down menus, autopredict etc.
How do they wish their program to work? As in do they want to to be fairly simple or complex.
After the analyst has discussed with the client what exactly the problem is and how they will go about creating the solution a document called a “Software Specification” is created. this includes a crisp clear statement of the problem at hand, which is in depth. it also includes the basis of a legal agreement, which is formed between the client and analyst. A legal agreement is the document joining the two companies togtether and it is a clear statement of the solution which is agreed between the two companies.
The Design Stage:
The design stage is where the program is broken down into smaller blocks so that it is easier to implement.
In the design stage, the aim is to develop an algorithm. This is a -in depth- set of instructions to completing the task at hand. The task should be modular. So if it is a large scale program. different programmers can program different parts. The most common way of designing a program is by using “Top-Down” design. This is taking the large scale program and breaking it into modules.
An Example of Top-Down Desgin:
There are different types of Design notations that can be used. Two of the most common are structure diagrams and flow charts.
Structure Diagram: Flow Chart:
The Implementation Stage:
The Implementation stage is the largest of the seven stages. As this is where the design is put into action – the program is written.
In the Implementation stage the three types of programming control structures are thought about.
This control structure lets the program excute each and every line of code one after the other, from the Beginning to the end.
A program will only execute certain lines of code dependant on a decision which is made in this type of control structure. For example an “IF, THEN, ELSE” statement.
This is where a program will repeatly execute certain lines of code. For example, a repeat loop for a counter.
we also learnt what different terms meant within the first three satges. These terms are
|Correct||The program meets the software specification.|
|Maintainable||Changes can be made quickly and easily to the program.|
|Reliable||It’s free of bugs and is correct for all specified outputs. It should work correctly every time it is run.|
|Readable||It has design and code that can be read and understood by different programmers, i.e. internal commentary.|
|Portable||It can easily be adapted to run on computers other than the one it was designed on.|
|Efficient||Should not require storage and processor space which is disproportional to the scale of the program.|
|Robust||The program should not fail whatever the input is from the user.|