• DocumentCode
    1689592
  • Title

    Static and dynamic structure in design patterns

  • Author

    Eide, Eric ; Reid, Alastair ; Regehr, John ; Lepreau, Jay

  • Author_Institution
    Sch. of Comput., Utah Univ., Salt Lake City, UT, USA
  • fYear
    2002
  • Firstpage
    208
  • Lastpage
    218
  • Abstract
    Design patterns are a valuable mechanism for emphasizing structure, capturing design expertise, and facilitating restructuring of software systems. Patterns are typically applied in the context of an object-oriented language and are implemented so that the pattern participants correspond to object instances that are created and connected at run-time. The paper describes a complementary realization of design patterns, in which many pattern participants correspond to statically instantiated and connected components. Our approach separates the static parts of the software design from the dynamic parts of the system behavior. This separation makes the software design more amenable to analysis, thus enabling more effective and domain-specific detection of system design errors, prediction of run-time behavior, and more effective optimization. This technique is applicable to imperative, functional, and object-oriented languages: we have extended C, Scheme, and Java with our component model. We illustrate our approach in the context of the OSKit, a collection of operating system components written in C.
  • Keywords
    object-oriented languages; object-oriented programming; operating systems (computers); software reusability; C; Java; OSKit; Scheme; design expertise; design patterns; domain-specific detection; dynamic structure; object instances; object-oriented language; operating system components; pattern participants; run-time behavior; software systems restructuring; static structure; statically instantiated components; system behavior; system design errors; Cities and towns; Java; Monitoring; Object oriented modeling; Operating systems; Permission; Runtime; Software design; Software maintenance; Software systems;
  • fLanguage
    English
  • Publisher
    ieee
  • Conference_Titel
    Software Engineering, 2002. ICSE 2002. Proceedings of the 24rd International Conference on
  • Conference_Location
    Orlando, FL, USA
  • Print_ISBN
    1-58113-472-X
  • Type

    conf

  • Filename
    1007969