Playful Features

Feature-Driven Development that "Plugs and Plays"

When grasping a new concept, it is helpful to see it in action! This section contains a screencast video of a presentation that has been given to a number of regional conferences and local meetup groups.

The presentation closely follows the Basic Concepts section, and demonstrates the newly developed concepts in a real world app (eatery-nod-w).

Presentation

It is recommended that you initially watch the video in it's entirety. For subsequent review, you may reference specific sections through the Video Content (below).

Video Content

Intro
  • 0:01 Welcome
  • 0:15 Bio
  • 1:49 Playful Features Intro
  • 2:30 Resource Review
Let's Begin
  • 4:37 Let's Start
  • 4:46 Project Organization
  • 6:48 Goals/Hurdles
  • 8:44 Two Primary Tenets
      9:13   1. Feature Runtime Consolidation
      10:03 2. Feature Collaboration
Why feature-u
  • 11:42 Why feature-u was created
Ultimate Goal
  • 12:05 Plug-and-Play
  • 13:29 What is Covered in this Session
DEMO App
  • 14:04 eatery-nod: a feature-u app
Sneak Peek
  • 20:45 Sneak Peek
    1. 21:03 Simplified App Startup
    2. 23:03 Plug-and-Play
    3. 25:15 A/B Feature Swap
The feature-u Solution
  • 27:14 feature-u basics
  • 27:21 launchApp()
  • 27:58 Feature objects
1. Feature Runtime Consolidation
  • 29:27 Feature Runtime Consolidation
  • 29:48 App Initialization
  • 32:53 Framework Configuration
  • 36:09 DEMO (App Startup)
Feature Enablement
  • 42:34 Feature Enablement
  • 43:39 DEMO (Feature Enablement)
2. Feature Collaboration
  • 45:45 Feature Collaboration
  • 46:07 fassets - Feature Assets
  • 47:26 fassets diagram
  • fassets Code Snippets
    • 49:46 PUSH: fassets define
    • 50:58 UI Composition
    • 53:16 PULL: Usage Contract (This is EXCITING!)
  • 57:03 DEMO (Feature Collaboration)
A/B Feature Swap
  • 59:25 A/B Feature Swap
  • 1:02:15 DEMO (A/B Feature Swap)
Final Thoughts
  • 1:06:25 feature-u Context Diagram
  • 1:07:08 Features are a Higher Level Abstraction
  • 1:08:09 feature-u is NON Intrusive!
  • 1:08:54 feature-u frees you up!!
  • 1:09:31 feature-u Benefits
  • 1:10:02 That's all Folks

Presentation Resources

Presentation Syllabus

Feature-Driven Development (FDD) has become more prevalent in today's landscape, and for good reason! FDD is a lightweight Agile technique, manifest in a project structure where your code is organized by what it accomplishes (i.e. features), rather than lumping all modules of like types into separate blobs of components, routes, logic, actions, etc. This technique greatly improves your code comprehension because there is a direct correlation between the problem space (the requirements) and the implementation (the code)!

However, FDD involves more than just organizing your project's directory structure into features. You want to encapsulate your features into isolated and self-sufficient modules, and yet they must also be able to collaborate with other features.

Truly isolated FDD is something that is incredibly powerful! You can improve the modularity of your system by loosely coupling your features, making your app easier to understand, develop, test, and refactor. If done right, your features actually become "miniature applications" that simply plug-and-play (where the mere existence of a feature dynamically exudes the characteristics it implements)!

As it turns out there are a number of hurdles to overcome in order to accomplish this. Rather than being left to fend for yourself, a new utility called feature-u has already tackled these hurdles.

feature-u promotes a new and unique approach to code organization and app orchestration.

With feature-u ...

  • your features can be encapsulated and isolated
  • they can collaborate with other features in an extendable way
  • your components can employ cross-feature composition (even injecting their content autonomously)
  • your features can initialize themselves
  • they can be activated or deactivated at run-time
  • and as a bonus, your frameworks will even auto-configure with only the active features (via a plugin architecture)

In short, your features can become more playful ... they can plug-and-play!

feature-u opens new doors into the exciting world of FDD. It frees you up to focus your attention on the "business end" of your features!

results matching ""

    No results matching ""