CS130 Software Development
Spring 2008
Project 1
Laptop Manager
In this project, you will, among other things:
- become exposed to some of the many facets of the software development process
- gain a rapid introduction to Ruby on Rails
- create the foundation of an application that will actually be used
- have fun
For this project, you will write a program that supports the management
of a fleet of loaner laptops. The fleet exists to provide laptops to
students who do not have one. When taking computer science classes at
Westmont, students may borrow a laptop for the semester. Currently,
lending is managed with paper forms. You will provide a web-based
application (using Ruby on Rails) that will allow the fleet manager to
manage laptops and to check in or out laptops to students.
The project will consist of three deliverables.
Deliverable 1: (due 1/15) Be able to list, add, delete, and modify laptops and people.
Deliverable 2: (due 1/17) Be able to list, add, and modify a "loan" of a particular laptop to a particular person.
Deliverable 3: (due 1/22) Be
able to check out, check in, track a laptop, and show a person's
borrowing history. Showing a laptop should show its status (available
or checked out) and if it is checked out should show the borrower (with
link).
One of the many facets of software development involves eliciting
requirements from the client. You may notice that the specifications
above are rather thin. That is intentional. For this exercise, I will
be your client. You will need to flesh out your requirements through
interactions with me. This is the one facet of this project that will
be group-based. Your implementations will be completed on an individual
basis.
Again, this is an individual assignment. Appropriate expectations on working together apply.