login
|
join
professional documents
home
Profile
docsters
request
Blogs
Upload
all docs
legal
business
financial
technology
educational
creative
Structured Programming
Categories
technology
Tags
Technology
be first to review
carthi
1Structured ProgrammingA VERY important Philosophy for Writing ProgramsThis is supposed to be a refresher only. You are expected to hone your skills by writing programs and reading books on structured programming if you have not mastered structured programming2Bad Programming HabitsFoggy idea about what is to be done Write program with no planning; Start from the beginning and write to the endNo systematic debugging; Considered it finished if it works on one exampleUndesirable Results !Do not know how to programPrograms with numerous bugs that take extremely long time to debug, or even failure to completeAny change of requirement invites rewriting of the entire program again3Benefits of Structured ProgrammingPrograms that meet the needs of the customerThough initially take longer time to generate code, often result in code with runs with no bugs the first time it’s runEasy to handle change in program specifications in the future4Structured ProgrammingA tool that becomes popular since the 70’sShould have been learnt by student that have taken any programming courseAbsolutely essential for handling large programs that involve a team of programmers and huge number of man hours.The other popular philosophy is “object oriented programming”, but many programmers prefers structured programming5Seven Important Concepts of Structured Programming: 1. Structured WalkthroughBefore writing any program, the programming team must sit down with the customer and find out the requirementExtremely importantCustomer’s requirement is often impreciseIterative: several rounds of talksMust result in a specifications that is very preciseUnderstandable by programmer in programming terms62. Stepwise RefinementA “DIVIDE and CONQUER” strategyWhen given a large job, divide it into smaller jobs.Given any job, it is useful to divide it intoInputProcessOutputDraw a treeRefine each job level by level (Breadth first)Use pseudo code to describe each jobDecision on data structure is delayed as much as possible7Extremely Complex JobInputProcessOutputLevel 1Input from userInitialize……Level 2Initialize securitysettings…Level 383. Modular DesignEach ellipse is a moduleA module is a self contained block:It onlyreceives inputs from its immediate ancestorIt onlyoutputs to its immediate ancestorIts computation should onlyrequire calling functions that are its immediate children and them onlyThe input variables and output variables of each module should be specified when defining the moduleEach module must be “programmable” –no majic block should exist94. Bottom Up Coding When the refinement has reached a simple function, code the simple functionYou can test the simple function independently of the rest of the programThis gives you achievement and satisfaction, sustaining you through the long projectProject Manager exercises division of labour here, ask a member to be responsible solely for that function105. Testing Using StubsA structured Programming project can be field tested before everything finishesStubs -for unfinished modules, use a human being to emulate it, act on the test inputs, she fits in the correct output data by handthen other programmers can test their work Meanwhile she continues to program her own module (according to MS Project timelines)116. White Box and Black Box TestingFor each module and whole programWhite BoxInput something for which you know the desired result, it should give your expected outputBlack BoxTreat it as a black box, input some data, is the result reasonable?127. Structured Programming DocumentsA structured programming document is generated along with the programWhen requirement of customer changes, go to the documentDoes not need to rewrite the whole program, just find which modules need to rewrite and rewrite the module and the sub-tree under itProgrammer usually forgets their code in 2 months; the structured document helps her to refresh her work quickly13AdviceYOU MUST TRY IT TO LEARN IT14ReferencesGeneral PhilosophyNumerous books about Structured Programming in the libraryCB.A. Forouzan, R.F. Gilberg, Computer Science: A Structured Programming Approach Using CA very good structured programming exampleW. Findlay and D.A. Watt, Pascal: An Introduction to Methodical Programming 1987, Ch. 7 illustrates how to use stepwise refinement to program a complicated task. Try it YOURSELF once, then you would get it
Public Domain
views:
118
downloads:
4
rating:
not rated
reviews:
0
posted:
1/22/2008
language:
English
search term
page on Google
times searched
structured_data_web2
shared by:
anonymous
on:
4/30/2008
|
views:
51
|
downloads:
1
|
comments:
0
|
category:
technology
Challenges in increasing tool support for programming
shared by:
carthi
on:
1/22/2008
|
views:
55
|
downloads:
0
|
comments:
0
|
category:
technology
Network Programming and Java Sockets
shared by:
Semaj1212
on:
4/23/2008
|
views:
109
|
downloads:
5
|
comments:
0
|
category:
technology
Parallel programming in Java
shared by:
Semaj1212
on:
4/23/2008
|
views:
31
|
downloads:
0
|
comments:
0
|
category:
technology
Whitepaper Secure Programming in Java
shared by:
cshieyiez
on:
2/2/2008
|
views:
122
|
downloads:
1
|
comments:
0
|
category:
technology
STRUCTURED TEACHING
shared by:
january
on:
5/23/2008
|
views:
18
|
downloads:
0
|
comments:
0
|
category:
educational
Parallel Programming with Interoperable MPI
shared by:
NIST
on:
6/30/2008
|
views:
7
|
downloads:
0
|
comments:
0
|
category:
legal
NIST AODV Programming Guide
shared by:
NIST
on:
7/2/2008
|
views:
3
|
downloads:
0
|
comments:
0
|
category:
legal
Structured Process for Building a KM Program and a Road Map
shared by:
Mythri
on:
2/12/2008
|
views:
84
|
downloads:
10
|
comments:
0
|
category:
business
The C++ Programming Language
shared by:
monogyny
on:
6/15/2008
|
views:
107
|
downloads:
9
|
comments:
0
|
category:
technology
NIST Imaging Database 2 - Structured Forms Database Users' Guide
shared by:
NIST
on:
7/2/2008
|
views:
4
|
downloads:
0
|
comments:
0
|
category:
legal
NIST Imaging Database 2 - Structured Forms Database Users' Guide
shared by:
NIST
on:
7/2/2008
|
views:
3
|
downloads:
0
|
comments:
0
|
category:
legal
The C Programming Language - Ritchie Kernighan
shared by:
monogyny
on:
6/15/2008
|
views:
69
|
downloads:
15
|
comments:
0
|
category:
technology
Associate of Applied Science in Information Technology Computer Programming - Information System Technician
shared by:
CoastGuard
on:
5/30/2008
|
views:
0
|
downloads:
0
|
comments:
0
|
category:
legal
Associate of Applied Science in Information Technology Computer Programming - Operation's Specialist
shared by:
CoastGuard
on:
5/30/2008
|
views:
2
|
downloads:
0
|
comments:
0
|
category:
legal
Transition Individualized Education Program _IEP_ Form
shared by:
carthi
on:
6/16/2008
|
views:
26
|
downloads:
0
|
comments:
0
|
category:
business
Telecom Terminal Equipment Sample Recovery Form
shared by:
carthi
on:
6/16/2008
|
views:
29
|
downloads:
0
|
comments:
0
|
category:
business
Suggested Sample for Improvement Measurement
shared by:
carthi
on:
6/16/2008
|
views:
30
|
downloads:
0
|
comments:
0
|
category:
business
Pre-orientation test
shared by:
carthi
on:
6/16/2008
|
views:
36
|
downloads:
1
|
comments:
0
|
category:
business
GENERAL INFORMATION NOTE
shared by:
carthi
on:
6/16/2008
|
views:
41
|
downloads:
0
|
comments:
0
|
category:
business
Faculty Evaluation Form
shared by:
carthi
on:
6/16/2008
|
views:
25
|
downloads:
0
|
comments:
0
|
category:
business
Data Analysis for Post-Graduate
shared by:
carthi
on:
6/16/2008
|
views:
40
|
downloads:
0
|
comments:
0
|
category:
business
Computer Placement Test_Sample Exam
shared by:
carthi
on:
6/16/2008
|
views:
84
|
downloads:
4
|
comments:
0
|
category:
business
COMPRESSIVE STRENGHT
shared by:
carthi
on:
6/16/2008
|
views:
67
|
downloads:
0
|
comments:
0
|
category:
business
CAE Online - Corporate Administrator Approval Form
shared by:
carthi
on:
6/16/2008
|
views:
42
|
downloads:
0
|
comments:
0
|
category:
business
"a structured programming approach using c" down
2
1
structured
1
1