JP2014229321A - モノのインターネット(IoT)アプリケーションの開発 - Google Patents

モノのインターネット(IoT)アプリケーションの開発 Download PDF

Info

Publication number
JP2014229321A
JP2014229321A JP2014107957A JP2014107957A JP2014229321A JP 2014229321 A JP2014229321 A JP 2014229321A JP 2014107957 A JP2014107957 A JP 2014107957A JP 2014107957 A JP2014107957 A JP 2014107957A JP 2014229321 A JP2014229321 A JP 2014229321A
Authority
JP
Japan
Prior art keywords
application
artifacts
iot
reusable
development system
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2014107957A
Other languages
English (en)
Other versions
JP6435118B2 (ja
Inventor
アヴィク・ゴース
Ghose Avik
アルパン・パル
Pal Arpan
アニルバン・ドゥッタ・チョウドゥリー
Dutta Choudhury Anirban
タヌシャム・チャットパダヤイ
Chattopadhyay Tanushyam
プラバン・クマール・ボーミック
Kumar Bhowmick Plaban
ディマン・チャットパダヤイ
Chattopadhyay Dhiman
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Tata Consultancy Services Ltd
Original Assignee
Tata Consultancy Services Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Tata Consultancy Services Ltd filed Critical Tata Consultancy Services Ltd
Publication of JP2014229321A publication Critical patent/JP2014229321A/ja
Application granted granted Critical
Publication of JP6435118B2 publication Critical patent/JP6435118B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • G06F8/36Software reuse
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/22Indexing; Data structures therefor; Storage structures
    • G06F16/2228Indexing structures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/70Software maintenance or management

Abstract

【課題】モノのインターネット(IoT)アプリケーションの開発のためのアプリケーション開発システムを提供する。【解決手段】IoTアプリケーションの開発のためのアプリケーション開発システム(102)は、入力を取得するためのカタログモジュール(120)を含む。入力は開発されるIoTアプリケーションに関連するデータを含む。カタログモジュールはさらに、入力に基づいて知識データベース(108)から複数の再利用可能なアーティファクトを取得する。推奨モジュール(122)は、複数の再利用可能なアーティファクトそれぞれに関連付けられているフィードバック、エキスパート解析及びエキスパート解析とフィードバックとの組み合わせのうちの少なくともいずれかに基づいて、複数の再利用可能なアーティファクトの中からアーティファクトを推奨する。関連モジュール(124)は、IoTアプリケーションの開発のために、選択されたアーティファクトを互いに関連付ける。【選択図】図1

Description

本発明の主題は、一般に、モノのインターネット(IoT)に係り、特に、IoTアプリケーションの開発に関する。
通信技術の急速な発展および通信技術とインターネット技術とのさらなる融合に伴い、モノのインターネット(IoT)の流行が日々増加している。IoTは、無線周波数識別(RFID)、センサー、全地球測位システム(GPS)およびレーザスキャナなどの異なる情報センシング装置と、巨大なネットワークを形成するために、インターネットと組み合わせるエマージングテクノロジー(emerging technology)である。
IoTは、人々の日常生活に劇的な影響を与える可能性がある、なんにでも、いつでも、どこからでも、という接続性の視点を有する。これは、今日のインターネットの、しばしば「周囲インテリジェンス」、「ユビキタスネットワーク」及び「サイバーフィジカルシステム」などの用語に関連付けられている物理的オブジェクトの実世界への延長として認識される。IoTアプリケーションの開発、展開および管理を迅速かつ簡単にする様々なIoTプラットフォームが、過去に開発されている。環境と個人の健康の監視、および、農業とスマートスペースとスマートシティとを含む工業プロセスの監視および制御は、IoTアプリケーションのいくつかの例である。
従来、IoTアプリケーションの開発、展開、および管理を迅速かつ簡単にすることができる様々なプラットフォームが利用可能である。このようなプラットフォームの一つは、RIPSAC(Real-Time Integrated Platform for Services & Analytics)である。RIPSACは、センサーのデータ取得、保存、解析、および、センサー駆動型アプリケーションとサービスの開発のための可視化のためのプラットフォームである。RIPSACサービスは、アプリケーションプログラミングインターフェース(API)とソフトウェア開発キット(SDK)の形式で利用可能にされる。しかしながら、RIPSACは、IoTドメインのためのサービスとしてのセンサーのデータ解析を提供していない。
この発明の一実施態様は、モノのインターネット(IoT)アプリケーションを開発するための方法であって、前記方法が、アプリケーション開発システム(102)が、アプリケーション開発者からの入力を取得するステップであって、前記入力が、開発される前記IoTアプリケーションに関連するデータを含むステップと、前記アプリケーション開発システム(102)が、前記入力に基づいて知識データベース(108)から、複数の再利用可能なアーティファクトを検索するステップと、前記アプリケーション開発システム(102)が、前記複数の再利用可能なアーティファクトのそれぞれに関連付けられたフィードバックに基づいて、前記複数の再利用可能なアーティファクトの中からのアーティファクトを、前記アプリケーション開発者に推奨するステップと、前記アプリケーション開発システム(102)が、前記推奨されたアーティファクトの中から選択されたアーティファクトを、前記アプリケーション開発者から受信するステップと、前記アプリケーション開発システム(102)が、前記IoTアプリケーションのフェーズに従って、前記選択されたアーティファクトを互いに関連付けることに基づいて、前記IoTアプリケーションを開発するステップと、を有する方法である。
詳細な説明は、添付の図面を参照して説明される。図において、参照番号の最も左の桁は、その参照番号が最初に現れる図を特定する。同じ番号が機能およびコンポーネントを参照するために図面全体にわたって使用される。
本主題の一実施形態による、アプリケーション開発システムを実施するネットワーク環境を示す図である。 本主題の一実施形態による、モノのインターネット(IoT)アプリケーションの開発の一例を示す図である。 本主題の一実施形態による、モノのインターネット(IoT)アプリケーションの開発の一例を示す図である。 本主題の一実施形態による、IoTアプリケーションの開発のための方法を示す図である。
さらに、IoTアプリケーションを開発することは、新しい言語、開発プロセスとツール、プラットフォーム、および、規格などがアプリケーション開発においてアプリケーション開発者をサポートするために開発されているにもかかわらず、従来のプラットフォームではますます困難になってきている。アプリケーション開発者の知識と経験との不足は、IoTアプリケーションの開発の失敗の主な理由の一つである。ある場合において、アプリケーション開発者が関連する理論的な知識を有していても、IoTアプリケーションの特有の性質のために、特定のシナリオにおける理論的な知識を適用することは困難である。さらに、従来のプラットフォームは、他のアプリケーション開発者による将来の使用のために、様々なアプリケーション開発者によって開発されたアーティファクトを格納するための任意のメカニズムを提供しない。既に開発されたアーティファクトの再利用性の欠如のため、多くの時間とリソースとがアプリケーションの開発時に浪費されている。
本主題として、モノのインターネット(IoT)アプリケーションの開発のためのシステムおよび方法について説明する。アプリケーション開発システムと称してここに記載されるシステムは、アプリケーション開発者のためにIoTアプリケーションを開発することが可能である。
典型的には、すべてのIoTアプリケーションは、いくつかの共通の特性やフェーズを有している。一例として、IoTアプリケーションのフェーズは、センシングフェーズ、抽出フェーズ、解析フェーズ、および、応答フェーズを含んでもよい。センシングフェーズにおいて、アプリケーションは、センサーを使用して感知またはデータを収集してもよい。抽出フェーズにおいて、アプリケーションは、関連情報を抽出するためにデータを処理する。次に、アプリケーションは、抽出されたデータを解析フェーズにおいて解析し、最終的に応答フェーズにおいてユーザ(複数のユーザ)に解析したデータを通知する。
IoTアプリケーションの開発のために、アルゴリズム開発者またはアプリケーション開発者によって、複数のアーティファクトが、それぞれのフェーズのために作成される。アーティファクトは、アルゴリズム、関数、ソースコード、構成スクリプト等を含んでもよい。例えば、アルゴリズム開発者が、センシング、抽出、解析および応答アルゴリズムを作成することができる。各フェーズに対応するアーティファクトは、IoTアプリケーションを開発するために、その後、互いに関連付けられてもよい。
本発明の主題によれば、まず、様々なアルゴリズム開発者またはアプリケーション開発者によって作成された複数のアーティファクトであって、IoTアプリケーションの各フェーズに関連する複数のアーティファクトと、アーティファクトのそれぞれに関連付けられたメタデータとを格納するためのデータベースが、一実装に従って維持される。アーティファクトのためのメタデータは、限定されるものではないが、センサーの型とアーティファクトが開発されたユースケース、および、例えば、銀行、工業又は保険ドメインなどのアーティファクトのドメインを含んでもよい。ここでいうデータベースは、アプリケーション開発システムに関連付けられた外部リポジトリ、または、アプリケーション開発システム内の内部リポジトリとすることができる。以下の説明では、データベースは、知識データベースと呼ばれる。一例において、知識データベースに格納されたアーティファクトは、再利用のためにアプリケーション開発者が利用できる。実装では、必要なときはいつでも、知識データベースに含まれるアーティファクトは更新されてもよい。例えば、新たなアーティファクトが知識データベースに追加されてもよいし、既存のアーティファクトが修正されてもよいし、有用ではないアーティファクトが知識データベースから削除されてもよい。
実施形態によれば、アーティファクトの各々についてのフィードバックは、アルゴリズム開発者から受信され、知識データベースに格納されてもよい。フィードバックは、アーティファクトのユーザから受信されてもよい。一例において、フィードバックは、格付けの形態で受信されてもよい。アルゴリズム開発またはアーティファクトのユーザは、アーティファクトの成功率、ユースケース、および、アーティファクトが使用される頻度などの特定のパラメータに基づいて、フィードバックを提供してもよい。前述の実施形態において、新たなフィードバックが受信されたときにはいつでも、知識データベース内のフィードバックを更新してもよい。
一実施形態において、知識データベースに格納されるアーティファクトは、メタデータに基づいて、知識データベースにおいて索引付けられてもよい。索引付けは、知識データベースからアーティファクトの容易な検索を可能にする。一例において、同じ種類のドメインと同じフェーズとに属するアーティファクトが、一緒にグループ化される。別の例においては、同じセンサーのタイプ、ドメイン、および、フェーズに関連するアーティファクトが、一緒にグループ化される。
知識データベースは、このように、索引付きのアーティファクトと、様々なユーザとアルゴリズム開発とからのフィードバックとを含む。予め格納されたアーティファクトは、各フェーズ毎に、IoTアプリケーションを開発するためにアプリケーション開発システムによって検索されることができる。予め格納されたアーティファクトは、互換的に、再利用可能なアーティファクトと呼ばれることもある。一実施態様において、アーティファクトは、IoTアプリケーションの開発中に、リアルタイムで索引付けされ分類されていてもよい。IoTアプリケーションの開発が行われる方法について、以降説明する。
アプリケーション開発者は、アプリケーション開発システムへの入力として、データセットおよびデータセット内のデータに対して実行される機能性を提供してもよい。データに対して実行される必要がある機能性は、開発されるIoTアプリケーションによって実行される1又は2以上のタスクがあってもよい。データセットは、開発されるアプリケーションの異なるフェーズ、1又は2以上のタスクに適したセンサーの種類、タスクが実行されるサブジェクト、および、タスクが実行されるシナリオを含んでもよい。アプリケーション開発者の入力に基づいて、アプリケーション開発システムは、知識データベースから予め格納されたアーティファクトの対応するグループを検索する。実施形態において、アプリケーション開発者によって提供される入力は、すなわち、データセット、1又は2以上のタスク、および、メタデータは、アーティファクトのグループを検索するために、互いに比較されてもよい。アプリケーション開発システムはまた、グループに含まれるアーティファクトに関連付けられたフィードバックを検索してもよい。一例において、アプリケーション開発者が、タスクは車のナンバープレートを認識するものである、と指定したとする。さらに、アプリケーション開発者が、例えば、センサーはカメラであり、フェーズはセンシングと抽出と解析とを含み、サブジェクトは小さいエリアであり、かつ、シナリオは夜間であるというデータをともなったデータセットを提供する。1又は2以上のタスクとデータセットとに基づいて、アプリケーション開発システムは、データセットと1又は2以上のタスクとに関連付けられているすべてのアルゴリズムを検索してもよい。例えば、アプリケーション開発システムは、抽出フェーズ、解析フェーズ、カメラ、夜間、および、小さいエリアに関連する複数のアーティファクトを検索してもよい。
実施形態によれば、アーティファクトに関連付けられたフィードバックに基づいて、アプリケーション開発者に推奨が提供される。一実施形態において、5トップにレートされたアーティファクトと言う、アーティファクトの高くレートされたセットは、特定のデータセットのために、アプリケーション開発者に推奨されてもよい。前述の実施形態において、アーティファクトの高くレートされたセットは、各フェーズのために、推奨されてもよい。アプリケーション開発者は、次いで、各フェーズのアーティファクトの推奨されたセットから、1又は2以上のアーティファクトを選択することができる。アプリケーション開発システムはまた、IoTアプリケーションを開発するための可能な最良のアーティファクトを、各フェーズ毎に、アプリケーション開発者に推奨してもよい。可能な最良のアーティファクトは、エキスパート解析、又は、エキスパート解析とフィードバックとの組み合わせに基づいて提供されてもよい。例えば、最大にレートされたアーティファクトが、各フェーズ毎に、アプリケーション開発者に推奨されてもよい。
アプリケーション開発者によるアーティファクトの選択に基づいて、アーティファクトは、IoTアプリケーションのフェーズに関連付けられてもよいし、または、リンクされてもよい。例えば、センシングフェーズに属するアーティファクトが、抽出フェーズに属するアーティファクトに関連付けられてもよい。同様に、抽出フェーズに属するアーティファクトが、解析フェーズに属するアーティファクトに関連付けられてもよい。
アルゴリズムまたはアプリケーション開発者によって開発されたアーティファクトは、知識データベースに格納されるため、アプリケーション開発システムは、アプリケーション開発者が知識データベースを使用したIoTアプリケーションを開発することを容易にし、それによって、アーティファクトの再利用を最大化し、多くの時間とリソースとを節約する。さらに、IoTアプリケーションがアプリケーション開発システムによって提供される推奨とエキスパート解析とに基づいて開発されているので、アプリケーション開発者は容易かつ正確にIoTアプリケーションを開発することができる。図1は、本主題の一実施形態によるアプリケーション開発システム102を実施するネットワーク環境100を示す。上述の実施形態において、ネットワーク環境100は、アプリケーション開発者のためのモノのインターネット(IoT)アプリケーションを開発するように構成されたアプリケーション開発システム102を含む。
一実施形態において、ネットワーク環境100は、幾千のパーソナルコンピュータ、ラップトップ、ブレードサーバーなどの様々なサーバ、および他のコンピューティングデバイスを含む公共ネットワーク環境とすることができる。別の実施形態では、ネットワーク環境100は、パーソナルコンピュータ、サーバ、ラップトップ、および/または、携帯電話やスマートフォンなどの通信デバイスなどの限られた数のコンピューティングデバイスをともなった、プライベートネットワーク環境であってもよい。
アプリケーション開発システム102は、ラップトップコンピュータ、デスクトップコンピュータ、ノートブックコンピュータ、ワークステーション、メインフレームコンピュータ、サーバ、ネットワークサーバなどの様々なコンピューティングシステムによりで実施されてもよい。一実施形態では、アプリケーション開発システム102は、既存の情報技術インフラストラクチャ内に含められてもよい。さらに、アプリケーション開発システム102は、複数のユーザ装置104-1、104-2、104-3、… 、104-Nに接続されてもよいことが理解されるであろう。ユーザ装置104-1、104-2、104-3、... 、104-Nは、総称してユーザデバイス104と称され、個別にはユーザデバイス104と称される。ユーザデバイス104は、限定されないが、デスクトップコンピュータ、ポータブルコンピュータ、携帯電話、ハンドヘルドデバイス、およびワークステーションを含んでもよい。ユーザデバイス104は、プログラマ、アルゴリズム開発者、内容領域専門家、アプリケーション開発者、ソフトウェアアーキテクト、クライアントや顧客などのユーザによって使用されてもよい。
図1に示すように、ユーザデバイス104は、1又は2以上のエンドユーザがアプリケーション開発システム102にアクセスして操作することを容易にするために、1又は2以上の通信リンクを介して、ネットワーク106上のアプリケーション開発システム102に通信可能に接続されている。一実施態様では、ネットワーク106は、無線ネットワーク、有線ネットワーク、またはそれらの組み合わせであってもよい。ネットワーク106はまた、例えば、インターネットやイントラネットなどの単一の大規模なネットワークのように相互に接続して機能する、個別ネットワークまたは多くのこのような個別ネットワークの集合であってもよい。ネットワーク106は、例えばイントラネット、ローカルエリアネットワーク(LAN)、ワイドエリアネットワーク(WAN)、インターネット、等の異なるタイプのネットワークの一つとして実装されてもよい。ネットワーク106は、専用ネットワーク又は共有ネットワークであってもよい。専用ネットワーク又は共有ネットワークは、相互に通信するための、たとえばハイパーテキスト転送プロトコル(HTTP)、伝送制御プロトコル/インターネットプロトコル(TCP/IP)などの様々なプロトコルを使用する異なるタイプのネットワーク関連付けの代表である。さらに、ネットワーク106は、ルータ、ブリッジ、サーバ、コンピューティングデバイス、記録装置などを含む様々なネットワークデバイスを含んでもよい。
ネットワーク環境100は、アプリケーション開発システム102に通信可能に接続された知識データベース108を備える。知識データベース108は、複数のアーティファクトとアーティファクトのそれぞれに関連付けられたメタデータとを格納してもよい。アーティファクトは、アルゴリズム、関数、ソースコード、構成スクリプト等を含んでもよい。アーティファクトのメタデータは、これに限定されるものではないが、センサーのタイプとアーティファクトが開発されたユースケース、および、銀行、製造業または保険ドメインなどのアルゴリズムのドメインを含んでもよい。一実施態様では、アーティファクトに関連付けられたフィードバックが、知識データベース108に記憶されてもよい。
知識データベース108はアプリケーション開発システム102の外部に示されているが、知識データベース108はまた、アプリケーション開発システム102の内部に実装できることが、当業者によって理解されるであろう。
アプリケーション開発システム102はさらに、インターフェース(複数可)110を含む。さらにインターフェース(複数可)110は、たとえば製品基板、マウス、外部メモリ及びプリンタなどの周辺装置(複数可)とインターフェースする、ソフトウェアやハードウェアの様々なインターフェースを含んでもよい。追加的に、インターフェース(複数可)110は、アプリケーション開発システム102を、Webサーバ及び外部リポジトリなどの他のデバイスと通信可能にすることができる。インターフェース(複数可)110はまた、例えば、LAN、ケーブルなどの有線ネットワーク、および、WLAN、セルラまたは衛星などの無線ネットワークを含む、広範囲のネットワークとプロトコルタイプとによる複数の通信を容易にする。この目的のために、インターフェース(複数可)110は、1又は2以上のポートを含んでもよい。
実施形態において、アプリケーション開発システム102は、メモリ114に接続されているプロセッサ(複数可)112を含む。プロセッサ112(複数可)は、1又は2以上のマイクロプロセッサ、マイクロコンピュータ、マイクロコントローラ、デジタル信号プロセッサ、中央処理装置、ステートマシン、論理回路、及び/又は、動作命令に基づいて信号を処理する任意のデバイスとして実現することができる。とりわけ、プロセッサ(複数可)112は、メモリ114に記憶されたコンピュータ可読命令をフェッチして実行するように構成されてもよい。
メモリ114は、例えば、スタティック・ランダム・アクセス・メモリ(SRAM)およびダイナミック・ランダム・アクセス・メモリ(DRAM)などの揮発性メモリ、および/または、リード・オンリー・メモリ(ROM)、消去可能プログラマブルROM、フラッシュメモリ、ハードディスク、光ディスクおよび磁気テープなどの不揮発性メモリを含む、当業界に知られている任意のコンピュータ可読記録媒体を含んでもよい。
さらに、アプリケーション開発システム102は、モジュール(複数可)116およびデータ118を含む。モジュール(複数可)116は、例えば、カタログモジュール120、推奨モジュール122、関連付けモジュール124および他のモジュール(複数可)126を含む。他のモジュール126は、アプリケーション開発システム102によって実行されるアプリケーションまたは関数を補足するプログラムまたは符号化された命令を含んでもよい。データ118は、カタログ128および他のデータ130を含んでもよい。他のデータ130は、とりわけ、処理された、受信された、または、1又は2以上のモジュール(複数可)の実行の結果として生成されたデータを格納するためのリポジトリとして機能してもよい。
実施形態によれば、アプリケーション開発システム102のカタログモジュール120は、様々なアルゴリズム又はアプリケーション開発者からの複数のアーティファクトとそれぞれのアーティファクトに関連付けられたメタデータとを受信し、これらを知識データベース108に格納するように構成されてもよい。アーティファクトは、再利用可能なアーティファクトと互換的に呼ばれてもよい。アーティファクトは、アルゴリズム、関数、ソースコード、構成スクリプト等を含んでもよい。アーティファクトのメタデータは、これらに限定されるものではないが、センサーのタイプとアーティファクトが開発されたユースケース、および、銀行、製造業や保険ドメインなどのアルゴリズムのドメインを含んでもよい。
さらに、複数のアーティファクトは、IoTアプリケーションの異なるフェーズに関係してもよい。先に示したように、交換的にアプリケーションと呼ぶすべてのIoTアプリケーションは、例えば、センシングフェーズ、抽出フェーズ、解析フェーズおよび応答フェーズのうちの1又は2以上などの、いくつかのフェーズを包含する。センシングフェーズでは、アプリケーションは、センサーを使用してデータを感知または収集してもよい。抽出フェーズでは、アプリケーションは、関連情報を抽出するためにデータを処理する。次に、アプリケーションは、解析フェーズにおいて抽出されたデータを解析し、最終的に応答フェーズにおいてユーザ(複数可)に解析したデータを通知する。したがって、任意のIoTアプリケーションの開発のために、アーティファクトは、各フェーズごとに作成される。例えば、火災管理アプリケーションは、煙センサーおよび温度センサーを使用してデータを収集する。アプリケーションは、次に煙のレベルなどのデータを抽出し、次に例えば、上限を超えた煙のレベルの増加があるか否かというチェックするために、抽出されたデータを解析する。最後に、アプリケーションは、最終結果をユーザに通知する。たとえば、煙のレベルの増加があった場合、火災管理アプリケーションは、アラームと警告灯のセットを介して、建物の住民と近隣の人々すべてに通知する。
一実施形態では、カタログモジュール120は、さらに、アルゴリズムやアプリケーション開発者から、アーティファクトに関連付けられたフィードバックを受信するように構成されてもよい。カタログモジュール120は、知識データベース108にフィードバックを格納してもよい。フィードバックは、また、アーティファクトのユーザから受信されてもよい。一例において、フィードバックは、悪い、平均、良い、非常に良い、および、優れているなどの格付けの形態で受信されてもよい。別の例では、フィードバックは、5段階のスコアなどのようにスコアの形態で受信されてもよい。アルゴリズム開発またはアーティファクトのユーザは、アーティファクトの成功率、ユースケース、および、使用される頻度のような特定のパラメータに基づいてフィードバックを提供してもよい。従って、異なるシナリオのために、異なるフィードバックがアーティファクトのために受信される。たとえば、アプリケーションが夜間のために構築される場合、このパラメータを考慮したフィードバックが受信されてもよい。前述の例において、このパラメータに基づいて、アーティファクトは非常に良いというフィードバックを受信してもよいし、他のアーティファクトが平均というフィードバックを受信してもよい。
さらに、カタログモジュール120は、メタデータに基づいて、知識データベース108のアーティファクトに索引付けするように構成されてもよい。結果として、1又は2以上のグループが決定される。例えば、センサー、ドメイン、およびフェーズの同じ型に属するアーティファクトが一緒にグループ化される。1又は2以上のグループは、グループA、グループB、グループC、グループDなどのように命名されてもよい。一例において、グループAは、夜間においてカメラによってキャプチャされたデータから情報を抽出することが可能な抽出フェーズに属するアーティファクトを含む。別の例において、グループBは、夜間において煙センサーによってキャプチャされたデータから情報を抽出することが可能な抽出フェーズに属するアーティファクトを含む。さらに別の例では、グループCは、日中にカメラによってキャプチャされたデータから情報を抽出することが可能な解析フェーズに属するアーティファクトを含む。索引付けは、アプリケーション開発者がIoTアプリケーションを開発するときに、アーティファクトの検索を容易にすることができる。索引付けられたアーティファクトは、カタログ128として格納され、IoTアプリケーションを開発するために、アプリケーション開発システム102によって検索されることができる。アプリケーション開発システム102がIoTアプリケーションを開発する方法は、以降説明する。
IoTアプリケーションが開発される場合、カタログモジュール120は、アプリケーション開発者からの入力を受信する。この入力は、データセットと、開発されるIoTアプリケーションによって実行される1又は2以上のタスクであってもよい。データセットは、1又は2以上のタスクに適するセンサーの種類、1又は2以上のタスクが実行されるサブジェクト、および、タスクが実行されるシナリオに関連する異なるフェーズを含んでもよい。たとえば、アプリケーション開発者が、夜間における自動車のナンバープレートの認識のためのIoTアプリケーションを開発したい場合、入力は、二値化というタスクと、認識されるべきナンバープレートの画像、センサーとしてのカメラ、小さいエリアというサブジェクト、静止画という画像の種類、および、夜間というシナリオを含むデータセットとを含む。
入力に基づいて、カタログモジュール120は、カタログ128から、データセットと1又は2以上のタスクに関連する再利用可能なアーティファクトのグループを検索する。上記の例で示したように、入力は、二値化というタスクと、認識されるべきナンバープレートの画像、センサーとしてのカメラ、小さいエリアというサブジェクト、静止画という画像の種類、および、夜間というシナリオを含むデータセットとを含む。したがって、入力に基づいて、カタログモジュール120は、グループAを検索することができる。前述したように、グループAは、夜間においてカメラによってキャプチャされたデータから情報を抽出することが可能な抽出フェーズに属するアーティファクトを含む。さらに、カタログモジュール120は、アーティファクトに関連付けられたフィードバックを、知識データベース108から検索するように構成されてもよい。
検索されたアーティファクトとアーティファクトのそれぞれに関連付けられたフィードバックとに基づいて、推奨モジュール122は、フィードバックに基づいて、検索されたアーティファクトの中からのアーティファクトを、アプリケーション開発者に推奨する。先に示したように、フィードバックは、悪い、平均、良い、非常に良い、優れているというような格付けの形態、または、5段階のスコアの形態のような格付けの形態により、受信されてもよい。この場合、フィードバックが格付けの形態で受信されたとき、高レートのアーティファクトが、アプリケーション開発者に推奨されてもよい。高レートのアーティファクトは、非常に良いまたは優れているといういずれかの評価を受けているアーティファクトとして理解することができる。別の場合において、フィードバックがスコアの形態で受信されたとき、高いスコアのアーティファクトが、アプリケーション開発者に推奨されてもよい。高いスコアのアーティファクトは、5段階のうち3又はそれ以上のスコアを受信したアーティファクトとして理解することができる。推奨モジュール122がグループAを検索したとき、フィードバックが格付けの形態で受信され、グループAが10アルゴリズムを含み、そのうち6アルゴリズムが評価として非常に良いまたは優れているといういずれかの評価を受けている場合を例にすると、推奨モジュール122は、アプリケーション開発者にこれらの6のアルゴリズムを推奨することができる。同様に、推奨モジュール122がグループBとグループCとを検索した場合も、推奨モジュール122は、グループBとCとに存在するアルゴリズムの中から高くレートされているアルゴリズムを推奨することができる。
続いて、推奨モジュール122は、アプリケーション開発者から、推奨されたアーティファクトの中から選択されたアーティファクトを受信する。アプリケーション開発者は、複雑さ、処理時間等に基づいて、アーティファクトを選択してもよい。さらにまた、推奨モジュール122は、アプリケーション開発者に、検索されたアーティファクトの中から、各フェーズ毎のアーティファクトを推奨してもよい。アーティファクトは、IoTアプリケーションの開発のための可能な最良のアーティファクトであってもよい。例えば、最大にレートされたアーティファクトが、各フェーズ毎に、アプリケーション開発者に推奨されてもよい。可能な最良のアーティファクトは、エキスパート解析、又はエキスパート解析とフィードバックとの組み合わせに基づいて提供されてもよい。
アプリケーション開発者によって選択されたアーティファクトまたは可能な最良のアーティファクトに基づいて、関連付けモジュール124は、IoTアプリケーションのフェーズにアーティファクトを関連付けるまたはリンクするように構成されてもよい。例えば、センシングフェーズに属するアーティファクトは、抽出フェーズに属するアーティファクトに関連付けられてもよい。同様に、抽出フェーズに属するアーティファクトは、解析フェーズに属するアーティファクトに関連付けられてもよい。
アルゴリズム開発者によって開発されたアーティファクトは、知識データベース108に格納されている。そのため、アプリケーション開発システム102は、多数のアプリケーション開発者が知識データベース108を使用したIoTアプリケーションを開発することを容易にし、それによって、アーティファクトの再利用を最大化し、多くの時間とリソースとを節約する。さらに、アプリケーション開発システム102によって提供される推奨とエキスパート解析とに基づいてIoTアプリケーションが開発されるため、アプリケーション開発者は容易かつ正確にIoTアプリケーションを開発することができる。
図2a及び図2bは、本主題の実施形態によるモノのインターネット(IoT)アプリケーションの開発の一例を示す。
開発されるIoTアプリケーションは、すなわち、駐車場の車のナンバープレートの中から、車のナンバープレートに対応するもの、関連するナンバープレートを識別するスマートビルの夜間の車の自動化プロジェクトに関連している。図2aに示すように、図的表現200は、IoTアプリケーションの開発のためのアルゴリズムツリーを示している。アプリケーション開発システム102は、アプリケーション開発者から、データセットと開発されるIoTアプリケーションによって実行される1又は2以上のタスクを受信する。ナンバープレートは小さな関心領域(ROI)であり、画像タイプが静止画であり、シナリオが夜間である、すなわち、アプリケーションが低光の中でうまく動作する必要があるため、データセットは、認識されるナンバープレートの画像、センサーとしてのカメラ、小さいエリアとしてのサブジェクトを含む。タスクは、局在化、二値化、及び光学文字認識(OCR)を含む。入力に基づいて、アプリケーション開発システム102は、知識データベース108から、入力に関連するすべてのアルゴリズムを検索する。
図2Aに示すように、局在化タスクのために、二つのアルゴリズムが検索された。すなわち、コントラストベースアルゴリズムとエッジベースアルゴリズムとが検索された。さらに、二値化タスクのために、4つのアルゴリズムが検索された。4つのアルゴリズムは、OTSUアルゴリズム、Sauvolaアルゴリズム、Niblackアルゴリズム、およびwolfアルゴリズムを含む。OCRタスクは、3つのアルゴリズムを含む。すなわち、Tesseractアルゴリズム、GOCRアルゴリズム、およびfine readerアルゴリズムを含む。アプリケーション開発システム102は、各アルゴリズムに対して受信したフィードバックに基づいてアルゴリズムの24種類の組み合わせ(2 × 4 × 3 = 24)を解析し、アプリケーション開発者に高いレートのアルゴリズムを推奨することができる。アプリケーション開発者は、IoTアプリケーションを開発するために、高くレートされたアルゴリズムの中からアルゴリズムを選択することができる。アプリケーション開発システム102はまた、エキスパート解析又はエキスパート解析とフィードバックとの組み合わせに基づいて、アプリケーション開発者に、可能な最良のアルゴリズムを提供することができる。アプリケーション開発システム102は、IoTアプリケーションを開発するために、選択されたまたは可能な最良のアルゴリズムを関連付けてもよい。
図2bにおいて、図的表現250は、IoTアプリケーションを開発するための可能な最良のアルゴリズムの関連付けを示している。図2bに示すように、局在化タスクについて、コントラストベースアルゴリズムが、コントラストベースアルゴリズムとエッジベースアルゴリズムとの中からの可能な最良のアルゴリズムである。二値化タスクについて、wolfアルゴリズムが、OTSUアルゴリズム、Sauvolaアルゴリズム、Niblackアルゴリズム、およびwolfアルゴリズムの中からの可能な最良のアルゴリズムである。OCRのタスクについて、Tesseractアルゴリズムが、Tesseractアルゴリズム、GOCRアルゴリズム、およびfine readerアルゴリズムの中からの可能な最良のアルゴリズムである。これらのアルゴリズムは、次いで、駐車場の車のナンバープレートの中から、車のナンバープレートに対応するもの、関連するナンバープレートを識別するためのIoTアプリケーションを開発するために互いに関連付けられる。
図3は、本主題の一実施形態による、IoTアプリケーションの開発のための方法300を示す。方法300は、アプリケーション開発システム102などのコンピューティングデバイスにおいて実装される。方法300は、コンピュータ実行可能命令の一般的なコンテキストにより説明することができる。一般に、コンピュータ実行可能命令は、特定の機能を実行するかまたは特定の抽象データ型を実装するルーチン、プログラム、オブジェクト、コンポーネント、データ構造、プロシージャ、モジュール、関数などを含むことができる。方法300はまた、通信ネットワークを介してリンクされるリモート処理デバイスによって機能が実行される分散コンピューティング環境で実施することもできる。
方法300が説明される順序は、限定として解釈されるものではなく、この方法または代替方法を実装するために、任意の数の記載された方法のブロックを、任意の順序で組み合わせることができる。さらに、この方法は、任意の適切なハードウェア、ソフトウェア、ファームウェア、またはこれらの組合せで実行することができる。
ブロック302において、方法300は、アプリケーション開発者からの入力を取得することを含む。この入力に基づいて、モノのインターネット(IoT)アプリケーションが開発される。ここで入力は、データセットとIoTアプリケーションによって実行される1又は2以上のタスクを含む。データセットは、1又は2以上のタスクに適するセンサーの種類、1又は2以上のタスクが実行されるサブジェクト、1又は2以上のタスクが実行されるシナリオと関連する異なるフェーズを含んでもよい。例えば、アプリケーション開発者が夜間において車のナンバープレートの認識するためのIoTアプリケーションを開発したい場合、入力は、認識するためのナンバープレートの画像、センサーとしてのカメラ、小さいエリアとしてのサブジェクト、静止画としての画像の種類、および、夜間というシナリオを含むデータセットを含んでもよい。入力は、さらに、二値化および局在化のような1又は2以上のタスクを含んでもよい。一実施態様において、カタログモジュール120は、アプリケーション開発者からデータセットを取得する。
ブロック304において、方法300は、入力に基づいて、知識データベース108から、複数のアーティファクトを検索する。上記のブロック302に示されるように、アプリケーション開発者は夜間において自動車のナンバープレートを認識するためのIoTアプリケーションを開発したい場合、入力は、認識するためのナンバープレートの画像、センサーとしてのカメラ、小さいエリアとしてのサブジェクト、静止画としての画像の種類、および、夜間というシナリオを含むデータセットを含む。入力は、さらに、二値化などのタスクを含むことができる。したがって、入力に基づいて、複数のアーティファクトが、知識データベース108から検索される。実施形態では、入力とメタデータとの比較に基づいて、アーティファクトが検索されてもよい。実施形態によれば、カタログモジュール120は、入力に基づいて、知識データベース108から複数のアーティファクトを検索するように構成されている。
ブロック306において、方法300は、アーティファクトに関連付けられたフィードバックに基づいて、複数のアーティファクトの中からのアーティファクトを、アプリケーション開発者に推奨することを含む。アーティファクトのそれぞれについてのフィードバックは、悪い、平均、良い、非常に良い、および、優れているなどの格付けの形態であってもよい。高くレートされたアーティファクトが、アプリケーション開発者に推奨されてもよい。高くレートされたアーティファクトは、非常に良いまたは優れているいずれかのレートを受けているアーティファクトとして理解することができる。一実施形態では、推奨モジュール122は、アプリケーション開発者に高くレートされたアーティファクトを推奨する。
ブロック308において、方法300は、アプリケーション開発者から、推奨されたアーティファクトの中から選択されたアーティファクトを受信することを含む。アプリケーション開発者は、複雑さ、処理時間等に基づいて、アーティファクトを選択してもよい。たとえば、10個のアーティファクトがアプリケーション開発者に推奨されている場合、アプリケーション開発者は、10個のアーティファクトの中から5個のアーティファクトを選択することもできる。一実施態様では、推奨モジュール122は、アプリケーション開発者から、推奨されたアーティファクトの中から選択されたアーティファクトを受信する。
ブロック310において、方法300は、選択されたアーティファクトを互いに関連付けることに基づいて、IoTアプリケーションを開発することを含む。アーティファクトは、IoTアプリケーションのフェーズに基づいて、互いに関連付けられてもよい。例えば、センシングフェーズに属するアーティファクトが、抽出フェーズに属するアーティファクトに関連付けられてもよい。同様に、抽出フェーズに属するアーティファクトが、解析フェーズに属するアーティファクトに関連付けられてもよい。一実施態様では、関連付けモジュール124は、IoTアプリケーションを開発するためにアーティファクトを互いに関連付けるように構成されてもよい。
アルゴリズムまたはアプリケーション開発者によって開発されたアーティファクトは、知識データベース108に格納される。そのため、アプリケーション開発システム102は、多数のアプリケーション開発者が知識データベース108を使用してIoTアプリケーションを開発することを容易にし、それによって、アーティファクトの再利用を最大化し、多くの時間とリソースとを削減する。さらに、アプリケーション開発システム102によって提供される推奨とエキスパート解析に基づいて、IoTアプリケーションが開発されるため、アプリケーション開発者は容易かつ正確にIoTアプリケーションを開発することができる。
IoTアプリケーションを開発するための方法及びシステムの実施形態は、構造的特徴および/または方法に特有の言語で説明してきたが、本発明は必ずしも説明した特定の特徴または方法に限定されないことを理解すべきである。むしろ、特定の特徴および方法は、IoTアプリケーションを開発するための例示的な実施形態として開示されている。
102 アプリケーション開発システム
104−1、104−2、104−3、104−N ユーザ装置
106 ネットワーク
108 知識データベース
110 インターフェース
112 プロセッサ
114 メモリ
116 モジュール
118 データ
120 カタログモジュール
122 推奨モジュール
124 関連付けモジュール
126 他のモジュール
128 カタログ
130 他のデータ

Claims (10)

  1. モノのインターネット(IoT)アプリケーションを開発するための方法であって、前記方法が、
    アプリケーション開発システム(102)が、アプリケーション開発者からの入力を取得するステップであって、前記入力が、開発される前記IoTアプリケーションに関連するデータを含むステップと、
    前記アプリケーション開発システム(102)が、前記入力に基づいて知識データベース(108)から、複数の再利用可能なアーティファクトを検索するステップと、
    前記アプリケーション開発システム(102)が、前記複数の再利用可能なアーティファクトのそれぞれに関連付けられたフィードバックに基づいて、前記複数の再利用可能なアーティファクトの中からのアーティファクトを、前記アプリケーション開発者に推奨するステップと、
    前記アプリケーション開発システム(102)が、前記推奨されたアーティファクトの中から選択されたアーティファクトを、前記アプリケーション開発者から受信するステップと、
    前記アプリケーション開発システム(102)が、前記IoTアプリケーションのフェーズに従って、前記選択されたアーティファクトを互いに関連付けることに基づいて、前記IoTアプリケーションを開発するステップと、
    を有する方法。
  2. 請求項1に記載の方法が、さらに、
    複数の再利用可能なアーティファクトと、前記複数の再利用可能なアーティファクトのそれぞれに関連付けられているメタデータとを、アプリケーション開発者から受信するステップであって、前記複数の再利用可能なアーティファクトそれぞれの前記メタデータは、センサーのタイプと、前記再利用可能なアーティファクトが開発されたユースケースと、前記再利用可能なアーティファクトのドメインとを含む、ステップと、
    前記複数の再利用可能なアーティファクトと、前記複数の再利用可能なアーティファクトのそれぞれに関連付けられている前記メタデータとを前記知識データベース(108)に格納するステップと、
    前記知識データベース(108)中の前記複数の再利用可能なアーティファクトを索引付けするステップであって、前記索引付けが前記メタデータに基づいて実行されるステップと、
    を有する方法。
  3. 請求項1に記載の方法であって、前記フィードバックが格付けの形態である方法。
  4. 請求項1に記載の方法であって、前記入力が、開発される前記IoTアプリケーションによって実行される1つ以上のタスクと、前記IoTアプリケーションのフェーズ、1又は2以上の前記タスクに適したセンサーの種類、1又は2以上の前記タスクが実行されるサブジェクト、および、1又は2以上の前記タスクが実行されるシナリオのうちの1又は2以上を含むデータセットとを含む方法。
  5. 請求項1に記載の方法であって、前記IoTアプリケーションの前記フェーズが、センシングフェーズ、抽出フェーズ、解析フェーズおよび応答フェーズのうちの1又は2以上を含む方法。
  6. モノのインターネット(IoT)アプリケーションを開発するためのアプリケーション開発システム(102)であって、
    プロセッサ(112)と、
    前記プロセッサ(112)に置換されたカタログモジュール(120)であって、
    アプリケーション開発者からの入力であって、前記入力が、開発される前記IoTアプリケーションに関連するデータを含む入力を取得し、
    前記入力に基づいて知識データベース(108)から、複数の再利用可能なアーティファクトを検索する
    前記カタログモジュール(120)と、
    前記プロセッサ(112)に置換された推奨モジュール(122)であって、
    前記複数の再利用可能なアーティファクトのそれぞれに関連付けられたフィードバック、エキスパート解析、および、前記エキスパート解析と前記フィードバックとの組み合わせの少なくとも1つに基づいて、前記複数の再利用可能なアーティファクトの中からアーティファクトを、前記アプリケーション開発者に推奨する、
    前記推奨モジュール(122)と、
    前記プロセッサ(112)に置換された関連付けモジュール(124)であって、
    前記IoTアプリケーションを開発するために、前記アプリケーション開発者によって選択されたアーティファクトを互いに関連付ける、
    前記関連付けモジュール(124)と、
    を有するアプリケーション開発システム(102)。
  7. 請求項6に記載のアプリケーション開発システム(102)であって、前記入力が、開発される前記IoTアプリケーションによって実行される1つ以上のタスクと、1つ以上の、前記IoTアプリケーションのフェーズ、1又は2以上の前記タスクに適したセンサーの種類、1又は2以上の前記タスクが実行されるサブジェクト、および、1又は2以上の前記タスクが実行されるシナリオを含むデータセットとを含むアプリケーション開発システム(102)。
  8. 請求項6に記載のアプリケーション開発システム(102)であって、前記再利用可能なアーティファクトが、アルゴリズム、機能、構成スクリプトおよびソースコードのうちの1又は2以上を含むアプリケーション開発システム(102)。
  9. 請求項6に記載のアプリケーション開発システム(102)であって、前記カタログモジュール(120)はさらに、
    複数の再利用可能なアーティファクトと、前記複数の再利用可能なアーティファクトのそれぞれに関連付けられているメタデータであって、センサーのタイプと、前記再利用可能なアーティファクトが開発されたユースケースと、前記再利用可能なアーティファクトのドメインとを含むメタデータとを、アプリケーション開発者から受信し、
    前記複数の再利用可能なアーティファクトと、前記複数の再利用可能なアーティファクトのそれぞれに関連付けられている前記メタデータとを、前記知識データベース(108)に格納し、
    前記知識データベース(108)内の前記複数の再利用可能なアーティファクトを、前記メタデータに基づいて索引付けする、
    アプリケーション開発システム(102)。
  10. 非一時的コンピュータ可読記録媒体であって、
    アプリケーション開発システム(102)が、アプリケーション開発者からの入力を取得するステップであって、前記入力が、開発される前記IoTアプリケーションに関連するデータを含む、ステップと、
    前記アプリケーション開発システム(102)が、前記入力に基づいて知識データベース(108)から、複数の再利用可能なアーティファクトを検索するステップと、
    前記アプリケーション開発システム(102)が、前記複数の再利用可能なアーティファクトのそれぞれに関連付けられたフィードバックに基づいて、前記複数の再利用可能なアーティファクトの中からのアーティファクトを、前記アプリケーション開発者に推奨するステップと、
    前記アプリケーション開発システム(102)が、前記推奨されたアーティファクトの中から選択されたアーティファクトを、前記アプリケーション開発者から受信するステップと、
    前記アプリケーション開発システム(102)が、前記IoTアプリケーションのフェーズに従って、前記選択されたアーティファクトを互いに関連付けることに基づいて、前記IoTアプリケーションを開発するステップと、
    を含む方法が実行されるためのコンピュータプログラムが記録される非一時的コンピュータ可読記録媒体。
JP2014107957A 2013-05-24 2014-05-26 モノのインターネット(IoT)アプリケーションの開発 Active JP6435118B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
IN1851/MUM/2013 2013-05-24
IN1851MU2013 2013-05-24

Publications (2)

Publication Number Publication Date
JP2014229321A true JP2014229321A (ja) 2014-12-08
JP6435118B2 JP6435118B2 (ja) 2018-12-05

Family

ID=50819586

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014107957A Active JP6435118B2 (ja) 2013-05-24 2014-05-26 モノのインターネット(IoT)アプリケーションの開発

Country Status (3)

Country Link
US (1) US10628136B2 (ja)
EP (1) EP2806356A1 (ja)
JP (1) JP6435118B2 (ja)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2017022050A1 (ja) * 2015-08-03 2017-02-09 株式会社日立製作所 ストレージ装置、計算機システム、及び方法
JP2019502993A (ja) * 2015-12-14 2019-01-31 アフェロ インコーポレイテッドAfero, Inc. モノのインターネット(IoT)システムのための統合開発ツール
WO2020026547A1 (ja) * 2018-08-02 2020-02-06 ソニー株式会社 情報処理装置及び情報処理方法、並びに情報処理システム
JP2021500686A (ja) * 2017-11-07 2021-01-07 アマゾン テクノロジーズ インコーポレイテッド デバイス設計のためのコードモジュール選択

Families Citing this family (33)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9641400B2 (en) 2014-11-21 2017-05-02 Afero, Inc. Internet of things device for registering user selections
US9497572B2 (en) * 2014-11-21 2016-11-15 Afero, Inc. Internet of things platforms, apparatuses, and methods
US10291595B2 (en) 2014-12-18 2019-05-14 Afero, Inc. System and method for securely connecting network devices
US20160180100A1 (en) 2014-12-18 2016-06-23 Joe Britt System and method for securely connecting network devices using optical labels
US9832173B2 (en) 2014-12-18 2017-11-28 Afero, Inc. System and method for securely connecting network devices
US20160274962A1 (en) * 2015-03-19 2016-09-22 Alcatel-Lucent Usa Inc. Self-Tuning Troubleshooting Scripts
US10045150B2 (en) 2015-03-30 2018-08-07 Afero, Inc. System and method for accurately sensing user location in an IoT system
US9704318B2 (en) 2015-03-30 2017-07-11 Afero, Inc. System and method for accurately sensing user location in an IoT system
US9717012B2 (en) 2015-06-01 2017-07-25 Afero, Inc. Internet of things (IOT) automotive device, system, and method
US10503484B2 (en) * 2015-06-08 2019-12-10 Cisco Technology, Inc. Virtual replication of physical things for scale-out in an internet of things integrated developer environment
US9729528B2 (en) 2015-07-03 2017-08-08 Afero, Inc. Apparatus and method for establishing secure communication channels in an internet of things (IOT) system
US9699814B2 (en) 2015-07-03 2017-07-04 Afero, Inc. Apparatus and method for establishing secure communication channels in an internet of things (IoT) system
US10015766B2 (en) 2015-07-14 2018-07-03 Afero, Inc. Apparatus and method for securely tracking event attendees using IOT devices
US10430165B2 (en) * 2015-07-15 2019-10-01 Qingjun Wei Method and apparatus for an internet of things controller
US10140191B2 (en) * 2015-07-24 2018-11-27 Accenture Global Services Limited System for development of IoT system architecture
US9793937B2 (en) 2015-10-30 2017-10-17 Afero, Inc. Apparatus and method for filtering wireless signals
US20170286163A1 (en) * 2015-10-30 2017-10-05 Knowck Co., Ltd. METHOD AND SYSTEM FOR PROVIDING CONTEXT INFORMATION REGARDING IoT DEVICE, AND NON-TRANSITORY COMPUTER-REDABLE RECORDING MEDIUM THEREFOR
CN106708451B (zh) * 2015-11-13 2020-04-28 深圳光峰科技股份有限公司 同屏监控智能设备状态的方法、投影设备及用户终端
US10178530B2 (en) 2015-12-14 2019-01-08 Afero, Inc. System and method for performing asset and crowd tracking in an IoT system
KR20170091426A (ko) 2016-02-01 2017-08-09 삼성전자주식회사 디스플레이장치 및 그 제어방법
US10862968B2 (en) 2016-04-01 2020-12-08 Intel IP Corporation Sensor data search platform
CN105868381A (zh) * 2016-04-06 2016-08-17 无锡中科富农物联科技有限公司 用于农业信息服务的知识库检索系统
CN207095603U (zh) * 2016-06-22 2018-03-13 深圳市慧云物联网技术有限公司 一种物联网运维监控设备
US10715603B2 (en) 2016-09-19 2020-07-14 Microsoft Technology Licensing, Llc Systems and methods for sharing application data between isolated applications executing on one or more application platforms
US9778964B1 (en) 2016-09-19 2017-10-03 Microsoft Technology Licensing, Llc Application data sharing and decision service platform
US10409786B2 (en) 2016-09-19 2019-09-10 Microsoft Technology Licensing, Llc Deployment of applications confirming to application data sharing and decision service platform schema
US10277682B2 (en) * 2016-11-22 2019-04-30 Tata Consultancy Services Limited Method and system for recommending features for developing an iot application
US10255067B2 (en) * 2016-11-22 2019-04-09 Sap Se Development of internet of things (IoT) applications
CN106656700B (zh) * 2017-03-03 2019-09-13 国动物联网技术(上海)有限公司 一种LoRaWAN物联网应用接入方法
EP3451248A1 (en) * 2017-09-02 2019-03-06 Tata Consultancy Services Limited Systems and methods for computing and evaluating internet of things (iot) readiness of a product
CN107491900A (zh) * 2017-09-13 2017-12-19 浙江农林大学 一种农业物联网生产过程管理系统及其实现方法
CN109586992B (zh) * 2018-10-15 2022-02-25 珠海黑石电气自动化科技有限公司 一种基于NB-IoT的设备运行状态监测系统和方法
CN114124466B (zh) * 2021-10-29 2024-01-23 南京邮电大学 一种面向物联网的轻量级应用生态开发系统

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020188434A1 (en) * 2001-06-12 2002-12-12 Pauline Shulman System and method for providing cross-development application design tools and services via a network
JP2007233957A (ja) * 2006-03-03 2007-09-13 Toshiba Corp プラント監視制御プログラム
US20080005721A1 (en) * 2006-06-29 2008-01-03 Augusta Systems, Inc. Method and System for Rapidly Developing Sensor-Enabled Software Applications
US20090178026A1 (en) * 2008-01-08 2009-07-09 Microsoft Corporation Self-describing re-usable software components
US20110055153A1 (en) * 2008-07-29 2011-03-03 Koji Hashimoto Software configuration management method and system
JP2013033359A (ja) * 2011-08-01 2013-02-14 Ntt Docomo Inc アプリケーション作成装置、アプリケーション作成システム及びアプリケーション作成方法

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8676853B2 (en) * 2003-02-27 2014-03-18 Hewlett-Packard Development Company, L.P. System and method for software reuse
US20070022106A1 (en) * 2005-07-21 2007-01-25 Caterpillar Inc. System design using a RAS-based database
US8015547B2 (en) * 2006-06-29 2011-09-06 Augusta Systems, Inc. Reconfigurable, hierarchical component-based architecture and framework and methods for rapidly developing sensor device-enabling software applications
BR112014006446B1 (pt) * 2011-09-19 2021-09-21 Tata Consultancy Service Limited Plataforma de computação para desenvolvimento e implantação de aplicações e serviços de dados baseados em sensor

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020188434A1 (en) * 2001-06-12 2002-12-12 Pauline Shulman System and method for providing cross-development application design tools and services via a network
JP2007233957A (ja) * 2006-03-03 2007-09-13 Toshiba Corp プラント監視制御プログラム
US20080005721A1 (en) * 2006-06-29 2008-01-03 Augusta Systems, Inc. Method and System for Rapidly Developing Sensor-Enabled Software Applications
US20090178026A1 (en) * 2008-01-08 2009-07-09 Microsoft Corporation Self-describing re-usable software components
US20110055153A1 (en) * 2008-07-29 2011-03-03 Koji Hashimoto Software configuration management method and system
JP2013033359A (ja) * 2011-08-01 2013-02-14 Ntt Docomo Inc アプリケーション作成装置、アプリケーション作成システム及びアプリケーション作成方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
KRZYSZTOF, PIOTROWSKI,外1名: "Sens4U: Wireless Sensor Network Applications for Environment Monitoring Made Easy", 4TH INTERNATIONAL WORKSHOP ON SOFTWARE ENGINEERING FOR SENSOR NETWORK APPLICATIONS (SESENA) 2013, JPN6018019015, 21 May 2013 (2013-05-21), US, pages 37 - 42, XP032490481, DOI: doi:10.1109/SESENA.2013.6612264 *

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2017022050A1 (ja) * 2015-08-03 2017-02-09 株式会社日立製作所 ストレージ装置、計算機システム、及び方法
JP2019502993A (ja) * 2015-12-14 2019-01-31 アフェロ インコーポレイテッドAfero, Inc. モノのインターネット(IoT)システムのための統合開発ツール
JP6993973B2 (ja) 2015-12-14 2022-01-14 アフェロ インコーポレイテッド モノのインターネット(IoT)システムのための統合開発ツール
JP2021500686A (ja) * 2017-11-07 2021-01-07 アマゾン テクノロジーズ インコーポレイテッド デバイス設計のためのコードモジュール選択
JP7090152B2 (ja) 2017-11-07 2022-06-23 アマゾン テクノロジーズ インコーポレイテッド デバイス設計のためのコードモジュール選択
WO2020026547A1 (ja) * 2018-08-02 2020-02-06 ソニー株式会社 情報処理装置及び情報処理方法、並びに情報処理システム
JPWO2020026547A1 (ja) * 2018-08-02 2021-08-12 ソニーグループ株式会社 情報処理装置及び情報処理方法、並びに情報処理システム
JP7359150B2 (ja) 2018-08-02 2023-10-11 ソニーグループ株式会社 情報処理装置及び情報処理方法、並びに情報処理システム

Also Published As

Publication number Publication date
EP2806356A1 (en) 2014-11-26
JP6435118B2 (ja) 2018-12-05
US20140351790A1 (en) 2014-11-27
US10628136B2 (en) 2020-04-21

Similar Documents

Publication Publication Date Title
JP6435118B2 (ja) モノのインターネット(IoT)アプリケーションの開発
CN110275898B (zh) 使用基于知识图的解释性设备管理的集成监控与通信系统
US20200012966A1 (en) Data Analytics In Edge Devices
US11250344B2 (en) Machine learning based analytics platform
US9875098B2 (en) System and method for extracting a business rule embedded in an application source code
US10417644B2 (en) Identifying clusters for service management operations
US10031973B2 (en) Method and system for identifying a sensor to be deployed in a physical environment
US11561943B2 (en) Feature-based deduplication of metadata for places
Batista et al. Interscity: Addressing future internet research challenges for smart cities
US11062324B2 (en) Identifying clusters for service management operations
US11017764B1 (en) Predicting follow-on requests to a natural language request received by a natural language processing system
US10754628B2 (en) Extracting web API endpoint data from source code to identify potential security threats
Le et al. EPC information services with No-SQL datastore for the Internet of Things
US9706005B2 (en) Providing automatable units for infrastructure support
CN112085567A (zh) 商品推荐方法、装置、电子设备以及可读介质
WO2021119230A1 (en) Intelligent conversion of internet domain names to vector embeddings
CN111338693A (zh) 基于模型构建的目标文件生成方法、服务器及存储介质
US11379261B2 (en) Systems and methods for automatically creating an image processing pipeline
US11777808B2 (en) Method and system for providing an end-to-end asset hierarchy
CN112256687A (zh) 一种数据处理的方法和装置
CN113296913A (zh) 基于单集群的数据处理方法、装置、设备及存储介质
CN112564984A (zh) 基于大数据的物联网的分布式安全运维的方法
Lewis et al. A tale of three systems: Case studies on the application of architectural tactics for cyber-foraging
CN110209885A (zh) 一种图查询方法及系统
CN115390912B (zh) 资源发现方法、装置、计算机设备和存储介质

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20170518

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20180521

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20180528

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20180827

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20181015

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20181112

R150 Certificate of patent or registration of utility model

Ref document number: 6435118

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250