5. Specification of Needs
In this phase we actually learn about:
What the problem is
What is needed to solve it
What solution should provide
If there are constraint and special conditions.
6. Problem analysis
In this phase we should identify
following:
Input to the problem, their form and input media
to be used
Output expected, their form and output media to
be used
Special constraints and conditions
Formulas or equations to be used.
7. Design andAlgorithmic Representation
An algorithm is a sequence of infinite number of
steps arranged in a specific logic order which,
when executed, produces the solution for a
problem
An algorithm must satisfy these
requirements:
It may have an input
It may have an output
It should not be ambiguous
o Every step in algorithm must be clear as what is supposed to
do
8. Design andAlgorithmic Representation cont….
It must be general
It must be correct and it must solve the problem for which
it is designed
It must execute and terminate in a finite amount of time
It must be efficient enough so that it can solve the
intended problem using the recourses currently available
on the computer
An algorithm can be represented by using:
orPseudo codes Flow chart
9. Control Structure
In order to tackle a problem, we need:
A correct algorithm
To apply the algorithm at the good moment
To decide which algorithm to apply
To know if a certain operation to be repeated
An algorithm can be described using only three
control structures:
sequence selection reputation
10. Pseudocodes
A pseudocode is a semiformal, english-like
language with limited vocabulary that can be
used to design and describe algorithm
Criteria of a good pseudocode:
Easy to understand, precise and clear
Gives correct solution in all cases
Eventually end
11. Pseudocodes: the sequence control structure
A series of steps or statement that are executed in the order they
are written in algorithm
The beginning and ends of a block of statement can be optionally
marked with keywords begin and end.
o Example:
Begin
Read the birth date from user.
Calculate the difference between birth date and today’s date.
Print the user age.
End
12. Pseudocodes: The selection control structure
Defines two courses of action depending on outcome
of a condition. A condition is an expression that is,
when computed, evaluated either true or false.
The keywords used are if and else.
if condition if age is greater than 23
then-part printf “retire”
Else else
Else-part print “work work
work”
end_if end_if
Format Example
13. Pseudocodes: The repetition control structure
The repetition control structure may be like this
example:
Summing up to 10 numbers
Cumulative sum =0
current num = 1
while current num is less or equal to 10
cumulative sum = cumulative sum + current number
current number = current number + 1
end_while
print the value of cumulative number
o In this algorithm, we have used both sequence and repetition control
structure.
14. Flow charts
Flow chart is a graph used to depict or show a step by step
solution using symbols which represent a task.
The symbols used consists of geometrically shapes that
are connected by flow lines.
Flow chart is graphical in nature.
15. Flowchart symbols
Terminal symbol-indicates the beginning and ending
points.
Process symbol-shows an instruction.
Input/output symbol- shows an input/output
operations
Disk storage-indicates input or output from disk storage.
printer output symbol- shows hard copy printer output
selection symbol-shows a selection process for two way
selection.
off page connector-provides continuation of a logical
path of another page.
16. Flow chart symbols cont….
On page connector-provides continuation of a logical path at another
point of the same page.
flow lines-indicates the logical sequence of execution steps.
Flow chart –sequence control structure:
statement1
statement2
:
18. Flow chart- repatriation control structure
It’s may be like this
yes
no
condition
Loop
statement
19. Implementation
The process of implementing on algorithm by writing a
computer program using a programming language.
The output of the program must be solution of problem.
The program must not do anything that is not supposed to
do
(think of those may viruses, buffer overflow, trogon horses
etc, that we experience almost daily . All these results
from programs doing more than they were intended to do)
20. Testing and verification
Program testing is the process of executing a program
to demonstrate its correctness
Program verification is the process of ensuring that a
program meets user requirements
After the program is compiled , we must run the
program and verify it with different inputs before the
program can be released to the public or other users
21. Documentation
Contains details produced at all stages of program
development cycle.
It can be done in two ways:
Writing comments between your lines of codes
Creating a separate text file to explain the program
Important not for only other people to use or modify your
program, but also for you to understand your own program
after a long time
22. Documentation conti…..
Documentation is important because:
You may return to this program in future to use the whole of or part of
it again
Other programmer or end user will need some information about your
program for reference or maintenance
You may some day have to modify the program or may discover
errors in your program
Although documentation is listed as the last stage of
software development method , it is actually an ongoing
process which should be done from very beginning of
software development method.