Designing and Developing Procedural Computer Programs
Unit code: T/601/3311
QCF level: 4
Credit value: 15
Guided learning hours: 90
The aim of this unit is to enable learners to become familiar with the principles of procedural programming, as well as having the opportunity to apply appropriate coding conventions to produce a working procedural program.
Competency unit assessment guidance
This unit should be assessed predominantly in the workplace. Please see Annexe E. Observation, witness testimony, questioning, professional discussion, written and product evidence are all sources of evidence which can be used.
Bespoke computer programs are at the core of any successful business. For example, have learners considered how some shops are able to check their stock by logging into a computer or how estate agents can retain information on a customer’s requirements and then send that information out to them?
There are off-the-shelf software packages on the market that can do some of this, but sometimes learners need to have software that is tailored to your business’s requirements.
Procedural programming is a programming methodology that allows for different programming applications to be created in. Some programs can be simple but others can be complex in nature.
There are many programming languages that are procedural in nature. Pascal, C, C++, Fortran, Cobol and more are considered popular programming languages. Tutors are advised to select a language that works to their strengths.
Learners who are new to programming are encouraged to undertake this unit before moving onto object orientation. This unit is a good starting point, providing a good grounding in programming, and the foundations will be there to enable the development of more complex code, such as object orientation.
Learning outcomes and assessment criteria
In order to pass this unit, the evidence that the learner presents for assessment needs to demonstrate that they can meet all the learning outcomes for the unit. The assessment criteria determine the standard required to achieve the unit.
On completion of this unit a learner should:
1 Design procedural programs toaddress loosely-definedproblems
1.1 Identify and structureprocedures and functions toaddress problems
1.2 Selectanduse libraryfunctionsand procedures
1.3 Structure the design withregard to coupling and cohesion
1.4 Specify thebehaviour offunctions and procedures toallow efficient implementation,selecting appropriatedatatypes, data and file structuresand algorithms
1.5 Record the design using well-established notations
2 Produce aworkingproceduralprogram which meets the designspecification
2.1 Make effective use of basicprogramming languagefeaturesand programming concepts toimplementa program thatsatisfies the design specification
2.2 Make effective use of thefeatures of the programmingenvironment
2.3 Make effective use of userinterfacecomponents in theimplementationof the program
2.4 Make effective use of a range ofdebugging tool
3 Develop procedural programsthat reflect establishedprogramming and softwareengineering practice
3.1 Apply standard naming, layoutand comment conventions
3.2 Apply appropriatedatavalidation and error handlingtechniques
4 Develop test strategies andapply theseto proceduralprograms
4.1 Developand applya teststrategy consistentwith thedesign identifyingappropriatetest data
4.2 Apply regression testingconsistent with the test strategy
4.3 Use appropriatetools toestimate the performanceof theprogram
5 Develop design documentationfor use in program maintenanceand end-user documentation
5.1 Record the final state of theprogram in a form suitable forsubsequent maintenance
5.2 Provide end-userdocumentation that meets theuser’sneeds