WSO2 App Factory is a shared, multi-tenantedelastic, elastic and self-service enterprise DevOps platformplatform that supports application development and management from inception to retirement. It is designed for multiple project teams to collaboratively write applications and manage their lifecycle life cycle stages in a shared, regulated, and a controlled infrastructuremanner.
WSO2 App Factory
The IT industry uses agile methodologies to develop applications to meet the expectations of different stakeholders today. While agile methodologies help us overcome the traditional process bottlenecks, cutting-edge agility is achieved through the use of specific tools and techniques. WSO2 App Factory's collaborative development platform is an easy way to achieve agility while imposing rules, governance policies and maintaining control over all aspects of the software development lifecycle. It enforces developers life cycle.
With App Factory, you can enforce teams to follow a uniform development practice with defined coding guidelines, a standard set of libraries, and best practices, regulatory compliences and ensure that prerequisites are stratified a checklist of prerequisites is met before an application goes into production. There are numerous drawbacks in not providing such a controlled managed infrastructure. Developers For example, developers and QA might end up building and testing applications in environments that might now do not simulate a real production setting. This results , resulting in issues which appear that appear only when the application runs in production. Issues appearing in later stages of the lifecycle , making the impose a greater cost of recovery very high. A controlled and a managed software development infrastructure . App Factory's managed and regulated platform ensures early issue detection and damage recovery, cost savings, and faster go-to-market.
Common App Factory
WSO2 App Factory is equipped with a complete software development life cycle (SDLC) tool chain that aims and Platform-as-a-Service (PaaS) capabilities that aim 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 facilitates this complex set of tasks so that teams have a unified, controlled 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).. Given below are some of its use cases:
- Create applications and view details of all applications in a unified, controlled platform. See Creating an Application.
- Build a team around applications by inviting users, assigning them single or multiple roles and managing them. See Building your Team.
- Check in your source code to repository, version and branch your source repository, view life-cycle stages of branches and configuration management of the source code. See Checking in and Branching the Code.
- Manual or automatic builds and deployments of the branches, check build status, change build settings, browse the build server, launch and test your applications, run continuous integration tests. See Building and Deploying the Application.
- Continuously promote and deploy software assets. Easily discover and consume APIs through a user-friendly storefront. Configure registry, endpoints, databases to store your application's data and leverage published APIs in your application. See Configuring Resources.
- Create and manage issues in a default issue tracking system or your own bug tracking tool. See details like types, severity and status of all issues reported against a given version of an application in a single view. See Adding Tests and Tracking Issues.
- Manage the application across its life cycles, configure your own life-cycle stages and preconditions for state transition, view life-cycle history, specify estimated deadlines for an application to be in a given life-cycle stage. See Managing Lifecycles.
- Leverage inbuilt App Factory tooling support in WSO2 Developer Studio, which gives you a simpler and better integrated development experience.
Figure 1: Life-cycle management activities integrated in App Factory
WSO2 App Factory encourages software delivery best practices and is highly extensible and customizable. You can configure new lifecycle Because all the third-party tools used in App Factory are integrated through extension points, you can easily configure new life-cycle stages, workflows, and tools to suits of your needs.
Lifecycle Management with WSO2 App Factory
Figure: Lifecycle management activities facilitated by WSO2 App Factory
Benefits of WSO2 App Factory
Key characteristics of App Factory
The main characteristics of the App Factory product are:
- Cloud based: Cloud based development infrastructure - SVN, continuous build system, defect management. Self-service configuration enabled through cloud computing.
- Adaptability: You can virtually connect to any system/tool of your choice, provided it has an API. You are also given default options for out of the box deployments, such as GIT for a code repository or Redmine for issues management.
- Extensibility: AppFactory executes business processes for build, application governance or application creation logic. You can extend these processes involving human tasks, if required. Similarly, the list of application types supported by App Factory can be extended as new Stratos cartridges are added. This can be done by you or by our team of experts.
- Scalability: App Factory leverages WSO2’s PaaS, Stratos, to achieve maximum scalability and auto-scaling.
For more App Factory features, see Features.
The benefits App Factory brings to your business
In summary, WSO2 App Factory provides the following advantages:
- Reduces the cost of development and time-to-market by early detection of issues.
- Pre-setup environments ready to go, with automatic provisioning as the application goes through the development lifecycle. Saves the time spent on infrastructure, source control, continuous integration, development and testing environment(s).
- Extensibility and customizability
- allows you
- to add
- tools and workflows
- you are already familiar with
- The platform automatically manages dependencies for you. For example, when moving an application from development to staging
- you usually have to connect to different APIs and databases.
- But now, the developer can simply move the application through
- its life-cycle stages while the platform automatically connects it to the correct resources.
and standards between life-cycle stages so that an application won't progress from one stage to the
next before meeting regulatory and quality standards.
Helps build a digital business ecosystem.
Fosters cross-organizational development collaboration by making your applications public in a storefront
and encouraging reuse. Because developers understand what
capabilities are already available before starting
a new development project, cost of rework is reduced.
- Manage and monitor projects through App Factory's numerous dashboards
Next, see Default Application Lifecycle.