The document discusses the computer program development cycle. It defines what a computer program is and its characteristics like accuracy, readability, maintainability, efficiency, generality and portability. It also explains the steps involved in computer program development like problem definition, problem analysis, flowcharting, desk checking, program coding, program compilation, program testing and debugging and program documentation.
The document discusses the computer program development cycle. It defines what a computer program is and its characteristics like accuracy, readability, maintainability, efficiency, generality and portability. It also explains the steps involved in computer program development like problem definition, problem analysis, flowcharting, desk checking, program coding, program compilation, program testing and debugging and program documentation.
The document discusses the computer program development cycle. It defines what a computer program is and its characteristics like accuracy, readability, maintainability, efficiency, generality and portability. It also explains the steps involved in computer program development like problem definition, problem analysis, flowcharting, desk checking, program coding, program compilation, program testing and debugging and program documentation.
The document discusses the computer program development cycle. It defines what a computer program is and its characteristics like accuracy, readability, maintainability, efficiency, generality and portability. It also explains the steps involved in computer program development like problem definition, problem analysis, flowcharting, desk checking, program coding, program compilation, program testing and debugging and program documentation.
Download as DOCX, PDF, TXT or read online from Scribd
Download as docx, pdf, or txt
You are on page 1of 4
UC2 WEEK 6
Topic: PROGRAM DEVELOPMENT CYCLE
COMPUTER PROGRAM A computer program is a set of instruction that performs a specific task when executed by a computer. A computer requires programs to function. A program is a like a recipe. It contains a list of ingredients (variables) and the procedure (statements) to prepare the recipe using the ingredient (instruct the computer on what to do to complete a particular task). A computer program is usually written by a computer programmer using a particular programming language. Humans can use a variety of languages to communicate and computers are no different. Since the computer can understand only binary code (a series of 0s and 1s), all computer programs which are usually written in a human – readable form of codes must be translated eventually to binary code (known as machine code). This translation is performed either by a compiler, interpreter, or assemblers.
CHARACTERISTICS OF A GOOD COMPUTER PROGRAM
The characteristics of a good program are as follows: (i) Accuracy: every good computer programs must be free of bugs, errors and must provide the required result. Accuracy is the degree at which programs adheres to its specified requirements. (ii) Readability: every good computer programs must be clear and easy to be understood by other programmers who understand the programming language used to build the program. Readability is the ease with which a programmer can understand a written program code. (iii)Maintainability: A good computer program should be easy to maintain. Maintainability is the ease with which changes can be made to satisfy new requirements or to correct deficiencies. It is also the ability to identify and fix a fault within a program. Maintainability may also be known as flexibility. (iv)Efficiency: is the degree by which a computer program fulfils its purpose without waste of computer resources. One measure of efficiency is the speed of a program's execution. Another measure is the amount of storage space the program requires for execution. A program should be laid out in such a manner that it utilizes the least amount of memory and processing time. (v) Generality: means that if a program is developed for a particular task, then it should also be used for all similar tasks of the same domain. A good program should be able to solve all similar problems. (vi)Portability: Portability refers to the ability of an application to run on different platforms (operating systems) with or without minimal changes. Porting programs to other computer configurations is important for several reasons. A good program can be implemented, over its lifetime, on three or more different hardware configurations and it is less expensive to port programs than developing for different platforms from scratch.
PRECAUTIONS TO BE TAKEN WHEN WRITING COMPUTER
PROGRAM 1. Do not rush. Be careful, stable and patient when writing programs. 2. No step should be skipped. 3. The order of execution must be followed sequentially.
STEPS INVOLVED IN COMPUTER PROGRAM DEVELOPMENT
1. Problem definition: Before a program is written for solving a problem, it is important to define the problem clearly. A problem statement is usually one or two sentences explaining the problem your program will address in a clear and precise way. A problem statement addresses the (Who, What, Where, When and Why) of a program development project. It states who the program is built for, what problem it solves, where it is to be implemented, when it is to be implemented and why the program should be developed. 2. Problem analysis: involves the process of understanding the problems and user's needs and proposing solutions to meet those needs. The analysis ensures the understanding of the problem by identifying the “root causes,” not just the symptoms of the problem, and proposing the solution which is then addressed in the program design. 3. Flowcharting: A flowchart is a visual representation of the sequence of steps and decisions needed to solve a clearly defined and understood problem. Each step in the sequence is noted within a diagram shape and are linked by connecting lines and directional arrows. It allows you to break any process down into individual events or activities and to display these using symbols showing the logical relationships between them. A flowchart is a type of algorithm (the step-by-step approach in solving a problem) 4. Desk checking: involves a way of verifying the logic of a flowchart or the algorithm before developing the program. This enables the programmer to spot errors that might prevent a program from working as it should. The programmer uses sample data set to test the effectiveness of the algorithm. Using the desk checking, a programmer can find and expose issues and errors with the algorithm and can also verify that the algorithm performs its intended task to solve the problem. 5. Program coding (Programming): Programming/Coding is the actual process of writing the instructions in a computer program using a particular programming language. In the program coding stage, the sequence of steps defined in solving the problem is translated into set of instructions that the computer can understand and work with. 6. Program compilation: all computer languages which are usually written in a human – readable form of codes must be translated eventually to binary code (known as machine code). This includes the transformation of program code written in one programming language (the source language) into the language the computer understands. This is done by either a compiler, interpreter, or assemblers. 7. Program testing and debugging: Testing involves checking individual modules of the system as well as the system as a whole. This include making sure the system does what it is expected to do and runs on all the required platforms. Debugging is the process of checking for and correcting errors also known as bugs in a computer program code. 8. Program documentation: is written text or illustration that accompanies or is embedded in the computer program. It either explains how the program operates or how to use it, or may mean different things to people in different roles.
Video Links: https://youtu.be/LVEjW4JtSE8 https://youtu.be/YV6ykfG1nQY