0
3.0kviews
What is mapping problem in implementation? What is the difference between one way and round trip mapping?

Mumbai University > Computer engineering > Sem 7 > Software Architecture.

Marks: 8 M

Year: Dec14, May14

1 Answer
0
65views

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:

  • Components and Connectors: The partitions of application computation and communication functionality are mapped to the implementation-level modules, packages, classes, etc.
  • Interfaces: Interfaces specified similar to that of programming language level are easier to implement.
  • Configurations: These are often linked graphs which specify interconnections, references or dependencies between functional partitions.
  • Design rationale: it is retained in comments and other documentations.

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.

Please log in to add an answer.