The document discusses the UML metamodel, including its design principles of modularity, layering, partitioning, and extensibility. It describes the organization of the UML specification into an infrastructure layer defining core metaclasses and a superstructure layer defining user-level constructs. Profiles are discussed as a means of customizing and extending UML for specific platforms and domains. Examples are provided of how different UML constructs like classes, activities, and interactions are represented in the metamodel.
Automatically bridging UML profiles into MOF metamodelsIvano Malavolta
27th August 2015. My presentation at SEAA 2015 (http://paginas.fe.up.pt/~dsd-seaa-2015/) about our approach for autmatically bridging UML profiles into MOF metamodels. SEAA 2015 is the 41st Euromicro Conference on Software Engineering and Advanced Applications, and it has been held in 26 - 28 August 2015, Funchal, Madeira, Portugal.
Accompanying paper:
http://www.ivanomalavolta.com/files/papers/SEAA_2015.pdf
Abstract:
In Model-Driven Engineering, UML profiles and MOF-based Domain Specific Modeling Languages (DSMLs) are the most used approaches for describing domain specific applications. The choice of the right approach depends on several aspects, such as tool support, expressivity, complexity of models, company policies. In general, profiled UML models are very much used since they are intuitive for designers and model editors already exist, however they are intrinsically complex for model manipulation (e.g., transformation, analysis); conversely, domain specific models are more concise and easy to be manipulated, but they require an initial effort in terms of designers training and model editors development.
In this paper we propose an approach that allows getting the best of the two worlds: on one side designers can use UML profiles familiar to them, on the other side DSML models (automatically generated from profiled UML models) enable a better model manipulation. Our approach is based on an automatic bridge between UML profiles and MOF metamodels (which are the main artifacts of MOF-based DSMLs). The bridge is transparent to the user since it autonomously operates both on UML profiles and all the involved models. The bridge is realized through model transformation techniques in the Eclipse platform. In this paper we show its application on a case study based on SysML.
Third AssignmentDescribe in 100 – 200 words an application with .docxrandymartin91030
Third Assignment
Describe in 100 – 200 words an application with which you are familiar. This should be an application with which other students and the course instructor are likely to be familiar. An example would be Microsoft Word. Then, select one of the architectural design styles given in the presentation on Architectural Design. Explain why this style is appropriate for the application you described. Then apply this style to the application and explain the result in enough detail that your fellow students are likely to understand.
Organization of your submission
Third Assignment
Your name
Submission Date
Application Description
Style you have selected
Why this style is appropriate for this application
The application’s architecture using this style
Explanation of this architecture (show how some common tasks for this application might be performed using this architecture)
Grading Rubric
Criterion
Points
Application description is well-organized
5
Style choice is one of the styles described
2
Style choice is effectively justified
8
Presented architecture uses the selected style
3
Presented architecture is complete
4
Architecture is described clearly
8
Chapter 7:
Design: Architecture and Methodology
1
Design Topics Covered
Architectural vs. detailed design
“Common” architectural styles, tactics, and reference architectures
Basic techniques for detailed design
Basic issues with user-interface design
2
Design
Starts mostly from/with requirements (evolving mostly from functionalities and other non-functional characteristics).
How is the software solution going to be structured?
What are the main components—(functional comp)?
Often directly from requirements’ functionalities
(use cases).
How are these components related?
Possibly re-organize the components (composition/decomposition).
Two main levels of design:
Architectural (high level)
Detailed design
How should we depict design—notation/language?
3
Relationship between Architecture and Design
Detailed Design
Comes from
Requirements &
Architecture
4
Software Architecture
Structure(s) of the solution, comprising:
Major software elements
Their externally visible properties
Relationships among elements
Every software system has an architecture.
May have multiple structures!
Multiple ways of organizing elements, depending on the perspective
External properties of components (and modules)
Component (module) interfaces
Component (module) interactions, rather than internals of components and modules
5
Views and Viewpoints
View – representation of a system structure
4+1 views (by Krutchen)
Logical (OO decomposition – key abstractions)
Process (run-time, concurrency/distribution of functions)
Subsystem decomposition
Physical architecture
+1: use cases
Other classification (Bass, Clements, Kazman)
Module
Run-time
Allocation (mapping to development environment)
Different views for different people
6
Architectural Styles/Patterns
Pipes a.
Automatically bridging UML profiles into MOF metamodelsIvano Malavolta
27th August 2015. My presentation at SEAA 2015 (http://paginas.fe.up.pt/~dsd-seaa-2015/) about our approach for autmatically bridging UML profiles into MOF metamodels. SEAA 2015 is the 41st Euromicro Conference on Software Engineering and Advanced Applications, and it has been held in 26 - 28 August 2015, Funchal, Madeira, Portugal.
Accompanying paper:
http://www.ivanomalavolta.com/files/papers/SEAA_2015.pdf
Abstract:
In Model-Driven Engineering, UML profiles and MOF-based Domain Specific Modeling Languages (DSMLs) are the most used approaches for describing domain specific applications. The choice of the right approach depends on several aspects, such as tool support, expressivity, complexity of models, company policies. In general, profiled UML models are very much used since they are intuitive for designers and model editors already exist, however they are intrinsically complex for model manipulation (e.g., transformation, analysis); conversely, domain specific models are more concise and easy to be manipulated, but they require an initial effort in terms of designers training and model editors development.
In this paper we propose an approach that allows getting the best of the two worlds: on one side designers can use UML profiles familiar to them, on the other side DSML models (automatically generated from profiled UML models) enable a better model manipulation. Our approach is based on an automatic bridge between UML profiles and MOF metamodels (which are the main artifacts of MOF-based DSMLs). The bridge is transparent to the user since it autonomously operates both on UML profiles and all the involved models. The bridge is realized through model transformation techniques in the Eclipse platform. In this paper we show its application on a case study based on SysML.
Third AssignmentDescribe in 100 – 200 words an application with .docxrandymartin91030
Third Assignment
Describe in 100 – 200 words an application with which you are familiar. This should be an application with which other students and the course instructor are likely to be familiar. An example would be Microsoft Word. Then, select one of the architectural design styles given in the presentation on Architectural Design. Explain why this style is appropriate for the application you described. Then apply this style to the application and explain the result in enough detail that your fellow students are likely to understand.
Organization of your submission
Third Assignment
Your name
Submission Date
Application Description
Style you have selected
Why this style is appropriate for this application
The application’s architecture using this style
Explanation of this architecture (show how some common tasks for this application might be performed using this architecture)
Grading Rubric
Criterion
Points
Application description is well-organized
5
Style choice is one of the styles described
2
Style choice is effectively justified
8
Presented architecture uses the selected style
3
Presented architecture is complete
4
Architecture is described clearly
8
Chapter 7:
Design: Architecture and Methodology
1
Design Topics Covered
Architectural vs. detailed design
“Common” architectural styles, tactics, and reference architectures
Basic techniques for detailed design
Basic issues with user-interface design
2
Design
Starts mostly from/with requirements (evolving mostly from functionalities and other non-functional characteristics).
How is the software solution going to be structured?
What are the main components—(functional comp)?
Often directly from requirements’ functionalities
(use cases).
How are these components related?
Possibly re-organize the components (composition/decomposition).
Two main levels of design:
Architectural (high level)
Detailed design
How should we depict design—notation/language?
3
Relationship between Architecture and Design
Detailed Design
Comes from
Requirements &
Architecture
4
Software Architecture
Structure(s) of the solution, comprising:
Major software elements
Their externally visible properties
Relationships among elements
Every software system has an architecture.
May have multiple structures!
Multiple ways of organizing elements, depending on the perspective
External properties of components (and modules)
Component (module) interfaces
Component (module) interactions, rather than internals of components and modules
5
Views and Viewpoints
View – representation of a system structure
4+1 views (by Krutchen)
Logical (OO decomposition – key abstractions)
Process (run-time, concurrency/distribution of functions)
Subsystem decomposition
Physical architecture
+1: use cases
Other classification (Bass, Clements, Kazman)
Module
Run-time
Allocation (mapping to development environment)
Different views for different people
6
Architectural Styles/Patterns
Pipes a.
A seminar in advanced Software Engineering concerning using models to guide the development process, and QVT to transfer a model into another model automatically
Embedded System training in bangalore,Embedded Systems Course is one of the best fresher training programs in Bangalore, India. Geniune placement ES training in bangalore
Extending Rotor with Structural Reflection to support Reflective Languagesfranciscoortin
Presentation of the results of the project "Extending Rotor with Structural Reflection to support Reflective Languages" at Microsoft Research, Redmond, Washington (USA)
Model-Driven Generation of MVC2 Web Applications: From Models to CodeIJEACS
Computer systems engineering is based,
increasingly, on models. These models permit to describe the
systems under development and their environment at different
abstraction levels. These abstractions allow us to conceive
applications independently of target platforms. For a long
time, models have only constituted a help for human users,
allow to manually develop the final code of computer
applications. The Model-Driven Engineering approach (MDE)
consists of programming at the level of models, represented as
an instance of a meta-model, and using them for generating the
end code of applications. The MDA (Model-Driven
Architecture) is a typical model-driven engineering approach
to application design. MDA is based on the UML standard to
define models and on the meta-modeling environment (MOF)
[1] for model-level programming and code generation. The
code generation operation is the subject of this paper. Thus, in
this work, we explain the code generation of MVC2 Web
application by using the M2M transformation (ATL
transformation language) then the M2T transformation. To
implement this latter we use the Acceleo generator which is a
generator language. In the M2T transformation, we use the
PSM model of Struts2 already generated by M2M
transformation as an input model of Acceleo generator. This
transformation is validated by a case study. The main goal of
this paper is to achieve the end-to-end code generation.
ROS 2 AI Integration Working Group 1: ALMA, SustainML & ROS 2 use case eProsima
The new ROS 2 AI Integration Working Group is focused on enabling Machine Learning technologies for ROS 2.
In this presentation you'll find:
- ALMA: the Human Centric Algebraic Machine Learning project
- SustainML
- Enabling ML technologies for ROS 2 robots with Vulcanexus
This ppt covers the following topics:
Introduction
Data design
Software architectural styles
Architectural design process
Assessing alternative architectural designs
Thus it covers Architectural Design
A seminar in advanced Software Engineering concerning using models to guide the development process, and QVT to transfer a model into another model automatically
Embedded System training in bangalore,Embedded Systems Course is one of the best fresher training programs in Bangalore, India. Geniune placement ES training in bangalore
Extending Rotor with Structural Reflection to support Reflective Languagesfranciscoortin
Presentation of the results of the project "Extending Rotor with Structural Reflection to support Reflective Languages" at Microsoft Research, Redmond, Washington (USA)
Model-Driven Generation of MVC2 Web Applications: From Models to CodeIJEACS
Computer systems engineering is based,
increasingly, on models. These models permit to describe the
systems under development and their environment at different
abstraction levels. These abstractions allow us to conceive
applications independently of target platforms. For a long
time, models have only constituted a help for human users,
allow to manually develop the final code of computer
applications. The Model-Driven Engineering approach (MDE)
consists of programming at the level of models, represented as
an instance of a meta-model, and using them for generating the
end code of applications. The MDA (Model-Driven
Architecture) is a typical model-driven engineering approach
to application design. MDA is based on the UML standard to
define models and on the meta-modeling environment (MOF)
[1] for model-level programming and code generation. The
code generation operation is the subject of this paper. Thus, in
this work, we explain the code generation of MVC2 Web
application by using the M2M transformation (ATL
transformation language) then the M2T transformation. To
implement this latter we use the Acceleo generator which is a
generator language. In the M2T transformation, we use the
PSM model of Struts2 already generated by M2M
transformation as an input model of Acceleo generator. This
transformation is validated by a case study. The main goal of
this paper is to achieve the end-to-end code generation.
ROS 2 AI Integration Working Group 1: ALMA, SustainML & ROS 2 use case eProsima
The new ROS 2 AI Integration Working Group is focused on enabling Machine Learning technologies for ROS 2.
In this presentation you'll find:
- ALMA: the Human Centric Algebraic Machine Learning project
- SustainML
- Enabling ML technologies for ROS 2 robots with Vulcanexus
This ppt covers the following topics:
Introduction
Data design
Software architectural styles
Architectural design process
Assessing alternative architectural designs
Thus it covers Architectural Design
2137ad Merindol Colony Interiors where refugee try to build a seemengly norm...luforfor
This are the interiors of the Merindol Colony in 2137ad after the Climate Change Collapse and the Apocalipse Wars. Merindol is a small Colony in the Italian Alps where there are around 4000 humans. The Colony values mainly around meritocracy and selection by effort.
Explore the multifaceted world of Muntadher Saleh, an Iraqi polymath renowned for his expertise in visual art, writing, design, and pharmacy. This SlideShare delves into his innovative contributions across various disciplines, showcasing his unique ability to blend traditional themes with modern aesthetics. Learn about his impactful artworks, thought-provoking literary pieces, and his vision as a Neo-Pop artist dedicated to raising awareness about Iraq's cultural heritage. Discover why Muntadher Saleh is celebrated as "The Last Polymath" and how his multidisciplinary talents continue to inspire and influence.
2137ad - Characters that live in Merindol and are at the center of main storiesluforfor
Kurgan is a russian expatriate that is secretly in love with Sonia Contado. Henry is a british soldier that took refuge in Merindol Colony in 2137ad. He is the lover of Sonia Contado.
Hadj Ounis's most notable work is his sculpture titled "Metamorphosis." This piece showcases Ounis's mastery of form and texture, as he seamlessly combines metal and wood to create a dynamic and visually striking composition. The juxtaposition of the two materials creates a sense of tension and harmony, inviting viewers to contemplate the relationship between nature and industry.
2. Overview
• UML layers of languages
• The UML Metamodel
• Profiles
Block3UMLMetamodel 2
Advanced Software Engineering
3. Design principles I
• Modularity
– Strong cohesion and loose coupling
– Gather group constructs into packages and
organize features into metaclasses
• Layering
– Layered package structure
• separate core constructs from higher-level ones
– 4-layer metamodel architectural pattern
consistently applied to separate concerns
Block3UMLMetamodel 3
Advanced Software Engineering
4. Design principles II
• Partitioning
– Used to organize conceptual areas within one layer
• Extensibility
– Profiles customize UML to platforms and domains
– Definition of new languages
• augmenting with metaclasses and metarelationships.
• Reuse
– Fine-grained, flexible library defines UML, MOF, CWM
Block3UMLMetamodel 4
Advanced Software Engineering
5. Organization of the specification
• Infrastructure
– Defines metalanguage core
– Contains metaclasses
• Reused for several metamodels, e.g. UML, MOF, CWM.
• Architecturally align UML, MOF, XMI: support model interchange.
• Superstructure
– Defines user level constructs of UML
– Classes derive from infrastructure classes
• Instances of metaclasses from the MOF
– Organized into language units
• Since version 2.5 infrastructure no longer separated
Block3UMLMetamodel 5
Advanced Software Engineering
47. • How to express the following:
1. Instances of a metaclass Entity must implement
a certain interface
2. Components can depend on interfaces
because they invoke their operations
3. Instances of Entity must have exactly one
attribute with name Id of type String
4. Instances of Entity must have exactly one
attribute of type EntityPK (as metaclass)
Some tests (and problems with
metamodeling)
Block3UMLMetamodel 48
Advanced Software Engineering