The basics of the programming process The development of programming languages to improve software development Programming languages that the average user can employ to enhance working with a computer Putting Computers to Work: Software …
Analyzing and understanding the problem (steps 1-2) Devising a plan (algorithm) to solve the problem (steps 3-7) Creating an executable program that implements the plan (translate the algorithm to a program) (steps 8-9) Testing and debugging (correcting) the program (steps 10-11) The Software Development Cycle
Analyzing 1. Identify –Purpose – input, –Processing – output 2. Visualize – imagine what screen looks like if program is running
Design 3. Use tools – hierarchy charts, pseudocode, flowcharts 4. Check model for logic errors – trace or walkthrough
Algorithms Problem: Compute amount earned on an investment Algorithm: –Get data –Compute amount –Output amount -Get data Get principal Get APR Get number years -Compute amount Compute interest rate Compute days Compute amount -Output amount
Algorithms Algorithms may be expressed using a variety of methods and techniques A flowchart pseudocode
Implement 5. Write the code –Translate algorithm into programming language 6. Compile 7. Correct syntax errors (recompile)
A Sample Program
Link and Execute 8. Link 9. Run the program using test data for input 10. Correct any errors 11. Validate resutls
Modular Design Break huge project into small pieces (modules) Process is Modular Design 1 st way – top-down design (step-wise refinement) 2 nd way – object oriented design –Encapsulation –Properties –Behaviors
Quality Objectives Execution efficiency Programming efficiency –Use high level concepts Maintainability –Readable –Documented (internally and externally) Reusability –Modularize –generalize