Verifying and validating software requirements and design specifications
Software risk management
Design patterns: elements of reusable object-oriented software
Design patterns: elements of reusable object-oriented software
A Component- and Message-Based Architectural Style for GUI Software
IEEE Transactions on Software Engineering - Special issue: best papers of the 17th International Conference on Software Engineering (ICSE-17)
The Unified Modeling Language user guide
The Unified Modeling Language user guide
A language and environment for architecture-based software development and evolution
Proceedings of the 21st international conference on Software engineering
A stakeholder win–win approach to software engineering education
Annals of Software Engineering - Special issue on software engineering education
A Classification and Comparison Framework for Software Architecture Description Languages
IEEE Transactions on Software Engineering
Investigating and improving a COTS-based software development
Proceedings of the 22nd international conference on Software engineering
Modeling software architectures in the Unified Modeling Language
ACM Transactions on Software Engineering and Methodology (TOSEM)
Software Cost Estimation with Cocomo II with Cdrom
Software Cost Estimation with Cocomo II with Cdrom
Automated abstraction of class diagrams
ACM Transactions on Software Engineering and Methodology (TOSEM)
COTS Integration: Plug and Pray?
Computer
COTS-Based Systems Top 10 List
Computer
Architectural Mismatch: Why Reuse Is So Hard
IEEE Software
Architectural Mismatch: Why Reuse Is So Hard
IEEE Software
Acquiring COTS Software Selection Requirements
IEEE Software
Developing New Processes for COTS-Based Systems
IEEE Software
An Event-Based Architecture Definition Language
IEEE Transactions on Software Engineering
Proceedings of the First International Conference on COTS-Based Software Systems
ICCBSS '02 Proceedings of the First International Conference on COTS-Based Software Systems
Describing Software Architecture with UML
WICSA1 Proceedings of the TC2 First Working IFIP Conference on Software Architecture (WICSA1)
The ISI Visual Design Editor Generator
VL '99 Proceedings of the IEEE Symposium on Visual Languages
Statechart Simulator for Modeling Architectural Dynamics
WICSA '01 Proceedings of the Working IEEE/IFIP Conference on Software Architecture
Scalable Consistency Checking Between Diagrams-The ViewIntegra Approach
Proceedings of the 16th IEEE international conference on Automated software engineering
CORBA: integrating diverse applications within distributed heterogeneous environments
IEEE Communications Magazine
Instant consistency checking for the UML
Proceedings of the 28th international conference on Software engineering
UML/Analyzer: A Tool for the Instant Consistency Checking of UML Models
ICSE '07 Proceedings of the 29th international conference on Software Engineering
Fixing Inconsistencies in UML Design Models
ICSE '07 Proceedings of the 29th international conference on Software Engineering
Adapting COTS Applications: an Experience Report
IWICSS '07 Proceedings of the Second International Workshop on Incorporating COTS Software into Software Systems: Tools and Techniques
A Service-Oriented Blueprint for COTS Integration: the Hidden Part of the Iceberg
IWICSS '07 Proceedings of the Second International Workshop on Incorporating COTS Software into Software Systems: Tools and Techniques
Supporting high interoperability of components by adopting an agent-based approach
Software Quality Control
"Program, enhance thyself!": demand-driven pattern-oriented program enhancement
Proceedings of the 7th international conference on Aspect-oriented software development
Integrating heterogeneous components in software supply chains
Proceedings of the 2010 ICSE Workshop on Product Line Approaches in Software Engineering
Automated assembly of Internet-scale software systems involving autonomous agents
Journal of Systems and Software
Using MDA for integration of heterogeneous components in software supply chains
SPLC'10 Proceedings of the 14th international conference on Software product lines: going beyond
Incremental consistency checking of dynamic constraints
FASE'10 Proceedings of the 13th international conference on Fundamental Approaches to Software Engineering
Maintaining life perspectives during the refinement of UML class structures
FASE'05 Proceedings of the 8th international conference, held as part of the joint European Conference on Theory and Practice of Software conference on Fundamental Approaches to Software Engineering
Automating integration of heterogeneous COTS components
ICSR'06 Proceedings of the 9th international conference on Reuse of Off-the-Shelf Components
Using MDA for integration of heterogeneous components in software supply chains
Science of Computer Programming
Hi-index | 0.00 |
Commercial-off-the-shelf (COTS) software tends to be cheap, reliable, and functionally powerful due to its large user base. It has thus become highly desirable to incorporate COTS software into software products (systems) as it can significantly reduce development cost and effort, while maintaining overall software product quality and increasing product acceptance. However, incorporating COTS software into software products introduces new complexities that developers are currently ill equipped to handle. Most significantly, while COTS software frequently contains programmatic interfaces that allow other software components to obtain services from them on a direct call basis, they usually lack the ability to initiate interactions with other components. This often leads to problems of state and/or data inconsistency. This paper presents a framework for integrating COTS software as proactive components within a software system that maintain the consistency of the state and data they share with other components. The framework utilizes a combination of low-level instrumentation and high-level reasoning to expose the relevant internal activities within a COTS component required to initiate the communication needed to maintain consistency with the other components with which it shares state and data. We will illustrate these capabilities through the integration of IBM's Rational Rose into a design suite and demonstrate how our framework solves the complex data synchronization problems that arise from this integration.