Firebase vs Forge: App Platform Developer Experience

error icon
For a better experience, this page will redirect to the interactive version of this rubric. cancel

Criteria Overview

Introduction

This rubric provides criteria for assessing the development experience of an app platform. The intention is to form the basis of comprehensive and unbiased assessments of various app platforms in order to:

  • Create a shared agreement and understanding of the health of various app platforms.
  • Compare the health of app platforms with one another.
  • Help the developers of app platforms determine the areas needing the greatest attention.

App Platform Types

For the purpose of this assessment framework, there are two types of app platforms:

The assessment criteria relevant to Product Extensibility App Platforms includes all of the criteria of General Purpose App Platforms plus some extra criteria. All assessment criteria that are only applicable to Product Extensibility App Platforms are marked with "Specific to Product Extensibility App Platforms".

Viewing Assessments

To view assessments against the rubric, select one or more assessments from the drop down list titled Assessment visibility at the top left of this page. This will require others to have previously made assessments visible to you.

Comparing Assessments

Multiple assessments against the criteria can be view simultaneously. This allows separate platforms to be compared with one another and different assessments against a single platform to be compared. When viewing multiple assessments, they will appear side by side and an option will appear that allows for an interactive comparison through the use of a slider that controls a sensitivity setting which results in similar scores to be blurred thereby causing the differences to be highlighted.

Creating Assessments

To create assessments against the rubric, click the Create assessment button at the top right of this page. You can then choose who to share the assessment with.

Labels

The rubric includes a system of labels whereby each aspect is associated with one or more labels. This allows reports to be generated whereby the assessment data is grouped by label, thus providing further insights into the strengths and weaknesses of an app platform. The labels are as follows:

  • Ease: Relates to how easy or difficult is it to develop apps using the app platform.
  • Functionality: Relates to the functionality provided by the platform which can be utilized by apps.
  • Trust: Relates to the level of customer trust in the apps using the app platform.
  • Incentive: An app platform can incentivize developers in various ways such as financial gains, provision of growth expansion into related products or recognition.

Criteria Details

Area
Aspects
Documentation

Getting started guide

Show guidance

Reference documentation

Show guidance

Advanced guides and tutorials

Show guidance

Sample code

Show guidance

Changelog and announcements

Show guidance
Development loop

App creation

Show guidance

App logging

Show guidance

Debugging

Show guidance

Tracing

Show guidance

App management

Show guidance

App releases

Show guidance
User interface features

UI capabilities

Show guidance

Cross device UI compatibility and support

Show guidance
Capabilities

Extension points

Show guidance

Persistence

Show guidance

Product and platform API invocation

Show guidance

Webhooks

Show guidance

Server side processing

Show guidance
Non functional features

Access and egress of User Generated Data (UGC) and Personal Data (PD). (specific to Product Extensibility App Platforms)

Show guidance

Reliability

Show guidance

Performance

Show guidance

Industry standards

Show guidance
Administration and monitoring

App installation

Show guidance

Error monitoring

Show guidance

Performance monitoring

Show guidance

Administrator Monitoring

Show guidance

App analytics

Show guidance

Status

Show guidance
Commerce

Running costs

Show guidance

Marketing and distribution

Show guidance

Pricing models

Show guidance

Payment models

Show guidance
Support

Community support

Show guidance

Official support

Show guidance

In person events

Show guidance