Presentation is loading. Please wait.

Presentation is loading. Please wait.

A Generative and Model Driven Framework for Automated Software Product Generation Wei Zhao Advisor: Dr. Barrett Bryant Computer and Information Sciences.

Similar presentations


Presentation on theme: "A Generative and Model Driven Framework for Automated Software Product Generation Wei Zhao Advisor: Dr. Barrett Bryant Computer and Information Sciences."— Presentation transcript:

1 A Generative and Model Driven Framework for Automated Software Product Generation Wei Zhao Advisor: Dr. Barrett Bryant Computer and Information Sciences University of Alabama at Birmingham

2 UniFrame Project GOAL: to provide a compiler framework to compile the 4GL into the 3GL to be executed by the computers.

3 The 4 th Generation Language Definition: The 4GL is a language that allows the users to use intuitive visualized or textual representation to directly work with the domain specific concepts. Program written in a 4GL is a formalized requirements model

4 The 4GL Compiler When the development abstraction moves to the domain specific concepts, the 4GL compiler is a product line assembler or application generator for that domain. The generated 3GL object code is no longer a single program, rather it will a set of entities with certain structure and interactions.

5

6 Compiler Design Thesis 1 Modularity and Component-based software engineering The compilation process is steps of compositions of reusable features in business domain Composition at the level of Business logic view Composition at the level of Architecture view Composition at the level of Technology view Features are standardized services, and features are the smallest and most abstract unit for reuse One or more services are developed as a single component Components are registered to the native component registry in the domain for discovery and composition

7 compiler design thesis 2 Software development paradigm shift: from single application development to system family development The higher the development abstraction is, the more intelligent the compiler should be Development at 4GL level, system family development methodologies provide domain ontology for supporting compilation Two phases in system family development paradigm: Domain engineering: build Generative Domain Model and develop reusable assets Application engineering: produce concrete system using reusable assets

8 compiler design thesis 3 Capture, formalism, modeling and reuse of engineering knowledge (EK) Any software has the domain-specific concepts and logic, has its structure and implementation technology EK: Decisions made on how to produce the software using those concepts Single system: EK was scattered among business executives, domain experts, engineers and programmers Family system: EK should be formalized at domain level to guide the product generation at application level Business domain: ontology for business concepts and logic Architecture domain: ontology for software architectural pattern Technology domain: ontology for implementation technologies

9 Product Application Engineering: 4GL compilation Domain Engineering: Reusable assets and meta-data for compilation Business GDM in GME Architecture GDM in GME Technology GDM in GME MDA Feature development TLG Meta requirements Requirements Model in GME TLG Architecture Model in GME Feature searching feature UMM feature UMM …….. Bridge generation QoS validation

10 Two Level Grammar Two Levels of context-free grammar First level (simple context free grammar): formal parameters Second level (CFG with consistent substitution rule): predicate function The string generated from the the first level can be plugged into the second level as the argument. e.g. Thing :: letter; rule. Thing list: Thing; Thing, Thing list. will generate: letter list: letter; letter, letter list. rule list : rule; rule, rule list.

11 Two-Level Grammar cont’ TLG was used to specify the complete syntax and static semantics for Algol 68 Feature modeling is the syntax and semantics of the 4GL in that domain All kinds of feature configuration constraints is the static semantics of that 4GL

12 TLG for feature model specification The first level simple CFG: feature organization The second level:feature attributes, relationship cardinalities, pre and post condition, interdependencies TLG interpreter – 4GL parser parse the application configuration constraints validation Implementation of TLG interpreter: automatic 4GL parser generation can take use of existing parser generator

13 Example specification class Automobile. (1) Automobile :: CarBody, Transmission, Engine, Tires. (2) Transmission :: automatic ; manual. (3) Engine :: electronic ; gasoline; electronic, gasoline. ……… (4) Type : car (5) Automobile derive Tires : if Automobile.Type = car, Automobile #1, Tires #4; if Automobile.Type = truck, Automobile #1, Tires #8. (6) some-post-conditions Transmission : Transmission some-pre- conditions. ……. end class.

14 Project Colleagues Barrett R. Bryant, Jeff Gray Carol C. Burt Rajeev R. Raje, Andrew M. Olson, Mikhail Auguston This research was supported by U. S. Office of Naval Research Grant N000014-01-01- 0746 and U. S. Army Research Laboratory and U. S. Army Research Office Grant DAAD190-00-1-0350.

15 Contact : zhaow@cis.uab.eduzhaow@cis.uab.edu http://www.cis.uab.edu/info/grads/zhaow/


Download ppt "A Generative and Model Driven Framework for Automated Software Product Generation Wei Zhao Advisor: Dr. Barrett Bryant Computer and Information Sciences."

Similar presentations


Ads by Google