Creating an SRS for your project
Note:  Please keep the work that you do today, in case you have a question about your grades for the ICEs at the end of the quarter. When you're working with a partner, each person should save his-or-her own copy.

ICE ICE 01 Part 1: Examine the example SRS

Working with a partner, download the example SRS from the course website and examine it.  Remember that you will be writing an SRS with your project group and so you want to examine the document with an eye towards creating your own.  Go through the document and think about the following things:

ICE ICE 01 Part 2: Write a use case for your project

Divide up your project group into pairs (if you have an odd number in your project group the person can choose to work individually or as part of a triple), and have each pair write up the use case for your project.

Once you're done writing up the use case confer with the other pairs in your project.  Make sure that you're ready to present your use case, along with a (short) list of pros/cons about your use case, to the rest of the class.

As you write your use case, think about which other parts of the document may need to be updated.  Did this use case help you realize that your system will have additional actors, or more system components? Are the system components going to have to interact in new or different ways?  

Your goal is to practice writing use cases, but more importantly it's to start thinking about what you're doing - what's going well, what could be improved, etc, etc. 

ICE ICE 01 Part 3: Write a functional requirement for your project

Working with a partner write up a functional requirement for your project, based on the use case that you wrote up in the prior part.

ICE ICE 01 Part 4: Write a non-functional requirement for your project

Working with a partner write up a non-functional requirement for your project, based on the use case that you wrote up in the prior parts.

For this part you should start drawing up a diagram for your database.  If you happen to already have a program installed that helps you write up diagrams then feel free to use that, but only if you're an experienced user of that diagramming program.  Instead, it's recommended that you simply draw the pictures out on paper, and then plan on digitizing the diagram later.

For the work that you need to hand in, either by taking a very clear picture, or else by using something like Microsoft Visio, or Dia, in order to create the images in the computer).  I recommend that you avoid using Microsoft Paint to create diagrams - it will be very time consuming.  Using something like Paint.Net is slightly better but not by much (it supports layers, which is handy for keeping things logically separated while visually appearing all together).  An SVG program like Adobe Illustrator or Inkscape is probably better than Paint.Net.

You should also give some thought to how this use case & functional requirement impacts your program's security.  For your SRS you only need to describe how your system will limit users to doing only what they're allowed to do and not worry about hackers/crackers breaking into your system, etc, etc.

ICE ICE 01 Part 5: Write up notes for the rest of the SRS for your project

The instructor will run through several use cases with you that you and your project group will need to incorporate into your project's SRS.  Remember that for each use case that the instructor explains your group is responsible for creating a corresponding fucntional requirement, for updating any non-functional requirements that need to change, and updating anything else in the document that needs to be updated.

For right now, though, you should just take notes, ask questions, and think about the project that's being described so that you can write up the SRS outside of this class.

REMEMBER: You and your project group must complete the SRS for your project and hand it in after class.  The due date for this is listed on the course schedule.