Chapter 14 SelecWeb: A Software Tool for Automatic Selection of Web Frameworks Thaha Muhammed, Rashid Mehmood, Ehab Abozinadah, and Sanaa Sharaf 14.1 Introduction The software applications revolution has helped the development of many new distributed and collaborative urban systems [116], paving the way for integrated systems, and hence smart cities and societies, see, e.g., [17] for background on smart cities and societies. Web applications and services are fundamental to designing smart infrastructure and cities. Web frameworks have become an integral part in the development of web applications and services. A software framework is a scaffold structure inside which other applications can be developed. A framework comprises libraries, services, scaffold programs, scaffold codes, interfaces, APIs (application programming inter- faces), and other components required for application development. A framework provides the basic building blocks required for the development of application. A software framework that has been developed particularly for assisting web application development is called a web application framework. It comprises necessary components and services required for the construction of feature rich applications by automating the common web development functions. Most of the web application development frameworks implement the MVC (model–view– T. Muhammed () · S. Sharaf Department of Computer Science, FCIT, King Abdulaziz University, Jeddah, Saudi Arabia e-mail: m.thaha.h@ieee.org; ssharaf@kau.edu.sa R. Mehmood High Performance Computing Center, King Abdulaziz University, Jeddah, Saudi Arabia e-mail: rmehmood@kau.edu.sa E. Abozinadah Department of Information Systems, FCIT, King Abdulaziz University, Jeddah, Saudi Arabia e-mail: eabozinadah@kau.edu.sa © Springer Nature Switzerland AG 2020 R. Mehmood et al. (eds.), Smart Infrastructure and Applications, EAI/Springer Innovations in Communication and Computing, https://doi.org/10.1007/978-3-030-13705-2_14 329 m.thaha.h@ieee.org