-The second distinguishing aspect of RUP is that it - -2
-is architecture-centric. As we saw in the first lesson - -3
-of this mini-course, a software architecture is a view - -4
-of the entire system that represents all high level - -5
-principal design decisions. Another way to see this is - -6
-by saying that use cases define the function of - -7
-the system, where as architecture defines the form of - -8
-the system. Use cases give the functionality, architecture tells - -9
-you how the system should be structured to provide the functionality. - -10
-So how do we define a software architecture in the rational - -11
-unified process. Also in this case this happens through - -12
-a sort of a iterative process. We start by creating a rough - -13
-outline of the system. And in this case we do it - -14
-independently from the functionality. So this is just the general structure - -15
-of the system. For example, we model aspects such as the - -16
-platform on which the system will run, the overall style. For example, - -17
-whether it's a client server or a peer to peer - -18
-system and so on. We then use the key use cases - -19
-in our use case diagram to define the main subsystems of - -20
-my architecture. For example, in the case of a banking IT - -21
-system, one of these subsystems might be the withdrawal system. So - -22
-what will happen in that case is that we will have - -23
-some use case that refers to the withdrawal activity, and by - -24
-analyzing that use case, we'll realize that we need a subsystem - -25
-that implements that piece of functionality. So again, we use - -26
-the key use cases to identify and define the key - -27
-subsystems for my architecture. So once we have that we - -28
-keep refining the architecture by using additional use cases. So - -29
-considering more and more pieces of functionality that will help - -30
-us to refine the architecture of the system and also - -31
-leveraging our increasing understanding of the system that we're modeling. - -32
-And this will continue until we are happy with the - -33
-architecture that we define. -- cgit 1.4.1