This document discusses using Model Driven Engineering (MDE) and Aspect Oriented Programming (AOP) together to enable Agile Model Driven Architecture (AMDA). It presents a case study of developing a combat management system using the JACOMO component model in the Modelio UML modeling tool. Key benefits highlighted include raising the level of abstraction, simplifying implementation through AOP, and supporting agility through functional and technical changes to models and code.
Supercavitation uses cavitation effects to create a large gas bubble around an object moving through water, greatly reducing skin friction drag and enabling very high speeds. It occurs when small gas bubbles produced by cavitation expand and combine into a single large, stable bubble enveloping the object. This allows speeds over 200 knots for torpedoes like the VA-111 Shkval torpedo, which exits its tube at 50 knots and ignites its rocket, entering the supercavitation bubble. Supercavitation is also used in 30mm ammunition for the RAMICS mine clearing system, supercavitating propellers, and proposed supercavitating boats that could reach very high speeds and elude detection through a gaseous bubble layer around
The document discusses MilSOFT's tactical data link capabilities. It has experience providing Link 11 and Link 16 capabilities to various military platforms. Its multilink processor is scalable, portable, and expandable, supporting multiple links and data forwarding between them. It complies with NATO standards and can be deployed in different configurations, providing a cost-effective tactical data link solution.
The document discusses Thales Nederland's TACTICOS Combat Management System and its use of the Data Distribution Service (DDS) middleware. The TACTICOS CMS uses a distributed, fault-tolerant architecture with DDS as the information backbone to integrate sensors and weapons on naval vessels. DDS provides scalability, reliability, and information-centric capabilities like publish-subscribe that are crucial for the complex data management and real-time decision making required of a combat management system.
Sujet : Quand le challenger devient leader (Airbus / Boeing)
Définir la politique générale d'entreprise sur le court et long terme par le biais de la méthode Harvard.
Analyses internes et externes (SWOT, BCG, McKinsey, PESTEL, Forces de Porter ...).
Rédaction d'axes de développement et d'hypothétiques solutions.
Analyse des hypothèses via la méthodes VRAI (Vulnérabilité, Risques, Avantages, Inconvénients).
Félicitations du jury : 18/20
This document summarizes a presentation on model-driven development approaches for mobile and IoT applications. It discusses modeling user interactions and integrating IoT, implementation strategies like code generation from platform-independent models to native or cross-platform code. It also presents an approach for application monitoring and user behavior analysis based on integrating logs from the runtime with the application models. Finally, it discusses barriers to adopting model-driven approaches and results from experiments on modeling effort.
IT4IT - Manage the Digital Enterprise.pdfitSMF Belgium
The document discusses managing the digital ecosystem using the IT4IT standard version 3.0. It highlights key challenges in managing today's complex IT landscape with many tools, technologies, vendors and silos. The IT4IT standard addresses these challenges by providing an integrated digital management system and capabilities to manage the full digital lifecycle from strategy to operations. It aims to optimize value streams, automate workflows, and provide transparency across the multi-vendor ecosystem.
Highway to heaven - Microservices Meetup MunichChristian Deger
The document summarizes AutoScout24's transition from a monolithic architecture to microservices in the cloud. Some key points:
- They moved from an on-premise Microsoft-based stack to AWS and a microservices architecture using JVM and Linux.
- This was a major technical transformation to become "mobile first" and reduce costs and time to market while attracting new talent.
- They established architectural principles like event sourcing, autonomous teams, infrastructure as code, and shared-nothing.
- DynamoDB is now used as the "atom feed" between services while eliminating tight coupling.
- Teams are organized around business capabilities rather than projects to improve agility.
Supercavitation uses cavitation effects to create a large gas bubble around an object moving through water, greatly reducing skin friction drag and enabling very high speeds. It occurs when small gas bubbles produced by cavitation expand and combine into a single large, stable bubble enveloping the object. This allows speeds over 200 knots for torpedoes like the VA-111 Shkval torpedo, which exits its tube at 50 knots and ignites its rocket, entering the supercavitation bubble. Supercavitation is also used in 30mm ammunition for the RAMICS mine clearing system, supercavitating propellers, and proposed supercavitating boats that could reach very high speeds and elude detection through a gaseous bubble layer around
The document discusses MilSOFT's tactical data link capabilities. It has experience providing Link 11 and Link 16 capabilities to various military platforms. Its multilink processor is scalable, portable, and expandable, supporting multiple links and data forwarding between them. It complies with NATO standards and can be deployed in different configurations, providing a cost-effective tactical data link solution.
The document discusses Thales Nederland's TACTICOS Combat Management System and its use of the Data Distribution Service (DDS) middleware. The TACTICOS CMS uses a distributed, fault-tolerant architecture with DDS as the information backbone to integrate sensors and weapons on naval vessels. DDS provides scalability, reliability, and information-centric capabilities like publish-subscribe that are crucial for the complex data management and real-time decision making required of a combat management system.
Sujet : Quand le challenger devient leader (Airbus / Boeing)
Définir la politique générale d'entreprise sur le court et long terme par le biais de la méthode Harvard.
Analyses internes et externes (SWOT, BCG, McKinsey, PESTEL, Forces de Porter ...).
Rédaction d'axes de développement et d'hypothétiques solutions.
Analyse des hypothèses via la méthodes VRAI (Vulnérabilité, Risques, Avantages, Inconvénients).
Félicitations du jury : 18/20
This document summarizes a presentation on model-driven development approaches for mobile and IoT applications. It discusses modeling user interactions and integrating IoT, implementation strategies like code generation from platform-independent models to native or cross-platform code. It also presents an approach for application monitoring and user behavior analysis based on integrating logs from the runtime with the application models. Finally, it discusses barriers to adopting model-driven approaches and results from experiments on modeling effort.
IT4IT - Manage the Digital Enterprise.pdfitSMF Belgium
The document discusses managing the digital ecosystem using the IT4IT standard version 3.0. It highlights key challenges in managing today's complex IT landscape with many tools, technologies, vendors and silos. The IT4IT standard addresses these challenges by providing an integrated digital management system and capabilities to manage the full digital lifecycle from strategy to operations. It aims to optimize value streams, automate workflows, and provide transparency across the multi-vendor ecosystem.
Highway to heaven - Microservices Meetup MunichChristian Deger
The document summarizes AutoScout24's transition from a monolithic architecture to microservices in the cloud. Some key points:
- They moved from an on-premise Microsoft-based stack to AWS and a microservices architecture using JVM and Linux.
- This was a major technical transformation to become "mobile first" and reduce costs and time to market while attracting new talent.
- They established architectural principles like event sourcing, autonomous teams, infrastructure as code, and shared-nothing.
- DynamoDB is now used as the "atom feed" between services while eliminating tight coupling.
- Teams are organized around business capabilities rather than projects to improve agility.
System engineering capabilities of 3 dexperience platform for nuclear market ...Capgemini
Virtual system engineering is a key driver for nuclear market to ensure the compliance and the safety of the nuclear plant design in regards to stakeholder needs and functional requirements. The 3DEXPERIENCE platform is offering a unique framework dedicated to system engineering to enable effective decision making by modelling & simulating complex behaviour , fast assessment of technical solution performance, innovation, cost and end-to-end view with advanced requirements management to secure and verify specification . The new System Traceability tool, fully integrated in 3DExperience suite, offers enhanced system traceability and provides a collaborative environment to exchange on model content through a Web based interactive interface. A specific demo featuring a pump system design for nuclear plant demonstrates the end to end traceability between external word requirement document, a Simulink model and a Control Build model
"KillTech project: through innovation to a winning capability", Yelyzaveta B...Fwdays
This talk will be about the success stories of the best Ukrainian KillTech product. We will demonstrate our long-term experience in the development of features, which impress with their killTechness.
The platform architecture developed by the CPaaS.io project - both the overall system architecture as well as the two implementation architectures, one based on FIWARE and the other on u2 - as presented at the first year review meeting in Tokyo on October 5, 2017.
Disclaimer:
This document has been produced in the context of the CPaaS.io project which is jointly funded by the European Commission (grant agreement n° 723076) and NICT from Japan (management number 18302). All information provided in this document is provided "as is" and no guarantee or warranty is given that the information is fit for any particular purpose. The user thereof uses the information at its sole risk and liability. For the avoidance of all doubts, the European Commission and NICT have no liability in respect of this document, which is merely representing the view of the project consortium. This document is subject to change without notice.
Intland Software | codeBeamer ALM: What’s in the Pipeline for the Automotive ...Intland Software GmbH
This talk was presented by Andreas Pabinger and Benjamin Engele (Intland Software) at Intland Connect: Annual User Conference 2020 on 22 Oct 2020. To learn more, visit: https://intland.com/intland-connect-annual-user-conference-2020/
Tamino Mobile - XML based Integration, Development and Application Services f...mfrancis
Tamino Mobile is an XML-based integration, development, and application platform for mobile computing. It provides a consistent approach for mobile access, application architecture, data format and storage, and integration. This reduces costs. The Tamino Mobile Suite is a platform for fourth-generation mobile applications that uses XML from front to back end, supporting various mobile application types. It addresses challenges of device differences, multi-channel access, and usage modes. The suite includes components for interaction, synchronization, presentation, notification, and a mobile database. The platform enables flexible, rapid application development while integrating with backend systems using XML and web services. Example applications and customers are provided for fields like field service, supply chain management, retail, and public transportation
The document discusses SIOS Technology Corp and its CASPian private cloud solution. It provides an overview of key trends driving organizations to consolidate data centers and outsource IT. It also outlines different cloud deployment models and the three main cloud service models (IaaS, PaaS, SaaS). The document predicts strong growth in the private, virtual private and public cloud markets and outlines the benefits SIOS CASPian can provide through automating infrastructure and optimizing resource utilization.
What is it (good for)? - MiCADO webinar No.1/4 - 09/2019Project COLA
1/4 Webinar: How to Automate Deployment and Orchestration of Application (MiCADO introduction)
This first part of the webinar introduces MiCADO and its unique features allowing to accomplish automated deployments and orchestration of application clusters. It was presented by Jozsef Kovacs (MTA SZTAKI). The webinar took place on the 26th of September 2019. If you would like to have more information visit: https://micado-scale.eu
MiCADO is open-source and a highly customisable multi-cloud orchestration and auto-scaling framework for Docker containers, orchestrated by Kubernetes.
Developed by Project COLA funded by the European Commission (grant agreement no: 731574). https://project-cola.eu
MOdel-Driven Approach for design and execution of applications on multiple Cl...Marcos Almeida
Current Cloud’s offer is becoming day by day wider providing a vibrant technical environment, where SMEs can create innovative solutions and evolve their services. Clouds promise cheap and flexible services to end-users at a much larger scale than before.
The main goal of MODAClouds is to provide a decision support system along with design and runtime environments for early prototyping and automatic deployment of applications on multi-Clouds with guaranteed QoS. Model-driven development combined with novel model-driven risk analysis and quality of service prediction enable developers to specify Cloud-provider independent models enriched with quality parameters, implement these, perform quality prediction, monitor applications at run-time and optimize them based on the feedback, thus filling the gap between design and run-time. Additionally, MODAClouds provides techniques for data mapping and synchronization among multiple Clouds.
Website: http://www.modaclouds.eu/
This document presents the Unicorn Reference Architecture which is comprised of three layers: 1) the Unicorn Cloud IDE Plugin built on Eclipse Che, 2) the Unicorn Platform which validates applications, enforces policies, and manages the application lifecycle, and 3) the Multi-Cloud Execution Environment using Docker, CoreOS, Kubernetes, and Arcadia Smart Orchestrator. It defines Unicorn microservices and describes how the layers interact to deploy and manage applications across multiple clouds. The document also presents Unicorn use cases, demonstrators, and how the project will contribute to open source.
This document discusses private cloud computing and SIOS's CASPian private cloud solution. It provides an overview of cloud computing models including infrastructure as a service (IaaS), platform as a service (PaaS), and software as a service (SaaS). It then describes the benefits of SIOS CASPian in providing an automated private IaaS and PaaS to improve application development cycles and reduce costs for enterprises. The document includes charts showing market forecasts and analysis to support the value and need for private cloud solutions.
The document discusses the Standard Interoperability PLM (SIP) project. The SIP project aims to:
1. Develop a methodology and associated testing platform for PLM standards.
2. Create an open community and shared knowledge base around PLM standards.
3. Validate the methodology on real business cases through experimentation.
The SIP project has yielded positive results including validation on a business case with Dassault Aviation, a simulation and testing environment, and an open community. Going forward, the project will focus on applying the methodology to other processes, standards, and defining recommended practices.
Eletronic Warfare System, Strengthen the overall national security apparatus by deploying advanced defense systems, ensuring a proactive and robust defense posture against external threats and enhancing the country's ability to respond swiftly to emerging security challenges.
DDS Advanced Tutorial - OMG June 2013 Berlin MeetingJaime Martin Losa
An extended, in-depth tutorial explaining how to fully exploit the standard's unique communication capabilities.Presented at the OMG June 2013 Berlin Meeting.
Users upgrading to DDS from a homegrown solution or a legacy-messaging infrastructure often limit themselves to using its most basic publish-subscribe features. This allows applications to take advantage of reliable multicast and other performance and scalability features of the DDS wire protocol, as well as the enhanced robustness of the DDS peer-to-peer architecture. However, applications that do not use DDS's data-centricity do not take advantage of many of its QoS-related, scalability and availability features, such as the KeepLast History Cache, Instance Ownership and Deadline Monitoring. As a consequence some developers duplicate these features in custom application code, resulting in increased costs, lower performance, and compromised portability and interoperability.
This tutorial will formally define the data-centric publish-subscribe model as specified in the OMG DDS specification and define a set of best-practice guidelines and patterns for the design and implementation of systems based on DDS.
Micro Frontends
“Extending the microservice idea to frontend development”.
What does it really mean? Is it just abusing a certain hype? Should I consider it? How should I approach it?
These are just some of the questions one might ask when presented with this notion. Long story short – Micro front-ends are a reality! However, it is not for everyone.
In this session, we’re going to demystify micro frontends. We’re going to establish what it is, when it should be considered and the decisions to be made
Application of SHAPE Technologies in Production and Process OptimizationBrian Elvesæter
B. Elvesæter, E. Landre, and A.-J. Berre, "Application of SHAPE Technologies in Production and Process Optimization", paper presentation at IESA 2010 Workshop “Use of MDI/SOA concepts in Industry”, Coventry, United Kingdom, 13 April 2010.
Introduction to Clean Architecture for mobile application development (iOS and Android) and deduction of the VIPER formalization through MVVM design strength and weakness.
Definition of (B)VIPER module as extension and simplification to standard VIPER design for modular application development.
HISTORY. I was the author of this Public Deliverable for the OMI/MODES Project (ESPRIT 20.592 - TR124) in 1998. It is an interesting to see what has changed in 15years. (See http://cordis.europa.eu/esprit/src/omi20592.htm)
System engineering capabilities of 3 dexperience platform for nuclear market ...Capgemini
Virtual system engineering is a key driver for nuclear market to ensure the compliance and the safety of the nuclear plant design in regards to stakeholder needs and functional requirements. The 3DEXPERIENCE platform is offering a unique framework dedicated to system engineering to enable effective decision making by modelling & simulating complex behaviour , fast assessment of technical solution performance, innovation, cost and end-to-end view with advanced requirements management to secure and verify specification . The new System Traceability tool, fully integrated in 3DExperience suite, offers enhanced system traceability and provides a collaborative environment to exchange on model content through a Web based interactive interface. A specific demo featuring a pump system design for nuclear plant demonstrates the end to end traceability between external word requirement document, a Simulink model and a Control Build model
"KillTech project: through innovation to a winning capability", Yelyzaveta B...Fwdays
This talk will be about the success stories of the best Ukrainian KillTech product. We will demonstrate our long-term experience in the development of features, which impress with their killTechness.
The platform architecture developed by the CPaaS.io project - both the overall system architecture as well as the two implementation architectures, one based on FIWARE and the other on u2 - as presented at the first year review meeting in Tokyo on October 5, 2017.
Disclaimer:
This document has been produced in the context of the CPaaS.io project which is jointly funded by the European Commission (grant agreement n° 723076) and NICT from Japan (management number 18302). All information provided in this document is provided "as is" and no guarantee or warranty is given that the information is fit for any particular purpose. The user thereof uses the information at its sole risk and liability. For the avoidance of all doubts, the European Commission and NICT have no liability in respect of this document, which is merely representing the view of the project consortium. This document is subject to change without notice.
Intland Software | codeBeamer ALM: What’s in the Pipeline for the Automotive ...Intland Software GmbH
This talk was presented by Andreas Pabinger and Benjamin Engele (Intland Software) at Intland Connect: Annual User Conference 2020 on 22 Oct 2020. To learn more, visit: https://intland.com/intland-connect-annual-user-conference-2020/
Tamino Mobile - XML based Integration, Development and Application Services f...mfrancis
Tamino Mobile is an XML-based integration, development, and application platform for mobile computing. It provides a consistent approach for mobile access, application architecture, data format and storage, and integration. This reduces costs. The Tamino Mobile Suite is a platform for fourth-generation mobile applications that uses XML from front to back end, supporting various mobile application types. It addresses challenges of device differences, multi-channel access, and usage modes. The suite includes components for interaction, synchronization, presentation, notification, and a mobile database. The platform enables flexible, rapid application development while integrating with backend systems using XML and web services. Example applications and customers are provided for fields like field service, supply chain management, retail, and public transportation
The document discusses SIOS Technology Corp and its CASPian private cloud solution. It provides an overview of key trends driving organizations to consolidate data centers and outsource IT. It also outlines different cloud deployment models and the three main cloud service models (IaaS, PaaS, SaaS). The document predicts strong growth in the private, virtual private and public cloud markets and outlines the benefits SIOS CASPian can provide through automating infrastructure and optimizing resource utilization.
What is it (good for)? - MiCADO webinar No.1/4 - 09/2019Project COLA
1/4 Webinar: How to Automate Deployment and Orchestration of Application (MiCADO introduction)
This first part of the webinar introduces MiCADO and its unique features allowing to accomplish automated deployments and orchestration of application clusters. It was presented by Jozsef Kovacs (MTA SZTAKI). The webinar took place on the 26th of September 2019. If you would like to have more information visit: https://micado-scale.eu
MiCADO is open-source and a highly customisable multi-cloud orchestration and auto-scaling framework for Docker containers, orchestrated by Kubernetes.
Developed by Project COLA funded by the European Commission (grant agreement no: 731574). https://project-cola.eu
MOdel-Driven Approach for design and execution of applications on multiple Cl...Marcos Almeida
Current Cloud’s offer is becoming day by day wider providing a vibrant technical environment, where SMEs can create innovative solutions and evolve their services. Clouds promise cheap and flexible services to end-users at a much larger scale than before.
The main goal of MODAClouds is to provide a decision support system along with design and runtime environments for early prototyping and automatic deployment of applications on multi-Clouds with guaranteed QoS. Model-driven development combined with novel model-driven risk analysis and quality of service prediction enable developers to specify Cloud-provider independent models enriched with quality parameters, implement these, perform quality prediction, monitor applications at run-time and optimize them based on the feedback, thus filling the gap between design and run-time. Additionally, MODAClouds provides techniques for data mapping and synchronization among multiple Clouds.
Website: http://www.modaclouds.eu/
This document presents the Unicorn Reference Architecture which is comprised of three layers: 1) the Unicorn Cloud IDE Plugin built on Eclipse Che, 2) the Unicorn Platform which validates applications, enforces policies, and manages the application lifecycle, and 3) the Multi-Cloud Execution Environment using Docker, CoreOS, Kubernetes, and Arcadia Smart Orchestrator. It defines Unicorn microservices and describes how the layers interact to deploy and manage applications across multiple clouds. The document also presents Unicorn use cases, demonstrators, and how the project will contribute to open source.
This document discusses private cloud computing and SIOS's CASPian private cloud solution. It provides an overview of cloud computing models including infrastructure as a service (IaaS), platform as a service (PaaS), and software as a service (SaaS). It then describes the benefits of SIOS CASPian in providing an automated private IaaS and PaaS to improve application development cycles and reduce costs for enterprises. The document includes charts showing market forecasts and analysis to support the value and need for private cloud solutions.
The document discusses the Standard Interoperability PLM (SIP) project. The SIP project aims to:
1. Develop a methodology and associated testing platform for PLM standards.
2. Create an open community and shared knowledge base around PLM standards.
3. Validate the methodology on real business cases through experimentation.
The SIP project has yielded positive results including validation on a business case with Dassault Aviation, a simulation and testing environment, and an open community. Going forward, the project will focus on applying the methodology to other processes, standards, and defining recommended practices.
Eletronic Warfare System, Strengthen the overall national security apparatus by deploying advanced defense systems, ensuring a proactive and robust defense posture against external threats and enhancing the country's ability to respond swiftly to emerging security challenges.
DDS Advanced Tutorial - OMG June 2013 Berlin MeetingJaime Martin Losa
An extended, in-depth tutorial explaining how to fully exploit the standard's unique communication capabilities.Presented at the OMG June 2013 Berlin Meeting.
Users upgrading to DDS from a homegrown solution or a legacy-messaging infrastructure often limit themselves to using its most basic publish-subscribe features. This allows applications to take advantage of reliable multicast and other performance and scalability features of the DDS wire protocol, as well as the enhanced robustness of the DDS peer-to-peer architecture. However, applications that do not use DDS's data-centricity do not take advantage of many of its QoS-related, scalability and availability features, such as the KeepLast History Cache, Instance Ownership and Deadline Monitoring. As a consequence some developers duplicate these features in custom application code, resulting in increased costs, lower performance, and compromised portability and interoperability.
This tutorial will formally define the data-centric publish-subscribe model as specified in the OMG DDS specification and define a set of best-practice guidelines and patterns for the design and implementation of systems based on DDS.
Micro Frontends
“Extending the microservice idea to frontend development”.
What does it really mean? Is it just abusing a certain hype? Should I consider it? How should I approach it?
These are just some of the questions one might ask when presented with this notion. Long story short – Micro front-ends are a reality! However, it is not for everyone.
In this session, we’re going to demystify micro frontends. We’re going to establish what it is, when it should be considered and the decisions to be made
Application of SHAPE Technologies in Production and Process OptimizationBrian Elvesæter
B. Elvesæter, E. Landre, and A.-J. Berre, "Application of SHAPE Technologies in Production and Process Optimization", paper presentation at IESA 2010 Workshop “Use of MDI/SOA concepts in Industry”, Coventry, United Kingdom, 13 April 2010.
Introduction to Clean Architecture for mobile application development (iOS and Android) and deduction of the VIPER formalization through MVVM design strength and weakness.
Definition of (B)VIPER module as extension and simplification to standard VIPER design for modular application development.
HISTORY. I was the author of this Public Deliverable for the OMI/MODES Project (ESPRIT 20.592 - TR124) in 1998. It is an interesting to see what has changed in 15years. (See http://cordis.europa.eu/esprit/src/omi20592.htm)
UML has evolved significantly since its origins in the early 1990s through the work of three software pioneers. It is now maintained by the OMG and on its fifth major version. However, UML faces several dilemmas regarding its intended uses and relationship to other modeling languages. Its large and complex specification could be simplified. The future of UML involves standardizing diagram interchange, integrating with other languages through semantic MOF, and "unbundling" UML into smaller, more focused and extensible components.
The document discusses a collaboration between SODIUS and CASSIDIAN (EADS Defence & Security) to develop model-driven architecture solutions for supporting systems engineering. It describes a project to enable interchange of data between modeling tools used at CASSIDIAN. The proposed solution uses the NATO Architecture Framework metamodel as a pivot format, with UML diagrams to represent views. Connectors are used to import/export data from tools to the neutral format. A sample migration of models from one tool to another took one week and had mostly complete translation of diagrams and data.
The document discusses an MDA engineering solution for user interface development. It presents the architecture, which includes abstracting the data model and UI model from the target programming language. The solution uses model transformations to generate static and dynamic UIs from the UI model. It aims to make UI development easier and more productive across multiple platforms by leveraging each platform's UI technologies. A demo of the solution generating a Windows Phone 7 UI is also mentioned.
Ocean lotus Threat actors project by John Sitima 2024 (1).pptxSitimaJohn
Ocean Lotus cyber threat actors represent a sophisticated, persistent, and politically motivated group that poses a significant risk to organizations and individuals in the Southeast Asian region. Their continuous evolution and adaptability underscore the need for robust cybersecurity measures and international cooperation to identify and mitigate the threats posed by such advanced persistent threat groups.
Salesforce Integration for Bonterra Impact Management (fka Social Solutions A...Jeffrey Haguewood
Sidekick Solutions uses Bonterra Impact Management (fka Social Solutions Apricot) and automation solutions to integrate data for business workflows.
We believe integration and automation are essential to user experience and the promise of efficient work through technology. Automation is the critical ingredient to realizing that full vision. We develop integration products and services for Bonterra Case Management software to support the deployment of automations for a variety of use cases.
This video focuses on integration of Salesforce with Bonterra Impact Management.
Interested in deploying an integration with Salesforce for Bonterra Impact Management? Contact us at sales@sidekicksolutionsllc.com to discuss next steps.
Let's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with Slackshyamraj55
Discover the seamless integration of RPA (Robotic Process Automation), COMPOSER, and APM with AWS IDP enhanced with Slack notifications. Explore how these technologies converge to streamline workflows, optimize performance, and ensure secure access, all while leveraging the power of AWS IDP and real-time communication via Slack notifications.
AI 101: An Introduction to the Basics and Impact of Artificial IntelligenceIndexBug
Imagine a world where machines not only perform tasks but also learn, adapt, and make decisions. This is the promise of Artificial Intelligence (AI), a technology that's not just enhancing our lives but revolutionizing entire industries.
Digital Marketing Trends in 2024 | Guide for Staying AheadWask
https://www.wask.co/ebooks/digital-marketing-trends-in-2024
Feeling lost in the digital marketing whirlwind of 2024? Technology is changing, consumer habits are evolving, and staying ahead of the curve feels like a never-ending pursuit. This e-book is your compass. Dive into actionable insights to handle the complexities of modern marketing. From hyper-personalization to the power of user-generated content, learn how to build long-term relationships with your audience and unlock the secrets to success in the ever-shifting digital landscape.
GraphRAG for Life Science to increase LLM accuracyTomaz Bratanic
GraphRAG for life science domain, where you retriever information from biomedical knowledge graphs using LLMs to increase the accuracy and performance of generated answers
Main news related to the CCS TSI 2023 (2023/1695)Jakub Marek
An English 🇬🇧 translation of a presentation to the speech I gave about the main changes brought by CCS TSI 2023 at the biggest Czech conference on Communications and signalling systems on Railways, which was held in Clarion Hotel Olomouc from 7th to 9th November 2023 (konferenceszt.cz). Attended by around 500 participants and 200 on-line followers.
The original Czech 🇨🇿 version of the presentation can be found here: https://www.slideshare.net/slideshow/hlavni-novinky-souvisejici-s-ccs-tsi-2023-2023-1695/269688092 .
The videorecording (in Czech) from the presentation is available here: https://youtu.be/WzjJWm4IyPk?si=SImb06tuXGb30BEH .
Monitoring and Managing Anomaly Detection on OpenShift.pdfTosin Akinosho
Monitoring and Managing Anomaly Detection on OpenShift
Overview
Dive into the world of anomaly detection on edge devices with our comprehensive hands-on tutorial. This SlideShare presentation will guide you through the entire process, from data collection and model training to edge deployment and real-time monitoring. Perfect for those looking to implement robust anomaly detection systems on resource-constrained IoT/edge devices.
Key Topics Covered
1. Introduction to Anomaly Detection
- Understand the fundamentals of anomaly detection and its importance in identifying unusual behavior or failures in systems.
2. Understanding Edge (IoT)
- Learn about edge computing and IoT, and how they enable real-time data processing and decision-making at the source.
3. What is ArgoCD?
- Discover ArgoCD, a declarative, GitOps continuous delivery tool for Kubernetes, and its role in deploying applications on edge devices.
4. Deployment Using ArgoCD for Edge Devices
- Step-by-step guide on deploying anomaly detection models on edge devices using ArgoCD.
5. Introduction to Apache Kafka and S3
- Explore Apache Kafka for real-time data streaming and Amazon S3 for scalable storage solutions.
6. Viewing Kafka Messages in the Data Lake
- Learn how to view and analyze Kafka messages stored in a data lake for better insights.
7. What is Prometheus?
- Get to know Prometheus, an open-source monitoring and alerting toolkit, and its application in monitoring edge devices.
8. Monitoring Application Metrics with Prometheus
- Detailed instructions on setting up Prometheus to monitor the performance and health of your anomaly detection system.
9. What is Camel K?
- Introduction to Camel K, a lightweight integration framework built on Apache Camel, designed for Kubernetes.
10. Configuring Camel K Integrations for Data Pipelines
- Learn how to configure Camel K for seamless data pipeline integrations in your anomaly detection workflow.
11. What is a Jupyter Notebook?
- Overview of Jupyter Notebooks, an open-source web application for creating and sharing documents with live code, equations, visualizations, and narrative text.
12. Jupyter Notebooks with Code Examples
- Hands-on examples and code snippets in Jupyter Notebooks to help you implement and test anomaly detection models.
Best 20 SEO Techniques To Improve Website Visibility In SERPPixlogix Infotech
Boost your website's visibility with proven SEO techniques! Our latest blog dives into essential strategies to enhance your online presence, increase traffic, and rank higher on search engines. From keyword optimization to quality content creation, learn how to make your site stand out in the crowded digital landscape. Discover actionable tips and expert insights to elevate your SEO game.
TrustArc Webinar - 2024 Global Privacy SurveyTrustArc
How does your privacy program stack up against your peers? What challenges are privacy teams tackling and prioritizing in 2024?
In the fifth annual Global Privacy Benchmarks Survey, we asked over 1,800 global privacy professionals and business executives to share their perspectives on the current state of privacy inside and outside of their organizations. This year’s report focused on emerging areas of importance for privacy and compliance professionals, including considerations and implications of Artificial Intelligence (AI) technologies, building brand trust, and different approaches for achieving higher privacy competence scores.
See how organizational priorities and strategic approaches to data security and privacy are evolving around the globe.
This webinar will review:
- The top 10 privacy insights from the fifth annual Global Privacy Benchmarks Survey
- The top challenges for privacy leaders, practitioners, and organizations in 2024
- Key themes to consider in developing and maintaining your privacy program
Driving Business Innovation: Latest Generative AI Advancements & Success StorySafe Software
Are you ready to revolutionize how you handle data? Join us for a webinar where we’ll bring you up to speed with the latest advancements in Generative AI technology and discover how leveraging FME with tools from giants like Google Gemini, Amazon, and Microsoft OpenAI can supercharge your workflow efficiency.
During the hour, we’ll take you through:
Guest Speaker Segment with Hannah Barrington: Dive into the world of dynamic real estate marketing with Hannah, the Marketing Manager at Workspace Group. Hear firsthand how their team generates engaging descriptions for thousands of office units by integrating diverse data sources—from PDF floorplans to web pages—using FME transformers, like OpenAIVisionConnector and AnthropicVisionConnector. This use case will show you how GenAI can streamline content creation for marketing across the board.
Ollama Use Case: Learn how Scenario Specialist Dmitri Bagh has utilized Ollama within FME to input data, create custom models, and enhance security protocols. This segment will include demos to illustrate the full capabilities of FME in AI-driven processes.
Custom AI Models: Discover how to leverage FME to build personalized AI models using your data. Whether it’s populating a model with local data for added security or integrating public AI tools, find out how FME facilitates a versatile and secure approach to AI.
We’ll wrap up with a live Q&A session where you can engage with our experts on your specific use cases, and learn more about optimizing your data workflows with AI.
This webinar is ideal for professionals seeking to harness the power of AI within their data management systems while ensuring high levels of customization and security. Whether you're a novice or an expert, gain actionable insights and strategies to elevate your data processes. Join us to see how FME and AI can revolutionize how you work with data!
Introduction of Cybersecurity with OSS at Code Europe 2024Hiroshi SHIBATA
I develop the Ruby programming language, RubyGems, and Bundler, which are package managers for Ruby. Today, I will introduce how to enhance the security of your application using open-source software (OSS) examples from Ruby and RubyGems.
The first topic is CVE (Common Vulnerabilities and Exposures). I have published CVEs many times. But what exactly is a CVE? I'll provide a basic understanding of CVEs and explain how to detect and handle vulnerabilities in OSS.
Next, let's discuss package managers. Package managers play a critical role in the OSS ecosystem. I'll explain how to manage library dependencies in your application.
I'll share insights into how the Ruby and RubyGems core team works to keep our ecosystem safe. By the end of this talk, you'll have a better understanding of how to safeguard your code.
Ivanti’s Patch Tuesday breakdown goes beyond patching your applications and brings you the intelligence and guidance needed to prioritize where to focus your attention first. Catch early analysis on our Ivanti blog, then join industry expert Chris Goettl for the Patch Tuesday Webinar Event. There we’ll do a deep dive into each of the bulletins and give guidance on the risks associated with the newly-identified vulnerabilities.
HCL Notes und Domino Lizenzkostenreduzierung in der Welt von DLAUpanagenda
Webinar Recording: https://www.panagenda.com/webinars/hcl-notes-und-domino-lizenzkostenreduzierung-in-der-welt-von-dlau/
DLAU und die Lizenzen nach dem CCB- und CCX-Modell sind für viele in der HCL-Community seit letztem Jahr ein heißes Thema. Als Notes- oder Domino-Kunde haben Sie vielleicht mit unerwartet hohen Benutzerzahlen und Lizenzgebühren zu kämpfen. Sie fragen sich vielleicht, wie diese neue Art der Lizenzierung funktioniert und welchen Nutzen sie Ihnen bringt. Vor allem wollen Sie sicherlich Ihr Budget einhalten und Kosten sparen, wo immer möglich. Das verstehen wir und wir möchten Ihnen dabei helfen!
Wir erklären Ihnen, wie Sie häufige Konfigurationsprobleme lösen können, die dazu führen können, dass mehr Benutzer gezählt werden als nötig, und wie Sie überflüssige oder ungenutzte Konten identifizieren und entfernen können, um Geld zu sparen. Es gibt auch einige Ansätze, die zu unnötigen Ausgaben führen können, z. B. wenn ein Personendokument anstelle eines Mail-Ins für geteilte Mailboxen verwendet wird. Wir zeigen Ihnen solche Fälle und deren Lösungen. Und natürlich erklären wir Ihnen das neue Lizenzmodell.
Nehmen Sie an diesem Webinar teil, bei dem HCL-Ambassador Marc Thomas und Gastredner Franz Walder Ihnen diese neue Welt näherbringen. Es vermittelt Ihnen die Tools und das Know-how, um den Überblick zu bewahren. Sie werden in der Lage sein, Ihre Kosten durch eine optimierte Domino-Konfiguration zu reduzieren und auch in Zukunft gering zu halten.
Diese Themen werden behandelt
- Reduzierung der Lizenzkosten durch Auffinden und Beheben von Fehlkonfigurationen und überflüssigen Konten
- Wie funktionieren CCB- und CCX-Lizenzen wirklich?
- Verstehen des DLAU-Tools und wie man es am besten nutzt
- Tipps für häufige Problembereiche, wie z. B. Team-Postfächer, Funktions-/Testbenutzer usw.
- Praxisbeispiele und Best Practices zum sofortigen Umsetzen
2. 2 / 34 | 25 nov 2010 | Model Driven Day 2010 : Agile Model Driven Architecture
Resume
Emmanuel GRIVOT
Software architect
Naval defense industry
Thomson CSF
THALES Naval France
DCNS : Système Information et Sécurité /
Direction Technique et Technologique
22 years background in
Combat Management System (CMS) software development.
emmanuel.grivot@dcnsgroup.com
3. 3 / 34 | 25 nov 2010 | Model Driven Day 2010 : Agile Model Driven Architecture
Summary
Model Driven Engineering +
Aspect Oriented Programming =
Agile Model Driven Architecture
ou comment réunir, avec succès,
le MDA pragmatique et l'agilité.
4. 4 / 34 | 25 nov 2010 | Model Driven Day 2010 : Agile Model Driven Architecture
AGENDA
1. DCNS
2. Combat Management System
3. JACOMO component model
4. Demonstration with Modelio
5. UML tools REX
6. Perspectives, Q & A
5. 5 / 34 | 25 nov 2010 | Model Driven Day 2010 : Agile Model Driven Architecture
AGENDA
1. DCNS
2. Combat Management System
3. JACOMO component model
4. Demonstration with Modelio
5. UML tools REX
6. Perspectives, Q & A
6. 6 / 34 | 25 nov 2010 | Model Driven Day 2010 : Agile Model Driven Architecture
DCNS : Naval in Europe and worldwide
The DCNS Group is a leading European player
for naval defense systems.
DCNS acts as prime contractor of the armed vessels and their support.
12 200 employees working across France.
2,4 billion euros in turnover.
9,9 billion euros of backlog.
1 / 3 of its international business and cooperation.
21 Sites:
Paris, Bagneux, Cherbourg, Brest, Toulon, Lorient, Ruelle, …
7. 7 / 34 | 25 nov 2010 | Model Driven Day 2010 : Agile Model Driven Architecture
Different ships and submarines
HORIZON
FREMM
BPC
BARRACUDA
PA CDG
8. 8 / 34 | 25 nov 2010 | Model Driven Day 2010 : Agile Model Driven Architecture
Frigate
Communication
Combat Management
System
Optronic
sonar
Electronic Warfare
Surveillance radar
IR
sonar
Navigation radar
missiles
gunmissilesmissiles
9. 9 / 34 | 25 nov 2010 | Model Driven Day 2010 : Agile Model Driven Architecture
AGENDA
1. DCNS
2. Combat Management System
3. JACOMO component model
4. Demonstration with Modelio
5. UML tools REX
6. Perspectives, Q & A
10. 10 / 34 | 25 nov 2010 | Model Driven Day 2010 : Agile Model Driven Architecture
Combat Management System (CMS)
Tailored information system
Network
Data Link
Navigation System Radar Navigation Radar Sonar IR
Electronic
Warfare
TLSMissiles SurfGunMissile AirDLS
Combat Management System
11. 11 / 34 | 25 nov 2010 | Model Driven Day 2010 : Agile Model Driven Architecture
AGENDA
1. DCNS
2. Combat Management System
3. JACOMO component model
4. Demonstration with Modelio
5. UML tools REX
6. Perspectives, Q & A
12. 12 / 34 | 25 nov 2010 | Model Driven Day 2010 : Agile Model Driven Architecture
Agility and Model Driven Engineering ?
Agility as:
“ the ability to successfully respond to change ” *
Two kinds of change:
Functional changes
Technology changes
Solutions:
Processes: agile method, scrum, xp, …
Technologies: AOP, …
Tools: MDE, MDA, UML, …
…
* http://www.infoq.com/news/2010/06/c2-military-gets-agile
13. 13 / 34 | 25 nov 2010 | Model Driven Day 2010 : Agile Model Driven Architecture
JACOMO component model
AOP : Quality of Services (SoC)
<<Remotable>>
CBSE : JACOMO composite component model
JACOMO Component
MDE : UML profile and middleware independence
<<ProvidedServices>> <<UsedServices>>
<<ConsumedEvent>> <<ProducedEvent>>
ED – SOA : Services and Events ports
*
0..1
14. 14 / 34 | 25 nov 2010 | Model Driven Day 2010 : Agile Model Driven Architecture
AGENDA
1. DCNS
2. Combat Management System
3. JACOMO component model
4. Demonstration with Modelio
5. UML tools REX
6. Perspectives, Q & A
15. 15 / 34 | 25 nov 2010 | Model Driven Day 2010 : Agile Model Driven Architecture
Track:
Domain entity concept
User can Create, Read, Update and Delete Tracks (CRUD pattern)
HelloTracksWorld application
Track domain concept
Track
1
+identification
1
+kinematic
Identification
<<interface>>
Kinematic
<<interface>>
Track
<<Entity>>
16. 16 / 34 | 25 nov 2010 | Model Driven Day 2010 : Agile Model Driven Architecture
Tracks component decomposition:
Presentation, Logic and Data layers
TracksDataEvents
TrackId
Track
TracksData
<<ProducedComponentEvents>>
*
<<ProvidedComponentServices>>
theTracks
*
trackId
TracksLogic
TracksDataServices
<<UsedComponentServices>> 1
<<ProvidedComponentServices>>
TracksServices
TracksPresentation
TracksLogicServices
<<UsedComponentServices>>
0..1
<<ProvidedComponentServices>>
<<ConsumedComponentEvents>>
TracksEvents
<<ProducedComponentEvents>>
*
17. 17 / 34 | 25 nov 2010 | Model Driven Day 2010 : Agile Model Driven Architecture
:TracksPresentation
Tracks components sequence diagram
:User :TracksData:TracksLogic
createTrack( )
createTrack( )
createTrack( )
notifyCreatedTrack( )
notifyCreatedTrack( )
18. 18 / 34 | 25 nov 2010 | Model Driven Day 2010 : Agile Model Driven Architecture
Tracks component:
MDE, CBSE, ED - SOA
TracksEventsTracksServices
Tracks
*
<<ProducedComponentEvents>><<ProvidedComponentServices>>
Watch tracks
Delete track
Modify track
Create track
User Manage Tracks
<<include>>
<<include>>
<<include>>
<<include>>
19. 19 / 34 | 25 nov 2010 | Model Driven Day 2010 : Agile Model Driven Architecture
:Tracks:User
HelloTracksWorld Services and Events
CRUD pattern (Create Read Update Delete)
createTrack( )
Tracks
<<ProducedComponentEvents>>
*
<<ProvidedComponentServices>>
TracksEvents
<<interface, ComponentEvents>>
TracksServices
<<interface, ComponentServices>>
notifyDeletedTrack(in aTrackId : TrackId)
notifyUpdatedTrack(in aTrackId : TrackId, in aTrack : Track)
notifyCreatedTrack(in aTrackId : TrackId, in aTrack : Track)
deleteTrack()
updateTrack()
createTrack()
notifyCreatedTrack( )
20. 20 / 34 | 25 nov 2010 | Model Driven Day 2010 : Agile Model Driven Architecture
Tracks component decomposition:
CBSE, three layers components
Tracks Interface
Track
TracksPresentation TracksLogic
TracksData
trackId
*
theTracks
TracksServices TracksEvents
Tracks
1 1
1
*
21. 21 / 34 | 25 nov 2010 | Model Driven Day 2010 : Agile Model Driven Architecture
Tracks component decomposition:
Presentation, Logic and Data layers
TracksDataEvents
TrackId
Track
TracksData
<<ProducedComponentEvents>>
*
<<ProvidedComponentServices>>
theTracks
*
trackId
TracksLogic
TracksDataServices
<<UsedComponentServices>> 1
<<ProvidedComponentServices>>
TracksServices
TracksPresentation
TracksLogicServices
<<UsedComponentServices>>
0..1
<<ProvidedComponentServices>>
<<ConsumedComponentEvents>>
TracksEvents
<<ProducedComponentEvents>>
*
22. 22 / 34 | 25 nov 2010 | Model Driven Day 2010 : Agile Model Driven Architecture
:TracksPresentation
Tracks components sequence diagram
:User :TracksData:TracksLogic
createTrack( )
createTrack( )
createTrack( )
notifyCreatedTrack( )
notifyCreatedTrack( )
23. 23 / 34 | 25 nov 2010 | Model Driven Day 2010 : Agile Model Driven Architecture
TracksPresentation component Overview:
<<Presentation layer>>
Tracks Interface
TracksPresentation
TracksLogic Interface
TracksData Interface
TracksServices TracksEvents
<<ProvidedComponentServices>> <<ProducedComponentEvents>>
*
TracksLogicServices
<<UsedComponentServices>>
0..1
TracksDataEvents
<<ConsumedComponentEvents>>
25. 25 / 34 | 25 nov 2010 | Model Driven Day 2010 : Agile Model Driven Architecture
TracksLogic component Overview:
<<Logic layer>>
TracksLogicServices
TracksLogic
<<ProvidedComponentServices>>
TracksData Interface
TracksDataServices
<<UsedComponentServices>>
1
26. 26 / 34 | 25 nov 2010 | Model Driven Day 2010 : Agile Model Driven Architecture
TracksLogic component Detailed
TracksData Interface
TracksLogic
<<ProvidedComponentServices>>
TracksLogicServices
<<interface, ComponentServices>>
deleteTrack(in aTrackId : TrackId)
updateTrack(in aTrackId : TrackId, in aTrack : Track)
createTrack(in aTrack : Track):TrackId
<<UsedComponentServices>>1
TracksDataServices
<<interface, ComponentServices>>
deleteTrack(in aTrackId : TrackId)
updateTrack(in aTrackId : TrackId, in aTrack : Track)
createTrack(in aTrackId : TrackId, in aTrack : Track)
27. 27 / 34 | 25 nov 2010 | Model Driven Day 2010 : Agile Model Driven Architecture
TracksData component Overview:
<<Data layer>>
TracksDataEvents
TracksDataServices
TracksData
<<ProvidedComponentServices>>
<<ProducedComponentEvents>>
* Track
theTracks
*
trackId
28. 28 / 34 | 25 nov 2010 | Model Driven Day 2010 : Agile Model Driven Architecture
TracksData component Detailed
TracksData
<<ProvidedComponentServices>>
*
<<ProducedComponentEvents>>
theTracks
*
trackId
Track
TracksDataEvents
<<interface, ComponentEvents>>
TracksDataServices
<<interface, ComponentServices>>
notifyDeletedTrack(in aTrackId : TrackId)
notifyUpdatedTrack(in aTrackId : TrackId, in aTrack : Track)
notifyCreatedTrack(in aTrackId : TrackId, in aTrack : Track)
deleteTrack(in aTrackId : TrackId)
updateTrack(in aTrackId : TrackId, in aTrack : Track)
createTrack(in aTrackId : TrackId, in aTrack : Track)
29. 29 / 34 | 25 nov 2010 | Model Driven Day 2010 : Agile Model Driven Architecture
TracksData component unit tests:
black box and white box with JUnit
TracksDataServices
TracksData
0..1
tracksDataServices
0..1
tracksDataUnderTest
TracksDataServicesTest
testToDo()
Black Box Unit Test
description
TracksDataImpl
TracksDataServicesImplTest
setup()
White Box Unit Test
description
Annotations
@Before
30. 30 / 34 | 25 nov 2010 | Model Driven Day 2010 : Agile Model Driven Architecture
Local deployment HelloTracksWorld application
TracksPresentation
0..1
TracksDataEvents
TracksDataServices
TracksData
*
TracksLogicServices
TracksLogic
1
JVM
Locale interfaces.Locale interfaces.
Locale
interfaces.
31. 31 / 34 | 25 nov 2010 | Model Driven Day 2010 : Agile Model Driven Architecture
TracksLogicServices
TracksLogic
1
Remote deployment HelloTracksWorld application:
<<Remotable>> QoS
Server
JVM 1
Client
JVM 2
TracksPresentation
0..1
TracksDataEvents
TracksDataServices
TracksData
*
Locale
interfaces.
Locale interfaces.Remote interfaces.
<<Remotable>>
comment
<<Remotable>>
comment
32. 32 / 34 | 25 nov 2010 | Model Driven Day 2010 : Agile Model Driven Architecture
@ComponentEvents
public interface TracksDataEvents {
...
}
PSM +TracksDataEvents
<<ComponentEvents, >>
PIM
@ComponentServices
public interface TracksLogicServices {
...
}
PSM
+TracksLogicServices
<<ComponentServices, >>
PIM
Remote QoS components interface
@Remotable
@Remotable
@Remotable can be weaved to
1 RMI (default), 2 JGroups, … others : Web Services, socket, …
Remotable
Remotable QoS
Remotable
Remotable QoS
33. 33 / 34 | 25 nov 2010 | Model Driven Day 2010 : Agile Model Driven Architecture
UML JACOMO component profile for
Architecture Description Language (ADL)
UML PIM JACOMO PSM
Analysis concepts:
<<ComponentType>> @ComponentType
<<ComponentServices>> @ComponentServices
<<ComponentEvents>> @ComponentEvents
...
Design concepts: Quality of Service (QoS)
<< Remotable >> @Remotable
<< Persistable >> @Persistable
<< Asynchronous >> @Asynchronous
...
34. 34 / 34 | 25 nov 2010 | Model Driven Day 2010 : Agile Model Driven Architecture
AGENDA
1. DCNS
2. Combat Management System
3. JACOMO component model
4. Demonstration with Modelio
5. UML tools REX
6. Perspectives, Q & A
35. 35 / 34 | 25 nov 2010 | Model Driven Day 2010 : Agile Model Driven Architecture
Objecteering and Modelio UML tools
Model Driven Engineering need UML tool :
We use objecteering since 2000 for Model Driven Engineering.
100% of the code is inside the UML tool.
JACOMO profile, wizard since 2004.
THALES Systèmes aéroportés collaboration since 2004.
DoD* documents generation (SRS, IRS).
First MDA experiment with AOP since 2005.
Modelio migration: 2010 (JACOMO wizard + SDD)
*DoD: Department of Defense
by
36. 36 / 34 | 25 nov 2010 | Model Driven Day 2010 : Agile Model Driven Architecture
MDE: the lesson we learn
“raise the level of abstraction of the UML model”
MDE: Raise the level of abstraction:
Put your domain, pattern, frameworks, … inside UML tool.
Don’t use UML tool only to input Java code (IDE tools are better).
Use UML for the analysis model only, and keep the code conform
to the model, to the architecture.
MDA + AOP: Productivity Advantages
The UML profile and wizard are simple to implement.
Use AOP to weave technical code outside the UML model.
Up to 70% of the technical code for the PSM is removed.
Agility
Functional change, simple code change
Technology change, only AOP weaver change
Pair modeling, Tests first, stand-up meeting, …
37. 37 / 34 | 25 nov 2010 | Model Driven Day 2010 : Agile Model Driven Architecture
AGENDA
1. DCNS
2. Combat Management System
3. JACOMO component model
4. Demonstration with Modelio
5. UML tool REX
6. Perspectives, Q & A
38. 38 / 34 | 25 nov 2010 | Model Driven Day 2010 : Agile Model Driven Architecture
Perspectives
Modelio deployment
medium-scale team and model support (svn)
Some metrics
Total of 1500 JACOMO components (now 700)
Expects to raise productivity x 20 to build software architecture
with JACOMO wizard and modelio
UML 2 migration
Native <<component>> for PIM and PSM
JACOMO UML2 profile and wizard for PIM and PSM
by
39. 39 / 34 | 25 nov 2010 | Model Driven Day 2010 : Agile Model Driven Architecture
Questions & Answers
Solve essential complexity
without introducing accidental complexity *:
“The best UML model
is the one you didn’t need to build **.”
Thank You
* Frederick P. Brooks
** “The best line of code is the one you didn't need to write.”
40.
41. 41 / 34 | 25 nov 2010 | Model Driven Day 2010 : Agile Model Driven Architecture
References
References:
Agile Modeling :
http://www.agilemodeling.com
Explore Model Driven Architecture and Aspect-oriented
Programming
http://www.devx.com/enterprise/Article/27703/1954?pf=true
The Role of Aspect-Oriented Programming
in OMG’s Model-Driven Architecture
http://www.aspectprogramming.com/papers/AOP and MDA.pdf
Le point sur la programmation par aspects
http://www.emn.fr/z-info/ledoux/Publis/tsi01.pdf
42. 42 / 34 | 25 nov 2010 | Model Driven Day 2010 : Agile Model Driven Architecture
Annexes
The following slides are provided for more details
information.
43. 43 / 34 | 25 nov 2010 | Model Driven Day 2010 : Agile Model Driven Architecture
Software's Chronic Crisis
31% of software are cancel before delivery (Gartner 2002)
52% of software are out of budget: (up to +189% Gartner 2002)
50% of software doesn’t answer to the specification (Gartner 2002)
80% of software are later: (up to x 2..3 Aberdeen)
16% of software are
in time, in budget and answer to the specifications
(down to 9% for large software)
Why is this?
complexity
44. 44 / 34 | 25 nov 2010 | Model Driven Day 2010 : Agile Model Driven Architecture
The Cost of Complexity
Complexity augments more quickly than any metrics
Complexity
• more SLoC (Source Line of Code) => more complex
• more complex => more expensive
80..100 KSLoC
SLoC
e1,5
45. 45 / 34 | 25 nov 2010 | Model Driven Day 2010 : Agile Model Driven Architecture
Essential and Accidental complexity
Essential complexity
is caused by the problem to be solved.
Essential complexity must be mastered.
To solve essential complexity
without introducing accidental complexity.
Accidental complexity
is caused by the approach chosen to solve the problem.
Accidental complexity must be reduced.
Frederick P. Brooks
The Mythical Man-Month (1975-1995)
Essence and Accidents of Software Engineering
46. 46 / 34 | 25 nov 2010 | Model Driven Day 2010 : Agile Model Driven Architecture
Platform 1 Pf 2 Pf 3 Pf 4 Pf 5
C++, Java, C#, ADA, CORBA, CCM, COM/DCOM, EJB, .NET, XML, Web services, SCA, OSGi, Spring…
Rapid technological evolution
Non-functional requirements evolution
Response time, security, fault tolerance, availability, transactions, persistence …
Non functional
requirements 1
Non functional
requirements 2
Non functional
requirements 3
Non functional
requirements 4
The Three Lifecycles to connect
Business Model 1 BM 2 BM 3
Functional requirements quasi-stability
Function coverage 1, Function coverage 2…
System lifetime
10-30 years
Non functional lifetime
10-20 years
Platform lifetime
5-10 years
47. 47 / 34 | 25 nov 2010 | Model Driven Day 2010 : Agile Model Driven Architecture
AGENDA
1. DCNS
2. Combat Management System
3. Model Driven Architecture approach
4. Aspect Oriented Programming approach
5. JACOMO technology
6. Objecteering UML tool
7. Perspectives, Q & A
48. 48 / 34 | 25 nov 2010 | Model Driven Day 2010 : Agile Model Driven Architecture
Model Driven Architecture approach:
How software systems will be build
Model Driven Architecture (MDA)
is a software design approach
base on the Model Driven Engineering.
It was launched by the Object Management Group (OMG)
in 2001.
MDA provide an approach to the challenge
of business and technology change.
MDA separates application logic from
underlying platform technology inside two different models:
Platform Independent Model (PIM) focus on business logic
Platform Specific Model (PSM) focus on platform technology
49. 49 / 34 | 25 nov 2010 | Model Driven Day 2010 : Agile Model Driven Architecture
Model Driven Architecture: two different flavors
Translationist
PIM abstracts out execution platform technology details
PSM or code is not edited: all behavior expressed in PIM model
Translationist MDA requires executable UML: Action Semantics …
Elaborationist
PIM abstracts out execution platform technology details
PSM is an elaboration (i.e. fills in the platform detail)
PSM or code can be edited: to add behavior
A long way to improve the tools?
50. 50 / 34 | 25 nov 2010 | Model Driven Day 2010 : Agile Model Driven Architecture
UML tool
Model Driven Architecture tools
Platform Independent Model:
UML
Platform Definition Model:
Java, C#, Ada, Corba, RMI, …
Platform Specific Model:
UML
Code:
Java, C#, Ada, …
Models
transformations
bind a domain model
to a technology
(Query / View / Transformation)
code generation
Runtime:
binary
compilation
execution
51. 51 / 34 | 25 nov 2010 | Model Driven Day 2010 : Agile Model Driven Architecture
Model Driven Architecture
Large project : we use elaborationist process
Large MDA project feedback:
UML 1.4 Platform Independent Model (PIM)
1200 domain classes (data tier)
Platform Definition Model = Corba Component Model
UML 1.4 Platform Specific Model (PSM)
UML -> IDL -> Java: 1200 x 3 = 3600 Java classes
Code edition to add behavior (logic tier)
Drawbacks
2..3 days non stop for PIM to PSM model transformation
and code generation
Fat PSM model (x3 to x4 size of PIM)
behavior code depends on Corba classes!
Complex tools and not scalable!
52. 52 / 34 | 25 nov 2010 | Model Driven Day 2010 : Agile Model Driven Architecture
AGENDA
1. DCNS
2. Combat Management System
3. Model Driven Architecture approach
4. Aspect Oriented Programming approach
5. JACOMO technology
6. Objecteering UML tool
7. Perspectives, Q & A
53. 53 / 34 | 25 nov 2010 | Model Driven Day 2010 : Agile Model Driven Architecture
Aspect Oriented Software Development
AOSD involves three distinct development steps:
1. Aspectual de-composition
Decompose the requirements to identify different aspects.
3. Aspectual re-composition
The re-composition process, also known as weaving.
2. Aspect implementation
Implement each aspect separately
54. 54 / 34 | 25 nov 2010 | Model Driven Day 2010 : Agile Model Driven Architecture
Bind the Domain Model to the Runtime Platform
Raise the level of abstraction: omitting detail
MDA and AOP solve this problem differently
MDA says: “let's add another abstraction layer”
AOP says: “no, let's not. In fact, let's remove some”
Domain classes*
platform classes
aspects
weaving
AOP approach
Domain classes
platform classes
models
transformation
MDA approach
Analysis:
Runtime:
*Plain Ordinary Java Object
55. 55 / 34 | 25 nov 2010 | Model Driven Day 2010 : Agile Model Driven Architecture
AGENDA
1. DCNS
2. Combat Management System
3. Model Driven Architecture approach
4. Aspect Oriented Programming approach
5. JACOMO component
6. Objecteering UML tool
7. Perspectives, Q & A
56. 56 / 34 | 25 nov 2010 | Model Driven Day 2010 : Agile Model Driven Architecture
JACOMO component
CBSE
Component
Based
Software
Engineering
AOP
Aspect
Oriented
Programming
(Separation of
Concerns)
ED - SOA
Event Driven -
Service
Oriented
Architecture
(multi-tier
architecture)
MDE
Model Driven
Engineering
(Model Driven
Architecture)
The four puzzles
to build JACOMO component
57. 57 / 34 | 25 nov 2010 | Model Driven Day 2010 : Agile Model Driven Architecture
UML class diagram to Java code:
shared abstraction, shared vocabulary
package demo;
public class B extends A implements I {
public int att1 = 10;
protected boolean att2 = true;
float att3; // = 0.0
private String att4; // = null
public B att5; // = null
public void operation() {};
public static void operation1() {};
}
Only one Java file “./demo/B.java”
demo
A I
+ operation()
B
+ operation ()
+ operation1 ()
+ att5
0..1
<<implements>>
<<extends>>
+ att1 : integer = 10
# att2 : boolean = true
~ att3 : real
- att4 : string
One B UML class
Java PSM close to
class diagram PIM
58. 58 / 34 | 25 nov 2010 | Model Driven Day 2010 : Agile Model Driven Architecture
The middleware include the platform technical code advices,
multi-threading, transaction,
logging and debugging,
remote,
state replication, state persistence,
asynchronous,
…
All code advices are put inside middleware layer
Component =
domain logic +
technical concerns
59. 59 / 34 | 25 nov 2010 | Model Driven Day 2010 : Agile Model Driven Architecture
Architectures:
Functional and Technical Y cycle separation
Design
Engineering
Analysis Technology
Technical
Architecture
Technical
solutions
Software
Architecture
Technical
aspects
Functional
Architecture
Logical
Architecture
Use Cases
Software
components
Architectural
Principles
Deployed
Architecture
System
ArchitectureSoftware
platform
Physical
platform
60. 60 / 34 | 25 nov 2010 | Model Driven Day 2010 : Agile Model Driven Architecture
Domain Logic gap with the Runtime Platform:
How to fill the gap?
Ideal:
Domain Logic
Runtime Platform
MDA models transformation:
Domain Logic
Runtime Platform
Platform gap:
Domain Logic
Runtime Platform
AOP weaving:
Domain Logic
Runtime Platform
dependency
61. 61 / 34 | 25 nov 2010 | Model Driven Day 2010 : Agile Model Driven Architecture
Problem of dependency:
Application depend on middleware API
middleware X
What goes wrong with classical application layering?
• Application code is build on top of middleware
• No transparency (design dependency on middleware API)
Runtime Platform
If you change the middleware,
you must change some application code.
Application depend on middleware.
Application
middleware Y
Application
Strong dependency with middleware API
62. 62 / 34 | 25 nov 2010 | Model Driven Day 2010 : Agile Model Driven Architecture
+ middleware configuration
middleware X
middleware X bindingmiddleware Y binding
middleware Y
Dependency Inversion:
Application doesn’t depend on middleware
Separate the modules dependency
• Application code is build beside of middleware
Runtime Platform
Application
You can change the middleware without modifying the
application code: separation of concerns.
Application can be used with different
middleware at the same time: interoperability
NO dependency with the PDM API
63. 63 / 34 | 25 nov 2010 | Model Driven Day 2010 : Agile Model Driven Architecture
JACOMO component model
is middleware agnostic to promote
Model Driven Architecture
QoS
events notification between component
remote services and events between components.
asynchronous invocation for services and events .
persistence for components parameters.
component state replication.
software transaction memory.
JACOMO is middleware agnostic
64. 64 / 34 | 25 nov 2010 | Model Driven Day 2010 : Agile Model Driven Architecture
UML tool
AOP tool
Aspect-Oriented Model Driven Architecture (AO-MDA)
and tools connection
code compilation
Platform Independent Model: (no behavior)
UML + Component profile
Platform Specific Model 1: no middleware
Java code + @nnotation + behavior
custom Java
code generator
AOP
weaver
Platform Specific Model 2: with middleware
JVM runtime: behavior + middleware aspects
@nnotation
(point cut)
middleware
(code advice)
code execution
Platform Definition Model:
Java + middleware
<< stereotype >>
{ tag }
@nnotations
1 / 12 LoC
1 / 4 LoC
4 / 4 LoC
65. 65 / 34 | 25 nov 2010 | Model Driven Day 2010 : Agile Model Driven Architecture
Component-Based Software Engineering
with component model profile
<<ComponentType>>
<<provided
Services>>
<<produced
Events>>
<<consumed
Events>>
<<used
Services>>
<<provided
Parameters>>
<<used
Parameters>>
JACOMO
Component
Multi-tier Event Driven Service Oriented Architecture
66. 66 / 34 | 25 nov 2010 | Model Driven Day 2010 : Agile Model Driven Architecture
AOP tool
UML tool
JAva COmponent MOdel :
the 7 step process
<<ComponentImpl>>
CompAImpl
<<ComponentType>>
CompA
1: Platform Independent Model:
Domain analysis
Design: QoS
2: Platform Specific Model 1:
Design
Implementation (behavior)
7: runtime:
JVM
6: code compilation
and weaving
3: custom code
generation
@ComponentImpl
public class CompAImpl { ... }
@ComponentType
public interface CompA { ... }
@ComponentImpl
public class CompAImpl {
}
4: add behavior with IDE
{ Remotable }
public void m() { ... }
5:
67. 67 / 34 | 25 nov 2010 | Model Driven Day 2010 : Agile Model Driven Architecture
JACOMO PSM
raise the PSM level of abstraction
JAva COmponent MOdel
is an Domain Specific Language (internal DSL)
for Java platform, which is an
Architecture Description Language (ADL)
with Separation of Concerns (SoC)
for multi-tier
Event Driven Service Oriented Architecture
(EDSOA) for
Component-Based Software Engineering (CBSE).
68. 68 / 34 | 25 nov 2010 | Model Driven Day 2010 : Agile Model Driven Architecture
PIM UML <<stereotype>> and PSM JACOMO @nnotations
specification and analysis
UML Java
<<ComponentType>> @ComponentType
<<ComponentServices>> @ComponentServices
<<ComponentEvents>> @ComponentEvents
<<ComponentParameters>> @ComponentParameters
<<ProvidedComponentServices>> @ProvidedComponentServices
<<UsedComponentServices>> @UsedComponentServices
<<ProducedComponentEvents>> @ProducedComponentEvents
<<ConsumedComponentEvents>> @ConsumedComponentEvents
<<ProvidedComponentParameters>> @ProvidedComponentParameters
<<UsedComponentParameters>> @UsedComponentParameters
<<AggregatedComponent>> @AggregatedComponent
<<ComposedComponent>> @ComposedComponent
69. 69 / 34 | 25 nov 2010 | Model Driven Day 2010 : Agile Model Driven Architecture
PSM UML <<stereotype>> and PSM JACOMO @nnotations
PSM design and implementation
UML Java
<<ComponentImpl>> @ComponentImpl
<<ComponentItem>> @ComponentItem
<<UsedComponentEventsSubscribe>>
@UsedComponentEventsSubscribe
<<UsedComponentEventsSubscribeDelegate>>
@UsedComponentEventsSubscribeDelegate
<<UsedComponentContext>> @UsedComponentContext
<<Resource>> @Resource
71. 71 / 34 | 25 nov 2010 | Model Driven Day 2010 : Agile Model Driven Architecture
UML << stereotype >> and JACOMO @nnotations : QoS
PSM design and implementation
UML Java
<< SingleThreaded >> @SingleThreaded
<< MultiThreaded >> @MultiThreaded
<< SynchronizedRead >> @SynchronyzedRead
<< SynchronizedReadWrite >> @SynchronyzedReadWrite
<< Transactional >> @Transactional
72. 72 / 34 | 25 nov 2010 | Model Driven Day 2010 : Agile Model Driven Architecture
Architecture to master the cost
To solve essential complexity
without introducing accidental complexity.
Complexity
• To reduce accidental complexity =>
• reduce cost
reduce
accidental
complexity
Metrics
master
essential
complexity
73. 73 / 34 | 25 nov 2010 | Model Driven Day 2010 : Agile Model Driven Architecture
AGENDA
1. DCNS
2. Combat Management System
3. Model Driven Architecture approach
4. Aspect Oriented Programming approach
5. JACOMO technology
6. Objecteering UML tool
7. Perspectives, Q & A
74. 74 / 34 | 25 nov 2010 | Model Driven Day 2010 : Agile Model Driven Architecture
THALES Systèmes aéroportés collaboration
Since 2003, share same point of view
MDA Processes
Architecture: multi-tier SOA and EDA
Component based architecture
Since 2004, co-development,
Technical and domain JACOMO components for HCI
Tools: (UML tool with profile, maven, eclipse plugin, sonar)
UML tool: Objecteering
Model Driven Engineering: all is inside the UML tool
(specification, analysis, design, implementation code, unit tests).
Unique global id of the tool allows diff / merge between
concurrent development.
75. 75 / 34 | 25 nov 2010 | Model Driven Day 2010 : Agile Model Driven Architecture
More than 1200 JACOMO components from 8 projects
Metrics for one project
78 JACOMO components, 171kLoc (2,19kLoc / component).
40% code generated from UML tool (class diagram).
60% body of the methods hand written inside IDE (eclipse).
17% Loc for components interface.
48% Loc for components implementation.
35% Loc for components unit tests.
100% code inside the UML tool, include unit tests.
Comparison with data distribution traditional MDA approach
Remove up to 70% LoC for component state replication QoS
Some JACOMO Metrics
with objecteering tool