2012 CSCI 330 Final Exam

Due: Before you leave for Christmas break or Wednesday, December 19, 2012 (which ever comes first).

I attest that the content on these pages is my original work done without consulting any other class member or plagiarizing any other material. I understand that improper use of other material or consulting with classmates is grounds for failing this exam and this course.

Signature (type your full name):

Instructions:

-  Answer each question below as thoroughly as possible within the indicated word count.

-  Use your editor’s word count tool and put the word count in parentheses at the end of each answer.

-  Use acronyms where appropriate. Define the acronym only on the first use anywhere in your answers. Example: Three-letter acronym (TLA).

-  You are encouraged to use external resources. Please cite these sources using footnote notation.

-  Start each answer at the top of a new page. Submit your answers along with this signed front page as a single PDF document.

1.  (10 points) You have read about a new development approach from your colleagues in a group that does similar work to your groups. This new approach can reduce time to market by 10% and only increases maintenance costs by 5%. Should you adopt this new approach for your team? Why or why not? Cite expert sources to back up your opinion. Word limit: 100.

2.  (30 points) Read this article[1]. Discuss your thoughts on how Cockburn’s ideas relate to your group project semester. In what ways might you agree or disagree with the author? Why and why not? Word limit: 300.

3.  (30 points) Using the TriBITS Lifecycle Model[2] technical report, compare and contrast the TriBITS lifecycle to the validation centric approach (VCA). Refer in particular to the qualitative graphs presented in Figures 1 and 6. Word limit: 300.

4.  (10 points) Describe the role of traceability in the software engineering process. Word limit: 200.

5.  (10 points) Describe the Pseudo Programming Process. Word limit: 200.

6.  (15 points) Describe in concrete terms how testing is performed at each phase of the software engineering process. Word limit: 250.

7.  (15 points) You run your own small software company. A college buddy does the same. He comes to you and says, “Hey, wanna merge our efforts?” What should your initial reaction be? What questions do you need to ask in order to decide? Word limit: 200.

8.  (20 points) Discuss the Github software engineering process. Cite sources in your discussion. Word limit: 250.

9.  (20 points) Assume you have your own software team of 12 people. Based on the discussion in CC2E, Chapter 21, discuss how you would use collaborative construction techniques to improve software quality, cost and timeliness. Address two particular situations: i) all developers are in the same location and ii) developers are geographically distributed. Word limit: 250.

10.  (25 points) Discuss why our author uses the construction metaphor when referring to software engineering. Address details of how each activity in the software engineering process fits into this perspective. How does this perspective help order our activities? Give concrete examples of how the metaphor works and doesn’t work. Word limit: 300.

11.  (5 points, bonus) Describe your personal data backup system. Word limit: None.

1

[1] http://alistair.cockburn.us/Characterizing+people+as+non-linear,+first-order+componejnts+in+software+development

[2] http://www.ornl.gov/~8vt/TribitsLifecycleModel_v1.0.pdf