Software architecture forms the cornerstone for achieving and ensuring various software quality attributes. It encompasses the collected requirements of the product, serving as a blueprint that delineates quality features for all project stakeholders, along with methods for measurement and control. Despite the significant increase in IoT-based agricultural systems, there is a dearth of studies on the quality elements of their software architecture. To address this need, this study offers an overview of components and services tailored to address specific quality attributes pertinent to agriculture systems. It identifies, investigates, and presents quality attributes influencing the design of software architecture for IoT-based agriculture systems. This paper identified and discussed several quality attributes, including performance, scalability, flexibility, interoperability, productivity, extensibility, and security, and mapped them to corresponding components of the IoT-based agriculture software architecture. Also, several issues were identified and discussed for the software architecture quality of IoT-based agriculture systems, such as real-time processing and interoperability due to the various devices and protocols utilized in these systems. The findings of this study offer valuable insights for developing, executing, and refining IoT-based agricultural systems to fulfill the changing requirements of the agriculture industry.
Read full abstract