Contents
of this page:
The
students will work through the Software Development Life Cycle (SDLC) to
complete a team project. Specific objectives are:
In this
course, you will design and implement a tool called Static Program Analyzer
(SPA). A detailed description of the problem, technical hints, SDLC for the
project and project schedule will be given to you in the Project Handbook.
Project stages include analysis and architectural design and three iterations
in which you will develop SPA incrementally. The details of what you should
deliver in each stage are described in five assignments that include analysis,
architecture design and three development iterations. Assignment due dates mark
project milestones. You will submit the final project report together with the
last assignment.
You will develop a SPA in teams of 4-6 students. Each team will be further divided into two groups of 2-3 students. Each group will deliver a different subsystem of the SPA. These subsystems communicate through a non-trivial interface. While each group will have to complete an independent piece of work, groups in a team will have to communicate a lot to integrate their work and to get the SPA product right.
You will implement the project in C++.
All
team members are expected to equally contribute to the project. At the end of
the project, we shall ask each team member to evaluate contributions of other
members of his/her team. The final grade for the course will be computed as
follows:
The
first 4 assignments will be given 5, 4 or 0 marks based on the following criteria:
Evaluating
and grading the project:
Completed
CS2103.
CS3215
and CS3214 are similar in that both are project courses, based on team development
of a software system, following a rigorous SDLC. The two courses differ in the
type of the software system students develop and in the details of the
corresponding SDLC. In this course (CS3215), you will develop a software tool,
with much emphasis on architecture, complex design problems, data structures,
algorithms and incremental development. In CS3214, you will develop a business
information system, with much emphasis on requirement analysis, user interface
design and database design. CS3215 is suitable for students with interest in
Computer Science, while CS3214 is suitable for students with interest in
business Information Systems.
Because
of the heavy workload in this course, in the term you take CS3215, your are advised to take only THREE other courses.
Particularly, you should avoid taking courses that involve a lot of practicals in the term you take CS3215.