Interoperability Requirement to Enhance Collaboration in Software Product Lines: A Systematic Mapping
Resumo
[Background]: Software Product Lines (SPLs) have been widely discussed in literature as part of solution to build systems solutions in a collaborative way. Providing interoperability support is an essential requirement to achieve effective results in collaborative systems field. Despite the importance of interoperability in SPLs, research related to this field is scarce and scattered in literature. Fulfilling this requirement is not a trivial task and a mapping study about which interoperability solutions have been tackled in SPLs has not been done yet. [Goal]: This paper aims at identifying and classifying research related to interoperability in SPLs. [Method]: Conduct a systematic mapping to identify and classify SPL interoperability solutions. [Results]: The classifications showed that syntactic was the main addressed interoperability level and that architecture and variability issues were the focus of the SPL researches. [Conclusions]: The results have suggested that an expressive number of solutions related to the syntactic interoperability level were proposed. However, some challenges remain opened, such as providing higher interoperability level support, for example, regarding pragmatic, dynamic and conceptual interoperability solutions.
Referências
Bastida, L. and Nieto, F. J. (2007) “Context-Aware Service Compositions: A Way to Facilitate Interoperability”. In: Enterprise Interoperability II, Springer London, pages 427-430.
Bernstein P. A. (1996) “Middleware: A Model for Distributed System Services.” In: Communications of the ACM. New York. vol. 39, n. 2, pages 86-98.
Bosch, J. (2009) “From software product lines to software ecosystems.” In: Software Product Line Conference (SPLC), San Francisco, CA, USA: ACM, Carnegie Mellon University, vol. 446, pages 111-119.
C4ISR Architecture Working Group. (1998), “Levels of information systems interoperability (LISI)”. March, 30.
Clements, P.C. and Northrop, L. (2001) Software Product Lines: Practices and Patterns. Addison-Wesley.
Dobrev P., Kalaydjiev O., Angelova G. (2007) “From Conceptual Structures to Semantic Interoperability of Content”. Bookchapter in Conceptual Structures: Knowledge Architectures for Smart Applications, Springer Verlag, pages. 192-205.
Dhungana D, Seichter D, Botterweck G, Rabiser R, Grunbacher P, Benavides D, Galindo JA. (2011) “Configuration of multi product lines by bridging heterogeneous variability modeling approaches”. In: Software Product Line Conference (SPLC), pages 120-129.
Ellis, C.A., Gibbs, S.J. and Rein, G. (1991) “Groupware: some issues and experiences”. In: Communications of the ACM, vol. 34, n. 1, pages 39-58.
GridWise Architecture Council Interoperability Framework Team. (2007) “Interoperability Context-Setting Framework”, V1.0, July.
Kitchenham, B. A., Budgen, D. amd Brereton, O. P. (2011) “Using Mapping Studies as the Basis for Further Research - A Participant-Observer Case Study”. In: Information & Software Technology, vol. 53, n. 6, pages 638-651.
Kitchenham, B. and Charters, S. (2007) “Guidelines for Performing Systematic Literature Reviews in Software Engineering” Technical Report, Keele University and Durham University Joint Report.
Kitchenham, B. (2010) “What’s up with software metrics? – A preliminary mapping study”. In: Journal of systems and software, vol. 83, n. 1, pages 37-51.
Kitchenham, B.A., Dyba, T., Jorgensen, M. (2004) “Evidence-Based Software Engineering”. In: Proceedings of the 26th International Conference on Software Engineering, (ICSE ’04), IEEE Computer Society, Washington DC, USA, pages 273-281.
Morris, C. W. (1938), “Foundations of the Theory of Signs”.
Morris, E., Levine, L., Meyers, C., Place, P., Plakosh, D. (2004) “SOSI: System of Systems Interoperability”, vol. 5, n. 573.
NATO Allied Data Publication 34 (ADatP-34). (2003) “NATO C3 Technical Architecture (NC3TA)”, Version 4.0.
Neiva, F.W., David, J.M.N., Braga, R. and Campos, F. (2016) “Towards Pragmatic Interoperability to Support Collaboration: A Systematic Review and Mapping of the Literature”. In: Information and Software Technology, vol. 72, pages 137-150.
Neiva, F.W., David, J.M.N., Braga, R., Campos, F. and Freitas, V. (2015) “PRIME: Pragmatic Interoperability Architecture to Support Collaborative Development of Scientific Workflows”. In: Proceedings of the 2015 IX Brazilian Symposium on Components, Architectures and Reuse Software (SBCARS), pages 50-59.
Papakonstantinou, Y. and Vassalos, V. (2001) “The Enosys Markets Data Integration Platform: Lessons from the Trenches”. In: Proceedings of the International Conference on Information and Knowledge Management, pages 538-540.
Papazoglou, M.P., Traverso, P., Dustdar, S. and Leymann, F. (2007) “Service-oriented computing: state of the art and research challenges”. In: Computer, n. 11, pages 38-45.
Petersen, K., Feldt, R., Shahid, M. and Mattsson, M. (2008) “Systematic Mapping Studies in Software Engineering”. In: Proceedings of the 12th international conference on Evaluation and Assessment in Software Engineering (EASE'08), pages 68-77.
Petticrew, M. and Roberts, H. (2008) “Systematic reviews in the social sciences: A practical guide”. John Wiley and Sons.
Pohl, K., Bockle, G., Linden, F.V.D. (2005), Software Product Line Engineering, Springer.
Prikladnicki, R. and Audy, J.L.N. (2010) “Process Models in the Practice of Distributed Software Development: A Systematic Review of the Literature”. In: Information & Software Technology, vol. 52, n. 8, pages 779-791.
Siegmund, N., Pukall, M., Soffner, M., Koppen, V. and Saake, G. (2009) “Using Software Product Lines for Runtime Interoperability”. In: Proceedings of the Workshop on AOP and Meta-Data for Software Evolution, RAM-SE'09, n. 4.
Silva, A. P. D., Costa, E., Bittencourt, I. I., Brito, P. H. S., Holanda, O. and Melo, J. (2010) “Ontology-Based Software Product Line for Building Semantic Web Applications”. In: Proceedings of the 2010 Workshop on Knowledge-Oriented Product Line Engineering, KOPLE'10, ACM Special Interest Group on Programming Languages (SIGPLAN), n. 1, pages 1- 6.
Steinmacher, I., Chaves, A.P. and Gerosa, M.A. (2012) “Awareness Support in Distributed Software Development: A Systematic Review and Mapping of the Literature”. In: Computer Supported Cooperative Work (CSCW), vol. 22, n. 2-3, pages 113-158.
Sugumaran, V., Sooyong, P., and Kyo, C. K. (2006) “Software Product Line Engineering”. In: Communications of the ACM, vol. 49, n. 12, pages 28-32.
Tolk, A. and Muguira J.A. (2003) “The Levels of Conceptual Interoperability Model”. In: Proceedings of the Fall Simulation Interoperability Workshop. Orlando, Florida: Simulation Interoperability Standards Organization, pages 1-10.
Tolk, A., Diallo, S.Y., Turnitsa, C.D. (2007) “Applying the Levels of Conceptual Interoperability Model in Support of Integratability, Interoperability, and Composability for System-of-Systems Engineering” In: Journal of Systemics, Cybernetics and Informatics, vol. 5, n. 5, pages 65-74.
Zeigler, B.P., Hammonds, P.E. (2007), Modeling & Simulation-Based Data Engineering: Introducing Pragmatics into Ontologies for Net-Centric Information Exchange, Academic Press.