Papers by Alfonso Fuggetta
International Workshop on Software Specifications & Design, 1998
The notion of feature is widely used to denote the functional structure and visible properties of... more The notion of feature is widely used to denote the functional structure and visible properties of a software system. More specifically, features are meant to represent a user-centric organization of a software system's functionality. Yet, other than during requirements analysis, features are seldom treated explicitly by most existing tools and methods.This paper argues that a feature-orientation can provide benefits to
IEEE Transactions on Software Engineering, 1993
International Conference on Software Engineering, 1993
Software production processes are subject to changes during their life-time. Therefore, software ... more Software production processes are subject to changes during their life-time. Therefore, software process formalism must include mechanisms to support the analysis and dynamic modification of process models, even while they are being enacted. It is thus necessary for a process model to have the ability to reason about its own structure. Petri net based process languages have been cm”ticized because
International Conference on the Software Process, 1993
This paper discusses some features provided by the SPADE environment to support the definition,an... more This paper discusses some features provided by the SPADE environment to support the definition,analysis and enactment of large and evolving software process models. In particular, we introduce theconcept of activity, which allows the process designer to create and hierarchically aggregate fragmentsof process specifications. We then provide an execution model for activities and propose differentalternatives for activity execution. Finally, we discuss
International Conference on the Software Process, 1993
The authors discuss some features provided by the SPADE environment to support the definition, an... more The authors discuss some features provided by the SPADE environment to support the definition, analysis, and enactment of large and evolving software process models. In particular, they introduce the concept of activity, which allows the process designer to create and hierarchically aggregate fragments of process specifications. They then provide an execution model for activities and propose different alternatives for activity
The SPADE project aims at developing an environment to define, analyze, and execute process model... more The SPADE project aims at developing an environment to define, analyze, and execute process modelsdefined in the SLANG process modeling language. This paper presents SLANG through a case-studyand highlights the main features of the first prototype implementation of the SPADE concept, calledSPADE-1. It illustrates the facilities provided by SLANG to support process evolution and shows howthe SPADE-1 architecture supports integration
Proceedings. Ninth International Software Process Workshop, 1994
Abstract For Process-centered Software Engineering Environments (PSEEs) it is essential to provid... more Abstract For Process-centered Software Engineering Environments (PSEEs) it is essential to provide the set of tools that are needed to actually produce software in practice. SPADE-1 is a PSEE originally designed in order to allow the developer to use regular Unix tools (such ...
Lecture Notes in Computer Science, 1992
... Five process model phases are also introduced, as well as recta-processes and related human r... more ... Five process model phases are also introduced, as well as recta-processes and related human roles to handle process models and their transformations. The process concepts are applied to a bank example. Keywords: (software) process, process modeling, process ...
ACM SIGSOFT Software Engineering Notes, 1993
Software processes are complex entities that may last for long periods of time and are carried ou... more Software processes are complex entities that may last for long periods of time and are carried out through the interaction of humans and computerized tools. They need to continuously evolve in order to cope with di erent kinds of changes or customizations both in the organization and in the technologies used to support software production activities.
Software Process Improvement, 2006
Over the past two years the software process community has initiated and carried out a reflection... more Over the past two years the software process community has initiated and carried out a reflection on the purpose and scope of the research activities being carried out in the area. This has increased the awareness that there are many similarities between the problems and approaches of the software process technology community and those attacked by other research fields: software process improvement, information systems and workflow, databases, distributed technol- ogy, computer-supported cooperative work, groupware, and organizational and cognitive ...
, which cover, respectively, the conceptual modelling of data and funtions. This paper introduces... more , which cover, respectively, the conceptual modelling of data and funtions. This paper introduces VLP: an executable visual language for formal specifications and prototyping which integrates ER and DFD diagrams in a semantically rigorous and clear way. Unlike existing commercial products (so-called CASE tools), which can support goodquality documentation, simple forms of consistency checking and bookkeeping, VLP also supports executable specifications, which provide a prototype of the desired application. After reviewing the principles of VLP, the paper outlines the structure of the ECASET environment in which VLP is embedded. In particular, it shows how the environment supports the stepwise derivation of specifications, from informal to formal, and how it supports specification-in-the-large.
Lecture Notes in Computer Science, 1996
In the past years there has been a significant trend towards the establishment of distributed s o... more In the past years there has been a significant trend towards the establishment of distributed s oftware development activities, where different organizations cooperate to develop a composite software product. This trend originates in the geographical distribution of many companies, quite often spread over different countries and even continents. Another motivation for this phenomenon relates to the increasing number of projects that are carried out by consortia or clusters of companies, each of them contributing with specific expertise to the final result. This scenario demands for improved software development technology that is able to support both the software development process at each local site, and the global interaction of the different organizations. In particular, process technology must be able to guarantee the autonomy of each site as far as the local software development process, practices, and artifacts are concerned. At the same time, it must be able to s uperimpose a coordinating process across all organizations to consistently drive the distributed development activity. The issue is critical for the effectiveness of process technology in an industrial context. In this paper we provide a discussion of the issue and propose a tentative research agenda for the next years.
ACM Transactions on Software Engineering and Methodology, 1996
Most modern business activities are carried out by a combination of computerized tools and human ... more Most modern business activities are carried out by a combination of computerized tools and human agents. Typical examples are engineering design activities, o ce procedures, and banking systems. All these human-centered systems are characterized by the interaction among people, and between people and computerized tools. This interaction de nes a process, whose e ectiveness is essential to ensure the quality of the delivered products and/or services. To support these systems, process-centered environments and work ow management systems have been recently developed. They can be collectively identi ed with the term process technology. This technology is based on the explicit de nition of the process to be followed (the process model). The model speci es the kind of support that has to be provided to human agents.
IEEE Transactions on Software Engineering, 1996
Software development is a cooperative activity that heavily relies on the quality and effectivene... more Software development is a cooperative activity that heavily relies on the quality and effectiveness of the communication channels established within the development team and with the end-user. In the software engineering field, several Software Engineering Environments (SEE) have been developed to support and facilitate software development. The most recent generation of these environments, called Process-Centered SEE (PSEE), supports the definition
Proceedings of the 20th International Conference on Software Engineering, 1998
The development of complex distributed systems demands for the creation of suitable architectural... more The development of complex distributed systems demands for the creation of suitable architectural styles (or paradigms) and related run-time infrastructures. An emerging style that is receiving increasing attention is based on the notion of event. In an event-based architecture, distributed software components interact by generating and consuming events. The occurrence of an event in a component (called source) is asynchronously notified to any other component (called recipient) that has declared some interest in it. This paradigm holds the promise of supporting a flexible and effective interaction among highly reconfigurable distributed software components.
Lecture Notes in Computer Science, 1994
SPADE is a project carried out at CEFRIEL and Politecnico di Milano. It aims at de ning a process... more SPADE is a project carried out at CEFRIEL and Politecnico di Milano. It aims at de ning a process modeling language (called SLANG) and a Process-centered Software Engineering Environment (PSEE) based on this language. PSEEs support software activities through the execution of the model of the software process. Such a model integrates the description of human activities and of the interaction between humans and software development tools. Moreover, PSEEs must provide the means to manage and persistently store the artifacts developed within the process. SPADE-1 is an implementation of the SPADE concept. In particular, it includes a SLANG interpreter and facilities to store process artifacts in an object-oriented database (O 2 ), and to interface the process interpreter with an integrated tool environment (DEC FUSE). This paper summarizes the architectural requirements derived from SPADE and provides a description of the SPADE-1 prototype. Abstract SPADE is a project carried out at CEFRIEL and Politecnico di Milano. It aims at de ning a process modeling language (called SLANG) and a Process-centered Software Engineering Environment (PSEE) based on this language. PSEEs support software activities through the execution of the model of the software process. Such a model integrates the description of human activities and of the interaction between humans and software development tools. Moreover, PSEEs must provide the means to manage and persistently store the artifacts developed within the process. SPADE-1 is an implementation of the SPADE concept. In particular, it includes a SLANG interpreter and facilities to store process artifacts in an object-oriented database (O 2 ), and to interface the process interpreter with an integrated tool environment (DEC FUSE). This paper summarizes the architectural requirements derived from SPADE and provides a description of the SPADE-1 prototype. 2
Lecture Notes in Computer Science, 1992
... Collect data on the evolution of the process during project lifetime. A software development ... more ... Collect data on the evolution of the process during project lifetime. A software development environment which is driven by a process description is said to be a process centered environment. ... As we said, the interpreter consists of a mixture of machines and humans. ...
Uploads
Papers by Alfonso Fuggetta