Project-Based Software Engineering, project overview |
Time Accounting Software Overview
In
This paper describes what you are supposed to do in the project. The time used for the course must be recorded and reported. To make these routine tasks easier new software solution is needed. Since the personal time management needs are fairly limited a simple custom solution will be developed.
Background
The time accounting is one of the daily tasks in project oriented commercial software development. Namely, the billing of the customers is often based on the time used for the projects, which means that the time must be recorded somehow. Reporting, of course, can happen in various ways but often hourly reports are given to the customer as an annex to the actual bill.
Project basics
This project is an individual project meaning that every person taking the course must complete it him/herself. Cooperation with other course participants (as well students as the instructor and assistant) is encouraged but all such activities must be explicitly acknowledged in appropriate contexts – either in documents and/or in the code comments.
The due times for the deliverables are fixed. Missing a deadline leads to lost points for that deliverable. Possible requests to exceptions with the deadlines must be well grounded and discussed with the TA (Yana) before the deadline. The way of submission will be announced later.
The project web pages are the primary source of information. The pages will change and evolve during the course as more information is gained about the actual problem. If you have problems with finding some information or understanding the provided information you should ask for clarification (especially in the exercises). The answers/solutions that seem common for all or many participants will be added in the project web pages.
Your task is to manage the project that implements the time accounting software.
The test data for the software must be realistic. Thus it has been decided that the time used on developing the time accounting software (and its related course activities) will be used to simulate such data and projects. Therefore your other task is to record the time you use for this course and how it relates to different course activities.
Project organization
The purpose of the time accounting software is to assist in recording the working hours used for different projects and reporting these hours to different people. The key functionality of the software is storing the time usage data, allowing easy insertion of data, and creation of standard reports.
It has been decided that the first version will be implemented with MS-Excel 2000 since all the current personnel use it already. Thus there are no extra costs involved in taking the software in use and the needed learning time should be minimal, too. The current operating system is Win2000. It has also been already decided that the whole software must be included in one MS-Excel workbook (xls) file. This way the management of the system should be easier – especially since one company standard is that all the software have a version and date stamp or dialog easily accessible from every application.
The key functionality for the software is the data insertion, monthly report as an appendix to customer bills, and two graphic presentations of the time used for each project. The first one is a cumulative time during the project lifetime and the other one is a pie chart showing how the time is distributed between different activities. The time accounting software has currently only one interface to other systems, which is an ASCII file for copying the project data to company central project base.
The future versions of the software could include multiple project handling and shared database for simultaneous users. However, for this first version it is sufficient to handle only a single project by one user to assure timely entry in the markets.
Human factor in the Project
This project will consist of customer and supplier representatives.
Jan Voracek who will play the role of a customer’s IT manager represents the customers. You will be the supplier’s project manager. Since the project is so small you will also be the only software engineer assigned to it. However, you may have access to your company specialists that are willing to discuss the possible problems with you. Despite that you will need to implement all the solutions yourself.
The customer’s IT manager is ordering the time accounting software for their engineers. These end users are busy and they have no time to communicate with you. The IT manager expects you to present a feasible solution to their problem that can be easily taken in use.
Project Deliverables
1. Project plan
2. Requirements documentation
3. Implementation plan
4. Project binder
Detailed project schedule can be found here
|
Last updated on 04.10.2002 |