Chapter 10. Software development for problem solving
Chapter 10. Software development for problem solving
After reading this chapter, you should be able to answer the following questions:
- What is a system development life cycle, and what are the phases in the cycle?
- What is the life cycle of a program?
- What role does a problem statement play in programming?
- How do programmers create algorithms?
- How do programmers move from algorithm to code, and what categories of language might they code in?
- How does a programmer move from code in a programming language to the 1s and 0s the CPU can understand?
- How is a program tested?
- What steps are involved in completing the program?
- How do programmers select the right programming language for a specific task?
- What are the most popular programming languages for Windows and Web applications?
Discussions
- What do you think the computer programming language of the future should be able to do? How simple would it be? Would it use a graphical interface? Would it combine voice-recognition software with the coding process? Do you think computers will ever be able to create their own programs, or will humans always have to play a role in computer programming?
- Some companies make their programmers sign agreements to prevent them from competing with the company later, by working for an employer who is a competitor. Is this ethical conduct on the part of the company? What if the compnay fires the programmer and she then has trouble finding work? How would this kind of agreement change the employee's work habits and professional development decisions?
- Are there some problems whose solutions cannot be expressed as an algorithm? Are there problems that cannot be solved with a fixed algorithm but could be described with an algorithm that incorporates probability and chance?