Thursday, 22 March 2012

Solving system Integration configuration problems

I am doing a lot of semi-automated application configuration management at the moment. I'm working on a system that has about 30 to 40 interdependent services, web sites, and applications. With an expanding team, splitting into several teams from one large team, the organisation needs to be able to easily replicate development, test and UAT environments on a team by team basis. We could use virtualisation to replicate a master environment set consisting of database and code servers, giving each team a clone of this, but we would still need to invest a lot of time configuring end points and database connection strings.

Whilst trying to solve this problem I came across a really interesting tool that almost does what I think is required.


Octopus is an automated deployment tool developed by Paul Stovell for .NET that uses Nuget and configuration conventions to push out applications in a very effective way to multiple environments. 


Octopus has a central server that pushes packages out to tentacles that sit on servers. The tentacles look after the deployment server side meaning permission issues are never a problem.

One of the great things is the way you can store all your application or web configuration variables and easily assign different configuration sets to different environments. This is one of the key features for me.





This is pretty much what I want, except that it is heavily dependent on using Nuget packages. This is not a massive issue and if my proof of concept goes well, I will try and convince the teams that they need to be generating Nuget packages as part of their build process. It does actually link into tools like teamcity very well to do this so it may even be possible to leverage the generation of artefacts and use them as the packages.

Related Tools:



Friday, 16 March 2012

ThoughtWorks Tech Radar - March 2012

The latest ThoughtWorks Technology Radar is now out!

http://www.thoughtworks.com/radar
"The ThoughtWorks Technology Advisory Board is a group of senior technology leaders within ThoughtWorks. They produce the ThoughtWorks Technology Radar to help decision makers understand emerging technologies and trends that affect the market today. This group meets regularly to discuss the global technology strategy for ThoughtWorks and the technology trends that significantly impact our industry." ThoughtWorks 2012
Check out the archives for some interesting trends over the past few years. Interesting reading.

Sunday, 19 February 2012

scrum.org

Whilst looking for a course that would allow me to get some professional recognition for my scrum knowledge, I came across scrum.org. Scrum.org was founded c.2010 by Ken Schwaber, one of the original founders of the scum alliance. He resigned from the alliance in 2009 to pursue his belief that a transformation was required in the way the principles and fundamentals of scrum were delivered to users of scrum. There is more about that here.

Scrum.org offers a number of different training and assessment packages with several that are tailored towards developers, focusing on the core engineering practices that developers and scrum masters really need to understand to be successful in a scrum environment.

For more information on scrum visit:


and have a read of Henrik Kniberg’s Scrum and xp from the trenches:



Friday, 10 February 2012

blazemeter - JMeter cloud testing

I've been using Apache's performance test tool JMeter for many years now, but struggle to find enough time and resource to create a decent distributed network of JMeter engines that can simulate large and realistic load. Today I stumbled upon http://blazemeter.com/ which allows just that. Its a cloud based performance test service that gives you access to multiple instances of JMeter that are geographically distributed on a variety of different server types.

To use blazemeter you either upload your own JMeter scripts or give blazemeter a url and let it write the script for you, you then create your scenarios before finally executing your test. Blazemeter has many great features, including some detailed analysis and test management capabilities that make this a compelling option when it comes to investing in performance testing.

Blazemeter operates a similar business model to browsermob.com (now Neustar Web Performance), where you pay for the number of test engines, different server types, on demand usage, etc.

There is a comprehensive free trial available that will allow you to experiment with features and tests for a couple of weeks.

For more information on JMeter visit http://jmeter.apache.org/.

Monday, 16 January 2012

Data driven tests



Filehelpers is a great .Net library that allows you to easily import data into your code from a number of different data sources.

I use it to data drive selenium tests, reading in all the iterations in a setup method and then using the data either through iteration or targeting rows for specific data sets.

This quick start guide is pretty all you need to get data driving your tests.

http://www.filehelpers.com/quick_start.html

Sunday, 15 January 2012

Cloud testing


You might not be able to get permanent test resource into your organisation, but a relatively small one off project cost might be acceptable to your business. Several cloud based test services have gained popularity recently providing on demand testing for individual or multiple projects.

Neustar Web Performance (Formerly BrowserMob )

This is a performance test service that allows you to test your applications from various geographical locations using selenium scripts.

The interface allows you a good degree of control over the test, and gives you plenty of analytics both during and after the test.

This is a great tool for those teams with a limit budget that need high performance but can’t step up and invest in dedicated performance test environments.


UTest offers a global community of testers that are paid by the test or number of defects that they find.

With features like bug tracking and test planning, and a seemingly endless list of possible platforms on which to test, this type of service is set to become big business during 2012.

Saturday, 31 December 2011

Kanbanery – Simple work management to keep you moving


Kanbanery is a great tool for managing tasks, your work load, and, of course, your Kanban process. Based on Kanban principles, it gives you a solid way to manage tasks for both solo and group work. With just three states you get a very clear view of what needs doing, what is being done, and what is done.

The tools simplicity focuses you on what is really important in your current work load. The price plan includes a free version that allows two people to collaborate on a project, whilst other very reasonably priced plans easily open this up to small and large teams.

Well worth a look. Check it out here – www.Kanbanery.com