TEl-IoT: A Template for Eliciting IoT Software System Requirements
Resumo
Context: The Internet of Things (IoT) is a network of physical objects and system connected through mutual communication protocols. IoT systems have specific characteristics such as, self-configuration, dynamic changes, device and software heterogeneity. Goal: As IoT systems incorporate several components of the software, hardware, communication, and other features, building requirements documents to such systems become a challenge for Requirements Engineering (RE). Thus, this paper presents TEl-IoT, a template to aid developers during the requirements elicitation activities for IoT systems. Method: We conducted three evidence-based studies. We first performed a literature review aiming to identify artifacts that support requirements elicitation and specification for IoT systems. Second, based on the literature review, we proposed the initial version of the TEl-IoT. Finally, we performed two empirical studies to assess the TEl-IoT: (i) feasibility study with industry regarding the first version of TEl-IoT, and (ii) an observational study to understand how students apply the TEl-IoT in an IoT project. Results: Our results showed that TEl-IoT is viable, and its use reduces the time spent on requirements elicitation, in comparison with the ad-hoc way. In addition, our qualitative results also suggested that the use of TEl-IoT facilitates the requirements elicitation for IoT systems. Conclusion: We expect our template to guide requirements elicitation for IoT systems in practice. Our results showed that TEl-IoT can support developers and contribute to the body of knowledge about RE applicable in the IoT context.
Palavras-chave:
Requirements Elicitation, Internet of Things, Empirical Validation
Referências
Muhammad Waqar Aziz, Adil Amjad Sheikh, and Emad A Felemban. 2016. Requirement engineering technique for smart spaces. In 1st ICC. 1–7.
Mauro Conti, Ali Dehghantanha, Katrin Franke, and Steve Watson. 2018. Internet of Things security and forensics: Challenges and opportunities. (2018).
Juliet Corbin and Anselm Strauss. 2008. Basics of Qualitative Research: Techniques and Procedures for Developing Grounded Theory (3 ed.). SAGE Publications.
Priscila Basto Fagundes, Gislaine Parra Freund, Luciane Paula Vital, Camila Monteiro de Barros, and Douglas Dyllon Jeronimo de Macedo. 2020. Taxonomias, ontologias e tesauros: possibilidades de contribuição para o processo de Engenharia de Requisitos. Em Questão 26, 1 (2020), 237–254.
Mexhid Ferati, Arianit Kurti, Bahtijar Vogel, and Bujar Raufi. 2016. Augmenting requirements gathering for people with special needs using IoT: a position paper. In 9th CHASE. 48–51.
Davide Ferraris and Carmen Fernandez-Gago. 2020. TrUStAPIS: a trust requirements elicitation method for IoT. Int. J. Inf. Secur. Priv. 19, 1 (2020), 111–127.
Arindam Giri, Subrata Dutta, Sarmistha Neogy, Keshav Dahal, and Zeeshan Pervez. 2017. Internet of Things (IoT) a survey on architecture, enabling technologies, applications and challenges. In 1st IML. 1–12.
Amina Harit, Abdellah Ezzati, and Rachid Elharti. 2017. Internet of things security: challenges and perspectives. In 2nd ICC. 1–8.
Fazilah Ismail, Sabrina Ahmad, and Ummi Rabaah Hashim. 2019. An Exploration to Determine Essential Requirements for Smart Home Application. International Journal of Innovative Technology and Exploring Engineering (IJITEE) 8(2019).
Hokeun Kim, Eunsuk Kang, Edward A Lee, and David Broman. 2017. A toolkit for construction of authorization service infrastructure for the internet of things. In 2nd IoTDI. 147–158.
Barbara A Kitchenham, Tore Dyba, and Magne Jorgensen. 2004. Evidence-based software engineering. In 26th ICSE. IEEE, 273–281.
Aleksandr Lepekhin, Alexandra Borremans, Igor Ilin, and Sami Jantunen. 2019. A systematic mapping study on internet of things challenges. In 1st SERP4IoT. IEEE, 9–16.
Rebeca C Motta, Káthia M de Oliveira, and Guilherme H Travassos. 2018. On challenges in engineering IoT software systems. In XXXII SBES. 42–51.
Geoff Norman. 2010. Likert scales, levels of measurement and the “laws” of statistics. Adv. Health Sci. Educ. 15, 5 (2010), 625–632.
Madhukar Pai, Michael McCulloch, Jennifer D Gorman, Nitika Pai, Wayne Enanoria, Gail Kennedy, Prathap Tharyan, and John M Colford Jr. 2004. Systematic reviews and meta-analyses: an illustrated, step-by-step guide.Natl. Med. J. India 17, 2 (2004), 86–95.
Roberto Avila Paldês, Edna Dias Canedo, Fernando de Albuquerque Guimarães, and Angélica Toffano Seidel Calazans. 2020. Functional Requirements Elicitation in IoT Systems: a follow-up study. In 19th SBQS. 1–10.
Keyur K Patel, Sunil M Patel, and others. 2016. Internet of things-IOT: definition, characteristics, architecture, enabling technologies, application & future challenges. Int. J. Eng. Sci. 6, 5 (2016).
Antonis Protopsaltis, Panagiotis Sarigiannidis, Dimitrios Margounakis, and Anastasios Lytos. 2020. Data visualization in internet of things: tools, methodologies, and challenges. In 15th ARES. 1–11.
Gianna Reggio. 2018. A UML-based proposal for IoT system requirements specification. In 10th MiSE@ICSE. 9–16.
Tejas Shah and SV Patel. 2016. A novel approach for specifying functional and non-functional requirements using rds (requirement description schema). Procedia Comput. Sci. 79 (2016), 852–860.
Danyllo Silva, Taisa Guidini Gonçalves, and Ana Regina C da Rocha. 2019. A requirements engineering process for IoT systems. In XVIII SBQS. 204–209.
Valéria Martins da Silva. 2019. ScenarIoT: support for scenario specification of internet of things-based software systems. (2019).
Amanda Sousa, Anderson Uchôa, Eduardo Fernandes, Carla IM Bezerra, José Maria Monteiro, and Rossana MC Andrade. 2019. REM4DSPL: A requirements engineering method for dynamic software product lines. In XVIII SBQS. 129–138.
Richard H Thayer, Sidney C Bailin, and M Dorfman. 1997. Software requirements engineerings. IEEE Computer Society Press.
Anderson G Uchôa, Carla IM Bezerra, Ivan C Machado, José Maria Monteiro, and Rossana MC Andrade. 2017. ReMINDER: an approach to modeling non-functional properties in dynamic software product lines. In 16th ICSR. Springer, 65–73.
Anderson G Uchôa, Luan P Lima, Carla IM Bezerra, José Maria Monteiro, and Rossana MC Andrade. 2017. Dymmer-nfp: Modeling non-functional properties and multiple context adaptation scenarios in software product lines. In 16th ICSR. Springer, 175–183.
Tiago Wanzeler, H Fulber, and Bruno Merlin. 2016. Desenvolvimento de um sistema de automação residencial de baixo custo aliado ao conceito de Internet das Coisas (IoT). In XXXIV SBrT. 40–44.
Hanno Wirtz, Jan Rüth, Martin Serror, Jó Ágila Bitsch Link, and Klaus Wehrle. 2014. Opportunistic interaction in the challenged internet of things. In 9th CHANTS@MobiCom. 7–12.
Claes Wohlin. 2014. Guidelines for snowballing in systematic literature studies and a replication in software engineering. In 18th EASE. 1–10.
Claes Wohlin, Per Runeson, Martin Höst, Magnus C Ohlsson, Björn Regnell, and Anders Wesslén. 2012. Experimentation in software engineering. Springer Science & Business Media.
Didar Zowghi and Chad Coulin. 2005. Requirements elicitation: A survey of techniques, approaches, and tools. In Engineering and managing software requirements. Springer, 19–46.
Mauro Conti, Ali Dehghantanha, Katrin Franke, and Steve Watson. 2018. Internet of Things security and forensics: Challenges and opportunities. (2018).
Juliet Corbin and Anselm Strauss. 2008. Basics of Qualitative Research: Techniques and Procedures for Developing Grounded Theory (3 ed.). SAGE Publications.
Priscila Basto Fagundes, Gislaine Parra Freund, Luciane Paula Vital, Camila Monteiro de Barros, and Douglas Dyllon Jeronimo de Macedo. 2020. Taxonomias, ontologias e tesauros: possibilidades de contribuição para o processo de Engenharia de Requisitos. Em Questão 26, 1 (2020), 237–254.
Mexhid Ferati, Arianit Kurti, Bahtijar Vogel, and Bujar Raufi. 2016. Augmenting requirements gathering for people with special needs using IoT: a position paper. In 9th CHASE. 48–51.
Davide Ferraris and Carmen Fernandez-Gago. 2020. TrUStAPIS: a trust requirements elicitation method for IoT. Int. J. Inf. Secur. Priv. 19, 1 (2020), 111–127.
Arindam Giri, Subrata Dutta, Sarmistha Neogy, Keshav Dahal, and Zeeshan Pervez. 2017. Internet of Things (IoT) a survey on architecture, enabling technologies, applications and challenges. In 1st IML. 1–12.
Amina Harit, Abdellah Ezzati, and Rachid Elharti. 2017. Internet of things security: challenges and perspectives. In 2nd ICC. 1–8.
Fazilah Ismail, Sabrina Ahmad, and Ummi Rabaah Hashim. 2019. An Exploration to Determine Essential Requirements for Smart Home Application. International Journal of Innovative Technology and Exploring Engineering (IJITEE) 8(2019).
Hokeun Kim, Eunsuk Kang, Edward A Lee, and David Broman. 2017. A toolkit for construction of authorization service infrastructure for the internet of things. In 2nd IoTDI. 147–158.
Barbara A Kitchenham, Tore Dyba, and Magne Jorgensen. 2004. Evidence-based software engineering. In 26th ICSE. IEEE, 273–281.
Aleksandr Lepekhin, Alexandra Borremans, Igor Ilin, and Sami Jantunen. 2019. A systematic mapping study on internet of things challenges. In 1st SERP4IoT. IEEE, 9–16.
Rebeca C Motta, Káthia M de Oliveira, and Guilherme H Travassos. 2018. On challenges in engineering IoT software systems. In XXXII SBES. 42–51.
Geoff Norman. 2010. Likert scales, levels of measurement and the “laws” of statistics. Adv. Health Sci. Educ. 15, 5 (2010), 625–632.
Madhukar Pai, Michael McCulloch, Jennifer D Gorman, Nitika Pai, Wayne Enanoria, Gail Kennedy, Prathap Tharyan, and John M Colford Jr. 2004. Systematic reviews and meta-analyses: an illustrated, step-by-step guide.Natl. Med. J. India 17, 2 (2004), 86–95.
Roberto Avila Paldês, Edna Dias Canedo, Fernando de Albuquerque Guimarães, and Angélica Toffano Seidel Calazans. 2020. Functional Requirements Elicitation in IoT Systems: a follow-up study. In 19th SBQS. 1–10.
Keyur K Patel, Sunil M Patel, and others. 2016. Internet of things-IOT: definition, characteristics, architecture, enabling technologies, application & future challenges. Int. J. Eng. Sci. 6, 5 (2016).
Antonis Protopsaltis, Panagiotis Sarigiannidis, Dimitrios Margounakis, and Anastasios Lytos. 2020. Data visualization in internet of things: tools, methodologies, and challenges. In 15th ARES. 1–11.
Gianna Reggio. 2018. A UML-based proposal for IoT system requirements specification. In 10th MiSE@ICSE. 9–16.
Tejas Shah and SV Patel. 2016. A novel approach for specifying functional and non-functional requirements using rds (requirement description schema). Procedia Comput. Sci. 79 (2016), 852–860.
Danyllo Silva, Taisa Guidini Gonçalves, and Ana Regina C da Rocha. 2019. A requirements engineering process for IoT systems. In XVIII SBQS. 204–209.
Valéria Martins da Silva. 2019. ScenarIoT: support for scenario specification of internet of things-based software systems. (2019).
Amanda Sousa, Anderson Uchôa, Eduardo Fernandes, Carla IM Bezerra, José Maria Monteiro, and Rossana MC Andrade. 2019. REM4DSPL: A requirements engineering method for dynamic software product lines. In XVIII SBQS. 129–138.
Richard H Thayer, Sidney C Bailin, and M Dorfman. 1997. Software requirements engineerings. IEEE Computer Society Press.
Anderson G Uchôa, Carla IM Bezerra, Ivan C Machado, José Maria Monteiro, and Rossana MC Andrade. 2017. ReMINDER: an approach to modeling non-functional properties in dynamic software product lines. In 16th ICSR. Springer, 65–73.
Anderson G Uchôa, Luan P Lima, Carla IM Bezerra, José Maria Monteiro, and Rossana MC Andrade. 2017. Dymmer-nfp: Modeling non-functional properties and multiple context adaptation scenarios in software product lines. In 16th ICSR. Springer, 175–183.
Tiago Wanzeler, H Fulber, and Bruno Merlin. 2016. Desenvolvimento de um sistema de automação residencial de baixo custo aliado ao conceito de Internet das Coisas (IoT). In XXXIV SBrT. 40–44.
Hanno Wirtz, Jan Rüth, Martin Serror, Jó Ágila Bitsch Link, and Klaus Wehrle. 2014. Opportunistic interaction in the challenged internet of things. In 9th CHANTS@MobiCom. 7–12.
Claes Wohlin. 2014. Guidelines for snowballing in systematic literature studies and a replication in software engineering. In 18th EASE. 1–10.
Claes Wohlin, Per Runeson, Martin Höst, Magnus C Ohlsson, Björn Regnell, and Anders Wesslén. 2012. Experimentation in software engineering. Springer Science & Business Media.
Didar Zowghi and Chad Coulin. 2005. Requirements elicitation: A survey of techniques, approaches, and tools. In Engineering and managing software requirements. Springer, 19–46.
Publicado
16/05/2022
Como Citar
SOUZA, Sabrina Rocha; SOUZA, Bruno Pedraça; UCHÔA, Anderson Gonçalves; COSTA, Daniella Oliveira.
TEl-IoT: A Template for Eliciting IoT Software System Requirements. In: SIMPÓSIO BRASILEIRO DE SISTEMAS DE INFORMAÇÃO (SBSI), 18. , 2022, Curitiba.
Anais [...].
Porto Alegre: Sociedade Brasileira de Computação,
2022
.