Relationship between RUP and Agile Methodologies

4

I see some books considering RUP as agile and others not. The more traditional books do not consider it agile, which sounds more correct because historically it did not appear in the "boom" of the agile manifesto and there are sister metologies to it that look for more agile aspects in the process, like the UP Agile. If RUP is not equivalent to an agile method, what is lacking in it? Is it possible to approach it in a more agile way?

    
asked by anonymous 10.05.2017 / 15:15

1 answer

3

RUP is iterative, incremental, and in many ways looks like an agile methodology, but in many others it is different from any agile methodology. I'll be listing below the points:

Number of artifacts

The book "Using UML and Patterns", by Martin Fowler to understand object-oriented design, says "The PU was not intended by its creators to be cumbersome or non-agile, appearing in its large OPTIONAL set of activities and artifacts have understandably led some to have that impression. Rather, it was meant to be adopted and applied in the spirit of adaptability of lightness - an agile PU. "

So, originally the UP was not interested in inserting in the process a large number of artifacts. It merely suggests the possible artifacts to be used. In some other parts of the book it is said that if you want to use other artifacts, running away from those suggested, that's fine. That is, there is no rigidity as to the number and type of artifacts, only indications.

The major problem is UP implementations, such as the RUP, have in some way forced a large number of artifacts throughout its process and this differentiates it from agile methodologies that usually employ agile modeling with its principle of documenting only when you need to communicate more specifically.

Iterations have all phases of the methodology

RUP OBS : There are 4 phases, Conception, Elaboration, Construction and Transition. Each phase is composed of objectives and several iterations that will make this goal achieved through applications of disciplines that correspond to Analysis, Planning, Modeling, Development and Testing.

Agile methodologies have all iterations in their iterations (Analysis, Planning, Modeling, Development and Testing), that is, iterations are complete processes that will result in functional requirements. In the RUP, in each iteration will be applied disciplines that correspond to these stages described above, however, the level of application depends on the focus of the phase that the iteration is taking place. For example, in the Elaboration phase, disciplines related to modeling will appear with greater application in the iterations, but this same discipline does not have great application in the iterations of the Transition phase.

Scope

It is well known that in agile methodologies the scope is not defined previously or completely at any stage. In the RUP there is a great focus on defining the scope in the first phase of the methodology, which is the Conception phase. Although the RUP preload information feedback throughout the process to refine the requirements throughout the process, the Conception phase brings a greater focus to the definition of prior scope, which runs away from the characteristics of an agile methodology.

Finally, Is it possible to approach it in a more agile way? . It is not difficult to approach the RUP as a more agile view. It is enough to return some concepts of the UP in the RUP, such as the malleability in the artifacts and make the Conception phase a little more open as the definition of the scope. What I believe to be more difficult is trying to reduce the focus of each phase and iteration, approaching in each one more of the whole process and making them more complete.

    
10.05.2017 / 15:15