63 results on '"di Nitto, A."'
Search Results
2. SWForum.eu The Way Forward: Workshop on Future Challenges in Software Engineering
- Author
-
Alonso, Juncal, Favaro, John, Miller, Mark, Di Nitto, Elisabetta, Wallom, David, Ciavotta, MIchele, Di Nucci, Dario, Higgins, Martin, Giordanino, Marina, Lattari, Francesco, Lavazza, Luigi, Quintano Fernández, Nuria, and Abergas-Arteza, Julie
- Subjects
machine learning ,cybersecurity ,AI ,computing continuum ,future challenges ,sustainability ,artificial intelligence ,cyber-physical systems ,security-by-design ,quantum computing ,service level agreement (SLA) ,software engineering - Abstract
SWForum.eu Way Forward Workshop: Future Challenges in Software Engineering, held on 27 June 2023 at the Politecnico di Milano (POLIMI), in the Dipartamento di Elettronica, Informazione e Bioingegneria (DEIB), featured a dynamic agenda that encompassed a comprehensive range of topics and discussions. With a focus on emerging trends, technological advancements, and industry insights, the event provided a platform for attendees to gain a deeper understanding of the challenges and opportunities awaiting the software engineering community. Unlock the power of knowledge sharing! Embrace the opportunity to showcase your expertise and connect with peers on Online SW-Forum, an accessible and free platform. With our thriving community of nearly 3,000 SWForum members, your contributions will have a far-reaching impact. Let's amplify your voice by spreading this valuable information through your networks and channels. Together, we can create a ripple effect of knowledge and collaboration. Follow us on our pages: 🎓LinkedIn company/SWForumEU 💬Twitter: @SWforumEU ₪ Website: www.SWForum.eu
- Published
- 2023
- Full Text
- View/download PDF
3. Architectural Design of Cloud Applications: a Performance-aware Cost Minimization Approach
- Author
-
M. A. Almeida da Silva, Giovanni Paolo Gibilisco, E. Di Nitto, Danilo Ardagna, Michele Ciavotta, Marco Lattuada, Ciavotta, M, Gibilisco, G, Ardagna, D, Di Nitto, E, Lattuada, M, and Almeida da Silva, M
- Subjects
Computer Networks and Communications ,business.industry ,Computer science ,search-based software engineering ,Quality of service ,Architectural design ,Search-based software engineering ,cloud computing ,Cloud computing ,Model-driven software development ,Computer Science Applications ,Unified Modeling Language ,Hardware and Architecture ,cost minimization ,quality of service ,Minification ,performance assessment ,Software engineering ,business ,computer ,Software ,Information Systems ,computer.programming_language - Abstract
Cloud Computing has assumed a relevant role in the ICT, profoundly influencing the life-cycle of modern applications in the manner they are designed, developed, and deployed and operated. In this article, we tackle the problem of supporting the design-time analysis of Cloud applications to identify a cost-optimized strategy for allocating components onto Cloud Virtual Machine infrastructural services, taking performance requirements into account. We present an approach and a tool, SPACE4Cloud, that supports users in modeling the architecture of an application, in defining performance requirements as well as deployment constraints, and then in mapping each architecture component into a corresponding VM service, minimizing total costs. An optimization algorithm supports the mapping and determines the Cloud configuration that minimizes the execution costs of the application over a daily time horizon. The benefits of this approach are demonstrated in the context of an industrial case study. Furthermore, we show that SPACE4Cloud leads to a cost reduction up to 60 percent, when compared to a first-principle technique based on utilization thresholds, like the ones typically used in practice, and that our solution is able to solve large problem instances within a time frame compatible with a fast-paced design process (less than half an hour in the worst case). Finally, we show that SPACE4Cloud is suitable to model even microservice-based applications and to compute the corresponding optimized deployment configuration which is compared with a state-of-the art meta-heuristic alternative method, achieving savings between 21 and 85 percent.
- Published
- 2022
4. D3.7 – Fellowship programme, governance structure and business model for SWForum.eu - v2
- Author
-
Di Nitto, Elisabetta and Nedeltcheva, Galia
- Subjects
SWForum.eu ,software ,software engineering - Abstract
This deliverable is the second of a set of deliverables presenting the results from the work of task T3.3 - Definition and creation of aGovernance structure and business model. It provides an overview of the current status of the concrete steps conducted by theSWForum project to develop a long-lasting organization focusing on software engineering and acting as a collector and amplifier ofthe ideas and initiatives emerging from the European software engineering community. Moreover, it presents the plan for the futuresteps aiming at consolidating the community and finalizing its structure and governance mechanisms (including decisionmechanisms, conflict resolution, and membership types). This second release includes also the exploitation plans of SWForum.eu.
- Published
- 2022
- Full Text
- View/download PDF
5. A UML Profile for the Design, Quality Assessment and Deployment of Data-intensive Applications
- Author
-
José Merseguer, Michele Guerriero, Diego Perez-Palacin, José Ignacio Requeno, Damian A. Tamburri, Elisabetta Di Nitto, and Data Governance
- Subjects
Big Data ,Exploit ,Modeling language ,Computer science ,media_common.quotation_subject ,Big data ,Data-intensive applications ,Context (language use) ,02 engineering and technology ,Performance assessment ,Unified Modeling Language ,Apache Hadoop ,0202 electrical engineering, electronic engineering, information engineering ,Quality (business) ,Software design ,media_common ,computer.programming_language ,business.industry ,020207 software engineering ,TOSCA language ,UML ,Software deployment ,Modeling and Simulation ,ComputingMethodologies_DOCUMENTANDTEXTPROCESSING ,Model-driven deployment ,Profile ,business ,Software engineering ,computer ,Software - Abstract
Big Data or Data-Intensive applications (DIAs) seek to mine, manipulate, extract or otherwise exploit the potential intelligence hidden behind Big Data. However, several practitioner surveys remark that DIAs potential is still untapped because of very difficult and costly design, quality assessment and continuous refinement. To address the above shortcoming, we propose the use of a UML domain-specific modeling language or profile specifically tailored to support the design, assessment and continuous deployment of DIAs. This article illustrates our DIA-specific profile and outlines its usage in the context of DIA performance engineering and deployment. For DIA performance engineering, we rely on the Apache Hadoop technology, while for DIA deployment, we leverage the TOSCA language. We conclude that the proposed profile offers a powerful language for data-intensive software and systems modeling, quality evaluation and automated deployment of DIAs on private or public clouds.
- Published
- 2019
6. Special Issue on Process Technology
- Author
-
Di Nitto, Elisabetta, Fuggetta, Alfonso, Di Nitto, Elisabetta, editor, and Fuggetta, Alfonso, editor
- Published
- 1998
- Full Text
- View/download PDF
7. Streamgen
- Author
-
Alessandro Nesta, Elisabetta Di Nitto, and Michele Guerriero
- Subjects
Distributed database ,Data stream mining ,Process (engineering) ,Computer science ,business.industry ,Big data ,020207 software engineering ,02 engineering and technology ,UML ,Data modeling ,UML, big data, domain-specific modeling languages, model-driven development, streaming applications ,Unified Modeling Language ,big data ,domain-specific modeling languages ,0202 electrical engineering, electronic engineering, information engineering ,Programming paradigm ,020201 artificial intelligence & image processing ,Class diagram ,streaming applications ,Software engineering ,business ,computer ,model-driven development ,computer.programming_language - Abstract
Distributed streaming applications, i.e. applications that process massive and potentially infinite streams of data, are becoming increasingly popular in order to tame at the same time the velocity and the volume of Big Data. Designing and developing distributed streaming applications is currently difficult because it involves the employment of 1) complex programming paradigms to deal with the unboundedness of data streams together with 2) distributed streaming engines, each coming with its own APIs. To address the above shortcomings, in this tool demo paper we present StreamGen, a model-driven tool aiming at simplifying the development of distributed streaming applications. StreamGen provides (i) a UML profile to add streaming-specific concepts to standard UML Class Diagrams and (ii) a model-to-text transformation to automatically generate the application code starting from UML models.
- Published
- 2018
- Full Text
- View/download PDF
8. Infrastructure-as-Code for Data-Intensive Architectures: A Model-Driven Development Approach
- Author
-
Michele Guerriero, Diego Perez-Palacin, Tadej Borovsak, Matej Artac, Elisabetta Di Nitto, and Damian A. Tamburri
- Subjects
Big Data ,Exploit ,business.industry ,Computer science ,Big data ,Model-Driven Engineering ,020206 networking & telecommunications ,020207 software engineering ,Cloud computing ,02 engineering and technology ,computer.file_format ,Task (project management) ,Domain (software engineering) ,Unified Modeling Language ,0202 electrical engineering, electronic engineering, information engineering ,Executable ,DevOps ,Software engineering ,business ,Big Data, Model-Driven Engineering, Cloud, Infrastructure-as-Code, TOSCA ,Cloud ,Infrastructure-as-Code ,computer ,TOSCA ,computer.programming_language - Abstract
As part of the DevOps tactics, Infrastructure-as-Code (IaC) provides the ability to create, configure, and manage complex infrastructures by means of executable code. Writing IaC, however, is not an easy task, since it requires blending different infrastructure programming languages and abstractions, each specialized on a particular aspect of infrastructure creation, configuration, and management. Moreover, the more the architectures become large and complex (e.g. Data-Intensive or Microservice-based architectures), the more dire the need of IaC becomes. The goal of this paper is to exploit Model-Driven Engineering (MDE) to create language-agnostic models that are then automatically transformed into IaC. We focus on the domain of Data-Intensive Applications as these typically exploit complex infrastructures which demand sophisticated and fine-grained configuration and re-configuration — we show that, through our approach, called DICER, it is possible to create complex IaC with significant amounts of time savings, both in IaC design as well as deployment and re-deployment times.
- Published
- 2018
- Full Text
- View/download PDF
9. DevOps: Introducing Infrastructure-as-Code
- Author
-
Matej Artac, Tadej Borovssak, Elisabetta Di Nitto, Michele Guerriero, and Damian A. Tamburri
- Subjects
DevOps ,Infrastructure-as-Code ,TOSCA ,business.industry ,Computer science ,Big data ,020206 networking & telecommunications ,020207 software engineering ,Cloud computing ,02 engineering and technology ,Software deployment ,0202 electrical engineering, electronic engineering, information engineering ,Systems engineering ,Key (cryptography) ,Software design ,Orchestration (computing) ,Software engineering ,business - Abstract
DevOps entails a series of software engineering tactics aimed at shortening the actionable operation of software design changes. One of these tactics is to harness infrastructure-as-code, that is, writing a blueprint that contains deployment specifications ready for orchestration in the cloud. This abstract briefly discusses all necessary elements and abstractions in writing and maintaining that blueprint, revolving around a key standard for its expression, namely, the OASIS "Topology and Orchestration Specification for Cloud Applications" (TOSCA) industrial standard adopted by as many as 60+ big industrial players worldwide.
- Published
- 2017
- Full Text
- View/download PDF
10. Model-Driven Development and Operation of Multi-Cloud Applications
- Author
-
Peter Matthews, Dana Petcu, Arnor Solberg, and Elisabetta Di Nitto
- Subjects
Flexibility (engineering) ,Software portability ,Decision support system ,Computer science ,business.industry ,End user ,Software deployment ,Interoperability ,Software design ,Cloud computing ,business ,Software engineering - Abstract
This books is open access under a CC BY 4.0 license. This book summarizes work being undertaken within the collaborative MODAClouds research project, which aims to facilitate interoperability between heterogeneous Cloud platforms and remove the constraints of deployment, portability, and reversibility for end users of Cloud services. Experts involved in the project provide a clear overview of the MODAClouds approach and explain how it operates in a variety of applications. While the wide spectrum of available Clouds constitutes a vibrant technical environment, many early-stage issues pose specific challenges from a software engineering perspective. MODAClouds will provide methods, a decision support system, and an open source IDE and run-time environment for the high-level design, early prototyping, semiautomatic code generation, and automatic deployment of applications on multiple Clouds. It will free developers from the need to commit to a fixed Cloud technology stack during software design and offer benefits in terms of cost savings, portability of applications and data between Clouds, reversibility (moving applications and data from Cloud to non-Cloud environments), risk management, quality assurance, and flexibility in the development process.
- Published
- 2017
- Full Text
- View/download PDF
11. Hall of Fame Nomination Paper: Distributed Software Development Course
- Author
-
Mario Zagar, Raffaela Mirandola, Federico Ciccozzi, Igor Čavrak, Ivica Crnkovic, Ivana Bosnić, Elisabetta Di Nitto, Mead, N., and Washizaki, H.
- Subjects
Engineering ,business.industry ,020207 software engineering ,02 engineering and technology ,Course (navigation) ,Engineering management ,Software ,Work (electrical) ,020204 information systems ,Cultural diversity ,Distributed software development ,0202 electrical engineering, electronic engineering, information engineering ,ComputingMilieux_COMPUTERSANDEDUCATION ,Joint (building) ,Nomination ,global software engineering education, distributed software development, project-based courses, cultural differences ,business ,Software engineering ,Global environmental analysis - Abstract
Distributed Software Development course is a joint project-based course involving three universities, from Croatia, Sweden and Italy, running each year since 2003. Distributed student teams work on all phases of a complex software engineering project, solving several challenges of working in a global environment, thus obtaining a valuable experience for their future careers. The course is very well received by both the students and course partners from the industry.
- Published
- 2017
12. Towards a UML profile for data intensive applications
- Author
-
José Merseguer, Elisabetta Di Nitto, Abel Gómez, and Damian A. Tamburri
- Subjects
Modeling language ,Computer science ,media_common.quotation_subject ,Big data ,Applications of UML ,02 engineering and technology ,computer.software_genre ,Model-driven engineering (MDE) ,Software ,Data- intensive applications ,Unified Modeling Language ,0202 electrical engineering, electronic engineering, information engineering ,Quality (business) ,computer.programming_language ,media_common ,UML tool ,Unified modeling language (UML) ,business.industry ,UML profiles ,020207 software engineering ,Systems engineering ,020201 artificial intelligence & image processing ,business ,Software engineering ,Quality assurance ,computer - Abstract
Data intensive applications that leverage Big Data technologies are rapidly gaining market trend. However, their design and quality assurance are far from satisfying software engineers needs. In fact, a CapGemini research shows that only 13% of organizations have achieved full-scale production for their Big Data implementations. We aim at addressing an early design and a quality evaluation of data intensive applications, being our goal to help software engineers on assessing quality metrics, such as the response time of the application. We address this goal by means of a quality analysis tool-chain. At the core of the tool, we are developing a Profile that converts the Unified Modeling Language into a domain specific modeling language for quality evaluation of data intensive applications.
- Published
- 2016
- Full Text
- View/download PDF
13. Current and Future Challenges of Software Engineering for Services and Applications
- Author
-
Sotirios Koussouris, Giuliano Casale, Peter Deussen, Elisabetta Di Nitto, Vlassis Vlassiou, Panagiotis Gouvas, Andreas L. Symeonidis, Cristina Chesta, Anastasios Zafeiropoulos, Zhiming Zhao, Vlado Stankovski, and System and Network Engineering (IVI, FNWI)
- Subjects
Software Engineering Process Group ,Resource-oriented architecture ,Computer science ,Services ,Cloud computing ,02 engineering and technology ,Software walkthrough ,Software analytics ,Software ,0202 electrical engineering, electronic engineering, information engineering ,Software requirements ,Research Challenges ,General Environmental Science ,Social software engineering ,business.industry ,Software as a service ,Computer Science (all) ,Software development ,Software Development ,020207 software engineering ,Collaboration ,Software, Services, Research Challenges, Collaboration, Software Development ,Information and Communications Technology ,Software deployment ,General Earth and Planetary Sciences ,020201 artificial intelligence & image processing ,business ,Software engineering - Abstract
ICT and, in particular, software is more and more pervasive. Current investments in R&D in this area are limited in Europe, compared to other partner countries. Moreover, software should not be considered a minor element of a complex systems. In domains like cloud, big data, IoT, cyber-physical systems it is the core element. We need to consolidate the software engineering discipline, which, despite the impressive achievements in the area of software technology, is probably one of the youngest scientific and technological disciplines with about 60 years of history. This will increase also our ability to deal with a large number of challenges in other disciplines, from the achievement of a complete digitalization of public administrations and businesses to the actual development of smart cities, to the development of reliable software for science, to the discovery of new fields that we cannot imagine today. In this context, this paper summarizes the current challenges that the Software Engineering for Services and Applications (SE4SA) cluster is tackling alongside with a number of medium-term issues to be addressed in the next years by research in this field.
- Published
- 2016
- Full Text
- View/download PDF
14. A software architecture framework for quality-aware DevOps
- Author
-
Di Nitto, Elisabetta, Jamshidi, Pooyan, Guerriero, Michele, Spais, Ilias, and Tamburri, Damian A.
- Subjects
Enterprise architecture framework ,Architecture frameworks ,Engineering ,Resource-oriented architecture ,business.industry ,Software development ,QoS ,02 engineering and technology ,Release management ,020204 information systems ,Model-driven design ,0202 electrical engineering, electronic engineering, information engineering ,QoD ,Reference architecture ,DevOps ,business ,Software engineering ,Software architecture ,Software architecture description - Abstract
DevOps is an emerging software engineering strategy entailing the joined efforts of development and operations people, their concerns and best practices with the purpose of realising a coherent working group for increased software development and operations speed. To allow software architecture practitioners to enrich and properly elaborate their architecture specifications in a manner which is consistent with DevOps, we surveyed a number of DevOps stakeholders. We studied concerns and challenges to be tackled with respect to preparing a software architecture which is DevOps-ready, i.e., described in all details needed to enact DevOps scenarios. Subsequently, we introduce SQUID, that stands for Specification Quality In DevOps. SQUID is a software architecture framework that supports the model-based documentation of software architectures and their quality properties in DevOps scenarios with the goal of providing DevOps-ready software architecture descriptions. We illustrate our framework in a case-study in the Big Data domain.
- Published
- 2016
- Full Text
- View/download PDF
15. When software architecture leads to social debt
- Author
-
Elisabetta Di Nitto and Damian A. Tamburri
- Subjects
Social software engineering ,Engineering ,business.industry ,media_common.quotation_subject ,Software development ,Software ,State (polity) ,Technical debt ,Debt ,Economic system ,business ,Software engineering ,Software architecture ,media_common - Abstract
Social and technical debt both represent the state of software development organizations as a result of accumulated decisions. In the case of social debt, decisions (and connected debt) weigh on people and their socio-technical interactions/characteristics. Digging deeper into social debt with an industrial case-study, we found that software architecture, the prince of development artefacts, plays a major role in causing social debt. This paper discusses a key circumstance wherefore social debt is connected to software architectures and what can be done and measured in response, as observed in our case-study. Also, we introduce DAHLIA, that is "Debt-Aimed Architecture-Level Incommunicability Analysis" - a framework to elicit some of the causes behind social debt for further analysis.
- Published
- 2015
16. A frame of reference for SOA migration
- Author
-
Razavian, M., Lago, P., Di Nitto, E., Yahyapour, R., Software and Sustainability (S2), Network Institute, Software & Services, Information Systems IE&IS, Elisabetta Di Nitto, null, and Ramin Yahyapour, null
- Subjects
Reverse engineering ,Service (systems architecture) ,Process management ,OASIS SOA Reference Model ,Computer science ,Business process ,business.industry ,Legacy system ,SDG 10 - Reduced Inequalities ,computer.software_genre ,Frame of reference ,Order (exchange) ,Key (cryptography) ,Software engineering ,business ,computer - Abstract
Migration of legacy systems to service-based systems constitutes a key challenge of service-oriented system engineering, namely rehabilitation of pre-existing enterprise assets while conforming to service engineering principles. Over a decade there has been an increasing interest in the approaches addressing SOA migration. These approaches mainly differ in 'what is migrated' and 'how the migration is performed'. Such differences aggravate achieving a general understanding of 'what SOA migration entails'. To solve this problem, we conducted a systematic review that extracts main migration categories, called SOA migration families, from the approaches proposed in the research community. Based on the results of the systematic review, we describe eight distinct families along with their characteristics and goals. These families represent a first frame of reference for SOA migration which brings order and enhances understanding on how migration can be carried out. © 2010 Springer-Verlag.
- Published
- 2010
- Full Text
- View/download PDF
17. Towards Multi-Clouds engineering
- Author
-
Giuliano Casale, Danilo Ardagna, Amor Solberg, Dana Petcu, and Elisabetta Di Nitto
- Subjects
Database ,Computer science ,Service delivery framework ,business.industry ,Data as a service ,computer.software_genre ,Software engineering ,business ,computer - Published
- 2014
- Full Text
- View/download PDF
18. An experiment on teaching coordination in a globally distributed software engineering class
- Author
-
Martin Nordio, Rafael Prikladnicki, Nazareno Aguirre, Elisabetta Di Nitto, H.-Christian Estler, Bertrand Meyer, and Anthony Savidis
- Subjects
Software development process ,Social software engineering ,Engineering ,business.industry ,Team software process ,Personal software process ,Software development ,Project management ,Software engineering ,business ,Project management 2.0 ,Software project management - Abstract
The importance of planning and management skills in software development is very difficult to convey in software engineering courses. We present the synopsis of an assignment whose purpose is to demonstrate the significance of such skills, including effective communication, team coordination and collaboration, and overall project planning. The assignment is organized in the context of a distributed software engineering course carried out in collaboration with 12 universities in South America, Europe and Africa. The assignment is a globally distributed contest issued before most development activities related to the course's software project are performed, aiming at favoring the collaboration between students prior to project development. The contest does not involve any programming, and is not related to the project development activities. Instead, it consists of making teams in different countries compete in collaboratively solving a set of very simple tasks. The complexity of the activity is in team collaboration and coordination, and their lack is evident when the tasks are not correctly solved, or not solved in time. Despite the simplicity of the as-signment, students have found it useful in helping them understand the significance of management and planning challenges in distributed software development. Moreover, the assignment helped in team building, by creating a better team atmosphere and contributing in identifying team members better suited for management.
- Published
- 2014
19. Report on the International Workshop on Service Oriented Software Engineering (IW-SOSE06)
- Author
-
Robert J. Hall, Elisabetta Di Nitto, Andrea Polini, Jun Han, Yanbo Han, Andrea Zisman, and Kurt Sandkuhl
- Subjects
Software Engineering Process Group ,Social software engineering ,Computer science ,business.industry ,Software development ,General Medicine ,Engineering management ,Service-oriented software engineering ,Software construction ,Personal software process ,Software requirements ,Software engineering ,business - Abstract
This paper presents a report of the International Workshop on Service Oriented Software Engineering colocated with ICSE2006. In particular, we shortly present the papers that have been accepted for publication in the workshop proceedings, the keynote speech, and the discussion topics that have emerged during the workshop.
- Published
- 2006
- Full Text
- View/download PDF
20. Dynamic networked organizations for software engineering
- Author
-
Hans van Vliet, Elisabetta Di Nitto, Damian A. Tamburri, Patricia Lago, Remco C. de Boer, Software and Sustainability (S2), Network Institute, Software & Services, and Software Engineering
- Subjects
Software development process ,Engineering ,Software Engineering Process Group ,Social software engineering ,Requirements engineering ,business.industry ,Personal software process ,Software development ,Software requirements ,business ,Software engineering - Abstract
Current practice in software engineering suggests a radical change in perspective: where once stood fixed teams of people following a development plan, now stand just-in-time Dynamic Networked Organizations (DyNOs), adopting a common flexible strategy for development, rather than a plan. This shift in perspective has gone relatively unnoticed by current software engineering research. This paper offers a glimpse at what processes and instruments lie beyond “current” software engineering research, where studying emergent DyNOs, their creation and steering becomes critical. To understand the underpinnings of this evolution, we explored a simple yet vivid scenario from real-life industrial practice. Using scenario analysis we elicited a number of social and organizational requirements in working with DyNOs. Also, comparing our evidence with literature, we made some key observations. First, managing DyNOs makes organizational requirements a first-class entity for development success. Second, research in software engineering should be invested in understanding and governing the DyNOs behind the software lifecycle.
- Published
- 2013
- Full Text
- View/download PDF
21. A framework for formalizing inconsistencies and deviations in human-centered systems
- Author
-
Alfonso Fuggetta, Carlo Ghezzi, Gianpaolo Cugola, and Elisabetta Di Nitto
- Subjects
Flexibility (engineering) ,business.industry ,Process (engineering) ,Business process ,Computer science ,media_common.quotation_subject ,Business process modeling ,Business process management ,Quality (business) ,Software engineering ,business ,Engineering design process ,Software ,Workflow management system ,media_common - Abstract
Most modern business activities are carried out by a combination of computerized tools and human agents. Typical examples are engineering design activities, office procedures, and banking systems. All these human-centered systems are characterized by the interaction among people, and between people and computerized tools. This interaction defines a process, whose effectiveness is essential to ensure the quality of the delivered products and/or services. To support these systems, process-centered environments and workflow management systems have been recently developed. They can be collectively identified with the term process technology . This technology is based on the explicit definition of the process to be followed (the process model ). The model specifies the kind of support that has to be provided to human agents. An essential property that process technology mut exhibit is the ability of tolerating, controlling, and supporting deviations and inconsistencies of the real-world behaviors with respect to the proocess model. This is necessary to provide consistent and effective support to the human-centered system, still maintaining a high degree of flexibility and adaptability to the evolving needs, preferences, an expertise of the the human agents. This article presents a formal framework to characterize the interaction between a human-centered system and its automated support. It does not aim at introducing a new language or system to describe processes. Rather, it aims at identifying the basic properties and features that make it possible to formally define the concepts of inconsistency and deviation. This formal framework can then be used to compare existing solutions and guide future research work.
- Published
- 1996
- Full Text
- View/download PDF
22. Supporting cooperation in the SPADE-1 environment
- Author
-
E. Di Nitto, Alfonso Fuggetta, and Sergio Bandinelli
- Subjects
Software Engineering Process Group ,Collaborative software ,business.industry ,Computer science ,Software development ,Application software ,computer.software_genre ,Software development process ,Personal software process ,Software construction ,Computer-supported cooperative work ,Goal-Driven Software Development Process ,Package development process ,Software verification and validation ,INF ,business ,Software engineering ,Computer-aided software engineering ,computer ,Software ,Software design description - Abstract
Software development is a cooperative activity that relies heavily on the quality and effectiveness of the communication channels established within the development team and with the end-user. Process-centered software engineering environments (PSEEs) support the definition and the execution of various phases of the software process. This is achieved by explicitly defining cooperation procedures, and by supporting synchronization and data sharing among its users. PSEE and CSCW technologies have been developed rather independently from each other, leading to a large amount of research results, tools and environments, and practical experiences. We have reached a stage in technology development where it is necessary to assess and evaluate the effectiveness of the research efforts carried out so far. Moreover, it is important to understand how to integrate and exploit the results of these different efforts. The goal of the paper is to understand which kind of basic functionalities PSEEs can and should offer, and how these environments can be integrated with other tools to effectively support cooperation in software development. In particular, the paper introduces a process model we have built to support a cooperative activity related to anomaly management in an industrial software factory. The core of the paper presents and discusses the experiences and results that we have derived from this modeling activity, and how they related to the general problem of supporting cooperation in software development. The project was carried out using the SPADE (Software Process Analysis, Design and Enactment) PSEE and the ImagineDesk CSCW toolkit.
- Published
- 1996
- Full Text
- View/download PDF
23. Teaching software engineering using globally distributed projects
- Author
-
Julian Tschannen, Carlo Ghezzi, Bertrand Meyer, Vidya Kulkarni, Nazareno Aguirre, Giordano Tamburrelli, Martin Nordio, and Elisabetta Di Nitto
- Subjects
Engineering ,Social software engineering ,Software Engineering Process Group ,business.industry ,Team software process ,Course (navigation) ,Software development process ,Engineering management ,Personal software process ,ComputingMilieux_COMPUTERSANDEDUCATION ,INF ,business ,Software engineering ,Software project management - Abstract
Distributed software development poses new software engineering challenges. To prepare student for these new challenges, we have been teaching software engineering using globally distributed projects. The projects were developed in collaboration with eleven universities in ten different countries in Europe, Asia, and South America. This paper reports the experience teaching the course, describing the settings, problems faced organizing the projects and the lessons learned.
- Published
- 2011
- Full Text
- View/download PDF
24. How do distribution and time zones affect software development? A case study on communication
- Author
-
Bertrand Meyer, Julian Tschannen, Carlo Ghezzi, Elisabetta Di Nitto, Martin Nordio, and H.-Christian Estler
- Subjects
Distributed software development ,Engineering ,business.industry ,Team software process ,Communication ,Time zone ,Software development ,Distribution (economics) ,Empirical study ,Transport engineering ,Software ,Empirical research ,Project management ,business ,Software engineering ,Software project management ,Time zones - Abstract
Software projects have crossed seas and continents looking for talented developers, moving from local developments to geographically distributed projects. This paper presents a case study analyzing the effect of distribution and time zones on communication in distributed projects. The study was performed in a university course during two semesters, where students developed projects jointly with teams located in ten different countries in South America, Europe, and Asia. The study compares the results of the projects distributed in two locations with projects distributed in three locations. It also analyzes projects in different time zone ranges. The initial results show that the amount of communication in projects distributed in two locations is bigger than the communication in projects distributed in three locations. We also found that projects in closer time zones have more communication than projects in farther time zones. Furthermore, we analyze the reply time for e-mails of projects distributed in different time zones, and discuss the challenges faced by the students during these projects.
- Published
- 2011
25. On Exploiting Decentralized Bio-inspired Self-organization Algorithms to Develop Real Systems
- Author
-
Raffaela Mirandola, Elisabetta Di Nitto, and Daniel J. Dubois
- Subjects
Self-organization ,Ubiquitous computing ,business.industry ,Computer science ,Distributed computing ,Autonomic computing ,Systems analysis ,Middleware ,Synchronization (computer science) ,Systems design ,Software architecture ,Software engineering ,business ,Algorithm - Abstract
The current research trends in Software Engineering are focusing on the development of new techniques to deal intelligently and efficiently with the design of systems that are able to evolve overtime and adapt to rapid changes of their requirements. In particular, the field of Autonomic Computing has been created to study these types of systems with the ultimate aim to create systems that are able to self-configure, self-optimize, self-heal and self-protect without any external intervention. What we study in this paper is a set of the most relevant bio-inspired principles that may be applied to these systems. We discuss how to apply them to develop or adapt self-organization algorithms to real evolvable systems and we present two examples of applications that we have developed.
- Published
- 2009
26. Multi-dimensional service compositions
- Author
-
Sam Guinea, E. Di Nitto, Schahram Dustdar, and Luciano Baresi
- Subjects
Service (systems architecture) ,Computer science ,business.industry ,Software as a service ,Software development ,Reuse ,Differentiated service ,Web of Things ,Software ,Component-based software engineering ,Service-oriented programming ,The Internet ,User interface ,business ,Software engineering - Abstract
The wide diffusion of reliable Internet is pushing two key novelties in the conception of modern software applications: the Software as a Service paradigm and the idea of the Internet of Things. Traditionally, services and things have been considered as separate entities, even addressing different needs and application domains. In contrast, we feel that services and things should be integrated and demand for proper design and programming paradigms that ease the task of system builders and enable reuse of components through various systems. Furthermore, we also see the need to take into account the many cross-cutting issues that are typical of any complex application (e.g., security, user interface, transactionality). We suggest multidimensional service assembly as the right abstraction for taking into account all these different aspects. In this paper we sketch our ideas, discuss the implications of multi-dimensional service assembly, and draft a research agenda that goes towards the development of a well established theory in this area.
- Published
- 2009
- Full Text
- View/download PDF
27. Principles of engineering service oriented systems
- Author
-
Elisabetta Di Nitto and Schahram Dustdar
- Subjects
Social software engineering ,Engineering ,Software Engineering Process Group ,business.industry ,Systems development life cycle ,Component-based software engineering ,Software construction ,Software development ,Software requirements ,Software system ,INF ,business ,Software engineering - Abstract
The objective of this workshop is to discuss about the importance of software engineering methods and techniques for service-oriented systems and, vice versa, about the impact that such kinds of open and natually adaptable systems can have on traditional software engineering. We think that discussing about these aspects within the ICSE community could be very beneficial for the progress of the field.
- Published
- 2009
- Full Text
- View/download PDF
28. The Role of Contracts in Distributed Development
- Author
-
Elisabetta Di Nitto, Carlo Ghezzi, Roman Mitin, Bertrand Meyer, Giordano Tamburrelli, and Martin Nordio
- Subjects
Social software engineering ,Engineering ,Resource-oriented architecture ,Team software process ,business.industry ,Software development ,Software development process ,Risk analysis (engineering) ,Personal software process ,Software construction ,INF ,Software engineering ,business ,Software project management - Abstract
Distributed software development raises new software engineering challenges resulting from the difficulty of making several teams cooperate across different countries, time zones and cultures. These obstacles can lead to critical delays or even failures. One of the most effective techniques for overcoming them is to improve the quality of software specifications. Our experience with a distributed software project in an educational environment suggests that Design by Contract techniques provide a promising solution.
- Published
- 2009
- Full Text
- View/download PDF
29. An approach to adapt service requests to actual service interfaces
- Author
-
Luca Cavallaro and Elisabetta Di Nitto
- Subjects
Service (business) ,business.industry ,Computer science ,Service catalog ,Service design ,Distributed computing ,Service level objective ,Service level requirement ,Data as a service ,Differentiated service ,business ,Software engineering ,Best-effort delivery - Abstract
Research about service oriented architectures produced, in the last years, some frameworks that enable the development of self-adaptive service compositions supporting dynamic binding. A developer can specify, at design time, an abstract service. At run time a concrete implementation of the abstract service is dynamically selected. In this scenario service selection is usually performed assuming that all the implementations of an abstract service have the same interface or protocol. This assumption is not necessarily true in an open world setting, where services built by different organizations are made available. In this paper we address the problem of invoking services having an interface or protocol different from those originally expected by the service requester. We have identified a number of possible mismatches between services and some basic mapping functions that can be used to solve simple mismatches. Such mapping functions can be combined in a script to solve complex mismatches. Scripts can be executed by a mediator that receives an operation request, parses it, and eventually performs the needed adaptations. The definition of the scripts can be partially automated.
- Published
- 2008
30. International workshop on service oriented software engineering (IW-SOSE'06)
- Author
-
Jun Han, Yanbo Han, Robert J. Hall, Elisabetta Di Nitto, Andrea Zisman, Andrea Polini, and Kurt Sandkuhl
- Subjects
Software Engineering Process Group ,Social software engineering ,Engineering ,Service (systems architecture) ,business.industry ,Service-oriented software engineering ,Software as a service ,Software construction ,Personal software process ,Software development ,Software engineering ,business - Abstract
Software engineering practitioners and researchers continue to face huge challenges in the development, maintenance, and use of software systems. This has been even more prominent with the new paradigm of service oriented computing in which service integrators, developers, and providers need to create methods, tools, and techniques to support costeffective development and use of dependable services and service oriented applications. From a technological point of view, recent years have seen the emergence of important standards enabling the Service Oriented vision; however, the engineering of complex and dependable service oriented software still lacks powerful, effective methods and tools. The International Workshop on Service Oriented Software Engineering (IW-SOSE’06) is intended to provide a
- Published
- 2006
- Full Text
- View/download PDF
31. WS Binder: a framework to enable dynamic binding of composite web services
- Author
-
Raffaele Esposito, Roberto Codato, Elisabetta Di Nitto, Maria Luisa Villani, Massimiliano Di Penta, and Massimiliano Colombo
- Subjects
Service (systems architecture) ,business.industry ,Computer science ,Composite web services ,Distributed object ,Service composition ,Domain (software engineering) ,Data mapping ,World Wide Web ,Architecture ,Software engineering ,business ,INF ,Tourism - Abstract
The rapid diffusion of service-oriented systems is becoming a reality in today's software engineering. In particular, an aspect that is gathering the interest of researchers and practitioners is the possibility to create compositions of dynamically bound services. This paper describes WS Binder, a framework for enabling dynamic binding of service compositions according to some functional and non-functional preferences and/or constraints. The framework is also able to support run-time recovery actions, by performing service re-binding. The paper describes the framework's architecture and highlights its features by describing an example of its usage for the binding and re-binding of a service composition related to the tourism domain.
- Published
- 2006
32. Exploiting ADLs to specify architectural styles induced by middleware infrastructures
- Author
-
David S. Rosenblum and E. Di Nitto
- Subjects
Architecture description language ,High-level programming language ,business.industry ,Computer science ,Middleware ,Formal specification ,Software development ,Software system ,Permission ,Architecture ,Software engineering ,business ,Software architecture - Abstract
Architecture definition languages (ADLs) enable the formalization of the architecture of software systems and the execution of preliminary analyses on them. These analyses aim at supporting the identification and solution of design problems in the early stages of software development. We have used ADLs to describe middleware-induced architectural styles. These styles describe the assumptions and constraints that middleware infrastructures impose on the architecture of systems. Our work originates from the belief that the explicit representation of these styles at the architectural level can guide designers in the definition of an architecture compliant with a pre-selected middleware infrastructure, or, conversely can support designers in the identification of the most suitable middleware infrastructure for a specific architecture. In this paper we provide an evaluation of ADLs as to their suitability for defining middleware-induced architectural styles. We identify new requirements for ADLs, and we highlight the importance of existing capabilities. Although our experimentation starts from an attempt to solve a specific problem, the results we have obtained provide general lessons about ADLs, learned from defining the architecture of existing, complex, distributed, running systems.
- Published
- 1999
- Full Text
- View/download PDF
33. Cooperation Control in PSEE
- Author
-
Jacky Estublier, Hala Skaf, Patricia Lago, Noureddine Belkhatir, Jens H. Jahnke, Claude Godart, Wilhelm Schäfer, Antonio Carzaniga, Elisabetta Di Nitto, Environment for cooperation (ECOO), INRIA Lorraine, Institut National de Recherche en Informatique et en Automatique (Inria)-Institut National de Recherche en Informatique et en Automatique (Inria)-Laboratoire Lorrain de Recherche en Informatique et ses Applications (LORIA), Centre National de la Recherche Scientifique (CNRS)-Institut National Polytechnique de Lorraine (INPL)-Université Nancy 2-Université Henri Poincaré - Nancy 1 (UHP)-Institut National de Recherche en Informatique et en Automatique (Inria)-Centre National de la Recherche Scientifique (CNRS)-Institut National Polytechnique de Lorraine (INPL)-Université Nancy 2-Université Henri Poincaré - Nancy 1 (UHP), J.C Derniame, B.A. Kaba, D. Wastell, and Institut National de Recherche en Informatique et en Automatique (Inria)-Université Henri Poincaré - Nancy 1 (UHP)-Université Nancy 2-Institut National Polytechnique de Lorraine (INPL)-Centre National de la Recherche Scientifique (CNRS)-Université Henri Poincaré - Nancy 1 (UHP)-Université Nancy 2-Institut National Polytechnique de Lorraine (INPL)-Centre National de la Recherche Scientifique (CNRS)
- Subjects
software process ,Computer science ,business.industry ,Control (management) ,[INFO.INFO-OH]Computer Science [cs]/Other [cs.OH] ,Transaction model ,cooperation ,ComputerApplications_COMPUTERSINOTHERSYSTEMS ,02 engineering and technology ,Variety (cybernetics) ,Software development process ,Software ,020204 information systems ,0202 electrical engineering, electronic engineering, information engineering ,Software engineering ,business - Abstract
This chapter has illustrated the complexity of cooperation control in software processes and the variety of approaches which can be followed to solve the related problems.
- Published
- 1999
34. Issues in supporting event-based architectural styles
- Author
-
David S. Rosenblum, Antonio Carzaniga, Elisabetta Di Nitto, and Alexander L. Wolf
- Subjects
Enterprise architecture framework ,Engineering ,Architectural pattern ,business.industry ,Systems architecture ,Reference architecture ,View model ,business ,Software engineering ,Software architecture ,Service-oriented modeling ,Software architecture description - Abstract
To address this issue, researchers in the field of software architecture are defining a number of languages and tools that support the definition and validation of the architecture of systems. Also, a number of architectural styles are being formalized. Each of them defines “a set of design rules that identify the kinds of components and connectors that may be used to compose a system or a subsystem, together with local or global constraints on the way the composition is done” [5]. The formalization of styles helps the understanding and categorization of existing architectures and supports developers in the definition of the structure of new systems.
- Published
- 1998
- Full Text
- View/download PDF
35. Current and Future Challenges of Software Engineering for Services and Applications.
- Author
-
Casale, Giuliano, Chesta, Cristina, Deussen, Peter, Di Nitto, Elisabetta, Gouvas, Panagiotis, Koussouris, Sotiris, Stankovski, Vlado, Symeonidis, Andreas, Vlassiou, Vlassis, Zafeiropoulos, Anastasios, and Zhao, Zhiming
- Subjects
SOFTWARE engineering ,INFORMATION & communication technologies ,COMPUTER software ,BIG data ,INTERNET of things ,CYBER physical systems - Abstract
ICT (Information and Communication Technology) and, in particular, software is more and more pervasive and it cannot be considered anymore as a minor element of a complex systems. In domains like cloud, big data, IoT (Internet of Things), CPS (Cyber-Physical Systems) it is the core element. We need to consolidate the software engineering discipline, which, despite the impressive achievements in the area of software technology, is probably one of the youngest scientific and technological disciplines with about 60 years of history. This paper summarizes the challenges that the Software Engineering for Services and Applications (SE4SA) cluster is considering as relevant. [ABSTRACT FROM AUTHOR]
- Published
- 2016
- Full Text
- View/download PDF
36. How to deal with deviations during process model enactment
- Author
-
Gianpaolo Cugola, Carlo Ghezzi, E. Di Nitto, and M. Mantione
- Subjects
Software ,business.industry ,Computer science ,Goal-Driven Software Development Process ,Empirical process (process control model) ,Process description ,Temporal logic ,Artificial intelligence ,business ,Software engineering ,Software design description - Abstract
A fundamental problem in software processes is how the intrinsic rigidity of a predefined (formal) model can be reconciled with the need for flexibility, change, and evolution. We therefore distinguish between software processes, as specified in a process description, and their actual performance by humans. Further, we claim that the two inevitably diverge, and thus it is necessary to provide means to reconcile them. We present a preliminary exploration into the problem. In particular, we illustrate how a temporal logic-based approach can be used to capture and tolerate some deviations from the process description during execution. We present a simple process language (LATIN), and its prototype environment (SENTINEL), in which these ideas are currently experimented.
- Published
- 1995
- Full Text
- View/download PDF
37. Policies and mechanisms to support process evolution in PSEEs
- Author
-
Alfonso Fuggetta, E. Di Nitto, and Sergio Bandinelli
- Subjects
Software development process ,Engineering ,Process modeling ,business.industry ,Process (engineering) ,Systems engineering ,Process design ,Software maintenance ,Software prototyping ,Project management ,Representation (mathematics) ,business ,Software engineering - Abstract
This paper discusses the characteristics that should be offered by PSEEs (process-centered software engineering environments) to support the evolution of the software process. A PSEE is a software engineering environment based on the explicit representation of the software process (the process model). Processes and process models are dynamic entities that need to evolve. Existing PSEEs offer limited capabilities to support process evolution. To address this issue, it is necessary to extend PSEEs with features that enable the process manager to effectively and consistently change the process. The design of these functionalities must be guided by a clear characterization of the evolution problem. In particular, it is necessary to understand what kinds of services a PSEE should offer as built-in mechanisms, and what kinds of functionalities have to be implemented by the process modeler as process-specific policies. >
- Published
- 1994
38. Teaching software engineering using globally distributed projects.
- Author
-
Nordio, Martin, Ghezzi, Carlo, Meyer, Bertrand, Di Nitto, Elisabetta, Tamburrelli, Giordano, Tschannen, Julian, Aguirre, Nazareno, and Kulkarni, Vidya
- Subjects
SOFTWARE engineering ,TEACHING ,COMPUTER software development ,CONTINUING engineering education ,UNIVERSITIES & colleges - Abstract
Distributed software development poses new software engineering challenges. To prepare student for these new challenges, we have been teaching software engineering using globally distributed projects. The projects were developed in collaboration with eleven universities in ten different countries in Europe, Asia, and South America. This paper reports the experience teaching the course, describing the settings, problems faced organizing the projects and the lessons learned. [ABSTRACT FROM AUTHOR]
- Published
- 2011
- Full Text
- View/download PDF
39. An Approach to Adapt Service Requests to Actual Service Interfaces.
- Author
-
Cavallaro, Luca and Di Nitto, Elisabetta
- Subjects
USER interfaces ,COMPUTER network protocols ,COMPUTER systems ,SOFTWARE engineering ,INFORMATION technology - Abstract
Research about service oriented architectures produced, in the last years, some frameworks that enable the development of self-adaptive service compositions supporting dynamic binding. A developer can specify, at design time, an abstract service. At run time a concrete implementation of the abstract service is dynamically selected. In this scenario service selection is usually performed assuming that all the implementations of an abstract service have the same interface or protocol. This assumption is not necessarily true in an open world setting, where services built by different organizations are made available. In this paper we address the problem of invoking services having an interface or protocol different from those originally expected by the service requester. We have identified a number of possible mismatches between services and some basic mapping functions that can be used to solve simple mismatches. Such mapping functions can be combined in a script to solve complex mismatches. Scripts can be executed by a mediator that receives an operation request, parses it, and eventually performs the needed adaptations. The definition of the scripts can be partially automated. [ABSTRACT FROM AUTHOR]
- Published
- 2008
40. Monitoring WS-Agreements: An Event Calculus-Based Approach.
- Author
-
Baresi, Luciano, Di Nitto, Elisabetta, Mahbub, Khaled, and Spanoudakis, George
- Abstract
In this chapter, we present a framework that we have developed to support the monitoring of service level agreements (SLAs). The agreements that can be monitored by this framework are expressed in an extension of WS-Agreement that we propose. The main characteristic of the proposed extension is that it uses an event calculus-based language, called EC-Assertion, for the specification of the service guarantee terms in a service level agreement that need to be monitored at runtime. The use of EC-Assertion for specifying service guarantee terms provides a well-defined semantics to the specification of such terms and a formal reasoning framework for assessing their satisfiability. The chapter describes also an implementation of the framework and the results of a set of experiments that we have conducted to evaluate it. [ABSTRACT FROM AUTHOR]
- Published
- 2007
- Full Text
- View/download PDF
41. Reliability Modeling and Analysis of Service-Oriented Architectures.
- Author
-
Baresi, Luciano, Di Nitto, Elisabetta, Cortellessa, Vittorio, and Grassi, Vincenzo
- Abstract
Copyright of Test & Analysis of Web Services is the property of Springer eBooks and its content may not be copied or emailed to multiple sites or posted to a listserv without the copyright holder's express written permission. However, users may print, download, or email articles for individual use. This abstract may be abridged. No warranty is given about the accuracy of the copy. Users should refer to the original published version of the material for the full abstract. (Copyright applies to all Abstracts.)
- Published
- 2007
- Full Text
- View/download PDF
42. ws-Attestation: Enabling Trusted Computing on Web Services.
- Author
-
Baresi, Luciano, Di Nitto, Elisabetta, Yoshihama, Sachiko, Ebringer, Tim, Nakamura, Megumi, Munetoh, Seiji, Mishina, Takuya, and Maruyama, Hiroshi
- Abstract
Copyright of Test & Analysis of Web Services is the property of Springer eBooks and its content may not be copied or emailed to multiple sites or posted to a listserv without the copyright holder's express written permission. However, users may print, download, or email articles for individual use. This abstract may be abridged. No warranty is given about the accuracy of the copy. Users should refer to the original published version of the material for the full abstract. (Copyright applies to all Abstracts.)
- Published
- 2007
- Full Text
- View/download PDF
43. Challenges of Testing Web Services and Security in SOA Implementations.
- Author
-
Baresi, Luciano, Di Nitto, Elisabetta, Barbir, Abbie, Hobbs, Chris, Bertino, Elisa, Hirsch, Frederick, and Martino, Lorenzo
- Abstract
The World Wide Web is evolving into a medium providing a wide array of e-commerce, business-to-business, business-to-consumer, and other information-based services. In Service Oriented Architecture (SOA) technology, Web Services are emerging as the enabling technology that bridges decoupled systems across various platforms, programming languages, and applications. The benefits of Web Services and SOA come at the expense of introducing new level of complexity to the environments where these services are deployed. This complexity is compounded by the freedom to compose Web Services to address requirements such as quality of service (QoS), availability, security, reliability, and cost. The complexity of composing services compounds the task of securing, testing, and managing the quality of the deployed services. This chapter identifies the main security requirements for Web Services and describes how such security requirements are addressed by standards for Web Services security recently developed or under development by various standardizations bodies. Standards are reviewed according to a conceptual framework that groups them by the main functionalities they provide. Testing composite services in SOA environment is a discipline at an early stage of study. The chapter provides a brief overview of testing challenges that face early implementers of composite services in SOA taking into consideration Web Services security. The importance of Web Services Management systems in Web Services deployment is discussed. A step toward a fault model for Web Services is provided. The chapter investigates the use of crash-only software development techniques for enhancing the availability of Web Services. The chapter discusses security mechanisms from the point of view of interoperability of deployed services. The work discusses the concepts and strategies as developed by the WS-I Basic Security profile for enhancing the interoperability of secure Web Services. [ABSTRACT FROM AUTHOR]
- Published
- 2007
- Full Text
- View/download PDF
44. Vulnerability Analysis of Web-based Applications.
- Author
-
Baresi, Luciano, Di Nitto, Elisabetta, Cova, Marco, Felmetsger, Viktoria, and Vigna, Giovanni
- Abstract
In the last few years, the popularity of web-based applications has grown tremendously. A number of factors have led an increasing number of organizations and individuals to rely on web-based applications to provide access to a variety of services. Today, web-based applications are routinely used in security-critical environments, such as medical, financial, and military systems. Web-based systems are a composition of infrastructure components, such as web servers and databases, and of application-specific code, such as HTML-embedded scripts and server-side CGI programs. While the infrastructure components are usually developed by experienced programmers with solid security skills, the application-specific code is often developed under strict time constraints by programmers with little security training. As a result, vulnerable web-based applications are deployed and made available to the whole Internet, creating easily exploitable entry points for the compromise of entire networks. To ameliorate these security problems, it is necessary to develop tools and techniques to improve the security of web-based applications. The most effective approach would be to provide secure mechanisms that can be used by well-trained developers. Unfortunately, this is not always possible, and a second line of defense is represented by auditing the application code for possible security problems. This activity, often referred to as web vulnerability analysis, allows one to identify security problems in web-based applications at early stages of development and deployment. Recently, a number of methodologies and tools have been proposed to support the assessment of the security of web-based applications. In this chapter, we survey the current approaches to web vulnerability analysis and we propose a classification along two characterizing axes: detection model and analysis technique. We also present the most common attacks against web-based applications and discuss the effectiveness of certain analysis techniques in identifying specific classes of flaws. [ABSTRACT FROM AUTHOR]
- Published
- 2007
- Full Text
- View/download PDF
45. Web Services Regression Testing.
- Author
-
Baresi, Luciano, Di Nitto, Elisabetta, Di Penta, Massimiliano, Bruno, Marcello, Esposito, Gianpiero, Mazza, Valentina, and Canfora, Gerardo
- Abstract
Service-oriented Architectures (SOA) introduce a major shift of perspective in software engineering: in contrast to components, services are used instead of being physically integrated. This leaves the user with no control over changes that can happen in the service itself. When the service evolves, the user may not be aware of the changes, and this can entail unexpected system failures. When a system integrator discovers a service and starts to use it, she/he may need to periodically re-test it to build confidence that (i) the service delivers over the time the desired functionality and (ii) at the same time it is able to meet Quality of Service requirements. Test cases can be used as a form of contract between a provider and the system integrators. This chapter describes an approach and a tool to allow users to run a test suite against a service to discover if functional and non-functional expectations are maintained over time. [ABSTRACT FROM AUTHOR]
- Published
- 2007
- Full Text
- View/download PDF
46. Assumption-Based Composition and Monitoring of Web Services.
- Author
-
Baresi, Luciano, Di Nitto, Elisabetta, Pistore, Marco, and Traverso, Paolo
- Abstract
We propose an approach to the automated synthesis automated synthesis and the run-time monitoring run-time monitoring of web service compositions. Automated synthesis, given a set of existing component services that are modeled in the BPEL language, and given a composition requirement, generates a new BPEL process that, once deployed, interacts with the components to satisfy the requirement. The composition requirement expresses assumptions under which component services are supposed to participate in the composition, as well as conditions that the composition is expected to guarantee. Run-time monitoring matches the actual behaviors of the service compositions against the assumptions expressed in the composition requirement, and reports violations. We describe the implementation of the proposed approach, which exploits efficient synthesis techniques, and discuss its scalability and practical applicability. [ABSTRACT FROM AUTHOR]
- Published
- 2007
- Full Text
- View/download PDF
47. A Model-Driven Approach to Discovery, Testing and Monitoring of Web Services.
- Author
-
Baresi, Luciano, Di Nitto, Elisabetta, Lohmann, Marc, Mariani, Leonardo, and Heckel, Reiko
- Abstract
Service-oriented computing is distinguished by its use of dynamic discovery and binding for the integration of services at runtime. This poses a challenge for testing, in particular, of the interaction between services. We propose a model-driven solution to address this challenge. Service descriptions are promoted from largely syntactical to behavioural specifications of services in terms of contracts (pre-conditions and effects of operations), expressed in a visual UML-like notion. Through mappings to semantic web languages and the Java Modelling Language (JML) contracts support the automatic discovery of services as well as the derivation of test cases and their execution and monitoring. We discuss an extended life cycle model for services based on the model-driven approach and illustrate its application using a model of a hotel reservation service. [ABSTRACT FROM AUTHOR]
- Published
- 2007
- Full Text
- View/download PDF
48. Run-Time Monitoring in Service-Oriented Architectures.
- Author
-
Baresi, Luciano, Di Nitto, Elisabetta, Ghezzi, Carlo, and Guinea, Sam
- Abstract
Modern software architectures are increasingly dynamic. Among them, Service-Oriented Architectures (SOAs) are becoming a dominant paradigm. SOAs allow components to be exported as services for external use. Service descriptions (which include functional and non-functional properties) are published by service providers and are later discovered by potential users. Service discovery is based on matching the published service descriptions with the required service specifications provided by the user. Once an external service is discovered, it may be bound and invoked remotely. New services may also be created by composing existing services. To achieve full flexibility, the binding between a service request and a service provision may be set dynamically at run-time. Dynamic binding and decentralized management of external services by independent authorities, however, challenge our ability to perform verification and validation (V&V). Traditional V&V is a pre-deployment activity. In the new setting it extends to run-time and requires continuous monitoring of functional and non-functional attributes. This chapter investigates continuous monitoring of SOAs, with particular emphasis on web services. It provides a classification scheme that can help understanding the different monitoring approaches a system designer can choose. It also analyzes the running example and discusses some of the functional and non-functional aspects one might be interested in monitoring in its context. The chapter then presents a short survey of the most important ongoing research in this field and concludes by discussing future research directions. [ABSTRACT FROM AUTHOR]
- Published
- 2007
- Full Text
- View/download PDF
49. Unit Testing BPEL Compositions.
- Author
-
Baresi, Luciano, Di Nitto, Elisabetta, and Lübke, Daniel
- Abstract
Service-Oriented Architecture is a new emerging architectural style for developing distributed business applications. Those applications are often realized using Web services. These services are grouped into BPEL compositions. However, these applications need to be tested. For achieving better software quality, testing has to be done along the whole development process. Within this chapter a unit testing framework for BPEL named BPELUnit is presented. BPELUnit allows unit and integration tests of BPEL compositions. The tester is supported as much as possible: The used Web services can be replaced during test execution. This allows to really isolate the BPEL composition as a unit and guarantees repeatable tests. [ABSTRACT FROM AUTHOR]
- Published
- 2007
- Full Text
- View/download PDF
50. Model Checking with Abstraction for Web Services.
- Author
-
Baresi, Luciano, Di Nitto, Elisabetta, Sharygina, Natasha, and Kröning, Daniel
- Abstract
Web services are highly distributed programs and, thus, are prone to concurrency-related errors. Model checking is a powerful technique to identify flaws in concurrent systems. However, the existing model checkers have only very limited support for the programming languages and communication mechanisms used by typical implementations of web services. This chapter presents a formalization of communication semantics geared for web services, and an automated way to extract formal models from programs implementing web services for automatic formal analysis. The formal models are analyzed by means of a symbolic model checker that implements automatic abstraction refinement. Our implementation takes one or more PHP5 programs as input, and is able to verify joint properties of these programs running concurrently. [ABSTRACT FROM AUTHOR]
- Published
- 2007
- Full Text
- View/download PDF
Catalog
Discovery Service for Jio Institute Digital Library
For full access to our library's resources, please sign in.