Skip to content

Commit

Permalink
Merge pull request #946 from flowforge/product-startegy-plan-refinement
Browse files Browse the repository at this point in the history
Product startegy and plan refinement
  • Loading branch information
MarianRaphael authored Aug 1, 2023
2 parents 73e3587 + 8cee371 commit 3f4b1e1
Show file tree
Hide file tree
Showing 2 changed files with 58 additions and 79 deletions.
83 changes: 38 additions & 45 deletions src/handbook/product/plan.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,9 +3,7 @@ navTitle: Plan
---
# Product Plan

## Background

Our [Product Strategy](./strategy.md) sets out 4 pillars that our product work is focussed around.
Our [Product Strategy](/handbook/product/strategy.md) sets out 5 pillars that our product work is focussed around.

## Planning

Expand All @@ -17,58 +15,53 @@ We use three project boards to plan and track our work.

The detailed planning process can be found [here](../development/releases/planning.md)

## Principles
## High-Level Strategy Implementation for Q3/Q4 2023

Our high-level strategy implementation plan serves as a broad outline of the key focus areas for each strategy pillar we will be tackling over the course of the next six months. The points mentioned here are just an overview, and for more granular details on each initiative, we recommend referring to our roadmap.

The progress bars presented adjacent to each category are rough estimates, offering an initial glance at the projected level of completion for each category's planned feature set. These are not precise calculations, nor do they represent the current status of each strategy pillar. It's important to note that at the start of every new product plan cycle, these progress bars reset to a lower level, reflecting the onset of new development and implementation stages. For detailed updates on the actual status, please keep an eye on our [release blog posts](/blog/releases/).

### Advancing Enterprise-Readiness
![](https://geps.dev/progress/30)

- [High availability & Scalability](https://github.com/flowforge/flowforge/issues/1678)

- Improve DevOps Pipelines

- [VPN support for Instances](https://github.com/flowforge/flowforge/issues/1570)

- [Introduce Value Layer Model](https://github.com/flowforge/flowforge/issues/2167)

- [Implement "Organization" as an additional hierarchy level](https://github.com/flowforge/flowforge/issues/2338)


### Node-RED Deployments at the Edge (Device Management)
![](https://geps.dev/progress/0)

#### Convention over configuration
- [Device can be managed independently of Instances on Application level](https://github.com/flowforge/flowforge/issues/2334)

We want the default configuration of FlowForge to be the best user experience for
the majority of users.
- [Grouped Device Deployments](https://github.com/flowforge/flowforge/issues/1509)

Every new option we add to the platform, whether for an administrator or end-user,
represents another choice they have to deal with. This increases the cognitive burden
of using the platform and can have a negative impact on user experience. It also
increases the engineering cost to develop and test features where there are many
possible combinations to consider.
### Enhanced Integration Capabilities
![](https://geps.dev/progress/0)

For every feature we add that has some scope for configuration, our starting point
in the design is to **identify the right configuration and hard-code it in**.
- [Official Support for selected Node-RED nodes](https://github.com/flowforge/flowforge/issues/1901)

This removes the choice from users' hands and minds. It does not prevent us from
choosing to make it more configurable in the future if user-feedback/business-needs
requires it.
- [Support for custom NPM Module registry](https://github.com/flowforge/flowforge/issues/217)

Where there is a strong case to expose an option to the end user, it should still
be provided with a sensible default value where possible that removes the need
for the user to set it themselves. This gives users the ability to customise
the option if/when they are ready to. But the default value should be the right
answer for most users.
- [Visibility of different palette catalogues in Node-RED](https://github.com/node-red/node-red/issues/4057)

Some configuration options cannot be defaulted - the user has to do make a choice.
For example, setting up email on the platform. The UX around these options must
be carefully considered to help the user get to the right choice with a minimum
of effort.

Node-RED provides a lot of configuration options. We should not assume they are all
candidates to be exposed to FlowForge users. For example, options to customise the
editor appearance should be reserved options that we determine the right values for
to ensure a consistent user experience across FlowForge instances.
### Data Visualization & Analytics
![](https://geps.dev/progress/5)

Options that have an impact on the behaviour of flows will need to be considered
on a case-by-case basis. But the starting point should always be to pick the right
default and only expose to the user if absolutely necessary.
- Version 1.0 of the Node-RED Dashboard successor, with a comparable feature set like [Node-RED Dashboard](https://github.com/node-red/node-red-dashboard).

- FlowForge Dashboard extension (Version 1.0) allowing [user specific dashboards](https://github.com/flowforge/flowforge-nr-dashboard/issues/1) and RBAC.

See also: [Convention over Configuration on Wikipedia](https://en.wikipedia.org/wiki/Convention_over_configuration).
### User-Friendly Low-Code Approach
![](https://geps.dev/progress/0)

## Open Source & Enterprise
- [Immersive Node-RED experience](https://github.com/flowforge/flowforge/issues/2246)

We offer a number of ways that users can run the FlowForge product, we will
always offer an open source version that has the core features. Features that
offer higher business value or permit users to share across larger groups will
be offered as part of our paid enterprise proposition. Our managed FlowForge
offering is public and will generally include all features that are available
but may not offer certain features such as SSO where integration is required
between the platform and an enterprise. We will offer customers the ability to
have a dedicated managed instance if thats is a deployment model they require.
A more detailed breakdown of the pricing and split between our Open Source and
Enterprise Editions is on the [pricing principles](pricing.md) page.
- First out of the box IIoT Solutions template (e.g. ANDON for Node-RED)
54 changes: 20 additions & 34 deletions src/handbook/product/strategy.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,59 +4,45 @@ navTitle: Strategy

# Product Strategy

Our strategy is an indication and statement of intent for the next 2 years, and reflects FlowForge’s vision. It’s a draft, as everything in the handbook is a draft, so we will revisit regularly and iterate when there is a reason to do so. FlowForge is a 100 percent agile company, so our product is; timing is everything. Have a look at our roadmap for what we're pursuing in the upcoming releases.
Our strategy is an indication and statement of intent for the next 2 years, and reflects FlowForge’s vision, to become the leading "Low-Code IIoT Application Platform".
FlowForge will allow everyone to build custom applications to achieve their business goals and depend less on off-the-shelf software.
It’s a draft, as everything in the handbook is a draft, so we will revisit regularly and iterate when there is a reason to do so. FlowForge is a 100 percent agile company, so our product is; timing is everything.
Have a look at our [roadmap](/product/roadmap/) for what we're pursuing in the upcoming releases.

### FlowForge for enterprise
### Advancing Enterprise-Readiness

The cornerstone of FlowForge is to make Node-RED more accessible to enterprises. Therefore, we are constantly implementing requirements that support the easy use of Node-RED in production environments. We will focus on:
FlowForge is committed to augmenting the enterprise-readiness of Node-RED. Our strategy emphasises enhancing audit and compliance capabilities, instituting stringent preventive and corrective controls, and bolstering security. By integrating these vital aspects, we aim to create a reliable, secure, and scalable environment. This initiative underlines our dedication to surpassing enterprise expectations and strengthening Node-RED's position in the industry.

1. [High availability & Scalability](https://github.com/flowforge/flowforge/issues/1678)

2. State-of-the-art built-in security e.g. VPN support

3. DevOps

1. Change control

2. Collaborative Development

3. Pipelines (e.g. staging)

### Node-RED at edge
### Node-RED Deployments at the Edge (Device Management)

Many organizations position Node-RED instances on remote servers, edge or industrial devices, to meet network, infrastructure, or use case requirements. Therefore, management of remote instances is crucial for the overall success of closing the gap between IT and OT.

FlowForge already supports this process by creating snapshots on Node-RED instances that can be deployed to multiple remote targets. We will continue to expand the functionalities to allow users to manage existing Node-RED instances, improve their development practices to accelerate development and ensure a reliable and repeatable process, providing more flexible remote deployment options and offering the best support for devices in closed and segmented networks as we are facing it in production environments.

### Certified nodes marketplace

The "Node-RED Library" offers a unique added value to many Node-RED and FlowForge users. It is already possible today to easily create technical implementations out of the box for several OT and IT protocols, thanks to the community and Node-RED library.
### Enhanced Integration Capabilities

The logical consequence of FlowForge’s journey is to also include “custom nodes” as one element of the product. Therefore, FlowForge will offer official support for certain popular nodes and in addition enable the community to offer commercial “nodes” via FlowForge. Nevertheless, an open-source core is always required and wanted. However, premium extensions and commercial support allow the community to participate in the success of FlowForge.
The "Node-RED Library" offers a unique added value to many Node-RED and FlowForge users. It is already possible today to easily create technical implementations out of the box for several OT and IT protocols, thanks to the community and Node-RED library.

### IIoT Solutions
As a part of our evolution, FlowForge plans to incorporate "custom nodes" into our product line. In this endeavour, we'll offer official support for selected popular nodes while also enabling the community to provide commercial nodes via FlowForge. While maintaining an open-source core remains a priority, we believe that offering premium extensions and commercial support can encourage community participation in FlowForge's success.

Today, a whole range of use cases can be implemented with Node-RED. From KPI calculations to intralogistics solutions, incredible use cases are already being realized in Node-RED.
This integration strategy includes communication protocols, APIs, and application adapters. These elements will not only meet the data and process integration needs but also address enterprise application and IIoT ecosystem integration requirements across cloud and on-premises implementations, providing a comprehensive solution.

To make it easy for FlowForge users in particular to get started and address their specific need, a use case library is to be created (based on the "Node-RED Library"), which offers standard templates for specific IT and OT related use cases. This way, we as FlowForge address direct added values in production, for example:
### Data Visualization & Analytics

1. Condition Monitoring
FlowForge's commitment to a low-programming approach via Node-RED, complemented by Node-RED Dashboard, allows for advanced data management and analytical functions. The Node-RED Dashboard provides a crucial interactive graphical user interface for Node-RED applications, allowing users to see data in a more visually engaging and understandable format. By processing and visualization of data, we will deliver insights into asset state, track patterns, and optimize asset use.

2. Overall Equipment Effectiveness (OEE) calculation and visualization
### User-Friendly Low-Code Approach

3. ANDON for Node-RED
FlowForge is built upon the strength of Node-RED's user-friendly, low-code approach, positioning us well within the IIoT market. We believe Node-RED provides the best foundation, but we're committed to not only utilizing its existing capabilities but also contributing to its upstream improvement. By refining Node-RED and adding enhancements, we aim to create an even more intuitive, powerful, and accessible platform. This will enable end-users to swiftly and intuitively build applications and reducing the dependency on expert programmers.

4. Process monitoring for e.g. tightening equipment
----

5. Predictive maintenance analysis

6. Reliable feedback loops between IT and OT

.......

## Principles

#### Convention over configuration
Embedded within our strategy are the principles that guide our decision-making and product evolution, representing our commitment to providing a user-centered platform that seamlessly merges the virtues of open-source development with enterprise-grade functionality.

### Convention over configuration

We want the default configuration of FlowForge to be the best user experience for
the majority of users.
Expand Down Expand Up @@ -96,7 +82,7 @@ default and only expose to the user if absolutely necessary.

See also: [Convention over Configuration on Wikipedia](https://en.wikipedia.org/wiki/Convention_over_configuration).

## Open Source & Enterprise
### Open Source & Enterprise

We offer a number of ways that users can run the FlowForge product, we will
always offer an open source version that has the core features. Features that
Expand Down

0 comments on commit 3f4b1e1

Please sign in to comment.