Abstract. In this paper we present Inject/J, both a language and a tool for specifying complex source-to-source transformations of Java programs. The focus of Inject/J is on "transformation in the large" that is, modification of large object-oriented software on the design level. We first introduce the meta-model of our transformation language. This meta-model provides a conceptual view on object-oriented software by capturing relevant design entities. It also defines a number of conceptual analysis and transformation operations together with their code-level semantics. The entities of the meta-model, together with the respective operations, constitute the primitives of our transformation language. We discuss the main features of this transformation language and illustrate how it can be used to perform complex transformation tasks.
Abstract. Platform as a Service (PaaS) is a concept whereby a computing platform and a software development stack are being offered as a combined service to prospective application developers. This model has been shown to carry a great number of benefits for developers and PaaS providers alike, and represents an important trend within cloud computing today. However, the design of mature platforms to support this model to its full extent remains a complex and challenging undertaking for enterprise application PaaS providers. The aim of this paper is to present the approach that is being undertaken within research project CAST to realise a platform that pushes the envelope of PaaS facilities and addresses the challenges associated with optimising application reusability, extensibility, configurability, integrability, and manageability. The ultimate aim is to create a software platform that fosters the creation of an ecosystem, thus pursuing the PaaS vision to its fullest extent possible.
Code that is scattered and tangled as a result of orthogonal concerns seriously hinders software maintenance and reuse. As OO decompositions are unable to cleanly encapsulate such orthogonal (cross-cutting) concerns simultaneously, new ideas and languages were devised to capture and encapsulate them. In this paper, we argue that the current leading approaches (AOP as it is understood in AspectJ and MDSOC), although a step forward in the right direction, have some serious limitations. We, then, propose a new conceptual model for encapsulating concerns identified in existing OO code, which we apply to an example taken from the Java Swing library. Our case study shows that our approach is able to capture cross-cutting concerns in a cleaner and more elegant fashion than current state of the art approaches.
scite is a Brooklyn-based organization that helps researchers better discover and understand research articles through Smart Citations–citations that display the context of the citation and describe whether the article provides supporting or contrasting evidence. scite is used by students and researchers from around the world and is funded in part by the National Science Foundation and the National Institute on Drug Abuse of the National Institutes of Health.