Framework-Specific Modeling Languages

dc.contributor.authorAntkiewicz, Michal
dc.date.accessioned2008-09-24T20:16:34Z
dc.date.available2008-09-24T20:16:34Z
dc.date.issued2008-09-24T20:16:34Z
dc.date.submitted2008-09-12
dc.description.abstractFramework-specific modeling languages (FSMLs) help developers build applications based on object-oriented frameworks. FSMLs formalize abstractions and rules of the framework's application programming interfaces (APIs) and can express models of how applications use an API. Such models, referred to as framework-specific models, aid developers in understanding, creating, and evolving application code. We present the concept of FSMLs, propose a way of specifying their abstract syntax and semantics, and show how such language specifications can be interpreted to provide reverse, forward, and round-trip engineering of framework-specific models and framework-based application code. We present a method for engineering FSMLs that was extracted post-mortem from the experience of building four such languages. The method is driven by the use cases that the FSMLs under development are to support. We present the use cases, the overall process, and its instantiation for each language. The presentation focuses on providing concrete examples for engineering steps, outcomes, and challenges. It also provides strategies for making engineering decisions. The presented method and experience are aimed at framework developers and tool builders who are interested in engineering new FSMLs. Furthermore, the method represents a necessary step in the maturation of the FSML concept. Finally, the presented work offers a concrete example of software language engineering. FSML engineering formalizes existing domain knowledge that is not present in language form and makes a strong case for the benefits of such formalization. We evaluated the method and the exemplar languages. The evaluation is both empirical and analytical. The empirical evaluation involved measuring the precision and recall of reverse engineering and verifying the correctness or forward and round-trip engineering. The analytical evaluation focused on the generality of the method.en
dc.identifier.urihttp://hdl.handle.net/10012/4030
dc.language.isoenen
dc.pendingfalseen
dc.publisherUniversity of Waterlooen
dc.subjectFSMLsen
dc.subjectframeworksen
dc.subjectframework-specific modelsen
dc.subjectreverse engineeringen
dc.subjectforward engineeringen
dc.subjectround-trip engineeringen
dc.subjectmodelingen
dc.subjectstatic analysisen
dc.subjectincremental code transformationen
dc.subject.programComputer Science (Software Engineering)en
dc.titleFramework-Specific Modeling Languagesen
dc.typeDoctoral Thesisen
uws-etd.degreeDoctor of Philosophyen
uws-etd.degree.departmentElectrical and Computer Engineeringen
uws.peerReviewStatusUnrevieweden
uws.scholarLevelGraduateen
uws.typeOfResourceTexten

Files

Original bundle

Now showing 1 - 1 of 1
Loading...
Thumbnail Image
Name:
uw-ethesis.pdf
Size:
1.05 MB
Format:
Adobe Portable Document Format

License bundle

Now showing 1 - 1 of 1
No Thumbnail Available
Name:
license.txt
Size:
260 B
Format:
Item-specific license agreed upon to submission
Description: