<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://citconf.com/wiki/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Paulflewelling</id>
	<title>CitconWiki - User contributions [en]</title>
	<link rel="self" type="application/atom+xml" href="https://citconf.com/wiki/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Paulflewelling"/>
	<link rel="alternate" type="text/html" href="https://citconf.com/wiki/index.php?title=Special:Contributions/Paulflewelling"/>
	<updated>2026-04-24T21:38:27Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.35.11</generator>
	<entry>
		<id>https://citconf.com/wiki/index.php?title=Virtualisation_Services&amp;diff=15655</id>
		<title>Virtualisation Services</title>
		<link rel="alternate" type="text/html" href="https://citconf.com/wiki/index.php?title=Virtualisation_Services&amp;diff=15655"/>
		<updated>2014-03-03T22:50:11Z</updated>

		<summary type="html">&lt;p&gt;Paulflewelling: /* Testing Coverage */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
== Service Virtualisation ==&lt;br /&gt;
&lt;br /&gt;
Current tools on the market: &lt;br /&gt;
&lt;br /&gt;
IBM Green Hat, CA LISA&lt;br /&gt;
&lt;br /&gt;
Definition of Service Virtualisation: System need to develop or test against many other (external/internal) interfaces. &lt;br /&gt;
&lt;br /&gt;
Allow for integration testing by providing Artifical Intelligent Stubs which need to be trained. &lt;br /&gt;
&lt;br /&gt;
What we do is we use simulations/virtualisations to create stubs for those services.&lt;br /&gt;
&lt;br /&gt;
Not running on actual system, very fast to setup.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;&amp;#039;&amp;#039;CASE STUDY&amp;#039;&amp;#039;&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
Royal Bank of Scotland have successfully implemented SV in CI&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;BUSINESS NEEDS&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
* Consolidate 4 messaging hubs, deliver 35 major business change projects within 3 years.&lt;br /&gt;
* Enables payment/confirmation messages, clearing services, supporting regulatory services.&lt;br /&gt;
* Needs to cater fro a new currency if Greece kicked out of the Euro.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;TECHNICAL ENV&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
* Waterfall&lt;br /&gt;
* Contractors/Vendors doing different things&lt;br /&gt;
* Manual testing (3 week regression)&lt;br /&gt;
* Complex env in and out (a lot of external 3rd parties)&lt;br /&gt;
* Regression tests expensive against actual 3rd party services&lt;br /&gt;
* Manual deployment&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;PROBLEMS&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
* Not meeting business needs&lt;br /&gt;
* External systems not available (functionality not developed)&lt;br /&gt;
* Expensive testing&lt;br /&gt;
* Expensive deployment&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;STRATEGIES&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
* Delay integration until services available - too long&lt;br /&gt;
* Write own stub - maintenance involved in keeping up-to-date slow and expensive&lt;br /&gt;
* Evaluated SV tools&lt;br /&gt;
&lt;br /&gt;
Selected IBM Green Hat because of complex message support.&lt;br /&gt;
&lt;br /&gt;
Greenhat tool essentially a way of setting up stubs for complex messages.&lt;br /&gt;
&lt;br /&gt;
SOAP/XML/JMS/SWIFT/MQ/etc&lt;br /&gt;
&lt;br /&gt;
Greenhat is a simulator/intelligent service&lt;br /&gt;
&lt;br /&gt;
Allows them to use a cyclical build/test env pipeline to production. Using Service Virtualisation (SV) for the first two environments, DEV and SIT. Actual services are used for UAT and PROD.&lt;br /&gt;
&lt;br /&gt;
How do you confirm that you virtualization is covering all tests it needs. And is this the same as the actual service?&lt;br /&gt;
&lt;br /&gt;
The suggestion is that this is done with collaboration of the 3rd party. Have to complete explicit audit tests and baselining, i.e. tests against the real service and the actual service and compare the results.&lt;br /&gt;
&lt;br /&gt;
It&amp;#039;s all just speculation and collaboration if the actual service doesn&amp;#039;t exist.&lt;br /&gt;
&lt;br /&gt;
Level of risk against each service in your pipeline allows you to determine how much effort you put into virtualization.&lt;br /&gt;
&lt;br /&gt;
The suggestion is that if you have faith in the virtual service then you can skip UAT.&lt;br /&gt;
&lt;br /&gt;
For RBS this has significantly sped up their testing because don&amp;#039;t have to necessarily wait for UAT env.&lt;br /&gt;
&lt;br /&gt;
Automated testing reduced regression testing from 3 weeks to 4 hours.&lt;br /&gt;
&lt;br /&gt;
[Some discussion over the differences between automatic deploy and potential automatic deploy.]&lt;br /&gt;
&lt;br /&gt;
[Then some discussion over 4 hour regression test not being viable in dev and how to handle it, i.e. use targeted testing for the part of the app that you&amp;#039;re working on]&lt;br /&gt;
&lt;br /&gt;
[Now some discussion about how to version the virtualisations]&lt;br /&gt;
&lt;br /&gt;
The suggestion is that you create different virtualisations for different versions unless the version is inherent in the message that you are sending, i.e. unless the version is part of the message.&lt;br /&gt;
&lt;br /&gt;
Nowe some discussion over version control and rolling back versions, this is a problem for the team to manage and is down to their workflow.&lt;br /&gt;
&lt;br /&gt;
Royal Bank of Scotland (RBS) are using automatic configuration as well as automatic deployment.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;RESULTS&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
* Deliver change more quickly and frequently&lt;br /&gt;
* Reduce incidents and defect costs reduce over time&lt;br /&gt;
* UAT/Pre-prod minimised&lt;br /&gt;
* Increase in test efficiency (coverage / time taken)&lt;br /&gt;
&lt;br /&gt;
==== Testing Coverage ====&lt;br /&gt;
&lt;br /&gt;
Can be determined through impact analysis on changes by comparison of schema&amp;#039;s on services and requirements/functional spec traceability with tests. &lt;br /&gt;
&lt;br /&gt;
Also overtime confidence will be gained on defects not being found in production.&lt;/div&gt;</summary>
		<author><name>Paulflewelling</name></author>
	</entry>
	<entry>
		<id>https://citconf.com/wiki/index.php?title=Virtualisation_Services&amp;diff=15654</id>
		<title>Virtualisation Services</title>
		<link rel="alternate" type="text/html" href="https://citconf.com/wiki/index.php?title=Virtualisation_Services&amp;diff=15654"/>
		<updated>2014-03-03T22:48:09Z</updated>

		<summary type="html">&lt;p&gt;Paulflewelling: /* Service Virtualisation */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
== Service Virtualisation ==&lt;br /&gt;
&lt;br /&gt;
Current tools on the market: &lt;br /&gt;
&lt;br /&gt;
IBM Green Hat, CA LISA&lt;br /&gt;
&lt;br /&gt;
Definition of Service Virtualisation: System need to develop or test against many other (external/internal) interfaces. &lt;br /&gt;
&lt;br /&gt;
Allow for integration testing by providing Artifical Intelligent Stubs which need to be trained. &lt;br /&gt;
&lt;br /&gt;
What we do is we use simulations/virtualisations to create stubs for those services.&lt;br /&gt;
&lt;br /&gt;
Not running on actual system, very fast to setup.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;&amp;#039;&amp;#039;CASE STUDY&amp;#039;&amp;#039;&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
Royal Bank of Scotland have successfully implemented SV in CI&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;BUSINESS NEEDS&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
* Consolidate 4 messaging hubs, deliver 35 major business change projects within 3 years.&lt;br /&gt;
* Enables payment/confirmation messages, clearing services, supporting regulatory services.&lt;br /&gt;
* Needs to cater fro a new currency if Greece kicked out of the Euro.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;TECHNICAL ENV&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
* Waterfall&lt;br /&gt;
* Contractors/Vendors doing different things&lt;br /&gt;
* Manual testing (3 week regression)&lt;br /&gt;
* Complex env in and out (a lot of external 3rd parties)&lt;br /&gt;
* Regression tests expensive against actual 3rd party services&lt;br /&gt;
* Manual deployment&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;PROBLEMS&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
* Not meeting business needs&lt;br /&gt;
* External systems not available (functionality not developed)&lt;br /&gt;
* Expensive testing&lt;br /&gt;
* Expensive deployment&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;STRATEGIES&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
* Delay integration until services available - too long&lt;br /&gt;
* Write own stub - maintenance involved in keeping up-to-date slow and expensive&lt;br /&gt;
* Evaluated SV tools&lt;br /&gt;
&lt;br /&gt;
Selected IBM Green Hat because of complex message support.&lt;br /&gt;
&lt;br /&gt;
Greenhat tool essentially a way of setting up stubs for complex messages.&lt;br /&gt;
&lt;br /&gt;
SOAP/XML/JMS/SWIFT/MQ/etc&lt;br /&gt;
&lt;br /&gt;
Greenhat is a simulator/intelligent service&lt;br /&gt;
&lt;br /&gt;
Allows them to use a cyclical build/test env pipeline to production. Using Service Virtualisation (SV) for the first two environments, DEV and SIT. Actual services are used for UAT and PROD.&lt;br /&gt;
&lt;br /&gt;
How do you confirm that you virtualization is covering all tests it needs. And is this the same as the actual service?&lt;br /&gt;
&lt;br /&gt;
The suggestion is that this is done with collaboration of the 3rd party. Have to complete explicit audit tests and baselining, i.e. tests against the real service and the actual service and compare the results.&lt;br /&gt;
&lt;br /&gt;
It&amp;#039;s all just speculation and collaboration if the actual service doesn&amp;#039;t exist.&lt;br /&gt;
&lt;br /&gt;
Level of risk against each service in your pipeline allows you to determine how much effort you put into virtualization.&lt;br /&gt;
&lt;br /&gt;
The suggestion is that if you have faith in the virtual service then you can skip UAT.&lt;br /&gt;
&lt;br /&gt;
For RBS this has significantly sped up their testing because don&amp;#039;t have to necessarily wait for UAT env.&lt;br /&gt;
&lt;br /&gt;
Automated testing reduced regression testing from 3 weeks to 4 hours.&lt;br /&gt;
&lt;br /&gt;
[Some discussion over the differences between automatic deploy and potential automatic deploy.]&lt;br /&gt;
&lt;br /&gt;
[Then some discussion over 4 hour regression test not being viable in dev and how to handle it, i.e. use targeted testing for the part of the app that you&amp;#039;re working on]&lt;br /&gt;
&lt;br /&gt;
[Now some discussion about how to version the virtualisations]&lt;br /&gt;
&lt;br /&gt;
The suggestion is that you create different virtualisations for different versions unless the version is inherent in the message that you are sending, i.e. unless the version is part of the message.&lt;br /&gt;
&lt;br /&gt;
Nowe some discussion over version control and rolling back versions, this is a problem for the team to manage and is down to their workflow.&lt;br /&gt;
&lt;br /&gt;
Royal Bank of Scotland (RBS) are using automatic configuration as well as automatic deployment.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;RESULTS&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
* Deliver change more quickly and frequently&lt;br /&gt;
* Reduce incidents and defect costs reduce over time&lt;br /&gt;
* UAT/Pre-prod minimised&lt;br /&gt;
* Increase in test efficiency (coverage / time taken)&lt;br /&gt;
&lt;br /&gt;
== Testing Coverage ==&lt;br /&gt;
&lt;br /&gt;
Can be determined through impact analysis on changes by comparison of schema&amp;#039;s on services and requirements/functional spec traceability with tests. &lt;br /&gt;
&lt;br /&gt;
Also overtime confidence will be gained on defects not being found in production.&lt;/div&gt;</summary>
		<author><name>Paulflewelling</name></author>
	</entry>
	<entry>
		<id>https://citconf.com/wiki/index.php?title=Virtualisation_Services&amp;diff=15653</id>
		<title>Virtualisation Services</title>
		<link rel="alternate" type="text/html" href="https://citconf.com/wiki/index.php?title=Virtualisation_Services&amp;diff=15653"/>
		<updated>2014-03-03T04:50:47Z</updated>

		<summary type="html">&lt;p&gt;Paulflewelling: /* Service Virtualisation */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
== Service Virtualisation ==&lt;br /&gt;
&lt;br /&gt;
Current tools on the market: &lt;br /&gt;
&lt;br /&gt;
IBM Green Hat, CA LISA&lt;br /&gt;
&lt;br /&gt;
Definition of Service Virtualisation: System need to develop or test against many other (external/internal) interfaces. &lt;br /&gt;
&lt;br /&gt;
Allow for integration testing by providing Artifical Intelligent Stubs which need to be trained. &lt;br /&gt;
&lt;br /&gt;
What we do is we use simulations/virtualisations to create stubs for those services.&lt;br /&gt;
&lt;br /&gt;
Not running on actual system, very fast to setup.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;&amp;#039;&amp;#039;CASE STUDY&amp;#039;&amp;#039;&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
Royal Bank of Scotland have successfully implemented SV in CI&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;BUSINESS NEEDS&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
* Consolidate 4 messaging hubs, deliver 35 major business change projects within 3 years.&lt;br /&gt;
* Enables payment/confirmation messages, clearing services, supporting regulatory services.&lt;br /&gt;
* Needs to cater fro a new currency if Greece kicked out of the Euro.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;TECHNICAL ENV&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
* Waterfall&lt;br /&gt;
* Contractors/Vendors doing different things&lt;br /&gt;
* Manual testing (3 week regression)&lt;br /&gt;
* Complex env in and out (a lot of external 3rd parties)&lt;br /&gt;
* Regression tests expensive against actual 3rd party services&lt;br /&gt;
* Manual deployment&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;PROBLEMS&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
* Not meeting business needs&lt;br /&gt;
* External systems not available (functionality not developed)&lt;br /&gt;
* Expensive testing&lt;br /&gt;
* Expensive deployment&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;STRATEGIES&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
* Delay integration until services available - too long&lt;br /&gt;
* Write own stub - maintenance involved in keeping up-to-date slow and expensive&lt;br /&gt;
* Evaluated SV tools&lt;br /&gt;
&lt;br /&gt;
Selected IBM Green Hat because of complex message support.&lt;br /&gt;
&lt;br /&gt;
Greenhat tool essentially a way of setting up stubs for complex messages.&lt;br /&gt;
&lt;br /&gt;
SOAP/XML/JMS/SWIFT/MQ/etc&lt;br /&gt;
&lt;br /&gt;
Greenhat is a simulator/intelligent service&lt;br /&gt;
&lt;br /&gt;
Allows them to use a cyclical build/test env pipeline to production. Using Service Virtualisation (SV) for the first two environments, DEV and SIT. Actual services are used for UAT and PROD.&lt;br /&gt;
&lt;br /&gt;
How do you confirm that you virtualization is covering all tests it needs. And is this the same as the actual service?&lt;br /&gt;
&lt;br /&gt;
The suggestion is that this is done with collaboration of the 3rd party. Have to complete explicit audit tests and baselining, i.e. tests against the real service and the actual service and compare the results.&lt;br /&gt;
&lt;br /&gt;
It&amp;#039;s all just speculation and collaboration if the actual service doesn&amp;#039;t exist.&lt;br /&gt;
&lt;br /&gt;
Level of risk against each service in your pipeline allows you to determine how much effort you put into virtualization.&lt;br /&gt;
&lt;br /&gt;
The suggestion is that if you have faith in the virtual service then you can skip UAT.&lt;br /&gt;
&lt;br /&gt;
For RBS this has significantly sped up their testing because don&amp;#039;t have to necessarily wait for UAT env.&lt;br /&gt;
&lt;br /&gt;
Automated testing reduced regression testing from 3 weeks to 4 hours.&lt;br /&gt;
&lt;br /&gt;
[Some discussion over the differences between automatic deploy and potential automatic deploy.]&lt;br /&gt;
&lt;br /&gt;
[Then some discussion over 4 hour regression test not being viable in dev and how to handle it, i.e. use targeted testing for the part of the app that you&amp;#039;re working on]&lt;br /&gt;
&lt;br /&gt;
[Now some discussion about how to version the virtualisations]&lt;br /&gt;
&lt;br /&gt;
The suggestion is that you create different virtualisations for different versions unless the version is inherent in the message that you are sending, i.e. unless the version is part of the message.&lt;br /&gt;
&lt;br /&gt;
Nowe some discussion over version control and rolling back versions, this is a problem for the team to manage and is down to their workflow.&lt;br /&gt;
&lt;br /&gt;
Royal Bank of Scotland (RBS) are using automatic configuration as well as automatic deployment.&lt;br /&gt;
&lt;br /&gt;
RESULTS&lt;br /&gt;
* Deliver change more quickly and frequently&lt;br /&gt;
* Reduce incidents and defect costs reduce over time&lt;br /&gt;
* UAT/Pre-prod minimised&lt;br /&gt;
* Increase in test efficiency (coverage / time taken)&lt;br /&gt;
&lt;br /&gt;
== Testing Coverage ==&lt;br /&gt;
&lt;br /&gt;
Can be determined through impact analysis on changes by comparison of schema&amp;#039;s on services and requirements/functional spec traceability with tests. &lt;br /&gt;
&lt;br /&gt;
Also overtime confidence will be gained on defects not being found in production.&lt;/div&gt;</summary>
		<author><name>Paulflewelling</name></author>
	</entry>
	<entry>
		<id>https://citconf.com/wiki/index.php?title=CITCONANZ2014Sessions&amp;diff=15652</id>
		<title>CITCONANZ2014Sessions</title>
		<link rel="alternate" type="text/html" href="https://citconf.com/wiki/index.php?title=CITCONANZ2014Sessions&amp;diff=15652"/>
		<updated>2014-03-03T04:10:52Z</updated>

		<summary type="html">&lt;p&gt;Paulflewelling: /* 3:15 Topics */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;CITCON ANZ 2014 Auckland Sessions&lt;br /&gt;
&lt;br /&gt;
Back to the [[Main Page]]&lt;br /&gt;
&lt;br /&gt;
== 10:00 Topics ==&lt;br /&gt;
&lt;br /&gt;
# [[Virtualisation Services]]&lt;br /&gt;
# [[CI &amp;amp; TDD for legacy Systems]]&lt;br /&gt;
# [[CI in thirty minutes]]&lt;br /&gt;
# [[Reusing validation tests as monitoring]]&lt;br /&gt;
# [[Mobile Testing]]&lt;br /&gt;
&lt;br /&gt;
== 11:15 Topics ==&lt;br /&gt;
&lt;br /&gt;
# [[Vagrant/Packer for Continuous Delivery of Application Infrastructure]]&lt;br /&gt;
# [[?]]&lt;br /&gt;
# [[?]]&lt;br /&gt;
# [[?]]&lt;br /&gt;
# [[Tips and tricks for CI and CD]]&lt;br /&gt;
&lt;br /&gt;
== Lunch Topics ==&lt;br /&gt;
&lt;br /&gt;
# [[?]]&lt;br /&gt;
&lt;br /&gt;
== 2:00 Topics ==&lt;br /&gt;
&lt;br /&gt;
# [[How do you change the team culture from waterfall to shepherding change to production + Communication model]]&lt;br /&gt;
# [[?]]&lt;br /&gt;
# [[Managing Software Technical Debt]]&lt;br /&gt;
# [[Test Execution Time and Running Web-UI Tests in Parallel]]&lt;br /&gt;
# [[?]]&lt;br /&gt;
&lt;br /&gt;
== 3:15 Topics ==&lt;br /&gt;
&lt;br /&gt;
# [[Continuous Deployment - Why and How]]&lt;br /&gt;
# [[?]]&lt;br /&gt;
# [[?]]&lt;br /&gt;
# [[?]]&lt;br /&gt;
# [[?]]&lt;br /&gt;
&lt;br /&gt;
== 4:30 Topics ==&lt;br /&gt;
&lt;br /&gt;
# [[?]]&lt;br /&gt;
# [[?]]&lt;br /&gt;
# [[Deployment Contracts]]&lt;br /&gt;
# [[Beyond Given-When-Then]]&lt;br /&gt;
# [[?]]&lt;br /&gt;
&lt;br /&gt;
== Table View ==&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Room name&lt;br /&gt;
! 10:00&lt;br /&gt;
! 11:15&lt;br /&gt;
! 2:00&lt;br /&gt;
! 3:15&lt;br /&gt;
! 4:30&lt;br /&gt;
|-&lt;br /&gt;
| Cube&lt;br /&gt;
| [[?]]&lt;br /&gt;
| [[?]]&lt;br /&gt;
| [[?]]&lt;br /&gt;
| [[?]]&lt;br /&gt;
| [[?]]&lt;br /&gt;
|-&lt;br /&gt;
| Cube Bar&lt;br /&gt;
| [[?]]&lt;br /&gt;
| [[?]]&lt;br /&gt;
| [[?]]&lt;br /&gt;
| [[?]]&lt;br /&gt;
| [[?]]&lt;br /&gt;
|-&lt;br /&gt;
| Cube Hall&lt;br /&gt;
| [[CI in thirty minutes]]&lt;br /&gt;
| [[?]]&lt;br /&gt;
| [[?]]&lt;br /&gt;
| [[?]]&lt;br /&gt;
| [[?]]&lt;br /&gt;
|-&lt;br /&gt;
| Oku Wairangi&lt;br /&gt;
| [[?]]&lt;br /&gt;
| [[?]]&lt;br /&gt;
| [[Test Execution Time and Running Web-UI Tests in Parallel]]&lt;br /&gt;
| [[?]]&lt;br /&gt;
| [[Beyond Given-When-Then]]&lt;br /&gt;
|-&lt;br /&gt;
| Yellow Circle&lt;br /&gt;
| [[?]]&lt;br /&gt;
| [[Tips and tricks for CI and CD]]&lt;br /&gt;
| [[?]]&lt;br /&gt;
| [[?]]&lt;br /&gt;
| [[?]]&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Paulflewelling</name></author>
	</entry>
	<entry>
		<id>https://citconf.com/wiki/index.php?title=Continuous_Deployment_-_Why_and_How&amp;diff=15651</id>
		<title>Continuous Deployment - Why and How</title>
		<link rel="alternate" type="text/html" href="https://citconf.com/wiki/index.php?title=Continuous_Deployment_-_Why_and_How&amp;diff=15651"/>
		<updated>2014-03-03T04:10:00Z</updated>

		<summary type="html">&lt;p&gt;Paulflewelling: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Are you doing Continuous Deployment?&lt;br /&gt;
How are you doing it?&lt;br /&gt;
&lt;br /&gt;
Define continuous: automated deployment process through all your envs through to production deployment.&lt;br /&gt;
&lt;br /&gt;
3/4 doing continuous deployment&lt;br /&gt;
&lt;br /&gt;
What&amp;#039;s the motivation?&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;&amp;#039;&amp;#039;1st Example (from group)&amp;#039;&amp;#039;&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
1 of our projects configured to deploy continuously. Allows us to iterate faster, speed up delivery, be more Agile.&lt;br /&gt;
&lt;br /&gt;
Potential benefits for us to deliver overall better quality of product&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;&amp;#039;&amp;#039;2nd Example (from group)&amp;#039;&amp;#039;&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
Only to development environment.&lt;br /&gt;
&lt;br /&gt;
As soon as it&amp;#039;s check into master it&amp;#039;s deployed.&lt;br /&gt;
&lt;br /&gt;
(This is Continuous Integration)&lt;br /&gt;
&lt;br /&gt;
Any reason why you don&amp;#039;t deploy to production? The tester has to give the ok before deploy to production.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;&amp;#039;&amp;#039;3rd Example&amp;#039;&amp;#039;&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
Increase the value of what we&amp;#039;re delivering.&lt;br /&gt;
&lt;br /&gt;
Envs were a bit of a mess before we started continuous deployment.&lt;br /&gt;
&lt;br /&gt;
Made our environment management much better.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;What&amp;#039;s preventing other people?&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
* Database migrations&lt;br /&gt;
* Client requiring notifications of outages&lt;br /&gt;
* Don&amp;#039;t have tests&lt;br /&gt;
* Managing the media and making announcements&lt;br /&gt;
&lt;br /&gt;
Feature flags can be used to managed the latter, for example Java Togglz http://www.togglz.org&lt;br /&gt;
&lt;br /&gt;
Other people have managed using feature flags. A/B testing very similar to feature flags.&lt;br /&gt;
&lt;br /&gt;
Use UI toggles to manage if features are on or off.&lt;br /&gt;
&lt;br /&gt;
If we don&amp;#039;t manage using feature flags, then we have features outside of the main branch that have to be maintained.&lt;br /&gt;
&lt;br /&gt;
Virtualisation services are one way of managing the complexity you&amp;#039;ve got with turning on/off features in the test envs when you&amp;#039;ve to manage connections to things like SWIFT (Society for Worldwide Interbank Financial Telecommunication) http://www.swift.com/index.page?lang=en&lt;br /&gt;
&lt;br /&gt;
If you need to change code in production to switch on a feature, does that mean you have to raise a change request? (takes 5 days)&lt;br /&gt;
&lt;br /&gt;
Depends if large organisation and need to have change request. Some orgs just need to know what happened, i.e. they have a record.&lt;br /&gt;
&lt;br /&gt;
Don&amp;#039;t need a change request for a feature toggle.&lt;br /&gt;
&lt;br /&gt;
Feature toggles are used in Production so that different groups can test different features.&lt;br /&gt;
&lt;br /&gt;
Another comment: Testers are the people that hate feature toggles the most. Which combination of feature toggles was it that cause the particular bug?&lt;br /&gt;
&lt;br /&gt;
Also the little things that catch you with features toggles, i.e. I told you months ago to turn that toggle on.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Challenges with Continuous Deployment&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
* A lot of investment at the beginning&lt;br /&gt;
* Haven&amp;#039;t even started down the road of functional testing&lt;br /&gt;
* It&amp;#039;s only going to be good as the testing that we do&lt;br /&gt;
* How to manage data migrations in production, have to invest some effort into how we do that, i.e. multiple steps.&lt;br /&gt;
* Who manages the continuous delivery? Developers? Testers? DevOps?&lt;br /&gt;
&lt;br /&gt;
We picked some of the biggest monolithic systems, if I had a choice I would have selected one of our web apps. Instead we chose one of our core banking systems with mainframe, OracleDB, etc, etc. Essentially we selected the system with the greatest strategic importance and the one where we would get our arses kicked by our competitors.&lt;br /&gt;
&lt;br /&gt;
Of the 4 things that you&amp;#039;ve done are you trying to make it a similar process for the next project that you change?&lt;br /&gt;
&lt;br /&gt;
Some of the code we&amp;#039;re dealing with is very old and so are the people that manage it. People change is the biggest challenge.&lt;br /&gt;
&lt;br /&gt;
Basically we&amp;#039;re making a conveyor belt so that each project gets shipped in the same way. Unfortunately for some people it is still down to the people who are on the project.&lt;br /&gt;
&lt;br /&gt;
Manage multiple different projects, java, python, PHP in the same way.&lt;br /&gt;
&lt;br /&gt;
How do you get the infrastructure guys to care about this? Well I&amp;#039;m the head of the infrastructure team, so I care about it. The see was planted long ago, moved to Puppet for CM 3 years ago. It&amp;#039;s been a long steady process.&lt;br /&gt;
&lt;br /&gt;
Another team using Chef now deploy to Amazon. Takes an hour to configure.&lt;br /&gt;
&lt;br /&gt;
Some team used a bottom up approach, do it in their spare time, etc. IBM used a top down approach.&lt;br /&gt;
&lt;br /&gt;
Others have a R&amp;amp;D time allocated each week.&lt;br /&gt;
&lt;br /&gt;
Management buy in is important to success, otherwise things will get in the way.&lt;/div&gt;</summary>
		<author><name>Paulflewelling</name></author>
	</entry>
	<entry>
		<id>https://citconf.com/wiki/index.php?title=Continuous_Deployment_-_Why_and_How&amp;diff=15650</id>
		<title>Continuous Deployment - Why and How</title>
		<link rel="alternate" type="text/html" href="https://citconf.com/wiki/index.php?title=Continuous_Deployment_-_Why_and_How&amp;diff=15650"/>
		<updated>2014-03-03T04:07:56Z</updated>

		<summary type="html">&lt;p&gt;Paulflewelling: Created page with &amp;quot;Are you doing Continuous Deployment? How are you doing it?  Define continuous: automated deployment process through all your envs through to production deployment.  3/4 doing ...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Are you doing Continuous Deployment?&lt;br /&gt;
How are you doing it?&lt;br /&gt;
&lt;br /&gt;
Define continuous: automated deployment process through all your envs through to production deployment.&lt;br /&gt;
&lt;br /&gt;
3/4 doing continuous deployment&lt;br /&gt;
&lt;br /&gt;
What&amp;#039;s the motivation?&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;&amp;#039;&amp;#039;1st Example (from group)&amp;#039;&amp;#039;&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
1 of our projects configured to deploy continuously. Allows us to iterate faster, speed up delivery, be more Agile.&lt;br /&gt;
&lt;br /&gt;
Potential benefits for us to deliver overall better quality of product&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;&amp;#039;&amp;#039;2nd Example (from group)&amp;#039;&amp;#039;&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
Only to development environment.&lt;br /&gt;
&lt;br /&gt;
As soon as it&amp;#039;s check into master it&amp;#039;s deployed.&lt;br /&gt;
&lt;br /&gt;
(This is Continuous Integration)&lt;br /&gt;
&lt;br /&gt;
Any reason why you don&amp;#039;t deploy to production? The tester has to give the ok before deploy to production.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;&amp;#039;&amp;#039;3rd Example&amp;#039;&amp;#039;&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
Increase the value of what we&amp;#039;re delivering.&lt;br /&gt;
&lt;br /&gt;
Envs were a bit of a mess before we started continuous deployment.&lt;br /&gt;
&lt;br /&gt;
Made our environment management much better.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
What&amp;#039;s preventing other people?&lt;br /&gt;
* Database migrations&lt;br /&gt;
* Client requiring notifications of outages&lt;br /&gt;
* Don&amp;#039;t have tests&lt;br /&gt;
* Managing the media and making announcements&lt;br /&gt;
&lt;br /&gt;
Feature flags can be used to managed the latter, for example Java Togglz http://www.togglz.org&lt;br /&gt;
&lt;br /&gt;
Other people have managed using feature flags. A/B testing very similar to feature flags.&lt;br /&gt;
&lt;br /&gt;
Use UI toggles to manage if features are on or off.&lt;br /&gt;
&lt;br /&gt;
If we don&amp;#039;t manage using feature flags, then we have features outside of the main branch that have to be maintained.&lt;br /&gt;
&lt;br /&gt;
Virtualisation services are one way of managing the complexity you&amp;#039;ve got with turning on/off features in the test envs when you&amp;#039;ve to manage connections to things like SWIFT (Society for Worldwide Interbank Financial Telecommunication) http://www.swift.com/index.page?lang=en&lt;br /&gt;
&lt;br /&gt;
If you need to change code in production to switch on a feature, does that mean you have to raise a change request? (takes 5 days)&lt;br /&gt;
&lt;br /&gt;
Depends if large organisation and need to have change request. Some orgs just need to know what happened, i.e. they have a record.&lt;br /&gt;
&lt;br /&gt;
Don&amp;#039;t need a change request for a feature toggle.&lt;br /&gt;
&lt;br /&gt;
Feature toggles are used in Production so that different groups can test different features.&lt;br /&gt;
&lt;br /&gt;
Another comment: Testers are the people that hate feature toggles the most. Which combination of feature toggles was it that cause the particular bug?&lt;br /&gt;
&lt;br /&gt;
Also the little things that catch you with features toggles, i.e. I told you months ago to turn that toggle on.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Challenges with Continuous Deployment&lt;br /&gt;
* A lot of investment at the beginning&lt;br /&gt;
* Haven&amp;#039;t even started down the road of functional testing&lt;br /&gt;
* It&amp;#039;s only going to be good as the testing that we do&lt;br /&gt;
* How to manage data migrations in production, have to invest some effort into how we do that, i.e. multiple steps.&lt;br /&gt;
* Who manages the continuous delivery? Developers? Testers? DevOps?&lt;br /&gt;
&lt;br /&gt;
We picked some of the biggest monolithic systems, if I had a choice I would have selected one of our web apps. Instead we chose one of our core banking systems with mainframe, OracleDB, etc, etc. Essentially we selected the system with the greatest strategic importance and the one where we would get our arses kicked by our competitors.&lt;br /&gt;
&lt;br /&gt;
Of the 4 things that you&amp;#039;ve done are you trying to make it a similar process for the next project that you change?&lt;br /&gt;
&lt;br /&gt;
Some of the code we&amp;#039;re dealing with is very old and so are the people that manage it. People change is the biggest challenge.&lt;br /&gt;
&lt;br /&gt;
Basically we&amp;#039;re making a conveyor belt so that each project gets shipped in the same way. Unfortunately for some people it is still down to the people who are on the project.&lt;br /&gt;
&lt;br /&gt;
Manage multiple different projects, java, python, PHP in the same way.&lt;br /&gt;
&lt;br /&gt;
How do you get the infrastructure guys to care about this? Well I&amp;#039;m the head of the infrastructure team, so I care about it. The see was planted long ago, moved to Puppet for CM 3 years ago. It&amp;#039;s been a long steady process.&lt;br /&gt;
&lt;br /&gt;
Another team using Chef now deploy to Amazon. Takes an hour to configure.&lt;br /&gt;
&lt;br /&gt;
Some team used a bottom up approach, do it in their spare time, etc. IBM used a top down approach.&lt;br /&gt;
&lt;br /&gt;
Others have a R&amp;amp;D time allocated each week.&lt;br /&gt;
&lt;br /&gt;
Management buy in is important to success, otherwise things will get in the way.&lt;/div&gt;</summary>
		<author><name>Paulflewelling</name></author>
	</entry>
	<entry>
		<id>https://citconf.com/wiki/index.php?title=Managing_Software_Technical_Debt&amp;diff=15649</id>
		<title>Managing Software Technical Debt</title>
		<link rel="alternate" type="text/html" href="https://citconf.com/wiki/index.php?title=Managing_Software_Technical_Debt&amp;diff=15649"/>
		<updated>2014-03-03T02:16:21Z</updated>

		<summary type="html">&lt;p&gt;Paulflewelling: Created page with &amp;quot;Ways to determine * Complexity / Class Usage can be used to determine where to look (bug hunting missions) * Fuck metric, the more the number of fucks to a comment, the more s...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Ways to determine&lt;br /&gt;
* Complexity / Class Usage can be used to determine where to look (bug hunting missions)&lt;br /&gt;
* Fuck metric, the more the number of fucks to a comment, the more serious the problem&lt;br /&gt;
* Source code analysis, manually (peer review) and automatically (tools like code climate)&lt;br /&gt;
* Annotate the code, for example https://code.google.com/p/gag/&lt;br /&gt;
* http://www.techdebt.org&lt;br /&gt;
&lt;br /&gt;
Discussion of technical debt talked about different debts&lt;br /&gt;
* Hacks you were asked for&lt;br /&gt;
* Hacks you did to get things done&lt;br /&gt;
&lt;br /&gt;
Gource is one way to analyse code.&lt;br /&gt;
&lt;br /&gt;
There are also tools like Code Climate.&lt;br /&gt;
&lt;br /&gt;
There was a mention of Rich Hickey&amp;#039;s talk/presentation &amp;quot;Simple Made Easy&amp;quot;: http://www.infoq.com/presentations/Simple-Made-Easy&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
We discussed the fact that Technical Debt, while it&amp;#039;s something that developers know all about and experience sometimes quite tangibly, it is often not visible to the business or product owner and, the conversation focussed on how to make it more visible. &lt;br /&gt;
&lt;br /&gt;
What followed was then a discussion looking at various tools from ticket management systems, some alternatives like http://www.techdebt.org which are mentioned above, through to using something like a whiteboard with the basic system architecture which is annotated with post-its showing where there are/were code smells, bugs, critical problems, upgrades required. Something like a Technical Debt Heatmap.&lt;/div&gt;</summary>
		<author><name>Paulflewelling</name></author>
	</entry>
	<entry>
		<id>https://citconf.com/wiki/index.php?title=CITCONANZ2014Sessions&amp;diff=15648</id>
		<title>CITCONANZ2014Sessions</title>
		<link rel="alternate" type="text/html" href="https://citconf.com/wiki/index.php?title=CITCONANZ2014Sessions&amp;diff=15648"/>
		<updated>2014-02-27T01:02:08Z</updated>

		<summary type="html">&lt;p&gt;Paulflewelling: /* 2:00 Topics */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;CITCON ANZ 2014 Auckland Sessions&lt;br /&gt;
&lt;br /&gt;
Back to the [[Main Page]]&lt;br /&gt;
&lt;br /&gt;
== 10:00 Topics ==&lt;br /&gt;
&lt;br /&gt;
# [[Virtualisation Services]]&lt;br /&gt;
# [[CI &amp;amp; TDD for legacy Systems]]&lt;br /&gt;
# [[CI in thirty minutes]]&lt;br /&gt;
# [[Reusing validation tests as monitoring]]&lt;br /&gt;
# [[Mobile Testing]]&lt;br /&gt;
&lt;br /&gt;
== 11:15 Topics ==&lt;br /&gt;
&lt;br /&gt;
# [[Vagrant/Packer for Continuous Delivery of Application Infrastructure]]&lt;br /&gt;
# [[?]]&lt;br /&gt;
# [[?]]&lt;br /&gt;
# [[?]]&lt;br /&gt;
# [[Tips and tricks for CI and CD]]&lt;br /&gt;
&lt;br /&gt;
== Lunch Topics ==&lt;br /&gt;
&lt;br /&gt;
# [[?]]&lt;br /&gt;
&lt;br /&gt;
== 2:00 Topics ==&lt;br /&gt;
&lt;br /&gt;
# [[How do you change the team culture from waterfall to shepherding change to production + Communication model]]&lt;br /&gt;
# [[?]]&lt;br /&gt;
# [[Managing Software Technical Debt]]&lt;br /&gt;
# [[Test Execution Time and Running Web-UI Tests in Parallel]]&lt;br /&gt;
# [[?]]&lt;br /&gt;
&lt;br /&gt;
== 3:15 Topics ==&lt;br /&gt;
&lt;br /&gt;
# [[?]]&lt;br /&gt;
# [[?]]&lt;br /&gt;
# [[?]]&lt;br /&gt;
# [[?]]&lt;br /&gt;
# [[?]]&lt;br /&gt;
&lt;br /&gt;
== 4:30 Topics ==&lt;br /&gt;
&lt;br /&gt;
# [[?]]&lt;br /&gt;
# [[?]]&lt;br /&gt;
# [[Deployment Contracts]]&lt;br /&gt;
# [[Beyond Given-When-Then]]&lt;br /&gt;
# [[?]]&lt;br /&gt;
&lt;br /&gt;
== Table View ==&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Room name&lt;br /&gt;
! 10:00&lt;br /&gt;
! 11:15&lt;br /&gt;
! 2:00&lt;br /&gt;
! 3:15&lt;br /&gt;
! 4:30&lt;br /&gt;
|-&lt;br /&gt;
| Cube&lt;br /&gt;
| [[?]]&lt;br /&gt;
| [[?]]&lt;br /&gt;
| [[?]]&lt;br /&gt;
| [[?]]&lt;br /&gt;
| [[?]]&lt;br /&gt;
|-&lt;br /&gt;
| Cube Bar&lt;br /&gt;
| [[?]]&lt;br /&gt;
| [[?]]&lt;br /&gt;
| [[?]]&lt;br /&gt;
| [[?]]&lt;br /&gt;
| [[?]]&lt;br /&gt;
|-&lt;br /&gt;
| Cube Hall&lt;br /&gt;
| [[CI in thirty minutes]]&lt;br /&gt;
| [[?]]&lt;br /&gt;
| [[?]]&lt;br /&gt;
| [[?]]&lt;br /&gt;
| [[?]]&lt;br /&gt;
|-&lt;br /&gt;
| Oku Wairangi&lt;br /&gt;
| [[?]]&lt;br /&gt;
| [[?]]&lt;br /&gt;
| [[Test Execution Time and Running Web-UI Tests in Parallel]]&lt;br /&gt;
| [[?]]&lt;br /&gt;
| [[Beyond Given-When-Then]]&lt;br /&gt;
|-&lt;br /&gt;
| Yellow Circle&lt;br /&gt;
| [[?]]&lt;br /&gt;
| [[Tips and tricks for CI and CD]]&lt;br /&gt;
| [[?]]&lt;br /&gt;
| [[?]]&lt;br /&gt;
| [[?]]&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Paulflewelling</name></author>
	</entry>
</feed>