CISC 498
Information Technology Project

School of Computing

2017-2018


[Home | Projects | Resources | Details]

CISC 498 Details

CISC 498 represents the capstone course of the Software Design program (SODE). The course will allow you to apply what you have learned about software design so far and put them into practice by implementing a substantial piece of software. The structure of the course is simple: you form groups four students, pick a project from a list of suggestions, gather the requirements of the system to be built in interaction with the customer of the project, think about the design, and then implement, test and deploy the system.

Format

There will be no lectures. We will meet about 2 to 3 times each term for presentations and checkpoints. See the schedule below for details.

Groups, Projects, Customers, and Supervisors

Suggestions for interesting projects have come from various members of the Queen's community. The current projects are listed on the project page. Detailed information on the projects will come from the customer. Some example past project descriptions are available here.

You will work in a group of four students. Each group will have its own project.

Each project has a customer, who is usually the person who suggested the project. The customer will be your resource for developing the requirements of the system (i.e., what it is supposed to do). It is your responsibility to get in touch with your customer, schedule meetings, and effectively interact with them over the year. All customers are busy people, so please respect their time by interacting with them with an appropriate frequency and being prepared for meetings.

Additionally, each project will have a supervisor. Typically, this will be a faculty member in the School of Computing. The supervisor will provide input on the technical realization of the system (i.e., its user interface and how it should be implemented). You should find a supervisor yourself (any School of Computing faculty member is fine).

CISC 498 will require you to work independently and with relatively little guidance. You will be required to use your own judgement. To facilitate the organization of the course, however, your development should follow the waterfall process. That is, you should perform requirements analysis, design, and implementation in this order and not move to the next phase until the current phase has been completed and the appropriate document summarizing your results has been created. You do not have to follow all the details of the waterfall process and can modify it as you see fit (e.g., use pair programming, construct prototypes), but you will have to work on requirements, design and implementation in this order and produce documents summarizing each. The structure and contents of these documents will be fairly standard and we have provided templates for each (note some changes this year).

Documents should be delivered to your supervisor and the course coordinator by the due date.

Schedule

The fall term will largely be devoted to requirements analysis and design, while the winter will be devoted to implementation, testing and deployment.

Fall 2017

This term will be devoted primarily to forming groups, picking a project, gathering requirements, creating a design, and thinking about software quality assurance.

Winter 2018

This term will be devoted mostly to implementation and deployment of your system.

Documents

For each of the documents to be submitted, I have provided rough templates. I encourage you to add to these templates whatever information you feel is relevant. The references provided below contain some ideas on what kind of information the various documents could contain. Use the templates and additional material as a guideline, but then apply your own best judgment when deciding on the contents, structure, and level of detail of these documents.

Submission

Documents are due on the dates indicated in the schedule. Documents not submitted by the due date will face a penalty of 10%. Make sure that the group members are indicated clearly on the front. For each document, you should submit one copy to your supervisor and one copy to me.

Presentations

The presentations will, at most, be 20-25 minutes in length. All members of the group are expected to cover a part of each presentation. All students must be present during all of the presentations.

Attendance

Attendance at class meetings is mandatory. For each hour of class (or part thereof) missed, two marks will be deducted from your final grade.

Marking

To obtain a passing grade, the group must engage in ongoing meetings with its customer, and create and deliver a project solution to their customer based on requirements determined in collaboration with the customer and supervisor. Assuming that these conditions are met, the mark for each student will be obtained from the documents and presentations of the student's group using the following scheme:

What

When

Weight

Contract plus intial project plan

20 Sept 2017 (23:59:59 EST, by email to TA)

0%

Requirements document

11,18 Oct 2017 (in class)

10%

Requirements presentation

5%

External design document

15 November, 2017 (23:59:59 EST, by email to TA)

10%

Internal design document

29 Nov and Dec 6, 2017 (in class)

10%

External/Internal design presentation

10%

Software quality assurance and deployment plan

24, 31 January, 2018 (in class)

10%

Software quality assurance and deployment plan presentation

5%

Weekly progress reports (email to coordinator & customer)

By email, each Wednesday, starting Jan 31, 2018

5%

Final project presentation and demonstration

Creative Computing Showcase (Thursday, April 5, 2018)

5%

Final project documentation

March 28, 4 April, 2018 (in class demo, software and documentation delivery)

10%

Delivered system to customer

20%

Total

 

100%


The documents and presentations will be evaluated by the supervisor and the course coordinator, with input from the customer. Marking criteria for documents and presentations include correctness, completeness, and clarity.

Plagiarism and Dysfunctional Groups

Plagiarism is the act of taking somebody else's work or ideas and presenting them as if they were your own. As in all other courses, plagiarism will be viewed as academic dishonesty and will not be tolerated. Appropriate action will be taken against offending students. Possible actions include partial or total loss of marks for the course the work in question or the entire course, or reporting the case to the Dean who may take further action.

All group members are expected to contribute equally to the project. It is up to the group members to oversee and enforce this requirement. In case of disagreements or conflicts that you cannot resolve yourself, you should contact me. I may then take some action which seems most appropriate to address the problem. Possible actions include changing the marking scheme for a group or individuals, asking a student to carry out additional work, or even expelling a student from the course.

Who did what? Each submitted document and email reports should explicitly identify the contributions of each group member.

Computing and Software Resources

You can work at home on your own machines or in the CASLab. There is currently no budget for the purchase of any material or software for CISC 498. Please bear that in mind when planning your project. For web-based systems, the School of Computing and Queen's ITS may provide test servers and support for migration to production systems.

Course Coordinator

The role of the course coordinator is to