Design patterns: elements of reusable object-oriented software
Design patterns: elements of reusable object-oriented software
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
N degrees of separation: multi-dimensional separation of concerns
Proceedings of the 21st international conference on Software engineering
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
Software Cost Estimation with Cocomo II with Cdrom
Software Cost Estimation with Cocomo II with Cdrom
COTS Integration: Plug and Pray?
Computer
Architectural Mismatch: Why Reuse Is So Hard
IEEE Software
Architectural Mismatch: Why Reuse Is So Hard
IEEE Software
An Event-Based Architecture Definition Language
IEEE Transactions on Software Engineering
Semantic Abstraction Rules for Class Diagrams
ASE '00 Proceedings of the 15th IEEE international conference on Automated software engineering
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
CORBA: integrating diverse applications within distributed heterogeneous environments
IEEE Communications Magazine
A comprehensive conceptual analysis using ER and conceptual graphs
Journal of Experimental & Theoretical Artificial Intelligence - Special issue: conceptual graphs workshop
Dynamic analysis for reverse engineering and program understanding
ACM SIGAPP Applied Computing Review
3rd international workshop on Adoption-Centric Software Engineering ACSE 2003
Proceedings of the 25th International Conference on Software Engineering
Experiences Integrating and Scaling a Performance Test Bed Generator with an Open Source CASE Tool
Proceedings of the 19th IEEE international conference on Automated software engineering
Instant and Incremental Transformation of Models
Proceedings of the 19th IEEE international conference on Automated software engineering
Architecture differencing for self management
WOSS '04 Proceedings of the 1st ACM SIGSOFT workshop on Self-managed systems
Hi-index | 0.00 |
It is becoming increasingly desirable to incorporateCommercial-off-the-Shelf (COTS) tools as softwarecomponents into larger software systems. Due to theirlarge user base, COTS tools tend to be cheap, reasonablyreliable, and functionally powerful. Reusing them ascomponents has the benefit of significantly reducingdevelopment cost and effort.Despite these advantages, developers encounter majorobstacles in integrating most COTS tools because thesetools have been constructed as stand-alone applicationsand make assumptions about their environment that donot hold when used as part of larger software systems.Most significantly, while they frequently containprogrammatic interfaces that allow other components toobtain services from them on a direct call basis, theyalmost always lack the notification and data synchronicityfacilities required for active integration.In this paper, we present an integration framework foradding these notification and data synchronizationfacilities to COTS tools so that they can be integrated asactive software components into larger systems. Weillustrate our integration framework through tool suiteswe constructed around Mathworks' Matlab/Stateflow andRational's Rose (two widely-used, large COTS tools). Ourexperience to date is that it is indeed possible totransform standalone COTS tools into softwarecomponents.