written 8.5 years ago by | • modified 8.5 years ago |
Mumbai University > Computer engineering > Sem 7 > Software Architecture.
Marks: 8 M
Year: Dec14, May14
written 8.5 years ago by | • modified 8.5 years ago |
Mumbai University > Computer engineering > Sem 7 > Software Architecture.
Marks: 8 M
Year: Dec14, May14
written 8.5 years ago by |
Implementing architecture is a problem of mapping design decisions to specific implementation constructs that realize those decisions. Mapping is a form of traceability. The term traceability can refer to any mechanism for connecting different software artifacts. In architecture-based development, choosing how to create and maintain this mapping is critical.
Maintaining mapping means ensuring that our architectural intent is reflected in our constructed systems. Common mapping elements are:
Architectures and implementations must co-evolve. Architectures can evolve because of changing requirements or increased understandings and these changes must propagate to the implementation. Similarly, the changes made during implementation should affect the architecture. It is a challenging problem to keep architecture and implementation in synchronization because of issues like tool support organizational culture, etc. Maintaining the architecture-implementation mapping during the face of change depends on the process of change. One method is to mandatorily make the changes to the architecture first, map them to implementations and then update the implementation through the use of automated tools or manual processes. This is effectively a one-way mapping. Another way is to allow changes on either the architecture or implementation. Further the automated tools are used to update the other artifact. This is a two way mapping. Two way mapping are better for detecting and resolving architectural drift and erosion but they are complex and expensive to create and maintain. This is known as round-tripping problem because changes have to be mapped from architecture to implementation and back again.