Journal of Communication and Computer 8 (2011) 366-372 A New Web-Based Project and Employee Time Tracking System for Project Management Somaya Al-Maadeed and Asma Abdulrahman Department of Computer Science, College of Engineering, Qatar University, Qatar Received: November 03, 2010 / Accepted: January 13, 2011 / Published: May 31, 2011. Abstract: Project and Time Tracking System (PTTS) is a web application that provides an automated and centralized method of tracking and monitoring work time for active projects by enabling supervisors to track employees work time, efforts spent while working on various projects performing tasks assigned to them. This system helps in completing projects on-time and on-budget by providing real-time project status. Also it optimizes resources utilization and measure the performance and productivity. One important advantage of the system over others is that each employee can log into his account to do various tasks. Employees, supervisors and project managers have different privileges according to their roles. PTTS performance testing successful at Qatar Petroleum (QP) Data Center. Key words: Project management system, portfolio management, time management, web application. 1. Introduction How to determine, manage and balance the right mix of projects is crucial to any organizations operating in a multiproject environment. Recently, Project Portfolio Management (PPM) has become prevalent; it is expected that multiple projects under a single management umbrella will deliver benefits that will not be possible if the projects were managed independently [1-4]. Furthermore, while multiple projects run in parallel and demand the same resource simultaneously, frequent conflicts are inevitable [5, 6]. Strategically, PPM aims to maximize the value of the projects as a whole, balance the portfolio relative to reward and risk, and align projects to business objectives [7-9]. Operationally, PPM organizes a series of projects into a single portfolio of reports that capture project Asma Abdulrahman, student, research fields: information system, database management. E-mail: asma.ahmed@dolphinenergy.com. Corresponding author: Somaya Al-maadeed, Ph.D., assistant professor, research fields: management system, pattern recognition, image processing. E-mail: s_alali@qu.edu.qa. timelines, accomplishments, resource consumption, costs, and other critical factors [10]. With this comprehensive framework, executives can then regularly review entire portfolios, spread resources appropriately and adjust projects to produce the highest returns. According to [11, 12], PPM is a dynamic process where active projects are constantly reviewed and modified and new initiatives are evaluated, selected and prioritized. During this process, resources are coordinated and reallocated among projects while contradicting schedule targets would be rearranged to make resources suffice and maintain equilibrium within the portfolio [13-15]. Generally, these systems evaluate a project portfolio through multi criteria analysis that searches for benefit maximization and risk minimization [16-19]. Furthermore, during the operation of the project portfolio, it is necessary to periodically reprioritize and reschedule all projects and reallocate resources in the managerial process [20, 21]. According to recent study, 90% of managers feel that their most important topic is portfolio management for projects and applications. If implemented correctly, a
A New Web-Based Project and Employee Time Tracking System for Project Management 367 solid Time Tracking System (TTS) approach to managing projects within an organization can make a real difference and help make the often tough decisions required in today s challenging times [22]. @task, Cardinis, Clarity, Daptiv, EnterPlicity, Genius Inside, Instant Business Network, Microsoft Office Project Server, Oracle Projects, and Planisware are popular software for project time tracking and project portfolio. However, according to our initial study the above systems do not fulfill many requirements. The proposed time tracking system is designed specifically for one organization (QP) needs and can be further implemented in many organizations. Therefore, Time Tracking System (TTS) is used to monitor the employee and make sure that employees work as planned for each project. One important advantage of the proposed system over others is that each employee can log on his\her account using a unique ID number and a password. The general objective is to build a time management system involving portfolio evaluation, decision making, and support functions. With timely information about the status of the portfolio and resource availability, the focus is placed on resource interdependencies and the mutual compatibility between projects at the aggregate level. Furthermore, an effective Project Portfolio Scheduling System (PPSS) is essential to convert each project into an operating timetable and maintain the portfolio s performance in a timely manner. This paper presents a web-based Project and Time Tracking System that can be used in any organization. The system is the first management system used to manage time and resource with integration with Microsoft Project software. Our goal in this paper is to automate the process of time management using a new designed database. The rest of this paper is organized as follows: section 2 is a definition of project portfolios in general. A system overview is provided in section 3. A description of the database and GUIs that support the design of the FDMS is presented in sections 4 and 5, respectively. System functionality is explained in section 6. Finally, we conclude in section 7. 2. Project Portfolios Projects and project portfolios represent the management control mechanism for driving change. The project portfolio represents the collective vision of where the organization is trying to go and how to get there. The project portfolio is nothing short of the vehicle for achieving the company vision. Although, the order of implementation is strictly driven by priorities, the successful PPM implementations may start from the following three domains, build success and then expand to the other domains: Manage Supply and Demand (Request Management), Prioritize the Project Portfolio and aligned it with business needs, and Deliver Projects and Applications as shown in Fig. 1, the above domains need to be supported with the following components: Resource Management, Time Management, and Reporting. Those are explained in the following subsections. 3. PTTS Structure In this paper we built a web-based Project and Time Tracking System (suite of integrated Modules). The software development process followed the Iterative/Incremental Development Technique, in which the various modules of the system are developed at different times, and integrated as they are completed. Fig. 1 Project Portfolio and Performance Mgmt System for QP Data Centre.
368 A New Web-Based Project and Employee Time Tracking System for Project Management Objected oriented analysis and design using UML is selected for the system analysis and design. The main subcomponents are as in Fig. 2. Project and Tasks setup is initially, project details and full list of project tasks with their assigned resources need to be setup in the system. Time Entry is a timesheet created by each resource, for a predetermined time period to where the user fills actual work time on assigned tasks. After completely filling the timesheet, it is to be submitted for approval. Time Approval is Manager/Supervisor approves timesheets submitted by resources for a particular time period according to a pre-defined approval workflow. Time Posting defined as MS-Project plans are updated with actual work time from approved timesheets. User Authentication is access to the different functions in the system is controlled by allocating each resource the required access levels. This access rights would be identified as the user login to the system. The default levels are: Timesheet Entry (ability to enter own timesheet only), Manager/Supervisor (can perform authorization functions and approve timesheets), Project Manager (performs project setup and approves timesheets for assigned projects), Administrator (can perform all functions, including database administration and security). Reporting and Dashboarding is a reporting tool to deliver comprehensive project status and time reports in various ways. 4. Detail Design This section describes the detailed architectural design for the project and time tracking system. It specifies the different classes in the system using class diagram (see Fig. 3). In the database the system has the following tables: TeamMember, Timesheet, TimesheetStatus, WorkUnit, Calender, CalenderEntryType, Section, Project, Task, ProjectStatus, ProjectGroup, Assignment, ProjectResources, Role, RolePrivilege, Privilege, TimesheetStatus, LogTeamMemberRole. Many team members work in section each section managed by one section head. Many team members supervised by supervisor, administrator, project manager and section head. Each section managed in many projects.projects managed by project manager. The rest of the relations between entities are shown in Fig. 2. 5. Implementation and Deployment During deployment design, the components specified in the logical architecture are mapped to a physical environment, producing high-level deployment architecture. An implementation specification, which provides low-level details specifying how to build the deployment architecture, is created. Additionally, we created a series of plans and specifications that detail different aspects of implementing and software solution are created. For the project and time tracking system, a MPXJ Microsoft project exchange java library was used to retrieve data from Microsoft project and vise verse. Oracle 9i was used for database operations, including the storage and retrieval of login information, as well as submission data. Successfully logging into the system, users are taken to an action page that dynamically presents options to them based on their privileges if it s an administrator, manager or team member. Java servlets and JSP JavaServer Pages was used in implementation of this system. A servlet extends the functionality of a server, such a Webserver that serves Webpages to a user s browser using the HTTP protocol. JSP technology provides a simplified, fast way to create web pages that display dynamically-generated content. The following image shows screenshot of timesheet to be filled by employees. For the interfaces we used Jboss tools which is a pluggins contain some of the tools used for designing the interfaces such as: buttons, radio buttons and chick boxes, etc. These tools generate an xhtml codes that contains the properties for each component and its action, database implementation. During the development of the system, data for the testing of different functionalities was needed to be
A New Web-Based Project and Employee Time Tracking System for Project Management 369 Fig. 2 Main subcomponents of the web-based Project and Time Tracking System. Fig. 3 The project and employee time tracking system class diagram. imported into the database tables. The tables in the database are filled using two different ways. The first way is to fill the tables by importing the data from a Microsoft project document that contains the data that is needed. The second way is by using the integration with Microsoft project by using the MPXJ to retrieve data. The following are the system requirements: Login Validation operation, Create a Timesheet, Open Created Timesheet, Populate Timesheet with Tasks, Fill timesheet with actual, Submit Timesheet, Change Password, Review submitted timesheets, Approve timesheet, Create a New Project Delete a Project,
370 A New Web-Based Project and Employee Time Tracking System for Project Management Update project Details, and Create/Update project plan (tasks) Maintain resource Privilege (see Fig. 4). The requirements were all fulfilled in the implementation phase of the system. 6. Testing and Evaluation Software Testing is the process of validating and verifying that a system meets the business and technical requirements. It also provides information about the quality of the product or service under test, with respect to the context in which it is intended to operate. In this paper Project and Time Tracking System (PTTS) was developed for Qatar Petroleum (QP) Technical service department Data Center (EED). The testing techniques that have been used to test the PTTS are: unit testing, and system testing. In this section a description of the testing procedures will be detailed against the initial system functional and non functional requirements. 6.1 Testing System Correctness Benchmark with System Requirements In this section the tested components of the system will be introduced based on the initial functional requirements. The section is divided into two parts for every testing type: unit testing, and system testing, and for every type of user where applicable. Unit testing is a software verification and validation method where the programmer gains confidence that individual units of source code are fit for use. We isolate each part of the program and show that the individual parts are correct. This can be shown in Table 1. In System testing we ensure that the complete system complies with the functional and nonfunctional requirement. System testing is applied to the system and successfully passed. 6.2 System Evaluation Non-Functional Requirements We evaluate critical non-functional requirements, and apply it to the domain of PTTS to validate it. Those requirements are usability, supportability, flexibility Fig. 4 Snapshot of a team member s timesheet.
A New Web-Based Project and Employee Time Tracking System for Project Management 371 Table 1 functional requirement. Functionality User Status Login All users Pass Open/View created timesheet Team member Pass Populate timesheet with tasks Team member Pass Fill timesheet with actual Team member Pass Submit timesheet Team member Pass Find returned timesheet Team member Pass Review submitted timesheet Supervisor Pass Approve timesheet Supervisor Pass Return timesheet Supervisor Pass Change password All users Pass Update availability calendar All users Pass View resource availability Section head, Pass calendar project manager Maintain company calendar Administrator (set official holidays) Pass Maintain section Administrator Pass Maintain recourses Administrator Pass Maintain resource privileges Administrator Pass Create new project Administrator Pass Delete a project Administrator Pass and security. Usability: The system provides a coherent user interface that is consistent to QP interface. The system has an obvious component which allows the user to navigate the system easily. Supportability: The system can be easily modified or extended because of the use of Object Oriented approach. Flexibility: The system is flexible since it will be reused every year and whenever is needed with a new set of initial data and can accommodate changes in database such as modifying the project and task and project manager, etc. Security: The system prevents unauthorized users to access the system. Authorized users are provided with user id and passwords. In order to achieve high level of security, the password is encrypted. Data confidentiality is also provided through the same means. 7. Conclusions A project and time tracking system was designed to provide an automated and centralized method of tracking and monitoring progress for active projects. Object oriented approach using UML2 was used for the system analysis and design. The web application was designed in three tiers architecture with Oracle as a database and JBoss as Application Server using Java Server Pages technology. The major strength in this work was using a well-defined project management methodology. The work started by a comprehensive project definition that included: the initial request, roles and responsibilities, project schedule, deliverables, scope, and objective. Another strength, was the implementation of a web technology which is more and more replacing the desktop or thick client applications. In the future, PTTS can be further improved to be used in any organization. The tab reports can be added, in which the administrator can generate timesheet reports and project reports. In the future a more comprehensive project portfolio management system can be created which may include the modules: request management, resource management, performance management and program management. Acknowledgments This publication was made possible by a grant from UREP and Qatar University. Its contents are solely the responsibility of the authors and do not necessarily represent the official views of Qatar University nor QNRF. References [1] F. Ghasemzadeh, N.P. Archer, P. Iyogun, A zero-one model for project portfolio selection and scheduling, Journal of Operational Research Society 50 (1999) 745-755. [2] L.D. Dye, J.S. Pennypacker, Project Portfolio Management: Selecting and Prioritizing Projects for Competitive Advantage, Center for Business Practices, CBP, West Chester, 1999. [3] G. Kendall, S. Rollins, Advanced Project Portfolio Management and the PMO', J. Ross Publishing, Boca Raton, FL, 2003. [4] R. Gareis, Management of the project-oriented company, in: The Wiley Guide to Managing Projects, Wiley, New York, 2004. [5] J.H. Payne, Management of multiple simultaneous projects: a state-of the-art review, International Journal of Project Management 13 (1995) 163-168. [6] N. Levy, S. Globerson, Improving multi-project management by using a queuing theory approach, Project Management Journal (1997) 40-46.
372 A New Web-Based Project and Employee Time Tracking System for Project Management [7] K.A. Artto, Editorial: management of projects as portfolios, International Project Management Journal 71 (2001) 4-5. [8] M. Thiry, Value management: a group decision-making process to achieve stakeholders needs and expectations in the most resources effective ways, in the Wiley Guide to Managing Projects, Wiley, New York, 2004. [9] N.P. Archer, F. Ghasemzadeh, Project portfolio selection and management, in: The Wiley Guide to Managing Projects, Wiley, New York, 2004. [10] M. Solomon, Project Portfolio Management, Computerworld, 2002. [11] S.B. Graves, J.L. Ringuest, R.H. Case, Formulating optimal R&D portfolios, Research Technology Management 43 (2000) 47-51. [12] R.G. Cooper, S.J. Edgett, E.J. Kleinschmidt, Portfolio management for new product development: results of an industry practices study, R&D Management 3 (2001) 361-380. [13] N.P. Archer, F. Ghasemzadeh, An integrated framework for project portfolio selection, Project Portfolio Management Project Portfolio Management, Center for Business Practices, West Chester, 1999, pp. 117-133. [14] B. Anell, Managing project portfolios, in: R.A. Lundin, F.T. Hartman (Eds.), Projects as Business Constituents and Guiding Motives, Boston, 2000, pp. 77-88. [15] J.S. Pennypacker, L.D. Dye (Eds.), Managing Multiple Projects: Planning, Scheduling, and Allocating Resources for Competitive Advantage, Marcel Dekker, New York, 2002. [16] K.A. Artto, Management of project-oriented organization conceptual analysis, in: K.A. Artto, M. Martinsuo, T. Aalto (Eds.), Project Portfolio Management: Strategic Management through Projects, Project Management Association, 2001, pp. 5-22. [17] A. De Maio, R. Verganti, M. Corso, A multi-project management framework for new product development, European Journal of Operational Research 78 (1994) 178-191. [18] M.M. Nkasu, K.H. Leung, A resources scheduling decision support system for concurrent project management, International Journal of Production Research 35 (1997) 3107-3132. [19] T.D. Klastorin, Project, Management: Tools and Trade-Offs, John Wiley & Sons, 2003. [20] R.D. Archibald, Managing High-Technology Programs and Projects, 3rd. ed., Wiley, 2003. [21] R.G. Cooper, S.J. Edgett, E.J. Kleinschmidt, Portfolio Management for New Products, Perseus Publishing, MA, 1998. [22] G. Nee, 'The Value of Project Portfolio Management in Tough Economic Times, Available online at http://www.clarionconsulting.ie/u_documents/doc_183_1.pdf, 2009.