PRG 210 Complete Course
in Other (Education) by EulerYour Price: $35.00 (30% discount)
You Save: $15.00
Description
PRG 210 Complete Course
Week 1
Discussion Questions
In "Microsoft Begins Its Radical Shift to Software as a Service" (Orr, 2008), the author discusses Microsoft's new software delivery model. How will this model affect the way software is designed, built, and maintained? What special end-user considerations are there?
Based on Mitchells (2008) article, discuss something that a company's application development team would need to consider if the company decided to introduce Macintosh into the company's computing environment.
Week 2
Individual Assignment: Computer Programs and Program Development
Prepare a 2 3 page paper addressing the following:
Computer Programs
Describe the three basic types of programming languages. Explain the advantages and disadvantages of each type.
Discuss possible reasons why so many different programming languages exist.
Describe the relationship between the computer program and how a computer processes and stores data.
Program Development
Describe the program development cycle, and explain why it is called a cycle.
Describe the importance of using a structured, modular approach when creating program requirements, design, and code.
Besides the programmer, who else should be involved in the stages of the program development cycle?
Discussion Questions
Based on the article, "The Road to Our Scripting Future (Yared, 2007), discuss the relevance of structured programming techniques in the development of applications for grid computing.
Based on the article, "Changing the Corporate IT Development Model: Tapping the Power of Grassroots Computing," (Cherbakov, Bravery, Goodman, Pandya, Baggett, 2007), discuss how grassroots computing changes the way software is designed, developed, tested, and maintained in a typical organization.
Week 3
Individual Assignment: Computer Operations, Solving Problems, and Algorithms
Prepare a 23 page paper that addresses the following:
Computer Operations
Identify the six basic computer operations. Explain each operation's role in a computer program and indicate whether it is part of a program's input component, processing component, or output component.
Solving Problems
Describe the process and methods for problem recognition and problem solutions.
Algorithms
Define the process of algorithm development and explain in detail each step of the process.
Discussion Questions
The article, "Building Trustworthy Software" (Hogan, 2007), discusses many software development issues. Pick one of these issues, explain its significance, and critically examine the article's discussion of it.
In the article, "(A Look Back at) GOTO Statement Considered Harmful" (Dijkstra, 2008), the author reprints a historic letter, originally published in 1968, that criticizes the use of the GOTO statement in computer programming. Discuss why the author objects to GOTO statements, and explain why you agree or disagree with his perspective.
Week 4
Individual Assignment: Selection and Repetition Control Structures
Prepare a 23 page paper that addresses the following:
Selection Control Structures
Explain how selection control structures increase the usefulness and power of a computer program. Support your answer with a hypothetical real-world example that uses one of the following selection control structures:
Simple selection
Simple selection with null false branch
Combined selection
Nested selection
Repetition Control Structures
Explain how repetition control structures increase the usefulness and power of a computer program. Support your answer with a hypothetical real-world example that uses one of the following repetition control structures:
Leading decision loop
Trailing decision loop
Counted repetition
Discussion Questions
In the article, "Thoughts on Language Design", Steele (2007) suggests that structured programming techniques may not be necessary or even as helpful today as they were in the past. Discuss the author's reasoning and explain why you agree or disagree with his perspective.
The article, "Failure Analysis" (Nisley, 2006), discusses factors that contributed to the failure of the Mars Climate Orbiter. Discuss one of the Orbiter's software problems and how it could have been avoided.
Week 5
Individual Assignment: Complete Data Structures, Arrays, and Modular Design
Prepare a 2 3 page paper that addresses the following:
Explain the need for complex data structures and how they are used.
Explain the design and application of arrays and how an array simplifies program development. Support your answer with a hypothetical real-world example.
Explain at least four benefits of modular design. Support your answer with a hypothetical real-world example.
Learning Team Assignment: Software Development Project and Presentation
Compile and submit all of your Learning Teams work from Weeks Two, Three, and Four into a 45 page paper. In your Learning Teams paper, be sure to include the following:
Problem statement
High-level view of the program solution
Function and internal structure of each program module
Inputs
Processing logic
Output
Program source code
Developed pseudocode
Task documentation
Discussion Questions
The article, "Scaling On-Site Customer" (Ambler, 2008), discusses requirements development in an agile environment. Pick one of the issues discussed in the article and explain its significance from a software development perspective.
In the article, "Forever Beta" (Cross, 2007), the author discusses the advantages for a software company to release beta releases instead of final releases of products. What is his reasoning? Do you agree with his reasoning? Why might some companies prefer final releases to beta releases from other software companies?