Egidio Astesiano's research while affiliated with Università degli Studi di Genova and other places

Publications (122)

Conference Paper
In this paper, we propose a holistic approach aimed at combining business process modelling and data-driven business process improvement. The first step requires to develop a “precise” model of the processes of the organization using the UML. Precise means that all business entities involved in the process are determined as well as all the tasks co...
Chapter
There are a huge number of scientific papers and reports intended for practitioners, not forgetting whole books and websites, presenting modelling methods in the field of software development. Thus, many questions naturally arise concerning both the nature of method itself (say, e.g. its scope and intended use) and the relationships between differe...
Article
Full-text available
Over the last few years, the software engineering community has proposed a number of modeling methods to represent functional requirements. Among them, use cases are recognized as an easy to use and intuitive way to capture and define such requirements. Screen mockups (also called user-interface sketches or user interface-mockups) have been propose...
Conference Paper
A software developer facing a modelling task may follow different styles at different levels of abstraction and precision, to better cope with the aims and the potential users of the model. We address the problem of modelling the business processes by means of UML activity diagrams, and present five styles differing in the precision level, from the...
Conference Paper
Full-text available
The main aim of this work is investigating the level of knowledge and diffusion of SOA (Service Oriented Architecture) in the Italian industry. We are also interested to understand what is the trend of SOA (positive or negative?) and what are the methods, technologies and tools really used in the industry. We carried out a personal opinion survey r...
Conference Paper
Full-text available
Developing SOA based systems and migrating legacy systems to SOA are difficult and error prone tasks, where approaches, methods and tools play a fundamental role. For this reason, several proposals have been brought forward in literature to help SOA developers. This paper sketches a novel method for the development of systems based on services, i.e...
Conference Paper
We conducted a personal opinion survey in two rounds - years 2008 and 2011 - with the aim of investigating the level of knowledge and adoption of SOA in the Italian industry. We are also interested in understanding what is the trend of SOA (positive or negative?) and what are the methods, technologies and tools really used in the industry. The main...
Conference Paper
Full-text available
Recently, we took part in a project with two local companies about the creation of a UML-based Model Driven rigorous method to develop VECM-based systems. VECM is a way to abstract from the details of different Enterprise Content Management (ECM) systems used within the same organization. This report details the experience made using our method to...
Conference Paper
Full-text available
Recently, we were prompted by a local company to improve the maintainability of a postal legacy system and reduce the time to close the change requests. In this paper, we describe the first step of our on-going project that consists in the comparison of two alternative architectures of the target postal system using the Software Architecture Analys...
Conference Paper
Full-text available
The problem frame approach allows to precisely pin the software development problems before starting to work on them, thus avoiding to solve the wrong problems. Furthermore, the problem frames allow to develop tailored methods and schematic solutions to handle the tasks required to solve the corresponding problems. In this paper we adopt this appro...
Conference Paper
Full-text available
In this paper, we present and discuss the results of an internal replication of a controlled experiment for assessing the effectiveness of including screen mockups when adopting Use Cases. The results of the original experiment indicate a clear improvement in terms of understandability of functional requirements when screen mockups are present with...
Conference Paper
Full-text available
In order to increase stakeholders' comprehension on software requirements, Use Cases can be enhanced with screen mock-ups (i.e., GUI prototypes sketched with a special conceived graphical tool). However, the effort to write Use Cases augmented with screen mockups may increase, thus not justifying their adoption in the requirements engineering proce...
Conference Paper
We first argue that in some software development areas the need emerges of modelling structural and behavioural aspects of a community of objects cooperating to achieve a specific purpose, say a cooperation, for short. The notion of cooperation is formalized, with a first citizenship status, in the UML 2, as a collaboration. There are however some...
Conference Paper
We share the viewthat software systemdevelopment and business modeling have to be aligned. In our opinion that means not only that theremust be a strict correlation between the two, but thatwe should adopt both the same conceptual frame and notation, enforcing a seamless activity flow between them. In this paper we offer an attempt at showing that...
Chapter
The essential novelty of what we have presented lies in the possibility of specifying within the same formalism requirements about the static structure and the dynamic activity of a system. Compared to the many formalisms using various forms of temporal logics, we have two distinguished features: the possibility of dealing both with different entit...
Chapter
In this paper we study the classes of extensional models of higher-order partial conditional specifications. After investigating the closure properties of these classes, we show that an inference system for partial higher-order conditional specifications, which is equationally complete w.r.t. the class of all extensional models, can be obtained fro...
Chapter
An outline is presented of the SMoLCS methodology for the specification of concurrent systems and languages. Its main novelties lie in a high level of modularity and parameterization and in the fact that, within the same homogeneous framework, functions, data types and concurrency can be handled together. Indeed a concurrent system is algebraically...
Chapter
Full-text available
A technique for specifying concurrent systems is shown, that uses the algebraic specification language ASL. A system is algebraically specified as a transition system and a concurrent system is the result of composing systems by three basic operations: synchronization, parallel composition and monitoring. These operations are schematically describe...
Conference Paper
The MoDELS 2006 conference provides six half-day tutorials on advanced topics related to model-driven engineering, presented by recognized worldwide experts. Here, there is a short summary of each tutorial and the list of presenters.
Chapter
A challenging problem within the wider software evolution problem is the development of systems by features. While most of the recent work centered around the detection of feature interactions, we present an approach based on modular specification, separation of concerns and prevention of unwanted interactions. We illustrate our approach extending...
Conference Paper
Full-text available
In this paper, addressing the classical problem of modelling the behaviour of a system, we present a paradigmatic journey from purely formal and textual techniques to derived visual notations, with a further attention first to code generation and finally to the incorporation into a standard notation such as the UML. We show how starting from Casl p...
Article
Full-text available
In this paper, addressing the classical problem of modelling the behaviour of a system, we present a paradigmatic journey from purely formal and textual techniques to derived visual notations, with a further attention first to code generation and finally to the incorporation into a standard notation such as the UML. We show how starting from Casl p...
Article
On the basis of some experience in the use of UML-based use casedrivenmethods, we believe and claim, contrary to a recent wave for allowingalmost total freedom as opposed to disciplined methods, that a tighter and moreprecise structuring of the artifacts for the different phases of the software developmentprocess may help speed-up the process, whil...
Chapter
We address in general the problem of providing a methodological and notational support for the development at the design level of applications based on the use of a middleware. In order to keep the engineering support at the appropriate level of abstraction, we formulate our proposal within the frame of Model Driven Architecture (MDA). We advocate...
Conference Paper
Full-text available
This paper presents an attempt, perhaps unorthodox, at bridging the gap between the use of formal techniques and the current software engineering practices. After years of full immersion in the development and use of formal techniques, we have been led to suggest a Virtuous Cycle philosophy, better marrying the rigor of formalities to the needs and...
Article
We look at the main issue of the Colloquium "Formal Methods at the Crossroads from Panacea to Foundational Support" reflecting on our rather long experience of active engagement in the development and use of formal techniques. In the years, we have become convinced of the necessity of an approach more concerned with the real needs of the software d...
Article
Full-text available
In the last ten years we have developed and experimented in a series of projects, including industry test cases, a method for the specification of reactive/concurrent/parallel/distributed systems both at the requirement and at the design level. We present here in outline its main technical features, providing pointers to appropriate references for...
Article
Casl the basic language developed within CoFI, the Common Framework Initiative for algebraic speci cation and development, cannot be used for specifying the requirements and the design of dynamic software systems. Casl-Ltl is an extension to overcome this limit, allowing to specify dynamic system by modelling them by means of labelled transition sy...
Article
In this paper we discuss how to combine a multiview use-case driven method for the requirement specification of a system with an agent-oriented method for developing a working prototype. The rationale behind this combination is to cover the complete software development cycle, while the two methods it originates from only cover a part of it. The pr...
Article
In this paper, after introducing the problem and a brief survey of the current approaches, we look at the consistency problems in the UML in terms of the well-known machinery of classical algebraic specifications. Thus, first we review how the various kinds of consistency problems were formulated in that setting. Then, and this is the first contrib...
Book
FIDJI 2002 was an international forum for researchers and practitioners in- rested in the advances in, and applications of, software engineering for distri- ted application development. Concerning the technologies, the workshop focused on “Java-related” technologies. It was an opportunity to present and observe the latest research, results, and ide...
Conference Paper
Full-text available
Abstract In this paper we discuss how,to combine,a multiview use-case driven method for the requirement specification of a system with an agent-oriented method,for developing a working prototype. The rationale behind this combination is to cover the complete software development cycle, while the two methods,it originates from only cover a part of i...
Conference Paper
Full-text available
In this paper, after introducing the problem and a brief survey of the current approaches, we look at the consistency problems in the UML in terms of the well-known machinery of classical algebraic specifications. Thus, first we review how the various kinds of consistency problems were formulated in that setting. Then, and this is the first contrib...
Article
Full-text available
On the basis of some experience in the use of UMLbased methods, we believe that a more refined and stringent structuring of the knowledge in the Requirement Specification may help the specification process and make easier the consistency checks among the various components. Thus we propose a way of structuring and representing the Requirement Speci...
Conference Paper
Full-text available
We look at the main issue of the Colloquium “Formal Methods at the Crossroads from Panacea to Foundational Support” reflecting on our rather long experience of active engagement in the development and use of formal techniques. In the years, we have become convinced of the necessity of an approach more concerned with the real needs of the software d...
Conference Paper
We address in general the problem of providing a methodological and notational support for the development at the design level of applications based on the use of a middleware. In order to keep the engineering support at the appropriate level of abstraction, we formulate our proposal within the frame of Model Driven Architecture (MDA). We advocate...
Conference Paper
Full-text available
On the basis of some experience in the use of UML, we believe and claim, contrary to a recent wave for allowing almost total freedom as opposed to disciplined methods, that a tighter and more precise structuring of the artifacts for the different phases of the software development process may help speed-up the process, while obviously making easier...
Article
Full-text available
In the last ten years we have developed and experimented in a series of projects, including industry test cases, a method for the specification of reactive/concurrent/parallel/distributed systems both at the requirement and at the design level. We present here in outline its main technical features, providing pointers to appropriate references for...
Conference Paper
UML and similar modelling techniques are currently taking momentum as a de facto standard in the industrial practice of software development. As other Object Oriented modelling techniques, they have benefited from concepts introduced or explored in the field of Algebraic Development Techniques— for short ADT, formerly intended as Abstract Data Type...
Article
We present an initial proposal for an extension of MML, the basic language of [1], by adding a dynamic core and a basic visual notation to represent behaviour. Then we give some hints on how to use this extension for metamodelling UML covering the behavioural-dynamic aspects. The presentation will follov the style of [1].
Conference Paper
Full-text available
We discuss the nature of the semantics of the UML. Contrary to the case of most languages, this task is far from trivial. Indeed, not only the UML notation is complex and its informal description is incomplete and ambiguous, but we also have the UML multiview aspect to take into account. We propose a general schema of the semantics of the UML, wher...
Conference Paper
Coordination via tuple spaces is a well known and accepted technique for designing distributed systems; originally introduced in Linda, it has been very recently adopted within the Java environment as an underlying mechanism of the JavaSpaces<sup>TM</sup> technology. We explore the possibility of using such a technique in the development of systems...
Article
Full-text available
Modelling nonpurely-reactive systems, such as agents and autonomous processes, does not find a direct support in the UML notation as it stands, and it is questionable whether it is possible and sensible to provide it in the form of a lightweight extension via stereotypes.
Article
Full-text available
We aim at using algebraic techniques, and in particular an extension, Casl-Ltl of the Casl basic language in order to produce a formal semantics of the UML. Contrary to most cases, this task is far from trivial. Indeed, the UML notation is complex, including a lot of heterogeneous notations for different aspects of a system, possibly described in d...
Conference Paper
Full-text available
We propose a precise definition of UML active classes through associated labelled transition systems using the algebraic Specification language Casl. We are convinced that the first step to make UML precise is to find an underlying formal model for the systems modelled by UML, and we argue that labelled transition systems are a sensible choice. Thi...
Article
Casl the basic language developed within CoFI, the CommonFramework Initiative for algebraic specification and development, cannot be used for specifying the requirements and the design of dynamic software systems. Casl-Ltl is an extension to overcome this limit, allowing to specify dynamic system by modelling them by means of labelled transition sy...
Conference Paper
We are interested in the composition of languages, in particular a data description language and a paradigm-specific language, from a pragmatic point of view. Roughly speaking our goal is the description of languages in a component-based style, focussing on the data definition component. The proposed approach is to substitute the constructs dealing...
Article
Luckily, is getting strength the view that formal methods are useful tools within the context of an overall engineering process, heavily influenced by other factors that developers of formalisms should take into account. We argue that the impact of formalisms would much benefit from adopting the habit of systematically and carefully relating formal...
Conference Paper
We are interested in the composition of languages, in particular a data description language and a paradigm-specific language, from a pragmatic point of view. Roughly speaking our goal is the description of languages in a component-based style, focussing on the data definition component. The proposed approach is to substitute the constructs dealing...
Article
The Common Algebraic Specification Language (CASL) is an expressive language for the formal specification of functional requirements and modular design of software. It has been designed by COFI, the international Common Framework Initiative for algebraic specification and development. It is based on a critical selection of features that have alread...
Conference Paper
Full-text available
This paper reports the results of a workshop held at ECOOP'99. The workshop was set up to find answers to questions fundamental to the definition of a semantics for the Unified Modelling Language. Questions examined the meaning of the term semantics in the context of UML; approaches to defining the semantics, including the feasibility of the meta-m...
Article
Full-text available
State Machines" (ASM). 13.4.1 Evolving algebras (abstract state machines) The basic idea of the "evolving algebras" (see, for instance, [Gur93,Gur95]) is perfectly summarized by their name. Essentially an evolving algebra (specification) consists of a description of a (nonlabeled) transition system, whose states are algebras on the same homogeneous...
Article
Full-text available
extend the kinds of the elements used in the diagrams, as stereotypes, tagged values and constraints. Moreover the language used for the constraints is not fixed; a particular one, OCL, has been defined but its use is not mandatory and can be replaced by other languages, including also natural language text. Notation UML is only a notation and not...
Article
This paper reports the results of a workshop held at ECOOP'99. The workshop was set up to find answers to questions fundamental to the definition of a semantics for the Unified Modelling Language. Questions examined the meaning of the term semantics in the context of UML; approaches to defining the semantics, including the feasibility of the meta-m...
Book
The aim of software engineering is the provision and investigation of methods for the development of software systems of high quality with correctness as a key issue. A system is called correct if it does what one wants, if it meets the requirements. To achieve and to guarantee correct systems, the need of formal methods with rigorous semantics and...
Article
We address the problem of giving a clean and uniform mathematical model for handling user defined data types in imperative languages, contrary to the ad-hoc treatment usual in classical denotational semantics. The problem is solved by defining the store as a homomorphic mapping of an algebraic structure of left values modelling containers into anot...
Article
Full-text available
implementation. Sy4) Abstract program A definition of an "executable" formal structure. Possible meanings for "executable formal structure" are: -- is computable, -- can be interpreted (all parts of the formal structure may be executed), -- can be prototyped/animated (some parts of the formal structure may be executed), -- can be compiled into some...
Article
In this paper we show that it is possible to extend in a natural way to the dynamic case some basic results of the classical approach to (static) data types. Within an appropriate framework of dynamic structures (calledd-oids), which play the same role as algebras in the static case, we define a language of dynamic terms, also enjoying the property...
Article
Partial conditional specifications consist of conditional axioms, with equalities in the (possibly infinite set of) premises and in the consequence, which are interpreted in partial algebras. Equalities may be existential (= e ) or strong (=); t= e t’ holds in an algebra iff both t and t ' are defined and equal, while t=t ' holds in an algebra iff...
Article
We propose a semantic framework for dynamic systems, which, in a sense, extends the well-known algebraic approach for modelling static data structures to the dynamic case. The framework is based on a new mathematical structure, called a d-oid, consisting of a set of instant structures and a set of dynamic operations. An instant structure is a stati...
Article
. Non-strict don't care functions, whose foremost representative is the ubiquitous if_then_else, play an essential role in computer science. As for what concerns semantics, they can be modelled by their totalizations with the appropriate use of elements representing undefinedness, as D. Scott has shown in his denotational approach. The situation is...
Article
Partial higher-order conditional specifications may not admit initial models, because of the requirement of extensionality, even when the axioms are positive conditional. The main aim of the paper is to investigate in full this phenomenon. If we are interested in term-generated initial models, then partial higher-order specifications can be seen as...
Article
. Adopting the concept of institution to represent logical frames, we have introduced in a previous paper the concept of simulation of an institution by another. Here we first show how simulations can be used to investigate the relationships between frames, distinguishing three levels, corresponding to different kinds of simulations: "set-theoretic...
Conference Paper
Full-text available
Without Abstract
Conference Paper
Considers the problem of specifying reactive systems at different levels of abstraction and proposes a method for connecting the requirements to the design phase. As in a variety of other approaches, we assume that a process is modelled by a labelled transition system. The requirements phase is supposed to define a class of models, while at the des...
Conference Paper
This paper is a first attempt at a formal foundation of specification languages allowing their basic modules to be defined in several formalisms. More precisely a rigorous notion of a compositional tool for importing/exporting specifications between two instances of one specification metalanguage on different basic algebraic frameworks is proposed....
Article
A poweful paradigm is presented for defining semantics of data types which can assign sensible semantics also to data representing processes. Processes are abstractly viewed as elements of observable sort in an algebraic structure, independently of the language used for their description. In order to define process semantics depending on the observ...
Article
In this paper the classes of extensional models of higher-order partial conditional specifications are studied, with the emphasis on the closure properties of these classes. Further it is shown that any equationally complete inference system for partial conditional specifications may be extended to an inference system for partial higher-order condi...
Conference Paper
We present a new formal structure, called d-oid, for modelling systems of evolving objects. In our view, d-oids are the dynamic counterpart of many-sorted algebras, in the sense that they can model dynamic structures as much as algebras can model static data types. D-oids are a basis for giving syntax and semantics for kernel languages for defining...
Chapter
Abstract data types are included in programming languages such as Ada, CLU, MODULA, CIP-L, or ML to provide a syntactic frame for the modular and abstract definition of programming systems. Therefore, programming languages are also described by these techniques. Main steps in this direction are infinite magmas, the ADJ-approach using continuous alg...
Article
For years providing syntax-directed methods for the formal definition of concurrent languages has proved to be a challenging task. Problems are even more difficult if a language has some of the typical Ada features, such as strong interference between sequential and concurrent aspects, parameterized semantics, complex data structure, and finally an...