On Challenges in Engineering IoT Software Systems
DOI:
https://doi.org/10.5753/jserd.2019.15Keywords:
Internet of things, IoT, Contemporary Software Systems, Software Engineering, Empirical Software EngineeringAbstract
Contemporary software systems, such as the Internet of Things (IoT), Industry 4.0, and Smart Cities represent a technology changing that offer challenges for their construction since they are calling into question our traditional form of developing software. They are a promising paradigm for the integration of devices and communications technologies. It is leading to a shift in the classical monolithic view of development where stakeholders used to receive a software product at the end (that we have been doing for decades), to software systems incrementally materialized through physical objects interconnected by networks and with embedded software to support daily activities. Therefore, we need to revisit the classical way of developing software and start to consider the particularities required by these new sorts of applications. Since such software systems involve different concerns, this paper presents the results of an investigation towards defining a framework to support the software systems engineering of IoT applications. To support its representation, we evolved the Zachman’s Framework as an alternative to the organization of the framework architecture. The filling of such a framework is supported by a) 14 significant concerns of IoT applications, recovered from the technical literature, practitioner’s workshops and a Government Report; b) seven structured facets emerged from IoT data analysis, that together represent the engineering challenges to be faced both by researchers and practitioners towards the advancement of IoT in practice.
Downloads
References
Agina A, Matheus Edward IY, Shalannanda W (2016) Enhanced information security management system framework design using ISO 27001 and Zachman framework - A study case of XYZ company. In: 2016 2nd International Conference on Wireless and Telematics (ICWT). IEEE, pp 62–66
Alegre U, Augusto JC, Clark T (2016) Engineering context aware systems and applications: A survey. J Syst Softw 117:55–83. http://dx.doi.org/10.1016/j.jss.2016.02.010
Almeida VAF, Doneda D, Moreira da Costa E (2018) Humane Smart Cities: The Need for Governance. IEEE Internet Comput 22:91–95. http://dx.doi.org/10.1109/MIC.2018.022021671
Andrade RMC, Carvalho RM, de Araújo IL, et al. (2017) What Changes from Ubiquitous Computing to Internet of Things in Interaction Evaluation? In: International Conference on Distributed, Ambient, and Pervasive Interactions. pp 3–21
Aniculaesei A, Grieser J, Rausch A, et al. (2018) Towards a holistic software systems engineering approach for dependable autonomous systems. In: Proceedings of the 1st International Workshop on Software Engineering for AI in Autonomous Systems - SEFAIS ’18. ACM Press, New York, New York, USA, pp 23–30
Atabekov A, Starosielsky M, Lo DC-T, He JS (2015) Internet of Things-Based Temperature Tracking System. In: 2015 IEEE 39th Annual Computer Software and Applications Conference. IEEE, pp 493–498
Atzori L, Iera A, Morabito G (2010) The Internet of Things: A survey. Comput Netw 54:2787–2805. http://dx.doi.org/10.1016/j.comnet.2010.05.010
Badreddin O (2013) Thematic Review and Analysis of Grounded Theory Application in Software Engineering. Adv Softw Eng 2013:1–9. http://dx.doi.org/10.1155/2013/468021
Basili VR, Caldeira G, Rombach HD (1994) Goal Question Metric Paradigm
Bauer C, Dey AK (2016) Considering the context in thedesign of intelligent systems: Current practices and suggestions for improvement. J Syst Softw 112:26–47. http://dx.doi.org/10.1016/j.jss.2015.10.041
Bera S, Misra S, Vasilakos A V. (2017) Software-Defined Networking for the Internet of Things: A Survey. IEEE Internet Things J 4:1994–2008. http://dx.doi.org/10.1109/JIOT.2017.2746186
Biolchini J, Mian PG, Candida A, Natali C (2008) Software and Data Technologies. Springer Berlin Heidelberg, Berlin, Heidelberg
Bondar S, Hsu JC, Pfouga A, Stjepandić J (2017) Agile digital transformation of System-of-Systems architecture models using the Zachman framework. J Ind Inf Integr 7:33–43. http://dx.doi.org/10.1016/j.jii.2017.03.001
Borgia E (2014) The Internet of Things vision: Key features, application, and open issues. Comput Commun 54:1–31. http://dx.doi.org/10.1016/j.comcom.2014.09.008
Brings J (2017) Verifying Cyber-Physical System Behavior in the Context of Cyber-Physical System-Networks. In: 2017, IEEE 25th International Requirements EngineeringConference (RE). IEEE, pp 556–561
Caron X, Bosua R, Maynard SB, Ahmad A (2016) The Internet of Things (IoT) and its impact on individual privacy: An Australian perspective. Comput Law SecureRev 32:4–15. http://dx.doi.org/10.1016/j.clsr.2015.12.001
Carver J (2007) The Use of Grounded Theory in Empirical Software Engineering. In: Empirical Software Engineering Issues. Critical Assessment and Future Directions. Springer Berlin Heidelberg, Berlin, Heidelberg, pp 42–42
Chen G, Tang J, Coon JP (2018) Optimal Routing for Multihop Social-Based D2D Communications in the Internet of Things. IEEE Internet Things J 5:1880–1889. http://dx.doi.org/10.1109/JIOT.2018.2817024
CNI CN da I (2016) Indústria 4.0: novo Desafio para a indústria Brasileira. Indicadores CNI 17:13
Conti JP (2006) ITU Internet Reports 2005: The Internet of Things. Commun Eng 4:20. "http://dx.doi.org/10.1049/ce:20060603
Costa B, Pires PF, Delicato FC (2017) Specifying Functional Requirements and QoS Parameters for IoT Systems. In: 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). IEEE,
pp 407–414
Dalli A, Bri S (2016) Acquisition devices in the internet of things: RFID and sensors. J Theor Appl Inf Technol 90:194–200
Davoudpour M, Sadeghian A, Rahnama H (2015) Synthesizing social context for making the Internet of Things environments more immersive. In: 2015 6th International Conference on the Network of the Future (NOF). IEEE, pp 1–5
de Farias CM, Brito IC, Pirmez L, et al. (2017) COMFIT: A development environment for the Internet of Things. Future Gener Comput Syst 75:128–144. http://dx.doi.org/10.1016/j.future.2016.06.031
de Villiers D (2001) Using the Zachman Framework to Assess the Rational Unified Process Overview of the Zachman Framework. Ration Edge
Desolda G, Ardito C, Matera M (2017) Empowering End Users to Customize their Smart Environments. ACM Trans Comput-Hum Interact 24:1–52. http://dx.doi.org/10.1145/3057859
Dutton WH (2014) Putting things to work: Social and policy challenges for the Internet of things. Info 16:1–21. http://dx.doi.org/10.1108/info-09-2013-0047
Fitzgerald B, Stol K-J (2017) Continuous software engineering: A roadmap and agenda. J Syst Softw 123:176–189.
Gil D, Ferrández A, Mora-Mora H, Peral J (2016) Internet of Things: A Review of Surveys Based on Context-Aware Intelligent Services. Sensors 16:1069. http://dx.doi.org/10.3390/s16071069
Gluhak A, Krco S, Nati M, et al. (2011) A survey on facilities for experimental internet of things research. IEEE Commun Mag 49:58–67. http://dx.doi.org/10.1109/MCOM.2011.6069710
Goethals FG, Snoeck M, Lemahieu W, Vandenbulcke J (2006) Management and enterprise architecture clic The FAD(E)E framework. Inf Syst Front 8:67–79. http://dx.doi.org/10.1007/s10796-006-7971-1
Gubbi J, Buyya R, Marusic S, Palaniswami M (2013) Internet of Things (IoT): A vision, architectural elements, and future directions. Future Gener Comput Syst 29:1645–1660. http://dx.doi.org/10.1016/j.future.2013.01.010
Guo B, Yu Z, Zhou X, Zhang D (2012) Opportunistic IoT: Exploring the social side of the internet of things. In: Proceedings of the 2012 IEEE 16th International Conference on Computer Supported Cooperative Work in Design (CSCWD). IEEE, pp 925–929
Huang J, Duan Q, Xing C-C, Wang H (2017) Topology Control for Building a Large-Scale and Energy-Efficient Internet of Things. IEEE Wirel Commun 24:67–73. http://dx.doi.org/10.1109/MWC.2017.1600193WC
IEEE (2004) Guide to the Software Engineering Body of Knowledge. IEEE Computer Society Press
Jacobson I, Spence I, Ng P-W (2017) Is there a single method for the internet of things? Commun ACM 60:46–53. http://dx.doi.org/10.1145/3106637
Khaitan SK, McCalley JD (2015) Design Techniques and Applications of Cyberphysical Systems: A Survey. IEEE Syst J 9:350–365. http://dx.doi.org/10.1109/JSYST.2014.2322503
Kusmin M, Saar M, Laanpere M, Rodriguez-Triana MJ (2017) Work in progress — Smart schoolhouse as a datadriven inquiry learning space for the next generation of engineers. In: 2017 IEEE Global Engineering Education Conference (EDUCON). IEEE, pp 1667–1670
Larrucea X, Combelles A, Favaro J, Taneja K (2017) Software Engineering for the Internet of Things. IEEE Softw 34:24–28. http://dx.doi.org/10.1109/MS.2017.28
Li S, Xu L Da, Zhao S (2015) The internet of things: a survey. Inf Syst, Front 17:243–259. http://dx.doi.org/10.1007/s10796-014-9492-7
Li S, Xu L Da, Zhao S (2018) 5G Internet of Things: A survey. J Ind Inf Integr 10:1–9. http://dx.doi.org/10.1016/j.jii.2018.01.005
Liao Y, Deschamps F, Loures E de FR, Ramos LFP (2017) Past, present, and future of Industry 4.0 - a systematic literature review and research agenda proposal. Int J Prod Res 55:3609–3629. http://dx.doi.org/10.1080/00207543.2017.1308576
Lu Y (2017) Industry 4.0: A survey on technologies, applications, and open research issues. J Ind Inf Integr 6:1– 10. http://dx.doi.org/10.1016/j.jii.2017.04.005
Madakam S, Ramaswamy R, Tripathi S (2015) Internet of Things (IoT): A Literature Review. J Comput Commun 03:164–173. http://dx.doi.org/10.4236/jcc.2015.35021
Matalonga S, Rodrigues F, Travassos G (2015) Challenges in Testing Context-Aware Software Systems. In: 9th Workshop on Systematic and Automated Software Testing 2015. Belo Horizonte, Brazil, pp 51–60
Matalonga S, Rodrigues F, Travassos GH (2017) Characterizing testing methods for context-aware software systems: Results from a quasi-systematic literature review. J Syst Softw 131:1–21. http://dx.doi.org/10.1016/j.jss.2017.05.048
Mihovska A, Sarkar M (2018) New Advances in the Internet of Things. Springer International Publishing, Cham
Motta RC, de Oliveira KM, Travassos GH (2018) On challenges in engineering IoT software systems. In: Proceedings of the XXXII Brazilian Symposium on Software Engineering - SBES ’18. ACM Press, New York, New York, USA, pp 42–51
Motta RC, de Oliveira KM, Travassos GH A Framework to Support the Engineering of Internet of Things Software Systems. EICS 19 June 18–21 2019 Valencia Spain 6. http://dx.doi.org/10.1145/3319499.3328239
Motta RC, Oliveira KM de, Travassos GH (2016) Characterizing Interoperability in Context-Aware Software Systems. In: 2016 VI Brazilian Symposium on Computing Systems Engineering (SBESC). IEEE, pp 203–
Nielsen CB, Larsen PG, Fitzgerald J, et al. (2015) Systems of Systems Engineering: Basic Concepts, Model-Based Techniques, and Research Directions. ACM Comput Surv 48:1–41. http://dx.doi.org/10.1145/2794381
Nogueira JM, Romero D, Espadas J, Molina A (2013) Leveraging the Zachman framework implementation using the action – research methodology – a case study: aligning the enterprise architecture and the business goals. Enterp Inf Syst 7:100–132. http://dx.doi.org/10.1080/17517575.2012.678387
Panetto H, Baïna S, Morel G (2007) Mapping the IEC 62264 models onto the Zachman framework for analyzing products information traceability: A case study. J Intell Manuf 18:679–698. http://dx.doi.org/10.1007/s10845-007-0040-x
Patel P, Cassou D (2015) Enabling high-level application development for the Internet of Things. J Syst Softw 103:62–84. http://dx.doi.org/10.1016/j.jss.2015.01.027
Pfleeger SL, Atlee JM (1998) Software engineering: theory and practice. Pearson Education India
Roca D, Milito R, Nemirovsky M, Valero M (2018) Fog Computing in the Internet of Things. Springer International Publishing, Cham
Rojas RA, Rauch E, Vidoni R, Matt DT (2017) Enabling Connectivity of Cyber-physical Production Systems: A Conceptual Framework. Procedia Manuf 11:822–829. http://dx.doi.org/10.1016/j.promfg.2017.07.184
Sánchez Guinea A, Nain G, Le Traon Y (2016) A systematic review on the engineering of software for ubiquitous systems. J Syst Softw 118:251–276. http://dx.doi.org/10.1016/j.jss.2016.05.024
Santos I de S, Andrade RM de C, Rocha LS, et al. (2017) Test case design for context-aware applications: Are we there yet? Inf Softw Technol 88:1–16. http://dx.doi.org/10.1016/j.infsof.2017.03.008
Seaman CB (1999) Qualitative methods in empirical studies of software engineering. IEEE Trans Softw Eng 25:557–572. http://dx.doi.org/10.1109/32.799955
Shang X, Zhang R, Zhu X, Zhou Q (2016) Design theory, modeling, and the application for the Internet of Things service. Enterp Inf Syst 10:249–267. http://dx.doi.org/10.1080/17517575.2015.1075592
Sousa P, Pereira C, Vendeirinho R, et al. (2007) Applying the Zachman Framework Dimensions to Support Business Process Modeling. In: Digital Enterprise Technology. Springer US, Boston, MA, pp 359–366
Sowa JF, Zachman JA (1992) Extending and formalizing the framework for information systems architecture. IBM Syst J 31:590–616. http://dx.doi.org/10.1147/sj.313.0590
Spínola RO, Travassos GH (2012) Towards a framework to characterize ubiquitous software projects. Inf Softw Technol 54:759–785. http://dx.doi.org/10.1016/j.infsof.2012.01.009
Strauss A, Corbin J (1990) Basics of qualitative research: Techniques and procedures for developing grounded theory. Sage Publications, Inc, Newbury Park
Tang A, Jun Han, Pin Chen (2004) A Comparative Analysis of Architecture Frameworks. In: 11th Asia-Pacific Software Engineering Conference. IEEE, pp 640–647
Technology I (2015) Requirement Formalization using OWL Ontology-based Zachman Framework
Tian B, Yu S, Chu J, Li W (2018) Analysis of Direction on Product Design in the Era of the Internet of Things. MATEC Web Conf 176:01002.
Trappey AJC, Trappey C V., Hareesh Govindarajan U, et al. (2017) A review of essential standards and patent landscapes for the Internet of Things: A key enabler for Industry 4.0. Adv Eng Inform 33:208–229. http://dx.doi.org/10.1016/j.aei.2016.11.007
Whitmore A, Agarwal A, Da Xu L (2015) The Internet of Things—A survey of topics and trends. Inf Syst, Front 17:261–274. http://dx.doi.org/10.1007/s10796-014-9489-2
Wohlin C (2014) Guidelines for snowballing in systematic literature studies and a replication in software engineering. Proc 18th Int Conf Eval Assess Softw Eng - EASE 14 1– 10. http://dx.doi.org/10.1145/2601248.2601268
Xu L Da, He W, Li S (2014) Internet of Things in Industries: A Survey. IEEE Trans Ind Inform 10:2233–2243. http://dx.doi.org/10.1109/TII.2014.2300753
Yan Yu, Jianhua Wang, Guohui Zhou (2010) The exploration in the education of professionals in applied Internet of Things Engineering. In: 2010 4th International Conference on Distance Learning and Education. IEEE, pp 74–77
Zachman JA (1987) A framework for information systems architecture. IBM Syst J 26:276–292. http://dx.doi.org/10.1147/sj.263.0276
Zambonelli F (2016) Towards a General Software Engineering Methodology for the Internet of Things
Zhang C, Shi X, Chen D (2014) Safety analysis and optimization for networked avionics system. In: 2014, IEEE/AIAA 33rd Digital Avionics Systems Conference (DASC). IEEE, pp 4C1-1-4C1-12
Downloads
Published
How to Cite
Issue
Section
License
Copyright (c) 2019 Rebeca Campos Motta, Káthia Marçal de Oliveira, Guilherme Horta Travassos
![Creative Commons License](http://i.creativecommons.org/l/by/4.0/88x31.png)
This work is licensed under a Creative Commons Attribution 4.0 International License.