Wednesday, 11 March 2009

Applying SOA to testing

Some thoughts on criteria for SOA enabled Testing.

Key principles:

  •  Definition of the types of service tested e.g.  technical, IT service, Business process service tests
  • Definition of the SOA Inventory concept and the Service Life cycle idea.
  • Integration of  functional and non-functional combined under the Service contract test strategies
  • Definition of the granularity og testing in SOA is a holistic testing approach
  • Definition of testing assurance and  continuous testing and the management of the Service life cycle of testing. 
  • separation and specific treatment of security testing notably around Security policy and approach particularly with external testing services.
  • The business operating models for testing supported: there are at least 4 different testing business models to give the client options all underpinned by a common process:
  • Testing onsite
  • Testing off-site
  • Testing 3rd parties via direct and proxy
  • Testing onsite via remote secure access

  • Testing for SOA governance.
  • Specific and quantified benefits of SOA approach to testing e.g. faster speed of test          service , 10 to 50% reduction in time to test etc, positioned in relation to pricing , billing           methods and benchmarks to competitors.


SOA Testing functional capability list

  •   Elastic provisioning of the Dev and Test environment on a Cloud Utility service (Infrastructure as a service
  • Ability to offer a collaborative test cycle with the users / customer them selves ( a core element of SOA and Service orientation is to design for SLA)
  • Security provision for the Testing to be either off premise or on premise inside client firewall where security permits
  • Test life cycle with a service contract as a unit of test specification  passing through a SOA style service lifecycle - cradle to grave.
  • Definition of the Service Contract in the test strategy and test specification process. In particular a Use case style Test template script style
  • Test assurance cycle - how the service orientation is to govern the state and performance of the system but some kind of assurance service where requested  (not guaranteed service SLA  but some kind of gold, silver bronze service management rating with ITIL links.) This may include continuous testing cycles for assurance.
  • Test estimating process on Function point analysis based on Service contract unit of estimate
  • Abstraction of service testing from business testing and IT testing. A founding principle of SOA is to "test the test" of the logical service as conformant to a SOA governance model ideally.
  • Configuration and version management testing of service versioning.  This may include generational testing and isomorphic architecture testing principles to test families of services or type of delivery.
  • Legacy testing (non SOA managed) versus SOA testing - the differences and how it is handled.
  • Storage of the nomenclature of test environments and results.  How is the Test spec/script and results stored for reuse?
  • Contractual penalties testing and how this is differentiated from ordinary project delivery requirements testing  which may or may not be penalties driven - this is not SOA specifically but to show how the SLA  non-functional features are built into the SOA testing - SOA is based on integrated functional services with non-functional metric characteristics e.g.  "this sales order process is a service that operates to these performance and volume characteristics."   In traditional testing the volume and system testing is separate from the functional testing which is erroneous.
  • Billing mechanisms for testing in SOA is based on per use, per hour or per Service Function point test.
  • 3rd party testing - how do we test multiple vendors and parties SOA solutions and conformance.
  • Simulation and other types of SOA accelerators. 

No comments:

Post a Comment

Note: only a member of this blog may post a comment.