Mobile App Architecture
The backbone of the MySmartSA application is Web Architecture. All designed interfaces will respond to different screen sizes of devices and different browsers and will run well on any mobile phone, tablet, laptop, and desktop. This project integrates security into agile software development. Some practical solutions are suggested, like integrating a static analysis tool into an IDE, performing dependency/open-source security checks whenever possible, and configuring dynamic test tools into CI/CD pipelines during development and testing. While the automation of security checks at each stage of the agile process is desired, rolling out security practices at some levels is also recommended. To dynamically respond to changing demands and to ensure the protection of rider’s personal data and privacy, web app development for this project practices agile development with the integration of security. The security testing adapts the recommended security roadmap without a SAST vendor for CD/CI.
Development Methodology
'Providing Real-Time Bus Arrivals' be implemented with Google Maps Platform web services. Google Maps' JavaScript API are the main APIs to retrieve the latest Maps and Routes in the development, where real-time traffic conditions are constantly updated with routes. Directions for transit are obtained by Direction API, and Distance Matrix API is used to calculate travel times based on real-time traffic and distance for multiple stops on a route. Utilizing these APIs, we can conveniently build customized transit maps to fit our project needs. With some exceptions, the mobile web app routes are considered faster and cheaper than the native iOS or Android mobile app routes that use iOS or Android SDK. The Javascript API is chosen for this project because of its capability to enable map controls and gestures for any mobile devices running on web browsers, to provide directions services with realtime traffic information using a form of public transit, and their exclusive support of transit layer with public transport routes, and easy integration with other transit web sites.