Ringvorlesung Forschungslinie. Beyond Objects

Size: px
Start display at page:

Download "Ringvorlesung Forschungslinie. Beyond Objects"

Transcription

1 Fakultät für Informatik Institut für Software- und Multimediatechnik Ringvorlesung Forschungslinie Beyond Objects From Object Modeling Via Role Modeling To Satellite Modeling Prof. Dr. Uwe Aßmann Institut für Software- und Multimediatechnik (SMT) Fakultät für Informatik, TU Dresden , Apr 20, 2012

2 Overview Problems The extensibility problem in modeling The variability problem The parallel programming problem (inheritance anomaly) The view problem (what are concerns and aspects?) The component problem (what are components?) The substituability problem (what is conformance?) Step 1) The Steimann product-lattice factorization of types Its advantages Scalability Extensibility Variability Step 2) Satellite-based development Object-Satellite-Model (ORBIT) The relationship to the groups Prof. Dr. U. Aßmann TU Dresden, Institut für Software- und Multimediatechnik 2

3 The Extensibility Problem How to extend software? Prof. Dr. U. Aßmann TU Dresden, Institut für Software- und Multimediatechnik 3

4 The Substitutability Problem How to substitute a component? Prof. Dr. U. Aßmann TU Dresden, Institut für Software- und Multimediatechnik 4

5 The Varability Problem How to vary a subsystem? Prof. Dr. U. Aßmann TU Dresden, Institut für Software- und Multimediatechnik 5

6 The Parallelism Problem (Inheritance Anomaly) 1980s: Parallel object-oriented languages (POOL, COOL) 1991: Inheritance Anomaly 1988: Composition Technology (Aksit) 1994: Generic Synchronization Policies (McHale) : Composition Filters (Aksit) 1996: Aspect-oriented Programming (AOP) 1996: D+RIDL (Lopes), 1999: Aspect/J (Kiczales) 2003: Transaction MDA (Löcher) Prof. Dr. U. Aßmann TU Dresden, Institut für Software- und Multimediatechnik 6

7 Inheritance Anomaly - Why Concerns are Necessary In a parallel program or library, where should synchronization code be inserted? Stack? Queue? OrderedCollection? Collection? Object? pop() OrderedCollection add() Stack LockedStack s: semaphor; PlainStack enter() Queue PriorityQueue pop() wait(s); super.pop(); free(s); Prof. Dr. U. Aßmann TU Dresden, Institut für Software- und Multimediatechnik 7

8 Inheritance Anomaly At the beginning of the 90s, parallel object-oriented languages failed, due to the inheritance anomaly problem Inheritance anomaly: In In inheritance hierarchies, synchronization code is is intermingled with the algorithm and cannot be easily exchanged Synchronization tangling: Because synchronization code braces code, it it is is tangling Synchronization crosscut: Because synchronization code is is reused code, it it is is crosscutting Prof. Dr. U. Aßmann TU Dresden, Institut für Software- und Multimediatechnik 8

9 Algorithm and Synchronization are Core and Aspect Composition fixes crosscut between core and aspect OrderedCollection add() Crosscut LockProtocol Stack pop() enter() Queue Semaphor wait() free() enter() Monitor PriorityQueue HoareMonitor HansenMonitor Binary Semaphor Counting Semaphor Prof. Dr. U. Aßmann TU Dresden, Institut für Software- und Multimediatechnik 9

10 What are Crosscut Relations? Relations between things in a core and an aspect Crosscut Prof. Dr. U. Aßmann TU Dresden, Institut für Software- und Multimediatechnik 10

11 Challenges What is is a concern (Sicht, Belang)? What is is an aspect (querschneidende Sicht, Belang)? Prof. Dr. U. Aßmann TU Dresden, Institut für Software- und Multimediatechnik 11

12 Ladder of Paradigms 1995-today Role-oriented development (ROD, Objects with roles) Object-oriented development (OOA, OOD, OOP, POOL) AOSD Prof. Dr. U. Aßmann TU Dresden, Institut für Software- und Multimediatechnik 12

13 Fakultät für Informatik Institut für Software- und Multimediatechnik Step 1 Beyond Objects - Role Modeling and the Steimann Factorization Splitting a type into a tuple of natural and founded parts

14 Rigid and Founded Types If If an an object object that that has has a a rigid rigid type, type, it it cannot cannot stop stop being being of of the the type type without without loosing loosing its its identity identity [Guarini] [Guarini] Example: Book is a rigid type, Reader is a non-rigid type Reader can stop reading, but Book stays Book Rigid types are tied to the identity of objects A non-rigid type is a dynamic type that is indicating a state of the object A A founded founded type type (relative (relative type) type) is is a a type type that that exists exists always always in in collaboration collaboration (association) (association) with with another another class. class. Prof. Dr. U. Aßmann TU Dresden, Institut für Software- und Multimediatechnik 14

15 Role and Natural Types A role type is a founded and non-rigid type. Role types are in collaboration and if the object does no longer play the role type, it does not give up identity. Natural types are non-founded and rigid. A natural type is independent of a relationship. The objects cannot leave it. Prof. Dr. U. Aßmann TU Dresden, Institut für Software- und Multimediatechnik 15

16 Roles in the Literatur Databases (Bachmann 77) ER model (Chen 76); though hidden in association ends Design patterns (Riehle 98) Course Design patterns and frameworks at TUD Product line engineering (Smaragdakis,Batory 02) Connectors in architectural languages (Garlan, Shaw 95) OO Modeling (Reenskaug 95) Security anyway ACL lists in operating systems Ontologies (Brachman, description logic)... [Steimann DKE 2000] has many more and tries to unify them Prof. Dr. U. Aßmann TU Dresden, Institut für Software- und Multimediatechnik 16

17 Steimann Factorization [Steimann, DKE 2000] Splitting a full type into its natural and role-type components FullType = Natural x (role-type, role-type,...) Full = x (Reader,, Customer,..) FullBook Full Bought Sausage Buyer Grand Reader Grand Child Full FullNewsPaper Read Newspaper Prof. Dr. U. Aßmann TU Dresden, Institut für Software- und Multimediatechnik 17

18 Full Type is from Inheritance Product Lattice What is a reading buying grandfather person? Role 2 Natural (entity) Role 3 Role 1 Thing Ancestor Accessor Customer LivingBeing Contractor Mammal Dinosaurs Mother Acquainted Negotiator Chicken Grand Grand Mother Reader Writer Buyer Seller Prof. Dr. U. Aßmann TU Dresden, Institut für Software- und Multimediatechnik 18

19 The Steimann Factorization Divide a type into a tuple type over a product lattice of a core dimension and n-1 role dimensions (Core, Role_1,..., Role_n) Prof. Dr. U. Aßmann TU Dresden, Institut für Software- und Multimediatechnik 19

20 Simplified Representation of Object Nets Role models (collaborations) are interprocedural slices Collaboration schemas (connector schemas) are schemas (types) for interprocedural slices Bought Sausage Buyer Grand Grand Child Reader Read Newspaper Prof. Dr. U. Aßmann TU Dresden, Institut für Software- und Multimediatechnik 20

21 Advantages of the Steimann Factorization for System Construction Simplicity Representation of concerns and aspects Extensibility Variability (delayed role embedding decisions) Prof. Dr. U. Aßmann TU Dresden, Institut für Software- und Multimediatechnik 21

22 Fakultät für Informatik Institut für Software- und Multimediatechnik Advantage 1: Extensibility

23 Simplified Extension with Connectors (Role Model, Collaboration) Object-role nets can be extended by new role models (connectors, collaborations) Bought Sausage Buyer Grand Grand Child Reader Read Newspaper Prof. Dr. U. Aßmann TU Dresden, Institut für Software- und Multimediatechnik 23

24 A Connector is a Relational Module (Collaboration) Nets of roles with open ends, open plays-a tentacles, to be attached to object cores Grand Grand Child UML Notation with role-type parameter P: P Grand GrandShip GrandChild Prof. Dr. U. Aßmann TU Dresden, Institut für Software- und Multimediatechnik 24

25 Newspaper-Reading GrandpaShip Grand Grand Child Reader Read P Grand Grand Child Reading Grandship Read Prof. Dr. U. Aßmann TU Dresden, Institut für Software- und Multimediatechnik 25 N

26 Newspaper-Reading Buying GrandpaShip Buyer Bought Grand Grand Child Reader Read Buying Bought S P Grand Grand Child ReadingBuying Grandship Reader Prof. Dr. U. Aßmann TU Dresden, Institut für Software- und Multimediatechnik 26 Read N

27 Connector Superimposition in UML Connector superimposition extends designs Customership Bought Bought Sausage Buyer Buyer Grand Grand Child Grand GrandShip Grand Child Prof. Dr. U. Aßmann TU Dresden, Institut für Software- und Multimediatechnik 27

28 Connectors can be Refined Buyer net Bought Sausage seller Shop Buyer outgoing incoming Prof. Dr. U. Aßmann TU Dresden, Institut für Software- und Multimediatechnik 28

29 Extension on the Steimann Product Lattice A new role relationship extends the product lattice by another dimension. Natural (entity) Role 3 Role 1 Role 2 Thing Ancestor Accessor Customer LivingBeing Contractor Mammal Dinosaurs Mother Acquainted Negotiator Chicken Grand Grand Mother Reader Writer Buyer Seller Prof. Dr. U. Aßmann TU Dresden, Institut für Software- und Multimediatechnik 29

30 Connector Superimposition extends the Steimann Lattices of all involved Classes Role 3 Natural (entity) Role 1 Role 2 Natural (entity) Role 1 Role 2 Role 3 Customer Thing Ancestor Accessor Thing Ancestor Accessor Customer Contractor LivingBeing LivingBeing Mammal Dinosaurs Mother Acquainted Contractor Negotiator Negotiator Buyer Seller Mammal Dinosaurs Chicken Grand Mother Grand Mother Reader Acquainted Writer Chicken Grand Grand Mother Reader Writer Buyer Seller Role 3 Natural (entity) Role 1 Role 2 Customer Thing Ancestor Accessor Connector Contractor Negotiator LivingBeing Mammal Dinosaurs Mother Acquainted Buyer Seller Chicken Grand Grand Mother Reader Writer Prof. Dr. U. Aßmann TU Dresden, Institut für Software- und Multimediatechnik 30

31 Extension in the Steimann Lattice Retains Inheritance Superimposition of connectors to objects in Steimannfactored form retains all inheritance structures Stable entity inheritance hierarchies, if concepts are added relationally to a model Otherwise: extension of superclasses necessary (role classes become superclasses of entity classes) Adding of new concerns is simple (adding a collaboration) Prof. Dr. U. Aßmann TU Dresden, Institut für Software- und Multimediatechnik 31

32 Identity is Fixed to Core Facet of Product Lattice Role type extensions does not change the name of the core type nor of the full type (polymorphism) Thing Ancestor Accessor Customer LivingBeing Contractor Mammal Dinosaurs Mother Acquainted Negotiator Chicken Grand Grand Mother Reader Writer Buyer Seller Prof. Dr. U. Aßmann TU Dresden, Institut für Software- und Multimediatechnik 32

33 Role Extension Retains Core Identity Distinguish role types (NON-RIGID) from natural types (RIGID) Mixin Mixin Reader ReaderMixin Reading Prof. Dr. U. Aßmann TU Dresden, Institut für Software- und Multimediatechnik 33

34 Modern Implementation of Connectors (Collaborations) Connectors (Collaborations, role models) are type functors Functions on types Model concerns and aspects Direct implementation Mixin layers [Batory] Role Object Pattern Semantic macros Generic templates (BETA, Invasive Composition Aßmann) Aspects Ceasar/J [M. Mezini, Darmstadt] [S. Herrmann, Berlin] Rewriting to standard languages Mapping (MDD process), e.g., with graph rewriting systems Prof. Dr. U. Aßmann TU Dresden, Institut für Software- und Multimediatechnik 34

35 Fakultät für Informatik Institut für Software- und Multimediatechnik Advantage 2) Scalable Refinement and Variability: Anchoring Roles into the Model-Driven Software Development (MDSD)

36 Variability by Role Embedding Mapping Roles to Implementation-Records is an Embedding Decision The plays-a relationship leaves the embedding open, defers the decision to implementation Prof. Dr. U. Aßmann TU Dresden, Institut für Software- und Multimediatechnik 36

37 Families and Banks (in a role model) Bank Child Loaner Mother Customer Prof. Dr. U. Aßmann TU Dresden, Institut für Software- und Multimediatechnik 37

38 Families and Banks (Delegation, Split Design) Bank Child Loaner Mother Customer Prof. Dr. U. Aßmann TU Dresden, Institut für Software- und Multimediatechnik 38

39 Families and Banks (Roles Embedded in Players) Child -As- Child Bank-As- Loaner Bank Loaner Mother -As- -As- Mother Customer -As- Costumer Prof. Dr. U. Aßmann TU Dresden, Institut für Software- und Multimediatechnik 39

40 Families and Banks (Roles embedded in Relations) Bank Child Child Loaner Mother Customer Prof. Dr. U. Aßmann TU Dresden, Institut für Software- und Multimediatechnik 40

41 The Role Mapping Process and Model-Driven Architecture The question Where is a role embedded? is a platform decision A role model is more platform independent than a class model In MDA, role models are found on a more platform independent level than class models Role embedding is a task in MDA Business model Role Models Merged Role Models Class Model (roles embedded) Role Model merging Role Model mapping Role embedding Code Prof. Dr. U. Aßmann TU Dresden, Institut für Software- und Multimediatechnik 41

42 Computing Physical Representation from Complex Objects The role embedding determines, which physical objects inherit from which roles computes the physical objects from maximal splits of the complex objects Role Model (maximally splitted responsibilities of the logical objects) Class models Roles in Players Roles in Relations Roles in Delegatees Code Code Code Prof. Dr. U. Aßmann TU Dresden, Institut für Software- und Multimediatechnik 42

43 Role Embedding Yields Scalability Scalability means: From one role design, derive many class designs One can play with defering the embedding decision (compile-time, run-time) Role Role embedding embedding delivers delivers variable variable implementations, implementations, scalable scalable in in splitting, splitting, locality locality and and allocation allocation Prof. Dr. U. Aßmann TU Dresden, Institut für Software- und Multimediatechnik 43

44 Ladder of Paradigms Fine-grained modeling Product-line engineering 1995-today Role-oriented development (ROD, Objects with roles) Scalability Variability Extensibility Views, aspects Object-oriented development (OOA, OOD, OOP) Prof. Dr. U. Aßmann TU Dresden, Institut für Software- und Multimediatechnik 44

45 Fakultät für Informatik Institut für Software- und Multimediatechnik Step 2 Beyond Role Modeling - Satellite-Based Modeling New (preliminary; unpublished; ongoing work)

46 Ladder of Paradigms (2) today- Satellite-oriented development (Objects with Orbit) Rational Grammar 1995-today Role-oriented development (ROD, Objects with roles) Object-oriented development (OOA, OOD, OOP) Prof. Dr. U. Aßmann TU Dresden, Institut für Software- und Multimediatechnik 46

47 Fakultät für Informatik Institut für Software- und Multimediatechnik Satellites (Mixins) as Predicates about Objects as contrast to natural types (standalone things)

48 Satellite Objects and Types A satellite (mixin object) is is a subobject representing a predicate about a core object Role (founded, anti-rigid) Facet (non-founded, rigid): classification value Phase (non-founded, anti-rigid) Integrated Part (nonfounded) Other unary predicates A satellite type (mixin type) is is a type, dependent on a core type (sortal universal) Role type Facet type: classification dimension Phase type Integrated Part type Prof. Dr. U. Aßmann TU Dresden, Institut für Software- und Multimediatechnik 51

49 What are Facets? Classification dimensions that belong intrisically to the object non-founded rigid (non-temporary) Library science [Ramagathan] FIND07 -- International Workshop on Dynamic Taxonomies and Faceted Search Regensburg, Germany, September 3-7, 2007 in conjunction with DEXA 2007 Facet Facet Core Facet Facet Dynamic taxonomies work on multidimensional taxonomies (usually organized by facets) and provide a single, coherent visual framework in which users can focus on one or more concepts in the taxonomy, and immediately see a conceptual summary of their focus, in the form of a reduced taxonomy derived from the original one by pruning unrelated concepts. Concepts in the reduced taxonomy can be used to set additional, dependent foci and users iterate in a guided yet unconstrained way until they reach a result set sufficiently small for manual inspection. Prof. Dr. U. Aßmann TU Dresden, Institut für Software- und Multimediatechnik 52

50 What are Facets? non-founded; rigid Sausage Non- Smoker Male Eatable Smoker Eating Child Ball Player Playable Prof. Dr. U. Aßmann TU Dresden, Institut für Software- und Multimediatechnik 53

51 Satellite Holders (Complex Objects) complex object (full object) Role Facet Role Facet Core Role Holder Facet Holder Prof. Dr. U. Aßmann TU Dresden, Institut für Software- und Multimediatechnik 54

52 What are Phases? non-founded, non-rigid [Guizzardi] teen grown-up old Sausage States in a lifecycle Eatable Eating Child airfilled Player Ball Playable grown-up Prof. Dr. U. Aßmann TU Dresden, Institut für Software- und Multimediatechnik 55

53 Satellite Holder complex object (full object) phase phase role Facet role Facet core role holder Facet, Phase, Role holder Prof. Dr. U. Aßmann TU Dresden, Institut für Software- und Multimediatechnik 56

54 What are Integral Parts? Meat non-founded; rigid; non-shared Sausage Eatable Eating Skin Child Ball Playable Player Heart Prof. Dr. U. Aßmann TU Dresden, Institut für Software- und Multimediatechnik 57

55 Satellite-Core Relationships (Elementary Copula) A satellite relationship is a primary key relationship between a core and a satellite,.. an elementary copula thing plays-a role thing has-a phase thing has-a-classification-dimension thing owns-an-integral part thing is unary-predicator Prof. Dr. U. Aßmann TU Dresden, Institut für Software- und Multimediatechnik 58

56 Core Objects with Different Satellites (Joined by Elementary Triples) teen Sausage Stomach Child ship Non- Smoker Male Eatable Smoker Eating Child airfilled Player ship Ball Playable grown-up Heart Prof. Dr. U. Aßmann TU Dresden, Institut für Software- und Multimediatechnik 59

57 Satellite-Based Development Distinguish Distinguish beyond beyond roles roles facets, facets, phases, phases, integral integral parts parts Refine Refine the the Steimann Steimann factorization factorization with with more more satellite satellite types types Prof. Dr. U. Aßmann TU Dresden, Institut für Software- und Multimediatechnik 60

58 The Satellite Factorization The Steimann factorization works for other satellites Thing Ancestor Ignorant grown-up LivingBeing Mother Dead Mammal Dinosaurs Gourmet Gourmand Chicken Grand Grand Mother Young Old Prof. Dr. U. Aßmann TU Dresden, Institut für Software- und Multimediatechnik 61

59 The Satellite Factorization Consists of an extended Steimann Factorization Divide a type into a tuple type over a product lattice of a core dimension and f facet dimensions p phase dimensions r role dimensions i i integral part dimensions (Core, Facet_1,..,Facet_f, Phase_1,.., Phase_p Role_1,..., Role_r, IntegralPart_1,..,IntegralPart_i) Prof. Dr. U. Aßmann TU Dresden, Institut für Software- und Multimediatechnik 62

60 The Satellite Hierarchy Universal (class) Predicate Substantial Universal Unary Predicate {identity} Sortal / Nominator Satellite {secondary dimensions} {full objects} Rigid Sortal Universal Anti-Rigid Sortal (Satellite Holder) Rigid Satellite Non-Rigid Satelite Kind Subkind Phase Holder RoleHolder Integral Part Facet Role Phase Prof. Dr. U. Aßmann TU Dresden, Institut für Software- und Multimediatechnik 63

61 More Scalability with Satellites Goal: Defering the satellite embedding decision to implementation for all satellite relationships All advantages of role modeling, but even more Variability Extensible logical designs Scalable embedding decisions Prof. Dr. U. Aßmann TU Dresden, Institut für Software- und Multimediatechnik 64

62 The Satellite-Mapping Process and Model-Driven Architecture The question Where is satellite embedded? is a platform decision Satellite embedding is a task in MDA Business model Satellite Models Satellite Model merging Merged Satellite Models Class Model (roles embedded) Satellite Model mapping Satellite embedding Code Prof. Dr. U. Aßmann TU Dresden, Institut für Software- und Multimediatechnik 65

63 Fakultät für Informatik Institut für Software- und Multimediatechnik The Object-Satellite Model (The ORBIT Object Model) New (preliminary; unpublished; ongoing work)

64 Core and Role Orbit Roles are classification dimensions, founded role role Core role role role Prof. Dr. U. Aßmann TU Dresden, Institut für Software- und Multimediatechnik 67

65 Core and Facet Orbit Facets are classification dimensions, non-founded facet facet Core facet facet facet Prof. Dr. U. Aßmann TU Dresden, Institut für Software- und Multimediatechnik 68

66 Satellites on Orbits of Cores role integral part phase role phase role facet phase integral part facet integral part phase core facet integral part role phase facet phase role integral part phase role Prof. Dr. U. Aßmann TU Dresden, Institut für Software- und Multimediatechnik 69

67 Predicator Orbits unary predicator unary predicator immutable role role facet immutable role immutable role unary predicator role immutable role facet core facet role role unary predicator immutable role role immutable role facet immutable role unary predicator unary predicator Prof. Dr. U. Aßmann TU Dresden, Institut für Software- und Multimediatechnik 70

68 Ladder of Paradigms (2) today- Satellite-oriented development (Objects with orbits, ORBIT model) Dissertation Wende 2012 Roles in Language Composition 1995-today Role-oriented development (ROD, Objects with roles) Chair Dissertation Richly 2011 Roles in Workflows Dissertation Johannes 2010 Roles in Metacomposition Object-oriented development (OOA, OOD, OOP) Prof. Dr. U. Aßmann TU Dresden, Institut für Software- und Multimediatechnik 72

69 Future Why will role modeling prevail? Better typing, better polymorphism Flexible product lines for resource-aware systems for run-time-flexible systems Why will satellite modeling prevail? Because roles are not the only types of unary predicators Because plays-a is not the only elementary copula Prof. Dr. U. Aßmann TU Dresden, Institut für Software- und Multimediatechnik 73

70 Fakultät für Informatik Institut für Software- und Multimediatechnik Relations to the courses of Chair

71 st.inf.tu-dresden.de/teaching/... Diplom- und Belegarbeiten Component-Based Software Engineering (CBSE) Role models as standard services of components Role models as grey-box composition system Role models for generic composition Design Patterns and Frameworks (DPF) Role models for design patterns Composed design patterns Role object pattern Roles vs mixins Software-Management (SWM) Roles in the software process Roles in process models Software-Werkzeuge (SEW) Roles in software tools Roles for reusability II (MDA) Prof. Dr. U. Aßmann TU Dresden, Institut für Software- und Multimediatechnik 75

72 Important References T. Reenskaug, P. Wold, and O. Lehne. Working with Objects, The OOram Software Engineering Method. Manning Publications, Friedrich Steimann. On the representation of roles in object-oriented and conceptual modelling. Data Knowl. Eng, 35(1):83-106, Friedrich Steimann. A radical revision of UML s role concept. UML 2000, 3rd International Conference, Springer LNCS, and many more, see his home page at U Hagen Charles W. Bachman and Manilal Daya. The role concept in data models. In VLDB 1977: Proceedings of the third int.l conf. on Very large data bases, pages VLDB Endowment, Giancarlo Guizzardi, Heinrich Herre, and Gerd Wagner. On the general ontological foundations of conceptual modeling. 21st Int. Conf. on Conceptual Modeling (ER 2002), LNCS 2503, pages 65-78, Guizzardi, G. (2005). Ontological Foundations for Structural Conceptual Models. PhD thesis, University of Twente. S. Herrmann. Object teams: Improving modularity for crosscutting collaborations. In Proc. Net Object Days 2002, S. Herrmann. A precise model for contextual roles: The programming language objectteams/java. Applied Onthology, (to appear), a programming lanugage with roles Prof. Dr. U. Aßmann TU Dresden, Institut für Software- und Multimediatechnik 76

73 Important References D. Bäumer, D. Riehle, W. Silberski, and M. Wulf. Role object. In Conf. On Pattern Languages of Programming (PLOP), Dirk Riehle and Thomas Gross. Role model based framework design and integration. ACM SIGPLAN Notices, 33(10): , October Dirk Riehle. Framework Design - A Role Modelling Approach. PhD thesis, ETH Zürich, No Y. Smaragdakis and D. Batory. Mixin layers: an object-oriented implementation technique for refinements and collaboration-based designs. ACM Transactions on Software Engineering and Methodology, 11(2): , Paul Lorenzen, Oswald Schwemmer. Konstruktive Logi, Ethik und Wissenschaftstheorie. BI Hochschultaschenbücher, Band 700, Paul Lorenzen. Lehrbuch der konstruktiven Wissenschaftstheorie, Metzler Reprint, H. Wedekind, E. Ortner, R. Inhetveen. Informatik als Grundbildung. Informatik Spektrum, Springer, April 2004 H. v. Braun, MSP München; W. Hesse, Univ. Marburg; H.B. Kittlaus, SIZ Bonn; G. Scheschonk, C.I.T. Berlin. Ist die Welt objektorientiert? Von der natürlich-sprachlichen Weltsicht zum OO-Modell. Uni Marburg. Prof. Dr. U. Aßmann TU Dresden, Institut für Software- und Multimediatechnik 77

74 Works at SMT so far AOSD, MDD: U. Aßmann. Invasive Software Composition. Springer, U. Aßmann, S. Zschaler, and G. Wagner. Ontologies, Meta-Models, and the Model-Driven Paradigm, Handbook on Ontologies and Software Engineering. pages Springer, J. Henriksson, J. Johannes, S. Zschaler, U. Aßmann. Reuseware adding modularity to your language of choice. Proc. of TOOLS EUROPE 2007: Spec Iss Journal of Object Technology, Roles and aspects in ontologies and metamodeling: U Aßmann, J Johannes, J Henriksson, and Ilie Savga. Composition of rule sets and ontologies. In F. Bry, editor, Reasoning Web, Second Int. Summer School 2006, number 4126 in LNCS, pages 68-92, Sept Springer. M. Pradel, J. Henriksson, and U. Aßmann. A good role model for ontologies: Collaborations. Int. Workshop on Semantic-Based Software Development. at OOPSLA 07, Montreal, Oct 22, Matthias Bräuer and Henrik Lochmann. Towards Semantic Integration of Multiple Domain-Specific Languages Using Ontological Foundations. Prof. Dr. U. Aßmann TU Dresden, Institut für Software- und Multimediatechnik 78

75 Fakultät für Informatik Institut für Software- und Multimediatechnik The End

25.1 Translational Frameworks (MDA with transformations)

25.1 Translational Frameworks (MDA with transformations) Literature TU Dresden Fakultät für Informatik Institut für Software- und Multimediatechnik 25. From Code Frameworks to Model-Driven Architecture (MDA) and Component-Based Software Development (CBSD) Prof.

More information

RoSI Kickoff Meeting. Beyond Simple Objects

RoSI Kickoff Meeting. Beyond Simple Objects Fakultät für Informatik Institut für Software- und Multimediatechnik RoSI Kickoff Meeting Beyond Simple Objects Prof. Dr. Uwe Aßmann Institut für Software- und Multimediatechnik (SMT) Fakultät für Informatik,

More information

Generating Aspect Code from UML Models

Generating Aspect Code from UML Models Generating Aspect Code from UML Models Iris Groher Siemens AG, CT SE 2 Otto-Hahn-Ring 6 81739 Munich, Germany Iris.Groher@fh-hagenberg.at Stefan Schulze Siemens AG, CT SE 2 Otto-Hahn-Ring 6 81739 Munich,

More information

Component-Based Software Engineering (CBSE) Announcements

Component-Based Software Engineering (CBSE) Announcements Component-Based Software Engineering (CBSE) Announcements Prof. Dr. Uwe Aßmann Technische Universität Dresden Institut für Software- und Multimediatechnik http://st.inf.tu-dresden.de 11-0.1, Apr 05, 2011

More information

The Nature and Importance of a Programming Paradigm

The Nature and Importance of a Programming Paradigm Multiple Software Development Paradigms and Multi-Paradigm Software Development Valentino Vranić vranic@elf.stuba.sk Abstract: While OOP (including OOA/D) is reaching the level of maturity of structured

More information

OOP? What is OOP? Why? OOP in a nutshell. Stéphane Ducasse 2.1

OOP? What is OOP? Why? OOP in a nutshell. Stéphane Ducasse 2.1 OOP? What is OOP? Why? OOP in a nutshell Stéphane Ducasse 2.1 Reality on Software Development Analyze Maintain Design Construct Test What is important? maintainability extensibility understandability Stéphane

More information

Unification of AOP and FOP in Model Driven Development

Unification of AOP and FOP in Model Driven Development Chapter 5 Unification of AOP and FOP in Model Driven Development I n this chapter, AOP and FOP have been explored to analyze the similar and different characteristics. The main objective is to justify

More information

Using Bonds for Describing Method Dispatch in Role-Oriented Software Models

Using Bonds for Describing Method Dispatch in Role-Oriented Software Models Using Bonds for Describing Method Dispatch in Role-Oriented Software Models Henri Mühle Technische Universität Dresden Institut für Algebra Henri.Muehle@tu-dresden.de Abstract. Role-oriented software modeling

More information

11. Role-Based Design

11. Role-Based Design 11. Role-Based Design 1 Dr. Sebastian Götz Software Technology Group Department of Computer Science Technische Universität Dresden 1) Running Example 2) The Role-object Pattern 3) Object Schizophrenia

More information

Keywords Aspect-Oriented Modeling, Rule-based graph transformations, Aspect, pointcuts, crosscutting concerns.

Keywords Aspect-Oriented Modeling, Rule-based graph transformations, Aspect, pointcuts, crosscutting concerns. Volume 4, Issue 5, May 2014 ISSN: 2277 128X International Journal of Advanced Research in Computer Science and Software Engineering Research Paper Available online at: www.ijarcsse.com Functional and Non-Functional

More information

Development of Tool Extensions with MOFLON

Development of Tool Extensions with MOFLON Development of Tool Extensions with MOFLON Ingo Weisemöller, Felix Klar, and Andy Schürr Fachgebiet Echtzeitsysteme Technische Universität Darmstadt D-64283 Darmstadt, Germany {weisemoeller klar schuerr}@es.tu-darmstadt.de

More information

2 nd UML 2 Semantics Symposium: Formal Semantics for UML

2 nd UML 2 Semantics Symposium: Formal Semantics for UML 2 nd UML 2 Semantics Symposium: Formal Semantics for UML Manfred Broy 1, Michelle L. Crane 2, Juergen Dingel 2, Alan Hartman 3, Bernhard Rumpe 4, and Bran Selic 5 1 Technische Universität München, Germany

More information

Comparison of Object-Oriented Approaches for Roles in Programming Languages

Comparison of Object-Oriented Approaches for Roles in Programming Languages Comparison of Object-Oriented Approaches for Roles in Programming Languages Daniel Chernuchin, Oliver S. Lazar and Gisbert Dittrich University of Dortmund Abstract This paper presents, explores and compares

More information

An Aspect-Oriented Product Line Framework to Support the Development of Software Product Lines of Web Applications

An Aspect-Oriented Product Line Framework to Support the Development of Software Product Lines of Web Applications An Aspect-Oriented Product Line Framework to Support the Development of Software Product Lines of Web Applications Germán Harvey Alférez Salinas Department of Computer Information Systems, Mission College,

More information

Domain Models and Product Lines

Domain Models and Product Lines Fakultät Informatik, Institut für Software- und Multimediatechnik, Lehrstuhl für Softwaretechnologie Domain Models and Product Lines Prof. Dr. U. Aßmann Technische Universität Dresden Institut für Software-

More information

Aspect-Oriented Programming

Aspect-Oriented Programming Aspect-Oriented Programming An Introduction to Aspect-Oriented Programming and AspectJ Niklas Påhlsson Department of Technology University of Kalmar S 391 82 Kalmar SWEDEN Topic Report for Software Engineering

More information

How To Combine Feature-Oriented And Aspect-Oriented Programming To Support Software Evolution

How To Combine Feature-Oriented And Aspect-Oriented Programming To Support Software Evolution Combining Feature-Oriented and Aspect-Oriented Programming to Support Software Evolution Sven Apel, Thomas Leich, Marko Rosenmüller, and Gunter Saake Department of Computer Science Otto-von-Guericke-University

More information

How to Model Aspect-Oriented Web Services

How to Model Aspect-Oriented Web Services How to Model Aspect-Oriented Web Services Guadalupe Ortiz Juan Hernández gobellot@unex.es juanher@unex.es Quercus Software Engineering Group University of Extremadura Computer Science Department Pedro

More information

3 Software Architecture

3 Software Architecture Software Architecture and Software Configuration Management Bernhard Westfechtel, Aachen Reidar Conradi, Trondheim Abstract This paper examines the relations between software architecture and software

More information

Combining Feature-Oriented and Aspect-Oriented Programming to Support Software Evolution

Combining Feature-Oriented and Aspect-Oriented Programming to Support Software Evolution Combining Feature-Oriented and Aspect-Oriented Programming to Support Software Evolution Sven Apel, Thomas Leich, Marko Rosenmüller, and Gunter Saake Department of Computer Science University of Magdeburg,

More information

Introducing a Graduate Course on. called Aspect-Oriented Software Development

Introducing a Graduate Course on. called Aspect-Oriented Software Development Int. J. Engng Ed. Vol. 21, No. 2, pp. 361±368, 2005 0949-149X/91 $3.00+0.00 Printed in Great Britain. # 2005 TEMPUS Publications. Introducing a Graduate Course on Aspect-Oriented Software Development*

More information

15. Evolutionary Object-Oriented Software Development (EOS) An agile process based on product-breakdown structure (PBS) Obligatory Literature

15. Evolutionary Object-Oriented Software Development (EOS) An agile process based on product-breakdown structure (PBS) Obligatory Literature 15. Evolutionary Object-Oriented oftware Development (EO) An agile process based on product-breakdown structure (PB) Prof. Dr. rer. nat. Uwe Aßmann Lehrstuhl oftwaretechnologie Fakultät Informatik Technische

More information

Dungeon: A Case Study of Feature-Oriented Programming with Virtual Classes

Dungeon: A Case Study of Feature-Oriented Programming with Virtual Classes Dungeon: A Case Study of Feature-Oriented Programming with Virtual Classes Vaidas Gasiunas Ivica Aracic Technische Universität Darmstadt, Germany {gasiunas,aracic}@informatik.tu-darmstadt.de Abstract A

More information

Chapter 10 Practical Database Design Methodology and Use of UML Diagrams

Chapter 10 Practical Database Design Methodology and Use of UML Diagrams Chapter 10 Practical Database Design Methodology and Use of UML Diagrams Copyright 2011 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Chapter 10 Outline The Role of Information Systems in

More information

Integration of Application Business Logic and Business Rules with DSL and AOP

Integration of Application Business Logic and Business Rules with DSL and AOP Integration of Application Business Logic and Business Rules with DSL and AOP Bogumiła Hnatkowska and Krzysztof Kasprzyk Wroclaw University of Technology, Wyb. Wyspianskiego 27 50-370 Wroclaw, Poland Bogumila.Hnatkowska@pwr.wroc.pl

More information

ProGUM-Web: Tool Support for Model-Based Development of Web Applications

ProGUM-Web: Tool Support for Model-Based Development of Web Applications ProGUM-Web: Tool Support for Model-Based Development of Web Applications Marc Lohmann 1, Stefan Sauer 1, and Tim Schattkowsky 2 1 University of Paderborn, Computer Science, D 33095 Paderborn, Germany {mlohmann,sauer}@upb.de

More information

Chap 1. Introduction to Software Architecture

Chap 1. Introduction to Software Architecture Chap 1. Introduction to Software Architecture 1. Introduction 2. IEEE Recommended Practice for Architecture Modeling 3. Architecture Description Language: the UML 4. The Rational Unified Process (RUP)

More information

Enterprise Integration: operational models of business processes and workflow systems *

Enterprise Integration: operational models of business processes and workflow systems * Enterprise Integration: operational models of business processes and workflow systems. 1 Enterprise Integration: operational models of business processes and workflow systems * G.Bruno 1, C.Reyneri 2 and

More information

Chapter 8 The Enhanced Entity- Relationship (EER) Model

Chapter 8 The Enhanced Entity- Relationship (EER) Model Chapter 8 The Enhanced Entity- Relationship (EER) Model Copyright 2011 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Chapter 8 Outline Subclasses, Superclasses, and Inheritance Specialization

More information

Aspects for Testing Aspects?

Aspects for Testing Aspects? Aspects for Testing Aspects? Dehla Sokenou, Stephan Herrmann Technische Universität Berlin Software Engineering Group Sekr. FR 5-6, Franklinstr. 28/29, D-10587 Berlin [dsokenou stephan]@cs.tu-berlin.de

More information

17. Evolutionary Object-Oriented Software Development (EOS) An agile process based on PBS

17. Evolutionary Object-Oriented Software Development (EOS) An agile process based on PBS 17. Evolutionary Object-Oriented Software Development (EOS) An agile process based on PBS 1 Prof. Dr. rer. nat. Uwe Aßmann Lehrstuhl Softwaretechnologie Fakultät Informatik Technische Universität Dresden

More information

Towards Model-Driven Approach for Rapid ERP Development

Towards Model-Driven Approach for Rapid ERP Development Towards Model-Driven Approach for Rapid ERP Development Igor Miletić 1, Marko Vujasinović², and Zoran Marjanović³ 1 Breza Software Engineering, Kraljice Natalije 23a, 11000 Belgrade, Serbia igor.miletic@brezasoftware.com

More information

Evolution of Web Applications with Aspect-Oriented Design Patterns

Evolution of Web Applications with Aspect-Oriented Design Patterns Evolution of Web Applications with Aspect-Oriented Design Patterns Michal Bebjak 1, Valentino Vranić 1, and Peter Dolog 2 1 Institute of Informatics and Software Engineering Faculty of Informatics and

More information

Verifying Semantic of System Composition for an Aspect-Oriented Approach

Verifying Semantic of System Composition for an Aspect-Oriented Approach 2012 International Conference on System Engineering and Modeling (ICSEM 2012) IPCSIT vol. 34 (2012) (2012) IACSIT Press, Singapore Verifying Semantic of System Composition for an Aspect-Oriented Approach

More information

Prüfung von Traceability Links -Workshop

Prüfung von Traceability Links -Workshop 1 Prüfung von Traceability Links -Workshop Darmstadt, 7.12.2007 Agenda des Workshops 2 10.00 Begrüßung und Vorstellung der Teilnehmer 10.30 Erörterung der Entwicklungsmethoden 11.30 Mittagspause 12.15

More information

Life-Cycle Aware Modelling of Software Components

Life-Cycle Aware Modelling of Software Components Life-Cycle Aware Modelling of Software Components Heiko Koziolek 1, Steffen Becker 3, Jens Happe 2, and Ralf Reussner 2 1 ABB Corporate Research Wallstadter Str. 59, 68526 Ladenburg, Germany 2 Chair for

More information

Applying 4+1 View Architecture with UML 2. White Paper

Applying 4+1 View Architecture with UML 2. White Paper Applying 4+1 View Architecture with UML 2 White Paper Copyright 2007 FCGSS, all rights reserved. www.fcgss.com Introduction Unified Modeling Language (UML) has been available since 1997, and UML 2 was

More information

An MDA Approach for the Development of Web applications

An MDA Approach for the Development of Web applications An MDA Approach for the Development of Web applications Santiago Meliá Beigbeder and Cristina Cachero Castro {santi,ccachero}@dlsi.ua.es Univesidad de Alicante, España Abstract. The continuous advances

More information

Some Research Challenges for Big Data Analytics of Intelligent Security

Some Research Challenges for Big Data Analytics of Intelligent Security Some Research Challenges for Big Data Analytics of Intelligent Security Yuh-Jong Hu hu at cs.nccu.edu.tw Emerging Network Technology (ENT) Lab. Department of Computer Science National Chengchi University,

More information

Using an Aspect Oriented Layer in SOA for Enterprise Application Integration

Using an Aspect Oriented Layer in SOA for Enterprise Application Integration 19 Using an Aspect Oriented Layer in SOA for Enterprise Application Integration Chinthaka D. Induruwana School of Computer Science, University of Manchester, Kilburn Building, Oxford Road M13 9PL induruwc@cs.man.ac.uk

More information

Foundations of Model-Driven Software Engineering

Foundations of Model-Driven Software Engineering Model-Driven Software Engineering Foundations of Model-Driven Software Engineering Dr. Jochen Küster (jku@zurich.ibm.com) Contents Introduction to Models and Modeling Concepts of Model-Driven Software

More information

GECO: Automatic Generator-Composition for (Aspect-oriented) DSLs

GECO: Automatic Generator-Composition for (Aspect-oriented) DSLs GECO: Automatic Generator-Composition for (Aspect-oriented) DSLs Doctoral Symposium - MODELS 2014 Reiner Jung Christian-Albrechts-University Kiel, Germany 30.09.2014 Domain-specific Languages Motivation

More information

JOURNAL OF OBJECT TECHNOLOGY

JOURNAL OF OBJECT TECHNOLOGY JOURNAL OF OBJECT TECHNOLOGY Online at http://www.jot.fm. Published by ETH Zurich, Chair of Software Engineering JOT, 2007 Vol. 6, No. 1, January-February 2007 CM Configuration Change Management John D.

More information

The Class Blueprint A Visualization of the Internal Structure of Classes

The Class Blueprint A Visualization of the Internal Structure of Classes The Class Blueprint A Visualization of the Internal Structure of Classes Michele Lanza Software Composition Group University Of Bern Bern, Switzerland lanza@iam.unibe.ch Stéphane Ducasse Software Composition

More information

Static Analysis and Validation of Composite Behaviors in Composable Behavior Technology

Static Analysis and Validation of Composite Behaviors in Composable Behavior Technology Static Analysis and Validation of Composite Behaviors in Composable Behavior Technology Jackie Zheqing Zhang Bill Hopkinson, Ph.D. 12479 Research Parkway Orlando, FL 32826-3248 407-207-0976 jackie.z.zhang@saic.com,

More information

Unit 5: Object-Role Modeling (ORM) http://www.heppnetz.de/teaching/dpm/

Unit 5: Object-Role Modeling (ORM) http://www.heppnetz.de/teaching/dpm/ Modeling in Business in Information Systems Unternehmensmodellierung und -architekturen Unit 5: Object-Role Modeling (ORM) Professur für Allgemeine BWL, insbesondere E-Business http://www.heppnetz.de/teaching/dpm/

More information

Data Modeling Basics

Data Modeling Basics Information Technology Standard Commonwealth of Pennsylvania Governor's Office of Administration/Office for Information Technology STD Number: STD-INF003B STD Title: Data Modeling Basics Issued by: Deputy

More information

Programming Language Constructs as Basis for Software Architectures

Programming Language Constructs as Basis for Software Architectures Programming Language Constructs as Basis for Software Architectures 1 From individual parts to components In the 50s: Machine/Assembler programs: bound to specific hardware In the 60s-70s: Higher programming

More information

KITES TECHNOLOGY COURSE MODULE (C, C++, DS)

KITES TECHNOLOGY COURSE MODULE (C, C++, DS) KITES TECHNOLOGY 360 Degree Solution www.kitestechnology.com/academy.php info@kitestechnology.com technologykites@gmail.com Contact: - 8961334776 9433759247 9830639522.NET JAVA WEB DESIGN PHP SQL, PL/SQL

More information

II. Conceptual Modeling

II. Conceptual Modeling II. Conceptual Modeling Engineering Software Models in Software Engineering What is Conceptual Modeling? Origins 2003 John Mylopoulos and Steve Easterbrook Conceptual Modeling -- 1 Engineering Software

More information

ONTOLOGY BASED FEEDBACK GENERATION IN DESIGN- ORIENTED E-LEARNING SYSTEMS

ONTOLOGY BASED FEEDBACK GENERATION IN DESIGN- ORIENTED E-LEARNING SYSTEMS ONTOLOGY BASED FEEDBACK GENERATION IN DESIGN- ORIENTED E-LEARNING SYSTEMS Harrie Passier and Johan Jeuring Faculty of Computer Science, Open University of the Netherlands Valkenburgerweg 177, 6419 AT Heerlen,

More information

Formal Concept Analysis used for object-oriented software modelling Wolfgang Hesse FB Mathematik und Informatik, Univ. Marburg

Formal Concept Analysis used for object-oriented software modelling Wolfgang Hesse FB Mathematik und Informatik, Univ. Marburg FCA-SE 10 Formal Concept Analysis used for object-oriented software modelling Wolfgang Hesse FB Mathematik und Informatik, Univ. Marburg FCA-SE 20 Contents 1 The role of concepts in software development

More information

15. Evolutionary Object-Oriented Software Development (EOS) An agile process based on product-breakdown structure (PBS) Obligatory Literature

15. Evolutionary Object-Oriented Software Development (EOS) An agile process based on product-breakdown structure (PBS) Obligatory Literature 15. Evolutionary Object-Oriented oftware Development (EO) An agile process based on product-breakdown structure (PB) Prof. Dr. rer. nat. Uwe Aßmann Lehrstuhl oftwaretechnologie Fakultät Informatik Technische

More information

Relations: Abstracting Object Collaborations

Relations: Abstracting Object Collaborations Relations: Abstracting Object Collaborations Stephanie Balzer Patrick Eugster Thomas R. Gross Technical Report 539, 2006 Department of Computer Science, ETH Zurich Abstract Allowing the description of

More information

Separating Concerns in Software Logistics

Separating Concerns in Software Logistics Separating Concerns in Software Logistics Danny Greefhorst Software Engineering Research Centre PO Box 424, 3500 AK The Netherlands greefhor@serc.nl Software logistics deals with the storage, administration,

More information

Structural Design Patterns Used in Data Structures Implementation

Structural Design Patterns Used in Data Structures Implementation Structural Design Patterns Used in Data Structures Implementation Niculescu Virginia Department of Computer Science Babeş-Bolyai University, Cluj-Napoca email address: vniculescu@cs.ubbcluj.ro November,

More information

GECO: Automatic Generator-Composition for (Aspect-oriented) DSLs

GECO: Automatic Generator-Composition for (Aspect-oriented) DSLs GECO: Automatic Generator-Composition for (Aspect-oriented) DSLs Doctoral Symposium Reiner Jung Christian-Albrechts-Universität zu Kiel Institut für Informatik 26.02.2014 Domain-specific Languages Motivation

More information

INTEROPERABILITY IN DATA WAREHOUSES

INTEROPERABILITY IN DATA WAREHOUSES INTEROPERABILITY IN DATA WAREHOUSES Riccardo Torlone Roma Tre University http://torlone.dia.uniroma3.it/ SYNONYMS Data warehouse integration DEFINITION The term refers to the ability of combining the content

More information

Graph-Grammar Based Completion and Transformation of SDL/UML-Diagrams

Graph-Grammar Based Completion and Transformation of SDL/UML-Diagrams Graph-Grammar Based Completion and Transformation of SDL/UML-Diagrams Position Paper Ulrich A. Nickel, Robert Wagner University of Paderborn Warburger Straße 100 D-33098 Paderborn Germany [duke, wag25]@uni-paderborn.de

More information

Proceedings of the 2012 Winter Simulation Conference C. Laroque, J. Himmelspach, R. Pasupathy, O. Rose, and A.M. Uhrmacher, eds

Proceedings of the 2012 Winter Simulation Conference C. Laroque, J. Himmelspach, R. Pasupathy, O. Rose, and A.M. Uhrmacher, eds Proceedings of the 202 Winter Simulation Conference C. Laroque, J. Himmelspach, R. Pasupathy, O. Rose, and A.M. Uhrmacher, eds TUTORIAL: CONCEPTUAL SIMULATION MODELING WITH ONTO-UML Giancarlo Guizzardi

More information

CompuScholar, Inc. Alignment to Utah's Computer Programming II Standards

CompuScholar, Inc. Alignment to Utah's Computer Programming II Standards CompuScholar, Inc. Alignment to Utah's Computer Programming II Standards Course Title: TeenCoder: Java Programming Course ISBN: 978 0 9887070 2 3 Course Year: 2015 Note: Citation(s) listed may represent

More information

Questions? Assignment. Techniques for Gathering Requirements. Gathering and Analysing Requirements

Questions? Assignment. Techniques for Gathering Requirements. Gathering and Analysing Requirements Questions? Assignment Why is proper project management important? What is goal of domain analysis? What is the difference between functional and non- functional requirements? Why is it important for requirements

More information

Framework Development for Large Systems

Framework Development for Large Systems Framework Development for Large Systems Dirk Bäumer 1, Guido Gryczan 2, Rolf Knoll 3, Carola Lilienthal 2, Dirk Riehle 4, and Heinz Züllighoven 2 Abstract Frameworks are a key asset in large-scale object-oriented

More information

(BA122) Software Engineer s Workshop (SEW)

(BA122) Software Engineer s Workshop (SEW) Training for the Business Analyst (BA122) Software Engineer s Workshop (SEW) Duration: 4 days CDUs (Continuing Development Units): 28 Description: A practical workshop covering the role of the Business-Systems

More information

Component Based Software Engineering: A Broad Based Model is Needed

Component Based Software Engineering: A Broad Based Model is Needed Component Based Software Engineering: A Broad Based Model is Needed Allen Parrish (parrish@cs.ua.edu) Brandon Dixon (dixon@cs.ua.edu) David Hale (dhale@alston.cba.ua.edu) Department of Computer Science

More information

Framework Development for Large Systems

Framework Development for Large Systems Framework Development for Large Systems Dirk Bäumer RWG Stuttgart Guido Gryczan University of Hamburg Vogt-Kölln-Str. 30 22527 Hamburg Germany Phone: +49-40-54 94-2302 Fax: +49-40-54 94-2303 Email:gryczan@informatik.uni-hamburg.de

More information

CSC 742 Database Management Systems

CSC 742 Database Management Systems CSC 742 Database Management Systems Topic #4: Data Modeling Spring 2002 CSC 742: DBMS by Dr. Peng Ning 1 Phases of Database Design Requirement Collection/Analysis Functional Requirements Functional Analysis

More information

Defining and Checking Model Smells: A Quality Assurance Task for Models based on the Eclipse Modeling Framework

Defining and Checking Model Smells: A Quality Assurance Task for Models based on the Eclipse Modeling Framework Defining and Checking Model Smells: A Quality Assurance Task for Models based on the Eclipse Modeling Framework Thorsten Arendt a, Matthias Burhenne a, Gabriele Taentzer a a Philipps-Universität Marburg,

More information

Component-based Development Process and Component Lifecycle Ivica Crnkovic 1, Stig Larsson 2, Michel Chaudron 3

Component-based Development Process and Component Lifecycle Ivica Crnkovic 1, Stig Larsson 2, Michel Chaudron 3 Component-based Development Process and Component Lifecycle Ivica Crnkovic 1, Stig Larsson 2, Michel Chaudron 3 1 Mälardalen University, Västerås, Sweden, ivica.crnkovic@mdh.se 2 ABB Corporate Research,

More information

How To Understand And Understand Common Lisp

How To Understand And Understand Common Lisp Language-Oriented Programming am Beispiel Lisp Arbeitskreis Objekttechnologie Norddeutschland HAW Hamburg, 6.7.2009 Prof. Dr. Bernhard Humm Hochschule Darmstadt, FB Informatik und Capgemini sd&m Research

More information

Software Construction

Software Construction Software Construction Staff Faculty: Univ.-Prof. Dr. rer. nat. Horst Lichter lichter@informatik.rwth-aachen.de Secretary: Bärbel Kronewetter Phone: +49 241 80 21 330 Fax: +49 241 80 22 352 Research Assistants:

More information

A Case Study on Model-Driven and Conventional Software Development: The Palladio Editor

A Case Study on Model-Driven and Conventional Software Development: The Palladio Editor A Case Study on Model-Driven and Conventional Software Development: The Palladio Editor Klaus Krogmann, Steffen Becker University of Karlsruhe (TH) {krogmann, sbecker}@ipd.uka.de Abstract: The actual benefits

More information

Abstract www.softmetaware.com/whitepapers.html

Abstract www.softmetaware.com/whitepapers.html Abstract We would like to understand the interests of our target audience. Please register at www.softmetaware.com/whitepapers.html to provide us with some information about yourself, and to obtain access

More information

Composing Concerns with a Framework Approach

Composing Concerns with a Framework Approach Composing Concerns with a Framework Approach Constantinos A. Constantinides 1,2 and Tzilla Elrad 2 1 Mathematical and Computer Sciences Department Loyola University Chicago cac@cs.luc.edu 2 Concurrent

More information

www.iacpe.com Knowledge, Certification, Networking

www.iacpe.com Knowledge, Certification, Networking www.iacpe.com Knowledge, Certification, Networking Page : 1 of 95 Rev. 01- Feb 2016 IACPE No 19, Jalan Bilal Mahmood 80100 Johor Bahru Malaysia Introduction to Software Engineering The International of

More information

Aspects of a REA Ontology Based Business Service Concept in Value Models

Aspects of a REA Ontology Based Business Service Concept in Value Models Aspects of a REA Ontology Based Business Service Concept in Value Models (short version of CAiSE 2009 paper) Hans Weigand 1, Paul Johannesson 2, Birger Andersson 2, Maria Bergholtz 2 1 Tilburg University,

More information

MDA and Programming Languages

MDA and Programming Languages MDA and Programming Languages Michael Eichberg University of Technology Darmstadt eichberg@informatik.tu-darmstadt.de September 2002 Abstract One of the open issues in Model Driven Architecture (MDA) is

More information

Demonstration of an Automated Integrated Test Environment for Web-based Applications

Demonstration of an Automated Integrated Test Environment for Web-based Applications Demonstration of an Automated Integrated Test Environment for Web-based Applications Tiziana Margaria 1,2, Oliver Niese 2, and Bernhard Steffen 2 1 METAFrame Technologies GmbH, Dortmund, Germany TMargaria@METAFrame.de

More information

USAGE OF BUSINESS RULES IN SUPPLY CHAIN MANAGEMENT

USAGE OF BUSINESS RULES IN SUPPLY CHAIN MANAGEMENT TOTAL LOGISTIC MANAGEMENT No. 2 2009 PP. 5 13 Bartłomiej GAWEŁ, Anna PILCH USAGE OF BUSINESS RULES IN SUPPLY CHAIN MANAGEMENT Abstract: The growth of efficiency in supply chain management depends on the

More information

Object-Oriented Systems Analysis and Design

Object-Oriented Systems Analysis and Design Object-Oriented Systems Analysis and Design Noushin Ashrafi Professor of Information System University of Massachusetts-Boston Hessam Ashrafi Software Architect Pearson Education International CONTENTS

More information

Generating Web Applications from Process Models

Generating Web Applications from Process Models Generating Web Applications from Process Models Jan Schulz-Hofen, Silvan Golega Hasso-Plattner-Institute for Software Systems Engineering Prof.-Dr.-Helmert-Str. 2-3 D-14482 Potsdam, Germany {jan.schulz-hofen,

More information

Exploiting User and Process Context for Knowledge Management Systems

Exploiting User and Process Context for Knowledge Management Systems Workshop on User Modeling for Context-Aware Applications at the 8th Int. Conf. on User Modeling, July 13-16, 2001, Sonthofen, Germany Exploiting User and Process Context for Knowledge Management Systems

More information

Development of Enterprise Architecture of PPDR Organisations W. Müller, F. Reinert

Development of Enterprise Architecture of PPDR Organisations W. Müller, F. Reinert Int'l Conf. Software Eng. Research and Practice SERP'15 225 Development of Enterprise Architecture of PPDR Organisations W. Müller, F. Reinert Fraunhofer Institute of Optronics, System Technologies and

More information

A Lightweight Framework for Universal Fragment Composition

A Lightweight Framework for Universal Fragment Composition A Lightweight Framework for Universal Fragment Composition with an application in the Semantic Web Dissertation zur Erlangung des akademischen Grades Doktoringenieur (Dr.-Ing.) vorgelegt an der Technischen

More information

Obj ect-oriented Construction Handbook

Obj ect-oriented Construction Handbook Obj ect-oriented Construction Handbook Developing Application-Oriented Software with the Tools & Materials Approach Heinz Züllighoven IT'Workplace Solutions, Inc., and LJniversity of Hamburg, Germany as

More information

Combining Static and Dynamic Impact Analysis for Large-scale Enterprise Systems

Combining Static and Dynamic Impact Analysis for Large-scale Enterprise Systems Combining Static and Dynamic Impact Analysis for Large-scale Enterprise Systems The 15th International Conference on Product-Focused Software Process Improvement, Helsinki, Finland. Wen Chen, Alan Wassyng,

More information

A Pattern-based Approach to Business Process Modeling and Implementation in Web Services

A Pattern-based Approach to Business Process Modeling and Implementation in Web Services A Pattern-based Approach to Business Process Modeling and Implementation in Web Services Steen Brahe 1 and Behzad Bordbar 2 1 Danske Bank & IT University of Copenhagen, Denmark stbr@itu.dk 2 University

More information

1 Business Modeling. 1.1 Event-driven Process Chain (EPC) Seite 2

1 Business Modeling. 1.1 Event-driven Process Chain (EPC) Seite 2 Business Process Modeling with EPC and UML Transformation or Integration? Dr. Markus Nüttgens, Dipl.-Inform. Thomas Feld, Dipl.-Kfm. Volker Zimmermann Institut für Wirtschaftsinformatik (IWi), Universität

More information

Business-Driven Software Engineering Lecture 3 Foundations of Processes

Business-Driven Software Engineering Lecture 3 Foundations of Processes Business-Driven Software Engineering Lecture 3 Foundations of Processes Jochen Küster jku@zurich.ibm.com Agenda Introduction and Background Process Modeling Foundations Activities and Process Models Summary

More information

A methodology for secure software design

A methodology for secure software design A methodology for secure software design Eduardo B. Fernandez Dept. of Computer Science and Eng. Florida Atlantic University Boca Raton, FL 33431 ed@cse.fau.edu 1. Introduction A good percentage of the

More information

Curriculum Vitae. Shan Shan Huang

Curriculum Vitae. Shan Shan Huang Curriculum Vitae Shan Shan Huang College of Computing Georgia Institute of Technology 266 Ferst Drive Atlanta, GA 30332-0765 Phone: (404)275-3312 Email: ssh@cc.gatech.edu http://www.freeflygeek.com Research

More information

UPROM Tool: A Unified Business Process Modeling Tool for Generating Software Life Cycle Artifacts

UPROM Tool: A Unified Business Process Modeling Tool for Generating Software Life Cycle Artifacts UPROM Tool: A Unified Business Process Modeling Tool for Generating Software Life Cycle Artifacts Banu Aysolmaz 1 and Onur Demirörs 2 1, 2 Informatics Institute, Middle East Technical University, Ankara,

More information

Compose*: Language-Independent Aspects for.net

Compose*: Language-Independent Aspects for.net Compose*: Language-Independent Aspects for.net Lodewijk M.J. Bergmans [lbergmans@acm.org] TRESE group,, The Netherlands [] 1 Intro: Aspect-Orientation Aspect-Oriented Software Development (AOSD): Improve

More information

What is a life cycle model?

What is a life cycle model? What is a life cycle model? Framework under which a software product is going to be developed. Defines the phases that the product under development will go through. Identifies activities involved in each

More information

Overview of major concepts in the service oriented extended OeBTO

Overview of major concepts in the service oriented extended OeBTO Modelling business policies and behaviour based on extended Open edi Business Transaction Ontology (OeBTO) Introduction Model Driven Development (MDD) provides a basis for the alignment between business

More information

Representing XML Schema in UML A Comparison of Approaches

Representing XML Schema in UML A Comparison of Approaches Representing XML Schema in UML A Comparison of Approaches Martin Bernauer, Gerti Kappel, Gerhard Kramler Business Informatics Group, Vienna University of Technology, Austria {lastname}@big.tuwien.ac.at

More information

International Journal of Web & Semantic Technology (IJWesT) Vol.3, No.3, July 2012. Vishnuvardhan Mannava 1 and T. Ramesh 2

International Journal of Web & Semantic Technology (IJWesT) Vol.3, No.3, July 2012. Vishnuvardhan Mannava 1 and T. Ramesh 2 COMPOSITE DESIGN PATTERN FOR FEATURE- ORIENTED SERVICE INJECTION AND COMPOSITION OF WEB SERVICES FOR DISTRIBUTED COMPUTING SYSTEMS WITH SERVICE ORIENTED ARCHITECTURE Vishnuvardhan Mannava 1 and T. Ramesh

More information

Understanding Software Static and Dynamic Aspects

Understanding Software Static and Dynamic Aspects Understanding Software Static and Dynamic Aspects Welf Löwe IPD, Universität Karlsruhe PF 6980, 76128 Karlsruhe Germany loewe@ira.uka.de Andreas Ludwig IPD, Universität Karlsruhe PF 6980, 76128 Karlsruhe

More information

Variability in Service-Oriented Systems: An Analysis of Existing Approaches

Variability in Service-Oriented Systems: An Analysis of Existing Approaches Variability in -Oriented Systems: An Analysis of Existing Approaches Holger Eichelberger and Christian Kröher and Klaus Schmid 1 Software Systems Engineering, Institute of Computer Science, University

More information