Visual Studio Home Visual Studio
SIGN UP Help shape the TACO tools and get access to early releases.

Application Lifecycle Management (ALM) with Apache Cordova Apps

Updated: 9/11/2015

Developing apps for modern platforms involves many more activities than just writing code. DevOps (development + operations) recognizes a variety of activities across an app’s complete lifecycle. These include agile planning and tracking work, designing and implementing code, managing a source code repository, running builds, managing continuous integrations and deployments, testing (including unit tests and UI tests), running various forms of diagnostics in both development and production environments, and monitoring app performance and user behaviors in real time through telemetry and analytics.

Visual Studio, Visual Studio Team Services, and Team Foundation Server provide a variety of DevOps capabilities (also referred to as application lifecycle management or ALM), a number of which are applicable to Cordova apps. Tools that are designed for .NET languages like C#, however, do not apply to JavaScript code. Other tools require tight integration with build and runtime environments. Because Cordova apps on Windows run as native apps, you’re able to use a variety of Visual Studio’s diagnostic tools such as performance profilers that are not available on non-Windows platforms.

The table below identifies which Visual Studio ALM features you can expect to work well with an Apache Cordova project, and which ones have limitations. Refer to the linked documentation for details on the features themselves.

Area

Feature

Supported with Apache Cordova

Comments

Agile tools (using Visual Studio Team Services or TFS, including Team Explorer Everywhere)

Manage backlogs and sprints

Yes

All planning and tracking features are independent of project type and coding languages.

Work tracking

Yes

Team room collaboration

Yes

Kanban boards

Yes

Report and visualize progress

Yes

Analyze and model your architecture

Sequence diagrams

No

Most design features rely on .NET and languages like C# and do not work with HTML, CSS, and JavaScript. See Modeling Diagram Tools for what aspects are related to code.

Dependency graphs

No

Call hierarchy

No

Class designer

No

Architecture explorer

No

UML diagrams (use case, activity, class, component, sequence, and DSL)

Yes

Layer diagrams

No

Layer validation

No

Code

Use Team Foundation Version Control

Yes

Getting started with Git in Team Services

Yes

Code analysis (references, suggested changes, etc.)

No

One exception is the Go To Definition command that works with JavaScript.

Find code changes and other history with CodeLens

No

Not supported for JavaScript.

Use code maps to debug your applications

No

Not supported for JavaScript.

Build the application

On-premises TFS server

Yes

Android, Windows, WP8, can be built on a Windows build server while a Mac can be used as a build server for iOS.

  1. TFS 2015 - See Using Tools for Apache Cordova Apps with VS Team Services and TFS 2015
  2. TFS 2013 - See Using Tools for Apache Cordova with TFS 2013

On-premises build server linked to Visual Studio Team Services

Yes

See Using Tools for Apache Cordova Apps with VS Team Services and TFS 2015 for instructions.

Hosted controller service of Visual Studio Team Services

Yes

See Using Tools for Apache Cordova Apps with VS Team Services and TFS 2015.

On-premises Jenkins CI or other build server

Yes

See Using Tools for Apache Cordova with the Jenkins CI System for instructions.

Build definitions with pre- and post-scripts

Yes

Continuous integration including gated check-ins

Yes

  1. TFS 2015 / VS Team Services - Select "Continous Integration" under the "Triggers" tab of our Build Definition. See Using Tools for Apache Cordova Apps with VS Team Services and TFS 2015.
  2. TFS 2013 - See Specify Build Triggers and Reasons in TFS 2013 documentation.

Testing the application

Planning tests, creating test cases and organizing test suites

Yes

Manual testing

Yes

Test Manager (record and playback tests)

Windows devices and Android emulators only

Code coverage

No

Unit tests

Yes, with third-party frameworks

See Author and run tests.

Use UI Automation To Test Your Code

Windows only

Diagnose

Analyzing Managed Code Quality by Using Code Analysis

No

These tools all rely on .NET code and do not presently work with JavaScript.

Finding Duplicate Code by using Code Clone Detection

No

Measuring Complexity and Maintainability of Managed Code

No

Using Profiling Tools (includes CPU Usage, Energy Consumption, GPU Usage, HTML UI Responsiveness, and JavaScript Memory, and Memory Usage)

Windows only

On Windows, Cordova apps run as native Windows apps so all tools are available. These tools are not available when running the app on other platforms.

Automate deployments with Release Management

Manage release processes

Yes

Deployment to servers for side-loading via scripts

Yes

Upload to app store

Partial

See Package your Cordova app. Also note that extensions are available that can automate this process for some app stores. See Extensions for Visual Studio Team Services, especially the extension for Google Play.

Monitor with HockeyApp

Crash analytics, telemetry, and beta distribution

Yes

Did you find this article helpful?

Thanks!

We're sorry to hear that! Feel free to email our team with your question.


Want FASTER answers? Our team monitors a special StackOverflow tag here.