Open Source

Rational Unified Process

Body content of Rational Unified Process
Rational Unified Process (RUP) is a software product that defines a set of development methodologies that, if followed ensures the creation of quality products. The RUP product provides help on every aspect of the software development activity and process, in the form of guidelines, descriptions, HTML and documentation templates. RUP can be adapted and customized according to the requirements and scope of the project.
RUP is based on UML (Unified Modeling language) – a modeling language that enables the creation of models/views to provide better understanding of the project being developed.
Phases
RUP defines four phases for a development cycle. These include the following:

  • Inception Phase: In the inception phase stage a project feasibility study is conducted. The business case and project plan are created.
  • Elaboration Phase: The elaboration phase involves the designing of the system architecture. The development plan for the entire project is also drawn up in the elaboration phase.
  • Construction Phase: The actual coding of the various modules of the application is done in the construction phase. At the end of the phase the product is ready for release.
  • Transition Phase: In the transition phase, the software application is handed over to the end user for testing.

Principles
The following principles form the basis of the Rational Unified Process methodology:

  • Process Adaptation: The RUP process must be adapted as per the needs of the project.
  • Balance stakeholder needs: According to this principle there should exist a balance between the business goals and stakeholder needs. This involves identifying the business processes and linking them to software capabilities, prioritization of the requirements, creating business use cases etc.
  • Collaboration across teams: This principle states that there should be proper collaboration and communication between team members in order to improve productivity and development.
  • Demonstrate value iteratively: The delivery of the project happens in multiple iterations. In order to reduce risk for each iteration proper analysis and prioritization is required. Feedback from stakeholders after every iteration can help in improving the development of the project.
  • Elevate the level of abstraction: This principle states that the level of complexity should be reduced in order to improve productivity. According to this principle reusable components should be used while coding.
  • Focus on quality: Quality checks should be performed on a continuous basis thereby leading to higher quality of products.

Recommendations

Working with Icreon has been a wonderful experience. I would like to commend the team for their efforts- in spite of being unfamiliar with the industry the team showed remarkable understanding of my demands which translated into delivery of a class website. I was impressed with Icreon's attention to detail. Before the development process began the team came up with a very detailed project specification - ensuing that both of us were on the same page. In developing the website the specifications were well adhered to - though the team was open and flexible enough to adapt to changes that we wanted! All in all I would like to thank the team for the unwavering dedication in ensuring that the website was delivered on cost and as per schedule


Asheesh Sharma
CMDHealthypeach