Draco: a method for engineering reusable software systems
Software reusability: vol. 1, concepts and models
KIDS: A Semiautomatic Program Development System
IEEE Transactions on Software Engineering
A domain-specific software architecture engineering process outline
ACM SIGSOFT Software Engineering Notes
Component software: beyond object-oriented programming
Component software: beyond object-oriented programming
Generative programming: methods, tools, and applications
Generative programming: methods, tools, and applications
Functional paleontology: system evolution as the user sees it
ICSE '01 Proceedings of the 23rd International Conference on Software Engineering
DARE: Domain analysis and reuse environment
Annals of Software Engineering
The evolution matrix: recovering software evolution using software visualization techniques
IWPSE '01 Proceedings of the 4th International Workshop on Principles of Software Evolution
What Are Ontologies, and Why Do We Need Them?
IEEE Intelligent Systems
Concepts and Guidelines of Feature Modeling for Product Line Software Engineering
ICSR-7 Proceedings of the 7th International Conference on Software Reuse: Methods, Techniques, and Tools
Specware: Formal Support for Composing Software
MPC '95 Mathematics of Program Construction
Polymetric Views-A Lightweight Visual Approach to Reverse Engineering
IEEE Transactions on Software Engineering
Process-Centric Analytical Processing of Version Control Data
IWPSE '03 Proceedings of the 6th International Workshop on Principles of Software Evolution
CVS Release History Data for Detecting Logical Couplings
IWPSE '03 Proceedings of the 6th International Workshop on Principles of Software Evolution
Journal of Software Maintenance and Evolution: Research and Practice - Analyzing the Evolution of Large-Scale Software
On the Design and Development of Program Families
IEEE Transactions on Software Engineering
A study of cross-validation and bootstrap for accuracy estimation and model selection
IJCAI'95 Proceedings of the 14th international joint conference on Artificial intelligence - Volume 2
On the problems with evolving Egemin's software product line
Proceedings of the 2nd International Workshop on Product Line Approaches in Software Engineering
Domain modeling as a basis for building a meshing tool software product line
Advances in Engineering Software
Hi-index | 0.00 |
In rapidly evolving domains such as Computer Assisted Orthopaedic Surgery (CAOS) emphasis is often put first on innovation and new functionality, rather than in developing the common infrastructure needed to support integration and reuse of these innovations. In fact, developing such an infrastructure is often considered to be a high-risk venture given the volatility of such a domain. We present CompAS, a method that exploits the very evolution of innovations in the domain to carry out the necessary quantitative and qualitative commonality and variability analysis, especially in the case of scarce system documentation. We show how our technique applies to the CAOS domain by using conference proceedings as a key source of information about the evolution of features in CAOS systems over a period of several years. We detect and classify evolution patterns to determine functional commonality and variability. We also identify non-functional requirements to help capture domain variability. We have validated our approach by evaluating the degree to which representative test systems can be covered by the common and variable features produced by our analysis.