On.. Development Nirvana (part 2)

When I looked at how to improve our development processes and environment I gave myself 10 scenarios or stories to deal with. Situations that occur regularly that we could improve, or at least have a set way of doing. This wasn’t a comprehensive list just a starting point, I’m sure in a couple of months I’ll have another 10, but just because you can’t fix everything doesn’t mean you shouldn’t fix something. That may have been a triple negative…

So I’ve taken my 10 stories and written against them what I would like to happen. This makes me clarify what I’m trying to achieve, saying “I want a better development environment” is a fairly empty phrase without detailing how it is you would like to work.

1. Working for the first time on an existing project

What I would like to happen : I open up Visual Studio, load the project from somewhere, get the current working version of the code that builds and connects to the test/sandbox database if required.

2. New project starts up

What I would like to happen : When a new project is authorised, rather than a personal local development, it will create a centralised project store, an intranet site to track documents or progress, and it will send an email to certain people to announce all of this has occurred.

3. Project finishes

What I would like to happen : Code is stored as a release version, intranet site and documentation are moved from a project location to a reliable information store as a reference point. Post project documentation is completed and added to the site.

4. Team working on same application

What I would like to happen : Members of the team should be able to edit files within the same solution and within the same project. They shouldn’t be able to edit a file that someone else is currently editing. They shouldn’t be able to add or update files to the solution/project that will stop it from building, or that don’t conform to our coding standards. I should be able to find out who lasted edited a file, or indeed particular lines of code.

5. Error occurs in code during development

What I would like to happen : It will be easy to find out who last edited a piece of code, or one of its dependencies, it will also be easy to find out why that line of code was edited and who the project owner is.

6. New application needs to be deployed

What I would like to happen : An installer is handed off to one of the IT or infrastructures team and they will be able to deploy it in the required environment with minimal amount of setup. It will work.

7. New Webpart needs to be deployed to Sharepoint

What I would like to happen : A Webpart package will be handed off to the IT or infrastructures team and they will install it against the required Sharepoint system. It will work when activated.

8. An Error occurs in code after launch

What I would like to happen : An error will be either catastrophic or it will be fixed in the next version. If it is a catastrophic error, ie one that means people can’t use the application, a branched version will be developed to fix the issue, that branch will then be bought in line with the main code over the next full release version. Someone other than the development team decides if the error is catastrophic or not.

9. Working from home

What I would like to happen : I connect to my work network from home, I have all my current project code and intranet information available to me, without having to utilise remote desktop. I can interact with development systems as if I was at my work PC.

10. You pick up work for a different project

What I would like to happen : I can raise a flag that I have started work on this task, even if it currently ‘belongs’ to someone else. My time worked on this task will be recorded against it.

The next stage is to take “What I would like to happen” and turn it into “How to make it happen”. From that you can infer where you need new tools or processes and where you can start to improve the situation immediately.

That forms the basis of Part 3 of the article.


0 Responses to “On.. Development Nirvana (part 2)”

  1. Leave a Comment

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )


Connecting to %s


%d bloggers like this: