Due: Wednesday, Jan 30th by 11:59 PM

This is a Team assignment.

Project Proposal

Your main task this semester is to complete a semester-long team software project. Your task in this assignment is to form your team and decide what your project will be.

In a 2-3 page document, describe the following:

Who are your team members? You must have at least 2 but not more than 4.

Briefly describe the system your team will create. Please note the following important requirements:

  1. The system must be a web application, meaning that the user interface must be web-based.
  2. The system must include at least one web service. A web service is an interface to a web application that is used by programs rather than human users.
  3. The system must store persistent data in a database.
  4. The system must be awesome when it is completed.

Be ambitious. The goal of this course is to learn how to design and build complex software. I do not expect that you will necessarily complete 100% of what you propose.

In your description of the system, include sketches of what the user interface will look like. Also include some ideas about how you will include a web service in your system. One common type of web service that web applications support is exporting data in a format allowing it to be imported into other applications. For example, if you are developing an inventory-tracking system, you could implement a web service that exported inventory information in CSV format.

What language(s) and programming environment will you use? My strong recommendation is to use Java and Eclipse: you can use the Google Web Toolkit to create rich web-based user interfaces using Java. Note that you can create 2D graphics, including animations, using GWT.

Please note: if you choose a language and/or environment other than the recommended one, it is your responsibility to know it well enough to make progress on your project and to resolve any technical issues you encounter.

Submitting

Submit your document in plain text or PDF format to Marmoset as assign1:

https://cs.ycp.edu/marmoset