Project Management and The Professional: Assignment 2: TASS Management Report
Project Management and The Professional: Assignment 2: TASS Management Report
Project Management and The Professional: Assignment 2: TASS Management Report
Student Name (Number): David Ascic (10852958) & Ashan De Silva (10838542)
Executive Summary
The following report provides a comprehensive documentation on the TASS (Tutorial Allocation of Student System) specifications supplied for the commencement of a software project. Through a careful analysis of the specifications provided, task decomposition was carried out whereby system requirements were broken down into simpler and more rational tasks. These tasks were then planned based on a hierarchal rationale, where order and structure accounted for greater simplicity and quality assurance. Furthermore, it was also discovered that it is vital all tasks are completed within the time assigned due to completion requirements imposed on the project. An estimated time frame of 53 working days has been identified. It was also demonstrated that planning and system programming phases were most focused upon due to the nature of each group of tasks, as these activities were more complex and important in nature for underlying success of the project. Additionally, a risk analysis specifically denoted the identification of the risks involved with TASS and an approximation and evaluation of those risks. There is a primary importance to this analysis, highlighting all the potential areas of the project where risks and issues can be mitigated through contingency plans and new activities, and, more importantly, it provides an insight into the projects long-term prosperity, whether that may involve potential barriers in the future. It was found in the TASS system, due to the nature of the project, that is, a tutorial allocation system, there were many risks which could potentially de-rail the overall implementation and integration of the system, thus new risk-averse activities were established to mitigate such risk in the best possible manner. As shown throughout the report, it is recommended that project plans be the focus of attention by project managers first and foremost before conducting a project. Unfortunately, there are no straight forward methods or practices for planning; rather, it is purely dependent on the type of context for which the project is situated around. In this instance, the TASS system could be decomposed in a structured manner due to the systematic nature (e.g. sub-systems) of the entire project. Each project requires contextual realisation, where given the situation, one must adapt promptly and apply understanding in an appropriate manner.
Contents
Additional Assumptions ...................................................................................................................... 4 Decomposition and Planning Rationale .............................................................................................. 5 Time Estimation and Complexity Rationale ........................................................................................ 7 Risk Analysis ........................................................................................................................................ 9 Conclusion and Recommendations .................................................................................................. 12 A1: Activities and Deliverables.......................................................................................................... 13 A2: Duration, Classification, Complexity, Size, Confidence Estimation ............................................ 17
Additional Assumptions
1. A normal working day for a team member is 8 hours, between Monday and Friday. This is a realistic assumption, as is necessary in order to accurately contextualize time estimation and complexity. 2. The weekends are not taken into consideration throughout any of the project phases. This assumption is required once again to promote a realistic view of the project, as employees do not usually work on weekends, thus the subsequent delay needs to be taken into account through estimation. 3. System programmers are able to understand and be able to convert specifications to programming language, that is, no additional training is required. This enables the project team to focus purely on the task at hand, rather than out of scope aspects. 4. Basic GUI is assumed for basic functionality purposes upon demonstration and presentation. 5. Testing will need to be undertaken throughout the whole project, and at times may take longer than expected according to the complexity and overall estimate of the task. 6. It was also assumed that the university would provide all necessary hardware, thus eliminating the need for research into hardware vendors. 7. Lux and Osborne Consultants have also assumed to have an unlimited budget to complete the TASS System in order to expedite the process.
structured manner, only allowing tasks to be performed simultaneously if they are not dependent on the other, as well as restricting task execution to only if the root task is completed. This may appear as being restrictive on human resources and, overall, an inefficient way to deliver the project in the earliest time period possible with minimal costs, but this is a small deterrent when looking at the larger scope of the project and its ambition of guaranteed success upon implementation. For example, an unstructured decomposition and plan would be the testing of the system without test plans or the completion of pivotal coding. The structured approach chosen however, would involve the production of the test cases after all relevant coding has been written and the entire system is completed, followed by the execution of these test cases in an orderly fashion. This clearly demonstrated a more logical approach to decomposing and planning each task, guaranteeing minimal delays in the long-run by minimising potential problems in the future, whilst promoting consistency and quality assurance throughout all phases. In conjunction with this, milestones were set throughout the projects life. These were events in the project plan that, upon completion, can be reviewed. 21 milestones were identified and chosen; this was due to the fact that those in a reviewing position would want to see large scale functional and tangible deliverables throughout the project, and not minor completions, as this will not demonstrate the systems true function capabilities, potentially losing the interest of high-level stakeholders. For instance, a milestone is set directly after the completion and integration of all subsystems, which conveys a noticeable deliverable. Additionally, adequate testing procedures throughout the project and implementation procedures implies that a number of smaller milestones (e.g. documentation creation) would be performed regardless; thus the need for large amounts of milestones can been deemed as redundant time wastage by potential stakeholders reviewing the project. By focusing on key constructs and rather than a proliferation of technical details, the decomposition of the tasks provides a useful vehicle for communicating the architecture to nontechnical audiences, such as management, marketing, and potential users.
From past experience and knowledge, giving an unrealistic estimate could cause the project to not meet deadlines, which in this case gives the client an expectation that cannot be met. The general rationale focuses on the following factors: Allocating realistic time estimates, we could give the client an estimated time the project will be completed. Proper time management for each task and meeting client expectations, we would need to consider the degree of complexity and size of the task as a primary factor Tasks that require a combined group to action or lengthy process to complete, we have considered more time allocated. Simply because of the resources that are required for that particular tasks compared to individual working on one task
Our main objective is to deliver the completed TASS system on time and meet the system specification requirements. As time factors into delivering the TASS system on time, we have specified each task and the duration of that task to the best of our knowledge. The planning of the project is complex and is essentially the preliminary execution of the project. The TASS specification and requirements are to be thoroughly analysed to ensure that the project team understands the project and how the project will be organized. This stage of the project is critical as it requires on how the project will proceed and what tasks are involved in this project. The database system is an integral part of the system and is required to be accurately designed and operated. This phase in the project provides a rational amount of time as it is the foundation of the whole system. By allowing adequate time for this phase, we can ensure that quality work to make the system operational will allow us to easily integrate the following sub-system without much change to the design. The Lecturer, Subject, Student and Student-Subject sub-systems are developed after each one has been completed. These four sub-systems takes the most time as it is the development of the TASS project. Estimation of these sub-systems is given at a reasonable amount of time due to the fact that the written codes are being re-used. The specifications of the TASS system requirements are to have these sub-systems integrated with the entire system.
Although this phase may take the most time, codes written for these four sub-systems are re-used. Programmers will not be required to duplicate the code as by re-using the code, the sub-systems are built on consistency of the code throughout the sub-systems which can save time and effort. The entire system phase is to ensure that after each sub-system has been integrated, following errors may appear. Reasonable amount of time has been allocated to this section as it compiles to design error messages for the entire system if they arise. The final implementation stage has a reasonable amount of time allocated as it involves building and implementing the TASS system in a production environment. Also documentation can be written simultaneously by various members of the project to create an on-line TASS manual and technical documentation. The disaster recovery plan is also given a specific amount of time to make sure there is an off-site to handle the data backup of the TASS system in event of a disaster.
Risk Analysis
Risk No. 1 2 Risk Identification Client changes project requirements. Deadline disagreements that are mentioned in the contract. Unidentified system errors on the system during a production environment. Hardware incapabilities. User passwords are weak and can be decrypted by a small amount of random guesses User's responsibilities on giving out information. Student gain's access to Lecturer system. Project cancelled before completion. University management wants to push the project to an earlier timeframe. User's gain access to sensitive information & unauthorised access. Likelihood Impact Medium Low High High Risk Mitigation Ensure that requirements are defined in the scope. Any changes required during the project, the contract will state that it is their responsible for time and budget loss. Obtain contractual legal advice of the project documentation.
Medium
Medium
4 5
Medium Medium
Medium High
Hardware specifications and research will be examined during and after the coding stages. Password are required to meet the criteria when creating/changing. After 3 attempts, the user's account will be suspended.
Medium
High
Ensure that User reads and understand the policy on giving someone their username and password to log into the system Login and password are required to access the system at all times. User's should "lock" their computer when away from the system. Contract agreement that states in the event of the project being cancelled, client must comply with payments up to the current project. System has been planned out to give an estimate of the completed time and date. A planned system of the project should address the management of it's timeframe and advise the risks involved if trying to complete it at an earlier date. User's access should be identified according to their position and updated as required.
7 8 9
10
Medium
Medium
UTS Autumn Semester 2012 TASS Management Report 11 Pressure on the developers to ensure it meets deadlines and is error free. Attack on the network to gather data traffic or login details. Lecturers of other Subjects incorrectly alter other Subject Information Student gains control of the entire system. User's unable to work in certain areas due to installation of the TASS system. User's unable to work in certain areas due to installation of the TASS system. Legal constraints that may stop the project that requires access to students personal information. Legal constraints that may stop the project that requires access to students personal information. Conflict with current user processes. Medium
31272 Project Management and the Professional Medium Make sure tests are done thoroughly during the test phase.
12
Low
High
Ensure that data that is being sent is secure and user's must take precautions when entering their details. System monitoring requires to log new, modified, deleted changes within the system. This allows the audit log to identify who made the changes and too whom.
13
Medium
High
14 15
Low Medium
Low High
Have areas with emergency shutdown of the TASS system. Have areas with emergency shutdown of the security system.
16
High
Medium
17
Low
High
Make sure that the legal requirements for the TASS's project has been met and documented. Constraints can be dealt with during the beginning of planning of the project.
18
Medium
High
Make sure that the legal requirements for the TASS project has been met and documented. Constraints can be dealt with during the beginning of planning of the project.
19
Low
Medium
Have regular meetings with Lecturers and University Management during each phase.
10
UTS Autumn Semester 2012 TASS Management Report 20 21 Data loss due to natural disaster. Data loss due to natural disaster. Low Low High High
31272 Project Management and the Professional Disaster recovery plan created. Disaster recovery plan created.
11
Appendix
A1: Activities and Deliverables
TASK NUMBER 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 TASK Read TASS specification document Decomposition of the specification document Document artefacts gathered from decomposition Create contact for TASS system Sign off on TASS system contact Identify risks associated with TASS system Create website GUI for TASS users Create student log-in interface Create lecturer log-in interface Develop user help system Design the relational database tables Create lecturer information table Create student information table Create subject information table Create student-subject information table Implement lecturer table function: add a lecturer DELIVERABLES Understanding the project requirements and complete overview of TASS System Specification Produce a network dependency diagram Develop schema for sub systems, including Lecturer Table, Student Table, Subjects Table, Student-Subject Table Comprehensive Contract created outlining overall TASS system requirements Both University Management and Lux & Osborne, IT Consultants sign off and agree to the created contract Create Risk Management Report TASS user log-in webpage created Student Log in screen created, ready for data entry Lecturer Log in screen created, ready for data entry User Help system created, for ease of use by simple mouse operations and minimal keystrokes on the keyboard Completed Schema for all relational tables for the system, including an Entity Relationship Diagram depicting Lecturer Information Table, Student Information Table, Subject Information Table and Tutorial Information Table Overview of program coding required for the Lecturer Information Table Overview of program coding required for the Student Information Table Overview of program coding required for the Subject Information Table Overview of program coding required for the Tutorial Information Table Ensure Add Lecturer feature operates
Implement lecturer table function: enquire on a lecturer Implement lecturer table function: change lecturer Implement lecturer table function: delete lecturer Test lecturer table functionality Implement subject table function: add subject Implement subject table function: change subject Implement subject table function: delete subject Implement subject table function: enquire on a subject Implement subject table function: modify subject data Implement subject table function: modify subject status Test subject table functionality Implement student table function: add student Implement student table function: change student Implement student table function: enquire on a student Implement student table function: delete student Test student table functionality Implement student-subject table functionality: enquire tutorial lists Implement student-subject table functionality: add student Implement student-subject table functionality: change a student Implement student-subject table functionality: add subject for student Implement student-subject table functionality: delete subject for student Implement student-subject table functionality: delete student from a subject Implement student-subject table functionality: delete all students in a subject Test student-subject table functionality
14
Implement function: user log-in error reporting Test user log-in functionality Implement function: print full student list Implement function: print full lecturer file Implement function: print full subject file Implement function: print student details Implement function: print student tutorial details Implement function: print student enrolment details Implement function: print summarised subject list Integrate reporting functions Test integrated reporting functions Implement function: encode lecturer passwords Implement function: blocking a user after a number of incorrect attempts Implement function: terminating the system after 10 incorrect attempts in a processing run Implement BATCH JOB function: one word commands Implement BATCH JOB function: reporting systems Implement BATCH JOB function: backup data tables Implement BATCH JOB function: restore data tables from backups Implement BATCH JOB function: automated system start Implement BATCH JOB function: copy all programs and libraries from development directory Implement BATCH JOB function: compile all programs in the system Implement BATCH JOB function: copy all executable versions of the program from production directory to operating directory
15
16
17
18
19
20
Requirement No.:
Actual Requirement:
Title Page
st
Table of Contents
Page 2
st
Executive Summary
Page 3
Assumptions
Page 5, Deliverable 2, Point 1. Page 2, Part 1, Paragraph 2 and Page 5, Deliverable 2, Point 2.
Page 4
Pages 4 - 5
Pages 13 - 16 Page 2, Part 1, Paragraph 6. Appendix - A1. Page 2, Part 1, Paragraph 1. Page 7 Pages 17 - 20
10
11
12
Confidence in Duration Estimate of the Tasks Time Estimation and Complexity Rationale
Pages 17 - 20 Page 3, Part 2, Paragraph 2 Appendix A2. Page 3, Part 2, Paragraph 3 Page 6
13
20
Page 21
22