Processes

Requirements Engineering has standards for the realization of software capable of meeting the requests of its customers. Thus, the importance of establishing an execution process in order to listen, analyze, develop and validate a software emerges. Still in planning, a scenario for the process varies according to specifications, internal policies and external factors, according to Rehman et al. [1].


Phases

Even though there is a possibility that processes can be created in different ways, Pohl and Rupp [2] highlighted in their book the importance of these steps:

  • Elicitation: phase which the requirements by stakeholders and end users are harvested, which can be based on documentation, operating systems and case studies. The following techniques can be used to perform requirements elicitation: user stories, use cases, interviews, prototypes, among others;
  • Documentation: preparation of a document containing the project plan and recording the elicited requirements, serving as a resource for consulting any doubts;
  • Validation and verification: step that have the purpose of checking if the final product is coherent with what was elaborated in the software planning phase;
  • Management: involves features that ensure the availability of requirements, enabling fast and complete maintenance, traceability and versioning.
Book

Requirements Engineering Processes that address requirements validation in the context of Internet of Things (IoT)

Each process developed by different authors varies according to its specification, proposal and specific situations. We categorize the processes related to requirements validation of Internet of Things as:


A Requirements Engineering Process for IoT Systems

Authors: Silva et al. [3]

Techniques: BPMN.

Description: The authors presented a process for developing Internet of Things systems using BPMN. The process is composed by three sub-processes in accordance with ISO/IEC/IEEE 12207.


IoT System Development Methods

Authors: Giray et al.[6]

Techniques: BPMN.

Description: The authors carried out a study of articles already existing in the literature and carried out an evaluation in fourteen parameters, using BPMN to illustrate the functioning.



REM4DSPL: A Requirements Engineering Method for Dynamic Software Product Lines

Authors: Sousa et al. [4]

Techniques: BPMN.

Description: The authors proposed the REM4DSPL method using the concepts of Requirements Engineering and Dynamic Software Product Line (DSPL). The method is composed by three phases and was represented using BPMN.


Towards a catalog of conflicts for HCI quality characteristics in UbiComp and IoT applications: Process and first results

Authors: Carvalho et al. [27]

Techniques: BPMN.

Description: In order to minimize the problems of inconsistency in non-functional requirements elicitation and their consequences, the authors proposed a process in which each step is completed after a document analysis using a specific method or technique. In addition, each step of the process is cataloged in a database for reference purposes. The authors used BPMN.



References

Icons made by Freepik from www.flaticon.com

[1] Rehman, Tousif ur, Muhammad Naeem Ahmed Khan e Naveed Riaz: Analysis of requirement engineering processes, tools/techniques and methodologies. International Journal of Information Technology and Computer Science (IJITCS), 5(3):40, 2013. Click here to access.

[2] Pohl, K. e C. Rupp: Requirements Engineering Fundamentals: A Study Guide forthe Certified Professional for Requirements Engineering Exam - Foundation Level - IREB compliant. Rocky Nook, 2011, ISBN 9781457111921. Click here to access.

[3] Danyllo Silva, Taisa Guidini Gonçalves, and Ana Regina C. da Rocha. 2019. A Requirements Engineering Process for IoT Systems. In Proceedings of the XVIII Brazilian Symposium on Software Quality (SBQS'19). Association for Computing Machinery, New York, NY, USA, 204–209. Click here to access.

[4] Amanda Sousa, Anderson Uchôa, Eduardo Fernandes, Carla I. M. Bezerra, José Maria Monteiro, and Rossana M. C. Andrade. 2019. REM4DSPL: A Requirements Engineering Method for Dynamic Software Product Lines. In Proceedings of the XVIII Brazilian Symposium on Software Quality (SBQS'19). Association for Computing Machinery, New York, NY, USA, 129–138. Click here to access.

[6] Giray, Görkem and Tekinerdogan, Bedir and Tüzün, Eray: IoT System Development Methods. 1st Edition. 2017. Chapman and Hall/CRC. eBook: 9781315155005. Click here to access.

[27] R. M. Carvalho, R. M. C. Andrade and K. M. de Oliveira, "Towards a catalog of conflicts for HCI quality characteristics in UbiComp and IoT applications: Process and first results", 2018 12th International Conference on Research Challenges in Information Science (RCIS), 2018, pp. 1-6. Click here to access.


A UML-based Proposal for IoT System Requirements Specification

Author: Gianna Reggio [10]

Techniques: UML Diagrams.

Description: The author proposed the IoTReq, a process for requirements elicitation of IoT system using UML diagrams. The author did not carry out the requirements validation in a practical context.


Detecting IoT Applications Opportunities and Requirements Elicitation: A Design Thinking Based Approach

Authors: Dantas et al. [23]

Techniques: Affinity diagrams.

Description: The authors proposed a method for requirements elicitation and designing in IoT systems. The proposed process uses Design Thinking and the authors used three requirements validation techniques: brainstorming, documentation and affinity diagrams of users and customers.


Modeling IoT Applications with SysML4IoT

Authors: Costa et al. [5]

Techniques: UML Diagrams.

Description: The authors investigated the resolution of critical issues that can occur in the design area, such as the diversity to perform graphic design and the lack of processes capable of getting to the details of software requirements. Thus, the authors proposed the DevProcess process using UML diagrams.


Design Science and ThinkLets as an Holistic Approach to Design IoT/IoS Systems

Authors: Reinhard Bernsteiner e Stephan Schlögl [25]

Techniques: UML Diagrams.

Description: The authors used the Design Science Reseach methodology and the ThinkLets tool to create detailed documentation for a system, with the help of UML diagrams and Brainstorming.


An Improved RE Framework for IoT-Oriented Smart Applications using Integrated Approach

Authors: Kaleem et al. [18]

Techniques: UML Diagrams.

Description: The authors proposed a process for Requirements Engineering in IoT. To perform requirements validation, the authors used UML Diagrams and brainstorming.



Key Abstractions for IoT-Oriented Software Engineering

Author: Franco Zambonelli [12]

Techniques: UML Diagrams.

Description: The author reinforced key issues for designing an IoT system using UML diagrams.


Conversion Method for User Experience Design Information and Software Requirement Specification

Authors: Ayumi Takeda e Yosuke Hatakeyama [13]

Techniques: UML Diagrams.

Description: The authors proposed a process using UML diagrams, User Experience Design (UXD) and UX requirements to perform a system requirements specification in the context of IoT.


TrUStAPIS: A Trust Requirements Elicitation Method for IoT

Authors: Davide Ferraris e Carmen Fernandez-Gago [16]

Techniques: UML Diagrams and Template.

Description: The authors proposed a method of requirements elicitation in the context of IoT with the aim of enhancing requirements validation. The authors used UML diagrams and JSON templates to help designing the process.


Specifying Functional Requirements and QoS Parameters for IoT Systems

Authors: Costa et al. [22]

Techniques: UML Diagrams.

Description: The authors proposed the IoT-RML process for specifying and modeling requirements accurately and minimizing conflicts between requirements. The IoT-RML specifies both functional and non-functional requirements (Quality of Service) and uses the SysML language to represent the models used in the process, based on UML diagrams.


Uma Tecnologia para Apoiar a Engenharia de Requisitos de Sistemas de Software IoT

Authors: Silva et al. [17]

Techniques: UML Diagrams Template.

Description: The authors provided a template to fill in information about IoT processes, based on techniques SCENARIoT and SCENARIoTCHECK, being useful for the elaboration of a software document.



Intelligent Parking Management by Means of Capability Oriented Requirements Engineering

Authors: Hamdi et al. [15]

Techniques: CORE, UML Diagrams and Goal Model

Description: The authors proposed a process in the context of smart cities using Capacity Oriented Requirements Engineering (CORE), serving as a basis for creating a smart parking system using UML diagrams and Goal Model to perform requirements elicitation and analysis.


Stakeholder Identification and Use Case Representation for Internet-of-Things Applications in Healthcare

Authors: Laplante et al. [24]

Techniques: UML Diagrams.

Description: The authors developed an IoT software in the hospital context, through a process based on system modeling. The authors used the rich picture technique to identify stakeholders and perform functional and non-functional requirements elicitation. The authors used UML diagrams.


IoT Composer: Composition and Deployment of IoT Applications

Authors: Krishna et al. [26]

Techniques: UML Diagrams.

Description: The authors proposed a web interface to serve end users and help programming in IoT devices using the LOTOS Specification Language, as well as a graphical interface to meet the needs of users. The process overview was illustrated using UML diagrams.


Horizontal Requirement Engineering in Integration of Multiple IoT Use Cases of City Platform as a Service

Author: Toshihiko Yamakami [21]

Techniques: UML Diagrams.

Description: The author proposed a framework to help the design of IoT systems using UML diagrams. This framework has three identification stages (interaction between use cases, coordination and impact), which can be added tables, checklists or other techniques.



References

Icons made by Freepik from www.flaticon.com

[1] Rehman, Tousif ur, Muhammad Naeem Ahmed Khan e Naveed Riaz: Analysis of requirement engineering processes, tools/techniques and methodologies. International Journal of Information Technology and Computer Science (IJITCS), 5(3):40, 2013. Click here to access.

[2] Pohl, K. e C. Rupp: Requirements Engineering Fundamentals: A Study Guide forthe Certified Professional for Requirements Engineering Exam - Foundation Level - IREB compliant. Rocky Nook, 2011, ISBN 9781457111921. Click here to access.

[5] B. Costa, P. F. Pires and F. C. Delicato, "Modeling IoT Applications with SysML4IoT," 2016 42th Euromicro Conference on Software Engineering and Advanced Applications (SEAA), 2016, pp. 157-164. Click here to access.

[10] Reggio, Gianna: A UML-based Proposal for IoT System Requirements Specification. Em Proceedings of the 10th international workshop on modelling in software engineering,páginas 9–16, 2018. Click here to access.

[12] F. Zambonelli, "Key Abstractions for IoT-Oriented Software Engineering," in IEEE Software, vol. 34, no. 1, pp. 38-45, Jan.-Feb. 2017. Click here to access.

[13] Takeda A., Hatakeyama Y. (2016) Conversion Method for User Experience Design Information and Software Requirement Specification. In: Marcus A. (eds) Design, User Experience, and Usability: Design Thinking and Methods. DUXU 2016. Lecture Notes in Computer Science, vol 9746. Springer, Cham. Click here to access.

[15] Hamdi M.S., Ghannem A., Loucopoulos P., Kavakli E., Ammar H. (2019) Intelligent Parking Management by Means of Capability Oriented Requirements Engineering. In: Wotawa F., Friedrich G., Pill I., Koitz-Hristov R., Ali M. (eds) Advances and Trends in Artificial Intelligence. From Theory to Practice. IEA/AIE 2019. Lecture Notes in Computer Science, vol 11606. Springer, Cham. Click here to access.

[16] Ferraris, D., Fernandez-Gago, C. TrUStAPIS: a trust requirements elicitation method for IoT. Int. J. Inf. Secur. 19, 111–127 (2020). Click here to access.

[18] S. Kaleem, S. Ahmed, F. Ullah, M. Babar, N. Sheeraz and F. Hadi, "An Improved RE Framewrok for IoT-Oriented Smart Applications Using Inetgrated Approach," 2019 International Conference on Advances in the Emerging Computing Technologies (AECT), 2020, pp. 1-6. Click here to access.

[21] T. Yamakami, "Horizontal Requirement Engineering in Integration of Multiple IoT Use Cases of City Platform as a Service," 2017 IEEE International Conference on Computer and Information Technology (CIT), 2017, pp. 292-296. Click here to access.

[22] B. Costa, P. F. Pires and F. C. Delicato, "Specifying Functional Requirements and QoS Parameters for IoT Systems," 2017 IEEE 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(DASC/PiCom/DataCom/CyberSciTech), 2017, pp. 407-414. Click here to access.

[23] Lima Dantas D., Filgueiras L.V.L., Brandão A.A.F., Machado Domingues M.C., Ferreira M.R. (2020) Detecting IoT Applications Opportunities and Requirements Elicitation: A Design Thinking Based Approach. In: Streitz N., Konomi S. (eds) Distributed, Ambient and Pervasive Interactions. HCII 2020. Lecture Notes in Computer Science, vol 12203. Springer, Cham. Click here to access.

[24] N. L. Laplante, P. A. Laplante and J. M. Voas, "Stakeholder Identification and Use Case Representation for Internet-of-Things Applications in Healthcare," in IEEE Systems Journal, vol. 12, no. 2, pp. 1589-1597. Click here to access.

[25] Bernsteiner R., Schlögl S. (2017) Design Science and ThinkLets as a Holistic Approach to Design IoT/IoS Systems. In: Uden L., Lu W., Ting IH. (eds) Knowledge Management in Organizations. KMO 2017. Communications in Computer and Information Science, vol 731. Springer, Cham. Click here to access.

[26] A. Krishna, M. Le Pallec, R. Mateescu, L. Noirie and G. Salaün, "IoT Composer: Composition and Deployment of IoT Applications," 2019 IEEE/ACM 41st International Conference on Software Engineering: Companion Proceedings (ICSE-Companion), 2019, pp. 19-22. Click here to access.


TrUStAPIS: A Trust Requirements Elicitation Method for IoT

Authors: Davide Ferraris e Carmen Fernandez-Gago [16]

Techniques: UML Diagrams and Template.

Description: The authors proposed a method of requirements elicitation in the context of IoT with the aim of enhancing requirements validation. The authors used UML diagrams and JSON templates to help designing the process.



Uma Tecnologia para Apoiar a Engenharia de Requisitos de Sistemas de Software IoT

Authors: Silva et al. [17]

Techniques: UML Diagrams Template.

Description: The authors provided a template to fill in information about IoT processes, based on techniques SCENARIoT and SCENARIoTCHECK, being useful for the software document elaboration.



Non Functional requirement analysis in IoT based Smart Traffic Management System

Authors: Mahalank et al. [20]

Techniques: Template and Checklist

Description: The authors adopted a framework composed by three steps, templates and checklist to help during requirements validation.



References

Icons made by Freepik from www.flaticon.com

[1] Rehman, Tousif ur, Muhammad Naeem Ahmed Khan e Naveed Riaz: Analysis of requirement engineering processes, tools/techniques and methodologies. International Journal of Information Technology and Computer Science (IJITCS), 5(3):40, 2013. Click here to access.

[2] Pohl, K. e C. Rupp: Requirements Engineering Fundamentals: A Study Guide forthe Certified Professional for Requirements Engineering Exam - Foundation Level - IREB compliant. Rocky Nook, 2011, ISBN 9781457111921. Click here to access.

[16] Ferraris, D., Fernandez-Gago, C. TrUStAPIS: a trust requirements elicitation method for IoT. Int. J. Inf. Secur. 19, 111–127 (2020). Click here to access.

[17] Silva, Danyllo, Bruno Pedraça de Souza, Taisa Guidini Gonçalves e Guilherme Horta Travassos: Uma Tecnologia para Apoiar a Engenharia de Requisitos de Sistemas de Software IoT. Em Ayala, Claudia P., Leonardo Murta, Daniela Soares Cruzes, Eduardo Figueiredo, Carla Silva, Jose Luis de la Vara, Breno de França, Martín Solari, Guilherme Horta Travassos e Ivan Machado (editores): Proceedings of the XXIII Iberoamerican Conference on Software Engineering, CIbSE 2020, Curitiba, Paraná, Brazil, November 9-13, 2020, páginas 342–355. Curran Associates, 2020. Click here to access.

[20] S. N. Mahalank, K. B. Malagund and R. M. Banakar, "Non Functional Requirement Analysis in IoT based smart traffic management system," 2016 International Conference on Computing Communication Control and automation (ICCUBEA), 2016, pp. 1-6. Click here to access.


Emotion-oriented requirements engineering: A case study in developing a smart home system for the elderly

Authors: Curumsing et al. [14]

Techniques: Goal Model and Questionnaire.

Description: The authors developed the SofiHub to help seniors how to adapt their home to a smart home and help their routine, provide comfort, ease the effects of loneliness and reassure their families. The authors adopted a Goal Model-based process to relate emotional and system goals. The authors used questionnaires to validate the requirements.



Intelligent Parking Management by Means of Capability Oriented Requirements Engineering

Authors: Hamdi et al. [15]

Techniques: CORE, UML Diagrams and Goal Model

Description: The authors proposed a process in the context of smart cities using Capacity Oriented Requirements Engineering (CORE), serving as a basis for creating a smart parking system using UML diagrams and Goal Model to perform requirements elicitation and analysis.



Towards Modelling and Analysis of Spatial and Temporal Requirements

Authors: Mounir Touzani e Christophe Ponsand [11]

Techniques: Goal Model, KAOS and GORE.

Description: The authors proposed diagrams to perform requirements integration and analysis in order to detect problems in the development process phases. The authors used Goal-oriented Requirements Engineering (GORE), Keep All Objectives Satisfied (KAOS) and Goal Model.



References

Icons made by Freepik from www.flaticon.com

[1] Rehman, Tousif ur, Muhammad Naeem Ahmed Khan e Naveed Riaz: Analysis of requirement engineering processes, tools/techniques and methodologies. International Journal of Information Technology and Computer Science (IJITCS), 5(3):40, 2013. Click here to access.

[2] Pohl, K. e C. Rupp: Requirements Engineering Fundamentals: A Study Guide forthe Certified Professional for Requirements Engineering Exam - Foundation Level - IREB compliant. Rocky Nook, 2011, ISBN 9781457111921. Click here to access.

[11] M. Touzani and C. Ponsard, "Towards Modelling and Analysis of Spatial and Temporal Requirements," 2016 IEEE 24th International Requirements Engineering Conference (RE), 2016, pp. 389-394. Click here to access.

[14] Curumsing, Maheswaree Kissoon, Niroshinie Fernando, Mohamed Abdelrazek, Rajesh Vasa, Kon Mouzakis e John Grundy: Emotion-oriented requirements engineering: A case study in developing a smart home system for the elderly. Journal of Systems and Software, 147:215–229, 2019, ISSN 0164-1212. Click here to access.

[15] Hamdi M.S., Ghannem A., Loucopoulos P., Kavakli E., Ammar H. (2019) Intelligent Parking Management by Means of Capability Oriented Requirements Engineering. In: Wotawa F., Friedrich G., Pill I., Koitz-Hristov R., Ali M. (eds) Advances and Trends in Artificial Intelligence. From Theory to Practice. IEA/AIE 2019. Lecture Notes in Computer Science, vol 11606. Springer, Cham. Click here to access.


An Evidence-Based Framework for Supporting the Engineering of IoT Software Systems Mid-stage Research

Author: Rebeca Motta [19]

Techniques: 5W1H.

Description: The author proposed a framework using the 5W1H methodology containing three steps in order to strengthen requirements validation for an IoT device to eliminate possible weaknesses.



References

Icons made by Freepik from www.flaticon.com

[1] Rehman, Tousif ur, Muhammad Naeem Ahmed Khan e Naveed Riaz: Analysis of requirement engineering processes, tools/techniques and methodologies. International Journal of Information Technology and Computer Science (IJITCS), 5(3):40, 2013. Click here to access.

[2] Pohl, K. e C. Rupp: Requirements Engineering Fundamentals: A Study Guide forthe Certified Professional for Requirements Engineering Exam - Foundation Level - IREB compliant. Rocky Nook, 2011, ISBN 9781457111921. Click here to access.

[19] Rebeca C. Motta. 2019. An Evidence-Based Framework for Supporting the Engineering of IoT Software Systems. SIGSOFT Softw. Eng. Notes 44, 3 (July 2019), 22–23. Click here to access.


Intelligent Parking Management by Means of Capability Oriented Requirements Engineering

Authors: Hamdi et al. [15]

Techniques: CORE, UML Diagrams and Goal Model

Description: The authors proposed a process in the context of smart cities using Capacity Oriented Requirements Engineering (CORE), serving as a basis for creating a smart parking system using UML diagrams and Goal Model to perform requirements elicitation and analysis.



References

Icons made by Freepik from www.flaticon.com

[1] Rehman, Tousif ur, Muhammad Naeem Ahmed Khan e Naveed Riaz: Analysis of requirement engineering processes, tools/techniques and methodologies. International Journal of Information Technology and Computer Science (IJITCS), 5(3):40, 2013. Click here to access.

[2] Pohl, K. e C. Rupp: Requirements Engineering Fundamentals: A Study Guide forthe Certified Professional for Requirements Engineering Exam - Foundation Level - IREB compliant. Rocky Nook, 2011, ISBN 9781457111921. Click here to access.

[15] Hamdi M.S., Ghannem A., Loucopoulos P., Kavakli E., Ammar H. (2019) Intelligent Parking Management by Means of Capability Oriented Requirements Engineering. In: Wotawa F., Friedrich G., Pill I., Koitz-Hristov R., Ali M. (eds) Advances and Trends in Artificial Intelligence. From Theory to Practice. IEA/AIE 2019. Lecture Notes in Computer Science, vol 11606. Springer, Cham. Click here to access.