Architecture for Cloud-Based Rapid Application Development Framework
Application developers currently have a wide selection of rich application development tools to use. These tools have a common limitation in that they require some hardware, which is mostly high end, and base software to run. While these may not appear like major challenges to software development companies, startup companies and individuals, students and trainers among others may find this requirement prohibiting. In a world where most innovative ideas have come from campus rooms, it is critical to have development environments that are easily accessible and whose cost is minimal or at least dependent on the usage. Other than startup cost, developers are also faced with the nightmare of managing development platform migration every time they switch development computers or re-install the operating system. This goes hand in hand with the fact that development is limited to the single development computer that has the development tools installed. Developers are hence not able to make changes on the fly without having to access their development computers. In this report we look at a viable architecture of a cloud based rapid application development framework. Cloud platform transforms the way computing resources are utilized avoiding the need for upfront purchase of fundamental hardware and software. Having a development environment that runs off the cloud and accessible through the browser helps address the challenges faced under the current development environments. Accessibility of such platforms as well as data security become the immediate problems that a developer is likely to be faced with. These have however been mitigated by use of rich client and asynchronous server access that reduces traffic requirements when developing on the platform. By using single sign-on for user authentication based on known and reliable authentication services, the environment addresses the security issue. The results of the surveys conducted have clearly indicated willingness by developers to migrate to a cloud based development environment if guaranteed to have features that match locally installed development environments. This dissertation demonstrates the practicality of a cloud based application development framework through the proposed design, prototype development and user surveys.