State of the Practice in Service Identification for SOA Migration in Industry, Service-Oriented Computing -16th International Conference, vol.6, pp.634-650, 2018. ,
Static extraction and conformance analysis of hierarchical runtime architectural structure using annotations, Object-Oriented Programming, Systems, Languages and Applications (OOPSLA), vol.32, 2009. ,
, Service Identification Based on Quality Metrics Object-Oriented Legacy System Migration Towards SOA, SEKE: Software Engineering and Knowledge Engineering, pp.1-6, 2014.
Reconstruction of execution architecture view using dependency relationships and execution traces, Proceedings of the 33rd Annual ACM Symposium on Applied Computing, SAC 2018, pp.1417-1424, 2018. ,
The theory of parsing, translation, and compiling, vol.1, 1972. ,
Anti patterns session notes, Object World, vol.78, 1996. ,
An analysis of the design and definitions of Halstead metrics, IWSM, vol.47, 2005. ,
, Samer Raad Azzawi Al-Rubaye and Yunus Emre Selcuk. An investigation of code cycles and Poltergeist anti-pattern, Software Engineering and Service Science (ICSESS), pp.139-140, 2017.
A service identification framework for legacy system migration into SOA, Services Computing (SCC), 2010 IEEE International Conference on, vol.18, pp.614-617, 2010. ,
Inferring hierarchical motifs from execution traces, Proceedings of the 40th International Conference on Software Engineering, ICSE 2018, vol.74, pp.776-787, 2018. ,
Towards a Framework to Assess Legacy Systems, IEEE International Conference on Systems, Man, and Cybernetics, vol.3, pp.924-928, 2013. ,
Control flow analysis, ACM Sigplan Notices, vol.5, pp.1-19, 1970. ,
Graph-theoretic constructs for program control flow analysis, IBM Thomas J. Watson Research Center, vol.68, 1972. ,
Houari Sahraouiet al. From object-oriented applications to component-oriented applications via component-oriented architecture, Working IEEE/IFIP Conference on Software Architecture (WICSA), 2011. ,
Migrating large object-oriented Applications into component-based ones: instantiation and inheritance transformation, GPCE, 2015. (Cité aux pages 16, vol.32, p.30, 2015. ,
URL : https://hal.archives-ouvertes.fr/lirmm-01235461
, Materializing Architecture Recovered from Object-Oriented Source Code in ComponentBased Languages, -10th European Conference on Software Architecture ECSA 2016, vol.16, pp.309-325, 2016.
Empirical evaluation of diagrams of the run-time structure for coding tasks, Working Conference on Reverse Engineering (WCRE), 2012. ,
, Eudisley Gomes dos Anjos. Assessing Maintainability in Software Architectures, vol.5, 2017.
Software reengineering, 1993. ,
, Usage-Aware Service Identification for Architecture Migration of Object-Oriented Systems to SoA, International Conference on Database and Expert Systems Applications, pp.54-64, 2017.
Fast static analysis of C++ virtual function calls, ACM Sigplan Notices, vol.31, issue.10, pp.324-341, 1996. ,
CodeMetropolis -code visualisation in MineCraft, 13th IEEE International Working Conference on Source Code Analysis and Manipulation, SCAM 2013, vol.28, pp.136-141, 2013. ,
CodeMetropolis: Eclipse over the city of source code, 15th IEEE International Working Conference on Source Code Analysis and Manipulation, SCAM 2015, vol.28, pp.271-276, 2015. ,
A validation of object-oriented design metrics as quality indicators, IEEE Transactions on software engineering, vol.22, issue.10, pp.751-761, 1996. ,
Primary drivers of software maintenance cost studied using longitudinal data, vol.5, 2013. ,
Decision model for legacy systems, IEE Proceedings-Software, vol.146, issue.3, pp.153-159, 1999. ,
Mining static and dynamic crosscutting concerns: a role-based approach, Journal of Software: Evolution and Process, vol.28, issue.5, pp.306-339, 2016. ,
An architecture-centric approach for producing quality systems, Quality of Software Architectures and Software Quality, 2005. ,
The concept assignment problem in program understanding, Proceedings of the 15th international conference on Software Engineering, vol.6, pp.482-498, 1993. ,
Tool-Supported Refactoring of Existing Object-Oriented Code into Aspects, IEEE Trans. Software Eng, vol.32, issue.9, pp.698-717, 2006. ,
Latent dirichlet allocation, Journal of machine Learning research, vol.3, pp.993-1022, 2003. ,
Quantitative Evaluation of Software Quality, Proceedings of the 2nd International Conference on Software Engineering, vol.2, pp.592-605, 1976. ,
Beauty and the Beast: on the readability of object-oriented example programs, Software quality journal, vol.24, issue.2, pp.231-246, 2016. ,
Quantifying the analyzability of software architectures, Working IEEE/IFIP Conference on Software Architecture (WICSA), 2011. (Cité aux pages 95, vol.96, 2011. ,
Linux as a case study: Its extracted software architecture, Proceedings of the 21st international conference on Software engineering, vol.108, pp.555-563, 1999. ,
Aspect Mining Using Event Traces, 19th IEEE International Conference on Automated Software Engineering (ASE 2004, vol.24, pp.310-315, 2004. ,
Toward the reverse engineering of UML sequence diagrams for distributed Java software, IIEEE Trans on Soft Eng, vol.28, 2006. ,
Refactoring Software, Architectures, and Projects in Crisis, vol.78, 1998. ,
Using service-oriented architecture and component-based development to build web service applications, Rational Software Corporation, vol.6, pp.1-16, 2002. ,
A wrapping approach for migrating legacy system interactive functionalities to Service Oriented Architectures, Journal of Systems and Software, vol.81, issue.4, pp.463-480, 2008. ,
Migrating Object Oriented code to Aspect Oriented Programming, 23rd IEEE International Conference on Software Maintenance (ICSM 2007), vol.30, pp.497-498, 2007. ,
Automatic Support for the Migration Towards Aspects, 12th European Conference on Software Maintenance and Reengineering, vol.30, pp.298-301, 2008. ,
Effects of cloned code on software maintainability: A replicated developer study, 20th Working Conference on Reverse Engineering, vol.30, pp.112-121, 2013. ,
A Prototypes-Embedded Genetic K-means Algorithm, 18th International Conference on Pattern Recognition, vol.99, pp.724-727, 2006. ,
A metrics suite for object oriented design, IEEE Transactions on software engineering, vol.20, issue.6, pp.476-493, 1994. ,
Reverse engineering and design recovery: A taxonomy, IEEE software, vol.7, issue.1, pp.13-17, 1990. ,
Flexible, reliable software: using patterns and agile development, vol.102, 2011. ,
Extracting reusable components: A semi-automated approach for complex structures, Constantinou 2015] Eleni Constantinou, Athanasios Naskos, vol.7850, 2013. ,
A simple, fast dominance algorithm. Soft Prac & Exper, vol.68, 2001. ,
Weighing lexical information for software clustering in the context of architecture recovery, Empirical Software Engineering, vol.21, issue.1, pp.72-103, 2016. ,
A systematic survey of program comprehension through dynamic analysis, IEEE Transactions on Software Engineering, vol.35, issue.5, pp.684-702, 2009. ,
Trace visualization for program comprehension: A controlled experiment, International Conference on Program Comprehension (ICPC), 2009. ,
Managing legacy system costs: A case study of a meta-assessment model to identify solutions in a large financial services company, Applied computing and informatics, vol.13, issue.2, pp.175-183, 2017. ,
Effect of Modularity on Maintainability of Rule-Based Systems, International Journal of Man-Machine Studies, vol.32, issue.4, pp.439-447, 1990. ,
On-the-fly extraction of hierarchical object graphs, Journal of the Brazilian Computer Society (JBCS), vol.32, p.28, 2013. ,
Optimization of object-oriented programs using static class hierarchy analysis, European Conference on Object-Oriented Programming, vol.102, pp.77-101, 1995. ,
A Model for Software Product Quality, IEEE Trans. Software Eng, vol.21, issue.2, pp.146-162, 1995. ,
Benedikt Hauptmann, Rudolf Vaas and Karl-Heinz Prommer. How much does unused code matter for maintenance, 34th International Conference on Software Engineering, ICSE 2012, vol.30, pp.1102-1111, 2012. ,
What to Fix? Distinguishing between design and non-design rules in automated tools, International Conference on Software Architecture(ICSA, vol.95, 2017. ,
SOAF: An architectural framework for service definition and realization, Services Computing, 2006. SCC'06. IEEE International Conference on, vol.99, pp.151-158, 2006. ,
Towards the understanding and evolution of monolithic applications as microservices, Computing Conference (CLEI), pp.1-11, 2016. ,
Foundations of a simple and unified componentoriented language, Computer Languages, Systems & Structures, vol.34, issue.2, pp.130-149, 2008. ,
Comparing trace visualizations for program comprehension through controlled experiments, International Conference on Program Comprehension (ICPC), vol.74, 2015. ,
Software landscape and application visualization for system comprehension with ExplorViz, Information & Software Technology, vol.87, pp.259-277, 2017. ,
Dynamic architecture extraction, FATES/RV. Springer, 2006. (Cité aux pages 27, vol.32, p.28 ,
Refactoring: improving the design of existing code, vol.37, p.31, 1999. ,
Using Dynamic Analysis and Clustering for Implementing Services by Reusing Legacy Code, 18th Working Conference on Reverse Engineering, vol.30, p.20, 2011. ,
Software sizing, estimation, and risk management: when performance is measured performance improves, vol.5, 2006. ,
Design patterns: Elements of reusable software architecture, vol.37, 1995. ,
Enhancing architectural recovery using concerns, Proceedings of the 2011 26th IEEE/ACM International Conference on Automated Software Engineering, vol.32, p.30, 2011. ,
A comparative analysis of software architecture recovery techniques, Automated Software Engineering (ASE), vol.104, 2013. ,
Chris Mattmannet al. Obtaining groundtruth software architectures, International Conference on Software Engineering (ICSE), vol.108, 2013. ,
Obtaining ground-truth software architectures, 35th International Conference on Software Engineering, ICSE '13, vol.104, pp.901-910, 2013. ,
Systematic testing of refactoring engines on real software projects, European Conference on Object-Oriented Programming, vol.42, pp.629-653, 2013. ,
Practical software metrics for project management and process improvement, vol.2, 1992. ,
Agent-based service-oriented computing, vol.18, 2010. ,
The Eclipse 3.0 platform: Adopting OSGi technology, IBM Systems Journal, vol.44, issue.2, pp.289-300, 2005. ,
Service cutter: A systematic approach to service decomposition, European Conference on Service-Oriented and Cloud Computing, vol.32, pp.185-200, 2016. ,
URL : https://hal.archives-ouvertes.fr/hal-01638590
Multi-angle Evaluations of Test Cases Based on Dynamic Analysis, International Conference on Advanced Data Mining and Applications (ADMA), vol.70, 2014. ,
Measuring effectiveness of graph visualizations: A cognitive load perspective. Information Visualization, vol.73, 2009. ,
Combining K-Means and a genetic algorithm through a novel arrangement of genetic operators for high quality clustering, Expert Syst. Appl, vol.91, pp.402-417, 2018. ,
, Systems and software Quality Requirements and Evaluation (SQuaRE). Rapport technique, 2008.
Business Component Identification -A Formal Approach, 5th International Enterprise Distributed Object Computing Conference, pp.183-187, 2001. ,
, Quality-centric approach for software component identification from object-oriented code, European Conference on Software Architecture(ECSA), vol.16, 2012.
Opening web applications for third-party development: a serviceoriented solution, Service Oriented Computing and Applications, vol.10, issue.4, pp.437-463, 2016. ,
A method engineering based legacy to SOA migration method, IEEE 27th International Conference on Software Maintenance, ICSM, vol.18, pp.163-172, 2011. ,
A structured legacy to SOA migration process and its evaluation in practice, 7th IEEE International Symposium on the Maintenance and Evolution of Service-Oriented and Cloud-Based Systems, MESOCA 2013, vol.18, pp.2-11, 2013. ,
A Systematic Method to Identify Software Components, 11th Asia-Pacific Software Engineering Conference (APSEC 2004), pp.538-545, 2004. ,
Feature-gathering dependency-based software clustering using Dedication and Modularity, 28th IEEE International Conference on Software Maintenance, ICSM 2012, vol.104, pp.462-471, 2012. ,
Patterns and antipatterns. The patterns handbook: techniques, strategies, and applications, vol.13, p.383, 1998. ,
Quantitative Measurement of Scientific Software Quality: Definition of a Novel Quality Model, International Journal of Software Engineering and Knowledge Engineering, vol.28, issue.3, p.407, 2018. ,
Technical debt: From metaphor to theory and practice, Ieee software, vol.29, pp.18-21, 2012. ,
Combining static and dynamic analyses to reverse-engineer scenario diagrams, International Conference on Software Maintenance (ICSM), vol.28, 2013. ,
Visualization-based analysis of quality for large-scale software systems, Automated Software Engineering (ASE), vol.28, 2005. ,
Automated extraction of rich software models from limited system information, Software Architecture (WICSA), 2016 13th Working IEEE/IFIP Conference on, vol.104, pp.99-108, 2016. ,
Object-oriented metrics in practice: using software metrics to characterize, evaluate, and improve the design of object-oriented systems, vol.78, 2007. ,
Arman Shahbazian and Nenad Medvidovic. An empirical study of architectural change in open-source software systems, Mining Software Repositories (MSR), 2015 IEEE/ACM 12th Working Conference on, vol.104, pp.235-245, 2015. ,
A reengineering process for migrating from an object-oriented legacy system to a component-based system, International Computer Software and Applications Conference (COMPSAC), pp.336-341, 2003. ,
How can diagramming tools help support programming activities, VL/HCC, p.31, 2008. ,
Metrics and laws of software evolution-the nineties view, Software metrics symposium, 1997. proceedings., fourth international, vol.2, pp.20-32, 1997. ,
A fast algorithm for finding dominators in a flowgraph. Programming Languages and Systems (TOPLAS), vol.68, 1979. ,
Towards a Technique for Extracting Microservices from Monolithic Enterprise Systems. CoRR, vol.22, 2016. ,
A Service-Oriented Componentization Framework for Java Software Systems, 13th Working Conference on Reverse Engineering, vol.30, p.32, 2006. ,
Ownership and Immutability Inference for UML-Based Object Access Control, 29th International Conference on Software Engineering (ICSE 2007), vol.86, pp.323-332, 2007. ,
Component interface identification and behavioral model discovery from software execution data, Proceedings of the 26th Conference on Program Comprehension, ICPC 2018, vol.17, pp.97-107, 2018. ,
UML Specification and Correction of Object-Oriented Antipatterns, International Conference on Software Engineering Advances (ICSEA), vol.80, 2009. ,
A Decisional Framework for Legacy System Management, 2001 International Conference on Software Maintenance, ICSM, vol.3, p.642, 2001. ,
Detecting the Behavior of Design Patterns through Model Checking and Dynamic Analysis, ACM Trans. Softw. Eng. Methodol, vol.26, issue.4, pp.1-13, 2018. ,
Comparing Software Architecture Recovery Techniques Using Accurate Dependencies, 37th IEEE/ACM International Conference on Software Engineering, vol.2, pp.69-78, 2015. ,
Measuring the Impact of Code Dependencies on Software Architecture Recovery Techniques, IEEE Trans. Software Eng, vol.44, issue.2, pp.159-181, 2018. ,
Identifying Aspects Using Fan-In Analysis, 11th Working Conference on Reverse Engineering, vol.24, pp.132-141, 2004. ,
Extraction of Microservices from Monolithic Software Architectures, IEEE International Conference on Web Services, pp.524-531, 2017. ,
Osgi and equinox: Creating highly modular java systems, vol.99, 2010. ,
Factors in software quality. volume i. concepts and definitions of software quality. Rapport technique, vol.2, 1977. ,
The three rs of software automation: reengineering, repository, reusability, NJ, 1992. ,
Composition inference for UML class diagrams, Autom. Softw. Eng, vol.14, issue.2, pp.179-213, 2007. ,
An introduction to genetic algorithms, vol.98, 1998. ,
On the automatic modularization of software systems using the bunch tool, IEEE Transactions on Software Engineering, vol.32, issue.3, pp.193-208, 2006. ,
Extracting service candidates from procedural programs based on process dependency analysis, Services Computing Conference, vol.99, pp.484-491, 2009. ,
Building microservices: designing fine-grained systems, vol.21, 2015. ,
Maintainability defects detection and correction: a multiobjective approach, Autom. Softw. Eng, vol.20, issue.1, p.31, 2013. ,
A novel software visualisation model to support software comprehension, Working Conference on Reverse Engineering (WCRE), vol.75, 2004. ,
An Empirical Study of Cohesion and Coupling: Balancing Optimization and Disruption, IEEE Trans. Evolutionary Computation, vol.22, issue.3, pp.394-414, 2018. ,
Nicolas Petitprezet al. Spoon: A Library for Implementing Analyses and Transformations of Java Source Code. Software: Practice and Experience, vol.103, 2015. ,
Spoon: A Library for Implementing Analyses and Transformations of Java Source Code, Software: Practice and Experience, vol.46, pp.1155-1179, 2015. ,
URL : https://hal.archives-ouvertes.fr/hal-01078532
Excessive Dynamic Memory Allocations" Software Performance Anti-Pattern, Proceedings of the 7th ACM/SPEC International Conference on Performance Engineering, vol.32, pp.237-248, 2016. ,
Improving modular structure of software system using structural and lexical dependency, formation and Software Technology, 2017. ,
Towards standard for experiments in program comprehension, International Workshop on Program Comprehension (IWPC), vol.74, 1997. ,
A comparative study of many-objective evolutionary algorithms for the discovery of software architectures, Empirical Software Engineering, vol.95, 2016. ,
A Method for Assessing Legacy Systems for Evolution, 2nd Euromicro Conference on Software Maintenance and Reengineering (CSMR '98), vol.3, pp.128-134, 1998. ,
Object-oriented design heuristics, vol.79, 1996. ,
Multi-Objective Reconstruction of Software Architecture, International Journal of Software Engineering and Knowledge Engineering, vol.28, issue.6, p.869, 2018. ,
The state of software maintenance, IEEE Transactions on Software Engineering, vol.5, issue.3, pp.303-310, 1987. ,
Modernizing legacy systems: software technologies, engineering processes, and business practices, vol.3, 2003. ,
Pattern-based design recovery of Java software, ACM SIGSOFT Software Engineering Notes, vol.23, pp.10-16, 1998. ,
, Re-architecting OO Software into Microservices -A Quality-Centred Approach, Service-Oriented and Cloud Computing -7th IFIP WG 2.14 European Conference, pp.65-73, 2018.
On the automation of dependency-breaking refactorings in java, 29th IEEE International Conference on, p.31, 2013. ,
Saeed Jalili and Seyed Mohammad Hossein Hasheminejad. Identification of System Software Components Using Clustering Approach, Journal of Object Technology, vol.9, issue.6, pp.77-98, 2010. ,
Mining Software Components from Object-Oriented APIs, Software Reuse for Dynamic Systems in the Cloud and Beyond -14th International Conference on Software Reuse, ICSR 2015, pp.330-347, 2015. ,
URL : https://hal.archives-ouvertes.fr/lirmm-01324282
, Reverse engineering reusable software components from object-oriented APIs, Journal of Software and Systems, vol.17, 2016.
A Systematic Method for Architecture Recovery, ENASE 2015 -Proceedings of the 10th International Conference on Evaluation of Novel Approaches to Software Engineering, pp.29-30, 2015. ,
, Ian Sommervilleet al. Software engineering, vol.2, 2011.
Automatic distribution of object oriented programs, p.31, 2002. ,
Case study on which relations to use for clustering-based software architecture recovery, Empirical Software Engineering, vol.22, issue.4, pp.1717-1762, 2017. ,
Decoupling classes with inferred interfaces, SAC, 2006. (Cité aux pages 26, vol.37, p.31 ,
Detecting patterns and antipatterns in software using Prolog rules, Computational Cybernetics and Technical Informatics (ICCC-CONTI), 2010 International Joint Conference on, vol.79, pp.253-258, 2010. ,
, User interface reverse engineering in support of interface migration to the web, Automated Software Engineering, vol.10, issue.3, pp.271-301, 2003.
Componentoriented programming, Lecture Notes in Computer Science, 1999. ,
Component software -beyond object-oriented programming, vol.16, 2002. ,
Software lifetime and its evolution process over generations, Software Maintenance, 1992. Proceerdings., Conference on, vol.2, pp.63-69, 1992. ,
A gentle introduction to OSGi, ACM SIGSOFT Software Engineering Notes, vol.33, issue.5, 2008. ,
Perspectives on legacy system reengineering, 1995. ,
Aspect Mining through the Formal Concept Analysis of Execution Traces, 11th Working Conference on Reverse Engineering, vol.24, pp.112-121, 2004. ,
Reverse engineering of object oriented code, International Conference on Software Engineering (ICSE), vol.53, 2005. ,
Identifying Refactoring Opportunities Using Logic Meta Programmin, 7th European Conference on Software Maintenance and Reengineering (CSMR 2003, p.31, 2003. ,
Mining Aspectual Views using Formal Concept Analysis, 4th IEEE International Workshop on Source Code Analysis and Manipulation (SCAM 2004, vol.24, pp.97-106, 2004. ,
The orphan adoption problem in architecture maintenance, Proceedings of the Fourth Working Conference on, vol.29, pp.76-82, 1997. ,
MoJo: A distance metric for software clusterings, Proceedings. Sixth Working Conference on, vol.104, pp.187-193, 1999. ,
Acdc: An algorithm for comprehension-driven clustering, wcre, vol.32, p.29, 2000. ,
Software engineering: principles and practice, vol.3, 1993. ,
Object graphs with ownership domains: An empirical study. In Aliasing in Object-Oriented Programming. Types, Analysis and Verification, vol.71, 2013. ,
The essence of object-oriented programming with java and uml, vol.58, 2002. ,
Automatic partitioning of object-oriented programs for resource-constrained mobile devices with multiple distribution objectives, International Conference on Parallel and Distributed Systems (ICPADS), vol.32, 2008. ,
A Metrics Suite for Measuring Reusability of Software Components, 9th IEEE International Software Metrics Symposium, vol.19, p.211, 2003. ,
A technique for automatic component extraction from object-oriented programs by refactoring. Science of Computer programming, The software maintainability index revisited, 2001. ,
, , vol.14, pp.18-21, 2001.
Software systems as cities: a controlled experiment, International Conference on Software Engineering (ICSE), vol.28, 2011. ,
Comparison of Clustering Algorithms in the Context of Software Evolution, 21st IEEE International Conference on Software Maintenance (ICSM 2005), vol.104, pp.525-535, 2005. ,