A Requirements Engineering Technology for the IoT Software Systems
DOI:
https://doi.org/10.5753/jserd.2021.1892Keywords:
Software Engineering, Requirements Engineering, Internet of Things, IoT Software Systems, Software Systems Specification, Software system requirements document, Software technologyAbstract
Contemporary software systems (CSS) – such as the internet of things (IoT) based software systems – incorporate new concerns and characteristics inherent to the network, software, hardware, context awareness, interoperability, and others, compared to conventional software systems. In this sense, requirements engineering (RE) plays a fundamental role in ensuring these software systems' correct development looking for the business and end-user needs. Several software technologies supporting RE are available in the literature, but many do not cover all CSS specificities, notably those based on IoT. This research article presents RETIoT (Requirements Engineering Technology for the Internet of Things based software systems), aiming to provide methodological, technical, and tooling support to produce IoT software system requirements document. It is composed of an IoT scenario description technique, a checklist to verify IoT scenarios, construction processes, and templates for IoT software systems. A feasibility study was carried out in IoT system projects to observe its templates and identify improvement opportunities. The results indicate the feasibility of RETIoT templates' when used to capture IoT characteristics. However, further experimental studies represent research opportunities, strengthen confidence in its elements (construction process, techniques, and templates), and capture end-user perception.
Downloads
References
Alexander I, Maiden N (2004) Scenarios, stories, and use cases: the modern basis for system development. Computing and Control Engineering 15:24–29. https://doi.org/10.1049/cce:20040505
Arif S, Khan Q, Gahyyur SAK (2009) Requirements engineering processes, tools/technologies, & method-ologies. International Journal of Reviews in Computing 2:41–56
Aziz MW, Sheikh AA, Felemban EA (2016) Requirement Engineering Technique for Smart Spaces. In: International Conference on Internet of things and Cloud Computing. ACM Press, Cambridge, United Kingdom, p 54:1-54:7
Behrens H (2002) Requirements Analysis Using Statecharts and Generated Scenarios. In: Doctoral Symposium at IEEE Joint Conference on Requirements Engineering. IEEE, Essen, Germany, pp 1–5
Burg JFM, Van de Riet RP (1996) A Natural Language and Scenario based Approach to Requirements Engi-neering. In: Proceedings of Workshop in Natuerlich-sprachlicher Entwurf von Informationssystemen. Tutzing, Germany, pp 219–233
Carvalho RM, Andrade RMC, Oliveira KM (2018) To-wards a catalog of conflicts for HCI quality characteristics in UbiComp and IoT applications: Process and first results. In: 12th International Conference on Research Challenges in Information Science (RCIS). IEEE, Nantes, pp 1–6
Costa B, Pires PF, Delicato FC (2017) Specifying Functional Requirements and QoS Parameters for IoT Systems. In: 15th Intl Conf on Dependable, Autonomic and Secure Computing, 15th Intl Conf on Pervasive Intelligence and Computing, 3rd Intl Conf on Big Data Intelligence and Computing and Cyber Science and Technology Congress. IEEE, Orlando, United States, pp 407–414
Curumsing MK, Fernando N, Abdelrazek M, et al. (2019) Emotion-oriented requirements engineering: A case study in developing a smart home system for the elderly. Journal of Systems and Software 147:215–229. https://doi.org/10.1016/j.jss.2018.06.077
Doreste AC de S, Travassos GH (2020) Towards Sup-porting the Specification of Context-Aware Software System Test Cases. In: XXIII Ibero-American Conference on Software Engineering. Springer, Curitiba, Brazil (Online), p S10 P1:8 pages
Ferraris D, Fernandez-Gago C (2020) TrUStAPIS: a trust requirements elicitation method for IoT. International Journal of Information Security 19:111–127. https://doi.org/10.1007/s10207-019-00438-x
Giray G, Tekinerdogan B, Tüzün E (2018) IoT System Development Methods. In: Hassan Q, Khan AR, Madani SA (eds) Internet of Things, 1a Edição. CRC Press/Taylor & Francis, New York, pp 141–159
Glinz M (2000) Improving the Quality of Requirements with Scenarios. In: Proceedings of the World Congress on Software Quality (WCSQ). Yokohama, Japan, pp 55–60
Hamdi MS, Ghannem A, Loucopoulos P, et al. (2019) Intelligent Parking Management by Means of Capability Oriented Requirements Engineering. In: Wotawa F, Friedrich G, Pill I, et al. (eds) Advances and Trends in Artificial Intelligence - From Theory to Practice - IEA/AIE 2019. Springer International Publishing, Cham, pp 158–172
Laplante NL, Laplante PA, Voas JM (2018) Stakeholder Identification and Use Case Representation for Inter-net-of-Things Applications in Healthcare. IEEE Systems Journal 12:1589–1597. https://doi.org/10.1109/JSYST.2016.2558449
Lim T-Y, Chua F-F, Tajuddin BB (2018) Elicitation Techniques for Internet of Things Applications Requirements: A Systematic Review. In: VII International Conference on Network, Communication, and Computing. ACM Press, Taipei City, Taiwan, pp 182–188
Mahalank SN, Malagund KB, Banakar RMB (2016) Non-Functional Requirement Analysis in IoT based smart traffic management system. In: International Conference on Computing Communication Control and Automation. IEEE, Pune, India, pp 1–6
Motta RC, Oliveira KM de, Travassos GH (2019a) On challenges in engineering IoT software systems. Journal of Software Engineering Research and Development 7:5:1-5:20. https://doi.org/10.5753/jserd.2019.15
Motta RC, Oliveira KM, Travassos GH (2020) Towards a Roadmap for the Internet of Things Software Systems Engineering. In: Proceedings of the 12th International Conference on Management of Digital EcoSystems. ACM, Virtual Event, United Arab Emirates, pp 111–114
Motta RC, Silva VM, Travassos GH (2019b) Towards a more in-depth understanding of the IoT Paradigm and its challenges. Journal of Software Engineering Research and Development 7:3:1-3:16. https://doi.org/10.5753/jserd.2019.14
Nguyen-Duc A, Khalid K, Shahid Bajwa S, Lønnestad T (2019) Minimum Viable Products for the Internet of Things Applications: Common Pitfalls and Practices. Future Internet 11:50:1-50:21. https://doi.org/10.3390/fi11020050
Pandey D, Suman U, Ramani AK (2010) An Effective Requirement Engineering Process Model for Software Development and Requirements Management. In: International Conference on Advances in Recent Technologies in Communication and Computing. IEEE, Kottayam, India, pp 287–291
Pressman RS (2014) Software engineering: a practitioner's approach, 8th ed. McGraw-Hill Higher Education, United States
Reggio G (2018) A UML-based proposal for IoT system requirements specification. In: 10th International Workshop on Modelling in Software Engineering. ACM Press, Gothenburg, Sweden, pp 9–16
Silva DV da, Gonçalves TG, Rocha ARC da (2019) A Requirements Engineering Process for IoT Systems. In: XVIII Brazilian Symposium on Software Quality. ACM Press, Fortaleza, Brazil, pp 204–209
Silva DV da, Gonçalves TG, Travassos GH (2020a) A Technology to Support the Building of Requirements Documents for IoT Software Systems. In: XIX Brazilian Symposium on Software Quality. ACM Press, São Luís, Brazil (Online), p 10 pages (to appear)
Silva DV da, Souza BP de, Gonçalves TG, Travassos GH (2020b) Uma Tecnologia para Apoiar a Engenharia de Requisitos de Sistemas de Software IoT. In: XXIII Ibero-American Conference on Software Engineering. Springer, Curitiba, Brazil (Online), p S09 P3:14 pages
Silva VM (2019) SCENARIoT Support for Scenario Specification of Internet of Things-Based Software Systems. Master's Dissertation, Federal University of Rio de Janeiro
Sommerville I (2015) Software Engineering, 10 edition. Pearson, Harlow
Souza BP de (2020) SCENARIOTCHECK: Uma Técnica de Leitura Baseada em Checklist para Verificação de Cenários IoT. Master’s Dissertation, Federal University of Rio de Janeiro
Souza BP de, Motta RC, Costa D de O, Travassos GH (2019a) An IoT-based Scenario Description Inspection Technique. In: XVIII Brazilian Symposium on Software Quality. ACM Press, Fortaleza, Brazil, pp 20–29
Souza BP de, Motta RC, Travassos GH (2019b) The first version of SCENARIotCHECK: A Checklist for IoT based Scenarios. In: XXXIII Brazilian Symposium on Software Engineering. ACM Press, Salvador, Brazil, pp 219–223
Takeda A, Hatakeyama Y (2016) Conversion Method for User Experience Design Information and Software Requirement Specification. In: Marcus A (ed) Design, User Experience, and Usability: Design Thinking and Methods - DUXU 2016. Springer, Cham, pp 356–364
Touzani M, Ponsard C (2016) Towards Modelling and Analysis of Spatial and Temporal Requirements. In: 2016 IEEE 24th International Requirements Engineering Conference (RE). IEEE, Beijing, China, pp 389–394
Vegendla A, Duc AN, Gao S, Sindre G (2018) A Systematic Mapping Study on Requirements Engineering in Software Ecosystems. Journal of Information Technology Research 11:4:1-4:21. https://doi.org/10.4018/JITR.2018010104
Yamakami T (2017) Horizontal Requirement Engineer-ing in Integration of Multiple IoT Use Cases of City Platform as a Service. In: 2017 IEEE International Conference on Computer and Information Technology (CIT). IEEE, Helsinki, Finland, pp 292–296
Zambonelli F (2017) Key Abstractions for IoT-Oriented Software Engineering. IEEE Software 34:38–45. https://doi.org/10.1109/MS.2017.3
Downloads
Published
How to Cite
Issue
Section
License
Copyright (c) 2021 Danyllo Valente da Silva , Bruno Pedraça de Souza , Taisa Guidini Goncalves, Guilherme Horta Travassos
This work is licensed under a Creative Commons Attribution 4.0 International License.