Anything marked as a Project is required and graded, and is meant to be completed in groups, which we will assign. To find the due date and see where this fits in the course overall, see the schedule.
The prototype was successful and caught the attention of Initech, which is potentially interested in supporting the development of a full-fledged application with additional functionality. As a first step in this direction, Initech has acquired your prototype, and a team of software engineers has completely revamped and rebuilt the application. Initech has then hired you, put you in a new team, and assigned you and your team the task of taking the revamped application and suitably extending it. Since you will be working for a corporation, you will follow a more structured process—the Unified Software Process.
Since this project involves modifying existing code, you cannot start it until after you get access to the repository. This should be shared with you automatically, but if the start date for the project has already passed and you do not see the repository on GitHub, please let us know!
Can we use our own MTM code developed in Project 2 instead of given starter code? We are more familiar with our own code and really satisfied with what we did in Project 2.
Sorry, but no, for two reasons. First, we want all the teams to start from the same point. Second, we want to simulate a typical real-world situation, in which you are given existing code that you need to modify and extend.
What constitutes a conflict?
A conflict is any situation in which you cannot define which one is the latest version of a TODO list. If that happens, it’s up to you how to handle the conflict. Any policy is fine, as long as there is one.
Is WTM required to support explicit synchronization by the user?
As long as any action performed by the user updates the database, it is fine not to. The phone is the de-synced device here.
Is auto refresh (immediate refresh after new items were added, synchronization was performed, and so on) for WTM required?
Auto refresh is not required for WTM. If you decide to implement it, though, we will consider that as extended functionality and suitable reward it.
Is having passwords for users required in WTM?
Users management should match what you have in MTM. If you do not have it in MTM, then you should not have it in WTM.
The given MTM implemented more features than the requirements for Project 2, (e.g.. sort by due date, sort by priority, change password). Is it required to implement all of MTM's functionality in WTM?
Not necessarily. You can decide to leave out some features from WTM if you don’t have enough resources to implement them. If you do so, be sure to make it clear in your requirements document.
Is it required to implement WTM with the same style of the given MTM (e.g., with respect to icons, how tasks are displayed)?
What is the minimum set of mandatory requirements? Which requirements can be listed as optional?
This is up to you. As we say in the project description, just "be realistic in planning."
Should I build a public server and host the application if I use technologies other than Google App Engine? Or should I document how to deploy and how to use my WTM application?
Either solution would work for us, as long as we have a clearly explained way to run the application.
How many extra points will be given for extended functionality beyond the project requirement?
It depends on the features you add. Normally, we give a maximum of 10% over the overall project grade for additional features.
Do you have any quick start video or tutorial for GWT and google application engine?
There are numerous resources online. We also put together a mini-tutorial to get you started, which you can find here. Please note that, although these technologies may sound hard to use, they are actually pretty straightforward when used to build a not-too-complicated system.
Are there any templates for vision document, risk assessment document?
No. The reason is that we didn’t want to constrain you, as in this case we are just looking for simple documents without a specific format. As long as the content of the document corresponds to what requested, no matter its format, you will be fine. Note that you can find plenty of examples on the web, if you want to see some.
For the use case model, is the graphical model alone sufficient or should we add detailed descriptions, such as interaction steps, for each use case?
You will need to add descriptions for at least the main use cases.
For software architecture and (partially completed) design model, can we still use the template for design document in p1 and p2 and include both of them in a single document? Is low-level design mapping to design model?
We would prefer to get two separate documents, but the content would be analogous. The answer to the second question is yes.
Is an executable prototype in deliverable 2 required? If so, how many functions should be supported in this prototype?
Yes. You will have to decide how extensive you want the prototype to be based on your available resources.
Is it required to provide automated test cases for Deliverables 2 and 3?
No. Automated test cases are always appreciated, and ultimately more useful for you, but they are not required.