Web Engineering

 

Web Engineering > Assignments > Final Project: Help Desk System

INFSCI 2955 - Final Project: Help Desk System


Introduction

Another (and perhaps more challenging) option for the final project is to implement a prototype help desk system. This project builds off of work you may have done in the previous three assignments. If you choose to work on this option with a partner, you and your partner will model and implement the system. If you work on this option individually, you only have to implement the system.

Please note:, if you are working individually, there is no modeling option for this assignment. If you would prefer to do a modeling project for your Final Project, I suggest choosing the blog system, or another system of your choice.


Description

Whether you choose to program or model the blog system, the following page descriptions serve as the guide for the project requirements. You may use any server-side scripting language of your choice to code the prototype.

Trouble Ticket Entry Page

The "public" portion of your help desk system will be the trouble ticket entry page and its accompanying submission script. Any anonymous user can submit a trouble ticket - no authentication is required. The form must include a set of selectable categories, as well as a comment box, to help the user describe the nature of the problem.

Thank You Page

This simply tells the user that the trouble ticket has been submitted successfully. You can include the script that adds the trouble ticket to the database on this page.

Help Desk Login Page

The "private" section of your help desk system may be accessed only by authenticated and authorized users - i.e. helpdesk employees. Thus, a simple login page is required to authenticate users. The following information should be stored about authorized users:

  • First Name
  • Last Name
  • Username
  • Email
  • Password

Trouble Ticket Index Page

After logging in successfully, authorized users will see a list of all trouble tickets entered into the system in reverse chronological order. Each item in the index should display the following trouble ticket attributes:

  • Unique Identifier
  • Date/time ticket was created
  • Date/time ticket was updated, and by whom
  • Category
  • Status ("new", "open", "resolved", or "closed")
  • A button (or link) to the Ticket's detail page

When a trouble ticket is first entered into the system, the status is "new". The first authorized user to view a ticket's detail page is assigned the ticket, changing the ticket's status to "open". This may seem overly simplistic, but then again this is just an early prototype.

Trouble Ticket Detail Page

The detail page lists all information about the trouble ticket, including all data collected from the trouble ticket entry form. Besides viewing the ticket's data, help desk employees must be able to do 3 other things on this page:

  • Change the ticket's status
  • Add a comment
  • View other comments

Thus, this page will need two interactive elements: a drop-down menu for updating the status, and a text box for entering comments.

Authorization

If an anonymous user tries to access the private section of the help desk system, he/she should receive an error message and be redirected to the help desk login page. After the user has logged in successfully, you should include a message "You are logged in as $username" and a Log Out button (or link) somewhere convenient on the page.


Deliverables

Prototype Implementation: Place all project files in a ZIP or RAR file, including source code (with comments!), compiled classes (if you're using Java, for example), database files or database schema, and any special instructions for loading the project. Email your ZIP or RAR file to jpg14@pitt.edu.

If you are working with a partner on this option, please also submit the models:

  • 4 presentation models - one for each page listed above, except for the Thank You page
  • 3 sequence diagrams (one for each of the use cases from Assignment 1)
  • 1 state machine diagram for a trouble ticket

You have the option of submitting your models in paper or digital form. If in digital form, please email a ZIP or RAR file through the to jpg14@pitt.edu containing all of your use cases as Word files and UML/UWE models as BMP/GIF/JPEG/PNG/PDF files.