Professional Documents
Culture Documents
Virtualization and
Software Development
Opportunities to improve outcomes
Jack Alexander
CA Technologies
2015
Design
Development
Deployment
Design
Development
Deployment
Design
Development
Deployment
Testing
Testing is done throughout an applications
lifecycle:
Test definition (how we will test)
By developers as they test the
modules they are building
Unit test
Integration test
System test
UAT
Performance test
Regression test
Design
Development
Deployment
Testing challenges
Testing is not a sexy issue. Its
boring, and it doesnt get the
respect it deserves.
Design
Development
Deployment
Testing challenges
Enough environments to satisfy the
demands of the project
Enough test data scenarios to do robust
testing
Coordination of all required interfaces
and data can make end-to-end testing
virtually impossible
Cost of environments and associated
licenses means that theres usually
never enough
Waiting for databases to be reset,
waiting for external systems to be
available, waiting for a component
to be completed before testing can
begin
Challenges
Testing can be difficult & very costly:
Systems under test need to interface to other systems,
so our ability to test can be dependent on many things
Developers will create artificial versions of the interfaces to test against during
development these are simple versions that dont really mimic reality
10
Challenges
Testing can be difficult & very costly:
Often many separate testing environments are needed
11
Challenges
Testing can be difficult & very costly:
Making sure that tests are of high quality (test coverage)
Tests need to reflect the real world: test for every possible scenario, with test
data that is robust and realistic.
12
Test data gets burned once its used, it needs to be reset. Multiple teams
testing at the same time can stomp on other peoples test data scenarios.
Test data can be very sensitive to time. Sometimes a test case for an infant must
always be an infant. A five-year-old test scenario yields a five-year-old child. A
teenagers test scenario turns into an adult test scenario. Dates are critical!
12
Project readiness
12
Challenges
Testing can be difficult & very costly:
Insuring realistic test scenarios are used, and that we do
not test with production data
Ideally, test scenarios will look like production, with high-quality realistic
data, but with de-sensitized versions, data that has been thoroughly cleansed.
13
13
Project readiness
Challenges
Testing can be difficult & very costly:
Often, developers must wait for the ability to test
14
Project readiness
14
Crashes
15
Incorrect results
15
Project readiness
Unhappy users
15
About DHCS
The largest Health and Human Services Department in the
US outside of the Federal government
Overseeing the development of the largest MMIS program in
and objectives.
17
DHCS Vision
One of the key elements of DHCS strategic plan is:
18
Challenges
Improve/increase capacity for work
DHCS maintains a key data hub (MEDS) that most,
if not all health-related programs in California rely
upon
DHCS is responsible to provide access to test
environments to core DHCS systems to many
different partners:
CA-MMIS
CalWIN, C-IV, LEADER
Health Exchange (Covered California & CalHEERS)
Internal applications / groups.
19
20
CAMMIS Challenges
Tight schedule avoid penalties and change
orders
Critical system system quality is paramount, as
these are core systems to the State and the
agency.
High profile. No room for error.
21
DHCS
Goals for Service Virtualization
Reduce Infrastructure Cost
Less mainframe LPARs
Less physical servers
DHCS
Goals for Service Virtualization
Remove Development Constraints
Shorten test data creation time from weeks to days/hours
Remove legacy constraints - Allow CAMMIS development
to begin while the DHCS modernize and SOA-enable the
backend
23
DHCS
Goals for Service Virtualization
Improve Quality of Existing and New Systems
Allow testing earlier in the system development
process
Allow more frequent regression testing
Allow mini-UAT to minimize last minute surprises
DHCS
Goals for Service Virtualization
Revolutionize how DHCS builds new applications and
maintains existing applications
Become a model for the State on how to do IT legacy
system modernization & testing
Enable broader collaboration / support to build key
citizen services. Create a virtual catalog of shared
services to test against throughout DHCS: (e.g.
MEDS-in-a-box, Covered California-in-a-box,
etc)
25
Director