Separation of Non-Orthogonal Concerns in Software Architecture and Design (bibtex)
by ,
Abstract:
Separation of concerns represents an important principle for managing complexity in the design and architecture of large component-based software systems. The fundamental approach is to develop local solutions for individual concerns first, and combine them later into an overall solution for the complete system. However, comprehensive support for the integration of interdependent, possibly conflicting concerns related to behavior is still missing. In our work, we propose a sound solution for this complex type of composition, employing well-known UML description techniques as well as a rigorous formal model of component behavior. Based on this foundation, we describe a constructive synthesis algorithm which reliably detects conflicting concerns or generates a maximal behavior for software components with multiple interactions. An optimized implementation of the algorithm has been integrated into a CASE tool to illustrate feasibility and scalability of the presented technique at the example of a moderately large case study.
Reference:
Separation of Non-Orthogonal Concerns in Software Architecture and Design (Holger Giese, Alexander Vilbig), In Software and Systems Modeling, Springer Verlag, volume 5, 2006.
Bibtex Entry:
@Article{Giese&Vilbig2006,
  AUTHOR = {Giese, Holger and Vilbig, Alexander},
  TITLE = {{Separation of Non-Orthogonal Concerns in Software Architecture
  and Design}},
  YEAR = {2006},
  MONTH = {June},
  JOURNAL = {Software and Systems Modeling},
  VOLUME = {5},
  NUMBER = {2},
  PAGES = {136 - 169},
  PUBLISHER = {Springer Verlag},
  ABSTRACT = {Separation of concerns represents an important principle
  for managing complexity in the design and architecture of large
  component-based software systems. The fundamental approach is to
  develop local solutions for individual concerns first, and combine
  them later into an overall solution for the complete system. However,
  comprehensive support for the integration of interdependent, possibly
  conflicting concerns related to behavior is still missing. In our work,
  we propose a sound solution for this complex type of composition,
  employing well-known UML description techniques as well as a rigorous
  formal model of component behavior. Based on this foundation, we
  describe a constructive synthesis algorithm which reliably detects
  conflicting concerns or generates a maximal behavior for software
  components with multiple interactions. An optimized implementation
  of the algorithm has been integrated into a CASE tool to illustrate
  feasibility and scalability of the presented technique at the example
  of a moderately large case study.}
}
Powered by bibtexbrowser