professional documents
home
Profile
docsters
request
Blogs
Upload
Powerpoint

Structured Programming center doc

technology

Technology


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 HabitsFoggy idea about what is to be done Write program with no planning; Start from the beginning and write to the endNo systematic debugging; Considered it finished if it works on one exampleUndesirable Results !Do not know how to programPrograms with numerous bugs that take extremely long time to debug, or even failure to completeAny change of requirement invites rewriting of the entire program again3Benefits of Structured ProgrammingPrograms that meet the needs of the customerThough initially take longer time to generate code, often result in code with runs with no bugs the first time it’s runEasy to handle change in program specifications in the future4Structured ProgrammingA tool that becomes popular since the 70’sShould have been learnt by student that have taken any programming courseAbsolutely 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 WalkthroughBefore writing any program, the programming team must sit down with the customer and find out the requirementExtremely importantCustomer’s requirement is often impreciseIterative: several rounds of talksMust result in a specifications that is very preciseUnderstandable by programmer in programming terms62. Stepwise RefinementA “DIVIDE and CONQUER” strategyWhen given a large job, divide it into smaller jobs.Given any job, it is useful to divide it intoInputProcessOutputDraw a treeRefine each job level by level (Breadth first)Use pseudo code to describe each jobDecision on data structure is delayed as much as possible7Extremely Complex JobInputProcessOutputLevel 1Input from userInitialize……Level 2Initialize securitysettings…Level 383. Modular DesignEach ellipse is a moduleA module is a self contained block:It onlyreceives inputs from its immediate ancestorIt onlyoutputs to its immediate ancestorIts computation should onlyrequire calling functions that are its immediate children and them onlyThe input variables and output variables of each module should be specified when defining the moduleEach module must be “programmable” –no majic block should exist94. Bottom Up Coding When the refinement has reached a simple function, code the simple functionYou can test the simple function independently of the rest of the programThis gives you achievement and satisfaction, sustaining you through the long projectProject Manager exercises division of labour here, ask a member to be responsible solely for that function105. Testing Using StubsA structured Programming project can be field tested before everything finishesStubs -for unfinished modules, use a human being to emulate it, act on the test inputs, she fits in the correct output data by handthen 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 TestingFor each module and whole programWhite BoxInput something for which you know the desired result, it should give your expected outputBlack BoxTreat it as a black box, input some data, is the result reasonable?127. Structured Programming DocumentsA structured programming document is generated along with the programWhen requirement of customer changes, go to the documentDoes not need to rewrite the whole program, just find which modules need to rewrite and rewrite the module and the sub-tree under itProgrammer usually forgets their code in 2 months; the structured document helps her to refresh her work quickly13AdviceYOU MUST TRY IT TO LEARN IT14ReferencesGeneral PhilosophyNumerous books about Structured Programming in the libraryCB.A. Forouzan, R.F. Gilberg, Computer Science: A Structured Programming Approach Using CA very good structured programming exampleW. 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
flag this doc
118
4
not rated
0
1/22/2008
English
search termpage on Googletimes searched
Preview

structured_data_web2

anonymous 4/30/2008 | 51 | 1 | 0 | technology
Preview

Challenges in increasing tool support for programming

carthi 1/22/2008 | 55 | 0 | 0 | technology
Preview

Network Programming and Java Sockets

Semaj1212 4/23/2008 | 109 | 5 | 0 | technology
Preview

Parallel programming in Java

Semaj1212 4/23/2008 | 31 | 0 | 0 | technology
Preview

Whitepaper Secure Programming in Java

cshieyiez 2/2/2008 | 122 | 1 | 0 | technology
Preview

STRUCTURED TEACHING

january 5/23/2008 | 18 | 0 | 0 | educational
Preview

Parallel Programming with Interoperable MPI

NIST 6/30/2008 | 7 | 0 | 0 | legal
Preview

NIST AODV Programming Guide

NIST 7/2/2008 | 3 | 0 | 0 | legal
Preview

Structured Process for Building a KM Program and a Road Map

Mythri 2/12/2008 | 84 | 10 | 0 | business
Preview

The C++ Programming Language

monogyny 6/15/2008 | 107 | 9 | 0 | technology
Preview

NIST Imaging Database 2 - Structured Forms Database Users' Guide

NIST 7/2/2008 | 4 | 0 | 0 | legal
Preview

NIST Imaging Database 2 - Structured Forms Database Users' Guide

NIST 7/2/2008 | 3 | 0 | 0 | legal
Preview

The C Programming Language - Ritchie Kernighan

monogyny 6/15/2008 | 69 | 15 | 0 | technology
Preview

Associate of Applied Science in Information Technology Computer Programming - Information System Technician

CoastGuard 5/30/2008 | 0 | 0 | 0 | legal
Preview

Associate of Applied Science in Information Technology Computer Programming - Operation's Specialist

CoastGuard 5/30/2008 | 2 | 0 | 0 | legal
Preview

Transition Individualized Education Program _IEP_ Form

carthi 6/16/2008 | 26 | 0 | 0 | business
Preview

Telecom Terminal Equipment Sample Recovery Form

carthi 6/16/2008 | 29 | 0 | 0 | business
Preview

Suggested Sample for Improvement Measurement

carthi 6/16/2008 | 30 | 0 | 0 | business
Preview

Pre-orientation test

carthi 6/16/2008 | 36 | 1 | 0 | business
Preview

GENERAL INFORMATION NOTE

carthi 6/16/2008 | 41 | 0 | 0 | business
Preview

Faculty Evaluation Form

carthi 6/16/2008 | 25 | 0 | 0 | business
Preview

Data Analysis for Post-Graduate

carthi 6/16/2008 | 40 | 0 | 0 | business
Preview

Computer Placement Test_Sample Exam

carthi 6/16/2008 | 84 | 4 | 0 | business
Preview

COMPRESSIVE STRENGHT

carthi 6/16/2008 | 67 | 0 | 0 | business
Preview

CAE Online - Corporate Administrator Approval Form

carthi 6/16/2008 | 42 | 0 | 0 | business
 
review this doc