Using ATDD in conversion project

I have been involved in a lot of conversion project. More specific it has been converting legacy VB6 applications to .NET applications. I’m not sure why or how but I have found myself in many project like this.

Common scenarios in conversion project

Very often these project has an ideal picture that “it’s just a conversion”. “This is 1 to 1 project” is a very common phrase in many of the projects I have been involved in. That can be understood as: “just convert it in the new language – with the exact same features”. I have even been asked to do bug conversion – that is to also convert any bugs I find into the new language.

Moreover, these project very often lack interest, time and effort from the stakeholders/customers/business people. To non-technical persons conversion is purely technical thing. “Just recompile it – let me know when you’re...

Read More

WCF, MVVM and good client design

Up to now most of my assignments has not been client-related. Often the project description and main focus is on the layers beneath the GUI. But lately I have seen a shift in the industry and more so in my own interest. Client-side stuff is coming on strong.

And it’s hard work to design a well structured client application. There are a lot of patterns but the frameworks and “recommended” ways up to now often doesn’t lend themselves well to those patterns. Ever tried to do proper MVC with WebForms or WinForms – it’s not easy.

But that has also shifted. I have written a lot on ASP.NET MVC – that of course supports the mother of all client patterns, MVC, in a great way. So enough said there.

But for “fat clients” such as windows clients there’s been a hazy mystery for me. I know...

Read More

Configure WCF in IIS for anonymous access

This case may sound strange and I have seen loads of post that describes how to get out of this behavior. But we have a case where we want to allow anonymous access and the let a external component manage the security validation.

This turned out to be very hard to figure out and required some wizard-like skills of Anders Granåker amongst others.

OK – the case is very simple. I have a WCF Service that I want to allow anonymous access to. I don’t care about message and transport security (for now). Just allow anonymous access – I’ll take care of the authorization in code.

Here is what I had to do to get it to work on Windows 2003 R2:

  1. Create a account on the server
  2. Put that account into the IIS_WPG group
  3. Create a virtual directory for my WCF service
  4. Create an application in that virtual...
Read More

Specification by example – the missing link?

I’ve been thinking. That statement alone will be sure to put fear in the heart of a lot of you… But if you have continued on this far, here we go.

Learning programming stuff

During the last year or so I have been reading a lot. I have read stuff on XP, on good design DDD and TDD. This reading has affected me and my coding style way much more than I first thought. I simply cannot write code anymore without the test first, interface first, thinking of SOLID etc..

Learning lean stuff

At the same time I have change role at Avega. I am now an AvegaCoach. This means that my time is divided between my regular (often coaching) assignments with customers and Avega and Elevate. Since my fellow AvegaCoaches (Joakim and Read More

Calling SOAPUi Testscript from MSBuild

Yes, I know that I have written about this before, with several updates. But I have now solved some issues with setting different endpoints for different services and thought that I might need to update the MSBuild-script to be able to call with those parameters also.

Again – the script I am starting off is written by Todd of the Tar Pit. I’ve just tweaked it to take project property as input. That was the recommended way to change the endpoint for one service, to set the endpoint to a projectwide parameter.

So, here is what the new MSBuild targets looks like.

And here is a DOS-command that runs the MSBuild-target TestAll with the project property set to a endpoint.

Please note that I was running this on a 64-bit Windows 7 and got some strange paths (Framework64) that you...

Read More

Home with children – everything’s fine

We have now been home for a while and things are settling down over here. Actually it’s working pretty good so far.

Gustav and Arvid - in that order

Gustav is much better – he’s completely cured, to be honest. Both Arvid and Gustav is putting on weight and are both happy unless you change their diaper…

Arvid and Gusta - in THAT order

Small children sleeps a lot, which is nice when you have another one to take care of also. Albert is really lovingly to Arvid and Gustav and enjoy to hold them… with us watching closely… He can lose...

Read More

Changing endpoint from the command line when testing services with SOAPUi

I have been singing SOAPUi’s praises lately and it’s really great for testing services. In this post I describe how I made the whole thing work for testing WCF Services. But, as stated in this post, there was still one more thing to be solved… The endpoints from the command line. You want to use different endpoints in different environments. And in my specific customer case I want one of them to stay the same all of the time, since that endpoint points (sorry, could not resist myself) to a “singleton” kind of service. Luckily the SOAPUi team also have some great support (Thanks Ole, who replied in Swedish!). So here you have it – how to change the endpoint for one of your services under test from the command line – which in my case means the build...

Read More

Status of workitems – where to keep it

This is a question that arises very soon or sometime even before you start doing work with a board; Scrum, Kanban or Scrumbut.

Where should the status be? Or more often – “let’s use TFS” (and keep the work items in TFS/SharePoint/Excel and then make copies of them to use on the wall).

A variant of the question is; “we are a distributed team – can we still use the same board?”

Well of course there is not a yes or no answer to that but here is my take on it:

Low tech rules

First I think that no electronic system will ever beat the flexibility, simplicity and agileness of a board. See this for some examples. There are some that have come close but a low tech board communicates so much information with the added flexibility to move things around very...

Read More

Practical Kanban – some Kanban boards in practices

Together with Joakim Sundén and Christophe Achouiantz I’ve been doing some talks on Kanban. We have included some practicality in the talk – Build your own Kanban-board sort of.

For the first few talks I tried to draw as fast as Joakim (in that case) talked. Not an easy task – try it. And also my drawings were not always optimal.

So Joakim and I did some stop-motion-action and created slides for this part instead. It took the better part of a complete day… But the result was alright I think.

Here are the slides with some short comments to illustrate what we talk about.

Kanbanboards

View more presentations from Marcus Hammarberg.

Read More

Arvid and Gustav

The last week have really been something extra. Last Friday, early morning we got some signs on that the twins were on their way.

Born on the 19 of Marsch - the Hammarberg twins

And 11 hours later they had arrived.

Gustav Hammarberg

Since then Gustav (twin 2) has been sick. The short story is that being born to early his lungs had not developed fully. And he has also been a better and is not on his way to a full recovery. We’re hoping to be back home with the twins in the beginning of the next week.

Read More