Project + Milestone 1

Home Useful Info 1 Pre-Test1 Project + Milestone 1 Sample Use Cases How to Install DukeBookStore Pre-Test2 JSDK Milestone 2 Final Milestone Announcements Running JSDK at Home Project Team Evaluation Project Information Form ODBC Data Source

Web Development Project

Overview

This group project will allow you to apply the concepts and technologies covered in class to a "real" project situation. Due to time constraint, the span of the project will include only the specifications of the requirements, a prototype, and lastly a final implementation model. (Note that in a real project, one will add the analysis, design, testing, maintenance phases to the entire system development life cycle.)

The project will be organized around 3 milestones, at each of which your accumulative project documentation will be turned in, graded, and returned. (Note that the project documentation to be turned in at the end of the semester will be retained by the instructor. Thus, the team should duplicate copies for the members if personal copies are desired.)

This group project will allow you to apply the concepts and technologies covered in class to a "real" project situation. Due to time constraint, the span of the project will include only the specifications of the requirements, a prototype, and lastly a final implementation model. (Note that in a real project, one will add the analysis, design, testing, maintenance phases to the entire system development life cycle.)

The project will be organized around 3 milestones, at each of which your accumulative project documentation will be turned in, graded, and returned. (Note that the project documentation to be turned in at the end of the semester will be retained by the instructor. Thus, the team should duplicate copies for the members if personal copies are desired.)

Milestones

Descriptions

Weights

Due Dates

1

Requirements Model

50 pts

9/27/00

2

Prototype

50 pts

11/20/00 

3

Implementation Model

200 pts

Last week of class

 

OVERALL

300 pts (~15% of the course)

 

 

 

 

 

 

 

This project is to be done in a group of 4 students with students selecting their own team members. While the project is a group project, each member of the group is expected to contribute a fair amount of the work involved and to work steadily throughout each milestone. It is assumed that all documentation turned in for the project has been reviewed by each team member and represents the best-combined effort of the team members. Normally each member of a team receives the same grade on the project. But an exception will be made if certain member of a team does not contribute his/her share of the work. Thus, every member of the team needs to take responsibility for and complete an appropriate amount of the project work. Be sure to consult the instructor if your team is experiencing serious problems in this regard.

The evaluation criteria for the project are as follows.

functionality
correctness
aesthetics
ease of use
originality
degree of difficulty

Keep in mind that at the end of the semester you will asked to complete a 1-2 "brag sheet" to show case your system and to brag about the various features that are available from the system. So, create and update this sheet as you progress through the various milestones.

Web Development Project: Phase I

To ride one of the biggest waves of the Internet, a suggested theme of the project is e-commerce (B2B, B2C, etc.). Namely, your project should in someway relate to conducting business over the Web. This means that the system built must allow one to use the Web to access information from the business, perform transactions to conduct business, etc. (Note that the selected project need not be an e-commerce project (as I have mentioned in class). If your team has a different theme that you would like to explore, talk to the instructor about the idea to see if it is a viable one for the project. For example, a different theme might be Internet Appliances (in which case you would need to look at a distributed object technology such as Jini).)

You should pay close attention to the scope of the project, as it will determine the amount of work that you need to put in for the project for the remainder of the semester. A stated earlier, one of the evaluation criteria of the project is the degree of difficulty. A trivial project (e.g., simple listing of product/service information in HTML for customers to browse) will not give you a high enough degree of difficulty to earn a good grade for the project. Similarly, you will not be able to finish a project that is too large in scope and that will in turn hurt you in terms of functionality and/or correctness. Your instructor will work with you to determine an appropriate scope for the project before you embark on the development.

As a general guideline, you are expected to have a good mix of HTML and/or Java applet (for presentation), JavaScript (for validation and others), Servlets (for dynamically generating Web pages), and JDBC (for databases). Equivalent technologies may be substituted for the above but you need to make sure that you provide the necessary components to make the technology work in the lab (during presentation time). For bonuses, you need to consider incorporating bells and whistles (e.g., audio and video) and cutting edge technologies (e.g., XML, distributed objects, EJB (Enterprise Java Beans)).

For phase I of the project, you need to determine the nature of your business and how it may be web-enabled. Here, another evaluation criterion to keep in mind is the originality of the project. To introduce the business model and to capture and organize the requirements, you are to follow the guidelines given below.

Phase I: Requirements Model

In modeling and designing a system, all the techniques are immaterial if one is solving the wrong problem. Thus, it is absolutely crucial that the requirements for the system be accurately captured. This is done in the requirements model.

Since the requirements model is to clarify exactly what the system will do, it should be:

developed from the users’ point of view (user-centered analysis) (Here, you and the instructor will serve as the users of the project.)
easy to understand for non-technical users
discussed with the users to ensure accuracy and completeness

Input to the requirements analysis process:

The requirements model is developed based on the system requirements specification. This may come from:

  1. Formal requirements document stating specific systems needs
  2. Formal and informal discussions with the users

Output of the requirements analysis process:

The requirements model, which itself is the main result of this process, forms the foundation for analysis, design, and implementation. Along the way, the following are produced:

  1. Use Cases
  2. Preliminary User Interfaces
  3. Preliminary Domain Objects (This would be needed if you were developing an object-oriented requirements model to the system.)

Use Cases

This provides a complete specification, from the users’ point of view, of how the system will function. Users are classified as actors in the system. For each actor, specific use cases are played against the system. Collectively the use cases detail everything that the users can do with the system. They describe the complete course of events required to accomplish a task from start to finish. Emphasis is placed on the interaction between the system and the actors. An example of a use case could be that a database administrator might want to "install a database." This begins with the DBA starting the installation program and concludes when the installed database in complete.

To identify and document use cases, follow the following steps.

  1. Examine the requirements specification
  2. Examine the requirements specification to determine the actors’ tasks. Questions to ask include: What are the main tasks? What information must the actor provide to accomplish the task? What information must the system provide for the actor to accomplish the task? What information must the actor change to accomplish the task?
  3. Name the use cases identified for each actor
  4. Summarize each use case
  5. Write a brief summary describing each use case.
  6. Identify the actors
  7. State the preconditions
  8. Expand the summary
  9. Expand the summary descriptions into a step-by-step walk through of the use case.
  10. Describe the exceptions
  11. State the postconditions

For examples on use cases, see http://www.itk.ilstu.edu/faculty/bllim/oo/usecase.htm

Preliminary User Interfaces

A rudimentary user interface is helpful for clarifying and specifying use cases. It simplifies communication about the system and its functionality because it helps users and developers to visualize the use cases.

You are given all the freedom in choosing how the interfaces are to be presented in this phase. You are encouraged to simply use hand-drawn diagrams to depict the user interfaces. (Do make sure that they are neat and viewable!) Note that eventually the interfaces will have to be designed and "made alive" by using the web technologies chosen.

Special Requirements

Give a 1-page description of the e-business that you are proposing. State the main purposes of the business, the services/products to be provided by the company, etc.

Give a ½ page description of the technologies that you intend to use for your project. This may change as you learn more about the various technologies for the remainder of the semester.

See the grade sheet for milestone 1 (next page) for the order in which to organize your notebook. You are to turn in a binder with clearly labeled sections on each of the 4 main items requested.

 ACS 368/385/485

Milestone # 1 Grade Sheet

Group: ___________________________________________

Score: ______________ / 50

 

P - Poor W - Weak OK - Okay G - Good E - Excellent

  1. Business Model (7 points)     P W OK G E
  2. Main purposes of the business, Services/products provided, etc.
    Professional Looking
    title page, table of contents, section headings, page #s, dividers
    Writing style, clarity, sentence structure, spelling
  3. Use Case Model (25 points)    P W OK G E
  4. Completeness and Correctness of:

    Name of the use case
    Summary
    Actors
    Preconditions
    Expansion of the summary
    Exceptions
    Postconditions
  5. Preliminary User Interfaces (15 points)     P W OK G E
  6. Intuitiveness
    Completeness
    User-friendliness
  7. Technology Preview (3 points)     P W OK G E

Initial assessments on originality and degree of difficulty (most will get "Medium rating" unless convinced otherwise):

Originality                                                             (Low     Medium    High)
Degree of difficulty                                                 (Low     Medium    High)