Code Shipping - Feature Development / Planning

Card Puncher Data Processing

About

An application is composed logically from one or more features.

Ignorance is a feature of the human mind, not a bug

State

Features can be in one of 4 states:

  • Internal
  • Incubating
  • Public
  • Deprecated

1)

Development Type

There are two ways to develop a feature:

Branch

The version control system allows creating branch called feature branches where a feature can be tested even before it is completed and ready for release.

Flag

A feature flag is a switch that can enable or disable a feature at run time (generally for a subset of the users via a web interface).

A feature flag is also known as:

  • feature toggle 2)
  • feature switch,
  • feature flipper,
  • conditional feature,
  • etc.

Platform: launchdarkly.com (used by postman)

Planning

Ostensibly, rapid deployment is at odds with feature development that requires large changes to the codebase. The solution is to break down such changes into a sequence of smaller and safer ones, hidden behind an abstraction.

For example, data migration from an existing store to a new one can be broken down. See data migration example

Third party





Discover More
Card Puncher Data Processing
Code Building - trunk based development

Trunk based development is a development model where all commit goes in the trunk. In other word, there is no branch to develop feature but there is feature flag
Deploy Often Time Cost Risk
Code Shipping - Continuous (Deployment|Development|Delivery)

Continuous deployment reflects the habit of deploying new code as a series of small changes as soon as they are ready. Continuous deployment is also known as: Continuous development Continuous Delivery...
Git - Feature Branch

A branch that was created to add a feature. Create a branch off of develop called “feature-[feature name]”, work and commit into that branch.



Share this page:
Follow us:
Task Runner