As a software developer I can see the appeal of throwing away what has been built before and starting from scratch. It is much easier to write new code than it is to maintain old code that someone else has written – in fact even when you have written it but stopped really caring for the code.
Unfortunately as business comes to rely more and more on technology solutions it starts to become very expensive to have to contiually re-implement the same fuctionality every five years or so simply because the organisation has forgotten how to effectively maintain their existing software assets.
Part of the problem is how we handle code after the system goes live and has achieved its first real period of stability. Typically a project team will be around to support go-live and work out most of the initial quirks with the software but soon enough the organisation has to disband the team and hope that the team has done a good job. More often than not the source code gets zipped up and put on someones shelf, or if you are lucky locked away in a dark corner of an enterprise version control repository.
Eventually that system is going to need a revision and this is when the fun starts. First of all the expert engaged to do the fixing needs to find the software asset. Second they need to resurect a lab environment so they can figure out how the solution works. Third, they need to make the change, and fourth test it. When people think about maintaining software they assume that the third and forth steps can happen without really needing to consider the first and second, unfortunately that just isn’t true.
To do it properly you need a way of transitioning your software development environment to a sustained engineering environment. This is where I think the true value of an ALM solution like Visual Studio 2010 Team Foundation Server and Lab Management comes into play. If you do it correctly when the project team spins down your build environment remains, in fact your test environment remains virtualised and all you have to do is spin it down to preserve compute resources and bring it up every X months to make sure it is still viable.
This is the essence of sustained engineering. It isn’t about support for an application, it is about the scheduled activities that a skilled individual undertakes to make sure that the code base that sits behind that critical corporate information asset is still viable.
Much better. Thanks Microsoft. END.
For the past eight months since taking on my new role I’ve been nearly 100% focused on building our project delivery capability. Readify consultants have always taken lead roles on challenging software projects that adopt the Microsoft platform either in direct engagements with our customers or through our various partners.
Devpods add to our market offerings by giving organisations that don’t have an internal development team, or who need a high performance team to just get in and get the job done. We have already deployed a number of Devpods and I’m happy to report that they are working extremely well.
Methodology and Tools
We use a combination of the Scrum methodology and Microsoft’s latest ALM tooling to keep the projects on track and make sure all stakeholders know what is going on. In fact the presentation that I am giving tomorrow in Canberra actually shows off some of this tooling.
Of course – there is a lot more to building a project delivery capability to market than saying we use Scrum and installing a bunch of software. Thought needs to be given to how we promote the concept to potential customers, understanding who our customers really are as well as pulling together some of the other collateral such as standard proposals.
Fortunately most of this is behind us now and we can start to focus on engaging with more customers.
Now that I’ve got the time to sit up and look around I’m starting to see some of the other things that I need to focus on to continue to strengthen the offering. Whilst we are already delivering Devpod projects to customers already we’ve picked up a few good ideas that we’d like to invest in.
Anyway – at least you know what I’ve been up to for the last eight months.
Tomorrow morning I am presenting at the Canberra VSTS User Group (should this be called the Canberra ALM User Group now?). I’ll be presenting on the topic of Visual Studio 2010 Test and Lab Management which has been something near and dear to my heart of the recent months.
You have about 14 hours left to get your booking in according to the registration page so you had better get cracking if you are interested in coming along.
In the session I provide an overview of what MTLM is and what problem it is trying to solve and move onto looking at some of the core topics, including:
- Planning your testing effort.
- Writing test cases against user requirements.
- Tracking your testing effort across multiple configurations.
- Recording test runs for playback.
- Automating test runs in lab environments using Coded UI tests.
- Understanding when its time to automate testing.
- Tips for getting started with lab management.
During the session I’ll actually be showing a live environment which is actually being used. Unfortunately we haven’t had a chance to upgrade to the Release Candidate that was released today, but I’ll point out any significant differences you are likely to find.
I don’t seem to blog very much these days, which I am hoping to rectify soon. However I thought I would quickly throw this one out there to see if there is anyone reading my blog that fits this bill, or knows someone who fits this bill.
We are currently looking for a junior-to-intermediate level developer who wants to get on the pathway to consultancy to work as the primary developer for internal development projects, supporting existing code bases and creating new application to support our business.
You must already have experience with the .NET platform, preferably .NET 3.5 with a desire to move to 4.0 within the coming months (we already have some 4.0 code bases). This is a Melbourne-based position and you’ll be working from our offices in Docklands working with managers across the business to support their needs.
Longer term this is a great way to move towards being a Senior Developer so if you want to move beyond what your current role can offer you and start working with a large variety of technologies such as SharePoint, CRM, SQL Server and of course the latest development tools from Microsoft then please contact me at email@example.com.
Thanks – please pass this on if you know someone who could fit the bill. I’d imagine this would suit a recent graduate, or someone taking a break from university who already has some development experience.