SlideShare a Scribd company logo
An exploration on developing IoT based systems
Speaker: Mahdi Fahmideh (PhD in Information Systems)
Senior Lecturer in Cyber Security, University of Southern Queensland (UniSQ), Australia
E-email: Mahdi dot Fahmideh at usq.edu.au
1
International Webinar Series
Internet of Things (IoT): Technology and Application
Petra Christian University, Indonesia
May 2023
Thanks to my collaborators
(alphabetical order)
John Grundy
Professor of Software Engineering
Monash University, Australia
Didar Zowghi
Professor of Software Engineering
CSIRO Data 61, Australia
Aakash Ahmad,
Assistant Professor of Software Engineering
Lancaster University Leipzig, German
Ali Behnaz
Data Scientist Lead
Quantium, Australia
Willy Susilo
Senior Professor, Cryptography
University of Wollongong, Australia
2
What is Internet of Things (IoT)
IoT are becoming increasingly popular across different
industrial domains and their development is rapidly increasing
to provide value-added services to end-users and citizens
Increasing adoption: Smart cities, smart grids, wearable
devices, smart agriculture, Industry 4.0, and self-driving cars
are some examples of application domains that IoT promises
to revolutionize.
Including thousands of distributed smart objects, backbone
services, platforms, and applications that are interconnected to
provide added value and intelligent reasoning for end-users
3
What is Internet of Things (IoT)
Key building blocks of IoT based systems
Things (or objects): small/large physical trackable,
configurable, and controllable objects such as sensors, smart
objects, devices, humans, RFID tags, and buildings, with the
ability to store, process, transmit or receive data
Software applications: web portal, mobile app, legacy systems,
enable users to use functionalities provided by IoT system.
Infrastructure: hardware for data processing, storing,
computing, and interconnectivity among data centres via
different network communication protocols
People: connect to IoT system and use its functionalities
4
Key challenges in developing IoT systems
IoT systems as a complex socio-technical IT artefacts, i.e., combination of
software and hardware components responsible to manage context-aware
interactions
❑ Security and Privacy: IoT systems handle vast amounts of sensitive data,
making security and privacy a significant concern.
❑ Interoperability and Standards: IoT involves diverse devices and
platforms from different manufacturers, leading to interoperability
challenges.
❑ Scalability and Performance: IoT systems need to handle a large number
of connected devices and process massive amounts of data in real-time.
❑ Connectivity and Network Reliability: IoT relies on reliable and robust
network connectivity.
❑ Power Management: Many IoT devices are constrained by
limited power resources, such as batteries.
❑ Data Management and Analytics: IoT generates massive
volumes of data, which need to be efficiently managed, stored,
and analyzed.
❑ Ethical and Legal Considerations: IoT systems often collect
personal data and operate in sensitive domains. Adhering to
ethical practices, ensuring data privacy compliance, and
addressing legal and regulatory requirements are essential for
responsible IoT development.
Addressing these challenges requires a comprehensive approach, involving a combination of technical solutions, industry standards, regulatory
frameworks, and collaboration among stakeholders in the IoT ecosystem.
5
Information systems development methods
(a.k.a. software engineering methodologies)
❑ Analogy: to build or buy a property (e.g., house, unit apartment, etc), we
need to adopt a method to organise and anticipate requirements, steps,
and risks.
❑ To build information systems (or software systems), we need to adopt
systematic methods
❑ Ad-hoc system development vs. systematic (yet tailorable) system
development
❑ Adopting an systematic methods for managing the complexity of
IoT platform development vs. ad-hoc use of implementation
techniques and technologies to build systems which are likely to
deliver a vulnerable and poor quality platform
❑ Information system development methods (development methods for
short): entire suite of system development lifecycle activities, e.g.,
planning, analysis, design, building, testing, and maintenance, undertaken
by humans individually/collectively to create a working information
system
❑ As the core centrepiece of quality management initiatives to build
sustainable information systems in a cost effective manner
6
Importance of development methods to build IoT systems
❑ An IoT system development is, after all, essentially a type of information
system development
❑ In contrast to the conventional system development which takes place
predominantly within an individual system- the socio-technical nature of
IoT systems raises a range of new important complexities
❑ Example: various hardware and software components, each with their
own distinct development process, are linked to different parties and are
working in an extremely dynamic and distributed fashion
❑ Requirements from various stakeholders such as citizens, legislators, and
administrative authorities.
❑ Some complexities are rooted in the immaturity of current technologies
BUT some are intrinsic to IoT
❑ Development of IoT systems is thus much more complicated than that
typically deemed in the conventional system development wisdom
7
Benefits of applying development methods to build IoT systems
❑ Structured and systematic
❑ providing guidelines, relevant tasks, modeling techniques, and best practices to manage complexity, minimize errors, and improve the overall
quality of the IoT system at software and hardware level components
❑ Requirements driven
❑ by capturing and prioritizing various stakeholders’ requirements and expectations, ensuring that the developed IoT system meets their needs
❑ Risk mitigation
❑ inherent risks in IoT systems such as security vulnerabilities, data privacy concerns, interoperability challenges, and scalability issues can be
better handled by development methods throughout development lifecycle as they help identify potential risks, assess their impact, and devise
techniques to mitigate them
❑ Integration and interoperability
❑ IoT systems may involve various components, devices, and technologies. Development methods can help with the design and implementation
necessary interfaces, protocols, and data exchange mechanisms for seamless integration among different IoT system components
❑ Scalability and flexibility
❑ IoT systems are scaled and adapted to changing requirements and environments. Development methods emphasize the design of scalable and
flexible architectures that can accommodate future evolution of IoT systems to allow adding new devices and services without disruptions
❑ Quality assurance
❑ by employing development methods, organizations can enhance the quality of their IoT systems and ensure the reliability, performance, and
functionality of the IoT system
8
Development methods to build IoT systems
❑ Researchers and practitioners query about how IoT systems should best be developed
❑ The majority of research in IoT literature has been focused on purely technical, i.e.,
implementation-oriented, aspects of IoT system development
❑ A high-level process-oriented understanding and its related issues still remain few and far
between
❑ Academic literature
❑ Sample development methods: Collin’s, Ignite, InterMeth, ACOSO-Meth, among others
❑ Too general and largely untested in practice
❑ Lack of an overall domain-independent and empirically evaluated framework
❑ Lack of consistent and agreed terminologies
❑ IoT industry and multi-vocal literature
❑ big players: IBM, Cisco, Amazon, Google Cloud IoT, CityPulse, ThingSpeak, and
Microsoft Azure IoT
❑ Providing some case studies of successful implementation of IoT-based systems
❑ Little attention to underlying development method(s) that are enacted.
9
Research objective:
Towards understanding underlying development method for IoT systems
❑ Research questions:
❑ Tasks
❑ Roles
❑ Models
10
Development
process
Roles Models
What
tasks, e.g. lifecycle, SDLC,
might be incorporated
into IoT sys development
process?
What
roles, e.g., developers,
stakeholders, might
be involved in IoT
sys. development?
What
models, e.g., diagrams,
notations, might be
produced during
IoT sys. Development?
What tools, technologies,
techniques, heuristics,
guidelines, principles are
provided to operationalise and
support the development
process, roles, models,?
adapted from Sabine’s model (with kind permission)
Research approach
Mixed-method research approach
▪ use both qualitative and quantitative research methods
▪ useful to get breadth and depth of understanding and corroboration of a phenomenon for which
extant research is fragmented, premature, or equivocal
❑ Quantitative method
❑ Survey
❑ Over 127 IoT practitioners from 35 countries across 6
continents with 15 different industry backgrounds
❑ Statistical analysis
❑ Perceived important of framework
❑ One-Sample T-Test
❑ To test if their importance ratings of
framework tasks distributed away from the
median 5, i.e., somewhat important.
❑ SPSS software
❑ Qualitative method (derivation of a generic method from the
literature)
❑ Systematic literature review
❑ Snowballing technique
❑ Sources:
❑ Leading Information Systems venues, e.g., senior basket
of AIS
❑ Leading Software Engineering venues
❑ Over 66 studies from academic and multi-vocal literature
Generic IoT development method (presented as an evaluation framework)
Source Fahmideh, Mahdi, and Didar Zowghi. "An exploration of IoT platform development." Information Systems 87 (2020): 101409 (with kind permission)
Generic IoT development method (continue)
Source Fahmideh, Fahmideh, M., Ahmad, A., Behnaz, A., Grundy, J., & Susilo, W. (2021). Software Engineering for Internet of Things: The Practitioners' Perspective. IEEE Transactions on Software Engineering, 48(8),
2857-2878. (with kind permission)
Process model
❑ Phases and tasks for incorporation into development of IoT systems
Generic IoT development method (continue)
❑ Roles
Source Fahmideh, Mahdi, and Didar Zowghi. "An exploration of IoT platform development." Information Systems 87 (2020): 101409 (with kind permission)
Generic IoT development method (continue)
❑ Modeling (modeling languages and modeling outputs
Source Fahmideh, Mahdi, and Didar Zowghi. "An exploration of IoT platform development." Information Systems 87 (2020): 101409 (with kind permission)
Generic IoT development method (presented as an evaluation framework)
Source Fahmideh, Fahmideh, M., Ahmad, A., Behnaz, A., Grundy, J., & Susilo, W. (2021). Software Engineering for Internet of Things: The Practitioners' Perspective. IEEE Transactions on Software Engineering,
2857-2878. (with kind permission)
Generic IoT development method (presented as an evaluation framework)
Source Fahmideh, Fahmideh, M., Ahmad, A., Behnaz, A., Grundy, J., & Susilo, W. (2021). Software Engineering for Internet of Things: The Practitioners' Perspective. IEEE Transactions on Software Engineering,
2857-2878. (with kind permission)
Generic IoT development method (presented as an evaluation framework)
Source Fahmideh, Fahmideh, M., Ahmad, A., Behnaz, A., Grundy, J., & Susilo, W. (2021). Software Engineering for Internet of Things: The Practitioners' Perspective. IEEE Transactions on Software Engineering,
2857-2878. (with kind permission)
Recommendations for designing IoT development methods
Source Fahmideh, Fahmideh, M., Ahmad, A., Behnaz, A., Grundy, J., & Susilo, W. (2021). Software Engineering for Internet of Things: The Practitioners' Perspective. IEEE Transactions on Software Engineering, 48(8),
2857-2878. (with kind permission)
Recommendations for designing IoT development methods
Source Fahmideh, Fahmideh, M., Ahmad, A., Behnaz, A., Grundy, J., & Susilo, W. (2021). Software Engineering for Internet of Things: The Practitioners' Perspective. IEEE Transactions on Software Engineering, 48(8),
2857-2878. (with kind permission)
Recommendations for designing IoT development methods (continue)
Source Fahmideh, Fahmideh, M., Ahmad, A., Behnaz, A., Grundy, J., & Susilo, W. (2021). Software Engineering for Internet of Things: The Practitioners' Perspective. IEEE Transactions on Software Engineering, 48(8),
2857-2878. (with kind permission)
Implications for research and practice
❑ Scale matters
❑ Although debatable, we believe that IoT development is not necessarily a new revolutionary
genre and it can be well connected and positioned in the conventional wisdom of information
systems development (a.k.a. software engineering methodologies), however, it reappears taking
to an extreme level
❑ New techniques at micro level
❑ Inherent challenges at the micro process level, i.e., performing development tasks, signify that
not everything necessarily from the conventional software engineering literature can be equally
applied in an IoT context
❑ Generic method as an evaluation framework
❑ The generic method as a tool or to-do checklist to appraise the extent to which their inhouse
development approach supports the development of IoT systems
Future research directions
❑ One-size-fits-all assumption is not a practical choice
❑ Development methods should be tailored for a given IoT development scenario
❑ Requirements analysis is missing in development methods
❑ Mapping requirements to IoT systems
❑ Complexity of requirements, i.e., diversity stakeholders at large scale
❑ Role oriented IoT development
❑ Development over people
❑ Multi-faceted stakeholder driven nature of IoT systems
❑ The influence of human entity during IoT system development
References
❑ Mahdi Fahmideh, Didar Zowghi. An exploration of IoT platform development, Information Systems 87 (2020):
101409
❑ Mahdi Fahmideh, Aakash Ahmad, Ali Behnaz, John Grundy, Willy Susilo, Software Engineering for Internet of
Things: The Practitioners' Perspective, IEEE Transactions on Software Engineering, 48(8), 2857-2878
Thank you!

More Related Content

PPTX
Bl cybersecurity z_dooly
PPTX
Group 4 IT INfrastructure Group presentation Final [Auto-saved].pptx
PPT
The Internet of Things: What's next?
PPTX
Internet of Things: Research Directions
PPTX
Internet of Things: Trends and challenges for future
PPTX
Key challenges facing the future of IoT
PPTX
Future of IoT: Key Challenges to Face
PPTX
Top 10 Trends to Watch for In Data Science
Bl cybersecurity z_dooly
Group 4 IT INfrastructure Group presentation Final [Auto-saved].pptx
The Internet of Things: What's next?
Internet of Things: Research Directions
Internet of Things: Trends and challenges for future
Key challenges facing the future of IoT
Future of IoT: Key Challenges to Face
Top 10 Trends to Watch for In Data Science

Similar to IoT system development.pdf (20)

PPTX
IoT Standardization and Implementation Challenges
PDF
A Survey of Building Robust Business Models in Pervasive Computing
PPT
Hedstrom Infrastructure
PDF
final.pdf
PDF
Qualities of IOT Software Development Company.pdf
DOCX
CLOUD CPOMPUTING SECURITY
PPTX
Security FJ_Exec_Strattegy_Comittee_V13.4.pptx
PDF
Tools and Techniques for Designing, Implementing, & Evaluating Ubiquitous Com...
PPTX
University of Borås-full talk-2023-12-09.pptx
PDF
Meetup 11 here&now_megatriscomp design methodpartii_v0.2
PDF
Paper Titled Information Security in an organization
PDF
PDF
Introduction smart transportation in.pdf
PDF
Privacy Mindset for Developing Internet of Things Applications for Social Sen...
PDF
Towards the Intelligent Internet of Everything
PPTX
Software Development Trends Analysis Template v2.pptx
PPTX
International-Standard-Case-Studies-in-IoT.pptx
PPTX
IoT, AI and Blockchain: Catalysts for Digital Transformation
PPTX
NANI PPT.pptx
PDF
IRJET -Securing Data in Distributed System using Blockchain and AI
IoT Standardization and Implementation Challenges
A Survey of Building Robust Business Models in Pervasive Computing
Hedstrom Infrastructure
final.pdf
Qualities of IOT Software Development Company.pdf
CLOUD CPOMPUTING SECURITY
Security FJ_Exec_Strattegy_Comittee_V13.4.pptx
Tools and Techniques for Designing, Implementing, & Evaluating Ubiquitous Com...
University of Borås-full talk-2023-12-09.pptx
Meetup 11 here&now_megatriscomp design methodpartii_v0.2
Paper Titled Information Security in an organization
Introduction smart transportation in.pdf
Privacy Mindset for Developing Internet of Things Applications for Social Sen...
Towards the Intelligent Internet of Everything
Software Development Trends Analysis Template v2.pptx
International-Standard-Case-Studies-in-IoT.pptx
IoT, AI and Blockchain: Catalysts for Digital Transformation
NANI PPT.pptx
IRJET -Securing Data in Distributed System using Blockchain and AI
Ad

More from Mahdi_Fahmideh (13)

PDF
Mahdi Fahmideh - Information systems journal reviewer certificate 2024.pdf
PDF
Adoption Blockchain Smart Contracts in Developing Information Systems.pdf
PDF
Digital Forensics for Artificial Intelligence (AI ) Systems.pdf
PPTX
Application of Blockchain Technologies in Digital Forensics
PDF
Mahdi octal nomination.pdf
PDF
Certificate for Contributions as a Reviewer for the Journal of Software and S...
PDF
best paper award.pdf
PDF
The 1st workshop on engineering processes and practices for quantum software ...
PDF
ACIS2022 Reviewer Certification.pdf
PPTX
Role of ontologies in beach safety management analytics systems
PPTX
Presentation 2019 08-30
PPTX
The 27th Australasian Conference on Information Systems
PPTX
A Model-Driven Approach to Support Cloud Migration Process- A Language Infras...
Mahdi Fahmideh - Information systems journal reviewer certificate 2024.pdf
Adoption Blockchain Smart Contracts in Developing Information Systems.pdf
Digital Forensics for Artificial Intelligence (AI ) Systems.pdf
Application of Blockchain Technologies in Digital Forensics
Mahdi octal nomination.pdf
Certificate for Contributions as a Reviewer for the Journal of Software and S...
best paper award.pdf
The 1st workshop on engineering processes and practices for quantum software ...
ACIS2022 Reviewer Certification.pdf
Role of ontologies in beach safety management analytics systems
Presentation 2019 08-30
The 27th Australasian Conference on Information Systems
A Model-Driven Approach to Support Cloud Migration Process- A Language Infras...
Ad

Recently uploaded (20)

PDF
Per capita expenditure prediction using model stacking based on satellite ima...
PDF
Blue Purple Modern Animated Computer Science Presentation.pdf.pdf
PPT
Teaching material agriculture food technology
PDF
MIND Revenue Release Quarter 2 2025 Press Release
PDF
Empathic Computing: Creating Shared Understanding
PDF
A comparative analysis of optical character recognition models for extracting...
PDF
Building Integrated photovoltaic BIPV_UPV.pdf
PPTX
Group 1 Presentation -Planning and Decision Making .pptx
PDF
Reach Out and Touch Someone: Haptics and Empathic Computing
PPTX
Machine Learning_overview_presentation.pptx
PPTX
KOM of Painting work and Equipment Insulation REV00 update 25-dec.pptx
PDF
Mushroom cultivation and it's methods.pdf
PDF
Approach and Philosophy of On baking technology
PDF
Unlocking AI with Model Context Protocol (MCP)
PDF
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
PPTX
cloud_computing_Infrastucture_as_cloud_p
PPTX
1. Introduction to Computer Programming.pptx
PDF
Assigned Numbers - 2025 - Bluetooth® Document
PPTX
A Presentation on Artificial Intelligence
PDF
Network Security Unit 5.pdf for BCA BBA.
Per capita expenditure prediction using model stacking based on satellite ima...
Blue Purple Modern Animated Computer Science Presentation.pdf.pdf
Teaching material agriculture food technology
MIND Revenue Release Quarter 2 2025 Press Release
Empathic Computing: Creating Shared Understanding
A comparative analysis of optical character recognition models for extracting...
Building Integrated photovoltaic BIPV_UPV.pdf
Group 1 Presentation -Planning and Decision Making .pptx
Reach Out and Touch Someone: Haptics and Empathic Computing
Machine Learning_overview_presentation.pptx
KOM of Painting work and Equipment Insulation REV00 update 25-dec.pptx
Mushroom cultivation and it's methods.pdf
Approach and Philosophy of On baking technology
Unlocking AI with Model Context Protocol (MCP)
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
cloud_computing_Infrastucture_as_cloud_p
1. Introduction to Computer Programming.pptx
Assigned Numbers - 2025 - Bluetooth® Document
A Presentation on Artificial Intelligence
Network Security Unit 5.pdf for BCA BBA.

IoT system development.pdf

  • 1. An exploration on developing IoT based systems Speaker: Mahdi Fahmideh (PhD in Information Systems) Senior Lecturer in Cyber Security, University of Southern Queensland (UniSQ), Australia E-email: Mahdi dot Fahmideh at usq.edu.au 1 International Webinar Series Internet of Things (IoT): Technology and Application Petra Christian University, Indonesia May 2023
  • 2. Thanks to my collaborators (alphabetical order) John Grundy Professor of Software Engineering Monash University, Australia Didar Zowghi Professor of Software Engineering CSIRO Data 61, Australia Aakash Ahmad, Assistant Professor of Software Engineering Lancaster University Leipzig, German Ali Behnaz Data Scientist Lead Quantium, Australia Willy Susilo Senior Professor, Cryptography University of Wollongong, Australia 2
  • 3. What is Internet of Things (IoT) IoT are becoming increasingly popular across different industrial domains and their development is rapidly increasing to provide value-added services to end-users and citizens Increasing adoption: Smart cities, smart grids, wearable devices, smart agriculture, Industry 4.0, and self-driving cars are some examples of application domains that IoT promises to revolutionize. Including thousands of distributed smart objects, backbone services, platforms, and applications that are interconnected to provide added value and intelligent reasoning for end-users 3
  • 4. What is Internet of Things (IoT) Key building blocks of IoT based systems Things (or objects): small/large physical trackable, configurable, and controllable objects such as sensors, smart objects, devices, humans, RFID tags, and buildings, with the ability to store, process, transmit or receive data Software applications: web portal, mobile app, legacy systems, enable users to use functionalities provided by IoT system. Infrastructure: hardware for data processing, storing, computing, and interconnectivity among data centres via different network communication protocols People: connect to IoT system and use its functionalities 4
  • 5. Key challenges in developing IoT systems IoT systems as a complex socio-technical IT artefacts, i.e., combination of software and hardware components responsible to manage context-aware interactions ❑ Security and Privacy: IoT systems handle vast amounts of sensitive data, making security and privacy a significant concern. ❑ Interoperability and Standards: IoT involves diverse devices and platforms from different manufacturers, leading to interoperability challenges. ❑ Scalability and Performance: IoT systems need to handle a large number of connected devices and process massive amounts of data in real-time. ❑ Connectivity and Network Reliability: IoT relies on reliable and robust network connectivity. ❑ Power Management: Many IoT devices are constrained by limited power resources, such as batteries. ❑ Data Management and Analytics: IoT generates massive volumes of data, which need to be efficiently managed, stored, and analyzed. ❑ Ethical and Legal Considerations: IoT systems often collect personal data and operate in sensitive domains. Adhering to ethical practices, ensuring data privacy compliance, and addressing legal and regulatory requirements are essential for responsible IoT development. Addressing these challenges requires a comprehensive approach, involving a combination of technical solutions, industry standards, regulatory frameworks, and collaboration among stakeholders in the IoT ecosystem. 5
  • 6. Information systems development methods (a.k.a. software engineering methodologies) ❑ Analogy: to build or buy a property (e.g., house, unit apartment, etc), we need to adopt a method to organise and anticipate requirements, steps, and risks. ❑ To build information systems (or software systems), we need to adopt systematic methods ❑ Ad-hoc system development vs. systematic (yet tailorable) system development ❑ Adopting an systematic methods for managing the complexity of IoT platform development vs. ad-hoc use of implementation techniques and technologies to build systems which are likely to deliver a vulnerable and poor quality platform ❑ Information system development methods (development methods for short): entire suite of system development lifecycle activities, e.g., planning, analysis, design, building, testing, and maintenance, undertaken by humans individually/collectively to create a working information system ❑ As the core centrepiece of quality management initiatives to build sustainable information systems in a cost effective manner 6
  • 7. Importance of development methods to build IoT systems ❑ An IoT system development is, after all, essentially a type of information system development ❑ In contrast to the conventional system development which takes place predominantly within an individual system- the socio-technical nature of IoT systems raises a range of new important complexities ❑ Example: various hardware and software components, each with their own distinct development process, are linked to different parties and are working in an extremely dynamic and distributed fashion ❑ Requirements from various stakeholders such as citizens, legislators, and administrative authorities. ❑ Some complexities are rooted in the immaturity of current technologies BUT some are intrinsic to IoT ❑ Development of IoT systems is thus much more complicated than that typically deemed in the conventional system development wisdom 7
  • 8. Benefits of applying development methods to build IoT systems ❑ Structured and systematic ❑ providing guidelines, relevant tasks, modeling techniques, and best practices to manage complexity, minimize errors, and improve the overall quality of the IoT system at software and hardware level components ❑ Requirements driven ❑ by capturing and prioritizing various stakeholders’ requirements and expectations, ensuring that the developed IoT system meets their needs ❑ Risk mitigation ❑ inherent risks in IoT systems such as security vulnerabilities, data privacy concerns, interoperability challenges, and scalability issues can be better handled by development methods throughout development lifecycle as they help identify potential risks, assess their impact, and devise techniques to mitigate them ❑ Integration and interoperability ❑ IoT systems may involve various components, devices, and technologies. Development methods can help with the design and implementation necessary interfaces, protocols, and data exchange mechanisms for seamless integration among different IoT system components ❑ Scalability and flexibility ❑ IoT systems are scaled and adapted to changing requirements and environments. Development methods emphasize the design of scalable and flexible architectures that can accommodate future evolution of IoT systems to allow adding new devices and services without disruptions ❑ Quality assurance ❑ by employing development methods, organizations can enhance the quality of their IoT systems and ensure the reliability, performance, and functionality of the IoT system 8
  • 9. Development methods to build IoT systems ❑ Researchers and practitioners query about how IoT systems should best be developed ❑ The majority of research in IoT literature has been focused on purely technical, i.e., implementation-oriented, aspects of IoT system development ❑ A high-level process-oriented understanding and its related issues still remain few and far between ❑ Academic literature ❑ Sample development methods: Collin’s, Ignite, InterMeth, ACOSO-Meth, among others ❑ Too general and largely untested in practice ❑ Lack of an overall domain-independent and empirically evaluated framework ❑ Lack of consistent and agreed terminologies ❑ IoT industry and multi-vocal literature ❑ big players: IBM, Cisco, Amazon, Google Cloud IoT, CityPulse, ThingSpeak, and Microsoft Azure IoT ❑ Providing some case studies of successful implementation of IoT-based systems ❑ Little attention to underlying development method(s) that are enacted. 9
  • 10. Research objective: Towards understanding underlying development method for IoT systems ❑ Research questions: ❑ Tasks ❑ Roles ❑ Models 10 Development process Roles Models What tasks, e.g. lifecycle, SDLC, might be incorporated into IoT sys development process? What roles, e.g., developers, stakeholders, might be involved in IoT sys. development? What models, e.g., diagrams, notations, might be produced during IoT sys. Development? What tools, technologies, techniques, heuristics, guidelines, principles are provided to operationalise and support the development process, roles, models,? adapted from Sabine’s model (with kind permission)
  • 11. Research approach Mixed-method research approach ▪ use both qualitative and quantitative research methods ▪ useful to get breadth and depth of understanding and corroboration of a phenomenon for which extant research is fragmented, premature, or equivocal ❑ Quantitative method ❑ Survey ❑ Over 127 IoT practitioners from 35 countries across 6 continents with 15 different industry backgrounds ❑ Statistical analysis ❑ Perceived important of framework ❑ One-Sample T-Test ❑ To test if their importance ratings of framework tasks distributed away from the median 5, i.e., somewhat important. ❑ SPSS software ❑ Qualitative method (derivation of a generic method from the literature) ❑ Systematic literature review ❑ Snowballing technique ❑ Sources: ❑ Leading Information Systems venues, e.g., senior basket of AIS ❑ Leading Software Engineering venues ❑ Over 66 studies from academic and multi-vocal literature
  • 12. Generic IoT development method (presented as an evaluation framework) Source Fahmideh, Mahdi, and Didar Zowghi. "An exploration of IoT platform development." Information Systems 87 (2020): 101409 (with kind permission)
  • 13. Generic IoT development method (continue) Source Fahmideh, Fahmideh, M., Ahmad, A., Behnaz, A., Grundy, J., & Susilo, W. (2021). Software Engineering for Internet of Things: The Practitioners' Perspective. IEEE Transactions on Software Engineering, 48(8), 2857-2878. (with kind permission) Process model ❑ Phases and tasks for incorporation into development of IoT systems
  • 14. Generic IoT development method (continue) ❑ Roles Source Fahmideh, Mahdi, and Didar Zowghi. "An exploration of IoT platform development." Information Systems 87 (2020): 101409 (with kind permission)
  • 15. Generic IoT development method (continue) ❑ Modeling (modeling languages and modeling outputs Source Fahmideh, Mahdi, and Didar Zowghi. "An exploration of IoT platform development." Information Systems 87 (2020): 101409 (with kind permission)
  • 16. Generic IoT development method (presented as an evaluation framework) Source Fahmideh, Fahmideh, M., Ahmad, A., Behnaz, A., Grundy, J., & Susilo, W. (2021). Software Engineering for Internet of Things: The Practitioners' Perspective. IEEE Transactions on Software Engineering, 2857-2878. (with kind permission)
  • 17. Generic IoT development method (presented as an evaluation framework) Source Fahmideh, Fahmideh, M., Ahmad, A., Behnaz, A., Grundy, J., & Susilo, W. (2021). Software Engineering for Internet of Things: The Practitioners' Perspective. IEEE Transactions on Software Engineering, 2857-2878. (with kind permission)
  • 18. Generic IoT development method (presented as an evaluation framework) Source Fahmideh, Fahmideh, M., Ahmad, A., Behnaz, A., Grundy, J., & Susilo, W. (2021). Software Engineering for Internet of Things: The Practitioners' Perspective. IEEE Transactions on Software Engineering, 2857-2878. (with kind permission)
  • 19. Recommendations for designing IoT development methods Source Fahmideh, Fahmideh, M., Ahmad, A., Behnaz, A., Grundy, J., & Susilo, W. (2021). Software Engineering for Internet of Things: The Practitioners' Perspective. IEEE Transactions on Software Engineering, 48(8), 2857-2878. (with kind permission)
  • 20. Recommendations for designing IoT development methods Source Fahmideh, Fahmideh, M., Ahmad, A., Behnaz, A., Grundy, J., & Susilo, W. (2021). Software Engineering for Internet of Things: The Practitioners' Perspective. IEEE Transactions on Software Engineering, 48(8), 2857-2878. (with kind permission)
  • 21. Recommendations for designing IoT development methods (continue) Source Fahmideh, Fahmideh, M., Ahmad, A., Behnaz, A., Grundy, J., & Susilo, W. (2021). Software Engineering for Internet of Things: The Practitioners' Perspective. IEEE Transactions on Software Engineering, 48(8), 2857-2878. (with kind permission)
  • 22. Implications for research and practice ❑ Scale matters ❑ Although debatable, we believe that IoT development is not necessarily a new revolutionary genre and it can be well connected and positioned in the conventional wisdom of information systems development (a.k.a. software engineering methodologies), however, it reappears taking to an extreme level ❑ New techniques at micro level ❑ Inherent challenges at the micro process level, i.e., performing development tasks, signify that not everything necessarily from the conventional software engineering literature can be equally applied in an IoT context ❑ Generic method as an evaluation framework ❑ The generic method as a tool or to-do checklist to appraise the extent to which their inhouse development approach supports the development of IoT systems
  • 23. Future research directions ❑ One-size-fits-all assumption is not a practical choice ❑ Development methods should be tailored for a given IoT development scenario ❑ Requirements analysis is missing in development methods ❑ Mapping requirements to IoT systems ❑ Complexity of requirements, i.e., diversity stakeholders at large scale ❑ Role oriented IoT development ❑ Development over people ❑ Multi-faceted stakeholder driven nature of IoT systems ❑ The influence of human entity during IoT system development
  • 24. References ❑ Mahdi Fahmideh, Didar Zowghi. An exploration of IoT platform development, Information Systems 87 (2020): 101409 ❑ Mahdi Fahmideh, Aakash Ahmad, Ali Behnaz, John Grundy, Willy Susilo, Software Engineering for Internet of Things: The Practitioners' Perspective, IEEE Transactions on Software Engineering, 48(8), 2857-2878