Solution Development
Programming
• Part of a software engineering; software
development process
• art or building software - application of science and
mathematics to real needs
Program Development
• where as a program is set of statement/instructions
to be carried out by the computer, these
statements must be organised in a structured way
to simplify the development process
What is a Programming Language?
u A set of rules, symbols, and special words used to construct a
computer program.
Shortcut?
DEBUG
REVISE
REVISE
DEBUG DEBUG
REVISE
rtc ut?
Sho CODE
GOAL
TEST
THINKING
CODE
Programming
What can go Wrong in
software development
• poor quality
• out of timeline
• out of cost
• can figure out what to do
• deliver what was not asked for
Solution Development
• The problem analysis chart- helps you define and understand
the problem, develop ideas for the solution and select the best
solution
• The interactivity chart - breaks the solution to the problem into
parts
• IPO Chart- helps define input, the output and the processing
steps
• The coupling diagram and the data dictionary designate the
data flow between modules, The dictionary records information
on the the items
• the algorithm defines steps of the solution
• the flowcharts are graphic for of the algorithm,
• Pseudocode presents generic language representing the
algorithm
0-7
Problem Analysis Chart—Interest
Problem
Given Data Required Results
Principal-$2000 Principal plus Interest at the end of the
Interest time period
Number of years-5
Compound Interest(#/year)
Processing required Solution alternatives
Amount=P*(1+I/M)^(N*M) 1.* Enter all Data as variables
2. Enter principal and interest as
constant and the other data as variables
3*.Process one bank in one
run
4.Process all banks in one
run
* Processes selected for the best
solution
0-8
Task
• Problem Analysis chart for calculating
circumference of a circle.
11
Structure Charts/interactivity charts
• Structure chart is an additional method in preparing programs that has many sub
modules.
• It consists rectangular boxes, which represents all the sub modules in a program and is
connected by arrows.
• It illustrates the top-down design of a program and is also known as hierarchical chart
because its components are in hierarchical form.
• The advantage is that it is easy to be drawn and to be changed.
MainModule
• Format:
SubModule 1 SubModule 2 SubModule 3
SubModule 2.1 SubModule 2.2
The Interactivity Chart—Interest Problem
0-9
Example:
Problem: To calculate the amount of water
bill Water bill
Display Get / read Compute the Determine the Display the Print the
instructions for data charge late charge bill bill
user
Represent the modules in the program
Example Problem: To calculate area of a circle
Area of a circle
Display Get / read Compute the Define the Display the Print the
instructions for data area area area area
user
Represent the modules in the program
Task
• Problem Analysis chart for calculating the volume
of a cylinder.
16
(3) IPO Chart (Input Process Output)
Input Processing Module Output
Reference
1.Beginning 1.Enter data Read 1.Enter Principal
Principal (Change interest
2.Interest Rate rate to hundredths)
plus Interest
3.Number of Years 2.Calculate ending 2.All input Data
4.Number of Times principal and Calc
Interest is Interest
Compound yearly Amount=P*(1+I/
M)^(N*M)
Print
3.Print required
results
(4) Coupling Diagram
0-16
(5)Data Dictionary
ITEM VARIABLE DATA TYPE MODULE SCOPE PSEUDONYM ERROR
NAME /MODULE CHECK
Hours Hours Numeric- Control Local Hrs None
worked real pay
Hours Hrs Numeric- Read/calc Parameter Hours Hours<
worked real 0
Pay Rate Pay rate Numeric- Control Local Rate None
real pay
Pay Rate Rate Numeric- Read/calc Parameter Payrate Pay
real rate<4.0
0
Net Pay Pay Numeric- Control Local None None
real pay
Net Pay Pay Numeric- Calc/print Parameter None None
real
0-17