3. As the head of information system, you are tasked with developing a new Client Technology Tracking System (CTTS).

Coastline Systems Consulting is a provider of managed computer networks and web services located in Destin, Florida. The staff of seven IT technicians, web designers, and systems integrators provides a range of networking, computer hardware, and software solutions to area businesses. Coastline works with clients to analyze their business needs. They then provide a packaged solution that often combines web services, networking and computer hardware, purchased software, and custom programming. In addition to the seven technicians, Coastline has one receptionist/bookkeeper.
As a small organization, Coastline is an informal, "shirt-sleeve" environment. Everyone is on a first-name basis, even with Peter Charles, the president.
As Coastline's client base and the complexity of installations have grown, keeping track of the clients' hardware and software configurations has become a nightmare. Each client PC contains various components, such as video cards, NICs, and keyboards which are replaced at different times and so have differing warranty periods that must be tracked. Every client has multiple PCs and network devices, whose passwords and configurations must be accessible by technicians in the Coastline office and in the field. One technician is "on-call" every weekend, meaning the data has to be accessible from home as well. This has to be organized in a way that is easily accessible by any technician at any time or place but secure from unauthorized users.
In addition to tracking components and passwords, clients call and e-mail the Coastline office whenever they have any kind of hardware or software problem. These requests and the work done to resolve them need to be organized and documented.
The president, Peter Charles, wants to develop a system that is both responsive to clients and helpful to technicians. He would like to see a system that allows technicians to access and update client equipment hardware and software configurations. He wants an easy way for technicians to track the installation of new hardware components, possibly using barcode scanning. He wants the system to allow clients to directly enter their service requests, allow technicians to document the work done on those requests, and for everyone to be able to see the history and status of each request. Mr. Charles also wants the system to be able to generate statistics and reports so he can pursue continuous improvement in this area.

You are required:
(a) To prepare requirement list (30 marks)
(b) To develop use case model and description (35 marks)
(c) To construct class model and description (35 marks)

You are encouraged to supplement additional information to support your illustration of the requirement and model. State your assumption clearly (if any).

That's your assignment, which no one here will do for you.

What are YOUR QUESTIONS about your assignment? What don't you understand? (And if you say, "Everything," then you probably need to drop the class and take the prerequisite class again before you re-try this one.)

(a) Requirement List:

1. The system should be able to track the hardware and software configurations of each client's computer systems.
2. The system should keep track of warranty periods for each component in the client PCs, such as video cards and keyboards.
3. The system should provide access to passwords and configurations of client PCs and network devices for technicians in the office and in the field.
4. The system should allow one technician to be on-call each weekend and provide remote access to data.
5. The system should be easily accessible by any technician at any time or place but secure from unauthorized users.
6. The system should organize and document client hardware and software problem requests and the work done to resolve them.
7. The system should allow clients to directly enter their service requests.
8. The system should allow technicians to document the work done on service requests.
9. The system should provide a history and status of each service request.
10. The system should be able to generate statistics and reports for continuous improvement purposes.

(b) Use Case Model and Description:
1. Use Case: Track Hardware and Software Configurations
Description: This use case allows technicians to track the hardware and software configurations of each client's computer systems. It includes the ability to update configurations as needed.

2. Use Case: Manage Warranty Periods
Description: This use case enables technicians to track the warranty periods of components in the client PCs. It includes reminders for warranty expiration.

3. Use Case: Access Passwords and Configurations
Description: This use case grants technicians access to passwords and configurations of client PCs and network devices. It ensures secure access and restricts unauthorized users.

4. Use Case: Remote Access for On-Call Technician
Description: This use case provides remote access to data for the technician on-call during weekends. It allows them to access and update information from home.

5. Use Case: Organize and Document Service Requests
Description: This use case involves organizing and documenting client hardware and software problem requests. It includes creating and updating records of requests.

6. Use Case: Client Service Request Entry
Description: This use case allows clients to directly enter their service requests. It provides a user-friendly interface for clients to submit their requests.

7. Use Case: Document Work Done on Service Requests
Description: This use case enables technicians to document the work done on service requests. It allows them to record the steps taken to resolve the issues.

8. Use Case: History and Status of Service Requests
Description: This use case provides a history and status of each service request. It allows technicians and clients to track the progress of requests and view past records.

9. Use Case: Generate Statistics and Reports
Description: This use case generates statistics and reports based on the data collected in the system. It allows the president, Peter Charles, to analyze and pursue continuous improvement in the client services area.

(c) Class Model and Description:

- Client:
- Attributes: clientID, firstName, lastName, contactInfo
- Description: Represents a client of Coastline Systems Consulting. Contains client's identification, name, and contact information.

- Technician:
- Attributes: technicianID, firstName, lastName, contactInfo
- Description: Represents a technician working at Coastline Systems Consulting. Stores technician's identification, name, and contact information.

- ComputerSystem:
- Attributes: systemID, clientID, hardwareConfig, softwareConfig
- Description: Represents a single computer system owned by a client. Stores a unique system ID, client's ID, and associated hardware and software configurations.

- Component:
- Attributes: componentID, type, warrantyPeriod
- Description: Represents a hardware component in a computer system. Contains a unique component ID, type of component, and warranty period.

- Request:
- Attributes: requestID, clientID, technicianID, description, status, dateCreated, dateResolved
- Description: Represents a service request made by a client. Contains a unique request ID, client's ID, technician's ID, request description, request status, and dates created and resolved.

- Report:
- Attributes: reportID, type, data
- Description: Represents a generated report in the system. Contains a unique report ID, type of report, and the actual report data.

- BarcodeScanner:
- Description: Represents a device that can scan barcodes to facilitate tracking the installation of new hardware components.

The class model includes the main entities involved in the system, their attributes, and their relationships.