TU Darmstadt / ULB / TUbiblio

Product-Line development for mobile device applications with attribute supported containers

Cepa, Vasian (2005)
Product-Line development for mobile device applications with attribute supported containers.
Technische Universität Darmstadt
Dissertation, Erstveröffentlichung

Kurzbeschreibung (Abstract)

Mobile device software applications play an ever increasing role in the interaction with ubiquitous computing environments. To grow the acceptance of the mobile product-lines among the developers, the technology used to implement them should be easy to implement and introduce. This dissertation addresses mobile product-line development related issues in three dimensions. First, based on the success of the software container component technology for server-side enterprise applications, a software container abstraction for mobile applications, called a mobile container, is introduced to organize the common functionality of mobile product-lines. Mobile containers serve as a central point to organize the functionality needed by the mobile applications. A mobile container is defined as a hybrid client- and server-side container. A mobile application communicates with the rest of a ubiquitous computing environment as a client of one or more server-side services. Mobile containers organize the common functionality of a mobile product-line as a set of services used by mobile clients, and by server-side applications. Server-side applications contain mobile client specific code to adapt the data and the services requested by the mobile clients based on the limitations that exist in mobile devices, e.g., low screen resolution. Second, attributes are used to model the container services declaratively in the source code. Attributes are known from technologies, such as .NET and Java, where they are used to decorate the program elements of the language, e.g., classes and methods. Attributes extend the language without having to maintain its compiler and are used to emulate domain-specific abstractions (DSA). Attribute families are used as a means to model the domain variability. A lightweight language extension is created that enables accessing and manipulating the annotated code. Languages that contain attribute transformation support, as part of their core functionality, will be called Generalized and Annotated Abstract Syntax Tree (GAAST) languages. GAAST-languages enable better language support for the code transformations applied in the context of the Model-Driven Architecture (MDA). Third, a structured modularization of attribute-driven transformers is introduced to ease the interpretation of attribute-based DSA. Specialized attribute transformers connect the attribute-based DSA with the container services, exposed as object-oriented (OO) libraries. Attribute-driven transformers are horizontally modularized based on the characteristics of the modeled domain. The semantics of the domain assets, expressed as attribute families, are used to determine the transformation workflow. A uniform composition model for transformers based on the inner attributes is developed. Transformers state their dependencies declaratively by decorating the processed elements with arbitrary information in the form of inner attributes. This information is used to coordinate the code processing by successor transformers. The hardwired OO language meta-model is utilized to introduce a vertical modularization of the attribute-driven transformers. The transformation strategy is structured according to the nesting of the structural elements found in the language meta-model. The layering strategy is enforced by operations, specialized for every supported element of the language meta-model. These operations form a specialized language for attribute-driven transformations. Common attribute operations, such as, checking for attribute dependencies, are declaratively specified and factored out of the individual transformers by using meta-attributes. Meta-attribute enable the decoration of attributes themselves with arbitrary semantics that can be automatically processed. The proposed technology is evaluated by an extensible mobile container framework for Mobile Information Device Profile (MIDP) applications of the Java 2 Mobile Edition (J2ME), that run in small mobile devices. Several technical MIDP concerns are addressed, e.g., data persistence, session and screen management, and networking, resulting in a simpler and more declarative programming model, that preserves the architecture of the domain in the individual applications.

Typ des Eintrags: Dissertation
Erschienen: 2005
Autor(en): Cepa, Vasian
Art des Eintrags: Erstveröffentlichung
Titel: Product-Line development for mobile device applications with attribute supported containers
Sprache: Englisch
Referenten: Assmann, Prof.Dr. Uwe
Berater: Mezini, Prof.Dr. Mira
Publikationsjahr: 8 Dezember 2005
Ort: Darmstadt
Verlag: Technische Universität
Datum der mündlichen Prüfung: 31 Oktober 2005
URL / URN: urn:nbn:de:tuda-tuprints-6307
Kurzbeschreibung (Abstract):

Mobile device software applications play an ever increasing role in the interaction with ubiquitous computing environments. To grow the acceptance of the mobile product-lines among the developers, the technology used to implement them should be easy to implement and introduce. This dissertation addresses mobile product-line development related issues in three dimensions. First, based on the success of the software container component technology for server-side enterprise applications, a software container abstraction for mobile applications, called a mobile container, is introduced to organize the common functionality of mobile product-lines. Mobile containers serve as a central point to organize the functionality needed by the mobile applications. A mobile container is defined as a hybrid client- and server-side container. A mobile application communicates with the rest of a ubiquitous computing environment as a client of one or more server-side services. Mobile containers organize the common functionality of a mobile product-line as a set of services used by mobile clients, and by server-side applications. Server-side applications contain mobile client specific code to adapt the data and the services requested by the mobile clients based on the limitations that exist in mobile devices, e.g., low screen resolution. Second, attributes are used to model the container services declaratively in the source code. Attributes are known from technologies, such as .NET and Java, where they are used to decorate the program elements of the language, e.g., classes and methods. Attributes extend the language without having to maintain its compiler and are used to emulate domain-specific abstractions (DSA). Attribute families are used as a means to model the domain variability. A lightweight language extension is created that enables accessing and manipulating the annotated code. Languages that contain attribute transformation support, as part of their core functionality, will be called Generalized and Annotated Abstract Syntax Tree (GAAST) languages. GAAST-languages enable better language support for the code transformations applied in the context of the Model-Driven Architecture (MDA). Third, a structured modularization of attribute-driven transformers is introduced to ease the interpretation of attribute-based DSA. Specialized attribute transformers connect the attribute-based DSA with the container services, exposed as object-oriented (OO) libraries. Attribute-driven transformers are horizontally modularized based on the characteristics of the modeled domain. The semantics of the domain assets, expressed as attribute families, are used to determine the transformation workflow. A uniform composition model for transformers based on the inner attributes is developed. Transformers state their dependencies declaratively by decorating the processed elements with arbitrary information in the form of inner attributes. This information is used to coordinate the code processing by successor transformers. The hardwired OO language meta-model is utilized to introduce a vertical modularization of the attribute-driven transformers. The transformation strategy is structured according to the nesting of the structural elements found in the language meta-model. The layering strategy is enforced by operations, specialized for every supported element of the language meta-model. These operations form a specialized language for attribute-driven transformations. Common attribute operations, such as, checking for attribute dependencies, are declaratively specified and factored out of the individual transformers by using meta-attributes. Meta-attribute enable the decoration of attributes themselves with arbitrary semantics that can be automatically processed. The proposed technology is evaluated by an extensible mobile container framework for Mobile Information Device Profile (MIDP) applications of the Java 2 Mobile Edition (J2ME), that run in small mobile devices. Several technical MIDP concerns are addressed, e.g., data persistence, session and screen management, and networking, resulting in a simpler and more declarative programming model, that preserves the architecture of the domain in the individual applications.

Alternatives oder übersetztes Abstract:
Alternatives AbstractSprache

Mobile device software applications play an ever increasing role in the interaction with ubiquitous computing environments. To grow the acceptance of the mobile product-lines among the developers, the technology used to implement them should be easy to implement and introduce. This dissertation addresses mobile product-line development related issues in three dimensions. First, based on the success of the software container component technology for server-side enterprise applications, a software container abstraction for mobile applications, called a mobile container, is introduced to organize the common functionality of mobile product-lines. Mobile containers serve as a central point to organize the functionality needed by the mobile applications. A mobile container is defined as a hybrid client- and server-side container. A mobile application communicates with the rest of a ubiquitous computing environment as a client of one or more server-side services. Mobile containers organize the common functionality of a mobile product-line as a set of services used by mobile clients, and by server-side applications. Server-side applications contain mobile client specific code to adapt the data and the services requested by the mobile clients based on the limitations that exist in mobile devices, e.g., low screen resolution. Second, attributes are used to model the container services declaratively in the source code. Attributes are known from technologies, such as .NET and Java, where they are used to decorate the program elements of the language, e.g., classes and methods. Attributes extend the language without having to maintain its compiler and are used to emulate domain-specific abstractions (DSA). Attribute families are used as a means to model the domain variability. A lightweight language extension is created that enables accessing and manipulating the annotated code. Languages that contain attribute transformation support, as part of their core functionality, will be called Generalized and Annotated Abstract Syntax Tree (GAAST) languages. GAAST-languages enable better language support for the code transformations applied in the context of the Model-Driven Architecture (MDA). Third, a structured modularization of attribute-driven transformers is introduced to ease the interpretation of attribute-based DSA. Specialized attribute transformers connect the attribute-based DSA with the container services, exposed as object-oriented (OO) libraries. Attribute-driven transformers are horizontally modularized based on the characteristics of the modeled domain. The semantics of the domain assets, expressed as attribute families, are used to determine the transformation workflow. A uniform composition model for transformers based on the inner attributes is developed. Transformers state their dependencies declaratively by decorating the processed elements with arbitrary information in the form of inner attributes. This information is used to coordinate the code processing by successor transformers. The hardwired OO language meta-model is utilized to introduce a vertical modularization of the attribute-driven transformers. The transformation strategy is structured according to the nesting of the structural elements found in the language meta-model. The layering strategy is enforced by operations, specialized for every supported element of the language meta-model. These operations form a specialized language for attribute-driven transformations. Common attribute operations, such as, checking for attribute dependencies, are declaratively specified and factored out of the individual transformers by using meta-attributes. Meta-attribute enable the decoration of attributes themselves with arbitrary semantics that can be automatically processed. The proposed technology is evaluated by an extensible mobile container framework for Mobile Information Device Profile (MIDP) applications of the Java 2 Mobile Edition (J2ME), that run in small mobile devices. Several technical MIDP concerns are addressed, e.g., data persistence, session and screen management, and networking, resulting in a simpler and more declarative programming model, that preserves the architecture of the domain in the individual applications.

Englisch
Freie Schlagworte: Graphtransformationssysteme
Schlagworte:
Einzelne SchlagworteSprache
software development, object-oriented programming, attribute enabled programming, software containers, graph rewriting systems, graphs, softwaredesign, softwareengineeringEnglisch
Sachgruppe der Dewey Dezimalklassifikatin (DDC): 000 Allgemeines, Informatik, Informationswissenschaft > 004 Informatik
Fachbereich(e)/-gebiet(e): 20 Fachbereich Informatik
Hinterlegungsdatum: 17 Okt 2008 09:22
Letzte Änderung: 20 Mai 2018 21:23
PPN:
Referenten: Assmann, Prof.Dr. Uwe
Datum der mündlichen Prüfung / Verteidigung / mdl. Prüfung: 31 Oktober 2005
Schlagworte:
Einzelne SchlagworteSprache
software development, object-oriented programming, attribute enabled programming, software containers, graph rewriting systems, graphs, softwaredesign, softwareengineeringEnglisch
Export:
Suche nach Titel in: TUfind oder in Google
Frage zum Eintrag Frage zum Eintrag

Optionen (nur für Redakteure)
Redaktionelle Details anzeigen Redaktionelle Details anzeigen