The document discusses using Model Driven Architecture (MDA) to reengineer legacy software systems in a more automated way compared to traditional reengineering approaches. MDA provides platform independent and specific models that can be used to generate code for different platforms, formalizing the mapping of services between source and target platforms. Several papers are referenced that propose techniques for static and dynamic analysis of code to generate UML models as part of the reengineering process using MDA.
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
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
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
[2017/2018] AADL - Architecture Analysis and Design LanguageIvano 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
Præsentationen blev holdt ved InfinIT-konferencen SummIT 2013, der blev afholdt den 22. maj 2013 på Axelborg i København. Læs mere om konferencen her: http://www.infinit.dk/dk/arrangementer/tidligere_arrangementer/summit_2013.htm
The road ahead for architectural languages [ACVI 2016]Ivano Malavolta
5th of April 2016. My presentation done at the 3rd Architecture Centric Virtual Integration Workshop (ACVI) workshop, co-located with WICSA and Comparch 2016, Venice, Italy.
Accompanying paper: http://www.ivanomalavolta.com/files/papers/IEEESoftware_2015.pdf
[2015/2016] AADL (Architecture Analysis and Design Language)Ivano 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
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
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
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
[2017/2018] AADL - Architecture Analysis and Design LanguageIvano 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
Præsentationen blev holdt ved InfinIT-konferencen SummIT 2013, der blev afholdt den 22. maj 2013 på Axelborg i København. Læs mere om konferencen her: http://www.infinit.dk/dk/arrangementer/tidligere_arrangementer/summit_2013.htm
The road ahead for architectural languages [ACVI 2016]Ivano Malavolta
5th of April 2016. My presentation done at the 3rd Architecture Centric Virtual Integration Workshop (ACVI) workshop, co-located with WICSA and Comparch 2016, Venice, Italy.
Accompanying paper: http://www.ivanomalavolta.com/files/papers/IEEESoftware_2015.pdf
[2015/2016] AADL (Architecture Analysis and Design Language)Ivano 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
PracticalExperiences Migrating Unified Modeling Language Models to IBM® Rati...Einar Karlsen
The presentation presents some experiences migrating UML models to Rational Software Architect. It covers the topics: Motivations and Mechanisms, Migration Process
Migration from Rational Rose and Rational XDE to RSA,
Migration from 3rd Party UML Tools, Basic Rules and Conclusions.
fUML-Driven Design and Performance Analysis of Software Agents for Wireless S...Luca Berardinelli
The growing request for high-quality applications for Wireless Sensor Network (WSN) demands model-driven approaches that facilitate the design and the early validation of extra-functional properties by combining design and analysis models. For this purpose, UML and several analysis-specific languages can be chosen and weaved through translational approaches. However, the complexity brought by the underlying technological spaces may hinder the adoption of UML-based approaches in the WSN domain. The recently introduced Foundational UML (fUML) standard provides a formal semantics to a strict UML subset, enabling the execution of UML models.
Leveraging fUML, we realize the Agilla Modeling Framework, an executable fUML model library, to conveniently design agent-based software applications for WSN and analyze their performance through the execution of the corresponding fUML model. A running case study is provided to show our framework at work.
Defect Prediction Over Software Life Cycle in Automotive DomainRAKESH RANA
Defect Prediction Over Software Life Cycle in Automotive Domain
Presented at:
9th International Joint Conference on Software Technologies (ICSOFT-EA), Vienna, Austria
Get full text of publication at:
http://rakeshrana.website/index.php/work/publications/
An LSTM-Based Neural Network Architecture for Model TransformationsLola Burgueño
Model transformations are a key element in any model-driven engineering approach, but writing them is a time-consuming and error-prone activity that requires specific knowledge of the transformation language semantics. We propose to take advantage of the advances in Artificial Intelligence and, in particular Long Short-Term Memory Neural Networks (LSTM), to automatically infer model transformations from sets of input-output model pairs. Once the transformation mappings have been learned, the LSTM system is able to autonomously transform new input models into their corresponding output models without the need of writing any transformationspecific code. We evaluate the correctness and performance of our approach and discuss its advantages and limitations.
Model-based Detection of Runtime InconsistenciesDaniel Lehner
The final presentation (defense) of my master thesis.
The full thesis can also be found on researchgate and via the library of TU Vienna.
The implementation is also published on Github (links in presentation)
Automatically bridging UML profiles into MOF metamodelsIvano Malavolta
27th August 2015. My presentation at SEAA 2015 (http://paginas.fe.up.pt/~dsd-seaa-2015/) about our approach for autmatically bridging UML profiles into MOF metamodels. SEAA 2015 is the 41st Euromicro Conference on Software Engineering and Advanced Applications, and it has been held in 26 - 28 August 2015, Funchal, Madeira, Portugal.
Accompanying paper:
http://www.ivanomalavolta.com/files/papers/SEAA_2015.pdf
Abstract:
In Model-Driven Engineering, UML profiles and MOF-based Domain Specific Modeling Languages (DSMLs) are the most used approaches for describing domain specific applications. The choice of the right approach depends on several aspects, such as tool support, expressivity, complexity of models, company policies. In general, profiled UML models are very much used since they are intuitive for designers and model editors already exist, however they are intrinsically complex for model manipulation (e.g., transformation, analysis); conversely, domain specific models are more concise and easy to be manipulated, but they require an initial effort in terms of designers training and model editors development.
In this paper we propose an approach that allows getting the best of the two worlds: on one side designers can use UML profiles familiar to them, on the other side DSML models (automatically generated from profiled UML models) enable a better model manipulation. Our approach is based on an automatic bridge between UML profiles and MOF metamodels (which are the main artifacts of MOF-based DSMLs). The bridge is transparent to the user since it autonomously operates both on UML profiles and all the involved models. The bridge is realized through model transformation techniques in the Eclipse platform. In this paper we show its application on a case study based on SysML.
[2016/2017] AADL (Architecture Analysis and Design Language)Ivano 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
Modeling and Evaluation of Performance and Reliability of Component-based So...Editor IJCATR
Validation of software systems is very useful at the primary stages of their development cycle. Evaluation of functional
requirements is supported by clear and appropriate approaches, but there is no similar strategy for evaluation of non-functional requirements
(such as performance and reliability). Whereas establishing the non-functional requirements have significant effect on success of software
systems, therefore considerable necessities are needed for evaluation of non-functional requirements. Also, if the software performance has
been specified based on performance models, may be evaluated at the primary stages of software development cycle. Therefore, modeling
and evaluation of non-functional requirements in software architecture level, that are designed at the primary stages of software systems
development cycle and prior to implementation, will be very effective.
We propose an approach for evaluate the performance and reliability of software systems, based on formal models (hierarchical timed
colored petri nets) in software architecture level. In this approach, the software architecture is described by UML use case, activity and
component diagrams, then UML model is transformed to an executable model based on hierarchical timed colored petri nets (HTCPN) by a
proposed algorithm. Consequently, upon execution of an executive model and analysis of its results, non-functional requirements including
performance (such as response time) and reliability may be evaluated in software architecture level.
PracticalExperiences Migrating Unified Modeling Language Models to IBM® Rati...Einar Karlsen
The presentation presents some experiences migrating UML models to Rational Software Architect. It covers the topics: Motivations and Mechanisms, Migration Process
Migration from Rational Rose and Rational XDE to RSA,
Migration from 3rd Party UML Tools, Basic Rules and Conclusions.
fUML-Driven Design and Performance Analysis of Software Agents for Wireless S...Luca Berardinelli
The growing request for high-quality applications for Wireless Sensor Network (WSN) demands model-driven approaches that facilitate the design and the early validation of extra-functional properties by combining design and analysis models. For this purpose, UML and several analysis-specific languages can be chosen and weaved through translational approaches. However, the complexity brought by the underlying technological spaces may hinder the adoption of UML-based approaches in the WSN domain. The recently introduced Foundational UML (fUML) standard provides a formal semantics to a strict UML subset, enabling the execution of UML models.
Leveraging fUML, we realize the Agilla Modeling Framework, an executable fUML model library, to conveniently design agent-based software applications for WSN and analyze their performance through the execution of the corresponding fUML model. A running case study is provided to show our framework at work.
Defect Prediction Over Software Life Cycle in Automotive DomainRAKESH RANA
Defect Prediction Over Software Life Cycle in Automotive Domain
Presented at:
9th International Joint Conference on Software Technologies (ICSOFT-EA), Vienna, Austria
Get full text of publication at:
http://rakeshrana.website/index.php/work/publications/
An LSTM-Based Neural Network Architecture for Model TransformationsLola Burgueño
Model transformations are a key element in any model-driven engineering approach, but writing them is a time-consuming and error-prone activity that requires specific knowledge of the transformation language semantics. We propose to take advantage of the advances in Artificial Intelligence and, in particular Long Short-Term Memory Neural Networks (LSTM), to automatically infer model transformations from sets of input-output model pairs. Once the transformation mappings have been learned, the LSTM system is able to autonomously transform new input models into their corresponding output models without the need of writing any transformationspecific code. We evaluate the correctness and performance of our approach and discuss its advantages and limitations.
Model-based Detection of Runtime InconsistenciesDaniel Lehner
The final presentation (defense) of my master thesis.
The full thesis can also be found on researchgate and via the library of TU Vienna.
The implementation is also published on Github (links in presentation)
Automatically bridging UML profiles into MOF metamodelsIvano Malavolta
27th August 2015. My presentation at SEAA 2015 (http://paginas.fe.up.pt/~dsd-seaa-2015/) about our approach for autmatically bridging UML profiles into MOF metamodels. SEAA 2015 is the 41st Euromicro Conference on Software Engineering and Advanced Applications, and it has been held in 26 - 28 August 2015, Funchal, Madeira, Portugal.
Accompanying paper:
http://www.ivanomalavolta.com/files/papers/SEAA_2015.pdf
Abstract:
In Model-Driven Engineering, UML profiles and MOF-based Domain Specific Modeling Languages (DSMLs) are the most used approaches for describing domain specific applications. The choice of the right approach depends on several aspects, such as tool support, expressivity, complexity of models, company policies. In general, profiled UML models are very much used since they are intuitive for designers and model editors already exist, however they are intrinsically complex for model manipulation (e.g., transformation, analysis); conversely, domain specific models are more concise and easy to be manipulated, but they require an initial effort in terms of designers training and model editors development.
In this paper we propose an approach that allows getting the best of the two worlds: on one side designers can use UML profiles familiar to them, on the other side DSML models (automatically generated from profiled UML models) enable a better model manipulation. Our approach is based on an automatic bridge between UML profiles and MOF metamodels (which are the main artifacts of MOF-based DSMLs). The bridge is transparent to the user since it autonomously operates both on UML profiles and all the involved models. The bridge is realized through model transformation techniques in the Eclipse platform. In this paper we show its application on a case study based on SysML.
[2016/2017] AADL (Architecture Analysis and Design Language)Ivano 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
Modeling and Evaluation of Performance and Reliability of Component-based So...Editor IJCATR
Validation of software systems is very useful at the primary stages of their development cycle. Evaluation of functional
requirements is supported by clear and appropriate approaches, but there is no similar strategy for evaluation of non-functional requirements
(such as performance and reliability). Whereas establishing the non-functional requirements have significant effect on success of software
systems, therefore considerable necessities are needed for evaluation of non-functional requirements. Also, if the software performance has
been specified based on performance models, may be evaluated at the primary stages of software development cycle. Therefore, modeling
and evaluation of non-functional requirements in software architecture level, that are designed at the primary stages of software systems
development cycle and prior to implementation, will be very effective.
We propose an approach for evaluate the performance and reliability of software systems, based on formal models (hierarchical timed
colored petri nets) in software architecture level. In this approach, the software architecture is described by UML use case, activity and
component diagrams, then UML model is transformed to an executable model based on hierarchical timed colored petri nets (HTCPN) by a
proposed algorithm. Consequently, upon execution of an executive model and analysis of its results, non-functional requirements including
performance (such as response time) and reliability may be evaluated in software architecture level.
A seminar in advanced Software Engineering concerning using models to guide the development process, and QVT to transfer a model into another model automatically
MANAGING AND ANALYSING SOFTWARE PRODUCT LINE REQUIREMENTSijseajournal
Modelling software product line (SPL) features plays a crucial role to a successful development of SPL.
Feature diagram is one of the widely used notations to model SPL variants. However, there is a lack of
precisely defined formal notations for representing and verifying such models. This paper presents an
approach that we adopt to model SPL variants by using UML and subsequently verify them by using firstorder
logic. UML provides an overall modelling view of the system. First-order logic provides a precise
and rigorous interpretation of the feature diagrams. We model variants and their dependencies by using
propositional connectives and build logical expressions. These expressions are then validated by the Alloy
verification tool. The analysis and verification process is illustrated by using Computer Aided Dispatch
(CAD) system.
OOAD Part A Question with answer and Part B & C questions.
References :
1) Previous University Questions.
2) Applying UML and Patterns: An Introduction to Object-Oriented Analysis and Design and Iterative Development by Craig Larman.
3) Google search engine for text and images.
Developing Tools for “What if…” Testing of Large-scale Software SystemsJames Hill
This presentation discusses some of our experience and results of the years for developing tools for "what if..." testing of large-scale software systems. This work has been sponsored by many public and private organizations.
This talk was originally presented at a Virginia Tech Computer Science seminar.
A framework to performance analysis of software architectural stylesijfcstjournal
Growing and executable system architecture has a significant role in successful production of large and
distributed systems. Assessing the effect of different decisions in architecture design can decrease the time and cost of software production, especially when these decisions are related to non-functional properties of system. Performance is a non-functional property which relates to timing behaviour of system. In this paper
we propose an approach for modelling and analysis of performance in architecture level. To do this,we follow a general process which needs two formal notations for specifying architecture and performance models of system. In this paper we show how Stochastic Process Algebra (SPA) in the form of PEPA language can be used for performance modelling and analysis of software archi
tectures modelled using Graph Transformation System (GTS). To enable architecture model for performance analysis, equivalent PEPA model should be constructed with transformation. Transformed performance model of the
architecture has been analysed through PEPA toolkit for some properties like throughput, sensitivity analysis, response time and utilisation rate. The analysis results have been explained with regard to a realistic case study.
Performance Evaluation using Blackboard Technique in Software ArchitectureEditor IJCATR
Validation of software systems is very useful at the primary stages of their development cycle. Evaluation of functional
requirements is supported by clear and appropriate approaches, but there is no similar strategy for evaluation of non-functional
requirements (such as performance). Whereas establishing the non-functional requirements have significant effect on success of
software systems, therefore considerable necessities are needed for evaluation of non-functional requirements. Also, if the software
performance has been specified based on performance models, may be evaluated at the primary stages of software development cycle.
Therefore, modeling and evaluation of non-functional requirements in software architecture level, that are designed at the primary
stages of software systems development cycle and prior to implementation, will be very effective.
We propose an approach for evaluate the performance of software systems, based on black board technique in software architecture
level. In this approach, at first, software architecture using blackboard technique is described by UML use case, activity and
component diagrams. then UML model is transformed to an executable model based on timed colored petri nets(TCPN)
Consequently, upon execution of an executive model and analysis of its results, non-functional requirements including performance
(such as response time) may be evaluated in software architecture level.
Testing and verification of software model through formal semantics a systema...eSAT Publishing House
IJRET : International Journal of Research in Engineering and Technology is an international peer reviewed, online journal published by eSAT Publishing House for the enhancement of research in various disciplines of Engineering and Technology. The aim and scope of the journal is to provide an academic medium and an important reference for the advancement and dissemination of research results that support high-level learning, teaching and research in the fields of Engineering and Technology. We bring together Scientists, Academician, Field Engineers, Scholars and Students of related fields of Engineering and Technology
When talking about modeling, I think there will be a bundle of terms that will come to our mind, UML, domain driven development, DSL, forward/reverse enginerring, MDD, MDA, BPMN. These technology or methodology have been there for years; And obviously, modeling has proven itself to provide value by improving communication, business-alignment, quality, and productivity. Its applicability includes a number of disciplines such as analysis, design, or development. But why aren’t we all doing Model Driven Development yet?
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...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 the notifications, alerts, and approval requests using Slack for Bonterra Impact Management. The solutions covered in this webinar can also be deployed for Microsoft Teams.
Interested in deploying notification automations for Bonterra Impact Management? Contact us at sales@sidekicksolutionsllc.com to discuss next steps.
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...UiPathCommunity
💥 Speed, accuracy, and scaling – discover the superpowers of GenAI in action with UiPath Document Understanding and Communications Mining™:
See how to accelerate model training and optimize model performance with active learning
Learn about the latest enhancements to out-of-the-box document processing – with little to no training required
Get an exclusive demo of the new family of UiPath LLMs – GenAI models specialized for processing different types of documents and messages
This is a hands-on session specifically designed for automation developers and AI enthusiasts seeking to enhance their knowledge in leveraging the latest intelligent document processing capabilities offered by UiPath.
Speakers:
👨🏫 Andras Palfi, Senior Product Manager, UiPath
👩🏫 Lenka Dulovicova, Product Program Manager, UiPath
Epistemic Interaction - tuning interfaces to provide information for AI supportAlan Dix
Paper presented at SYNERGY workshop at AVI 2024, Genoa, Italy. 3rd June 2024
https://alandix.com/academic/papers/synergy2024-epistemic/
As machine learning integrates deeper into human-computer interactions, the concept of epistemic interaction emerges, aiming to refine these interactions to enhance system adaptability. This approach encourages minor, intentional adjustments in user behaviour to enrich the data available for system learning. This paper introduces epistemic interaction within the context of human-system communication, illustrating how deliberate interaction design can improve system understanding and adaptation. Through concrete examples, we demonstrate the potential of epistemic interaction to significantly advance human-computer interaction by leveraging intuitive human communication strategies to inform system design and functionality, offering a novel pathway for enriching user-system engagements.
"Impact of front-end architecture on development cost", Viktor TurskyiFwdays
I have heard many times that architecture is not important for the front-end. Also, many times I have seen how developers implement features on the front-end just following the standard rules for a framework and think that this is enough to successfully launch the project, and then the project fails. How to prevent this and what approach to choose? I have launched dozens of complex projects and during the talk we will analyze which approaches have worked for me and which have not.
Neuro-symbolic is not enough, we need neuro-*semantic*Frank van Harmelen
Neuro-symbolic (NeSy) AI is on the rise. However, simply machine learning on just any symbolic structure is not sufficient to really harvest the gains of NeSy. These will only be gained when the symbolic structures have an actual semantics. I give an operational definition of semantics as “predictable inference”.
All of this illustrated with link prediction over knowledge graphs, but the argument is general.
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered QualityInflectra
In this insightful webinar, Inflectra explores how artificial intelligence (AI) is transforming software development and testing. Discover how AI-powered tools are revolutionizing every stage of the software development lifecycle (SDLC), from design and prototyping to testing, deployment, and monitoring.
Learn about:
• The Future of Testing: How AI is shifting testing towards verification, analysis, and higher-level skills, while reducing repetitive tasks.
• Test Automation: How AI-powered test case generation, optimization, and self-healing tests are making testing more efficient and effective.
• Visual Testing: Explore the emerging capabilities of AI in visual testing and how it's set to revolutionize UI verification.
• Inflectra's AI Solutions: See demonstrations of Inflectra's cutting-edge AI tools like the ChatGPT plugin and Azure Open AI platform, designed to streamline your testing process.
Whether you're a developer, tester, or QA professional, this webinar will give you valuable insights into how AI is shaping the future of software delivery.
DevOps and Testing slides at DASA ConnectKari Kakkonen
My and Rik Marselis slides at 30.5.2024 DASA Connect conference. We discuss about what is testing, then what is agile testing and finally what is Testing in DevOps. Finally we had lovely workshop with the participants trying to find out different ways to think about quality and testing in different parts of the DevOps infinity loop.
State of ICS and IoT Cyber Threat Landscape Report 2024 previewPrayukth K V
The IoT and OT threat landscape report has been prepared by the Threat Research Team at Sectrio using data from Sectrio, cyber threat intelligence farming facilities spread across over 85 cities around the world. In addition, Sectrio also runs AI-based advanced threat and payload engagement facilities that serve as sinks to attract and engage sophisticated threat actors, and newer malware including new variants and latent threats that are at an earlier stage of development.
The latest edition of the OT/ICS and IoT security Threat Landscape Report 2024 also covers:
State of global ICS asset and network exposure
Sectoral targets and attacks as well as the cost of ransom
Global APT activity, AI usage, actor and tactic profiles, and implications
Rise in volumes of AI-powered cyberattacks
Major cyber events in 2024
Malware and malicious payload trends
Cyberattack types and targets
Vulnerability exploit attempts on CVEs
Attacks on counties – USA
Expansion of bot farms – how, where, and why
In-depth analysis of the cyber threat landscape across North America, South America, Europe, APAC, and the Middle East
Why are attacks on smart factories rising?
Cyber risk predictions
Axis of attacks – Europe
Systemic attacks in the Middle East
Download the full report from here:
https://sectrio.com/resources/ot-threat-landscape-reports/sectrio-releases-ot-ics-and-iot-security-threat-landscape-report-2024/
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...Ramesh Iyer
In today's fast-changing business world, Companies that adapt and embrace new ideas often need help to keep up with the competition. However, fostering a culture of innovation takes much work. It takes vision, leadership and willingness to take risks in the right proportion. Sachin Dev Duggal, co-founder of Builder.ai, has perfected the art of this balance, creating a company culture where creativity and growth are nurtured at each stage.
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...DanBrown980551
Do you want to learn how to model and simulate an electrical network from scratch in under an hour?
Then welcome to this PowSyBl workshop, hosted by Rte, the French Transmission System Operator (TSO)!
During the webinar, you will discover the PowSyBl ecosystem as well as handle and study an electrical network through an interactive Python notebook.
PowSyBl is an open source project hosted by LF Energy, which offers a comprehensive set of features for electrical grid modelling and simulation. Among other advanced features, PowSyBl provides:
- A fully editable and extendable library for grid component modelling;
- Visualization tools to display your network;
- Grid simulation tools, such as power flows, security analyses (with or without remedial actions) and sensitivity analyses;
The framework is mostly written in Java, with a Python binding so that Python developers can access PowSyBl functionalities as well.
What you will learn during the webinar:
- For beginners: discover PowSyBl's functionalities through a quick general presentation and the notebook, without needing any expert coding skills;
- For advanced developers: master the skills to efficiently apply PowSyBl functionalities to your real-world scenarios.
Accelerate your Kubernetes clusters with Varnish CachingThijs Feryn
A presentation about the usage and availability of Varnish on Kubernetes. This talk explores the capabilities of Varnish caching and shows how to use the Varnish Helm chart to deploy it to Kubernetes.
This presentation was delivered at K8SUG Singapore. See https://feryn.eu/presentations/accelerate-your-kubernetes-clusters-with-varnish-caching-k8sug-singapore-28-2024 for more details.
5. Session Based Testing: A Strategy for Game testing
Introduction | Game Development Cycle and Software Development Cycle
Software Reengineering
Software ReengineeringSoftware Reengineering
• Software reengineering is the process of creating an abstract
description of a system, reasoning about a change at a
higher level of abstraction, and then re-implementing the
system.
8. On reverse engineering an object-oriented code into UML class
diagrams incorporating extensible mechanisms
by
Vinita, Jain Amita, Tayal Devendra K
The authors propose an algorithm to reverse engineer an object-oriented code
into UML class diagram.
The algorithm generates rules for a complete set of constructs available in
UML class diagrams. It includes classes, relationships, objects, attributes,
operations, inheritance, associations, interfaces & other extensible
mechanisms also.
This algorithm can be viewed as a solution to reverse engineer any available
object-oriented software.
Input : Object oriented code
Output: UML class diagram.
9. An Example – Composition & Inheritance
class Point
{
/*...*/
}
class Circle
{
private:
Point center;
/*...*/
}
Circle
Point
-center:
Point
1
class Customer
{
protected:
int custno;
};
class Human_cust: public Customer {
protected:
char sex;
char bdate;
};
class Inst_cust: public Customer
{
protected:
int noofemp;
char orgtype;
};
#noofemp: int
#orgtype: char
#sex: char
#bdate: char
Inst_custHuman_cust
#cusNo: int
Customer
10. Static Control-Flow Analysis for Reverse Engineering of
UML Sequence Diagrams
by
Rountev Atanas, Volgin Olga and Reddoch Meriam
The authors propose simple UML extensions that are necessary to capture
general flow of control. An algorithm is proposed that maps a reducible
exception free intra-procedural control-flow graph to UML Sequence diagram,
using the proposed extensions.
The 4 kinds of interaction fragments of particular importance are -
An opt fragment describes optional behavior guarded by some condition.
An alt fragment describes two or more mutually-exclusive alternatives in
behavior.
The sequence enclosed in a loop fragment is repeated until the guard
condition becomes false.
A break fragment represents a breaking. scenario: first the fragment sequence
inside the break fragment is executed, and then the execution of the fragment
enclosing the break completes immediately.
11. An example:
Code -> CFG (Control Flow Graph)->Sequence diagram
if (a.m1() || b.m2())
{
a.m3();
}
b.m4();
a.m3()
C1 = a.m1()
If (c1)
c2: b.m2()
If (c2)
b.m4()
Code CFG Sequence diagram
F
F
T
T
x:X a:A b:B
c1=m1()
m3()
c2=m2()
m3()
m4 ()
alt
[c1]
[c1]
opt
[c2]
12. Application Modelling using Reverse Engineering
Techniques
by
Katsimpa, T., Panagis, Y., Sakkopoulos, E., Tzimas, G., Tsakalidis,
A.
The authors present a technique that enables effective reverse engineering
procedures for web applications.
This work shows a method that allows us to transform existing web applications
developed with ASP.NET, into WebML models represented first with the
appropriate graph DAG (Directed Acyclic Graph) to enable further
meta-modeling.
13. Steps for Application modeling using reverse engineering
.ASPX
Analysis
Data source
analysis
Final
Application
graph
Labels WebML
ASPX pages
Text files
.NET Web applicaition
Correspondence Matrix
DAG Tree
15. Session Based Testing: A Strategy for Game testing
• In this work Olga Volgin et al. proposes
– “An algorithm for mapping a reducible exception-free intraprocedural
control-flow graph to UML.”
• Extensions proposed by us
– Combine static analysis (using available tool support) and behavioral
analysis (as shown in Olga Volgin et al.)
Static Control-Flow Analysis for Reverse Engineering of
UML Sequence Diagrams
by
Rountev Atanas, Volgin Olga and Reddoch Meriam
16. Session Based Testing: A Strategy for Game testing
Using existing tool
support
Code
(reengineered
system)
PIM (static +
behavior model)
UML - Class
Diagram
PSM (apply UML
extensions)
Algorithm [Olga Volgin et
al.]
Volgin Olga et al.
work continued …
17. Session Based Testing: A Strategy for Game testing
• In this work L. Favre proposes
– “… proposes a MDA technique to model static and dynamic behavior
from a migrated object oriented code..”
“Formalizing MDA-based Reverse Engineering Processes”.
by
L. Favre.
Parser
Metamodel
Extractor
Reverse
Engineering
Data Flow
Analysis
ISM code AST
DFG /
patterns
PIM code
PSM code
18. Session Based Testing: A Strategy for Game testing
Static and
dynamic
analysis
Static and
dynamic
analysis
formalizes
Legacy
source
code
L. Favre
work continued …
19. Session Based Testing: A Strategy for Game testing
• B.Qiao et al. propose use RWSL {Re-
engineering Wide Spectrum Language} to
recover the architecture of a legacy
system.
“…The full support for reverse engineering guarantees the
correctness of following evolution phases, i.e., integration
with MDA, model establishment and implementation.”
Bridging legacy systems to model driven
architecture
by
B. Qiao, H.Yang, W. Chu and B. Xu
20. Session Based Testing: A Strategy for Game testing
HTML etc.
XMI DOC /
DTD
UML profile
for RWSL
PSM (UML)
PIM (UML)
New Features
Initial
Architecture
in RWSL
Components /
Connectors
Code in RWSL
(CSL / COOL)
Existing
/ Legacy
Systems
Decomposition
ImplementationSADL2UML
Translation
Transfer
Configuration
IntegrationXSLT
UML2XMI Transform
Addition
Abstraction
Restructuring
B. Qiao et al.
work continued … MDA Models
21. Observations
Tool support exists to re-engineer software systems without MDA;
however the tools fail to provide design models of the application.
Language translators often generate poorly structured code,
cryptic variable names and non-optimal data structures.
Mapping platform services from source to target environment has
always been a manual task as this is difficult to automate.
However, using formalizing MDA approach we can automate the
mapping of platform services during re-engineering.
22. As new technology arrives at a fast rate, old technologies do not
disappear, but are concentrated in the legacy software. As a
consequence the evolution problem is augmented by a
heterogeneity problem.
The middleware landscape has continually shifted and
evolved e.g. CORBA, .NET, EJB, XML/SOAP. Further, there is no
one winner or a de facto standard available to develop software
systems. Hence, the re-engineering approach which provides an
implementation independent model will be advantageous.
Observations
23. This study at present does not provide any empirical results on
reengineering a legacy system with or without MDA.
As future work we aim to test our observation of reengineering
a legacy system with MDA using available tool support.
Future Work
24. “…The most interesting and challenging side of
software engineering may not be building brand
new software systems, but rejuvenating
existing ones.”
- Oscar Nierstrasz et al.
25. [1] Nierstrasz, Oscar and Demeyer, Serge. “Object-Oriented Reengineering
Patterns” 2004. Proceedings of the 26th International Conference on Software
Engineering (ICSE’04).
[2] Object Management Group; http://www.omg.org
[3] Model Driven Architecture; http://www.omg.org/mda
[4] Park, Wei-Jin; Min-Sang, Yoon; Bae, Doo-Hwan, and Mah, Pyeong-Soo. “Object–
Oriented Model Refinement Technique in Software Reengineering” IEEE Xplore.
[5] I. Jacobson and F. Lindstorm “Re-engineering of Old Systems to an Object-
oriented architecture” Proceedings of OOPSLA91, 1991, pp.77-83
[6] Gowthaman K., Mustafa K. and Khan R.A. “Reengineering Legacy Source Code
to Model Driven Architecture”. 2005. Proceedings of the Fourth Annual ACIS
International Conference on Computer and Information Science (ICIS’05)
[7] Green L., Bergey J., Lamia W., Smith D., “Proceedings of the First Annual
Software Engineering Techniques Workshop, May 1994: Software Reengineering”.
May 1994. pp. 1
References
26. [8] L. Favre. “Formalizing MDA-based Reverse Engineering Processes”. IEEE
Sixth International Conference on Software Engineering Research, Management
and Applications. 2008.
[9] Rountev Atanas, Volgin Olga and Reddoch Meriam. “Static Control-Flow Analysis
for Reverse Engineering of UML Sequence Diagrams”. PASTE ‘05. 6th ACM
SIGPLAN-SIGSOFT Workshop on Program Analysis for Software Tools and
Engineering. 2005.
[10] B. Qiao, H.Yang, W. Chu and B. Xu,. “Bridging legacy systems to model
driven architecture”. In Proc. 27th Annual International Computer Aided Software
and Applications Conference. IEEE Press, 2003, pp. 304-309.
[11] http://www.suite101.com/article.cfm/reengineering/7669
Dr. Rosenberg. Linda H., “Software Re-engineering”
[12] Byrne, Eric J., "Software Reverse Engineering: A Case Study", Software-
Practice and Experience, 12/91.
[13] http://portal.acm.org/citation.cfm?id=1402527
Vinita, Jain Amita, Tayal Devendra K., “On reverse engineering an object-oriented
code into UML class diagrams incorporating extensible mechanisms”. ACM SIGSOFT
References
27. Software Engineering Notes, Volume 33, Issue 5 (September 2008) , Article No. 9,
Year of Publication: 2008, ISSN:0163-5948
[14] Katsimpa, T., Panagis, Y., Sakkopoulos, E., Tzimas, G., Tsakalidis, A. (2006)
“Application Modelling using Reverse Engineering Techniques”. Proceedings
Symposium on Applied Computing (SAC’06), pp1250-1255.
[15] T. Philip, R. Ramsundar, “A Reengineering Framework for Small Scale Software”,
Software Engineering Notes , 20 (5), 1995, 51-55
[16] Tmothy C Lethbridge & Nicolas Anquetil, “Architecture of source code
Exploration Tool: A Software Engineering Case study”, SITE, University of Ottawa,
Canada, Technical report 1997-07.
[17] Bergey, J. K.; Smith, Dennis B.; & Weiderman, N. H. DoD, “Legacy System
Migration Guidelines”, (CMU/SEI-99-TN-013, ADA370621). Pittsburgh, PA: Software
Engineering Institute, Carnegie Mellon University, September 1999.
[18] JeanBezivin, Slimane Hammoudi, Denivaldo Lopes,Fr´ed´eric Jouault, “Applying
MDA Approach forWeb Service Platform”, Proceedings of the 8th IEEE Intl Enterprise
Distributed Object Computing Conf(EDOC 2004). 2004.
References