Performing a Task on the Computer
What is the ouput? Exactly what will the task produce?
Identify the data. What input is necessary to produce the output?
Determine how to process the input to obtain the desired output. What formulas or ways of doing things can be used to obtain the output?
Program Development Cycle & Software Development Life Cycle
The programming development cycle is a process of steps, used by programmers to more efficiently manage their time in designing error-free programs that produce the desired output.
The program development cycle correlates to the Software Development Life Cycle, as the Program Development Cycle defines each stage, and different Software Development Life Cycle models have specific methods of using each stage.
Each step in the Program Development Cycle is utilized dependent on the programmers chosen Software Development Life Cycle method. In the Agile Software Development Life Cycle, less time is spent in the design phase, and more time is spent in the coding phase, and the process is not a step by step process; but rather, the process is iterative in which specific components are designed to meet output requirements. The Waterfall Software Development Life Cycle more closely aligns itself with the step by step process defined in the program development cycle, as each phase is completed before sequentially moving on to the next stage.
Exmaples of Software Development Life Cycle Models:
- Waterfall, V-Model, Component Assembly, and Chaos Models
- Software Prototyping and the Spiral Model
- Rapid Application Development (RAD) Model
- Agile Model & Extreme Programming
- Rational Unified Process
Program Development Cycle
- Analyze – Define the problem.
You must have a clear idea of what data (or input) is given and the relationship between the input and the desired output.
- Design – Plan the solution to the problem.
Find a logical sequence of precises steps that solve the problem (aka the algorithm). The logical plan may include flowcharts, psuedocode, and top-down charts.
- Design the interface – Select objects (text boxes, buttons, etc.).
Determine how to obtain input and how the output will be displayed. Objects are created to recieve input and display output. Appropriate menus, buttons, etc. are created to allow user to control the program.
- Code – Translate algorithm into a programming language.
During this stage that program is written.
- Test and debug – Locate and remove errors in program.
Testing is the process for finding errors. Debugging is the process for correcting errors.
- Complete the documentation – Organize all materials that describes the program.
Documentation is necessarry to allow another programmer or non-programmer to understand the program. Internal documentation, known as comments, are created to assist a programmer. An instruction manual is created for the non-programmer. Documentation should be done during the coding stage.
Schneider, D. (2011). An Introduction to Programming Using Visual Basic 2010(8th ed.). Upper Saddle River, NJ: Pearson Higher Education.
Association for Computing Machinery, ElementK Training (2010). Introduction to Software Life Cycle Models. Retrieved from https://knowledge.elementk.com/ on January 9, 2012