September 24
iCon: An
iPhone
Application 2009
This document covers the Software Project Management Plan
(SPMP) of this Software Development Project at Georgia Gwinnett
College. The plan presented here is for development of the iCon
Mobile Application by a small software team consisting of two Software
individuals: Paul and Robert, software engineers. The primary
audience is the project advisor, Dr Dekhane. This document
Project
outlines a brief plan about how the project is to be shaped and also Management
includes the milestones and deliverables. The SPMP document will
serve as a guide for the student, developing the product as part of
Plan (SPMP)
the project. Updates of this document will serve to record the
progress of the project.
Table of Contents
Table of Contents ............................................................................................................. 2
Software Project Management Plan (SPMP) ..................................................................... 4
1. Overview. .................................................................................................................................................................... 4
1.1. Project Summary. ................................................................................................................................................. 4
1.1.1. Purpose, Scope, and Objectives. ................................................................................................................. 4
1.1.2. Assumptions and Constraints. .................................................................................................................... 4
1.1.3. Project Deliverable’s. ...................................................................................................................................... 4
1.1.4. Schedule and Budgeting. ............................................................................................................................... 5
1.2. Evolution of Project Management Plan....................................................................................................... 5
2. Reference Materials. ............................................................................................................................................... 5
3. Definitions and Acronyms.................................................................................................................................... 5
4. Project Organization............................................................................................................................................... 5
4.1. External Interfaces. ............................................................................................................................................. 5
4.2. Internal Structure. ............................................................................................................................................... 5
4.3. Roles and Responsibilities. .............................................................................................................................. 5
5. Managerial Process Plans. .................................................................................................................................... 6
5.1. Start-up Plan. ......................................................................................................................................................... 6
5.1.1. Estimation Plan. ................................................................................................................................................ 6
5.1.2. Staffing Plan. ....................................................................................................................................................... 6
5.1.3. Resource Acquisition Plan. ........................................................................................................................... 6
5.1.4. Project Staff Training Plan. ........................................................................................................................... 6
5.2. Work Plan................................................................................................................................................................ 6
5.2.1. Work Activities and Schedule Allocation. .............................................................................................. 6
5.2.2. Resource Allocation......................................................................................................................................... 6
5.2.3. Budget Allocation. ............................................................................................................................................ 6
5.3. Control Plan. ........................................................................................................................................................... 6
5.4. Risk Management Plan. ..................................................................................................................................... 7
5.5. Project Closeout Plan.......................................................................................................................................... 7
6. Technical Process Plans. ....................................................................................................................................... 7
6.1. Process Model........................................................................................................................................................ 7
6.2. Methods, Tools, and Techniques. .................................................................................................................. 7
6.3. Infrastructure Plans. ........................................................................................................................................... 7
6.4. Product Acceptance Plan. ................................................................................................................................. 7
7. Supporting Process Plan. ...................................................................................................................................... 7
7.1. Software Configuration Management (SCM) Plan.................................................................................. 7
7.2. Testing Plan. ........................................................................................................................................................... 7
7.3. Documentation Plan. .......................................................................................................................................... 7
7.4. Quality Assurance Plan and Reviews and Audits Plan. ........................................................................ 8
7.5. Problem Resolution Plan. ................................................................................................................................. 8
7.6. Subcontractor Management Plan. ................................................................................................................. 8
7.7. Process Improvement Plan. ............................................................................................................................. 8
8. Additional Plans. ...................................................................................................................................................... 8
8.1. Security. ................................................................................................................................................................... 8
2
8.2. Support. .................................................................................................................................................................... 8
8.3. Maintenance. .......................................................................................................................................................... 8
3
Software Project Management Plan (SPMP)
1. Overview.
1.1. Project Summary.
1.1.1. Purpose, Scope, and Objectives.
The purpose of this project is to develop a mobile application that will simplify the
process of finding conference and related information via mobile devices. The mobile
application will have two end users, participants and organizations. The product will
allow end users to access, create, and update information regarding the conference and
related event information. A participant who is an employee of an organization may
register as an organizational user, hence the second user, organizations. The product
will be database-driven and will perform the operations of collecting and saving
information and authenticating organizations. Refer to the Requirements Workflow
Documentation to see more details on the requirements and problem this mobile
application solves.
1.1.2. Assumptions and Constraints.
The deadlines must be met.
The product must be reliable.
The product must be more efficient and effective then existing process in place.
The product must be user-friendly.
The product must be a mobile application.
The final product must be open-source.
1.1.3. Project Deliverable’s.
The complete product will be delivered during the week of December 7-12, 2009 and
will include the following:
Working Mobile Application
Prototype
Requirements documentation
SCM Plan
SPMP Document
Agility Index Measurements (AIM)
Risk Management documentation
Contract Model
Support Communication
Design decisions
Operations documentation
Support documentation
System documentation
4
User documentation
Database Model
User Interface Model
Other required UML models
The documentation, models, and prototype will be delivered throughout the process.
1.1.4. Schedule and Budgeting.
The duration and personnel requirements of each workflow are as follows:
Requirements Workflow (4 weeks, two team members)
Analysis Workflow (2 weeks, two team members)
Design Workflow (2 weeks, two team members)
Implementation Workflow (3 weeks, two team members)
Testing Workflow (3 weeks, two team members)
The total development time is 14 weeks.
1.2. Evolution of Project Management Plan.
The Software Configuration Management (SCM) Plan will manage all changes that occur
throughout the life cycle of the product.
2. Reference Materials.
All artifacts will conform to the teams programming, documentation, and testing
standards.
3. Definitions and Acronyms.
Reference the Requirements Workflow Documentation and the web for all definitions
and acronyms.
4. Project Organization.
4.1. External Interfaces.
Paul and Robert will perform all the work on this project. The development team will
support communications in person, online, and via subversion to report progress and
display or discuss changes and modifications.
4.2. Internal Structure.
The development team consists of Paul and Robert.
4.3. Roles and Responsibilities.
The development team will share roles and responsibilities for all required deliverables.
Individual team members may play different roles as according to the teams
documentation and standards. For example, Paul will play the role of the Program
Librarian and Robert will play the role of the Configuration Management Officer (CMO)
as per our SCM Plan.
5
5. Managerial Process Plans.
5.1. Start-up Plan.
5.1.1. Estimation Plan.
Not applicable here.
5.1.2. Staffing Plan.
Both members of the development team are needed for the entire duration (14 weeks)
of the development project.
5.1.3. Resource Acquisition Plan.
All necessary hardware, software, and CASE tools for the project are already available.
5.1.4. Project Staff Training Plan.
No additional staff training is needed for this project beyond reviewing the computer
language of choice and its architecture.
5.2. Work Plan.
Work plan will be based on Scrum framework, an iterative incremental framework for
managing complex works and is commonly used with agile software development.
5.2.1. Work Activities and Schedule Allocation.
Work activities and schedule allocation will be based on three sprints, where the first
sprint (5 weeks) will consist of the Requirements and Analysis workflows, the second
sprint (5 weeks) will consist of the Analysis, Design, and Implementation workflows,
and the third sprint (4 weeks) will consist of the Implementation and Testing Workflow.
Each workflow each deliverable will be complete before moving onto the next.
However, each ending workflow in a sprint overlaps the following sprint by one week
for revision purposes. For example, one of the two weeks of the Analysis Workflow will
be in sprint one and the second in sprint two.
5.2.2. Resource Allocation.
Individual team members may play different roles as according to the teams
documentation and standards. Team members will support communications in person,
online, and via subversion to report progress and display or discuss changes and
modifications.
5.2.3. Budget Allocation.
Not applicable here.
5.3. Control Plan.
The Software Configuration Management (SCM) Plan will manage all changes that occur
throughout the life cycle of the product.
6
5.4. Risk Management Plan.
The risk factors and the tracking mechanisms are documented in the Risk Scorecard
Document and the Risk Identification Questionnaire Document. The updates to risk will
be tracked using subversion.
5.5. Project Closeout Plan.
The product will be published online and available for download on delivery.
6. Technical Process Plans.
6.1. Process Model.
The Agile Software Development process will be used.
6.2. Methods, Tools, and Techniques.
The workflows will be preformed in incremental steps, similar to those in the iterative
and incremental model, through implementing Scrum management method to Agile
Development. The product will be an iPhone and iPod Touch application that is
implemented in Objective-C.
6.3. Infrastructure Plans.
The product will be developed using UML, the Cocoa Application Programming
Interface (API), Xcode development suite, the Model–View–Controller (MVC)
architectural pattern, and the iPhone Software Development Kit (SDK).
6.4. Product Acceptance Plan.
Acceptance of our product will be achieved delivering working software with
lightweight and visual documentation.
7. Supporting Process Plan.
7.1. Software Configuration Management (SCM) Plan.
The full SCM plan is listed in the SCM Plan Document. Subversion will be used
throughout for all artifacts.
7.2. Testing Plan.
The requirements artifacts will be tested throughout the life cycle of the product,
ensuring the requirements are followed without faults. Following initial testing of the
implementation workflow, an alpha version will be submitted for publishing to Apple.
More stable versions will be released as faults are found outside of the timeframe of this
project. Since this project is open source, the initial release of the working software with
lightweight and visual documentation with continuous following improvement is the
goal.
7.3. Documentation Plan.
Documentation will be produced as required, when needed, and without redundancy of
data within the different documentation types. The deliverables state all the documents
expected with the final product.
7
7.4. Quality Assurance Plan and Reviews and Audits Plan.
Both team members will test each other’s code, models, and documentation throughout
the life cycle of the product. The development team will perform integration and
product testing will be preformed following the implementation workflow.
7.5. Problem Resolution Plan.
Refer to section 5.3.
7.6. Subcontractor Management Plan.
Not applicable here.
7.7. Process Improvement Plan.
Not applicable here.
8. Additional Plans.
8.1. Security.
User authentication will be needed for the organizational end users.
8.2. Support.
Support will be provided through user documentation, forums, and user groups
8.3. Maintenance.
This product is open source; therefore the public and popularity of the product and/or
when the development team has time to volunteer will drive maintenance of the
product.
8