Filling the backpack

At the start of your career your backpack with is filled with lots of theory and as your career progresses more and more experience get’s thrown in, perfect. At some point you won’t be learning new things if you keep doing the same role. That’s why people take up different roles and grow in a team. However, the goal of the team’s you’re in often remains similar: develop system X that realizes user stories Y and Z. Many people do lots of roles, but all on the ‘producing’ side of the IT. I personally experienced the value of jumping to (one of) the other side(s) for a period of time. After returning to my original role I became much more effective.

Read more →

Lean Architecture Principle #7: Architecture Initiated by Business Goals

This is the seventh post in a series of blog posts discussing Lean Architecture principles. Each post discusses one principle. Applying these principles results in an architecture (process) that is better connected to the business, better able to deal with change and more cohesive. The seventh principle we discuss is called “Architecture Initiated by Business Goals“.Read more →

Lean Architecture Principle #4: All Hands on Deck early on

This is the forth post in a series of blog posts discussing Lean Architecture principles. Each post discusses one principle. Applying these principles results in an architecture (process) that is better connected to the business, better able to deal with change and more cohesive. The forth principle is call “All hands on deck early on” (initially coined  by James O. Coplien). The essence of this principle is that all stakeholders of a project are involved at the start of the project.

Read more →

Lean Architecture Principle #1: Always involved

This is the second of a series of blog posts discussing Lean Architecture principles. Each post will discuss one principle and applying these principles will result in an architecture (process) that is better connected to the business, better able to deal with change and more cohesive. The first principle that we discuss applies to the architect role and is called “Always Involved”. The architect role is not limited to one project phase or even one project, a good architect takes a much broader perspective. The Lean Architect constantly communicates with all stakeholders (from business till operations), plays an active role in running projects, and ensures that lessons learned in projects are known and where applicable used in other projects.
<!– MORE –>
We probably all know at least one example of architects that were not connected to the business objectives or to the projects being executed in an organization. The architects get an assignment from a project manager, isolate themselfes in an office, works for months discussing with each other, but not with business, project, operational maintenance or other stakeholders and produce a 100+ page document containing their perfect architecture. After delivering the document they abandon the ship and await a new assignment. This is an extreme case (although it does happen in reality), but variations in which the architect is only involved at the start of a project, or only communicates with one of the stakeholders are very common.
Always involved means that architects are involved during the whole lifecycle of a project, from the initial inception of ideas up until (and including) when the deliverables of a project are in production. The degree of involvement may vary depending on the project phase, but architects always stay in the loop. The architects feel responsible for the business goals and are committed to deliver value such that these goals are reached. They are supporting multiple projects and constantly create alignment between stakeholders of all projects and takes lessons learned in projects into account, ensuring that other can learn from it.
How does the principle contribute to the 3 C’s of architecture? A better cohesion is achieved since the architect takes an active role in all projects. This enables him to ensure that projects learn from each other and that similar problems are solved in a consistent way (e.g. process orchestration). Connection with organizational goals (both business and project) is improved since architects interact with the business and project side on a regular basis. This forces architects to understand these goals and enables him to translate these into IT goals. Architects also ensure that the other stakeholders understand the reasoning for these IT goals. Also, due to the constant involvement in projects, feedback, lessons learned, are immediately incorporated in the architecture vision. Changeability is improved because architects know what parts of the business are most likely to change, he can – together with other stakeholders – make decisions that are facilitating this change or at minimum not creating upfront barriers that would make responding to these changes hard.
What does it bring the organizations when the architects are always involved? First: The priorities are set correct. Both from business and project side architects are fed with priorities and they can now make a balanced decision: on what should they focus now? Impediments that prevent (or shortly will) projects from making progress are on the architects radar. So are the latest market or organizational developments from the business side. Because the architects are constantly fed with information from all stakeholders and results of choices made earlier by themself, subsequent decisions will be based on real world facts/experience and not on theoretical assumptions.
This was the second in a series of blog posts on Lean Architecture principles, the next one will follow in about a week.

This is the second of a series of blog posts discussing Lean Architecture principles. Each post will discuss one principle and applying these principles will result in an architecture (process) that is better connected to the business, better able to deal with change and more cohesive. The first principle that we discuss applies to the architect role and is called “Always Involved“. The architect role is not limited to one project phase or even one project, a good architect takes a much broader perspective. The Lean Architect constantly communicates with all stakeholders (from business till operations), plays an active role in running projects, and ensures that lessons learned in projects are known and where applicable used in other projects.

Read more →

Top 10 SOA Pitfalls: Wrap-up

The Top 10 SOA Pitfalls countdown hit #1 last week with Rik de Groot’s post on “Ignoring culture when introducing SOA“, time for a wrap-up.

Putting all pitfalls together in one simple 10 item list quickly reveals a grouping of types pitfalls. Number #1 and #2 are both related to organizational aspect. If the culture, mindset and attitude are not right, these are typically the pitfalls that a SOA endeavor may run in to. The next group covers the items #3 till #7, these are all related to architectural/design skills. And the last group, numbers #8 till #10, relates to implementation issues (although proper design could help to prevent these pitfalls from manifesting themselves).

Read more →

Top 10 SOA Pitfalls: #4 – Incorrectly applied Canonical Data Model

Last week Vincent explained the BDUF Pitfall en this week we’ll continue with #4: Incorrectly applied Canonical Data Model (CDM).

CDM is one of the silver bullets often fired in SOA projects. It should address miscommunication, ease integration and reduce integration costs. It surely can facilitate all of this, but attempts to use a CDM can also turn your SOA project into an endless discussion because one attempts to cover too much, because of a lack of alignment with business and because of a lack of design principles.
Read more →

Top 10 SOA Pitfalls: #7 – Incorrect granularity of services

After discussing #8: Security, let’s move on to #7.

Incorrect granularity could mean that a service covers too much functionality or too little functionality. Incorrect granularity of services in your SOA can lead to bad performance, low reuse possibilities, leaky abstractions and services without added business value. . Common causes for this are bottom-up and/or top-down design and taking a too narrow perspective (project instead of company scope). In this blog we’ll first take a closer look at the previously mentioned symptoms and their causes. And then we’ll explain why the solution lies in taking a business perspective when designing services.
Read more →

Order Management in Converging Environments

Last week I visited the TelemanagementWorld conference and with Andreas and John we did a session to explain why the Order Management API is perfect for converging environments like Telco, Cable, ISP, Mobile. The presentation can be downloaded from the TMForum web-site (session SYS33). But, because it is only accessible to TMForum members or a visitors of the conference, I’ll provide a summary below.

Read more →