View this PageEdit this PageAttachments to this PageHistory of this PageHomeRecent ChangesSearch the SwikiHelp Guide
Hotspots: Admin Pages | Turn-in Site |
Current Links: Cases Final Project Summer 2007

How to ace the new format final - Ajai Karthikeyan

So, Bob created a new format for the final this semester. We were the "guinea pigs". I assume the experiment was a success since we got a really good grade on it and found it much easier and less stress inducing than a regular final.

For those wondering what the new format is, here goes. The final is done as team. Everyone on your team makes the same grade. You come up with a small project on the level of any other 2340 project and you will be assigned a list of tasks you will need to do on that project. If this still confused you, I've attached this years final at the bottom (Note to prof and TAs: I was not sure whether I should post the final here but realized that some students would get hold of it anyways and have an unfair advantage)

My thoughts on the format: I probably learnt a lot more from this final than a written paper asking me questions. When you are actually working on a project outside a "test" you will have all the resources you need (online and books) and will be able to work in a group. You will probably never be writing code on paper (something I believe is just carried on from our parents time when they had to write it on paper before punching the cards and waiting 4 hours to get their results.) This final teaches you to work effectively in a group while on a time crunch and also implement an application in that setting.


During the first meeting
During meeting the day of final
During the final

Appendix: Final Fall 2009

Please submit during the final exam at least one page with your team name and members. If you submitted final materials electronically, please indicate who submitted the materials so I can find them. You may have a mixture of hard copy and electronic submission, or may choose all hardcopy if you like.

1. (5 Points) Write a one or two paragraph description of a project that would be similar in scope to a CS2340 project. It may be anything you wish to design from games to utilities to business applications. We will use this to form the basis of our grading for later questions.

2. (15 Points) Perform a basic OO analysis of your project. I want to see a list of brainstormed and filtered classes, and 3 (three) CRC cards front and back for non-trivial classes in your analysis.

3. (15 Points) Create a UML class diagram for your project. You should model the basic classes in the application and ensure that your diagram has the following constructs:
Inheritance, Instance Variables (4), Instance Methods (4) at least one of which takes parameters, one which has no parameters, one that returns something and one which returns nothing. (a method may satisfy more than one of these if desired).

4. (10 Points) Pick an architectural style (other than MVC) and briefly explain why this would be best for your application.

5. (10 Points) Pick one design pattern other than singleton, and show how it could be used in your project.

6. (10 Points) Either sketch (or make a stubbed out appmodel) the main screen of your ui and then briefly explain how you avoid the “you are not your user” problem.

7. (15 Points) Pick one non-trivial scenario for your application and draw a UML sequence diagram for that scenario. You should have interaction with at least 3 classes and have either a loop or alt or opt block in your diagram for maximum credit. Be sure this is in sync with your class diagram.

8. (10 Points) Go over your design and briefly discuss how your design complies with at least 2 of the design principles (like open-closed) that we discussed this semester.

9. (10 Points) Pick one method in your project that you can implement. The only restriction is that it cannot be a getter or setter. Write an SUnit test to test that method. You may do this on paper, or you may VW and submit an .st file.

Links to this Page