Network


Latest external collaboration on country level. Dive into details by clicking on the dots.

Hotspot


Dive into the research topics where Sonia Pini is active.

Publication


Featured researches published by Sonia Pini.


acm symposium on applied computing | 2007

Co-evolving application code and design models by exploiting meta-data

Walter Cazzola; Sonia Pini; Ahmed Ghoneim; Gunter Saake

Evolvability and adaptability are intrinsic properties of todays software applications. Unfortunately, the urgency of evolving/adapting a system often drives the developer to directly modify the application code neglecting to update its design models. Even, most of the development environments support the code refactoring without supporting the refactoring of the design information. Refactoring, evolution and in general every change to the code should be reflected into the design models, so that these models consistently represent the application and can be used as documentation in the successive maintenance steps. The code evolution should not evolve only the application code but also its design models. Unfortunately, to co-evolve the application code and its design is a hard job to be carried out automatically, since there is an evident and notorious gap between these two representations. We propose a new approach to code evolution (in particular to code refactoring) that supports the automatic co-evolution of the design models. The approach relies on a set of predefined metadata that the developer should use to annotate the application code and to highlight the refactoring performed on the code. Then, these meta-data are retrieved through reflection and used to automatically and coherently update the application design models.


acm symposium on applied computing | 2005

AOP for software evolution: a design oriented approach

Walter Cazzola; Sonia Pini; Massimo Ancona

In this paper, we have briefly explored the aspect-oriented approach as a tool for supporting the software evolution. The aim of this analysis is to highlight the potentiality and the limits of the aspect-oriented development for software evolution. From our analysis follows that in general (and in particular for AspectJ) the approach to join points, pointcuts and advices definition are not enough intuitive, abstract and expressive to support all the requirements for carrying out the software evolution. We have also examined how a mechanism for specifying pointcuts and advices based on design information, in particular on the use of UML diagrams, can better support the software evolution through aspect oriented programming. Our analysis and proposal are presented through an example.


The Journal of Object Technology | 2007

On the Footprints of Join Points: The Blueprint Approach

Walter Cazzola; Sonia Pini

Aspect-oriented techniques are widely used to better modularize object-oriented programs by introducing crosscutting concerns in a safe and non-invasive way, i.e., aspectoriented mechanisms better address the modularization of functionality that orthogonally crosscuts the implementation of the application. Unfortunately, as noted by several researchers, most of the current aspect-oriented approaches are too coupled with the application code, and this fact hinders the concerns separability and consequently their re-usability since each aspect is strictly tailored on the base application. Moreover, the join points (i.e., locations affected by a crosscutting concerns) actually are defined at the operation level. It implies that the possible set of join points includes every operation (e.g., method invocations) that the system performs. Whereas, in many contexts we wish to define aspects that are expected to work at the statement level, i.e., by considering as a join point every point between two generic statements (i.e., lines of code). In this paper, we present our approach, called Blueprint, to overcome the abovementioned limitations of the current aspect-oriented approaches. The Blueprint consists of a new aspect-oriented programming language based on modeling the join point selection mechanism at a high-level of abstraction to decouple aspects from the application code. To this regard, we adopt a high-level pattern-based join point model, where join points are described by join point blueprints, i.e., behavioral patterns describing where the join points should be found.


model driven engineering languages and systems | 2006

Join point patterns: a high-level join point selection mechanism

Walter Cazzola; Sonia Pini

Aspect-Oriented Programming is a powerful technique to better modularize object-oriented programs by introducing crosscutting concerns in a safe and noninvasive way. Unfortunately, most of the current join point models are too coupled with the application code. This fact hinders the concerns separability and reusability since each aspect is strictly tailored on the base application. This work proposes a possible solution to this problem based on modeling the join points selection mechanism at a higher level of abstraction. In our view, the aspect designer does not need to know the inner details of the application such as a specific implementation or the used name conventions rather he exclusively needs to know the application behavior to apply his/her aspects. In the paper, we present a novel join point model with a join point selection mechanism based on a high-level program representation. This high-level view of the application decouples the aspects definition from the base program structure and syntax. The separation between aspects and base program will render the aspects more reusable and independent of the manipulated application.


international conference on automated production of cross media content for multi channel distribution | 2005

Information, knowledge and interoperability for healthcare domain

Mikhail Simonov; Luca Sammartino; Massimo Ancona; Sonia Pini; Walter Cazzola; Marco Frascio

New technologies have improved the ability of electronically storing, transferring and sharing medical data; they also create serious questions about who has access to this cross-media content and how it is protected and distributed. Our aim is to support healthcare professionals in this changing environment, by providing a set of software tools that help reducing the time and associated costs to collect the information and knowledge required, and in making the best use of it for a more informed decision making (diagnoses, therapies, protocols). An appropriate and consistent level of information security consists of protecting information both in written, spoken, electronically recorded, or printed form from accidental or malicious modification, destruction, or disclosure by applying the strictest requirements for data security and privacy and complying with ethical standards. By Doc@Hand project we experiment the distribution of computer-based patient record, natural language queries and the contained knowledge in a secured way.


european conference on object-oriented programming | 2006

Design-Based Pointcuts Robustness Against Software Evolution.

Walter Cazzola; Sonia Pini; Massimo Ancona


european conference on object-oriented programming | 2005

The Role of Design Information in Software Evolution

Walter Cazzola; Sonia Pini; Massimo Ancona


european conference on object-oriented programming | 2007

AOP vs Software Evolution: a Score in Favor of the Blueprint.

Walter Cazzola; Sonia Pini


european conference on object-oriented programming | 2004

Evolving Pointcut Definition to Get Software Evolution.

Walter Cazzola; Sonia Pini; Massimo Ancona


Aspect-Oriented Modeling | 2007

Join Point Patterns: a High-Level Join Point Selection Mechanism

Walter Cazzola; Sonia Pini

Collaboration


Dive into the Sonia Pini's collaboration.

Top Co-Authors

Avatar
Top Co-Authors

Avatar
Top Co-Authors

Avatar
Top Co-Authors

Avatar
Top Co-Authors

Avatar
Top Co-Authors

Avatar

Ahmed Ghoneim

Otto-von-Guericke University Magdeburg

View shared research outputs
Top Co-Authors

Avatar

Gunter Saake

Otto-von-Guericke University Magdeburg

View shared research outputs
Researchain Logo
Decentralizing Knowledge