ZDM

Shared by: 6RX6jdx9
Categories
Tags
-
Stats
views:
1
posted:
11/11/2011
language:
English
pages:
9
Document Sample
scope of work template
							Zenani Software Development Life Cycle
                                                      April 2003




                                                   Prepared by:


               Zenani Corporation – Enterprise Software Services
                                       15203 Cornerstone Drive
                                             Yardley, PA 19067
                                   Main Number (215) 962-5394
Zenani                                              Software Development Life-Cycle



                                                TABLE OF CONTENTS


OVERVIEW ................................................................................................................................................... 3

INTRODUCTION ......................................................................................................................................... 3

QUALITY ASSURANCE .............................................................................................................................. 3

SOFTWARE DEVELOPMENT MODEL .................................................................................................... 4

PROJECT LIFECYCLE ............................................................................................................................... 5

   CONSTRUCTION ........................................................................................................................................... 7
   CONSTRUCTION QA STAGE ........................................................................................................................ 8
   DEPLOYMENT .............................................................................................................................................. 9
   SUPPORT ..................................................................................................................................................... 9




Create Date: 11/15/01
Last Rev: 11/11/11 5:21 AM
Zenani                           Software Development Life-Cycle


OVERVIEW

This document provides a detailed description of the Software Development Life-Cycle followed
by Zenani Corporation Enterprise Software Services (ESS). The methodology described explains
ESS’s approach to software development, quality assurance and product delivery.



INTRODUCTION

This document describes the Software Development Life-Cycle (SDLC) for application
development projects managed by Enterprise Software Services. Our Project Teams follow a
development methodology, Zenani Development Methodology (TDM), to ensure the highest
quality deliverables while tightly managing costs and schedules. We have developed the TDM
based on Project Management Institute (PMI) best practices coupled with the latest Software
Engineering Institute (SEI) standards to facilitate our software application development process.


The ZDM philosophy is to provide our clients with hands on participation in all the phases of
development.    Our goal is to deliver software applications that are well designed, meet and
exceed our client’s expectations, and are developed according to industry standards. We ensure
this goal is met through the cycle of validation process, where project reviews are held with the
clients at each step of the development process.



QUALITY ASSURANCE

Zenani Corporation performs extensive quality assurance reviews in all phases of the software
development lifecycle. This pro-active quality assurance process results in:


        Shortened development schedules
        Increased customer satisfaction
        Reduced development costs
        Higher level of reliability and ease of maintenance




Create Date: 11/15/01
Last Rev: 11/11/11 5:21 AM
Zenani                          Software Development Life-Cycle


SOFTWARE DEVELOPMENT MODEL

Enterprise Software Services follows a Staged Evolutionary Development (SED) strategy,
using a hybrid approach combining elements from three lifecycle models: Extreme Programming,
Staged Delivery and Design-to-Schedule to complete the design and implementation of our
client’s applications. This hybrid approach allows the software to be developed and delivered in
stages. During the Discovery phase, Enterprise Software Services, along with our client, divide
the project into a series of independent packages based on features and functionality. Our client,
working with our project teams, then prioritizes the most important functional pieces of the
application and these are developed first. Our clients can start using and testing the software as
soon as the first package is delivered. This approach shows continuous progress of the project
and reduces the risk factors associated with software development.


The success of the SED model is partnered planning between ESS and our clients. It is important
that the packages are meaningful to our client and that the work assigned to the project team
allows for completion of a package according to a staged delivery schedule and to dependencies
between the various packages.


In addition, User Experience Engineering allows our clients to better understand the user-
interface design and system requirements. This process is what sets Zenani Corporation apart
from our competitors. The User Experience Engineering process guarantees that we are
developing the features and functions as prioritized by our clients. It results in a better overall
design of the product and, in combination with our staged delivery process, ensures our clients
receive the application they need to run their business.


The paper prototyping process we’ve developed provides a hands-on demonstration of the
product concepts and allows our client to more easily envision the final product deliverable.

User Experience Engineering combined with the Time Box technique of defining fixed periods of
time in which specific tasks can be performed, provide the following benefits:


   Client involvement in every stage of the application development
   Allows work to be broken into more manageable tasks that allow for faster delivery of
    packages.
   Results in more accurate estimates
   Offers better management of costs and schedules
   Minimizes system integration problems

Create Date: 11/15/01
Last Rev: 11/11/11 5:21 AM
Zenani                                   Software Development Life-Cycle


     Development can progress in parallel with other packages




PROJECT LIFECYCLE




                   Zenani Development Methodology
                                                           Management
                                                       Quality Assurance
                         Constr uction Stages 1 - N             Final QA Stage

                                                                      System
                                             Feature                Integration
                         Feature                                        Test
                                              Build
     Discovery            Test                                                    Deployment                 Support
                                                                     Load Test
                                             Feature
                         Feature             Design
                         Analysis                                   Performance
                                                                        Test


                                                        Phase Highlights
    Use Task Examples    System Test Plan              Test First Coding          Documentation           Issue Tracking

    Contextual Inquiry   DB Design                     Unit Tests                 IQ Documents            Production Monitoring

    Vision Definition    Paper Prototype               Detailed Design            Acceptance Tests        Release Management

    Feature Catalogue    Code Reviews                  Effort Tracking            Transition Activities
                         User Feedback                 Customer Collaboration
                         Performance Tests              Load Tests




DISCOVERY


As the foundation of all other activities, Discovery is one of the most critical steps for the success
of the project. The purpose of the Discovery phase is not to develop an all inclusive requirements
document that will become obsolete before the project is finished. Instead, the Discovery phase
is used to define and understand the client’s vision and priorities. The Discovery phase is also
used to validate and test high-risk items such as new technologies or frameworks needed for high
priority capabilities.


Create Date: 11/15/01
Last Rev: 11/11/11 5:21 AM
Zenani                            Software Development Life-Cycle


Key activities in this phase of the project life cycle include:


Requirements Analysis for the new system through User Experience Engineering:
    -    Contextual Inquiry
    -    User Task Example analysis
    -    Paper Prototyping (General UI Testing)
   Development of a Vision Statement
   Development of the Capability Catalogue
   Development of the Capability Prioritization document
   Baseline Project and Staffing Plan
   Development of a Baseline Configuration Management Plan
   Initial review of the existing systems and interfaces, where applicable
   Development of Project Quality Assurance Plan
   Understand new technical infrastructure
   Validation of high risk technologies or concepts


The work products out of this step are:


   Capability Catalogue – This is a short summary of the desired capabilities and features
    required in the new system.          Each capability will also have the risks, assumptions,
    dependencies and a preliminary estimate. This document feeds into the initial Project Plan
    and Capability Prioritization document. This document does not go into exhaustive detail
    about each capability and will not for example contain sample GUIs for each item. This detail
    is developed later in the construction phase and is only executed for capabilities that deemed
    a priority by the client.
   Capability Prioritization Document - This document is created as the result of the prioritization
    of the items listed in the Capability Catalogue.
   Vision Statement – This is a succinct description of the goals and objectives to be
    accomplished by the project as a whole.
   Initial Project Plan – This is a baseline project and staffing plan based on the client’s
    prioritization and Zenani’s development methodology.
   User Experience Engineering Documents – User Task Cases, Sequence Diagrams and
    Workflows.
   Paper Prototype - Paper Prototypes are useful for application and client User Interface design
    concepts. The execution of the paper prototype will bring out key features of the User



Create Date: 11/15/01
Last Rev: 11/11/11 5:21 AM
Zenani                            Software Development Life-Cycle


    Interface and underlying functionality. This allows our clients to prioritize the development of
    the application according to the client’s priorities.
   Quality Assurance Plan – This document describes the process to ensure quality
    measurements are performed and addressed throughout the software development life cycle.



CONSTRUCTION

In the ZDM the Construction phase represents an iterative process in which each discrete
capability and feature goes through its own analysis, design, build and test phases. The overall
Construction phase is broken up into multiple stages each containing one or more capabilities.
The stages are formed based on the Capability Prioritization document. The last stage in the
ZDM Construction phase is reserved for final integration testing and QA activities such as Load
and Performance testing.       At the end of each stage the associated capabilities are “feature
complete” and ready for client review.         This allows the client more flexibility in terms of
deployment options since each stage represents a discrete slice of deployable functionality.


The activities in this stage are as follows:


   Requirements Analysis for individual capabilities
   Paper Prototyping and Detailed Design of the User Interface for each capability
   Detailed Design
   Test First Coding/Building
   Code Reviews
   Unit Testing
   Developmental Integration Testing
   Client review of incremental application capabilities
   Database Design (If extensive DB design is needed this would be broken out into its own
    stage)
   Revision or Test Plan
   Revision of Project Plan


The work products from this stage are:


   Capability Specification Document – This document starts out as the Capability Catalogue
    and is built incrementally as each capability goes through its detailed requirements phase.
    Performance expectations and Load requirements are also captured in this document.

Create Date: 11/15/01
Last Rev: 11/11/11 5:21 AM
Zenani                          Software Development Life-Cycle


   Unit Test Scripts and Source Code – Since the ZDM employs Test First Coding every source
    code package is delivered with its own Unit Tests.
   Technical Documentation - As part of every stage the technical documentation is completed
    for each associated capability.
   Revised Database ERD – If needed DB changes will be documented and incorporated into
    the deployment scripts.
   Revised System Integration Tests – As new functionality is added the System Integration
    Test scripts are updated.
   Revised Project Plan – Each stage represents a benchmark in terms of the overall project
    progress. As stages are being completed the project plan is constantly revisited to reflect the
    latest data.



CONSTRUCTION QA STAGE

Once all of the application capabilities are developed and tested individually, the team needs to
ensure that the integrated product is working according to the Capability Specification Document
and System Integration Test scripts. Depending on the size of the project it may be necessary to
have multiple iterations within the QA Stage. These final iterations include intensive memory
profiling, load testing and performance testing to ensure that the product is ready for deployment.


Additional work products from this stage are:


   Final System Integration Test Plan – This document is built incrementally based on the
    capabilities added in each new functionality stage. Additional test cases will be added in this
    stage if any application states have not been adequately covered.
   Load Test Plan – This test is designed to see how the application behaves under production
    load.
   Performance Test Plan – This test is designed to validate that the final application meets
    performance expectations.
   Final Technical Documentation – These documents are built incrementally based on the
    capabilities added in each new functionality stage. Final changes and edits are made during
    this stage to ensure proper documentation for deployment and later support.




Create Date: 11/15/01
Last Rev: 11/11/11 5:21 AM
Zenani                            Software Development Life-Cycle


DEPLOYMENT

Upon completion of the final Construction Stage the application is submitted for User Acceptance
Testing. Since the client will have been involved in reviewing each capability at the end of each
stage minimal issues should arise out of User Acceptance Testing. After UAT is complete the
application is transitioned to the client’s production support group. Also at this point in the project,
the Project Manager will meet with the client to execute project close out procedures.


The activities in this stage are as follows:


   Production Support Turn-Over
   Finalized Training Plan (If applicable)
   Delivery of Associated Project Materials (Source Code as agreed to in the Terms and
    Conditions, Documentation, etc.)
   Customer Satisfaction Survey


The final application is approved for release to our client only after the quality assurance team,
project manager and client have reviewed the product and accompanying documents/reports,
and "signed-off" on acceptance of the final release.



SUPPORT

For many of our client’s a transition period is needed during which the client’s technical staff
comes up to speed in supporting the application. Many methodologies ignore this critical phase
of a project. Zenani realizes the rollout of a new application is often when the client needs us the
most.


Listed below are some of the services Zenani can provide during this phase:


   Production Support Transition
   Establishment of Issue Tracking Systems
   Release Management Assistance
   Training Support Services
   Production Monitoring
   Help Desk Services




Create Date: 11/15/01
Last Rev: 11/11/11 5:21 AM

						
Related docs
Other docs by 6RX6jdx9
finding neverland
Views: 2  |  Downloads: 0
NRC2006 20ClinicPresentation 20CombinedFINAL
Views: 0  |  Downloads: 0
MUNIS 20Earnings 20Codes
Views: 10  |  Downloads: 0
resource index
Views: 25  |  Downloads: 0
Jill Koenig Bio
Views: 0  |  Downloads: 0
STATS_for_2008
Views: 19  |  Downloads: 0
DCC_Cancer_Control
Views: 2  |  Downloads: 0