Wednesday, July 22, 2009

Rational Unified Process and our life

The software engineering community is constantly evolving its best practices in order to develop software that is within budget, within allocated time and within specified effort. We have come a long way from the earlier slam-dunk lifecycle to the present day Rational Unified Process (RUP). But the quest to deliver software to the clients according to the above mentioned goals still remain.Our lives, like the lifecycle of any software development project have phases. The RUP for instance has four phases - Inception, Elaboration, Construction and Transition.

We have four phases in life too - Balya (childhood), kaumarya (youth), Grihasta (Married life) and Vanaprastha (ascetic life). Now the question arises, 'why did we discard the slam-dunk life cycle?' The answer is crystal clear. The slam-dunk life cycle does not allow past mistakes to be remedied. The same way it is better if we adopt an iterative and incremental approach to life. You may ask what an iterative process like RUP got to do with life? I say that an iterative process allows you to reflect on your past deeds and allows a chance to a person to prevent similar mistakes in his or her next phase in life.Now let us consider the goals of the various phases in RUP. The primary goal of Inception Phase is to establish the case for the viability of the proposed system. Similarly our childhood phase is a struggle to live healthy.

It is a crucial phase in our lives and studies show that a baby is fortunate enough if it can live the first five years of its life without health problems. Next is the Elaboration Phase. The primary goal here is to establish the ability to build the new system given the financial constraints, schedule constraints and other kinds of constraints the new system faces. Our youth phase is such. During this phase of our life, we are exposed to the vagaries of life for the first time. One has to develop character in this phase in spite of external influences. Construction Phase is next; the primary goal here being to build a system capable of operating successfully in beta customer environments. Our Married life is such a phase. It ideally should prepare us for the next phase, which is the Transition Phase. The goal of transition phase is to roll out the fully functional system to customers. Our Ascetic life is such. Only when we reach that phase of life are we fully complete by all respects. Think about it and renew your commitments to fully utilize the phases of life. HAPPY LIVING!!!

No comments: