CodeCraft

Hand crafted code

Software Pipeline

This is my build process. Think of it like an assembly line in a factory, but it can go further and include distribution. In most cases there processes will be completely opaque to the customer. In many cases very little will be formalisd and there will be alot of manual, ad-hoc processes. Much risk exists in this area and highly automated processes remove a lot of this.

I expose my process here as a document for myself and so anybody else can see exactly what I use and how. This openness allows you to know exactly how my factory is organsised to make software for you. If I write software especially for you, this allows me to explain which bits need to be customized for you and where and how feedback durting the process will be delivered to you.

This is the pipeline...
Simple flow
SVN/git Rider/ VS+R#
SQL Tools
Nunit
Javascript
Manual
Cruise Control .net Nunit
Javascript
Custom GUI Tester
Custom Deplyment Software

...It gets more complicated, of course. Because multiple versions of this exist for different branches and some of the outputs feed the inputs of others. In some cases the details of the steps vary, but all of my code goes through the "sausage machine" like this. The important part is the degree of automation. The more I can automate, the less prone my systems are to manual error and the more repeatable my process. When viewing a snapshot of where I am at it may seem like a really rigid restrictive process but the truth is the process is under constant improvement just like the software, "kaizen" style.