Open source

Samsung Automation Studio is one way to integrate Samsung services with open source or 3rd-part services. We are actively using open source and trying to contribute to the open source ecosystem.

Check out the following article.

Samsung Electronics Migrates IoT Developer Tools to Cloud Foundry

based on Node-RED

Samsung Automation Studio was forked from Node-RED version 0.17.5 and developed to support the easy development of SmartThings Automation Webhook in early 2016.

Low-code programming for event-driven applications

Node-RED is a programming tool for wiring together hardware devices, APIs and online services in new and interesting ways.

It provides a browser-based editor that makes it easy to wire together flows using the wide range of nodes in the palette that can be deployed to its runtime in a single-click.

Flow-based programming

Invented by J. Paul Morrison in the 1970s, flow-based programming is a way of describing an application’s behavior as a network of black-boxes, or “nodes” as they are called in Node-RED. Each node has a well-defined purpose; it is given some data, it does something with that data and then it passes that data on. The network is responsible for the flow of data between the nodes.

It is a model that lends itself very well to a visual representation and makes it more accessible to a wider range of users. If someone can break down a problem into discrete steps they can look at a flow and get a sense of what it is doing; without having to understand the individual lines of code within each node.

More details are available at nodered.org

Contributes

Samsung Automation Studio Team published custom nodes on the Node-RED site. We are improving it through open source. See the following github. https://github.com/Samsung/SamsungAutomationStudio And we continue to engage the NodeRED community.

running on Cloud Foundry

Automation Studio deploys flows in secured and isolated containers whose healths and lifecycles are managed automatically by the reliable container platform (CF)

Cloud Platform

Cloud platforms let anyone deploy network apps or services and make them available to the world in a few minutes. When an app becomes popular, the cloud scales it to handle more traffic, replacing build-out and migration efforts that once took months with a few keystrokes. Cloud platforms enable you to focus exclusively on your apps and data without worrying about underlying infrastructure.

The following diagram shows the layers of a typical technology stack, and compares the traditional IT model to the cloud platform model:

About the Cloud Foundry Platform

This section describes why Cloud Foundry is an industry-standard cloud platform.

Not all cloud platforms are created equal. Some have limited language and framework support, lack key app services, or restrict deployment to a single cloud.

As an industry-standard cloud platform, Cloud Foundry offers the following:

  • Open source code: The platform’s openness and extensibility prevent its users from being locked into a single framework, set of app services, or cloud.
  • Deployment automation: Developers can deploy their apps to Cloud Foundry using their existing tools and with zero modification to their code.
  • Flexible infrastructure: You can deploy Cloud Foundry to run your apps on your own computing infrastructure, or deploy on an IaaS like vSphere, AWS, Azure, GCP, or OpenStack.
  • Commercial options: You can also use a PaaS deployed by a commercial Cloud Foundry cloud provider.
  • Community support: A broad community contributes to and supports Cloud Foundry.

Cloud Foundry is ideal for anyone interested in removing the cost and complexity of configuring infrastructure for their apps.

More details are available at cloudfoundry.org