This presentation is about a lecture I gave within the "Software systems and services" immigration course at the Gran Sasso Science Institute, L'Aquila (Italy): http://cs.gssi.infn.it/.
http://www.ivanomalavolta.com
Just-in-time Detection of Protection-Impacting Changes on WordPress and Media...Amine Barrak
Presentation of Best student paper award on CASCON2018 intitled: Just-in-time Detection of Protection-Impacting Changes on WordPress and MediaWiki
Link to the paper: https://dl.acm.org/citation.cfm?id=3291310
Bruno Legeard - Model-Based Testing of a Financial ApplicationTEST Huddle
EuroSTAR Software Testing Conference 2008 presentation on Model-Based Testing of a Financial Application by Bruno Legeard. See more at conferences.eurostarsoftwaretesting.com/past-presentations/
[2015/2016] Introduction to software architectureIvano Malavolta
This presentation is about a lecture I gave within the "Software systems and services" immigration course at the Gran Sasso Science Institute, L'Aquila (Italy): http://cs.gssi.infn.it/.
http://www.ivanomalavolta.com
Requirements Engineering Techniques for Eliciting Requirements (lecture slides)Dagmar Monett
Online lecture at the School of Computer Science, University of Hertfordshire, Hatfield, UK, as part of the 11th Europe Week from 2nd to 6th March 2015.
This presentation is about a lecture I gave within the "Software systems and services" immigration course at the Gran Sasso Science Institute, L'Aquila (Italy): http://cs.gssi.infn.it/.
http://www.ivanomalavolta.com
Just-in-time Detection of Protection-Impacting Changes on WordPress and Media...Amine Barrak
Presentation of Best student paper award on CASCON2018 intitled: Just-in-time Detection of Protection-Impacting Changes on WordPress and MediaWiki
Link to the paper: https://dl.acm.org/citation.cfm?id=3291310
Bruno Legeard - Model-Based Testing of a Financial ApplicationTEST Huddle
EuroSTAR Software Testing Conference 2008 presentation on Model-Based Testing of a Financial Application by Bruno Legeard. See more at conferences.eurostarsoftwaretesting.com/past-presentations/
[2015/2016] Introduction to software architectureIvano Malavolta
This presentation is about a lecture I gave within the "Software systems and services" immigration course at the Gran Sasso Science Institute, L'Aquila (Italy): http://cs.gssi.infn.it/.
http://www.ivanomalavolta.com
Requirements Engineering Techniques for Eliciting Requirements (lecture slides)Dagmar Monett
Online lecture at the School of Computer Science, University of Hertfordshire, Hatfield, UK, as part of the 11th Europe Week from 2nd to 6th March 2015.
A Review of Feature Model Position in the Software Product Line and Its Extra...CSCJournals
The software has become a modern asset and competitive product. The product line that has long been used in manufacturing and construction industries nowadays has attracted a lot of attention in software industry. Most importance of product line engineering approach is in cost and time issues involved in marketing. Feature model is one of the most important methods of documenting variability in product line that shows product features and their dependencies. Because of the magnitude and complexity of the product line, build and maintain feature models are complex and time-consuming work. In this article feature model importance and position in product line is discussed and feature model extraction methods are reviewed and compared.
Integrating profiling into mde compilersijseajournal
Scientific computation requires more and more performance in its algorithms. New massively parallel
architectures suit well to these algorithms. They are known for offering high performance and power
efficiency. Unfortunately, as parallel programming for these architectures requires a complex distribution
of tasks and data, developers find difficult to implement their applications effectively. Although approaches
based on source-to-source intends to provide a low learning curve for parallel programming and take
advantage of architecture features to create optimized applications, programming remains difficult for
neophytes. This work aims at improving performance by returning to the high-level models, specific
execution data from a profiling tool enhanced by smart advices computed by an analysis engine. In order to
keep the link between execution and model, the process is based on a traceability mechanism. Once the
model is automatically annotated, it can be re-factored aiming better performances on the re-generated
code. Hence, this work allows keeping coherence between model and code without forgetting to harness the
power of parallel architectures. To illustrate and clarify key points of this approach, we provide an
experimental example in GPUs context. The example uses a transformation chain from UML-MARTE
models to OpenCL code.
e-Learning platforms implementation on a Virtual Campus Project - A Polytechn...CRISEL BY AEFOL
Hugo Rego, Instituto Politécnico de Viseu - Portugal
e-learning solution implementation → contribute to education success
Effective complement or alternative to presential classes
Synchronous and asynchronous collaboration
Share resources and messages
Allow real time interaction between students and teachers
Research Questions for Validation and Verification in the Context of Model-Ba...Michalis Famelis
Abstract. In model-based engineering (MBE), the abstraction power
of models is used to deal with the ever increasing complexity of modern
software systems. As models play a central role in MBE-based develop-
ment processes, for the adoption of MBE in practical projects it becomes
indispensable to introduce rigorous methods for ensuring the correctness
of the models. Consequently, much effort has been spent on developing
and applying validation and verification (V&V) techniques for models.
However, there are still many open challenges.
In this paper, we shortly review the status quo of V&V techniques in
MBE and derive a catalogue of open questions whose answers would
contribute to successfully putting MBE into practice.
Catherine Dubois, ENSIIE, France
Michalis Famelis, University of Toronto, Canada
Martin Gogolla, Database Systems Group, University of Bremen, Germany
Leonel Nobrega, University of Madeira, Portugal
Ileana Ober, University of Toulouse, France
Martina Seidl, Johannes Kepler University Linz, Austria
Markus Völter, Völter Ingenieurbüro, Germany
IFML - The interaction flow modeling language, the OMG standard for UI modeli...Marco Brambilla
The video of the webinar is available on YouTube at:
http://www.youtube.com/watch?v=5u6AVYclWao
Table of Contents of the webinar:
00:05 - IFML, OMG and WebRatio
00:32 - Intro and motivation
10:36 - IFML Notation
19:19 - IFML Examples
33:34 - Metamodel and extensibility
45:39 - Standard and interchange
51:05 - MDSE Book
51:33 - IFML tools
The standard Interaction Flow Modeling Language (IFML) is designed for expressing the content, user interaction and control behaviour of the front-end of software applications.
The Interaction Flow Modeling Language has been adopted as a standard by OMG in March 2013. The standard Interaction Flow Modeling Language is designed for expressing the content, user interaction and control behaviour of the front-end of applications belonging to the following domains:
Traditional, HTML+HTTP based Web applications.
Rich Internet Applications, as supported by the forthcoming HTML 5 standard.
Mobile applications.
Client-server applications.
Desktop applications.
Embedded Human Machine Interfaces for control applications.
Multichannel and context-aware applications.
It's worth noting that IFML does not cover the modeling of the presentation issues (e.g., layout, stlye and look&feel) of an application front-end and does not cater for the specification of bi-dimensional and tri-dimensional computer based graphics, videogames, and other highly interactive applications.
According to the IFML definitions, an IFML diagram consists of one or more top-level view containers, representing UI windows or Web pages. A view container can contain view components, which denote the publication of content or interface elements for data entry (e.g., input forms). A view component can have input and output parameters. A view container and a view component can be associated with events, to denote that they support the user's interaction.
See more on IFML at: http://www.ifml.org
Detecting Aspect Intertype Declaration Interference at Aspect Oriented Design...IJERA Editor
Implementing crosscutting concerns requires aspect oriented developers to be enabled to introduce some mem-bers to core concerns modules along with other. This may lead to a problem of interference among modules, either between classes and aspects or among aspects themselves. Such conflicts may cause program to crash at runtime. Interference problem is addressed but with complex solutions that become more complicated propor-tionally with the project size. In this work a relational database approach and relational algebra is used to detect intertype declaration interferences in aspect oriented design models in order to capture conflicts in an early stage before having it as runtime error. Detection is done in an approach not that complex as the previous ones.
Validation and Verification of SYSML Activity Diagrams Using HOARE Logic ijseajournal
SysML diagrams are significant medium using for supporting software lifecycle management. The existing TBFV method is designed for error detection with full automation efficiency, only for code. For verifying the correctness of SysML diagram, we applying TBFV method into SysML diagram. In this paper, we
propose a novel technique that makes use of Hoare Logic and testing to verify whether the SysML diagrams meet the requirement, called TBFV-M. This research can improve the correctness of SysML diagram, which is likely to significantly affect the reliability of the implementation. A case study is conducted to show its feasibility and used to illustrate how the proposed method is applied; and discussion on potential
challenges to TBFV-M is also presented.
With interconnectivity between IT Service Providers and their customers and partners growing, fueled by
proliferation of IT Services Outsourcing, with some providers gaining leading positions in marketplace
today, challenges are faced by teams who are tasked to deliver integration projects with much desired
efficiencies both in cost and schedule. Such integrations are growing both in volume and complexity.
Integrations between different autonomous systems such as workflow systems of the providers and their
customers are an important element of this emerging paradigm. In this paper we present an efficient model
to implement such interfaces between autonomous workflow systems with close attention given to major
phases of these projects, from requirement gathering/analysis, to configuration/coding, to
validation/verification, several levels of testing and finally deployment. By deploying a comprehensive
strategy and implementing it in a real corporate environment, a 10%-20% reduction in cost and schedule
year over year was achieved for past several years primarily by improving testing techniques and detecting
bugs earlier in the development life-cycle. Some practical considerations are outlined in addition to
detailing the strategy for testing the autonomous system integrations domain.
Web and load testing with Visual Studio 2010 UltimateAbhimanyu Singhal
Visual Studio 2010 Ultimate also gives you access to advanced web and load testing features that help you ensure that whatever application you are building it is ready for the most demanding uses. The Web and Load testing capabilities of Visual Studio 2010 Ultimate help you ensure that whatever application you are building it is ready for whatever scenarios your organization can envisage taking you one step closer to knowing your application is ready for prime time.
A STUDY OF FORMULATION OF SOFTWARE TEST METRICS FOR INTERNET BASED APPLICATIONSecij
The continuous use of the internet for day to day operations by businesses man, private sector and
government has created a great demand for internet applications. In such kind of application web
server/application server plays vital role. One of the techniques is to test the functionality of web
applications affect user session data received from the web servers. This technique automatically generates
test cases on the behalf of user profiles. The contribution of this paper is the internet application of concept
analysis for clustering user sessions has been reduced. We have completely automated the process from
user session receive and also reduction through replay. In this paper we propose a concept analysis for
internet application and also present a tool Ranorex for the same. In order to execute test case we have a
model for data retrieval. Web application is using in different areas like, medical, insurance, banking etc.
A Review of Feature Model Position in the Software Product Line and Its Extra...CSCJournals
The software has become a modern asset and competitive product. The product line that has long been used in manufacturing and construction industries nowadays has attracted a lot of attention in software industry. Most importance of product line engineering approach is in cost and time issues involved in marketing. Feature model is one of the most important methods of documenting variability in product line that shows product features and their dependencies. Because of the magnitude and complexity of the product line, build and maintain feature models are complex and time-consuming work. In this article feature model importance and position in product line is discussed and feature model extraction methods are reviewed and compared.
Integrating profiling into mde compilersijseajournal
Scientific computation requires more and more performance in its algorithms. New massively parallel
architectures suit well to these algorithms. They are known for offering high performance and power
efficiency. Unfortunately, as parallel programming for these architectures requires a complex distribution
of tasks and data, developers find difficult to implement their applications effectively. Although approaches
based on source-to-source intends to provide a low learning curve for parallel programming and take
advantage of architecture features to create optimized applications, programming remains difficult for
neophytes. This work aims at improving performance by returning to the high-level models, specific
execution data from a profiling tool enhanced by smart advices computed by an analysis engine. In order to
keep the link between execution and model, the process is based on a traceability mechanism. Once the
model is automatically annotated, it can be re-factored aiming better performances on the re-generated
code. Hence, this work allows keeping coherence between model and code without forgetting to harness the
power of parallel architectures. To illustrate and clarify key points of this approach, we provide an
experimental example in GPUs context. The example uses a transformation chain from UML-MARTE
models to OpenCL code.
e-Learning platforms implementation on a Virtual Campus Project - A Polytechn...CRISEL BY AEFOL
Hugo Rego, Instituto Politécnico de Viseu - Portugal
e-learning solution implementation → contribute to education success
Effective complement or alternative to presential classes
Synchronous and asynchronous collaboration
Share resources and messages
Allow real time interaction between students and teachers
Research Questions for Validation and Verification in the Context of Model-Ba...Michalis Famelis
Abstract. In model-based engineering (MBE), the abstraction power
of models is used to deal with the ever increasing complexity of modern
software systems. As models play a central role in MBE-based develop-
ment processes, for the adoption of MBE in practical projects it becomes
indispensable to introduce rigorous methods for ensuring the correctness
of the models. Consequently, much effort has been spent on developing
and applying validation and verification (V&V) techniques for models.
However, there are still many open challenges.
In this paper, we shortly review the status quo of V&V techniques in
MBE and derive a catalogue of open questions whose answers would
contribute to successfully putting MBE into practice.
Catherine Dubois, ENSIIE, France
Michalis Famelis, University of Toronto, Canada
Martin Gogolla, Database Systems Group, University of Bremen, Germany
Leonel Nobrega, University of Madeira, Portugal
Ileana Ober, University of Toulouse, France
Martina Seidl, Johannes Kepler University Linz, Austria
Markus Völter, Völter Ingenieurbüro, Germany
IFML - The interaction flow modeling language, the OMG standard for UI modeli...Marco Brambilla
The video of the webinar is available on YouTube at:
http://www.youtube.com/watch?v=5u6AVYclWao
Table of Contents of the webinar:
00:05 - IFML, OMG and WebRatio
00:32 - Intro and motivation
10:36 - IFML Notation
19:19 - IFML Examples
33:34 - Metamodel and extensibility
45:39 - Standard and interchange
51:05 - MDSE Book
51:33 - IFML tools
The standard Interaction Flow Modeling Language (IFML) is designed for expressing the content, user interaction and control behaviour of the front-end of software applications.
The Interaction Flow Modeling Language has been adopted as a standard by OMG in March 2013. The standard Interaction Flow Modeling Language is designed for expressing the content, user interaction and control behaviour of the front-end of applications belonging to the following domains:
Traditional, HTML+HTTP based Web applications.
Rich Internet Applications, as supported by the forthcoming HTML 5 standard.
Mobile applications.
Client-server applications.
Desktop applications.
Embedded Human Machine Interfaces for control applications.
Multichannel and context-aware applications.
It's worth noting that IFML does not cover the modeling of the presentation issues (e.g., layout, stlye and look&feel) of an application front-end and does not cater for the specification of bi-dimensional and tri-dimensional computer based graphics, videogames, and other highly interactive applications.
According to the IFML definitions, an IFML diagram consists of one or more top-level view containers, representing UI windows or Web pages. A view container can contain view components, which denote the publication of content or interface elements for data entry (e.g., input forms). A view component can have input and output parameters. A view container and a view component can be associated with events, to denote that they support the user's interaction.
See more on IFML at: http://www.ifml.org
Detecting Aspect Intertype Declaration Interference at Aspect Oriented Design...IJERA Editor
Implementing crosscutting concerns requires aspect oriented developers to be enabled to introduce some mem-bers to core concerns modules along with other. This may lead to a problem of interference among modules, either between classes and aspects or among aspects themselves. Such conflicts may cause program to crash at runtime. Interference problem is addressed but with complex solutions that become more complicated propor-tionally with the project size. In this work a relational database approach and relational algebra is used to detect intertype declaration interferences in aspect oriented design models in order to capture conflicts in an early stage before having it as runtime error. Detection is done in an approach not that complex as the previous ones.
Validation and Verification of SYSML Activity Diagrams Using HOARE Logic ijseajournal
SysML diagrams are significant medium using for supporting software lifecycle management. The existing TBFV method is designed for error detection with full automation efficiency, only for code. For verifying the correctness of SysML diagram, we applying TBFV method into SysML diagram. In this paper, we
propose a novel technique that makes use of Hoare Logic and testing to verify whether the SysML diagrams meet the requirement, called TBFV-M. This research can improve the correctness of SysML diagram, which is likely to significantly affect the reliability of the implementation. A case study is conducted to show its feasibility and used to illustrate how the proposed method is applied; and discussion on potential
challenges to TBFV-M is also presented.
With interconnectivity between IT Service Providers and their customers and partners growing, fueled by
proliferation of IT Services Outsourcing, with some providers gaining leading positions in marketplace
today, challenges are faced by teams who are tasked to deliver integration projects with much desired
efficiencies both in cost and schedule. Such integrations are growing both in volume and complexity.
Integrations between different autonomous systems such as workflow systems of the providers and their
customers are an important element of this emerging paradigm. In this paper we present an efficient model
to implement such interfaces between autonomous workflow systems with close attention given to major
phases of these projects, from requirement gathering/analysis, to configuration/coding, to
validation/verification, several levels of testing and finally deployment. By deploying a comprehensive
strategy and implementing it in a real corporate environment, a 10%-20% reduction in cost and schedule
year over year was achieved for past several years primarily by improving testing techniques and detecting
bugs earlier in the development life-cycle. Some practical considerations are outlined in addition to
detailing the strategy for testing the autonomous system integrations domain.
Web and load testing with Visual Studio 2010 UltimateAbhimanyu Singhal
Visual Studio 2010 Ultimate also gives you access to advanced web and load testing features that help you ensure that whatever application you are building it is ready for the most demanding uses. The Web and Load testing capabilities of Visual Studio 2010 Ultimate help you ensure that whatever application you are building it is ready for whatever scenarios your organization can envisage taking you one step closer to knowing your application is ready for prime time.
A STUDY OF FORMULATION OF SOFTWARE TEST METRICS FOR INTERNET BASED APPLICATIONSecij
The continuous use of the internet for day to day operations by businesses man, private sector and
government has created a great demand for internet applications. In such kind of application web
server/application server plays vital role. One of the techniques is to test the functionality of web
applications affect user session data received from the web servers. This technique automatically generates
test cases on the behalf of user profiles. The contribution of this paper is the internet application of concept
analysis for clustering user sessions has been reduced. We have completely automated the process from
user session receive and also reduction through replay. In this paper we propose a concept analysis for
internet application and also present a tool Ranorex for the same. In order to execute test case we have a
model for data retrieval. Web application is using in different areas like, medical, insurance, banking etc.
The key to a successful project is being able to quickly and effectively identify the quality of the application under test
For a multi-shore project this can be achieved with automation and test frameworks, an agile integrated testing model, and visibility and communication across the process.
A new model for the selection of web development frameworks: application to P...IJECEIAES
The use of a framework is often essential for medium and large scale developments, but is also of interest for small developments. PHP has evolved as the scripting language the most chosen by developers, which has generated an explosion of PHP frameworks. There is a big debate about what the best PHP frameworks are, because the simple fact is that not all frameworks are built for everyone. Indeed, not all frameworks meet the same needs, and several frameworks can be used together in certain situations. Choosing the right framework, however, can sometimes be difficult. In order to make the selection process easier, we propose a pragmatic and complete model to compare and evaluate the main PHP frameworks. This model is based on a set of comparison criteria based on the Intrinsic durability, industrialized solution, technical adaptability, strategy, technical architecture and Speed criteria. Results show that the values of these criteria allow developers to easily and properly choose the framwork that best meets their needs
IT Service Management tool architecture
Project set-up
Definition of requirements
Selection of tool and vendor
Proof of concept
Delivery model
Negotiation and acquisition
Configuration and customization
Establishing foundation data
Test
Training
Data migration
Go-live
Early life support
Post implementation review and improvement
The Challenges Of, And Advantages In, Establishing A Consistent Architectural...Tim Eyres
Describes the challenges and benefits of having a consistent enterprise architecture framework within a global pharma research organization with examples from different industries.
4. What is an information broker? Introduction Motivation Objectives Approach Overview Requirements Comparison of Integration Technologies Application Integration Architectures Choosing an Implementation Proof of Concept Final Remarks
5. What is an information broker? Introduction Motivation Objectives Approach Overview Requirements Comparison of Integration Technologies Application Integration Architectures Choosing an Implementation Proof of Concept Final Remarks
6. Current situation Introduction Motivation Objectives Approach Overview Requirements Comparison of Integration Technologies Application Integration Architectures Choosing an Implementation Proof of Concept Final Remarks
7. What is an information broker? Introduction Motivation Objectives Approach Overview Requirements Comparison of Integration Technologies Application Integration Architectures Choosing an Implementation Proof of Concept Final Remarks
8. Main objective Introduction Motivation Objectives Approach Overview Requirements Comparison of Integration Technologies Application Integration Architectures Choosing an Implementation Proof of Concept Final Remarks To determine the most suitable architecture and technology to realize distributed access on real-time to information on products. Architecture Structure of the system. Technology Software to support that structure. Distributed Information comes from different places. Real-time Information comes at the time it is needed.
9.
10.
11. Overview Introduction Motivation Objectives Approach Overview Requirements Comparison of Integration Technologies Application Integration Architectures Choosing an Implementation Proof of Concept Final Remarks Introduction Requirements Comparison of Integration Technologies Application Integration Architectures Choosing an Implementation Proof of Concept Final Remarks
12.
13.
14.
15.
16. Use cases Introduction Requirements Approach Stakeholders Use cases Functional requirements Non-functional requirements Weighting factors Comparison of Integration Technologies Application Integration Architectures Choosing an Implementation Proof of Concept Final Remarks retrieve available products for one provider Information Broker retrieve available information on products for several providers purchase/cancel (combined) product configure which producers are available configure which consumers are allowed to use/offer products retrieve information on previous product purchase Producer Consumer request info request info provide info initiate direct to corresponding producer(s) handle purchase/cancellation configure configure request info request info provide/enrich info
17.
18.
19.
20.
21.
22. Introduction Requirements Comparison of Integration Technologies Approach Point-to-Point Hub-and-Spoke EMB ESB Conclusion Application Integration Architectures Choosing an Implementation Proof of Concept Final Remarks Approach C2 C1 B2 B1 A2 A1
23. Introduction Requirements Comparison of Integration Technologies Approach Point-to-Point Hub-and-Spoke EMB ESB Conclusion Application Integration Architectures Choosing an Implementation Proof of Concept Final Remarks Point-to-Point integration C2 C1 B2 B1 A2 A1
24. Introduction Requirements Comparison of Integration Technologies Approach Point-to-Point Hub-and- Spoke EMB ESB Conclusion Application Integration Architectures Choosing an Implementation Proof of Concept Final Remarks Single hub Hub-and-Spoke N C2 C1 B2 B1 A2 A1
25. Introduction Requirements Comparison of Integration Technologies Approach Point-to-Point Hub-and- Spoke EMB ESB Conclusion Application Integration Architectures Choosing an Implementation Proof of Concept Final Remarks Multi hub Hub-and-Spoke C2 C1 B2 B1 A2 A1
26. Introduction Requirements Comparison of Integration Technologies Approach Point-to-Point Hub-and-Spoke EMB ESB Conclusion Application Integration Architectures Choosing an Implementation Proof of Concept Final Remarks Enterprise Message Bus EMB Adapter A A A A A A A A C2 C1 B2 B1 A2 A1
27. IC IC Introduction Requirements Comparison of Integration Technologies Approach Point-to-Point Hub-and-Spoke EMB ESB Conclusion Application Integration Architectures Choosing an Implementation Proof of Concept Final Remarks Enterprise Service Bus ESB IC Intelligent Connector IC IC IC IC IC IC IC IC IC IC C2 C1 B2 B1 A2 A1
28. Introduction Requirements Comparison of Integration Technologies Approach Point-to-Point Hub-and-Spoke EMB ESB Conclusion Application Integration Architectures Choosing an Implementation Proof of Concept Final Remarks Conclusion N EMB A A A A A A ESB Enterprise Message Bus Enterprise Service Bus Point-to-Point Hub-and-Spoke IC IC IC IC IC IC C2 C1 B2 B1 A2 A1 C2 C1 B2 B1 A2 A1 C2 C1 B2 B1 A2 A1 C2 C1 B2 B1 A2 A1
29.
30. Consumer B Consumer C Consumer A Consumers Producer A Producer B Producer C Producers Introduction Requirements Comparison of Integration Technologies Application Integration Architectures Hub-and- Spoke EMB ESB Conclusion Choosing an Implementation Proof of Concept Final Remarks Hub-and-Spoke Architecture Information Broker Services
31. Consumer B Consumer C Consumer A Consumers Introduction Requirements Comparison of Integration Technologies Application Integration Architectures Hub-and-Spoke EMB ESB Conclusion Choosing an Implementation Proof of Concept Final Remarks EMB Architectures (1) Load Balancer Services Producer A Producer B Producer C EMB in combination with a load balancer: Enterprise Message Bus Producers Information Broker
32. Enterprise Message Bus Producer A Producer B Producer C Consumer B Consumer C Consumer A Consumers Producers Information Broker Introduction Requirements Comparison of Integration Technologies Application Integration Architectures Hub-and-Spoke EMB ESB Conclusion Choosing an Implementation Proof of Concept Final Remarks EMB Architectures (2) Service 3 Service 2 Service 1 Two EMBs: Enterprise Message Bus
33. Introduction Requirements Comparison of Integration Technologies Application Integration Architectures Hub-and-Spoke EMB ESB Conclusion Choosing an Implementation Proof of Concept Final Remarks EMB Architectures (3) Producers Information Broker Producer A Producer B Producer C Consumer A Consumer B Consumer C Consumers Service 1 Service 2 Service 3 One EMB: Enterprise Message Bus
34. Introduction Requirements Comparison of Integration Technologies Application Integration Architectures Hub-and-Spoke EMB ESB Conclusion Choosing an Implementation Proof of Concept Final Remarks ESB Architectures (1) Consumer B Consumer C Consumer A Consumers Load Balancer Services Producer A Producer B Producer C Enterprise Service Bus Producers Information Broker ESB in combination with a load balancer:
35. Enterprise Service Bus Introduction Requirements Comparison of Integration Technologies Application Integration Architectures Hub-and-Spoke EMB ESB Conclusion Choosing an Implementation Proof of Concept Final Remarks ESB Architectures (2) Producer A Producer B Producer C Consumer B Consumer C Consumer A Consumers Producers Information Broker Service 3 Service 2 Service 1 Enterprise Service Bus Two ESBs:
36. Introduction Requirements Comparison of Integration Technologies Application Integration Architectures Hub-and-Spoke EMB ESB Conclusion Choosing an Implementation Proof of Concept Final Remarks ESB Architectures (3) Producers Information Broker Producer A Producer B Producer C Consumer A Consumer B Consumer C Consumers Service 1 Service 2 Service 3 Enterprise Service Bus One ESB:
37.
38.
39.
40.
41.
42.
43.
44. Comparison Introduction Requirements Comparison of Integration Technologies Application Integration Architectures Choosing an Implementation Approach Mule ServiceMix OpenESB Comparison Proof of Concept Final Remarks Requirement Weight Mule ServiceMix OpenESB Global configuration 1 2 0 2 Message speed 4 2 0 1 Fail fast adequacy 3 2 2 2 Total 16 6 12
45.
46.
47.
48. Basics of Mule (1) Introduction Requirements Comparison of Integration Technologies Application Integration Architectures Choosing an Implementation Proof of Concept Problem situation Basics of Mule Configuring Mule Testing environment Conclusion Final Remarks Service Transport Inbound router Component Outbound router Transport Exception listener
49. Basics of Mule (2) Introduction Requirements Comparison of Integration Technologies Application Integration Architectures Choosing an Implementation Proof of Concept Problem situation Basics of Mule Configuring Mule Testing environment Conclusion Final Remarks <<Endpoint>> HTTP <<Endpoint>> JMS <<Component>> POJO Application or component T T T Inbound router Outbound router The component's response is sent to the outbound router for endpoint dispatching An inbound event gets routed to the component's entry point through transformers The component's response can be returned to the caller if the endpoint is synchronous Application or component
50. Basics of Mule (3) Introduction Requirements Comparison of Integration Technologies Application Integration Architectures Choosing an Implementation Proof of Concept Problem situation Basics of Mule Configuring Mule Testing environment Conclusion Final Remarks <<Endpoint>> HTTP <<Endpoint>> JMS <<Component>> POJO Application or component Application or component T T T Inbound router Outbound router Service Transport Inbound router Component Outbound router Transport
51. Configuring Mule (1) Introduction Requirements Comparison of Integration Technologies Application Integration Architectures Choosing an Implementation Proof of Concept Problem situation Basics of Mule Configuring Mule Testing environment Conclusion Final Remarks <<Endpoint>> HTTP <<Endpoint>> dtsRequests VM <<Component>> WSProxyService POJO Consumer External Services <<Endpoint>> dtsResponses VM <<Component>> DTSResponseAgg POJO T T Main service:
52. Configuring Mule (2) Introduction Requirements Comparison of Integration Technologies Application Integration Architectures Choosing an Implementation Proof of Concept Problem situation Basics of Mule Configuring Mule Testing environment Conclusion Final Remarks <<Endpoint>> dtsRequests VM <<Endpoint>> externalWebservice HTTP VM Message T <<Endpoint>> dtsResponses VM T External service:
53.
54. Conclusion Introduction Requirements Comparison of Integration Technologies Application Integration Architectures Choosing an Implementation Proof of Concept Problem situation Basics of Mule Configuring Mule Testing environment Conclusion Final Remarks