Interface specification methods for software components

dc.contributorAalto-yliopistofi
dc.contributorAalto Universityen
dc.contributor.authorLampinen, Jani
dc.contributor.departmentDepartment of Information and Computer Scienceen
dc.contributor.departmentTietojenkäsittelytieteen laitosfi
dc.contributor.schoolFaculty of Information and Natural Sciencesen
dc.contributor.schoolInformaatio- ja luonnontieteiden tiedekuntafi
dc.date.accessioned2011-11-28T13:18:04Z
dc.date.available2011-11-28T13:18:04Z
dc.date.issued2008
dc.description.abstractThis report presents an interface specification language developed as a part of the LIME-project (LightweIght formal Methods for distributed component-based Embedded systems) and a tool implementation to support it. The intention is to provide a methodology that is lightweight and complementary to the existing means of quality assurance in a software process. The specification language provides a mechanism for specifying both external usage of a software component, as well as the internal behavior of a one. The former is referred to as interface specification, and the latter to as library specification. Should the interface specification be breached between two interacting components, the calling component is incorrect. Likewise, if the called component does not obey library specification, it will be the one to take the blame. Both types of specification can be written using either propositional linear temporal logic (PLTL) or by regular expressions, and may contain claims about the component's state or the currently executing method. Java has been used as the implementation language on the approach because of the preexisting metadata mechanism (Java annotations) and good tool support. The tool implementation relies on aspect-oriented programming developed by Gregor Kiczales and his team at Xerox PARC in the late 90s. It employs annotation-guided generation of temporal safety aspects to synthesize the defined properties as behavioral invariants to the runtime execution of the program. The aspects simulate finite state automata which keep track of the state of the interaction and signal an exception in case of an error in it is observed.en
dc.format.extentv, 49
dc.format.mimetypeapplication/pdf
dc.identifier.isbn978-951-22-9454-1
dc.identifier.issn1797-5042
dc.identifier.urihttps://aaltodoc.aalto.fi/handle/123456789/875
dc.identifier.urnurn:nbn:fi:tkk-011478
dc.language.isoenen
dc.publisherHelsinki University of Technologyen
dc.publisherTeknillinen korkeakoulufi
dc.relation.ispartofseriesTKK reports in information and computer scienceen
dc.relation.ispartofseries4en
dc.subject.keywordlightweight methodsen
dc.subject.keywordinterface specificationen
dc.subject.keywordJavaen
dc.subject.keywordPLTLen
dc.subject.keywordaspect-oriented programmingen
dc.subject.otherComputer scienceen
dc.titleInterface specification methods for software componentsen
dc.typeD4 Julkaistu kehittämis- tai tutkimusraportti taikka -selvitysfi
dc.type.dcmitypetexten

Files

Original bundle

Now showing 1 - 1 of 1
Loading...
Thumbnail Image
Name:
isbn9789512294541.pdf
Size:
479.5 KB
Format:
Adobe Portable Document Format