Phases & Deliverables
Below are descriptions of how our methodology is realized for each of our IT Solutions areas of expertise:
For our Application Development & Integration IT Solution projects, we use Starpoint Unified Process (SUP), an adaptive application development process which utilizes the Rational Unified Process (RUP) methodology for Requirements Inception and Elaboration phases, but applies Agile principles in both the Construction and Testing Phase.
We refer to this methodology as “Distributed Agile.” To manage the work-streams in more granular and smaller units, we adapted the Agile methodology to the development and testing periods within the entire project life cycle, which gives us the ability more easily to test and reconcile the intended functionality.
SUP incorporates our multi-delivery options and can incorporate client methodologies. SUP is founded on a simple and clear process architecture that provides commonality across a family of processes, yet can be adapted to specific solution requirements.
Tailored to establish consensus among all stakeholders and to create clarity of purpose within the development team, SUP is a medium ceremony approach, which refers to the level of documentation. This relates to not only the number of documents produced but also the extent to which they are detailed. The result is a management style and artifact set that are lean and to the point. Our goal is to ensure that all required information is documented accurately, that everyone knows where to find it, and that it is always available before it is needed.
Our SUP Phases
This phase is used to accomplish the high-level vision and plan for the project.
This is primarily a requirements gathering, architecture and design phase, and can include Proof of Concepts.
We focus on code delivery in this phase.
During this phase we focus on supporting the User Acceptance Testing (UAT) effort, and deployment to the production environment. Training and knowledge transfer is provided for design and code hand-off.
SUP Project Management and Technical Management
The purpose is to achieve a realistic perspective on the work to be performed, the artifacts to be produced, the resources assigned, the inherent dependencies, and the resulting time lines. Serving as a barometer of our ability to deliver according to the estimates, the plan is constructed according to the 4 phases identified by SUP: Inception, Elaboration, Construction, and Transition. The base duration unit of SUP is the iteration, which serves to partition the work so that discreet, usable portions are produced in a logical sequence. Each phase consists of 1 or more iterations.
Periodically we will conduct an internal status call to "take the temperature" of the project. At this time, we update the Project Plan, clarify goals, and discuss risks. We produce a Status Report containing issues, risks, and tasks. Initially, most communication will take place between client and our project managers. As the project progresses, analysts, tech leads, architects, and testers in both organizations will work together directly. When this is necessary, our resource will document the meeting minutes and copy both project managers.
Application Modeling System:
Enterprise Architect is used as the full application life cycle UML tool for capturing requirements, design and test efforts. Our developed and pre-defined template ensures coverage for all project challenges and expectations. We automatically generate Software Architecture, Use Cases, Supplementary Specifications, and Test Cases documents using Enterprise Architect as the single source, so the Enterprise Architecture model is always up-to-date and model validation will ensure that all components of the requirements, design and test processes are related. We also integrate with client systems as appropriate.
Artifact Management System:
We use Confluence as the central repository to maintain all documents and artifacts associated with a client engagement. We also integrate with client systems as appropriate.
Issue Reporting, Tracking and Resolution System:
We use Jira for Issue tracking and resolution. We also integrate with client systems as appropriate.
Source Code Control System:
We use Subversion for Source Code Control. This is a widely used, industry-standard, open-source version control platform. We also integrate with client systems as appropriate.
UI Prototyping Tool:
Serena Prototype Composer is our recommended tool for browser based UI prototype building. We also integrate with client systems as appropriate.