You should have read the selections from chapters 1 through 4 of the Stephens text, as specified on the readings page. Having done so will assist you in completing the following assignment.
Here are the problems for easy reference.
Problem 1.1, Stephens page 12
What are the basic tasks that all softare engineering projects must handle?
Problem 1.2, Stephens page 12
Give a one sentence description of each of the tasks you listed in Exercise 1.
Problem 2.4, Stephens page 26
Like Microsoft Word, Google Docs [sic] provides some simple change tracking tools. Go to http://www.google.com/docs/about/ to learn more and sign up [if you do not have an account already]. Then create a document, save it, close it, reopen it, and make changes to it as you did in Exercise 1.
Problem 2.5, Stephens page 26
What does JBGE stand for and what does it mean?
Use the following table of data for Exercises 3.2 and 3.4.
| Task | Time (Days) | Predecessors |
|---|---|---|
| A. Robotic control module | 5 | — |
| B. Texture library | 5 | C |
| C. Texture editor | 4 | — |
| D. Character editor | 6 | A, G, I |
| E. Character animator | 7 | D |
| F. Artificial intelligence (for zombies) | 7 | — |
| G. Rendering engine | 6 | — |
| H. Humanoid base classes | 3 | — |
| I. Character classes | 3 | H |
| J. Zombie classes | 3 | H |
| K. Test environment | 5 | L |
| L. Test environment editor | 6 | C, G |
| M. Character library | 9 | B, E, I |
| N. Zombie library | 15 | B, J, O |
| O. Zombie editor | 5 | A, G, J |
| P. Zombie animator | 6 | O |
| Q. Character testing | 4 | K, M |
| R. Zombie testing | 4 | K, N |
Problem 3.2, Stephens page 51
Use critical path methods to find the total expected time from the project's start for each task's completion. Find the critical path. What are the tasks on the critical path? What is the total expected duration of the project in working days?
Problem 3.4, Stephens page 51
Build a Gantt chart for the network you drew in Exercise 3. [Yes, I know, you weren't assigned that one — however, when you do Exercise 2 you should have enough information for this one.] Start on Wednesday, January 1, 2020, and don't work on weekends or the following holidays:
| Holiday | Date |
|---|---|
| New Year's Day | January 1 |
| Martin Luther King Day | January 20 |
| President's Day | February 17 |
Problem 3.6, Stephens page 51
In addition to losing time from vacation and sick leave, projects can suffer from problems that just strike out of nowhere. Sort of a bad version of deus ex machina. For example, senior management could decide to switch your target platform from Windows desktop PSs to the latest smartwatch technology. Or a strike in the Far East could delay the shipment of your new servers. Or one of your developers might move to Iceland. How can you handle these sorts of completely unpredictable problems?
Problem 3.8, Stephens page 51
What are the two biggest mistakes you can make while tracking tasks?
Problem 4.1, Stephens page 82
List five characteristics of good requirements.
Problem 4.3, Stephens page 82
Suppose you want to build a program called TimeShifter to upload and download files at scheduled times while you're on vacation. The following list shows some of the applications requirements.
For this exercise, list the audience-oriented categories for each requirement. Are there requirements in each category? [If not, state why not…]
Problem 4.9, Stephens page 83-84
|
Figure 4-1 [right] shows the design for a simple hangman game that will run on smartphones. When you click the New Bame button, the program picks a random mystery word from a large list and starts a new game. Then if you click a letter, either the letter is filled in where it appears in the mystery word, or a new piece of Mr. Bones's skeleton appears. In either case, the letter you clicked is grayed out so that you don't pick it again. If you guess all the letters in the mystery word, the game displays a message that says, "Contratulations, you won!" If you build Mr. Bones's complete skeleton, a message says, "Sorry, you lost." |
|
Brainstorm this application and see if you can think of ways you might change it. Use the MOSCOW method to prioritize your changes.