Software industry has evolved to multi-product and multi-platform development based on a mix of proprietary and open source components. Such integration has occurred in software ecosystems through a software product line engineering (SPLE) process. However, metadata are underused in the SPLE and interoperability challenge. The proposed method is first, a semantic metadata enrichment software ecosystem (SMESE) to support multi-platform metadata driven applications, and second, based on mapping ontologies SMESE aggregates and enriches metadata to create a semantic master metadata catalogue (SMMC). The proposed SPLE process uses a component-based software development approach for integrating distributed content management enterprise applications, such as digital libraries. To perform interoperability between existing metadata models (such as Dublin Core, UNIMARC, MARC21, RDF/RDA and BIBFRAME), SMESE implements an ontology mapping model. SMESE consists of nine sub-systems: 1) Metadata initiatives & concordance rules; 2) Harvesting of web metadata & data; 3) Harvesting of authority metadata & data; 4) Rule-based semantic metadata external enrichment; 5) Rule-based semantic metadata internal enrichment; 6) Semantic metadata external & internal enrichment synchronization; 7) User interest-based gateway; 8) Semantic master catalogue. To conclude, this paper proposes a decision support process, called SPLE decision support process (SPLE-DSP) which is then used by SMESE to support dynamic reconfiguration. SPLE-DSP consists of a dynamic and optimized metadata-based reconfiguration model. SPLE-DSP takes into account runtime metadata-based variability functionalities, context-awareness and self-adaptation. It also presents the design and implementation of a working prototype of SMESE applied to a semantic digital library.
KeywordsDigital LibraryMetadata EnrichmentSemantic Metadata EnrichmentSoftware EcosystemSoftware Product Line Engineering
Lacasta, J., Nogueras-Iso, J., Falquet, G., Teller, J. and Zarazaga-Soria, F.J. (2013) Design and Evaluation of a Semantic Enrichment Process for Bibliographic Databases. Data & Knowledge Engineering, 88, 94-107.
Manikas, K. and Hansen, K.M. (2013) Software Ecosystems—A Systematic Literature Review. Journal of Systems and Software, 86, 1294-1306.
Christensen, H.B., Hansen, K.M., Kyng, M. and Manikas, K. (2014) Analysis and Design of Software Ecosystem Architectures—Towards the 4S Telemedicine Ecosystem. Information and Software Technology, 56, 1476-1492.
Shinozaki, T., Yamamoto, Y. and Tsuruta, S. (2015) Context-Based Counselor Agent for Software Development Ecosystem. Computing, 97, 3-28. https://doi.org/10.1007/s00607-013-0352-y
Jansen, S. and Bloemendal, E. (2013) Defining App Stores: The Role of Curated Marketplaces in Software Ecosystems. In: Herzwurm, G. and Margaria, T., Eds., Software Business. From Physical Products to Software Services and Solutions: 4th International Conference, ICSOB 2013, Potsdam, Germany, 11-14 June 2013, Springer, Berlin, Heidelberg, 195-206.
Urli, S., Blay-Fornarino, M., Collet, P., Mosser, S. and Riveill, M. (2014) Managing a Software Ecosystem Using a Multiple Software Product Line: A Case Study on Digital Signage Systems. 40th EUROMICRO Conference on Software Engineering and Advanced Applications, Verona, 27-29 August 2014, 344-351. https://doi.org/10.1109/seaa.2014.23
Albert, B.E., dos Santos, R.P. and Werner, C.M.L. (2013) Software Ecosystems Governance to Enable IT Architecture Based on Software Asset Management. 7th IEEE International Conference on Digital Ecosystems and Technologies (DEST), Menlo Park, CA, 24-26 July 2013, 55-60. https://doi.org/10.1109/dest.2013.6611329
Musil, J., Musil, A. and Biffl, S. (2013) Elements of Software Ecosystem Early-Stage Design for Collective Intelligence Systems. Proceedings of the 2013 International Workshop on Ecosystem Architectures, Saint Petersburg, 19 August 2013, 21-25. https://doi.org/10.1145/2501585.2501590
da Silva Amorim, S., Almeida, E.S.D. and McGregor, J.D. (2013) Extensibility in Ecosystem Architectures: an Initial Study. Proceedings of the 2013 International Workshop on Ecosystem Architectures, Saint Petersburg, 19 August 2013, 11-15.
Mens, T., Claes, M., Grosjean, P. and Serebrenik, A. (2014) Studying Evolving Software Ecosystems based on Ecological Models. In: Mens, T., Serebrenik, A. and Cleve, A., Eds., Evolving Software Systems, Springer, Berlin, Heidelberg, 297-326. https://doi.org/10.1007/978-3-642-45398-4_10
dos Santos, R.P., Esteves, M.S., Freitas, G. and de Souza, J. (2014) Using Social Networks to Support Software Ecosystems Comprehension and Evolution. Social Networking, 3, 108-118. https://doi.org/10.4236/sn.2014.32014
Robillard, M.P. and Walker, R.J. (2014) An Introduction to Recommendation Systems in Software Engineering. In: Robillard, P.M., Maalej, W., Walker, J.R. and Zimmermann, T., Eds., Recommendation Systems in Software Engineering, Springer, Berlin, Heidelberg, 1-11. https://doi.org/10.1007/978-3-642-45135-5_1
Park, J.-G. and Lee, J. (2014) Knowledge Sharing in Information Systems Development Projects: Explicating the Role of Dependence and Trust. International Journal of Project Management, 32, 153-165.
Lim, S.L., Bentley, P.J., Kanakam, N., Ishikawa, F. and Honiden, S. (2015) Investigating Country Differences in Mobile App User Behavior and Challenges for Software Engineering. IEEE Transactions on Software Engineering, 41, 40-64. https://doi.org/10.1109/TSE.2014.2360674
Henderson-Sellers, B., Gonzalez-Perez, C., McBride, T. and Low, G. (2014) An Ontology for ISO Software Engineering Standards: 1) Creating the Infrastructure. Computer Standards & Interfaces, 36, 563-576.
Di Ruscio, D., Paige, R.F., Pierantonio, A., Hutchinson, J., Whittle, J. and Rouncefield, M. (2014) Model-Driven Engineering Practices in Industry: Social, Organizational and Managerial Factors That Lead to Success or Failure. Science of Computer Programming, 89, 144-161.
Ghapanchi, A.H., Wohlin, C. and Aurum, A. (2014) Resources Contributing to Gaining Competitive Advantage for Open Source Software Projects: An Application of Resource-Based Theory. International Journal of Project Management, 32, 139-152.
Lettner, D., Angerer, F., Prahofer, H. and Grunbacher, P. (2014) A Case Study on Software Ecosystem Characteristics in Industrial Automation Software. Proceedings of the 2014 International Conference on Software and System Process, Nanjing, 26-28 May 2014, 40-49. https://doi.org/10.1145/2600821.2600826
Gawer, A. and Cusumano, M.A. (2014) Industry Platforms and Ecosystem Innovation. Journal of Product Innovation Management, 31, 417-433. https://doi.org/10.1111/jpim.12105
Andrés, C., Camacho, C. and Llana, L. (2013) A Formal Framework for Software Product Lines. Information and Software Technology, 55, 1925-1947.
Metzger, A. and Pohl, K. (2014) Software Product Line Engineering and Variability Management: Achievements and Challenges. Proceedings of the on Future of Software Engineering, Hyderabad, 31 May-7 June 2014, 70-84.
Harman, M., Jia, Y., Krinke, J., Langdon, W.B., Petke, J. and Zhang, Y. (2014) Search Based Software Engineering for Software Product Line Engineering: A Survey and Directions for Future Work. Proceedings of the 18th International Software Product Line Conference, Vol. 1, Florence, 15-19 September 2014, 5-18. https://doi.org/10.1145/2648511.2648513
Olyai, A. and Rezaei, R. (2015) Analysis and Comparison of Software Product Line Frameworks. Journal of Software, 10, 991-1001. https://doi.org/10.17706/jsw.10.8.991-1001
Capilla, R., Bosch, J., Trinidad, P., Ruiz-Cortés, A. and Hinchey, M. (2014) An overview of Dynamic Software Product Line Architectures and Techniques: Observations from Research and Industry. Journal of Systems and Software, 91, 3-23.
Krishnan, S., Strasburg, C., Lutz, R.R., Goseva-Popstojanova, K. and Dorman, K.S. (2013) Predicting Failure-Proneness in an Evolving Software Product Line. Information and Software Technology, 55, 1479-1495.
Quadri, A. and Abubakar, M. (2015) Software Quality Assurance in Component Based Software Development—A Survey Analysis. International Journal of Computer and Communication System Engineering, 2, 305-315
Singh, P.K., Sangwan, O.P., Singh, A.P. and Pratap, A. (2015) A Framework for Assessing the Software Reusability using Fuzzy Logic Approach for Aspect Oriented Software. International Journal of Information Technology and Computer Science, 7, 12-20. https://doi.org/10.5815/ijitcs.2015.02.02
Yadav, H.B. and Yadav, D.K. (2015) A Fuzzy Logic Based Approach for Phase-Wise Software Defects Prediction Using Software Metrics. Information and Software Technology, 63, 44-57.
Rettinger, A., Losch, U., Tresp, V., D’Amato, C. and Fanizzi, N. (2012) Mining the Semantic Web. Data Mining and Knowledge Discovery, 24, 613-662. https://doi.org/10.1007/s10618-012-0253-2
Jeremic, Z., Jovanovic, J. and Gasevic, D. (2013) Personal Learning Environments on the Social Semantic Web. Semantic Web-Linked Data for Science and Education, 4, 23-51.
Khriyenko, O. and Nagy, M. (2011) Semantic Web-Driven Agent-Based Ecosystem for Linked Data and Services. 3rd International Conferences on Advanced Service Computing, Rome, 2011, 110-117.
Lécué, F., Tallevi-Diotallevi, S., Hayes, J., Tucker, R., Bicer, V., Sbodio, M. and Tommasi, P. (2014) Smart Traffic Analytics in the Semantic Web with STAR-CITY: Scenarios, System and Lessons Learned in Dublin City. Web Semantics: Science, Services and Agents on the World Wide Web, 27-28, 26-33.
Ngan, L.D. and Kanagasabai, R. (2013) Semantic Web Service Discovery: State-of-the-Art and Research Challenges. Personal and Ubiquitous Computing, 17, 1741-1752. https://doi.org/10.1007/s00779-012-0609-z
Demir, K.A. (2015) Multi-View Software Architecture Design: Case Study of a Mission-Critical Defense System. Computer and Information Science, 8, 12-31. https://doi.org/10.5539/cis.v8n4p12
Aleti, A., Buhnova, B., Grunske, L., Koziolek, A. and Meedeniya, I. (2013) Software Architecture Optimization Methods: A Systematic Literature Review. IEEE Transactions on Software Engineering, 39, 658-683. https://doi.org/10.1109/TSE.2012.64
Ginters, E., Schumann, M., Vishnyakov, A. and Orlov, S. (2015) Software Architecture and Detailed Design Evaluation. Procedia Computer Science, 43, 41-52.
Yang, C., Liang, P. and Avgeriou, P. (2016) A Systematic Mapping Study on the Combination of Software Architecture and Agile Development. Journal of Systems and Software, 111, 157-184.
Oussalah, M., Bhat, F., Challis, K. and Schnier, T. (2013) A Software Architecture for Twitter Collection, Search and Geolocation Services. Knowledge-Based Systems, 37, 105-120.
Capilla, R., Jansen, A., Tang, A., Avgeriou, P. and Babar, M.A. (2016) 10 Years of Software Architecture Knowledge Management: Practice and Future. Journal of Systems and Software, 116, 191-205.
de M. Neves, A.R., Carvalho, á.M.G. and Ralha, C.G. (2014) Agent-Based Architecture for Context-Aware and Personalized Event Recommendation. Expert Systems with Applications, 41, 563-573.
Horcas, J.-M., Pinto, M. and Fuentes, L. (2016) An Automatic Process for Weaving Functional Quality Attributes Using A Software Product Line Approach. Journal of Systems and Software, 112, 78-95.
Ayala, I., Amor, M., Fuentes, L. and Troya, J.M. (2015) A Software Product Line Process to Develop Agents for the IoT. Sensors, 15, 15640-15660. https://doi.org/10.3390/s150715640
Mück, T.R. and Frohlich, A.A. (2014) A Metaprogrammed C++ Framework for Hardware/Software Component Integration and Communication. Journal of Systems Architecture, 60, 816-827.
He, W. and Xu, L.D. (2014) Integration of Distributed Enterprise Applications: A Survey. IEEE Transactions on Industrial Informatics, 10, 35-42. https://doi.org/10.1109/TII.2012.2189221
Alférez, G.H., Pelechano, V., Mazo, R., Salinesi, C. and Diaz, D. (2014) Dynamic Adaptation of Service Compositions with Variability Models. Journal of Systems and Software, 91, 24-47.
Bontcheva, K., Kieniewicz, J., Andrews, S. and Wallis, M. (2015) Semantic Enrichment and Search: A Case Study on Environmental Science Literature. D-Lib Magazine, 21, 1-18. https://doi.org/10.1045/january2015-bontcheva
Krueger, R., Thom, D. and Ertl, T. (2015) Semantic Enrichment of Movement Behavior with Foursquare—A Visual Analytics Approach. IEEE Transactions on Visualization and Computer Graphics, 21, 903-915. https://doi.org/10.1109/TVCG.2014.2371856
Kunze, C. and Hecht, R. (2015) Semantic Enrichment of Building Data with Volunteered Geographic Information to Improve Mappings of Dwelling Units and Population. Computers, Environment and Urban Systems, 53, 4-18.
Fileto, R., Bogorny, V., May, C. and Klein, D. (2015) Semantic Enrichment and Analysis of Movement Data: Probably It Is Just Starting! SIGSPATIAL Special, 7, 11-18. https://doi.org/10.1145/2782759.2782763
Fileto, R., May, C., Renso, C., Pelekis, N., Klein, D. and Theodoridis, Y. (2015) The Baquara2 Knowledge-Based Framework for Semantic Enrichment and Analysis of Movement Data. Data & Knowledge Engineering, 98, 104-122.
Trinidad, P. (2012) Automating the Analysis of Stateful Feature Models. PhD Dissertation, University of Seville, Spain.