Search My Blog & Website

Wednesday, August 12, 2009

Patterns: What Are They? Part 1

Literally patterns are defined as a combination of qualities, items, objects, behaviors, or other which form a consistent or characteristic arrangement. We observe dozens of daily patterns every day. Examples are teen behavior, the movement of the earth around the sun, the blooming of flowers and hundreds more.

"A combination of qualities, items, objects, behaviors, or other which form a consistent or characteristic arrangement"


Patterns are not new to man-kind, the Creator has informed us about patterns in the Quran and other earlier revelations. Recently system developers started to analyze the concept of patterns, pioneered by Christopher Alexander in his book, " A Timeless Way of Building", he defines a pattern as a three-part rule, expressing a relation between a certain context, a problem and a solution.

Patterns are a first step in understanding root causes of the problem within a specific context. It also allows the development of architectural and solution building blocks.

"In systems realization, patterns express a relationship between a problem and its solution within a given context"
For a software designer some pattern examples are: Message Translators, Process Managers, and Proxies to mention a few. A process manager pattern for example will comprise of a sensor to detect an incoming message which initializes the process manager. The process manager in turn executes a set of rules stored in the process manager memory implementing the processing rules, and detects the subsequent steps through a status feedback detector/analyzer.

Considering a different domain, take the example of a group that does youth trips, examples of patterns could be: Headcount Process, Critical Supplies, Meal Managers, Activity Itinerary Manager and many more. An Activity Itinerary Manager pattern will comprise of an input process to capture developmental and coaching themes/needs of the youth trip, a search process to match the theme to a group of activities that meet the objectives of the theme from a repository of activities, the selected lists of activities could then pass by the activity processor which breaks down the activity into steps, each assigned to resources, a lead, a cost structure, risk factor and plan of action. Feedback from the actual deployed activity is then finally fed back into the activity manager for updates to the activity definitions and other relevant areas, within quality expectations.

_____________To Read More _______________

(1) Hohpe and Woolfe, "Enterprise Integration Patterns: Designing, Building and Deploying Messaging Solutions", Addison Wesley signature Series, 2004.

(2) Haskins and Raveh, "Introduction to Patterns Through Writing Systems Engineering Patterns", 16th Annual International Symposium, 2006.

(3) Gross and Yu, "From Non-Functional Requirements to Design Through Patterns".

Tuesday, August 04, 2009

The Spark ...


Teamwork is touted as the driver behind progress. This is not necessarily true. There is no doubt that teamwork is a fact of life. As humans we have to interact with one another to satisfy our human needs and desires such as socializing, belonging to a group identity, sustaining needs of life among many others.

Effective teams need leaders to align them and give them direction and motivation. The spark that makes groups and societies move is the outcome of individuals. These sparks ignite the team and thrust its members forward, but the team members do not necessarily produce any starting sparks. As Igor Sikorsky once said,

"The work of the individual still remains the spark that moves mankind ahead, even more than teamwork"

If you find yourself on a team, organization or society, with higher levels of motivation, vision and commitment than others, don't despair, that means you are a leader. As a leader you can not work alone, sparks don't develop into fire without a catalyst, and your team is your catalyst. Nurture, coach, and develop the team, and it will be a strong catalyst.

It was once said that a small group are the ones carrying the ambitions of the nation, and a group of those are the ones who sacrifice their time and wealth to accomplish these ambitions, and a group of that smaller group are the ones who sacrifice their lives for the sake of succeeding in the accomplishment of these ambitions. A small group, from a small group, from a small group.

"A small group, from a small group, from a small group"

______________________

Picture: Courtesy of NASA: The formation of a star, A molecular cloud is a region containing cool interstellar gas and dust left over from the formation of the galaxy and mostly contains molecular hydrogen. The Spitzer data, in red, green and blue shows the molecular cloud (in the bottom part of the image) plus young stars in and around Cepheus B, and the Chandra data in violet shows the young stars in the field. http://www.nasa.gov/mission_pages/chandra/multimedia/photo09-062.html.