Project Guidelines, CSC3326 Spring 2003

1. Project Proposal and Requirements Specifications ( 1. Deliverable: DeadlineSeptember, 13 12:00 am

)

Project Proposal: Propose a Database (DB) application and choose a title for your project.

Requirements gathering: It is highly recommended that you have a customer for your DB application. You need to gather in this part the different requirements of functionalities that you need to implement in your DB by contacting your customer or by using your imagination and knowledge of the field of your application in case you don’t have a customer.

Requirement Specifications: Describe in detail you application requirements by writing a set of functionalities that your application will support. For each requirement, you should indicate clearly the context, the scope, example input and output, and the processing used to implement the requirement (Hint: Refer to chapter 7 in the book of Software Engineering, Ian Sommerville, for details on how to write the requirements specifications).

Project management plan: You have to set a planning for your project including dates and tasks, who is working on what (it is a group project), and the different procedures that you should follow to meet all the requirements of your project along with their deadlines.

2. Conceptual design and Database Creation (2. Deliverable: Deadline Ocotober, 31 12:00)

ER diagram: Develop an ER diagram of your Database that supports the different requirements you have defined in the first phase.

Tables definition and normalization: define the different tables that you will have in your Database and normalize them

Logical Schema: Design the relational schema of your database based on the ER diagram you designed.

Creation and Population of the Database: Create your database and populate it.

Queries: Design and implement at least five SQL queries that implement some or all of the requirements of you DB application.

Report: Write a report describing your Database design and your design decisions (why you have designed it this way). The report should detail all the previous points including all items of the first deliverable.

3. Application Development (3. Deliverable: Deadline, November 28, 12:00)

GUI design and implementation: Use one of the host programming languages, such as C, C++, Java, Visual Basic, etc with some DBMS to implement your GUI. This latter should allow the interaction with the DB and the implementations of the different functionalities defined in your requirements. Or Creating GUI by using Web capabilities (ASP, PHP) to your application.

Completion of all functionalities: In this phase you have to complete all the requirements that you have defined in the first phase.

Testing: Test your application

Final Report: you final report should include the following:

  • All the elements of the previous phases.
  • The strategies used to port your DB application to the Web.
  • Shortcomings of your applications and possible ways of tuning and improving it.
  • A user’s manual for your application including screen shots.

Demo and Presentation (week of December 1 ): You will be required to present your project and do a Demo.