HW6_Asg1_TL

  • 格式:pdf
  • 大小:125.80 KB
  • 文档页数:6

Assignment 1 Student ID UNIVERSITY NAME

Faculty Name

Department Name

Course Code and Name

Year - Semester

Course website address

Analysis Assignment/Project Time Logger

Due: Date & Time

Number of marks

Problem statement for the assignment/project

Time Logging

A software production company is given a task to develop a Time Logging tool for public sale to

organizations in need of time control software for their employees. The company hopes that the TL tool

will be in position to compete with the market leader – the tool called Time Logger from Responsive

Software (http://www.responsivesoftware.com/ ).

The scope of the TL project is delineated by the functionality offered by the Time Logger tool. The

Responsive Software’s website (http://www.responsivesoftware.com/ ) contains a detailed description of

the Time Logger’s functions. Similar functions need to be present in the TL tool. The following points list

the main functions.

The TL tool will allow employees to enter time records, i.e. time spent working on various projects and

tasks and time without any work done (pauses, lunches, holidays, etc.). The time can be entered by

directly (manually) recording the start and end times or by using the stopwatch facility. The stopwatch

facility links to the computer clock and allows the employee to use start/stop command buttons to say

when an activity started and ended.

The TL tool will allow identifying clients for whom the work is performed. Related functions are to bill

the clients, produce invoices, and keep track of payments. Work expenses can be calculated using

hourly rates and/or using fixed expense component. Of course, some activities recorded in the TL tool

will not be billable to clients.

Course/Year/Semester Page 1 of 6 Assignment 1 Student ID

The TL tool will allow production of customized time reports with various reporting details suppressed or added, as required by the employee.

The TL tool will allow easy changes to time records already entered. It will also provide various

sorting, searching and filtering capabilities.

Consider the function in which an employee uses the stopwatch facility of the Time Logger tool to create a new time record. This function is the responsibility of a use case subflow called “Create Time Record – Stopwatch Entry”. The GUI window supporting this subflow is shown below.

The Stopwatch Entry window is a modeless dialog box. This allows the user to access the time records in the primary window’s row browser, the menus and other features of Time Logger, while stopwatch is running. The display in the figure shows the stopwatch in the “Running” state after it has been started from the Stopwatch menu.

The window has buttons for starting/stopping the stopwatch. When stopwatch is

running, the person can use the picklist fields and the Description field to fill in

information about what he/she is doing. When the Stop button is pushed, the Time Logger

adds a new time record in the row browser.

The Duration is calculated based on the contents of the Start, Now, and Pause

Duration fields. The Now fields are not editable. The buttons Pause and End Pause control the pause duration.

Course/Year/Semester Page 2 of 6 Assignment 1 Student ID

The Reset button cancels the stopwatch without storing a time record in the database.

The Hide button hides the stopwatch and makes it run in the background. The hidden

stopwatch can be displayed again from the Stopwatch menu.

The iconic buttons plus, pencil and minus provide create, update, delete functions on corresponding picklists.

Task 1 (? marks) Using Rational Rose (or other UML modeling tool), develop a business use case model and a business class model for the TL software tool. Your use case model should be named

Task1a and class model should be named Task1b.

Explain additional constraints in UML notes placed on the diagrams. Describe the meanings of the models, including any assumptions you have made, in text under the diagrams.

Note that in Rose (and most other UML modeling tools) you can create multiple class diagrams for the same model (project) but the diagrams are integrated and based on the same

repository. This means that if you have a class, say Employee, then if you modify it in one diagram, the changes will automatically show up in other diagrams that contain the same class. Because in this assignment, you are asked to create three class diagrams (Tasks 1, 3, and 5) at different stages of development, one possible approach is that you name classes with

numbered suffixes. For example, to have three versions of class Employee, name them

Employee1 in Task1, Employee3 in Task 3, and Employee5 in Task 5.