Waters Software Development Life Cycle

advertisement
Waters Software Development Life Cycle
(EMPOWER PRODUCTS)
P r o je c t S ta r t
D ocum ent
F e a tu r e
C o m p le te
P r o je c t
D ocs.
S tu d y
M a rk e t
R eq.
D e s ig n
R e v ie w
D ev.
P la n
Test
P la n
Test
C ases
D e s ig n
D ocs.
C ode
R e v ie w
D e s ig n
T ask
C om p.
R e v ie w
Im p le m e n ta tio n
Project
Func.
S pec.
D e f in itio n
E n d U s e rs
In t e r n a l
E v a lu a t io n
F u ll
Test
s u ite
F u ll
E v a lu a t io n
R e g r.
T e s ts
&
V e r ify
F in a l
E v a lu a t io n
( V e r if y )
F u n c tio n a l
F re e z e
F ie ld P e r s o n n e l
C o d e F re e z e
F in a l F r e e z e
P r o je c t
P hases
What is Waters Testing Strategy for Empower?
Waters Corporation testing process is documented in a number of policies, procedures, and work
instructions. The following is a summary.
A test plan is generated as part of the SDLC process. The software test strategy encompasses both
manual and automated testing which is detailed in the test plan. Testing covers both new
functionality as well as manual and automated regression testing. Automated regression testing
focuses on complex functionality in areas deemed critical (e.g. Instrument Control, Data
Acquisition and Processing, etc.). Manual regression testing focuses on Conversion Testing,
Recovery Testing, Performance Testing, Interface Testing, Security Testing, System Testing and
testing of System Messages, etc.
Manual testing is performed utilizing a combination of Unit, Integration and System level tests.
Unit tests focus on an individual aspect of a software feature with the intention of verifying the
functionality of each sub-component while integration and system tests focus on the performance
of the software in user scenarios. Each required element defined in the Functional Specification
shall have a minimum of one corresponding Unit test case.
Functional Freeze Acceptance Tests (FFAT) are high level unit tests (covering a broad scope of
the features) and are designed to ensure that the feature’s implementation is sufficient to allow for
it to pass into the Full Evaluation Phase. These tests are run during Internal Evaluation test phase
(first phase of testing defined in the Waters SDLC). These test cases must pass without serious
defects in order to reach the Functional Freeze milestone.
Page 1 of 5
January 2009
Milestones
F e a tu re F re e z e
Func.
F re e z e
A cc.
T e s ts
After Functional Freeze is reached, lower level Unit tests as well as Integration tests are run during
Full Evaluation (the second test phase described in the Waters SDLC). These tests focus on the
complete feature implementation and are structured to test the overall functionality of the
components and their interactions. In addition, user scenario tests are run during the Full
Evaluation test phase and are identified in the database as Code Freeze Acceptance Tests (CFAT).
These test cases must pass in order to reach the Code Freeze milestone.
After Code Freeze, the Final Evaluation test phase is begun, during which System level tests are
run. These tests cover a broad spectrum of the product’s functionality and are designed to interact
with the system the way our customers do. They are designed to act as a final confirmation that all
new and pre-existing functionality performs as expected. These tests are identified in the
database as Release Acceptance Tests.
When all of these test cases have been passed, the product is ready for release to customers.
Page 2 of 5
January 2009
Waters Software Development Life Cycle
(SDMS PRODUCTS)
What is Waters Testing Strategy for SDMS?
Waters Corporation SDMS testing process is documented in a number of policies, procedures, and work
instructions. The following is a summary.
A test plan is generated as part of the SDLC process. The software test strategy encompasses both manual
and automated testing which is detailed in the test plan. Testing covers both new functionality as well as
manual and automated regression testing. Automated regression testing focuses on complex functionality
in areas deemed critical (e.g. Print Capture, File Capture, Search, LDAP, etc.). Manual regression testing
focuses on Conversion Testing, Recovery Testing, Performance Testing, Interface Testing, Security
Testing, System Testing and testing of System Messages, etc.
Manual testing is performed utilizing a combination of Unit, Integration and System level tests. Unit tests
focus on an individual aspect of a software feature with the intention of verifying the functionality of each
sub-component while integration and system tests focus on the performance of the software in user
scenarios. Each required element defined in the Functional Specification shall have a minimum of one
corresponding test case.
The major difference is in the Formal testing. Code Freeze is at flag 4, the start of Release Candidate (RC)
Testing. This is well defined testing per the Test Plan, using documented and approved test cases, under
control of Quality Engineering (Evaluation). RC testing is combined Verification and Validation testing
which includes FFAT, CFAT and Release Acceptance Tests. All Test Cases per the Test Plan must be
completed before RC is finished.
At the conclusion of RC, there are formal Internal and External releases.
Page 3 of 5
January 2009
Waters Traditional Development Life Cycle
(MASSLYNX PRODUCTS)
What is Waters Testing Strategy for MassLynx?
Waters Corporation testing process is documented in a number of policies, procedures, and work
instructions. The following is a summary.
A test plan is generated as part of the SDLC. The software test strategy encompasses both manual and
automated testing which is detailed in the test plan. Testing covers both new functionality as well as
manual and automated regression testing. Automated regression testing focuses on complex functionality
in areas deemed critical (e.g. Data Acquisition and Processing, etc.). Manual regression testing focuses
on Conversion Testing, Recovery Testing, Performance Testing, Interface Testing, Security Testing,
System Testing and testing of System Messages, etc. Manual testing is performed utilizing a combination
of Unit, Integration and System level tests. Unit tests focus on an individual aspect of a software feature
with the intention of verifying the functionality of each sub-component while integration and system tests
focus on the performance of the software in user scenarios. Each required element defined in the
Functional Specification shall have a minimum of one corresponding Unit test case.
Early Evaluation will be used to help prevent major defects from progressing further through the
development lifecycle. This may include desk checking with a developer and/or exploratory sessions of
early code examples. The results of all exploratory sessions will be recorded in an appropriate format,
linking to the version of software tested. Not all functionality will undergo early evaluation.
Page 4 of 5
January 2009
Implementation Freeze Acceptance Tests (IFAT) are high level unit tests (covering a broad scope of the
features) and are designed to ensure that the feature's implementation is sufficient to allow for it to
pass into the Verification Phase. These tests are run during Implementation phase and these test cases must
pass without serious defects in order to reach the Functional Freeze milestone.
After Implementation Freeze is reached, lower level Unit tests as well as Integration tests are run during
Verification Phase. These tests focus on the complete feature implementation and are structured to
test the overall functionality of the components and their interactions. In addition, user scenario tests are
run during the Verification and are identified as Code Freeze Acceptance Tests (CFAT). These test cases
must pass in order to reach the Code Freeze milestone.
After Code Freeze, the Validation phase is begun, during which System level tests are run. These tests
cover a broad spectrum of the product's functionality and are designed to interact with the system
the way our customers do. They are designed to act as a final confirmation that all new and pre-existing
functionality performs as expected. These tests are identified as Release Acceptance Tests.
When all of these test cases have been passed, the product is ready for release to customers.
Page 5 of 5
January 2009
Download