Project Assignment 1: Requirements Analysis
||Friday, February 16, 2007
||Thursday, March 1, 2007
As discussed in class, your project will involve designing a registration
system for SFU students. You will use goSFU as a point of comparison. You may
have noticed that goSFU was taken offline just before our class on Thursday, and
will not be back up until the 20th. I have no idea what the new site will look
like, but I am confident that you and your team will still be able to find room
The project will focus on the following core activities:
- adding and dropping classes (including checking prerequisites and
generating a class/exam schedule)
- obtaining grade/transcript information
Note that the specific features mentioned above (such as checking
prerequisites) are not exhaustive. If during the design process you discover the
need for some other feature(s), you are free to add them. However, you don't
want to add too much as it will mean more work for the team later on.
Your team may generate many documents during your analysis. You are
free to use as many or as few of the techniques discussed in class (though keep
in mind that any extra work you do now will likely lead to a better design
later). However, the only documents you will be expected to hand in are the
- A table of expected user characteristics and subsequent UI requirements.
This should be similar to a combination of Tables 3.3/3.4 and Table 3.5 in
the text book. (Regarding Table 3.4, if you feel it is appropriate to
further breakdown one or more categories as was done for age in the example,
then do so.). For example, a combined Table 3.3/3.5 would have 3 columns:
the name of the characteristic (quality), the expected characteristic(s) for
your users, and any subsequent requirements for the UI that result.
- Three different personas that represent typical users of your system
(see page 48 of the text). Each should be a short paragraph; see the
examples in the text.
- A table of task characteristics for each of the core activities (see
Table 4.1 for an example).
- Identify the major tasks that you will need to support. You may do this
either by using other team members or yourselves as "subjects" and using the
methods discussed in class, or you may attempt to identify them through
discussion amongst the group. Specify which technique you use. List the
tasks, giving each a name and a brief description.
- Provide an essential use case for each task you identify.
Delegation amongst group members
It is perfectly appropriate to divide this effort across all members of your
team, for example by having different group members write different portions of
the assignment. However, every group member should at least review every section
of the assignment before it is turned in. Having multiple group members
participate in each section will improve the quality of the resulting effort.
Submit this part of the project online via the submission server. On a cover
page, be sure to include your team name, names of the team members,
and their student numbers.
[END OF TEXT]