Project Management Final1
Project Management Final1
net/publication/272702314
CITATIONS READS
0 20,123
1 author:
Zoran Gacovski
FON University
46 PUBLICATIONS 136 CITATIONS
SEE PROFILE
All content following this page was uploaded by Zoran Gacovski on 24 February 2015.
Prepared by:
Members:
12/30/2014
Bitwise & Otherwise Software Project Management Plan 2
Approvals
Customer
Representative
Project Manager SME
Project Leader
Software Lead
Development
Software Quality
Control
Bitwise & Otherwise Software Project Management Plan 3
Table of Contents
Title Page 1
Approvals 2
Revision Chart 3
Table of Contents 4
List of Figures 5
List of Tables 5
1. Introduction 6
1.1 Project Overview 6
1.2 Project Deliverables 6
1.3 Evolution of the SPMP 7
1.4 Reference Materials 8
1.5 Definitions and Acronyms 8
2. Project Organization 11
2.1 Process Model 11
2.2 Organizational Structure 15
2.3 Organizational Boundaries and Interfaces 16
2.4 Project Responsibilities 17
3. Managerial Process 19
3.1 Management Objectives and Priorities 19
3.2 Assumptions, Dependencies, and Constraints 19
3.3 Risk Management 21
3.4 Monitoring and Controlling Mechanics 28
3.5 Staffing Plan 28
4. Technical Process 30
4.1 Methods, Tools, and Techniques 30
4.2 Software Documentation 30
4.3 Project Support Functions 31
5. Work Packages, Schedule, and Budget 33
5.1 Work Packages 33
5.2 Dependencies 33
5.3 Resource Requirements 37
5.4 Budget and Resource Allocation 38
Bitwise & Otherwise Software Project Management Plan 5
5.5 Schedule 39
6. Additional Components 41
7. Index 41
8. Appendices 41
List of Figures
Figure 2.1.A Waterfall Workflow 11
Figure 2.2 Development Team Structure 16
Figure 5.1.A illustrates the Work Breakdown Structure 34
Figure 5.3.A illustrates the Resource Graphs 37
Figure 5.4.A illustrates the Resource Cost Overview 38
Figure 5.4.B illustrates the Resource Allocation 38
Figure 5.4c illustrates the Budget overview 39
Figure 5.5a illustrates the Project Schedule 40
List of Tables
Table 1.5.1 Definitions 8
Table 1.5.2 Acronyms 9
Table 1.5.3 Abbreviations 10
Table 2.1.B Major Project Functions and Activities 12
Table 2.1.C Prototype Phase Diagram 14
Table 2.2.A Development Team Titles and Responsibilities 15
Table 2.3.A Organization Boundaries and Interfaces 16
Table 2.4.A Possible Client and Development Team Positions and Responsibilities 17
Table 3.1: Risk Estimation and Evaluation 21
Table 3.2: Position Skills and Required Education/Training 28
Table 5.2.a: Dependencies diagram of the Circuit Building Learning Application 35
Table 5.2.b: Dependencies diagram of the Software development phase 36
Bitwise & Otherwise Software Project Management Plan 6
1. Introduction
This document is the Software Project Management Plan (SPMP) for the development of
Bitwise & Otherwise's (B&O) Circuit Building Learning Application. The SPMP is based on the
OCD for the Circuit Building Learning Application. This plan provides information regarding
the project pertaining to the project organization, managerial process, technical process,
scheduling and budget. The SPMP is the controlling document for managing this project and will
be maintained and referenced in order to satisfy project requirements.
B&O will deliver to the customer at the completion of the project all the following
Bitwise & Otherwise Software Project Management Plan 7
B&O will also deliver a presentation to University faculty. The client is invited to attend
this presentation. The presentation will cover:
● Software Overview
● Software Design
● A demonstration of the delivered Prototype
This section covers how the SPMP may be changed and revised to meet the future
requirements of the project. A list of personnel assigned to titled positions referenced in this
section can be seen in the Approvals Table located at the beginning of this document and in
Appendix A. If personnel get reassigned then the Approvals Table will be updated to reflect new
assignments. The Project Manager is responsible for ensuring that personnel are accurately
updated.
All members of B&O will have the responsibility of identifying possible revisions and
corrections to the SPMP. At any time during the development of the documents any member
may elevate the suggested change to the Project Manager for review. The Project Manager will
have the responsibility of reviewing the suggested changes before allowing the member make the
suggested changes to the master document.
Bitwise & Otherwise Software Project Management Plan 8
1.5.2 Acronyms
Acronym Definition
GB Gigabyte
Bitwise & Otherwise Software Project Management Plan 10
I/O Input/output
MB Megabyte
MHz Megahertz
OS Operating System
PC Personal Computer
PM Project Manager
1.5.3 Abbreviations
Table 1.5.3 Abbreviations
Abbreviation Definition
AIR Adobe Integrated Runtime
App Application
Demo Demonstration
ed Edition
Ver Version
2. Project Organization
2.1 Process Model
In order for the software development to flow in an efficient manner, a software process
model was selected to dictate the course of development. A Waterfall approach will be used to
develop the Circuit Building Learning Application. A diagram of this model can be found in
Figure 2.1.A. The Waterfall Model will allow for easy implementation of a systematic and
sequential approach. It will also reinforce acceptable industry habits- define before design and
design before code, by emphasizing planning in the early development stages.
Project Planning B&O will discuss goals, objectives, and issues. 30 Dec 2014
Meeting
SRS final Present final version of SRS to management 1 Jan 2015
Progress Report Report progress to management 4 Jan 2015
SRS signoff Management verifies SRS meets standards 6 Jan 2015
Software Design Software Architect begins functional design 6 Jan 2015
Document Draft development for programmatic representation
(top-level) of data
Project Planning B&O will discuss goals, objectives, and issues. 7 Jan 2015
Meeting
Software Design Present final version of Software Design 9 Jan 2015
Document Final Document (top-level) to management
(top-level)
Progress Report Report progress to management 11 Jan 2015
Software Design Management verifies Software Design 13 Jan 2015
Document Signoff Document (top-level) meets standards
(top-level)
Software Design Software Architect begins functional design 13 Jan 2015
Document Draft development for programmatic representation
(detailed) of data
Project Planning B&O will discuss goals, objectives, and issues. 14 Jan 2015
Meeting
Question responses Deliver answers to management and customers 16 Jan 2015
questions
Progress Report Report progress to management 18 Jan 2015
Software Design Present final version of Software Design 20 Jan 2015
Document Final Document (top-level) to management
(detailed)
Software Testing Draft preliminary version of the Software 20 Jan 2015
Manual Draft Testing Manual
Project Planning B&O will discuss goals, objectives, and issues. 21 Jan 2015
Meeting
Progress Report Report progress to management 25 Jan 2015
Software Design Management verifies Software Design 27 Jan 2015
Document Signoff Document (top-level) meets standards
(detailed)
Project Planning B&O will discuss goals, objectives, and issues. 28 Jan 2015
Meeting
Software Testing Present final version of Software Testing 30 Jan 2015
Manual Final Manual to management
Software User’s Draft preliminary version of the Software 30 Jan 2015
Manual Draft User’s Manual
Question responses Deliver answers to management and customers 30 Jan 2015
questions
Progress Report Report progress to management 1 Feb 2015
Software Testing Management verifies Software Testing Manual 3 Feb 2015
Bitwise & Otherwise Software Project Management Plan 14
Table 2.1.C illustrates the major milestones of the Circuit Building Learning Application
prototype development phase. Phase diagrams for subsequent development will be based on the
results of the prototype effort.
Deliverable Date
12/9 12/23 1/06 1/13 1/27 2/3 2/10 2/20 2/27
Operational Concept X
Document
Software Project X
Management Plan
Software Requirements X
Specification
Software Design X
Document (top-level)
Software Design X
Bitwise & Otherwise Software Project Management Plan 15
Document (detailed)
Software Testing X
Manual
Software User’s Manual X
Test report X
Product prototype X
The development team is organized into specific task areas. These areas are listed and
described below. A list of the personnel assigned to each task can be found in Appendix A. The
responsibilities of the development team are the following:
Position Responsibilities
Project Manager SME (PM) 1. Overall supervision of project and
team
2. Delegates requirements
3. Maintains project plan
4. Performs implementation
5. Arbitrates issues that may arise
Figure 2.2 shows a diagram of the organizational structure that will command the Bitwise
& Otherwise program development team. The personnel assigned to these positions is listed in
Appendix A.
This section will layout the administrative and managerial boundaries between the
client’s organization and the project team’s organization. Table 2.3.A outlines those boundaries
and what each position will offer to the project development.
Table 2.3.A Organization Boundaries and Interfaces
Position Responsibilities
Analyst Ensures requirements are established
correctly.
Database Administration Department Designs the database used for the project
This final section of the project organization will identify the major project functions. It
will also assign each function to a position within the development team.
Table 2.4.A Possible Client and Development Team Positions and Responsibilities
Tasks Position
Project Project Software Lead Software Software App
Manager SME Leader Developer Architect Quality Community
Control Manager
Manager
Bitwise & Otherwise Software Project Management Plan 18
Requirements
definition X X X X
Requirements
analysis X X X X
Process
management X
Scheduling X X X X X X
Data collection X X X X X X
Database design X X X
Database
development X X X X
Configuration
Management X X X X
Hardware setup/
maintenance X X X
Integration X X X
Quality
Assurance X X X
Testing X X X X X X
Bitwise & Otherwise Software Project Management Plan 19
3. Managerial Process
This section of the SPMP shall specify management objectives and priorities; project
assumptions, dependence constraints; risk management techniques; monitoring and controlling
mechanisms to be used; and the staffing plan.
3.2.1 Assumptions
● It is assumed that the Circuit Building Learning Application users will be able to download
Android mobile applications and utilize Web-based services.
Bitwise & Otherwise Software Project Management Plan 20
● It is assumed that users will be utilizing the application through an Android-based mobile
phone or tablet or through a web browser on a Windows-based computer.
● It is assumed that the customer will have a cloud-based SQL database available for user
storage of application data.
● It is assumed that application users will have a functional Internet connection with the
designated server.
● It is assumed that all authorized users of the application will have user accounts and
passwords for the designated cloud-based SQL database.
3.2.2 Dependencies
● An Android-based mobile phone with at least a 550MHz processor and 256MB of RAM,
or a Windows-based computer with at least a 1.6GHz processor and 512MB RAM.
● Android OS ver. 2.3 or above, or a Web browser equipped with Flash Player ver. 10.1 or
above.
● A cloud-based SQL Server.
3.2.3 Constraints
Time is considered the greatest constraint in developing the Circuit Building Learning
Application prototype. The prototype will be produced during the ten-week period of 19
December 2014 and 27 February 2015. Starting 4 January 2014, eight weeks will be available
for procurement of all required documents and a demonstration of the prototype. Completion of
a functional model is targeted for 6 February 2015 to provide 22 days for refinement of the final
prototype.
Because of the limited development time, document submissions must not vary too far
from the stated deadlines. Steady progress must be maintained at a consistent pace to deliver the
required documents and application prototype by the target dates. As most team members work
full-time jobs, development time is highly limited. Performing software development tasks
during respective working hours is highly discouraged.
The budget for the project is severely limited and would normally prevent the acquisition
of Commercial-off-the-shelf (COTS) software for development purposes. However, a majority of
the COTS software is already available to the development team and is being provided by them
Bitwise & Otherwise Software Project Management Plan 21
at no charge. Various types of software are required for the development process:
● Computer code development and compilation tools,
● Documentation tools,
● Online Communication tools,
● Project scheduling and management tools.
Development of the prototype will also require hardware and software. Development
team members already are in possession of PCs and laptops. Additionally, an Android
application developer’s account at the Android Apps Store and cloud-based SQL server access
are also required.
Risk #1: Customer decides specified system does not meet needs.
Risk Scenarios:
During the Testing phase (alpha version of the product) and after the design and the development
Bitwise & Otherwise Software Project Management Plan 23
phase, the client has informed us that the software does not meet some requirements.
Alternatives:
Establishing a formal peer review process to ensure client’s requirements, developing a complete
requirements analysis report, and sign-off the SRS document will help reduce the probability of
this risk.
Actions Taken:
Detailed interview with the customer and creation of new Software requirements specification,
that the customer must sign-off.
Schedule:
Adjustments will be made to the Software Development Plan to compensate for any delays,
resulting from additional required time.
Risk #2: Updates to Flash software or Android OS cause app to stop working.
Scenarios:
This issue is common problem for both web and mobile application. It can occur unexpectedly.
Alternatives:
To make responsive design of the application, that will be tested on different platforms and
browsers (Chrome, Mozilla, IE).
Actions Taken:
Developers should use responsive tools, such as proportion-based grids, flexible images, CSS3 media
queries and @media rule.
Schedule:
Adjustments will be made to the schedule of the Software Development Plan to compensate
for any delays, resulting from additional required time.
Bitwise & Otherwise Software Project Management Plan 24
Scenarios:
This issue is common problem when developing software products. It can occur because of lack
of experience of the project manager, but also due to objective reasons (new client demands etc.).
Alternatives:
To avoid the risk of wrong schedule – careful planning should be done. The project manager
should talk to the development team while creating the schedule.
Actions Taken:
Either the development team should be increased (populated with new people), or the development plan
(schedule) should be changed on time.
Schedule:
Adjustments will be made to the schedule of the Software Development Plan to compensate
for any delays, resulting from additional required time.
Scenarios:
This issue is common problem when developing software products. It can occur because of un-
optimized coding, database issues, wrong design patterns etc.
Alternatives:
To avoid the risk of software time lags - the project manager and the development team should
choose proper design patterns, optimized coding templates, database optimization etc.
Actions Taken:
The project manager and the development team will choose proper design patterns, optimized
coding templates, database optimization.
Bitwise & Otherwise Software Project Management Plan 25
Schedule:
Adjustments will be made to the schedule of the Software Development Plan to compensate
for any delays, resulting from additional required time.
Scenarios:
Hacker intrusions are common security problem for all web-based software products. It can
occur because of poor security measures on the web server etc.
Alternatives:
To avoid the risk of hacker intrusions - the project manager and the development team should
apply security measures on the server – LDAP authentication, firewall protection etc.
Actions Taken:
The project manager and the development team will apply security measures on the server –
LDAP authentication, firewall protection etc.
Schedule:
Adjustments will be made to the schedule of the Software Development Plan to compensate
for any delays, resulting from additional required time.
Scenarios:
This issue is common problem in developing of all software products. It can occur always, but it
should be reduced within the testing and debugging phase etc.
Alternatives:
To avoid the risk of software bugs - the testing and debugging phase should be planned and
performed carefully etc.
Actions Taken:
The project manager and the development team will plan and perform in-deep testing and
debugging phase in order to avoid software bugs.
Schedule:
Adjustments will be made to the schedule of the Software Development Plan to compensate
for any delays, resulting from additional required time.
Scenarios:
This issue is rare problem in the production phase, since it can be tested and resolved prior to
deployment (it should be reduced within the testing and debugging phase).
Alternatives:
To avoid the risk of this software bug - the testing and debugging phase should be planned and
performed carefully.
Actions Taken:
The project manager and the development team will plan and perform in-deep testing and
debugging phase to avoid database connection problems.
Schedule:
Adjustments will be made to the schedule of the Software Development Plan to compensate
for any delays, resulting from additional required time.
Scenarios:
This issue is important in every type of project. The team should be composed carefully and
should remain complete until the project delivery.
Alternatives:
To avoid the risk of personnel insufficiency - the good motivation (benefits) should be provided
to the key developers.
Bitwise & Otherwise Software Project Management Plan 27
Actions Taken:
The project manager will provide good motivation (benefits) to the key developers. Also, backup
personnel members should be planned.
Schedule:
Adjustments will be made to the schedule of the Software Development Plan to compensate
for any delays, resulting from additional required time.
Scenarios:
This size of the software project is an important issue in terms of project finishing. The size can
be consider as twofold - memory space (due to device limitations) and project scope (number of
functionalities that should be implemented).
Alternatives:
To avoid the risk of oversizing of the project - the good definition of customer’s requirements
should be done (which functionalities will be implemented).
Actions Taken:
The project team will perform good definition of customer’s requirements (which functionalities
will be implemented).
Schedule:
Adjustments will be made to the schedule of the Software Development Plan to compensate
for any delays, resulting from additional required time.
Risk #10: Specific browser does not open the app correctly.
Scenarios:
This issue is a common problem for all web-based applications. It can be avoided by proper
testing of the application on different browsers (Chrome, Mozilla, IE, Safari etc.).
Bitwise & Otherwise Software Project Management Plan 28
Alternatives:
Developers should perform deep testing prior to deployment. For development - they should use
responsive tools, such as proportion-based grids, flexible images, CSS3 media queries and @media rule.
Actions Taken:
Developers should use responsive tools for development, such as proportion-based grids, flexible images,
CSS3 media queries and @media rule.
Schedule:
Adjustments will be made to the schedule of the Software Development Plan to compensate
for any delays, resulting from additional required time.
4. Technical Process
4.1 Methods, Tools, and Techniques
This project will use multiple systems to develop, maintain, and manage this application.
During the development Adobe Flash CC will be used to manage graphics. Flash will also be
used to implement cross platform compiling of the byte-code. The Apache Flex SDK 4.14.0 is
needed to encode the code to byte-code. It is maintained by the Apache Software Foundation.
The application Flash-Develop will be used to write source code for the project.
Google Drive will be used to store and share all development documentation. Google
Drive is a free web based file sharing tool. There will also be a file maintained on the drive
which will hold the current code base in development as well as all past iterations of the code.
Each iteration will be given revision number and a description of milestones reached for each
revision will be stored in a readme document. The readme document will be stored with the
revisions.
The creation of the MySQL database will be done using the free the free MySQL setup
GUI provided by 1&1. 1&1 will also host the database online and manage all aspects of network
support needed to keep the database online during the duration of this project.
Maintenance of the Database will be handled by a Database management utility. This
application will allow the customer to perform three functions. First, the utility will let the
customer promote circuits uploaded to the database. These promoted circuits will appear at the
top of the list of community created circuits. The second function will allow the customer to
delete circuits form the database. Last, the utility will allow the customer to shadow ban users
from uploading anything from to the database in the future. Shadow Ban is the process of
banning a person without informing them or providing any form of feedback. A shadow banned
person will have no idea they have been banned, there uploaded circuits will just not get added to
the database.
a previous edit is required to leave a comment on the reason for the restoration. All members of
B&O are responsible for maintaining and correcting the documentation. Prior to submitting
documentation to the client it will be exported to a MS Word .docx file. The documentation will
include:
● Operational Concept Document (OCD)
● Software Project Management Plan (SPMP)
● Software Requirements Specification (SRS)
● Software Design Document (SDD)
● Software Test Plan (STP)
● Software User’s Manual (SUM)
for upload.
Software Lead Developer will receive submissions to improve or correct the software
from the Quality Control Manager. They will be responsible for implementing changes to the
software per the request of QA. They will also be responsible for keeping the software up to date
and ensuring that the byte code remains compatible with the Flash Player. After major version
changes to the web Flash Player and the Android operating system the Developer will recompile
the byte-code and submit it to QA for review before it gets re-uploaded to the store accounts
online.
Bitwise & Otherwise Software Project Management Plan 33
A work package is a group of related tasks that are defined at the same level within a work
breakdown structure. The work package pictured below in Figure 5.1.A is divided into three
functional sections:
● Software Engineering
This section encompasses all the essential engineering research, planning, design and
required documentation.
This section involves testing and validation of the project design and documenting the
development process
● Software Implementation
This section involves software integration and module programming need for a successful
project implementation.
In the Software development phase (which is the main phase of the whole project) – the
following Processes (tasks/ activities) will be performed:
Figure 5.1.A illustrates the Work Breakdown Structure of the Circuit Building Learning Application
Bitwise & Otherwise Software Project Management Plan 35
5.2 Dependencies
The table below in Table 5.2.a illustrates dependencies for the Circuit Building Learning
Application. The dependencies diagram is a great method for tracking critical path items within
the schedule. It clearly depicts dependencies and interdependencies within the work packages.
As the Waterfall approach is chosen for the system development, the dependencies
generally follow the Waterfall Process workflow (Requirements -> Design -> Development ->
Testing -> Delivery). More detailed view of the dependencies (particularly task dependencies)
could be seen in detailed project schedule developed using Microsoft project 2013 and attached
to this document as Appendix B.
Table 5.2.b gives the dependences between the activities during the Software
development phase. We see that there are 17 activities (including testing phase) and the total
duration is 15 days.
Table 5.2.a illustrates the Dependencies diagram of the Circuit Building Learning Application
Bitwise & Otherwise Software Project Management Plan 36
Resource graphs depicted in Figure 5.3.a is used to show the resource requirements for
the project. The view below illustrates resource stats, work and resource status for the entire
project.
Figure 5.3.a. An illustration of the Resource graphs of the Circuit Building Learning Application
MS Project 2013 tool is a project planning tool used for managing this project. The
graphs below depicted below in Figure 5.4a, 5.4b and 5.4c provides overall cost for resources
and budget. It is assumed that equipment (servers, personal computers, android gadgets) is
already in place. Thus, resources are the only cost of the project.
Bitwise & Otherwise Software Project Management Plan 38
Figure 5.4.a Illustration of the Resource cost overview of the Circuit Building Learning Application
Figure 5.4.b illustrates the Resource allocation of the Circuit Building Learning Application
Bitwise & Otherwise Software Project Management Plan 39
Figure 5.4.c illustrates the Budget overview of the Circuit Building Learning Application
5.5 Schedule
Detailed project schedule is developed using Microsoft Project 2013.Figure 5.5a depicts
the Microsoft project schedule used for managing this project. The schedule includes project
functions, activities, and tasks, and the required milestone dates. Project schedule will be
published together with other documents to be followed and reviewed regularly by all team
members. Project manager is responsible to monitor the project schedule, regularly update it and
input all changes.
Bitwise & Otherwise Software Project Management Plan 40
Figure 5.5a illustrates the Project schedule for the Circuit Building Learning Application
Bitwise & Otherwise Software Project Management Plan 41
6. Additional Components
7. Index
8. Appendices
8.1 Appendix A
Appendix A
Organizational Assignments
Position Individual
Project Leader
Software Architect
Software Architect
Software Architect
Software Architect
8.2 Appendix B
Project Plan