Monday, October 08, 2007

Being everything to everybody

One of the regular mistakes I see on an almost day-to-day basis is the aim of many systems to be everything to everybody. A user always wants more and that's a nice trigger for vendors to let their systems grow.

Usually packages originate from a single functional requirements and over time more and more gets added to the scope. In the background there is also this drive related to 'if you have a hammer, than everything looks like a nail' (that's also why SAP systems grow beyond what they were intended for ...).

One of the key roles of an architect is to keep the scope of systems close to what they were intended to and avoid the scope-creep causing overlapping functionalities. It is not always a popular message, but it avoids a lot of spagghetti and wildgrowth. At the same time it is important to be not too harsh - sometimes new paradigms can flower under the wings of something else and can suddenly create a lot of value. Just like the Internet was never designed for what it's used for today ...


So how to keep this balance? I guess it is at the end of the day all a matter of judgement - some flexibility at one side (let the flowers bloom) and some rules at the other (start pruning when needed). There are no simple answers in architecture!

Labels:

0 Comments:

Post a Comment

<< Home