Survey. Which frameworks do you use in .Net projects?

Later this week I will be doing a talk at the Microsoft DevDays conference at the Congrescentrum in Den Haag. This talk is titled Navigating through the hypes, Software architectures and patterns to help avoiding your projects to crash. Read more about it at Please fill in the little survey I’m conducting at Survey: Which frameworks do you use […]

The days are just packed. My talks in May and June 2009

The months May and June are notorious for the number of talks – as Rick van der Lans describes: May and June are speaker’s season. Just to remind me not to forget any of my upcoming talks, here’s a list: May 12. Project estimation with smart use cases. At Capgemini, Utrecht. Presentation at internal software estimation seminar for Community of […]

Measuring agile progress in smart use case points

Smart use cases serve as a very good unit of work in agile projects. The agile process Smart relies on smart use cases, from start to end. Moreover, the progress in Smart projects is measured and managed using these use cases, and the associated straightforward estimation technique smart estimation. First cut smart use cases A first cut smart use case […]

Delivering products in agile (Smart) projects

In most cases where a form of agile software development is applied, projects are challenged with difficult issues, such as a swaggering scope, unclear and incomplete requirements, unstable software architecture, are quickly approaching dead lines. Within these strict boundaries projects try to deliver high quality software at high productivity – or velocity. This is not an easy challenge. Delivering just […]

Implementing smart use cases. Guest lecture at Hogeschool Arnhem Nijmegen

In the second half of last year, I did a guest lecture at the Hogeschool Arnhem Nijmegen (HAN) in Arnhem on an invitation by lecturer Rody Middelkoop. I’m sorry but I can’t remember the exact date – only that I had an upcoming flue. Although if was a Friday afternoon, the audience was good, about 60-70 lecturers and students. I […]

One of the boys. Women in technology

Suffers from writers block! Have to finish my column for the @SDNMagazine “Women in Technology” issue. @mariannerd Still struggling with the subject? I handed in my "regular" column – not dealing with WIT. When’s the final deadline? @aahoogendoorn I woke up this morning with an idea. deadline was 13/4, for columns it’s a bit easier. so Friday has to do. […]

Slide deck on Pragmatic model driven development at J-Spring

Model driven development has a promise of high productivity. However, many approaches fail to deliver. Sander Hoogendoorn (Capgemini) and Rody Middelkoop (Avisi) will present a very pragmatic approach to model driven development, based on modeling smart use cases and domain models in UML. The speakers elaborate enthusiastically on this approach and the techniques used, and they will model and generate […]

Mission impossible? Applying agile to the world of SAP enterprise resource planning

Early in March Twan van den Broek, SAP solution architect at TopForce, got in touch with me if I would be interested to coach an agile SAP project at a very large logistics organization. We have been using accelerators from our agile Accelerated Delivery Platform in SAP project before, including smart use cases, smart estimation and Tobago MDA, our model […]

Agile and Scrum anti-patterns. Wildcard proposal DevDays 2009

After a dozen years of promoting and evangelizing agile software development in the current years of economic unpredictability a breakthrough in applying agile processes and techniques is emerging. But with the rising popularity of Scrum, MSF Agile, OpenUP, Smart, XP, Lean, FDD and the likes, it’s not only success stories any more. Similar to failing traditional waterfall projects there patterns […]

Software estimation. Do I apply user stories or smart use cases?

The process of creating a sound estimate for your project will take some time in any agile project. You will have to define what work to do in the project. In general this work can be split up into two parts: Project related work. There’s project related work, such as creating a project proposal or setting up your development environment. […]

Trojan rigidity. Agile anti-patterns (I)

One of the characteristics of most traditional – linear, waterfall – styled organizations is the extremely rigid execution of their software development projects . “Our handbook says we need to fill in this form, so that’s what we do guys.” People is these projects live by the blind assumption that whoever invented or wrote down their software development process knew […]

Hoe we herdefinieren herdefinieren [in Dutch]

De voorpagina van de Computable van 20 maart is opgesierd met een prachtige foto van een uit een witte limousine stappend bruidje in een even witte bruidsjurk en prachtige borsten. Nieuwsgierig geworden naar het bijbehorende artikel, kom ik al snel tot de teleurstellende conclusie dat dit weer eens gaat over het mislukken van de gemeentelijke basisadministratie, dat ondertussen toch wel […]

Outline for new pragmatic book on smart use cases

We (my team and I and a lot of people that contributed from projects) have been working on the concept of smart use cases on and off over the last ten years. I think it was back in 1998 that we coincidentally started modeling use cases at bit different than was custom, in a workflow oriented project. We not only […]

Nice feedback on workshop Pragmatic modeling using UML [in Dutch]

Sometimes when you work hard, you’re rewarded with nice feedback. Did a two-day workshop in Antwerp, Belgium two weeks ago, and received the following feedback from one of the participant. Really heart-warming. Sander Hoogendoorn is een zeer vlotte spreker met een zeer brede kennis in zowel agile als traditionele software ontwikkelmethodieken, software architectuur, design patterns, modelering, UML, model driven software […]

Navigating through the hypes, Software architectures and patterns to help avoiding your projects to crash – this year’s DevDays talk.

Good to hear that I’ve made the program of this year’s Microsoft DevDays. Will be a challenging talk on software architecture and patterns, titled just like this blog post. Here’s the description. Hope you like it. Navigating through the hypes, Software architectures and patterns to help avoiding your projects to crash When it comes to .Net software development, more and […]

Client/service architecture. Domain driven development in the distributed era. Episode IV

Go to episode three. Go to episode two. Go to episode one. In case you’re wondering why doesn’t this dude come to his point, you’ve probably missed it. I’ve made it already. The point is: you should always have a single point of truth, and at most have it reproduced on the server side. Which in most cases you don’t […]

Pragmatic model driven development in Java with smart use cases and domain driven design

In our Accelerated Delivery Platform we generate code from our standardized smart use cases and the domain model, using our Tobago MDA tooling. See for more details. In our daily practice we generate for a variety of architectures in the .Net space. For instance, we apply our own frameworks, or combine these with open source frameworks such as nHibernate, […]

Single point of truth. Domain driven development in the distributed era. Episode III

Go to episode two Go to episode one Client / server could have been a much more successful era in software development, if it wasn’t for this copy-and-paste programming, leading to applications that slowly became unmanageable. I have seen this anti-pattern occur in any of the popular client / server technologies. Without exception, whether it was Visual Basic, PowerBuilder or […]

The merits of two-tier architecture. Domain driven development in the distributed era. Episode II

Go to episode one. So now you’re stuck with this two-tier architecture. Is this a problem. Well, not yet. However, it can become a huge problem, and it has become a huge problem in many, many client / server applications, in a vide variety of technologies, including several types of (legacy) web application technologies. The truth is out there The […]

Back in the days of client/server. Domain driven development in the distributed era. Episode I

At this point in time, where we slowly shift from service orientation to cloud computing, building business software is more complicated then it has ever been. There are many platform that your software needs to target, and there are even more ways of writing the software. Beyond choosing technology Choosing a technology goes way beyond stating that you are doing […]

Identifying, modeling and testing smart use cases

This morning I proposed a second talk for the EuroSTAR 2009 Conference in Stockholm. Sounds ok, doesn’t it? See EuroSTAR Conference 2009. Many organizations rely on the concept of use cases to model and describe functional requirements. However, there are many different ways of identifying and modeling use cases. Use case documents range from a mere two-pager up to book-length. […]

Agile testing in everyday practice

This morning I proposed the following talk for the EuroSTAR 2009 Conference in Stockholm. Sounds ok, doesn’t it? See EuroSTAR Conference 2009. In the current economic situation pressure rises on software development projects. Shorter time-to-market and cost cutting do not contribute to the quality of the project. More and more organizations now turn to applying agile processes, such as Scrum, […]

Application migration using smart use cases and a model driven development approach

Application migration is the process of migrating older applications (often referred to as legacy) to application that have more of less similar functionality, but are developed in newer technology. Application migration has proven to be a crucial but very hard part of software development over the years. Key to such projects is: Automated migration is hardly ever possible. It is […]

Implementing YAGNI in Smart projects

YAGNI is a well known acronym in agile software development, which is short for You Ain’t Gonna Need It. Originally this acronym suggests to programmers that they should not add functionality until it is really necessary. "Always implement things when you actually need them, never when you just foresee that you need them," says Ron Jeffries. Quite often developers think […]

Project management in agile Smart projects

Projects that are run using the agile methodology Smart are split up into short iterations. There are a different types of iterations defined in Smart. These are Propose, Scope, Realize, Finalize and Manage, guiding a project from the first proposal to application management. Each of these iteration types follow a straightforward iteration cycle: plan the activities (Plan), perform the activities […]

So much to write, so little time

It’s too bad there’s only 24 hours in a day. There are so many ideas in my head that I still have to write down, that I have to make a (short) list now to keep my head from exploding. So here it is: White paper on how to do agile SAP projects using smart use cases. Article on applying […]

Smart software estimation. How does it work?

The general idea around (Smart) estimation is to be able to express project effort at any given time before or during a project. Doing so, you should be aware of something which is called the Cone of Uncertainty. This simple but valuable graph demonstrates that estimates will get better as the project progresses, but also that when estimating a project […]

Bite the bullet

Mensen die mij al langer kennen, weten het inmiddels. Ik heb wel iets met presenteren. Al zolang ik het me kan herinneren. In mijn lossy geheugen staan in elk geval presentaties gegrift die tenminste dateren van twee decennia, drie werkgevers en zo’n tweehonderd klanten geleden. En ook toen al vond ik het leuk om te presenteren. Zo nu en dan […]

Seattle in January

  And still I am in Seattle. Well, Redmond to be more specific. Seattle is not a bad city. It’s not colder than the Netherlands now, and the buildings are a bit higher. Had a walk on the waterfront in the evening. Took some pictures.

Why Newton was agile and the Titanic was not

Let’s be perfectly clear about one thing: 2009 will not only be known as the year the financial crisis hits in hard, it will also be known as the year everything turned agile. Please allow me to explain. The times when banks, insurance companies, car industries and the likes could start up multi-million software development projects of titanic ambition, with […]

Why do you need a layered architecture?

The first business software I wrote professionally – that is, got paid for – was a set of small and similar calculation applications. I wrote these in the pre-Windows era in some version of Turbo Pascal. And no matter how ignorant I still was about good software architecture, these small applications already had a notion of layered architecture. And though […]

Guest lecture Hogeschool Utrecht on implementing smart use cases in agile projects

On January 13 from 14:30 – 16:00 the Hogeschool Utrecht organizes a guest lecture by Sander Hoogendoorn, Principal Technology Officer at Capgemini. When asked who to invite for presenting a guest lecture, the students of the Hogeschool specifically requested for Sander. His lecture will be titled Implementing smart use cases in agile projects. Process, techniques, architecture and patterns. During this […]

Why do we need software architecture?

Over the past twenty or so years I have been involved in many software development projects, code reviews, and software factory implementations. Although I had stretched the virtues of good software architecture for decades, it wasn’t until a series of recent event, that I really started re-valuing of having a sound software architecture in place. And to me a well-defined […]