It divides the development process into four distinct phases that each involve business modeling, analysis and design, implementation, testing, and deployment.
Display Models Publicly UP teams are free Rational unified process follow this practice. UP teams can turn the communication dial up a notch by following the principle of Open and Honest Communication by making all artifacts available to everyone as well as to publicly display the critical models used by the project team.
Formalize Contract Models The UP includes the concept of integrating with external systems, these systems are typically identified on use case models and the RUP suggests introducing "boundary classes" to implement the interface to these systems.
At the time of this writing the RUP appears weak with respect to activities such as legacy system analysis and enterprise application integration EAI. The explicit adoption of this practice clearly strengthens the UP's integration activities and fits in well with it's concepts of use case realizations - the interaction between systems could be specified with one or more use cases and then the corresponding use case realization would be the formalized contract model.
As mentioned previously, the unfortunate depiction of UP modeling activities as quasi-serial processes and the division of modeling activities into separate disciplines can hinder the iterative mindset required of agile modelers. Model in Small Increments This practice is clearly an aspect of the UP - the UP's support for iterations implies that you will be incrementally developing your model throughout your project.
UP teams can easily turn the iterative and incremental dial up a few notches by preferring smaller, simpler models that quickly lead to implementation and testing.
Every modeling discipline clearly includes several roles, each role being filled by one or more people. UP teams can turn the communication dial up a few notches by adopting tools that Rational unified process team modeling, such as whiteboards and collaborative modeling tools see the Communication article over single-user modeling tools.
At the end of every iteration, except perhaps for the ones during the Inception phase, the UP specifically states that you should have a working prototype. Furthermore, the UP insists that you have a working end-to-end prototype at the end of the Elaboration phase that proves your architecture.
UP teams can turn the reuse dial up a few notches by actively preferring to reuse existing resources instead of building them from scratch, including but not limited to existing models, existing components, open source software OSSand existing tools. Single Source Information There is no reason why you cannot store information in a single place when following the UP.
Unfortunately, many organizations choose to instantiate the RUP in a documentation-driven manner which IBM Rational clearly advices you not to doand as a result they travel very heavy and clearly take a multi-source approach. Update Only When it Hurts In theory this can be an easy concept for UP teams to adopt as it dramatically reduces the effort expended to keep your artifacts up to date.
However, in practice many organizations prove to have a problem with this concept, particularly if they have a strong "traceability" culture. Traceability is the ability to relate aspects of project artifacts to one another, the support for which is a strong feature of the UP as it is an important aspect of its Configuration and Change Management discipline.
Furthermore, the RUP product includes tool mentors for working with Rational RequisitePro, a requirements traceability tool, making it appear easy to maintain a traceability matrix between artifacts.
My experience is that organizations with traceability cultures will often choose to update artifacts regularly, even if it isn't yet painful to have the artifacts out of date, and update the traceability matrix relating everything to one another.
To turn their productivity dial up several notches UP teams should choose to travel light, to loosen up a bit and allow project artifacts to get out of sync with one another, and to maintain a traceability matrix between artifacts only when there is clear benefit to do so AND their project stakeholders understand the issues involved as well as authorize the effort.
A traceability matrix is effectively a document and is therefore a business decision to be made by project stakeholders. However, the reality is that UP teams are welcome to use any development tool that they want and Rational tools compete on their merits just like the products of any other company.
UP teams can turn their productivity dial up several notches by expanding their horizons to include simple tools such as whiteboards, index cards, and Post-It notes in addition to CASE tools.
Something that is important to understand is that for AM to be successful the culture of your organization must be open to the concepts, values, and principles of agile software development. The problem is that the UP is often adopted by organizations that either implicitly or explicitly do not accept the values of agile software development.
Their focus is often on following processes and using tools, the RUP product clearly defines many processes and describes how to apply Rational's tools effectively on software projects, and therefore the RUP is clearly attractive to them.
Unfortunately this goes against the agile value of preferring individuals and interactions over processes and tools. When the culture of an organization is documentation centric they may find the UP appealing because you can instantiate it in such a way as to result in the creation of significant amounts of documentation you can also instantiate it to result in very little documentation, remember, the UP is flexible.
If an organization is documentation centric then this aspect of its culture goes against agile software development's value of preferring working software over comprehensive documentation. This organization may still successfully adopt, tailor, and instantiate the UP but be unable to follow many of AM's principles and practices effectively because it does not have an agile culture see the article When Does n't AM Make Sense.
My point is that how well AM and UP will fit together in your organization depends largely on your organization's culture and not so much on the UP itself.
You can easily use the techniques of AM to improve your UP modeling efforts, but to be effective you will find that you need to overcome cultural challenges within your organization.
Wayne Enterprises In early I was involved with a development project at Wayne Enterprises, the name has been changed to protect the innocent, a medium-sized financial institution.Stands for "Rational Unified Process." RUP is a software development process from Rational, a division of IBM.
It divides the development process into four distinct phases that each involve business modeling, analysis and design, implementation, testing, and deployment. The Unified Software Development Process or Unified Process is an iterative and incremental software development process framework.
The best-known and extensively documented refinement of the Unified Process is the Rational Unified Process (RUP). Other examples are OpenUP and Agile Unified Process. The Rational Unified Process (RUP) is an iterative software development process framework created by the Rational Software Corporation, a division of IBM since Feb 23, · Rational Unified Process - Georgia Tech - Software Development Process (Rational) Unified Process vs Waterfall Model videos Play all Software Development Process.
All efforts, including modeling, is organized into disciplines (formerly called workflows) in the UP and is performed in an iterative and incremental manner. The lifecycles of the AUP and EUP are presented in Figure 1 and Figure 2 respectively.
The AUP is a subset of the RUP and the EUP a superset. How Modeling Works in the Unified Process All efforts, including modeling, is organized into disciplines (formerly called workflows) in the UP and is performed in an iterative and incremental manner.