Sprint Planner Helper - Vaccation halt

I am going to Ethiopia for two weeks and the project comes to a natural (and needed) halt during that period.

I had hoped that I would have got further than this but I must stay content with what I’ve got.

The visit to Ethopia will be something very different and exciting. Especially with Albert who right now is 14 months and have just started to walk…

Get back to you on the trip at www.marcusoft.net

Read More

Sprint Planner Helper – Session 26

I have come to realize that I am not working… Not very flattering that I has taken me about 2,5 months to come to that conclusion but here I am.

So I will probably slow down the pace for this project. I have not done loads so far but I felt a bit pressured to “produce” and that not the kind of feeling I would like to have on my parental leave. So a bit slow – and still only when it’s fun!

OK – the thing today is to find aggregates and create repositories for the Sprint domain object.

When it’s comes to aggregates I still find them quite hard to grasp. The mainstream definition seems to be “things that must exists together” and the most common example is the Order-OrderLine relationship.

But for my Sprint I have a list of SprintItems each with a list of ActionItems. And...

Read More

Debating a hero

Today I did something that I never dared before - I posted a comment on an article that I read in ComputerSweden</a>. Nothing scary there - but the article was written by one of the IT-heros of Sweden, Ivar Jacobsson. He invented RUP and has been a busy debater and writer.

His column was about Scrum and how it’s “coming apart” (my translation). You can read it here (in Swedish).

Here are my comment and Ivar’s promptly answer.

The last row was something extra: “Marcus, you’re welcome to write to me directly” :)

I can’t miss out on that opportunity, can I.

Read More

Sprint Planner Helper – Session 25

Today I will continue working on the model, surrounding Sprints, and of course drive it forward with tests.

I came to realize today that I am now converted. I am now a TDD guy. I will do tests even if it’s not required of me. And the reason is security and speed.

I have gone from coding along with no worries – the tester will find (any) bugs for me… Then I heard of unit-testing and started to write some – just for fun in the start (yeah – pretty sick). After a while I didn’t dare to check in any code that I couldn’t prove with some test – but a wrote the code first. And after a while of doing that, I was so feed up with running behind with the tests that thought I’ll give true TDD a chance.

What I pretty soon came to...

Read More

In Control V - Cactus Cuties

Here is a clip of a group of girls, the Cactus Cuties, that sings the American National Anthem in the most wonderful way.

They are just spot on in their parts – and the balance is just amazing.

I don’t care that is sugar-sweet and patriotic, music-making like this always makes me happy.
Read More

Sprint Planner Helper – Session 24

My detour for learning ASP.NET MVC is coming to an end. I cannot say that I fully know the framework but I have a much better understanding of it now and that will hopefully help me keep the tempo up.

I have a few things left (such as editing product backlog items) surrounding the product. But I will leave them for later. I am so long back to the DDD that this project also is aiming to learn me.

The third item of my user stories is a biggie and it concerns Sprints – the main object of my domain model.

3. As user I can create a sprint that represent a sprint in which some items of the product backlog is to be realized.

The sprint has a goal description and a start, stop and demo-date and the team members with availability (in %),...

Read More

UpdateModel, FormCollection and unit test

I ran into some problems with a Action Controller method that accepted an FormCollection. Inside the method I use UpdateModel to get the values from the form into the model-class.

Here is a skeleton implementation of the method:

[UPDATED] **Some insightful comments by Steve made me do some changes to this code. I have now updated it. The tip had to do with if the ValueProvider should be set on the Controller in the test or in the actual Action-method. I finally opted for the latter and changed it into this (significant code in **bold).

\[AcceptVerbs(HttpVerbs.Post)\] public ActionResult Create(FormCollection form) { // Create ViewData ProductForm viewData = new ProductForm(new Product(), productOwnerRepository.Find().ToList());   Read More

Årets höjdare 2009

Yesterday night Avega had a party. Great fun as always and this night also presented the Avega Band which was great (rock band mind you, I didn’t play).

There were a number of awards handed out during the evening (SM I Affärsnytta among others).

I was truly amazed when I was rewarded the “Årets höjdare” (Avegean of the year, kinda…)!!! Last year it was Joakim Sundén who is a great guy and really has put Avega on the IT-map of Sweden.

It is a reward that is voted on by the consultants of Avega.

Being completely taken off guard the only thing I could say at the time was also the only thing I really felt: I am always very humbled when meeting my colleagues in a group since you immediately can notice the level of knowledge that exists in the firm. And that...

Read More

Sprint Planner Helper – Session 23

This has been the longest of my sessions so far and by far. It has actually stretched over 4 separate “hours” and almost a week since my schedule has been busy with other stuff.

It had to do with me getting stuck on a thing the ASP.NET MVC framework that I didn’t get. This was related to the way the framework binds the data in the view to the values posted, and the UpdateModel method etc.

To make a long story short I have posted an item in the MVC-forum, and got some truly great feedback from Alberto. I recommend you reading it. Go on. Do it now.

Ok – from all this I learned some very useful lessons;

  • the most important was to use a separate ViewModel. That is – create classes that are streamlined to fit the view that the controller...
Read More