Domain Driven Design
Posted by Steve in Architecture on October 22, 2009
Eagerly awaiting “Applying Domain-Driven Design and Patterns: With Examples in C# and .NET” by Jimmy Nilsson
But in the meantime I am reading “Domain Driven Design Quickly“

iBatis again
Posted by Steve in Architecture on October 22, 2009
Hmm – seems that all my latest posts have been about iBatis (am I a zealot?).
This does seem really interesting though -> a database migration utility (like the rails db migration utility). Allows you to manage the different versions of the database schema and to tie it up nicely with the code
http://svn.apache.org/repos/asf/ibatis/java/ibatis-3/trunk/doc/en/iBATIS-3-Migrations.pdf

Recession blues – doing more with less
CIOs in the Financial Services Industry Series #6, written by Stuart Phillips, M.D. of MagmaTec.
2009 has been an “interesting” year in the life of a CIO. Firstly, the “R” word has become a reality. For a while in 2008, we hoped the world wide economic recession had passed us by in South Africa, but that was wishful thinking. 2009 has seen the economic tsunami hit us in full strength, creating a whole new set of challenges for CIO’s, including unprecedented cost pressures.
Secondly, the recession has driven home the message that has been building up over the last decade or two – that businesses have to continually improve their offerings to remain competitive. The competitive paradigm at play is: “Competitors will ALWAYS be able to find a better / faster / cheaper way of delivering your current products / services to the market”. Standing still means moving backwards relative to your competitors, at an ever increasing rate. Competitive advantage thus results from the rate and scale of ongoing improvements that an organisation can sustain.
Read the rest of this entry »
Why Scrum works

Mindmap - Why Scrum Works
The adoption of Scrum as a project management process in IT projects has been extremely rapid. This is because of the fundamental principle that Scrum embraces is that software development if unpredictable. Scrum uses an iterative approach with short but focused iterations. Scrum formalizes the informal “do what is needed to be done” approach that is already followed in the software industry. People that use Scrum have seen huge productivity gains (up to 600% claimed by some). I will attempt to outline the reasons for Scrums success below.
Methodology
Scrum is a lightweight, simple and highly effective methodology that delivers business value every two weeks (or there about). The team is highly focused on the goals of the iteration and the progress of the team (or lack thereof) is highly visible. Because the approach breaks down the work into small manageable pieces, teams feel that the goals of the project are achievable. It also allows the team systematically approach the work and start the project without necessarily understanding exactly how or what needs to be done in later iterations of the project.
Delivery
Due to the fact that Scrum delivers business value every two weeks project sponsors feel that there is progress happening on the project all the time. They ultimately feel much more in control of the project and its budget. The use of the burndown chart and the daily “stand up” meeting gives everyone focus and makes any slippages or problems surface very early on in the lifecycle.
People
Generally, because Scrum works so well and delivers business value very well, the mood on a Scrum team is very positive and motivated. Scrum encourages competition in a very subtle way between members on the team, however it also encourages a “one for all, all for one” type attitude on the project due to the fact that the productivity of the team is very visible. If one aspect of the project is failing it looks bad for everyone and this encourages everyone to get involved and help out. Naturally a lot of this type of behavior is seen in teams with more experienced and mature members.
Philosophy
Scrum undoubtedly build trust between all the different members of a mature Scrum team. Everyone can see exactly what other members of the team are doing and what they are struggling with. It also builds trust with the sponsors of the project by quickly delivering business value to them and allowing them to shape and reform the project as it goes. Scrum also has the following “rules”:
- The people doing the work define and estimate the work
- The team sit together and interact constantly
- The people doing the work know what and how to deliver what is needed
Management
Managers using Scrum generally enjoy the “No fuss”, delivery mindset of Scrum. Because a Scrum team very much “self managed” the work, there is very little management overhead required for a Scrum project. There are no complex Gannt charts to wade through and update and it is relatively easy to see where issues and slippage is happening.

