By Marco Heerebout. I use this blog with a focus on my profession and related subjects and opinions. I'm active in the field of system development and software engineering, applying and mentoring Agile principles and Scrum, most of the times in a leading role or as Scrum master.

Showing posts with label soa. Show all posts
Showing posts with label soa. Show all posts

Friday, August 7, 2009

Find out what this is...


This picture can be machine read (even a mobile phone). But what is it?

Wednesday, March 4, 2009

SOA and complexity

SOA was the next generation of the modern solutions in IT, right? Yes it is, but why?

SOA is a rather vague architecture of how to create an very manageable, flexible infrastructure for all your current and future applications. But what's the SOA best practice. Ask the big SOA-package providers and they all offer a kind of similar story. It's always easy, connecting applications can be done in a snap and BPM and BAM will make life easier. If you create and follow the right plan and have a clear vision of the measurable goals, then you could get there. I really don't want to sound cynical, but bigger IT systems are complex [period]. And a SOA infrastructure may not pay off for the smaller IT systems. So SOA means complexity!

Complexity is not the same as "impossibly". Manageable complexity is what it's about. Enough cases do exist where the complexity may not be simplified. That's too bad, but make sure it's manageable! Unmanageable complexity results in unexpected problems, misuse and higher costs and may even create business risks.

Lowering the complexity starts with the awareness that SOA is a way to optimize your organization and therefore your business. SOA probably will not pay off if the business won't benefit from it.
(Of course enough people will try to use SOA as a technology replacer, but then the replacement will lower costs and provide new/extra features. I think that the business case will not benefit the business but may lower costs (especially when mutli-vendor middleware is being replaced). This happens of course, but that's not what my current blog story is about!)

So my advise... SOA is not a bad idea but is also not very new. The SOA term, terminology and current open standards provide never seen before integration possibilities (you remember CORBA?).
So.. At least think about the needs, the complexity, the manageability and make sure it's going to deliver value (preferably to the business).

Monday, October 20, 2008

Use the current crisis to become agile and maybe make the SOA step

Now is the time to stop thinking about making a step to become agile and just do it. Why? It's simple, now is the time to improve your business, processes etc and make the steps that were desperately needed. Use the crisis to grow and become stronger and better then before and beat the competition now, they are struggeling now and thinking about how to survive.

Don't just cut costs. That won't make your business better. Focus on value, remove waste and remove blocking issues/obstacles. Cutting costs by cutting/decreasing staff may seem logical because a lot of costs are made there. But on the other hand, that's also where the value is created, for your clients. You want to serve your clients (and new ones) so try to provide more value instead of less, otherwise you may loose them and that requires making additional steps. Prevent the negative spiral and step into making progressive improvements...

Raise productivity, raise the quality... Deliver the best value, fast and for a very good price. But how? Go agile! Agile methods can cause changes in an organizations culture and positively change habits: everyone will adopt the idea of always delivering high value, high quality, quickly and keep always improving that. Those are the main goals of going agile. And how does that impact motivation... for free? The motivation should go up and may end in a super team, sometimes even hyper productive teams. Who doesn't want to have that?

Besides becoming better, it's a perfect way for customers to control spendings. Especially in the software development and delivery business, it's possible to deliver iteratively. Delivering high quality and quickly.... that will also improve the relationship between IT and business staff which gives additional opportunities.

Talking about opportunities... implementing and effectively utilizing SOA is one of them!

I looked at SOA from different perspectives. One of them is to create agility. With agility I mean that the business and organization are able to react and/or change within weeks/months instead of quarters/years (of course everything is relative, but I'm not talking about huge airplanes or rockets. It's about "very competitive" versus "too slow"). Suppose a customer has a request which fits your business perfectly but you're not able to provide the service/product right now. And suppose you think you should be able to... How long would it take to be able to actually deliver a high quality and fitting service/product? When you're agile it takes you something in the order of weeks/months to deliver the first potential shippable product(s) or service(s), not longer. SOA in this case facilitates in (re)useable services and infrastructure, so you're easily a few steps ahead of traditional practices, "out of your SOA box"!

One of the other perspectives is about fitness. IT fitness to be specific. SOA could help to improve your architecture and makes your IT fitter. Most bigger companies have an architecture which needs fixing. But the advise in most cases is: keep the hands off, you can't fix it. Theses types of architecture are too complex and ill-planned. SOA implementation could start from any point and that means making your IT fitter from the start. A fit IT architecture nowadays is really a requirement to become agile. Removing waste and obstacles is an activity here before (more) value can be created. Implementing a SOA requires that you should remove waste and obstacles, otherwise SOA may only add costs instead of resulting in a positve ROI.

No wonder... Agile and SOA seem to be very related. If you do it the right way and that seems not very easy, as most bigger and smart initiatives aren't! My message of this blog to you: choose to improve your organisation by becoming agile and think about combining that with a SOA. Instead of cutting costs...

Beat the crisis! Agile and SOA help you!