Prepare an interim midterm project report on your project (10-15
pages) that includes relevant background, architectural decisions, and current
status. The document will include
new material as well as updated versions of everything you have already
submitted in previous homework assignments for your project. A strongly suggested organization of the
report is as follows:
I.
Introduction: What is the problem you are
trying to solve, what is your solution, why do you believe your solution a good
one, and why would users want to use it? What are the key aspects of your
solution that may distinguish it from other work that is out there? Was there a special reason you chose
your platform (in terms of functionality or features it provides, not on
convenience)?
II.
Related work: What have others done that
is similar or related to your project? What similar applications are there? Do
not limit your scope to just considering other applications on your platform,
but consider other platforms as well, be they PCs,
Macs, game machines, web applications, etc. What related applications are
there? Include citations for related work, which should include URLs if
available. The citations and URLs should appear in a list of references at the
end of the report.
III. Usage model: Describe how a user is going to use your application. Describe the system from a user's perspective. In other words, describe the interactions with your system including figures of what the app’s screens may look like. Next week, you’ll provide a mockup of all the screens your app will have, so this could include only the most distinct ones for your app as a way to get you started.
IV. Architecture design: Present the detailed design of your system. What key assumptions are you making about your system or the environment in which it will be used? What justification do you have for those assumptions being reasonable? What are the components, how do they fit together and talk to one another? Which protocols or platform features are you using? For example, what sensors or libraries are you using? Are you using a database for storing information local to the phone? Are you using a remote server, and if so, what data is stored there and when does communication with the server occur? How is functionality partitioned between the client and the server? If you communicate with other devices or machines, how do you do so (what communication medium do you used)?
V.
Project status: In what order are you
implementing your components? Which
parts of your system are already implemented (if any)? What kind of testing will
you be doing to verify that those parts work? Are you testing on a real device
or the emulator or both? What problems or issues have you encountered or do you
expect? If you are making any important assumptions for your project, how have
you validated that those assumptions are correct?
VI.
Evaluation: How will you evaluate the
success of your project? What type of measures will provide you with confidence
that you’ve done a good job in implementing your project (speed,
usability, perceived useful, etc.)?
How will you determine these measures? For example, if you are writing
something that involves GPS, are you locations accurate enough? Will you be
asking real users to use your system, and how will you find those users?
VII.
Project schedule: Provide a detailed work
schedule with dates and milestones for each of the major components. What uncertainty do you have in meeting
various milestones, and what steps are you taking to resolve those issues?
VIII.
Acknowledgments: If you have received
help from people outside of your team, please acknowledge what contributions
they have made.
IX. References: Provide a list of references cited with complete bibliographic information including URLs where available.
Turn in a single .pdf file containing all of the above named HW6-yourteamname.pdf
Grading criteria
20 Full Score
-1 to -4 for incomplete introduction
-1 to -4 for lack of depth in related work
-1 to -4 for lack of completeness in usage model
-1 to -3 for architectural details
-1 to -5 for remainder