Behavioral Reflexion Models for Software Architecture

dc.contributor.advisorCleaveland, Ranceen_US
dc.contributor.authorAckermann, Christopher Florianen_US
dc.contributor.departmentComputer Scienceen_US
dc.contributor.publisherDigital Repository at the University of Marylanden_US
dc.contributor.publisherUniversity of Maryland (College Park, Md.)en_US
dc.date.accessioned2010-10-07T05:55:16Z
dc.date.available2010-10-07T05:55:16Z
dc.date.issued2010en_US
dc.description.abstractDeveloping and maintaining software is difficult and error prone. This can at least partially be attributed to its constantly evolving nature. Requirements are seldom finalized before the development begins, but evolve constantly as new details about the system become known and stakeholder objectives change. As requirements are altered, the software architecture must be updated to accommodate these changes. This includes updating the architecture documentation, which serves as the design specification as well as a means of comprehending complex systems. Furthermore, the software architecture of the implementation must be adapted in order to ensure that the system complies with both functional and non-functional requirements. In practice, however, software changes are often applied in an ad-hoc manner. As a result, the implementation frequently deviates from the architecture documentation, rendering the latter useless for supporting system engineers in comprehending the system and aiding maintenance tasks. Furthermore, errors that are introduced during the implementation lead to discrepancies between the system and the intended architecture design. Consequently, it cannot be guaranteed that the system meets the desired quality objectives, such as reliability and dependability. We present the behavioral reflexion model approach, which aims to support the system engineer in identifying and resolving discrepancies between software architecture representations. In our approach, the system engineer is supported in producing architecture documentation that reflects the intended architecture. Furthermore, discrepancies between the implementation and documentation are identified. These discrepancies are then illustrated graphically in a reflexion model, which guides debugging activities. In this research, we are concerned with architecture representations of system behaviors and focus in particular on distributed systems. In this thesis, we describe how architecture discrepancies are introduced and the implications for the reliability and maintainability of the system. We then discuss the individual components of the behavioral reflexion model approach in detail. Finally, we provide an evaluation of our approach in the form of two case studies. In these studies, we applied the behavioral reflexion model approach to two space-mission systems with the goal to resolve problems in their reliability and maintainability.en_US
dc.identifier.urihttp://hdl.handle.net/1903/10874
dc.subject.pqcontrolledComputer Scienceen_US
dc.subject.pquncontrolledBehavioral Analysisen_US
dc.subject.pquncontrolledReverse Engineeringen_US
dc.subject.pquncontrolledSoftware Architectureen_US
dc.subject.pquncontrolledSoftware Comprehensionen_US
dc.subject.pquncontrolledSoftware Engineeringen_US
dc.subject.pquncontrolledVerificationen_US
dc.titleBehavioral Reflexion Models for Software Architectureen_US
dc.typeDissertationen_US

Files

Original bundle

Now showing 1 - 1 of 1
Loading...
Thumbnail Image
Name:
Ackermann_umd_0117E_11528.pdf
Size:
5.96 MB
Format:
Adobe Portable Document Format