TAYLOR’S PROFESSIONAL SERVICES STAFFING REQUEST MANAGEMENT SYSTEM By Cale Coyle, Michael Kozy, Brian Maerhofer, Christopher Ozaetta, David Rigsby Taylor’s Professional Services (TPS) is a technical and engineering staffing service. TPS wants to provide a web site so that their clients can complete a staffing request over the internet. In addition, TPS wants to provide their clients with a list of potential candidates based on experience, education, salary, and location. The goal of this project is to create a web-based application that will fulfill the requirements and needs of TPS. The project lead will ensure that all goals are met throughout the course of the project. All of the other members have been assigned specific roles that they specialize in. Each member will assist one another to get each task completed. Milestones have been set and planed with the goal of ensuring that each task is completed at the appropriate time. Microsoft Project will be used to help control the scheduling. Assignments have been laid out to help show for which tasks each team member is responsible. Risk types have been set up to help show what could occur throughout the project. They are displayed by probability, impact, detection difficulty, and when it could possibly occur. This can help reduce a surprise at a later time. This is displayed on the risk assessment matrix. Throughout the plan software applications are listed as well as testing procedures that will be tested at all times to ensure quality is top notch. Standards and procedures will also be written to make certain that the program run smoothly one it is live. PROJECT DESCRIPTION Staffing Request Management System Role Team Member Project Leader David Rigsby Lead Architect Cale Coyle Lead Web Designer Christopher Ozaetta Lead Web Programmer Michael Kozy Quality Assurance Lead Brian Maerhofer TEAM STRUCTURE Team Members The system was designed to allow the maintenance and retrieval of three types of data: • Staffing Requests • Contracts • Staff Information Project Specifications: • Creation, modification, storage, and retrieval: – staffing request information – contract information – staff information – user access information • Allows a client: – enter a staffing request into the database. – retrieve staffing request information. • Allows the contract manager: – retrieve a staffing request from the database – retrieve contract information – validate the staffing request – close out the staffing request. • Allows a staff member to update their personal information, resume, availability, and picture. SYSTEM DETAILS Requirements Overview The goal of the system was to create an intuitive user interface with a clean look and feel that will allow the end users to easily navigate and utilize the Staffing Request Management System. The must also be easy to maintain, especially with regards to the access control creation and maintenance activities. As such, access controls were planned to allow flexibility in the definition of system roles and access permissions. The basic system defines four types of users: 1. Client 2. Staff 3. Contract Manager 4. System Administrator Each of these authenticated system roles will be granted access to features based on a matrix that associates Roles to features of the system. Accordingly, public non-authenticated users will have limited access to the web site. SYSTEM DETAILS Requirements Overview The objective of the Design document was to detail the system functionality based on the requirements document. The system design document included the following items: 1. 2. 3. 4. 5. 6. Definition of the major system features A detailed data dictionary Event Diagrams for each major feature Use cases for each major feature Pseudocode for central modules Module usages (uses/used by) The system design document served as a basis for the construction phase of the project. As questions arose, the design document was consulted. As construction progressed and changes occurred, the system design was updated to reflect these changes. Data Storage • Records are being stored in a Microsoft Access Database. Considering the size of the application, the most efficient storage method would be with Access. The more records that are added could determine the change to more of an enterprise level database such as Oracle. • The database is structured using 3rd normal form • Each table includes unique primary and foreign keys (where needed), thus creating the relational schema. • Passwords stored within the database have been encrypted. The decrypted versions of the password are never sent to the web browser SYSTEM DETAILS Design Overview • The System is divided into separate menus for easy navigation TPS Home Page Contact TPS About TPS Login • Each type of user has different access abilities and adjusted appropriately for the job function required for daily use. Authenticated User Home Page Staffing Requests Create Staffing Request Update Staffing Request Search Staffing Requests Contracts Create Contract Update Contract Search Contracts Access Control Roles Features ACLs Users and Employees Users Staff Employees SYSTEM DETAILS Design Overview Request Creation •Clients will be able to make staffing requests by accessing the website. The client is asked to fill out fields for experience, education, salary and location. The information will then be linked up to match the best candidate located in the database. Request Modification •Modifications are made when the results come back from a matching candidate. Information can be modified and resubmitted if needed. Request Retrieval •All staffing requests will be viewed via a query with the current status of that request. The staffing requests are listed by it’s ID number. SYSTEM DETAILS Major Functions User Modification •System Administrator creates all user accounts and grants access to each account. •All users are granted permissions to insert and select records. Only the system admin has full range on permissions. •Upper management has the same abilities as users with the exception of delete options therefore if a record has to be deleted, it must be verified by management SYSTEM DETAILS User Access System Used: System Description: Google Code The Google Code site will act as the document repository, source code control, and issue tracking server for the project. Tortoise SVN This is client software that allows a user to interact with a Subversion repository. Tortoise SVN will be used to allow team members to access the Subversion repository located within the project at the Google Code hosting site. Microsoft Access Microsoft Access will be used for the Database upon which the site will be developed, tested, and deployed. Microsoft Internet Information Server (IIS) IIS is the software that will be used as the web server for the project. Each team member will install IIS on their local machine for development and testing purposes. The production web site will be hosted on TPS’ servers using their existing IIS installation as a base. Microsoft Visual Studio 2005 Visual Studio 2005 will be used as the editor and compilation environment for the development efforts. SYSTEM DETAILS Construction Overview Four types of tests were completed throughout the design profess for TPS. •Unit Testing Strategy •Integration and System Test Scripts •Basic Test Scripts •User Acceptance Test Plan Below are the results and the amount of tests completed for each type of user group. Test Iteration 1 2 3 Number of Tests Percentage Passed 30 93.75% Failed 2 6.25% TOTAL 32 Passed 5 71.4% Failed 2 28.6% TOTAL 7 Passed 3 100% Failed 0 0% TOTAL 3 SYSTEM DETAILS Testing Results Lessons Learned: • Better preparation ahead of schedule to keep the tasks moving to allow more time for review. • To equal out the work load so that everyone pulls their portion of the project. Problem Solution Communication Find the best times for the group to meet as a whole to get the weekly tasks accomplished. Time Management / Availability Inform the Project Lead of any problems ASAP before the end of the week to get the tasks resolved before the due date. Domain Knowledge Have each group member work more in the expertise that they are familiar with to get the best possible work done on time. Connectivity Having adequate internet connection to be able to participate and upload files to show the progress of the project. POST MORTEM Problems and Lessons Learned FINAL PRODUCT Application Demonstration