64 results on '"Morisio, Maurizio"'
Search Results
2. Improving a Software Modernisation Process by Differencing Migration Logs
- Author
-
Deknop, Céline, Fabry, Johan, Mens, Kim, Zaytsev, Vadim, Morisio, Maurizio, Torchiano, Marco, Jedlitschka, Andreas, UCL - SST/ICTM/INGI - Pôle en ingénierie informatique, and Formal Methods and Tools
- Subjects
050101 languages & linguistics ,Software modernization ,software evolution ,Process (engineering) ,Computer science ,code differencing ,PABASE ,COBOL ,02 engineering and technology ,Modernization theory ,Software migration ,Software modernisation ,Software ,4GL ,0202 electrical engineering, electronic engineering, information engineering ,Fourth generation ,Production (economics) ,0501 psychology and cognitive sciences ,computer.programming_language ,Code differencing ,PACBASE ,business.industry ,05 social sciences ,Software evolution ,22/2 OA procedure ,legacy programming language ,software migration ,legacy programming languages ,softwaremigration ,Legacy programming languages ,020201 artificial intelligence & image processing ,Software engineering ,business ,computer - Abstract
Software written in legacy programming languages is notoriously ubiquitous and often comprises business-critical portions of codebases and portfolios. Some of these languages, like COBOL, mature, grow, and acquire modern tooling that makes maintenance activities more bearable. Others, like many fourth generation languages (4GLs), stagnate and become obsolete and unmaintained, which first urges and eventually forces migrating to other languages, if the software needs to be kept in production. In this paper, we dissect a software modernisation process endorsed by Raincode Labs, utilised in particular to migrate software from a 4GL called PACBASE, to pure COBOL. Having migrated upwards of 500 MLOC of production code to COBOL using this process, the company has ample experience with this process. Nevertheless, we identify some improvement points and explain the technical side of a possible solution, based on migration log differencing, that is currently being put to the test by Raincode migration engineers.
- Published
- 2020
3. Pilot Projects.
- Author
-
Morisio, Maurizio, Torchiano, Marco, Bella, Fabio, Forchino, Filippo, Kalaoja, Jarmo, Münch, Jürgen, Ocampo, Alexis, and Ponzi, Mario Negro
- Published
- 2006
- Full Text
- View/download PDF
4. WISE Experience Pearls.
- Author
-
Morisio, Maurizio, Torchiano, Marco, Bella, Fabio, Ihme, Tuomas, Kalaoja, Jarmo, Kallio, Paivi, Ponzi, Mario Negro, Ocampo, Alexis, and Tikkala, Aki
- Published
- 2006
- Full Text
- View/download PDF
5. Software Architecture of Wireless Services.
- Author
-
Morisio, Maurizio, Torchiano, Marco, Kaloja, Jarmo, Ihme, Tuomas, Lago, Patricia, and Niemela, Eila
- Published
- 2006
- Full Text
- View/download PDF
6. Technology.
- Author
-
Morisio, Maurizio, Torchiano, Marco, Ponzi, Mario Negro, and Laamanen, Heimo
- Published
- 2006
- Full Text
- View/download PDF
7. Software Development Processes.
- Author
-
Morisio, Maurizio, Torchiano, Marco, Ocampo, Alexis, Bella, Fabio, and Münch, Jürgen
- Published
- 2006
- Full Text
- View/download PDF
8. Introduction.
- Author
-
Morisio, Maurizio and Torchiano, Marco
- Published
- 2006
- Full Text
- View/download PDF
9. A Simple Generic Library for C.
- Author
-
Morisio, Maurizio, Vittek, Marian, Borovansky, Peter, and Moreau, Pierre-Etienne
- Abstract
This paper presents Sglib, a C library freely inspired by the Standard Template Library (STL). In opposition to C++, the C language lacks any support for generic programming. Our library results from the idea to create a generic library of reusable algorithms through the C preprocessorThis work was supported by Agency for Promotion Research and Development under the contract No. APVV-20-P04805.. [ABSTRACT FROM AUTHOR]
- Published
- 2006
- Full Text
- View/download PDF
10. X-ARM: A Step Towards Reuse of Commercial and Open Source Components.
- Author
-
Morisio, Maurizio, Schuenck, Michael, Negócio, Yuri, Elias, Glêdson, Miranda, Sindolfo, Dias, Jorge, and Cavalcanti, Gustavo
- Abstract
In component-based software development processes, one of the most challenging tasks is to find reusable assets that fulfill the requirements of a particular software system under development. Over time, in the context of component repository systems, reusable asset specification approaches have been proposed to help find suitable reusable assets. As an important step forward, RAS (Reusable Asset Specification) provides a standard way to describe all kinds of software assets. However, despite its contributions, RAS suffers from problems related to fine-grain reuse. Besides, RAS does not provide representation for asset certification and business models. As another step forward, this paper presents X-ARM, an XML-based Asset Representation Model, specified as a RAS extension and organized in four hierarchical profiles. The proposed model overcomes RAS limitations, providing effective means for developing universal repository systems that can improve reuse of commercial and open source software components. [ABSTRACT FROM AUTHOR]
- Published
- 2006
- Full Text
- View/download PDF
11. Eliciting Potential Requirements with Feature-Oriented Gap Analysis.
- Author
-
Morisio, Maurizio, Sangim Ahn, and Kiwon Chong
- Abstract
Software reuse has long been paid attentions as an effective way to improve software quality and productivity. In the context of Requirements Engineering (RE), a reuse approach is effective in particular because it can help to define requirements and to anticipate requirements change. We propose a feature-oriented gap analysis method to elicit potential requirements from various stakeholders. We use feature modeling, which are an important concept in software product line, to identify reusable requirements elements. To achieve our goal, we present (1) a meta-model of reusable requirements elements, (2) gap analysis between new collected requirements and reused requirements in the repository, and (3) a potential requirements elicitation process with feature-oriented gap analysis. This process is a set of sequential procedures to elicit potential requirements in addition to users' Plus minus interest (PMI). [ABSTRACT FROM AUTHOR]
- Published
- 2006
- Full Text
- View/download PDF
12. Support to Development-with-Reuse in Very Small Software Developing Companies.
- Author
-
Morisio, Maurizio, Barros, José L., and Marqués, José M.
- Abstract
There are a variety of specifications to represent information about reusable assets. Most of this models and specifications are complex, difficult to understand and implement in reduced environments. Small and very small organizations (less than 10 employees) can benefit from reuse but, they need easy to understand methodologies, processes and tools; low cost technologies and, flexible development models. We provide a flexible approach to the modelling process proposing an easy model to represent and classify reusable assets, mainly those developed inside the organization but, compliant with standards to allow the use of COTS. Our model deals with functional and non-functional properties and, it's able to represent assets from the whole software development life cycle. [ABSTRACT FROM AUTHOR]
- Published
- 2006
- Full Text
- View/download PDF
13. Binding Time Based Concept Instantiation in Feature Modeling.
- Author
-
Morisio, Maurizio, Vranić, Valentino, and Šípka, Miloslav
- Abstract
In this paper, we address the issue of concept instantiation in feature modeling with respect to binding time. We explain the impact of such instantiation on applying constraints among features expressed in feature diagrams and as additional constraints and propose a way to validate a concept instance under these new conditions. [ABSTRACT FROM AUTHOR]
- Published
- 2006
- Full Text
- View/download PDF
14. Improving Reuse of Off-the-Shelf Components with Shared, Distributed Component Repository Systems.
- Author
-
Morisio, Maurizio, Elias, Glêdson, Dias, Jorge, Filho, Sindolfo Miranda, Cavalcanti, Gustavo, Schuenck, Michael, and Negócio, Yuri
- Abstract
The task of identifying software components that meet business requirements is a challenging issue in component-based development processes. In such a context, component repository systems can provide the means to effectively find suitable components, improving reuse of off-the-shelf software components. This paper presents a shared, distributed component repository architecture for large scale deployment of commercial and open source software components. The proposed architecture adopts a service-oriented approach in order to achieve a high degree of availability and reliability. Besides, the proposed architecture also deals with issues such as security, component certification and business models. [ABSTRACT FROM AUTHOR]
- Published
- 2006
- Full Text
- View/download PDF
15. Aspects as Components.
- Author
-
Morisio, Maurizio, Eler, Marcelo Medeiros, and Masiero, Paulo Cesar
- Abstract
An adaptation of the UML Component method to design crosscutting components is briefly presented. Such components are allowed to crosscut only the public interface of base (convencional) components. The design and implementation of crosscutting components using the language JAsCO is discussed. [ABSTRACT FROM AUTHOR]
- Published
- 2006
- Full Text
- View/download PDF
16. Product Line Architecture for a Family of Meshing Tools.
- Author
-
Morisio, Maurizio, Bastarrica, María Cecilia, Hitschfeld-Kahler, Nancy, and Rossel, Pedro O.
- Abstract
Meshing tools are traditionally built in a one by one basis without reusing already developed parts. However, there are several concepts within this application domain that are present in most tools. Developing software components implementing these concepts is extremely time consuming and requires highly specialized programmers. Software product lines is a way of systematically reusing assets. We propose a layered product line architecture for meshing tools. We specify it formally using xADL, and we show that it fits some already built tools. [ABSTRACT FROM AUTHOR]
- Published
- 2006
- Full Text
- View/download PDF
17. GENMADEM: A Methodology for Generative Multi-agent Domain Engineering.
- Author
-
Morisio, Maurizio, Jansen, Mauro, and Girardi, Rosario
- Abstract
The generative approach is one of the most productive ways to promote the automatic reuse in software product lines. Multi-Agent Domain Engineering is a process to build multi-agent system families. This paper describes GENMADEM, an ontology-based methodology for generative multi-agent domain engineering whose main products are ontology-based domain models, domain specific languages and application generators. Keywords: Generative Software Reuse; Multi-Agent Systems Development Methodologies; Domain Engineering; Domain Specific Languages; Generators. [ABSTRACT FROM AUTHOR]
- Published
- 2006
- Full Text
- View/download PDF
18. Variability Modeling in a Component-Based Domain Engineering Process.
- Author
-
Morisio, Maurizio, Blois, Ana Paula Terra Bacelo, Oliveira, Regiane Felipe, Maia, Natanael, Werner, Cláudia, and Becker, Karin
- Abstract
Domain Engineering (DE) and Component-based Development (CBD) are approaches that focus on reuse. On the one hand, DE methods emphasize variability modeling in analysis phase. On the other hand, most CBD methods gude on the development of components, with a minor focus on reusability properties. This paper presents an approach to support variability modeling, in a Component-based Domain Engineering Process. [ABSTRACT FROM AUTHOR]
- Published
- 2006
- Full Text
- View/download PDF
19. Incremental Software Reuse.
- Author
-
Morisio, Maurizio, Llorens, Juan, Fuentes, José M., Prieto-Diaz, Ruben, and Astudillo, Hernán
- Abstract
Current reuse techniques disincentive their mass practice in software development organizations because of their large initial investments, the changes they required in ways of developing software, and their fragility in front of domain evolutions. We argue that the root of these problems is the poor resolution of retrieval techniques to identify candidate artifacts to utilize in new projects. We sketch an approach to reuse based on artifacts retrieval by content, which allows incremental adoption at low cost. The Incremental Reuse Method (IRM), founded on these principles, can solve the big problems of traditional reuse, allowing their application in all manner of organizations. [ABSTRACT FROM AUTHOR]
- Published
- 2006
- Full Text
- View/download PDF
20. Variability in Goal-Oriented Domain Requirements.
- Author
-
Morisio, Maurizio, Semmak, Farida, and Brunet, Joël
- Abstract
The aim of the paper is to present a framework to contribute to the improvement of requirements elicitation by reusing domain models. In our approach, a domain model gathers goals organized in goal hierarchies associated with domain rules and materialized in conceptual fragments. A conceptual fragment represents an abstract view of the specification allowing the realization of a given goal. To construct a system, the designer will extract requirements from the domain model and adapt the obtained conceptual fragments to the context of the system. Two principles are used to represent domain models: abstraction, which allows the description of common properties of a given domain, and variability, which allows the description of discriminatory properties of the domain. In our approach, variability is applied on the three levels: goal, domain rule and conceptual fragment. [ABSTRACT FROM AUTHOR]
- Published
- 2006
- Full Text
- View/download PDF
21. Establishing Extra Organizational Reuse Capabilities.
- Author
-
Morisio, Maurizio and Voss, Markus
- Abstract
Component-based software engineering (CBSE) for companies active in custom solutions development is far from being reality. To make progress more industrial research as well as accordant technology management is needed. In this contribution we introduce a classification of components in terms of component's scale and in terms of functional vs. technical concerns. From this basis we argue that only some areas of software reuse promise substantial growth in delivery efficiency and show how this is related to the extra organizational reuse approach. [ABSTRACT FROM AUTHOR]
- Published
- 2006
- Full Text
- View/download PDF
22. Building Reflective Mobile Middleware Framework on Top of the OSGi Platform.
- Author
-
Morisio, Maurizio and Paller, Gábor
- Abstract
The literature on mobile middleware is extensive. Numerous aspects of the mobility's effect on middleware have been analysed and the amount of previous work allowed to identify the most important patterns. Although the notion of "most important middleware" depends on the application supported by the middleware, there are traits that can be discovered in most of the connected mobile applications. Based on the experience of several authors, these traits are context-awareness, reflectivity, support for off-line operation and asynchronous (message-based) communication. This paper presents a mobile middleware system built to support these patterns and demonstrates, how the OSGi service platform can be used to realize these patterns. It will be demonstrated that although OSGi was built to support manageability requirements, the resulting platform is suitable for implementing the 4 major middleware patterns too. The paper presents the components of this context-aware, reflective middleware framework and evaluates its footprint. [ABSTRACT FROM AUTHOR]
- Published
- 2006
- Full Text
- View/download PDF
23. Goal-Oriented Performance Analysis of Reusable Software Components.
- Author
-
Morisio, Maurizio, Kolb, Ronny, Ganesan, Dharmalingam, Muthig, Dirk, Kagino, Masanori, and Teranishi, Hideharu
- Abstract
To establish software reuse successfully in the long run, it is crucial for providers of reusable components to continuously react on problems or future trends arising around their component. In practice, however, many providers of reusable components are not able to do so due to insufficient feedback and details from reusers. Additionally, they often have too little knowledge on system context and constraints that may lead to major deficits of the reusable component especially with respect to non-functional aspects. This paper presents an approach for systematically engineering performance of reusable components that has been validated in an industrial context. [ABSTRACT FROM AUTHOR]
- Published
- 2006
- Full Text
- View/download PDF
24. A Component-Oriented Substitution Model.
- Author
-
Morisio, Maurizio, George, Bart, Fleurquin, Régis, and Sadou, Salah
- Abstract
One of Software Engineering's main goals is to build complex applications in a simple way. For that, software components must be described by its functional and non-functional properties. Then, the problem is to know which component satisfies a specific need in a specific composition context, during software conception or maintenance. We state that this is a substitution problem in any of the two cases. From this statement, we propose a need-aware substitution model that takes into account functional and non-functional properties. [ABSTRACT FROM AUTHOR]
- Published
- 2006
- Full Text
- View/download PDF
25. Formalizing MDA Components.
- Author
-
Morisio, Maurizio, Favre, Liliana, and Martinez, Liliana
- Abstract
The Model Driven Architecture (MDA) promotes the use of models and model transformations for developing software systems. The idea behind MDA is to manage the evolution from Platform Independent Models to Platform Specific Models that can be used to generate executable components and applications. The concepts of metamodels and metamodel-based model transformations are critical in MDA. In this paper, we propose a metamodeling technique to reach a high level of reusability and adaptability of MDA components. In particular, we analyze how to define reusable components for the standard design patterns in a way that fits MDA very closely. To define families of reusable components we describe a "megamodel" that refers to metamodels and model transformations organized into an architectural framework. We propose a "megamodel" formalization that focuses on interoperability of formal languages in Model Driven Development (MDD). [ABSTRACT FROM AUTHOR]
- Published
- 2006
- Full Text
- View/download PDF
26. A UML2 Profile for Reusable and Verifiable Software Components for Real-Time Applications.
- Author
-
Morisio, Maurizio, Cechticky, V., Egli, M., Pasetti, A., Rohlik, O., and Vardanega, T.
- Abstract
Software frameworks offer sets of reusable and adaptable compo-nents embedded within an architecture optimized for a given target domain. This paper introduces an approach to the design of software frameworks for real-time applications. Real-Time applications are characterized by functional and non-functional (e.g. timing) requirements. The proposed approach separates the treatment of these two aspects. For functional issues, it defines an extensible state machine concept to define components that encapsulate functional behaviour and offer adaptation mechanisms to extend this behaviour which warrant preservation of the functional properties that characterize the framework. For timing issues, it defines software structures that are provably endowed with specific timing properties and which encapsulate functional activity in a way that warrants their enforcement. A UML2 profile is defined that formally captures both aspects and allows the proposed strategy to be deployed at design level. [ABSTRACT FROM AUTHOR]
- Published
- 2006
- Full Text
- View/download PDF
27. Does Refactoring Improve Reusability?
- Author
-
Morisio, Maurizio, Moser, Raimund, Sillitti, Alberto, Abrahamsson, Pekka, and Succi, Giancarlo
- Abstract
The improvement of the software development process through the development and utilization of high quality and reusable software components has been advocated for a long time. Agile Methods promote some interesting practices, in particular the practice of refactoring, which are supposed to improve understandability and maintainability of source code. In this research we analyze if refactoring promotes ad-hoc reuse of object-oriented classes by improving internal quality metrics. We conduct a case study in a close-to industrial, agile environment in order to analyze the impact of refactoring on internal quality metrics of source code. Our findings sustain the hypothesis that refactoring enhances quality and reusability of - otherwise hard to reuse - classes in an agile development environment. Given such promising results, additional experimentation is required to validate and generalize the results of this work. [ABSTRACT FROM AUTHOR]
- Published
- 2006
- Full Text
- View/download PDF
28. Using the Web as a Reuse Repository.
- Author
-
Morisio, Maurizio, Hummel, Oliver, and Atkinson, Colin
- Abstract
Software reuse is widely recognized as an effective way of increasing the quality of software systems whilst lowering the effort and time involved in their development. Although most of the basic techniques for software retrieval have been around for a while, third party reuse is still largely a "hit and miss" affair and the promise of large case component marketplaces has so far failed to materialize. One of the key obstacles to systematic reuse has traditionally been the set up and maintenance of up-to-date software repositories. However, the rise of the World Wide Web as a general information repository holds the potential to solve this problem and give rise to a truly ubiquitous library of (open source) software components. This paper surveys reuse repositories on the Web and estimates the amount of software currently available in them. We also briefly discuss how this software can be harvested by means of general purpose web search engines and demonstrate the effectiveness of our implementation of this approach by applying it to reuse examples presented in earlier literature. [ABSTRACT FROM AUTHOR]
- Published
- 2006
- Full Text
- View/download PDF
29. A Tactic-Driven Process for Developing Reusable Components.
- Author
-
Morisio, Maurizio, Kakarontzas, George, and Stamelos, Ioannis
- Abstract
True reusability of components assumes that they not only offer the functionality prescribed by their APIs, but also that they conform to a well-defined set of quality attributes so that we know if a component can be successfully reused in a new software product. One of the problems with quality attributes however is that it is hard to identify the characteristics of components that contribute to their emergence. End-user quality attributes are versatile and difficult to predict but their occurrence is not of an accidental nature. In this paper we propose a methodology for the exploration of candidate architectural tactics during component analysis and design for the achievement of desirable quality effects. Our approach is based on executable specifications of components that are augmented with the required tactic-related parameters to form a testbed for quality-driven experimentation. We believe that the proposed approach delivers both reusable components as well as reusable models. [ABSTRACT FROM AUTHOR]
- Published
- 2006
- Full Text
- View/download PDF
30. Achieving Smooth Component Integration with Generative Aspects and Component Adaptation.
- Author
-
Morisio, Maurizio, Yankui Feng, Xiaodong Liu, and Kerridge, Jon
- Abstract
Due to the availability of components and the diversity of target applications, mismatches between pre-qualified existing components and the particular reuse context in applications are often inevitable and have been a major hurdle of component reusability and successful composition. Although component adaptation has acted as a key solution of eliminating these mismatches, existing practices are either only capable for adaptation at a rather simple level, or require too much intervention from software engineers. This paper presents a highly automatic approach to component adaptation at adequately deep level. The adaptability and automation is achieved in an aspect-oriented component reuse framework by generating and then applying the adaptation aspects under designed weaving process according to specific adaptation requirements. An expandable library of reusable adaptation aspects at multiple abstraction levels has been developed. A prototype tool is developed to scale up the approach. [ABSTRACT FROM AUTHOR]
- Published
- 2006
- Full Text
- View/download PDF
31. Comparing White-Box, Black-Box, and Glass-Box Composition of Aspect Mechanisms.
- Author
-
Morisio, Maurizio, Kojarski, Sergei, and Lorenz, David H.
- Abstract
The manifestation of miscellaneous aspect-oriented extensions raises the question of how these extensions can be used together to combine their aspectual capabilities or reuse aspect code across extensions. While white-box composition of aspect mechanisms can produce an optimal compound mechanism, as exemplified by the merger of AspectJ and AspectWerkz into AspectJ 5, it comes with a high integration cost. Meanwhile, generic black-box composition can compose arbitrary aspect mechanisms, but may result in a compound mechanism that is suboptimal in comparison to white-box composition. For a particular family of aspect extensions, e.g.,AspectJ-like mechanisms, glass-box composition offers the best of two worlds. Glass-box may rely on the internal structure of, e.g., a pointcut-and-advice mechanism, without requiring a change to the code of the individual mechanisms. In this paper we compare white-, black-, and glass-box composition of aspect mechanisms. We explain subtle composition issues using an example drawn from the domain of secure and dependable computing, deploying a fault-tolerance aspect written in AspectWerkz together with an access-control aspect written in AspectJ. To compare the three composition methods, we integrate a TinyAJ extension with a TinyAW extension, and compare the results of running the aspects in a black-box framework and in a glass-box framework to the result of running these aspects in AspectJ 5. [ABSTRACT FROM AUTHOR]
- Published
- 2006
- Full Text
- View/download PDF
32. Recommending Library Methods: An Evaluation of the Vector Space Model (VSM) and Latent Semantic Indexing (LSI).
- Author
-
Morisio, Maurizio, McCarey, Frank, Cinnéide, Mel Ó, and Kushmerick, Nicholas
- Abstract
The development and maintenance of a reuse repository requires significant investment, planning and managerial support. To minimise risk and ensure a healthy return on investment, reusable components should be accessible, reliable and of a high quality. In this paper we concentrate on accessability; we describe a technique which enables a developer to effectively and conveniently make use of large scale libraries. Unlike most previous solutions to component retrieval, our tool, RASCAL, is a proactive component recommender. RASCAL recommends a set of task-relevant reusable components to a developer. Recommendations are produced using Collaborative Filtering (CF). We compare and contrast CF effectiveness when using two information retrieval techniques, namely Vector Space Model (VSM) and Latent Semantic Indexing (LSI). We validate our technique on real world examples and find overall results are encouraging; notably, RASCAL can produce reasonably good recommendations when they are most valuable i.e., at an early stage in code development. [ABSTRACT FROM AUTHOR]
- Published
- 2006
- Full Text
- View/download PDF
33. Improving Extensibility of Object-Oriented Frameworks with Aspect-Oriented Programming.
- Author
-
Morisio, Maurizio, Kulesza, Uirá, Alves, Vander, Garcia, Alessandro, Lucena, Carlos J. P., and Borba, Paulo
- Abstract
Object-oriented frameworks are nowadays a common and useful technology used in the implementation of software system families. Despite their benefits, over the last years many researchers have described the inadequacy of object-oriented mechanisms to address the modularization and composition of many framework features, thus reducing the extent to which a framework can be extended. The crosscutting nature of many framework features is identified as one of the main causes of these problems. In this paper, we analyze how aspect-oriented programming can help to improve the design, implementation, and extension of object-oriented frameworks. We propose the concept of Extension Join Points (EJPs) as a way of designing and documenting existing crosscutting extension points. EJPs improve framework extensibility, including superior composability of the framework core functionality with other modules or frameworks. Four case studies of frameworks from diverse domains are presented to illustrate our proposal. This paper also discusses lessons learned on the application of our approach to the development and extension of these frameworks. [ABSTRACT FROM AUTHOR]
- Published
- 2006
- Full Text
- View/download PDF
34. Reconciling Subtyping and Code Reuse in Object-Oriented Languages: Using inherit and insert in SmartEiffel, the GNU Eiffel Compiler.
- Author
-
Morisio, Maurizio, Colnet, Dominique, Marpons, Guillem, and Merizen, Frederic
- Abstract
SmartEiffel has been enjoying two different mechanisms to express subtyping and implementation inheritance for one year. After large scale practical tests and thanks to user feedback, this paper finalises the new typing policy of SmartEiffel, which combines two forms of multiple inheritance with genericity in one statically-checked, object-oriented language. Having two forms of inheritance allows the designer to capture more design decisions in the source code. It is now straightforward to share reusable code between otherwise unrelated types. The new mechanism allows to reuse code from an existing class without polluting the reuser's interface. It also enables an elegant implementation of some design patterns. Furthermore, this mechanism helps compilers to statically remove more dynamic dispatch code. It can also be used to add a no-penalty and no-risk multiple-inheritance-like construct to a single-inheritance language such as Java. [ABSTRACT FROM AUTHOR]
- Published
- 2006
- Full Text
- View/download PDF
35. An Approach to Managing Feature Dependencies for Product Releasing in Software Product Lines.
- Author
-
Morisio, Maurizio, Yuqin Lee, Chuanyao Yang, Chongxiang Zhu, and Wenyun Zhao
- Abstract
Product line software engineering is a systematic approach to realize large scale software reuse. Software product lines deal with reusable assets across a domain by exploring requirements commonality and variability. Requirements dependencies have very strong influence on all development phases of member products in a product line. There are many feature oriented approaches on requirement dependencies. However, most of them are limited to the problem domain. Among those few focusing on the solution domain, they are limited to modeling requirement dependencies. This paper presents a feature oriented approach to managing domain requirements dependencies. Not only is a requirement dependencies model presented, but a directed graph-based approach is also developed to analyze domain requirement dependencies for effective release of member products in a product line. This approach returns a simple directed graph, and uses an effective algorithm to get a set of requirements to be released in a member product. A case study for spot and futures transaction domain is described to illustrate the approach. [ABSTRACT FROM AUTHOR]
- Published
- 2006
- Full Text
- View/download PDF
36. Case Study of a Method for Reengineering Procedural Systems into OO Systems.
- Author
-
Morisio, Maurizio, Frakes, William B., Kulczycki, Gregory, and Saxena, Charu
- Abstract
This study evaluates a method for reengineering a procedural system to an object-oriented system. Relationships between functions in the procedural system were identified using various coupling metrics. While the coupling metrics used for analysis were helpful in identifying candidate objects, domain expert analysis of the candidate objects was required. The time taken at each step in the process was captured to help determine the effectiveness of the method. Overall the process was found to be effective for identifying objects. [ABSTRACT FROM AUTHOR]
- Published
- 2006
- Full Text
- View/download PDF
37. Odyssey-CCS: A Change Control System Tailored to Software Reuse.
- Author
-
Morisio, Maurizio, Lopes, Luiz Gustavo, Murta, Leonardo, and Werner, Cláudia
- Abstract
Software is constantly changing and these changes may occur at anytime in the software lifecycle. In order to avoid rework and information loss, among other problems, these changes must be controlled in a proper way. When changes affect reused components, possibly composed by other components, it is important to know who is responsible for implementing them. Some consequences of this problem, named Reuse Chain of Responsibility, is the misconception on rights and duties of teams that produce and reuse compo-nents. Aiming to solve this problem, we introduce Odyssey-CCS, a flexible change control system that allows the customization of a change control process to the specific needs of software reuse. Moreover, it keeps a reuse map that holds information about contracts between components producers and reusers. The reuse map is integrated to an existing component library and is queried by Odyssey-CCS within the impact analysis activity. [ABSTRACT FROM AUTHOR]
- Published
- 2006
- Full Text
- View/download PDF
38. Re-engineering a Credit Card Authorization System for Maintainability and Reusability of Components - A Case Study.
- Author
-
Morisio, Maurizio, Kyo Chul Kang, Jae Joon Lee, Byungkil Kim, Moonzoo Kim, Chang-woo Seo, and Seung-lyeol Yu
- Abstract
A credit card authorization system (CAS) is a large information system performing diverse activities such as purchase authentication, balance transfer, cash advances, etc. One characteristic of CAS is its frequent update to satisfy the needs of customers and newly enforced governmental laws. Thus, CAS should be designed to minimize the effects of updates, for which high reusability of the CAS components is desired. In this paper, we present our experience of re-engineering CAS based on a feature model for improved reusability of components, which alleviates the difficulty of system maintenance. The result of this project has been successfully transferred to the company. [ABSTRACT FROM AUTHOR]
- Published
- 2006
- Full Text
- View/download PDF
39. Adaptation and Composition Within Component Architecture Specification.
- Author
-
Morisio, Maurizio, Spagnoli, Luciana, Almeida, Isabella, Becker, Karin, Blois, Ana Paula, and Werner, Cláudia
- Abstract
Component-Based Development (CBD) and Domain Engineering (DE) are important approaches for software reuse. In a DE process, components are specified in a high abstraction level, within a component architecture specification. When components are reused during an Application Engineering (AE), they are composed with each other and third-party components. However, conflicts usually occur and they must be considered as early as possible, otherwise they may jeopardize the defined architecture. This work proposes a set of functionalities for development with components, with focus on the support for the adaptation and composition functionalities. These were included in Odyssey, an environment that supports DE and AE processes. A preliminary study on the use of these functionalities is also reported. [ABSTRACT FROM AUTHOR]
- Published
- 2006
- Full Text
- View/download PDF
40. A Metamodel Approach to Architecture Variability in a Product Line.
- Author
-
Morisio, Maurizio, Mikyeong Moon, Heung Seok Chae, and Keunhyuk Yeom
- Abstract
Architecture describes the organizational structure of a system including components, interactions, and constraints. Reusable components, units of software systems, have been considered to support a considerable improvement in reducing development costs and time to market because their interfaces and functionality are explicitly defined. Instead of reusing an individual component, however, it is much more advantageous to reuse a whole design or architecture. A domain architecture, sharing a common software architecture across a product line, includes common components shared by all products and optional components exploited by a subset of the products. Variability, one of the key concepts in the development of domain architectures indicates the ability to derive various products from the product line. Clearly, we need to support variability during domain architecture development. In this paper, we suggest a metamodeling concept that enables a common under-standing of architecture variability. The domain architecture metamodel reflects the Object Management Group's (OMGTM) Reusable Asset Specification (RAS) which addresses the engineering elements of reuse. We describe a domain architecture in which commonality and variability are explicitly considered. [ABSTRACT FROM AUTHOR]
- Published
- 2006
- Full Text
- View/download PDF
41. Ontology-Based Feature Modeling and Application-Oriented Tailoring.
- Author
-
Morisio, Maurizio, Xin Peng, Wenyun Zhao, Yunjiao Xue, and Yijian Wu
- Abstract
Feature models have been widely adopted in domain requirements capturing and specifying. However, there are still difficulties remaining in domain model validating and application-oriented tailoring. These difficulties are partly due to the missing of a strictly defined feature meta-model, which makes it difficult to formally represent the feature models. Aiming at the problem, we propose an ontology-based feature modeling method supporting application-oriented tailoring. In this method features are classified into several categories and are all precisely defined in the OWL-based meta-model. Expression capacity of the feature model can be greatly improved due to the rich types of features. On the other hand the feature model can be easily converted into ontology model and be validated through ontology inference. Application-oriented tailoring can also gain support from the reasoning-based guidance. Finally, advantages of ontology-based feature modeling, especially for component and architecture design, are discussed with our conclusions. [ABSTRACT FROM AUTHOR]
- Published
- 2006
- Full Text
- View/download PDF
42. The COVAMOF Derivation Process.
- Author
-
Morisio, Maurizio, Sinnema, Marco, Deelstra, Sybren, and Hoekstra, Piter
- Abstract
The design, usage and maintenance of variability, i.e. variability management, is a very complex and time-consuming task in industrial product families. The COVAMOF Variability Modeling Framework is our approach to enable efficient variability management. As a practical realization of COVAMOF, swe developed the COVAMOF-VS tool suite, which provides several variability views on C#, C++, Java, and many other types of projects in Microsoft Visual Studio .NET. In this paper, we show how COVAMOF facilitates an engineer during product derivation, and what benefits are gained by it. [ABSTRACT FROM AUTHOR]
- Published
- 2006
- Full Text
- View/download PDF
43. Inter-organisational Approach in Rapid Software Product Family Development — A Case Study.
- Author
-
Morisio, Maurizio, Myllärniemi, Varvana, Raatikainen, Mikko, and Männistö, Tomi
- Abstract
Software product families provide an efficient means of reuse between a set of related products. However, software product families are often solely associated with intra-organisational reuse. This paper presents a case study of Fathammer, a small company developing games for different mobile devices. Reuse at Fathammer takes place at multiple levels. The game framework and engine of Fathammer is reused by partner companies that in turn produce game assets to be reused by Fathammer while developing games for various devices. Very rapid development of games is a necessity for Fathammer, whereas maintainability of games is not important. The above characteristics in particular distinguish Fathammer from other case studies and practices usually presented in the product family literature. The results show the applicability and challenges of software product family practices in the context of multiple collaborating companies and a fast-changing domain. [ABSTRACT FROM AUTHOR]
- Published
- 2006
- Full Text
- View/download PDF
44. Feature Driven Dynamic Customization of Software Product Lines.
- Author
-
Morisio, Maurizio, Gomaa, Hassan, and Saleh, Mazen
- Abstract
This paper describes a model driven development approach for software product lines based on Web services, in which feature selection drives the dynamic customization of the product line architecture and implementation to derive the application. During product line modeling, feature and their dependencies are described in a feature model. The product line architecture is based around a client/server pattern consisting of user interface objects interacting with Web services. During application engineering, features are selected by the application engineer and used to dynamically customize the product line architecture and implementation. [ABSTRACT FROM AUTHOR]
- Published
- 2006
- Full Text
- View/download PDF
45. The Domain Analysis Concept Revisited: A Practical Approach.
- Author
-
Morisio, Maurizio, Almeida, Eduardo Santana, Mascena, Jorge Cláudio Cordeiro Pires, Cavalcanti, Ana Paula Carvalho, Alvaro, Alexandre, Garcia, Vinicius Cardoso, Lemos Meira, Silvio Romero, and Lucrédio, Daniel
- Abstract
Domain analysis has been identified as a key factor in the development of reusable software. However, for domain analysis to become a practical approach we need to understand the conceptual foundations of the process and to produce a unambiguous definition in the form of specific techniques. This paper presents a practical approach for domain analysis based on a well defined set of guidelines and metrics. A preliminary industrial case study was performed in order to identify the viability of the approach. [ABSTRACT FROM AUTHOR]
- Published
- 2006
- Full Text
- View/download PDF
46. A Goal-Oriented Strategy for Supporting Commercial Off-the-Shelf Components Selection.
- Author
-
Morisio, Maurizio, Ayala, Claudia, and Franch, Xavier
- Abstract
The use of Commercial Off-The-Shelf (COTS) components is becoming a strategic need because they offer the possibility to build systems at reduced costs and within shorter development time. Having efficient and reliable COTS components selection methods is a key issue not only for exploiting the potential benefits of this technology, but also for facing the problems and risks involved. Searching COTS components requires to overcome several obstacles: the growing size and evolvability of the COTS marketplace, the dependencies from the components to be selected with others, and the type of descriptions currently available for those components. In this paper, we present a goal-oriented strategy for an effective localization, analysis and structuring of COTS components information. Our proposal is the GOThIC method, which provides methodological support to the construction of taxonomies. We present the seven activities that conform this method, which are illustrated with the case of real-time synchronous communication tools. [ABSTRACT FROM AUTHOR]
- Published
- 2006
- Full Text
- View/download PDF
47. Automating Integration of Heterogeneous COTS Components.
- Author
-
Morisio, Maurizio, Wenpin Jiao, and Hong Mei
- Abstract
Mismatches make COTS components difficult to be incorporated. In this paper, an approach is presented to eliminate mismatches among COTS components, which can truly consider COTS components as black boxes. In the approach, only the assembly description of components is required, based on which adaptors for resolving mismatches can be generated automatically. This paper also described an agent-based GUI implementation of the approach. [ABSTRACT FROM AUTHOR]
- Published
- 2006
- Full Text
- View/download PDF
48. A State-of-the-Practice Survey of Off-the-Shelf Component-Based Development Processes.
- Author
-
Morisio, Maurizio, Jingyue Li, Torchiano, Marco, Conradi, Reidar, Slyngstad, Odd Petter N., and Bunse, Christian
- Abstract
To gain competitive advantages software organizations are forced to develop systems quickly and cost-efficiently. Reusing components from third-party providers is one key technology to reach these goals. These components, also known as OTS (Off-the-Shelf) components, come in two different types: COTS (Commercial-Off-The-Shelf) and OSS (Open-Source-Software) components. However, the reuse of pre-fabricated components bears one major question: How to adapt development processes/methods with refer to system development using OTS components. To examine the state-of-the-practice in OTS component-based development a survey on 133 software projects in Norway, Italy and Germany was performed. The results show that OTS-based development processes are typically variations of well-known process models, such as the waterfall- or prototyping model, mixed with OTS-specific activities. One reason might be that often the process is selected before the use of OTS components is considered. Furthermore, the survey shows that the selection of OTS components is based on two processes: "Familiarity-based" and "Internet search-based". Moreover, it appears that the lifecycle phase to select OTS components is significantly correlated with a project members' previous familiarity with possible OTS candidates. Within this paper, we characterize the state-of-the-practice concerning OTS processes, using seven scenarios, and discuss how to decide or modify such processes and how to select OTS components. [ABSTRACT FROM AUTHOR]
- Published
- 2006
- Full Text
- View/download PDF
49. Preliminary Results from a State-of-the-Practice Survey on Risk Management in Off-the-Shelf Component-Based Development.
- Author
-
Franch, Xavier, Port, Daniel, Li, Jingyue, Conradi, Reidar, Slyngstad, Odd Petter N., Torchiano, Marco, Morisio, Maurizio, and Bunse, Christian
- Abstract
Software components, both Commercial-Off-The-Shelf and Open Source, are being increasingly used in software development. Previous studies have identified typical risks and related risk management strategies for what we will call OTS-based (Off-the-Shelf) development. However, there are few effective and well-proven guidelines to help project managers to identify and manage these risks. We are performing an international state-of-the-practice survey in three countries - Norway, Italy, and Germany - to investigate the relative frequency of typical risks, and the effect of the corresponding risk management methods. Preliminary results show that risks concerning changing requirements and effort estimation are the most frequent risks. Risks concerning traditional quality attributes such as reliability and security of OTS component seem less frequent. Incremental testing and strict quality evaluation have been used to manage the possible negative impact of poor component quality. Realistic effort estimation on OTS quality evaluation helped to mitigate the possible effort estimation biases in OTS component selection and integration. [ABSTRACT FROM AUTHOR]
- Published
- 2005
50. An Empirical Study on Off-the-Shelf Component Usage in Industrial Projects.
- Author
-
Bomarius, Frank, Komi-Sirviö, Seija, Li, Jingyue, Conradi, Reidar, Slyngstad, Odd Petter N., Bunse, Christian, Khan, Umair, Torchiano, Marco, and Morisio, Maurizio
- Abstract
Using OTS (Off-The-Shelf) components in software projects has become increasing popular in the IT industry. After project managers opt for OTS components, they can decide to use COTS (Commercial-Off-The-Shelf) components or OSS (Open Source Software) components instead of building these themselves. This paper describes an empirical study on why project decision-makers use COTS components instead of OSS components, or vice versa. The study was performed in form of an international survey on motivation and risks of using OTS components, conducted in Norway, Italy and Germany. We have currently gathered data on 71 projects using only COTS components and 39 projects using only OSS components, and 5 using both COTS and OSS components. Results show that both COTS and OSS components were used in small, medium and large software houses and IT consulting companies. The overall software system also covers several application domains.Both COTS and OSS were expected to contribute to shorter time-to-market, less development effort and the application of newest technology. However, COTS users believe that COTS component should have good quality, technical support, and will follow the market trend. OSS users care more about the free ownership and openness of the source code. Projects using COTS components had more difficulties in estimating selection effort, following customer requirement changes, and controlling the component's negative effect on system security. On the other hand, OSS user had more difficulties in getting the support reputation of OSS component providers. [ABSTRACT FROM AUTHOR]
- Published
- 2005
- Full Text
- View/download PDF
Catalog
Discovery Service for Jio Institute Digital Library
For full access to our library's resources, please sign in.