Engineering SOA with reusable assets.
eoinlane 11000078H8 Tags:  reusable-assets soa consumability assets context pattern asset-consumability patterns content 1,713 Visits
”Ireland is the last country in Western Europe that is still throwing roads ata traffic congestion problem” was one statements I remember hearing from mychildhood. Back then I could not understand why more roads would not solvea traffic problem however as I traveled the world and had the opportunity ofliving in cities like LA, NYC, Boston and London, it became painfully obviousthat more roads was not the solution. The solution then becomes how do webetter utilize the existing transportation infrastructure? Put more simply howdo we do more with less?
Recently at a future of application development conference in NYC a leadarchitect from a world bank echoed these exact same sentiments but this timeapplied to application development. Now this is a major global bank and theirlead architect was telling us that the last thing he wanted, to ﬁx their problemswith application development, was to throw more developers at it. Again on ﬁrsthearing this statement it seems counter intuitive but just like the roads problemabove on deeper reﬂection it makes more sense. The problem, with applicationdevelopment, is the steep learning curve needed to bring these developers upto the point of where they can be productive. Application development, in aradically changing IT landscape, irrespective of the programming model used innot easy. This quickly becomes a problem of managing complexity, a problemthat will only get worse tomorrow as this complexity increases. However as withthe road problem the solution is similar but ﬁrst let us pose the proper question.How do we better utilize and empower the existing staff to be more productive?
To better utilize and empower the existing staff we need to move themto an asset based development model. The maintenance of, reuse of, andenablement of these assets (in this case software development assets) is coreto managing the complexity inherent in application development today. Theseassets need to introduced as early as possible in the life cycle to maximize theirbenefit and their impact and these assets need to constantly be maintained andupdated to help maximize their reuse and impact.
In future blog entries will look to understand the types of assets used in applicationdevelopment and to understand the context in which these assets are used.Using this context as guide, we can suggesting the best asset to be used in a particular context to the end user. In the next entry we will first examine three typical types of assets used in application development today,industry model assets, software patterns assets and legacy assets.
eoinlane 11000078H8 Tags:  soa content assets context pattern asset-consumability patterns reusable-assets consumability 1 Comment 2,194 Visits
Another colleague and friend of mine Celso Gonzalez and I have just published a paper on dW Rational Edge on some of our thoughts around enabling asset consumability. Here is the abstract
Enterprises are often good at producing or creating assets and artifacts but are typically very bad at reusing them. This article describes a way to facilitate asset and artifact consumption by better understanding the context in which they are used.
The full text can be found in the July issue: Enabling asset consumability: Is your wardrobe good, bad, or ugly?
eoinlane 11000078H8 Tags:  assets patterns soa context asset-consumability reusable-assets pattern web-2.0 content consumability 2,089 Visits
eoinlane 11000078H8 Tags:  soa reusable-assets context asset-consumability consumability patterns pattern assets content 1,609 Visits
I live a charmed life where my wife and I get to drive to worktogether. The drive is about 40 minutesfrom where we live to where we bothwork in Cambridge Boston. Becauseof all of this quality time we oftenget to talk about what we are doing.So one day last week I was tryingto explain to her some of my ideasaround mapping of 'context to content'. Mywife does not suffer my nonsenseeasily and told me that thisstatement made no sense to her.In an effort to explain I gave hera driving analogy since we werealready is an automobile.
Behind the wheel of a car I amin a driver context and inthis context I need access todriver related information and tooling suchas my speed, the condition of myengine, weather conditions, a GPS device, roadconditions, including this particularroad's speed limit (i.e. the car's context) etc.
This is an example of 'context to content'.I am in a driver context and Ineed access to the driver relevant and related content.
As a Software developer or a consultanton an engagement I am again in acertain context. The context is nowgiven by the scope of the projectand the functional and non-functionalrequirements for that particularproject. This context can alsobe mapped to content to betterhelp me do my job. For example on insuranceproject there may be a functionalrequirement around creatinga claims system. Here thefunctional requirement can be mapped to reusable software assets suchasan insurance UML model of aclaim system. A nonfunctionalrequirement on the other hand suchas a transactional claims system can maps to another typeof reusable software asset such asa software pattern assets to helpme made consistent architecturaldecisions.
The question now becomes how we do automate this context to contentmapping for developing software in a consistency manner to allowbetter consumabitity of reusable assetsuch as models and patterns?
The problem with implementing sucha vision is that we quickly run intowhat I call the two bucket problem.But more about that in my nextblog entry :).[Read More]