journal article·2023-01-30Open access

Computer-Aided Formalization of Internal Consistent Product Family Models

Hongbo Liu, Xi Wang, Weiwei Wang

Applied Sciences· Volume 13· Issue 3

Abstract

The product line approach enables the rapid building of software products by reusing core assets. How to manage the commonality and variability of product family is the core problem of product line engineering. The feature modeling approach is one of the main approaches to solve this problem. However, this approach does not define the internal functions of features. Some researchers use formal descriptions to define the function of features, but they do not consider the connection between feature specification and feature model. These product family modeling approaches result in product family models that suffer from inconsistent descriptions, which are difficult to resolve manually. To this end, this paper proposes a computer-aided approach to construct an internally consistent product family model. The method performs an inconsistency check during the formalization of each feature in the given initial feature model, pushing the evolution of the feature model and feature specification. The creation and evolution of feature models are achieved through a template-based feature modeling approach. The method is implemented by means of templates, each of which contains two parts of knowledge: the elements required for a class of feature model, and a way to convert the given elements into a formal description. An inconsistency check is achieved through a rule-based detection approach. Each rule contains two parts: a class of conditions that the feature model and the feature specification satisfy, and the actions to resolve inconsistencies once the conditions are satisfied. We have developed a tool. The tool guides the user to build an internally consistent product family model that contains the feature model and feature specifications. Experiments have shown that our approach can provide effective automation support for the process of formal product family modeling.
Source: crossref · Quality: baseline

Research context

OpenAlex topics: Advanced Software Engineering Methodologies · Product Development and Customization · Software Engineering Research

SciVX discovery tags are terminology-based. OpenAlex topics are source-provided classifications.

Affiliations

School of Computer Engineering and Science, Shanghai University, Shanghai 200444, China

Shanghai Key Laboratory of Computer Software Testing and Evaluating, Shanghai University, Shanghai 200444, China

Funding

NSFCs of China · National Social Science Foundation

References (38)

Show source-provided references
1. Weiss, D.M. Software Product Line Engineering. Proceedings of the 17th International Conference on Software Engineering and Knowledge Engineering (SEKE’2005), Taipei, Taiwan.
2. Demeyer, S. (1999). Object-Oriented Technology, Ecoop99 Workshop Reader, Ecoop99 Workshops, Panels, & Posters, Lisbon, Portugal, June 14–18, 1999 Proceedings, Springer.10.1007/3-540-46589-8 ↗
3. Griss, M.L. (1997). Software Reuse: Architecture, Process, and Organization for Business Success, Wesley Longman Ltd.
4. Weiss, D.M., and Lai, R. (1999). Software Product-Line Engineering: A Family-Based Software Development Process, Addison-Wesley.
5. Kang, K.C., Cohen, S.G., Hess, J.A., Novak, W.E., and Peterson, A.S. (1990). Feature-Oriented Domain Analysis (FODA) Feasibility Study[R] (CMU/SEI-90-TR-21, Carnegie Mellon University.10.21236/ADA235785 ↗
6. FORM: A feature-oriented reuse method with domain-specific reference architectures10.1023/A:1018980625587 ↗
7. Kurniawan, A., Afriyanti, I., and Azurat, A. (2017, January 28–29). ABS microservices and ontology-zotonic integration for SPL implementation in information system. Proceedings of the 2017 International Conference on Advanced Computer Science and Information Systems (ICACSIS), Jakarta, Indonesia.10.1109/ICACSIS.2017.8355023 ↗
8. Maazoun, J., Bouassida, N., and Abdallah, H.B. (2015, January 17–20). SPL-UML: Software product lines design language. Proceedings of the 2015 IEEE/ACS 12th International Conference of Computer Systems and Applications (AICCSA), Marrakech, Morocco.10.1109/AICCSA.2015.7507109 ↗
9. Bessling, S., and Huhn, M. (2013). International Symposium on Foundations of Health Informatics Engineering and Systems, Springer.
10. Sree-Kumar, A., Planas, E., and Clarisó, R. (2021, January 9–11). Validating Feature Models With Respect to Textual Product Line Specifications. Proceedings of the VaMoS’21: 15th International Working Conference on Variability Modelling of Software-Intensive Systems, Krems, Austria.10.1145/3442391.3442407 ↗
11. Knowledge Graph Construction for SOFL Formal Specifications10.1142/S0218194022500279 ↗
12. A three-step hybrid specification approach to error prevention10.1016/j.jss.2021.110975 ↗
13. Nagoya, F.A. (2021). Structured Object-Oriented Formal Language and Method: 10th International Workshop, SOFL + MSVL 2020, Singapore, March 1, 2021, Revised Selected Papers, Springer International Publishing.
14. Webber, D.L., and Gomaa, H. (2002). Software Reuse: Methods, Techniques, and Tools, Springer.
15. Sinnema, M., Deelstra, S., Nijhuis, J., and Bosch, J. (September, January 30). COVAMOF: A Framework for Modeling Variability in Software Product Families. Proceedings of the 3rd International Conference on Software Product Lines, Boston, MA, USA.
16. Bachmann, F., Goedicke, M., Leite, J., Nord, R., Pohl, K., Ramesh, B., and Vilbig, A. (2003). Software Product-Family Engineering: 5th International Workshop, Springer.
17. Nie, K., Li, Z., and Geng, Z. (2012). Computer Software, Applications Conference Workshops, IEEE.
18. Contextual variability management of IoT application with xml-based feature modelling
19. Khan, A.I., Alam, M.M., and Jedaibi, W.A. (2015). Variability Management in Software Development using FeatureIDE: A Case Study. Int. J. Sci. Eng. Res., 6.
20. Kastner, C., Thum, T., Saake, G., Feigenspan, J., Leich, T., Wielgorz, F., and Apel, S. (2009, January 16–24). FeatureIDE: Tool Framework for Feature-Oriented Software Development. Proceedings of the 31th International Conference on Software Engineering (ICSE), Vancouver, BC, Canada.10.1109/ICSE.2009.5070568 ↗
21. Feature IDE: An extensible framework for feature-oriented software development10.1016/j.scico.2012.06.002 ↗
22. Research on the application of feature function analysis in the design of product line components
23. Aleksy, M., Domis, D., Sehestedt, S., and Ulrich, M. (2015, January 13–16). Utilizing Business Process Analysis and Feature Analysis in Software Product Assessment. Proceedings of the 2015 IEEE 17th Conference on Business Informatics, Lisbon, Portugal.10.1109/CBI.2015.22 ↗
24. Nishiura, Y., Asano, M., and Nakanishi, T. (2018, January 4–7). Migration to Software Product Line Development of Automotive Body Parts by Architectural Refinement with Feature Analysis. Proceedings of the 2018 25th Asia-Pacific Software Engineering Conference (APSEC), Nara, Japan.10.1109/APSEC.2018.00067 ↗
25. Formal Methods in Software Product Line Engineering10.1109/MC.2011.47 ↗
26. Wang, X. (2019, January 6–9). Combining Product Line Approach and Formal Specification for Product Family Modeling. Proceedings of the 2019 IEEE 5th International Conference on Computer and Communications(ICCC), Chengdu, China.10.1109/ICCC47050.2019.9064400 ↗
27. Wang, X., Khedri, R., and Miao, W. (2021). 2021 International Symposium on Theoretical Aspects of Software Engineering (TASE), IEEE.
28. An algebra of product families10.1007/s10270-009-0127-2 ↗
29. Latif, S., and Ferzund, J. (2019, January 14–15). Smart Airport Apron Management System Formal Modeling using VDM-SL. Proceedings of the 2019 13th International Conference on Mathematics, Actuarial Science, Computer Science and Statistics (MACS), Karachi, Pakistan.10.1109/MACS48846.2019.9024825 ↗
30. Hui, L., and Zhu, B. (2008, January 12–14). Refactoring Formal Specifications in Object-Z. Proceedings of the International Conference on Computer Science & Software Engineering, Las Vegas, NV, USA.
31. Bsc, K.L. (1996). The B Language and Method, Springer.
32. Correction to “SOFL”: A Formal Engineering Methodology for Industrial Applications10.1109/TSE.1998.685261 ↗
33. Zhu, S., and Liu, S. (2014). International Workshop on Structured Object-Oriented Formal Language & Method, Springer International Publishing.
34. Liu, S. (2004). Formal Engineering for Industrial Software Development, Springer.10.1007/978-3-662-07287-5 ↗
35. Zhou, L., Xu, L., Xu, B., and Yang, H. (2015, January 1–5). Generating Test Cases for Composite Web Services by Parsing XML Documents and Solving Constraints. Proceedings of the 2015 IEEE 39th Annual Computer Software and Applications Conference, Taichung, Taiwan.10.1109/COMPSAC.2015.51 ↗
36. Moura, L.D., and Bjrner, N. (2008). International Conference on Tools and Algorithms for the Construction and Analysis of Systems, Springer.
37. Filipovikj, P., Rodriguez-Navas, G., Nyberg, M., and Seceleanu, C. (2017, January 3–7). SMT-based consistency analysis of industrial systems requirements. Proceedings of the Symposium on Applied Computing, Marrakech, Morocco.10.1145/3019612.3019787 ↗
38. Wohlin, C., Runeson, P., Höst, M., Ohlsson, M.C., Regnell, B., and Wesslén, A. (2012). Experimentation in Software Engineering. The Kluwer International Series in Software Engineering, Springer.10.1007/978-3-642-29044-2 ↗