There are numerous software programs called applications running in any IT infrastructure. These applications can be a diverse range of low-level system programs, middleware or end-user programs running on different platforms from the Web to mobiles. Irrespective of this diversity, they all typically go through a similar life cycle from their inception to retirement. The most common lifecycle stages are development, deployment, testing, staging, and production. Each of these stages is typically managed by different IT roles such as application developers, QA engineers and DevOps.
WSO2 App Factory is a shared, multi-tenanted, elastic and self-service enterprise DevOps platform designed for multiple project teams to collaboratively write applications, manage their lifecycle stages and roles.
Platform for collaborative development
An organization exposing its applications as APIs to external parties ideally want to control what types of applications are developed using their APIs and how. API providers want to control and monitor API usage for various reasons such as business, security and monetization. A collaborative development platform provided for developers is the easiest way to impose governance rules and maintain control over all aspects of the software development lifecycle. It enforces developers to follow a uniform development practice with coding guidelines, a standard set of libraries, best practices and ensure that prerequisites are stratified before an application goes into production.
There are numerous drawbacks in not providing such a controlled infrastructure. Developers and QA end up building and testing applications in environments that might now simulate a real production setting. Issues start to appear in later stages of the lifecycle making the cost of recovery very high. A controlled and a managed software development infrastructure ensures early issue detection.
WSO2 App Factory is equipped with a complete software development life cycle (SDLC) tool chain that aims to address many aspects of the application management process such as project tracking, source code management, issue tracking, test tools, build and release management, team management and run-time application platform environments such as development, test, production. WSO2 App Factory takes over the burden of maintaining this complex set of tasks so that teams have a unified platform to easily create and administer projects, automatically build applications, provision quality assurance environments, run continuous integration tests, and continuously promote and deploy software assets across development life-cycle environments (i.e., development, test, and production). WSO2 App Factory encourages software delivery best practices, and is also heavily customizable through a simplified graphical user interface.
Figure: Lifecycle management activities facilitated by WSO2 App Factory
For teams looking to re-invent software delivery into an agile, on-demand application environment and change the business-IT dynamic, WSO2 App Factory offers a viable solution.