Illustrate the view of software architecture
A model is a semantically closed abstraction of system composes of elements. It can be visualized using any of the following five views:
a. Logical view - This view is concerned with functional requirements of system. It is used early in elaboration phase with creation of class and packages using a class diagram which can reflect strategic dimension of the system.
b. Implementation view - This view focuses on actual software module organisation within developmental environment. It comprises of taking the derived requirement, software management, constraints, and reuse imposed by program tools. The physical partitioning is done in this phase.
c. Process view - This involves runtime implementation structure of system. It include requirements such as performance, scalability, reliability, synchronization, integrity etc. Executable components are used here to indicate runtime components to map classes for example java applet, activeX component or DLL.
d. Deployment view - This view presents mapping software to process nodes showing configuration of runtime processing elements. It takes into account, requirements such as reliability, availability, scalability and performance. Main issues here are processor, speed, architecture; along with inter process communication, distributed facilities and bandwidth.
e. Use case view - This view addresses and validates logical, component, process, and deployment view.
Figure: 4+1 View of Software Architecture