JP6753596B2 - 自然言語により機能アーキテクチャ文書及びソフトウェア設計・解析仕様書を自動的に生成するプロセス及びシステム - Google Patents

自然言語により機能アーキテクチャ文書及びソフトウェア設計・解析仕様書を自動的に生成するプロセス及びシステム Download PDF

Info

Publication number
JP6753596B2
JP6753596B2 JP2018507792A JP2018507792A JP6753596B2 JP 6753596 B2 JP6753596 B2 JP 6753596B2 JP 2018507792 A JP2018507792 A JP 2018507792A JP 2018507792 A JP2018507792 A JP 2018507792A JP 6753596 B2 JP6753596 B2 JP 6753596B2
Authority
JP
Japan
Prior art keywords
case
verb
database memory
document
stage
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.)
Active
Application number
JP2018507792A
Other languages
English (en)
Other versions
JP2018516420A (ja
Inventor
ナディア アナリア ウェブラ,
ナディア アナリア ウェブラ,
Original Assignee
ナディア アナリア ウェブラ,
ナディア アナリア ウェブラ,
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 ナディア アナリア ウェブラ,, ナディア アナリア ウェブラ, filed Critical ナディア アナリア ウェブラ,
Publication of JP2018516420A publication Critical patent/JP2018516420A/ja
Application granted granted Critical
Publication of JP6753596B2 publication Critical patent/JP6753596B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/20Software design
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/70Software maintenance or management
    • G06F8/73Program documentation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/205Parsing
    • G06F40/211Syntactic parsing, e.g. based on context-free grammar [CFG] or unification grammars
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/268Morphological analysis

Description

本発明は一般的に、人間が自然言語を処理する際の抽象的思考に似た形式論理学によって論理的思考をモデル化するプロセスに関する。詳細には、自然言語に基づいたケース仕様書からのプロセスモデルの導出に関する。
関連出願の相互参照
本願は、同じ発明者が2015年4月28日に出願した米国特許仮出願第62/154,093号「Proceso para generar documentos de especificacion de analisis y de diseno」(Process for generating analysis and design specification documents)の出願日の利益を主張する。上記仮出願は、本明細書においてすべてが明らかとなるように援用する。
先行技術は、後でUML図として視覚化される(オブジェクト指向プログラミングのコンテキストにおける)「クラス」のモデル化の基準となるナレッジベースに格納された表現で表された要件からソフトウェア設計文書を自動的に生成する装置を開示している。また、結果としての言語をコンピュータで処理可能となるように自然言語を形式化するシステム及び方法を開示している。
米国特許出願公開第2013/0097583号は、ソフトウェアエンジニアによるソフトウェア製品の作成をガイド/補助する自動化支援ツールを提供するシステム及び方法を開示している。このシステムは、入出力、記憶、処理、及び通信装置を具備する。このシステムは、関連する要件及び当事者又はエンティティを記述した1つ又は複数の表現によって、要件、当事者又はエンティティ、システム及びサブシステムから導出される使用ケースを識別してグラフィック表示するほか、ドメインモデル及びドメインモデルを視覚化するUMLクラス図を生成する際のソフトウェアエンジニアを支援する。また、このシステムは、拡張使用ケースの作成、オブジェクト相互作用モデルの作成、シーケンス図の作成、及び設計クラス図の作成も可能にする。設計クラス図に基づいて、ソフトウェアエンジニアは、高品質のコンピュータプログラムを生成することができる。このシステムは、図生成器の具備又は図生成器との接続によって、UML(統一モデリング言語)クラス図を自動的に生成するようにしてもよい。本発明と異なり、上記特許の入力は、自然言語で書かれたソフトウェア要件である。本発明は、ビジネス「ケース」を記述する自然言語文から成る。上記特許の入力は、本発明で解決可能な特定ケースのうちの1つである。パーサー(単語認識技術)は従来からあり、辞書に基づく。本発明におけるパーサーは、自動的であって、辞書を使用しないルールに基づく。本発明では、はるかに短い処理時間で精度が向上する。完全なソフトウェア設計を実現するため、米国特許出願公開第2013/0097583号は、当該特許の発明により生成された図に支援されるコードの設計及び開発へのソフトウェアエンジニアの関与を求めている。本発明において、結果としての設計は完全且つ自動であり、説明文に記載の設計を100%含む。本発明における概念的なドメインモデルの抽象化は、形式的である。すなわち、設計は常に、同じルールに対応するため、予測可能な結果が生成される。米国特許出願公開第2013/0097583号においては、概念モデルの20%が手動であり、ケースに依存する。
米国特許出願公開第2011/0239183号は、1つ又は複数のプロセスモデルが自然言語の使用ケースモデルから導出される方法を開示している。例えば、意味が予め割り当てられた所定単語の限定リストを用いて記述された自然言語テキスト情報から得られるプロセッサの使用及びメモリに格納された使用ケースモデルへのアクセスによれば、所定のモデリング表記に従って、メモリに格納されたモデルをプロセスモデルに変換することができる。本発明において、設計は、異なる種類のソフトウェア設計図が得られる無制限の自然言語に基づいて、機能アーキテクチャ文書のレベルで実行される。
あらゆる産業は、その構築プロセスを向上させる課題に直面しており、その主要な誤り要因は、要求者の記述(「ケース」)と当該産業で生み出されるもの(ソリューション)との間の差異である。
現在、上記記述に基づいてソリューションを構築するために「ケース」の記述を望む者は、
解釈及び文書化のための産業アナリストを必要とする。この文書化は、「ケース」に関する要求者のコメントに気付いたアナリストが実行する。そして、アナリストは、文書化を解析して、当該産業の周知の技術のうちの1つを適用することにより、いくつかの図を作成する。文書は、十分な精査が終わったら、「ケース」設計段階に送られる。これらの図の内容は、専門家の解釈及び各産業に固有の上記図に変換する能力のみによって決まる。
また、解析及び記述された「ケース」の上記文書化に基づいて所望のソリューションを設計する産業デザイナも必要とする。デザイナは、解析図を取得してアナリストに会い、後で当該「ケース」のソリューションを設計する基準となる図の正しい理解を最大化可能な説明を求める。この設計は、同じく産業によって決まる他の図を作成することによって実行される。これらの図は、「ケース」のソリューションの構築に必要な技術用語への要求者記述のロジックの新たな変換を表す。
アナリストもデザイナも、ケースの記述を理解して、後でソリューションの構築者が解釈し得る技術的解析及び設計言語に変換することを目標にトレーニングされた専門家である。すなわち、「ケース」の記述から関連するソリューションの構築の最初までに、複数の言語が用いられる(図1「産業設計プロセス」参照)。
A.「ケース」を記述する言語(仲介役:要件を提示する要求者):自然言語
B.「ケース」の解析言語(仲介役:要求を解釈して解析図に変換する産業アナリスト):設計指向に焦点を当てて相補記述が自然言語で表現された標準的な産業表記、手書き草稿を用いる図表
C.「ケース」の設計言語(仲介役:アナリストの作業を解釈して設計図に変換するデザイナ、アーキテクト):ソリューションの設計を表す使用産業に固有のアーキテクチャ図表、計画、及び図
特定のソリューションの設計を要求する者(要求者)は通例、特定産業の熟練デザイナではないため、自身でソリューションを構築することができない。要件を適正に解釈して「ケース」のソリューション設計に取り込む産業アナリスト及び産業デザイナを必要とする。これは、要求者が設計言語を理解しておらず(数ある用途のうちのアーキテクト、土木エンジニア、書籍デザイナ、ソフトウェアデザイナ)、結果としての設計を管理して記述「ケース」のソリューションを構築することができないため、実際には不可能である。本明細書においては、記述(「ケース」)及び実際の構成(ソリューション)からの逸脱を最大限に共有している。図Iに示すように、意味の概念においては、通常、言語の変化に起因する歪みが存在するためである。その結果、要求者は、そのニーズに合うように完全には調整されていない設計及び結果としての製品(家、ソフトウェア、家具、書籍等)を受け取る。
当該産業においては絶えず、ソリューションと要求者のニーズ記述との間の収斂度を向上させる努力をしている。これらの努力は、上記記述を解釈して構造化する手動プロセスへの関与を置き換えることなく、専門家のトレーニング又は作業に用いられるツールの改善によって、現在の方法を改善することに焦点を当てている。
技術的問題を取り扱うこの手法では、必然的に、要件に対して複数の解釈がなされる。要求者が使用する言語(自然言語)をアナリスト及びデザイナが使用する言語(技術言語)に変換することには、誰も正確に管理できない知識の喪失に至る変換を伴うためである。
本発明においては、「ケース」を完全に記述するため、自然言語で構造化された文を使用すれば十分である。技術的グラフィック表記を伴う図へと上記文を手動で変換して、記述に含まれる知識の理解及び伝達を可能にする必要はない。これらの図は、ツールによって、自然言語から自動的に生成される。
現存するものと本発明との差異を以下の表に示す(図1「産業設計プロセス」)。
特定の産業設計が求められる現実性の記述を所与とし、上記記述が表すものに基づいて、システムは、自然言語記述を構造化することにより、意味論の視点から連続的且つコヒーレントに「ケース」の言語要素全体の格納を保証する。また、複数の産業用途において有用な機能アーキテクチャ文書を自動的に構築する。
本発明では、機能アーキテクチャ文書及びその要素を使用したソフトウェア設計アプリケーションの構築を実証する。
本発明において、「ケース」の言及は、コンピュータによるロジック処理を可能とするソフトウェアアプリケーションを構築したい現実性問題を表す。このため、「ケース」のソフトウェア産業は、ソフトウェア構築プロジェクトを向上させる課題に直面しており、その主要な誤り要因は、要求者の記述(問題)と「ケース」が解決するもの(ソリューション)との間の差異である。現在、構築するソフトウェアソリューションに基づいて「ケース」の記述を望む者は、
解釈及び文書化のためのシステムアナリストを必要とする。この文書化は、「ケース」に関するクライアントのコメントに気付いたアナリストが実行する。そして、アナリストは、文書化を解析して、当該産業の周知の技術(UML図、フロー図、プロセス図)のうちの1つを適用することにより、いくつかの図を作成する。文書は、十分な精査が終わったら、「ケース」設計段階に送られる。これらの図の内容は、アナリストの解釈及び上記図に変換する能力のみによって決まる。
また、上記ソフトウェアを設計するソフトウェアデザイナも必要であり、記述された「ケース」全体を通して生成されるデータの自動取り込みを可能にする必要がある。デザイナは、解析図を取得してアナリストに会い、後で当該「ケース」を設計する基準となる図の正しい理解を最大化可能な説明を求める。この設計は、データベース図(システムデータを格納する)、スクリーン図(データの更新、検索、及び処理が行われる)、「ケース」の機能論理図(解決する問題のロジックを表す)、アーキテクチャ図(「ケース」の内部組織の規定により、効果的で確実且つ持続的に機能する(とりわけ、クライアントサーバ、SOA:サービス指向アーキテクチャ))等の他の図を作成することによって実行される。これらの図は、「ケース」のソリューションの構築に必要な専門用語への要求者記述のロジックの新たな変換を表す。
アナリストもデザイナも、ケースの記述を理解して、後でアプリケーションの開発者が解釈し得る技術的解析及び設計言語に変換することを目標にトレーニングされた専門家である。図Iは、「ケース」の記述の最初からソフトウェア設計までの理解及び変換の各段階で用いられる言語に関して、先行技術と本発明とを比較した図である。先行技術においては、以下の言語が用いられる。
A.「ケース」を記述する言語(仲介役:要件を提示するユーザ):自然言語
B.「ケース」の解析言語(仲介役:ユーザの要求を解釈して解析図に変換するシステムアナリスト):設計指向に焦点を当てて相補記述が自然言語で表現されたデータフロー図、解析使用ケース
C.「ケース」の設計言語(仲介役:アナリストの作業を解釈して設計図に変換するデザイナ、アーキテクト):アプリケーションの機能設計を表す図(現在は大抵UML)、ユーザデータを格納するデータベースの設計を表すデータベース図、構築するアプリケーションの階層化アーキテクチャを表すアーキテクチャ図
特注ソフトウェアの設計を要するユーザの種類は通常、ソフトウェアデザイナでもソフトウェア開発エンジニアでもないため、自身で構築することができない。要件を適正に解釈して「ケース」の結果的な設計に取り込むアナリスト及びデザイナを必要とする。
これは、要求者が設計言語を理解しておらず、結果としての設計を管理して要求「ケース」を構築することができないため、実際には不可能である。本明細書においては、要求(問題)と実際の構成(ソリューション)との逸脱を最大限に共有している。すなわち、結果として、要求者は、通例はその要件、修正、又は後々の変更(最初の予想よりも多くの時間を要し、より複雑で高価となり得る場合もある)に合うように完全には調整されていない設計及び結果としての製品(ソフトウェア)を受け取ることになる。
当該産業においては、CASE(コンピュータ支援ソフトウェアエンジニアリング)ツールによってこの問題の解決に至る重要な努力をしている。ただし、これらのツールは、自然言語では機能しないため、過去に記述された限界のうちの複数を露呈する。
技術的問題を取り扱うこの手法では、必然的に、問題に対して複数の解釈がなされる。プロセスに精通したユーザ又はクライアントが使用する言語(自然言語)をアナリスト及びデザイナが使用する言語(技術言語)に変換することには、誰も正確に管理できない知識の喪失に至る変換を伴うためである。
本発明では、ソフトウェアソリューションの記述、解析、及び設計のための唯一の言語として自然言語を採用しているため、結果の歪みに至る知識の喪失が最小限に抑えられる。
先行技術とは異なり、本発明によれば、自然言語の単文を用いて「ケース」を完全に記述することができる。先行技術とは異なり、本発明では、技術的グラフィック表記を伴う図へと上記文を変換してプロセスの知識を理解・伝達する必要がない。その代わり、上記図は、言語の概念要素を識別する単一の決定論的モデルを用いて、当該モデルの機能論理を実装する解析ルールを適用することにより、自然言語に基づいて本発明により自動的に生成される。
概念の所定の階層に基づいて単文で記述を構造化することにより、当該記述の完全性が保証され、高品質のソフトウェア設計を自動的に推論可能となる。
本発明の理解を容易化するとともに本発明と先行技術で利用可能なものとを容易に区別できるようにするため、以下の比較表を提供する。
最新の先行技術は、ソフトウェアが手動又は一部手動で設計されることを明示しているが、その性質からとりわけ、システム要件の解釈の曖昧性、設計エラーの修正の高コスト、設計スケーリング及び開発の困難性、文書化の期限切れといった問題を伴う。本発明は、全体として自動化された産業化可能なプロセスに基づいてこれらの困難を克服することによって、概念の正確性を実現し、スケーラブルな発展的設計を生み出し、文書化を自動的に更新し、ソフトウェア設計コストを大幅に低減する。
用語集
文:意見の伝達又は論理命題の内容の表現が可能な考え得る最小の構文形成。
単文:動詞を1つだけ含む文。
完全単文:本発明の観点から、すべての提示質問に明示的に答える文。
自然言語:自然言語は、一般的なコミュニケーション目的で人間が使用するいわゆる話し言葉又は書き言葉である。
機能要件:要件定義工学に規定の通り、機能要件は、システムの挙動を決定する。グローバル機能要件は、システム自体の挙動と関連するその他より詳細な機能要件をグループ化したものである。
クラス図:システムを含む異なるクラス及び互いの関係を示す図。また、各クラスをそれぞれの方法及び属性のほか、それぞれの相互関係と併せて示す。
ケースの母集団:「ケース」を取り巻く定義及び概念の集合。
複合名詞:2つ以上の単語で構成された名詞。例えば、価格表、文書番号。
+:本明細書においては、テキストを接続又は追加する「連結」を意味する。
適格言語:「ケース」の記述には様々な言語を使用可能であるため、それぞれを各構文及び文法構造で表すことができる。
連結:1つ又は複数の単語を所与として、連結は、単語を接続して、スペースで分離された単一の表現にすることを意味する。例えば「the(その)」、「house(家)」の場合、これら2つの単語の連結は「the house(その家)」となる。
基本ルール:本発明において、基本ルールは質問により規定された挙動構造であり、その目的は、当該質問に対する答えを含む形態構文的な一連の単語を記述することである。
DO:直接目的語を意味する。本発明においては、Whatの質問に現れ、他動詞に続く名詞語を表す。
本発明の自然言語変換のプロセスを示した図である。 機能アーキテクチャ文書を得る本発明のプロセスの各段階を示した図である。 本発明のシステムを示した図である。 ソフトウェア設計文書を得る本発明のプロセスの各段階を示した図である。 段階Aを示した図である。 MASメタモデルを示した図である。 形態構文的ルールを示した図である。 MASメタモデル用途のケースを示した図である。 段階Bを示した図である。 段階Cを示した図である。 段階Dを示した図である。 段階Eを示した図である。 自動文解析器151として構成されたプロセッサ150の機能論理を示した図である。 段階Fを示した図である。 機能アーキテクチャ図である。 段階Gを示した図である。 自動ソフトウェア設計器152として構成されたプロセッサ150の機能論理を示した図である。 段階Hを示した図である。 段階Iを示した図である。 ソフトウェア設計図である。 ビジネス文書の構造を示した図である。 解析文書の構造を示した図である。 クラス設計の例を示した図である。
本発明は、ナレッジベースに格納された、ケースを記述する自然言語表現で表された要件からソフトウェア設計仕様書を生成するコンピュータ及び視覚装置実装方法によって、上掲の問題の解決手段を提供する。これらの表現は、後で変換されてソフトウェア設計用のクラス図として視覚化される設計要素のモデリングを可能とする。この装置は、プロセッサと相互作用するように構成可能である。
まず、図2に示すように、自然言語での「ケース」の記述からプロセスが開始となる。本発明においては、上記記述を実行するため、記述に使用する言語のほか、とりわけ形容詞が名詞の前後いずれに位置するかを表す形容詞の順序及び冠詞を含む単語一覧等の文法及び構文素性を事前に定めておく必要がある。
構文構造及び文法のルールが規定された任意の言語で「ケース」を記述するため、図1に示すようなシステムを用いることにより、入出力装置120によって、自然言語での「ケース」の記述を入力する。入力テキストは、メインメモリに移されて、後でプロセッサ150が使用する。プロセッサは、文書を自動的に解析、設計、及び生成するように構成されている。各処理機能の結果は、データベースメモリ130に格納される。
図1のシステム100の構成要素を以下に示す。
1.入出力装置120:自然言語テキストを取り込む装置。これにより、プロセッサは、表示媒体(とりわけ、スクリーン、プロジェクタ、テレビ、プリンタ、モニタ、モバイル機器)を用いて、以下の構成によりユーザが「ケース」の記述データを入力するとともに結果としての文書を表示可能な構造を示すことができる。
a.言語ユーザインターフェース121:ユーザによる言語の選定並びにその文法及び構文素性のアップロードとその後のデータベースメモリ130への格納とを可能にする視覚構造。
b.ケースユーザインターフェース122:「ケース」を記述する単文のユーザによるアップロードとその後のデータベースメモリ130への格納とを可能にする視覚構造。この構造によれば、ユーザは、自動文解析器151及び自動ソフトウェア設計器152として構成されたプロセッサ150の機能と相互作用することも可能である。
c.フォーマット・グラフィック表記・STD文ユーザインターフェース123:本発明の一実施形態においては、ユーザにこの視覚構造が提示され、自動文書生成器153として構成されたプロセッサ150により構築されたビジネス、解析、及び設計文書の作成のため、静的データベースメモリ160で利用可能なフォーマット、グラフィック表記、及びSTD文を追加又は修正可能となる。
d.文書表示ユーザインターフェース124:自動文書生成器153として構成されたプロセッサ150により生成された文書へのユーザによるアクセスを可能とする構造。
2.CPU110:システム100の処理装置。この装置は、自動設計生成のためのすべての自然言語処理機能を実行するように設計されており、当該機能とシステムのその他の構成要素との間の交換を可能にするメインメモリを含む。
a.メインメモリ140:入出力装置、データベースメモリ、及びプロセッサ間の情報交換に用いられる揮発性記憶装置。その構成に従って、以下の機能を実行する。
i.図141:静的データベースメモリ160に格納されたフォーマット・グラフィック表記・STD文163を用いて、自動文書生成器153として構成されたプロセッサ150による文書処理を可能とするメインメモリの構成。
ii.文マトリクス142:静的データベースメモリ160に格納されたMASメタモデル161、言語・単語・形態構文的ルール162を用いて、自動文解析器151として構成されたプロセッサ150による単文の処理を可能とするメインメモリの構成。
iii.FCマトリクス143:静的データベースメモリ160に格納されたMASメタモデル161、言語・単語・形態構文的ルール162を用いて、自動文解析器151として構成されたプロセッサ150による機能要素の処理を可能とするメインメモリの構成。
iv.DCマトリクス144:静的データベースメモリ160に格納されたMASメタモデル161、言語・単語・形態構文的ルール162を用いて、自動ソフトウェア設計器152として構成されたプロセッサ150による設計要素の処理を可能とするメインメモリの構成。
b.プロセッサ150:処理及び交換タスクを実行する装置。その構成に応じて、以下の機能を実行する。
i.自動文解析器151:単文から機能要素を自動的に生成し、動的データベースメモリ170に送って格納することを主目的とするプロセッサの構成。
ii.自動ソフトウェア設計器152:単文から設計要素を自動的に生成し、動的データベースメモリ170に送って格納することを主目的とするプロセッサの構成。
iii.文書生成器153:単文から設計要素を自動的に生成し、動的データベースメモリ170に送って格納することを主目的とするプロセッサの構成。
3.データベースメモリ130:ユーザによりアップロードされ、様々な構成のプロセッサ150により生成されたデータを格納する永久メモリ。このメモリには、静的構成及び動的構成という2つの記憶構成がある。静的構成では、1回限りの処理用にアップロードされ、「ケース」に固有ではない必要な固定データを格納する。動的構成では、「ケース」に固有でケースごとにアップロードされたデータを格納する。
a.静的データベースメモリ160:
i.MASメタモデル161:データベースメモリ130の言語・単語・形態構文的ルール構造162に格納された形態構文的ルールをもたらす高抽象レベルの形式論理学のルールを含むデータベースメモリ130の構成。
ii.言語・単語・形態構文的ルール162:適格言語の素性、各適格言語の特殊単語、及びその形態構文的ルールを含むデータベースメモリ130の構成。
iii.フォーマット・グラフィック表記・STD文163:文書に当てはまるフォーマット、図に当てはまるグラフィック表記、及び解析文書の作成に必要なSTD文を含むデータベースメモリ130の構成。
b.動的データベースメモリ170:
i.単文・質問171:ユーザによりアップロードされた単文並びに各単文に対応する質問When、Who、What、How、及びWhereに対する答えを含むデータベースメモリ130の構成。
ii.機能要素172:自動文解析器151として構成されたプロセッサ150により自動的に生成された機能要素を含むデータベースメモリ130の構成。
iii.設計要素173:ソフトウェア設計器152として構成されたプロセッサ150により自動的に生成された設計要素を含むデータベースメモリ130の構成。
上述のシステムの使用において、本発明は、図2及び以下に示す一連の段階を実行する。
段階A.入出力装置120を用いて、静的データベースメモリ160のMASメタモデル161の論理構造にMASメタモデル161をアップロードする。
段階B.表示装置120の言語ユーザインターフェース121を用いて、適格言語、各適格言語の文法及び構文素性を入力し、これらのデータを静的データベースメモリ160の言語・単語・形態構文的ルール162の論理構造に格納する。
段階C.表示装置120のケースユーザインターフェース122を用いて、段階Bの適格言語一覧から選択される自然言語のうちの1つで「ケース」の記述をテキストとして入力する。また、「ケース」のステップを識別した後、動的データベースメモリ170の単文・質問171の論理構造に格納する。
段階D.段階Cのステップに対応する「ケース」の単文を識別し、表示装置120のケースユーザインターフェース122を用いてアップロードした後、動的データベースメモリ170の単文・質問171の論理構造に格納する。
段階E.段階AでアップロードしたMASメタモデル161の論理構造に従って機能する自動文解析器151として構成されたプロセッサ150により、段階Dの単文の機能要素(機能要素は、プロセッサ150により抽出されて自動的に特徴付けられた文の各単語に対応することが了解されるものとする)を自動的に識別する。プロセッサ150は、メインメモリ140のFCマトリクス143の論理構造への上記機能要素の一時的な格納を継続する。これらの要素は最終的に、動的データベースメモリ170の機能要素172の論理構造に格納される。
段階F:段階Eの機能要素に基づいて、「ケース」の設計要素を自動的に識別する。設計要素は、プロセッサ150により自動的に生成された機能要素に対応する各ソフトウェア設計モデルを表すことが了解されるものとする。設計要素は、自動ソフトウェア設計器152として構成されたプロセッサ150を用いて作成されるが、これは、本発明の一実施形態において、段階AでアップロードしたMASメタモデル161の論理構造に従って機能する。プロセッサ150は、メインメモリ140のDCマトリクス144の論理構造への上記設計要素の一時的な格納を継続する。これらの要素は最終的に、動的データベースメモリ170の設計要素173の論理構造に格納される。
段階G.(表示装置120の)フォーマット・グラフィック表記・STD文ユーザインターフェースを用いて、ビジネス、解析、及び設計文書の出力フォーマット、要件に対する標準文のパラメータ、並びに設計図のグラフィック表記を入力し、静的データベースメモリ160のフォーマット・グラフィック表記・STD文163の論理構造に格納する。
段階H.段階Gで規定したフォーマット・グラフィック表記・STD文を用いることによって、文書生成器163として構成されたプロセッサ150により、段階Dの単文からビジネス文書(ビジネス文書は、解決する問題の自然言語でのステップバイステップ記述であることが了解される)を、段階Eの機能要素に基づいて解析文書(解析文書は、構築するソフトウェアの機能要件の記述であることが了解される)を、段階Fの設計要素に基づいて設計文書(設計文書は、ソフトウェアを構築する命令を含む文書であることが了解される)を自動的に生成する。
段階I.この種の文書に関して具体的に規定されたグラフィック表記を用いて、文書生成器163として構成されたプロセッサ150により、段階Eの機能要素に基づいて、機能アーキテクチャ文書(機能アーキテクチャ文書は、意味の本質的概念を表すことによって、要約形式の自然言語テキストの意味を構造化したグラフィック図であることが了解される)を自動的に生成する。
プロセスの各段階を以下に詳しく説明する。
段階A.MASメタモデルのアップロード
この段階では、MASメタモデル及びその自明の原理について詳しく説明する。このメタモデルは、自動文解析器151としての構成でのプロセッサ150の挙動の確立に用いられる。
図2A1は、自然言語を解釈するロジックをモデル化するのにこのメタモデルが規定するルールを表すオブジェクト指向パラダイムに係るクラスモデルを示している。これらのルールは、段階Dで機能要素を生成する場合に自動文解析器151として構成されたプロセッサ150が使用する基本形態構文的ルールとして用いられる。
この段階において、MASメタモデルは、以下の下位段階(図2A)により作成される。
下位段階A1.MASメタモデルの格納
この下位段階においては、MASメタモデル161のロジックを静的データベースメモリ160にアップロードする。
このロジックは、自然言語の記述に含まれるあらゆる単語が単語161−1であることを定める。単語が他動詞の場合は、他動詞と動作主接尾辞「ER」とから成る名称のPerformerという単語161−2及び他動詞と接尾辞「BLE」とから成る名称のPerformableという単語161−3の2つの新たな単語が自動的に規定される。この他動詞は、Performerという単語161−2との関係161−5及びPerformableという単語161−3との別の関係161−3を有するPerformanceという単語161−4である。
単語161−1は、他動詞でない単語がPerformerという単語161−2との継承関係161−9及び/又はPerformableという単語161−3との継承関係161−8を確立し得るように互いに関連している。
各単語161−1は、別の単語161−1との継承関係161−0を規定可能である。各単語161−1は、別の単語161−1との連関関係161−7を規定可能である。
MASメタモデルが提供する選択肢の使用は、段階Dで処理する文の形態構文によって決まる。
このように、記述中のすべての単語は、すべての場合に満たされるとともに任意の言語の任意の形態構文的ルールをモデル化する際の基準を表すことを前提として、当該言語の自明のルールを規定するこのメタモデルによって全体が表され得る。
下位段階A2.形態構文的ルールのMASロジックの格納
この下位段階においては、MASメタモデルのロジックを静的データベースメモリ161にアップロードする。当該ロジックは、自然言語の単語を特性化し、異なる機能用途のコンテキストにおいてそれぞれの意味を決定する方法を規定する。自然言語の形式及び構文に対処する構造は、形態構文的構造と称する。
本発明においては、自然言語を扱うためのガイドラインの集合が形態構文的ルールと考えられる。このようなルールは、a)質問ロジック:単文内の単語が属する質問(When、Who、What、How、Where)、b)ステップ型ロジック:What質問を含む動詞の型(FX、CC、QS、L、F)、及びc)単語ロジック:単語の型を規定するテキストを扱うためのガイドラインで構成される。単語の型は、動詞(VERB)、名詞(NOUN)、前置詞(PREP)、冠詞(ART)、接続詞(CONJ)、副詞(ADV)としての文法特性化によって決定される。
各形態構文的ルールには、識別子が規定される。形態構文的ルールの識別子は、Performer、Performable、及びPerformanceという型を除いて、文を構成する単語の型を連結することにより構成される。例えば、冠詞、名詞、動詞、冠詞、前置詞、名詞といった型の一連の単語で構成された文の場合は、ART−NOUN−VERB−ART−PREP−NOUNであってもよい。これらの単語の型は、一般的に扱うことも可能であるし、その型の特定の単語を表すことも可能である。例えば、ルールVERB(is)−PREP−NOUNは、それが当てはまる文が動詞、具体的には単語の型VERBに単語「is」を含み、その後に任意の前置詞PREP及び任意の名詞NOUNが続くことを示す。このルールは、[it]is a monkey([それ]は猿だ)、[it]is a moon([それ]は月だ)という文に当てはまる。
すなわち、あらゆる単文に関して、含まれる単語の型の機能として構造を規定する形態構文的ルールが存在する。
単文を所与として、対応する形態構文的ルールの識別子の構成前に、自動文解析器151として構成されたプロセッサ150は、下位段階B2でアップロードされた特殊単語、冠詞、接続詞、及び前置詞を文から除外する。そして、言語・単語・形態構文的ルール162の構成内の形態構文的ルールについて、静的データベースメモリ160を検索する。対応する識別子を伴うルールが見つかり、同じ対応識別子に2つ以上のルールが存在する場合は、この集合内で、文のルール識別子の構成中に除外された単語の型の特定単語との適合を検索する。適合する場合は、特定の(1つ又は複数の)除外単語に一致するルールを割り当てる。適合しない場合は、一般ルールを割り当てる。
MASメタモデルは、様々なケースの特定ルールを導出する以下の基本ルールを規定する。
基本ルール
基本ルールは2つあり、それぞれの特徴はWhat質問と関連付けられている。
VERB−NOUNルール:
一般ケース:VERB−NOUNルール161−12:動詞・名詞・名詞構造を有する文をモデル化可能。
特殊ケース:VERB(is)−NOUNルール161−10:「to be(〜である)」の動詞・名詞構造を有する文をモデル化可能。この動詞は、MASメタモデル用途の観点からは特殊な動詞である。
VERB−NOUN−PREP−NOUNルール:
一般ケース:VERB−NOUN−PREP−NOUNルール161−11:動詞・名詞・前置詞・名詞構造を有する文をモデル化可能。
特殊ケース:VERB(hold responsible)−NOUN−PREP−NOUNルール161−13:「to hold responsible(責任を負わせる)」の動詞・名詞構造を有する文をモデル化可能。この動詞は、MASメタモデル用途の観点からは特殊な動詞である。
特殊ケース:VERB(link)−NOUN−PREP−NOUNルール161−14:「to link(リンクする)」の動詞・名詞構造を有する文をモデル化可能。この動詞は、MASメタモデル用途の観点からは特殊な動詞である。
同様に、単文内のWhoをモデル化する基本ルールが存在する。
NOUNルール:すべての単文に存在し、主語を表す主要な名詞の挙動をモデル化可能である。
強制的な完了を必要としないWhen、How及びWhere質問の場合は、答えに現れる単語の型が識別され、必要なルール識別子が生成される。
本発明の一実施形態において、ユーザは、常にMASメタモデルのロジックによって決まる基本ルール及び形態構文的ルールを追加可能である。
自然言語の単文を所与として、形態構文的ルールが見つかった場合、自動文解析器151として構成されたプロセッサ150は、図2A2に示すように、当該ルールによって規定されたテキストであるa)質問ロジック、b)ステップ型ロジック、及びc)単語ロジックを扱うためのガイドラインを適用することによって、機能要素を生成する。
(a)質問ロジック:ルールが適用される単語の属する質問の決定
記述は、プロセスを記述した単文の集合であることに留意する必要がある。このようなプロセスの各ステップは、質問Who、What、Where、How、Whenに対する答えから導出された1つの単文に対応する。
(b)ステップ型ロジック:ルールが適用される単語の属するステップ型の決定
各ステップは、ステップ型の下で分類可能である。ステップ型は、What質問内の動詞と関連付けられた特定の単語によってルール中で決定される。あらゆる形態構文的ルールは、MASメタモデルに基づくとともにWhat質問にリンクされた特定の動詞によって決まり、Check/Confirm、Query/Search、Calculation、Relationship、Functional、Notification/Alertといった型の下で分類可能である。
CCステップ:(チェック/確認動作を決定するステップ)
これらは、チェック、確認、制限等のチェック又は確認動作を動詞が規定するステップである。この場合、動詞は他動詞であり、それに続く名詞は常に、システムの数学的論理を表す文に結合されている。
このステップ型には、形態構文的ルールのVERB−NOUN識別子が割り当てられ、チェック/確認ロジックの数学的記述を追加する。
この種の文の例としては、check that the items have a positive inventory(商品が正の在庫であることをチェックする)(VERB−NOUN「正の在庫である」は、確認の数学的論理である)、confirm that the client has a tax ID number(クライアントが税金ID番号を有することを確認する)(VERB−NOUN「税金ID番号を有する」は、確認の数学的論理である)、restrict the intake of expired merchandise(期限切れ商品の摂取を制限する)(VERB−NOUN「期限切れ商品」は、確認の数学的論理である)が挙げられる。
QSステップ(質問/検索動作を含むステップ)
これらは、検索、探索、選択、質問、指示、表示、図示等の質問又は検索動作を動詞が規定するステップである。この場合、動詞は他動詞であり、それに続く名詞は、検索/質問の対象を示す。
このステップ型には、形態構文的ルールのVERB−NOUN識別子が割り当てられ、名詞が検索の対象を表すが、これは、動詞が名詞のインスタンスの集合に当てはまることを意味する。
この種の文の例としては、query the items(商品を質問する)(VERB−NOUN)、show the balances(バランスを図示する)(VERB−NOUN)、display the data(データを表示する)(VERB−NOUN)、show the results(結果を図示する)(VERB−NOUN)、search the items(商品を検索する)(VERB−NOUN)、locate the spare parts(予備部品を探索する)(VERB−NOUN)、select the clients(クライアントを選択する)(VERB−NOUN)が挙げられる。
FXステップ(明示的な計算動作を含むステップ)
これらは、計算、グループ化、平均化、加算等の計算動作を動詞が明示的に規定するステップである。この場合、動詞は常に、システムの数学的論理を表す文に結合されている。
このステップ型には、形態構文的ルールのVERB−NOUN識別子が割り当てられ、動詞が表す計算のロジックを名詞が記述する。
この種の文の例としては、calculate the total sales(総売上高を計算する)(VERB−NOUN)、group the items by color(商品を色でグループ化する)(VERB−NOUN)、average last month’s cost(先月のコストを平均化する)(VERB−NOUN)が挙げられる。
Lステップ(リンク動作を含むステップ)
これらは、関係付け、リンク、関連付け、構成等のリンク動作を動詞が規定するステップである。この場合は、動詞に少なくとも2つの名詞が続く。
動詞は、以下のモデルのいずれかを表すことができる。
モデル1:
このステップ型には、形態構文的ルールのVERB(link)−NOUN−PREP−NOUN識別子が割り当てられ、特定の動詞として「link(リンク)」又は任意の同義語に前置詞(一般的に「with」であるが、異なっていてもよい)が付いた形が可能である。
この種の文の例としては、link the items with the prices(商品に価格をリンクさせる)(VERB(link)−NOUN−PREP−NOUN)、link the equipment with the spare parts(機器に予備部品をリンクさせる)(VERB(link)−NOUN−PREP−NOUN)、associate the taxes with the shares(税金に負担を関連付ける)(VERB(link)−NOUN−PREP−NOUN)、compose the product with the inputs(製品に入力を構成する)(VERB(link)−NOUN−PREP−NOUN)が挙げられる。
モデル2:
このステップ型には、形態構文的ルールのVERB(hold responsible)−NOUN−PREP−NOUN識別子が割り当てられ、特定の動詞として「hold responsible(責任を負わせる)」又は任意の同義語に前置詞(一般的に「for」であるが、異なっていてもよい)が付いた形が可能である。
この種の文の例としては、hold the client responsible for the payment(クライアントに支払いの責任を負わせる)(VERB(hold responsible)−NOUN−PREP−NOUN)、hold the employee responsible for inventory control(従業員に在庫管理の責任を負わせる)(VERB(hold responsible)−NOUN−PREP−NOUN)が挙げられる。
モデル3:
このステップ型には、形態構文的ルールのVERB−NOUN−PREP(a)−NOUN識別子が割り当てられ、特定の前置詞としてa、an、又はその他任意の前置詞が可能である。
この種の文の例としては、measure the item with a unit of measurement(商品を測定単位で測定する)(VERB−NOUN−PREP(a)−NOUN)、value the item with a list of prices(商品を価格一覧で査定する)(VERB−NOUN−PREP(a)−NOUN)が挙げられる。
Fステップ(上記型のいずれにも対応しないステップ)
これらは、動詞が「ケース」固有の動作を表すため、上記型のいずれにも動詞が対応しないステップである。
動詞は、以下のモデルのいずれかを表すことができる。
モデル1:
このステップ型には、形態構文的ルールのVERB−NOUN識別子が割り当てられ、CC、QS、FXステップ型にも、この同じ型のいずれのモデルにも特定の単語として一覧化されていないすべての動詞に用いられる。
他動詞には、1つ又は複数の名詞が続く。例えば、Buy an item(商品を購入する)(VERB−NOUN)、Sell fruits(果物を販売する)(VERB−NOUN)、Fix the tools(工具を固定する)(VERB−NOUN)、Solve problems(問題を解決する)(VERB−NOUN)。
モデル2:
このステップ型には、形態構文的ルールのVERB(is)−NOUN識別子が割り当てられ、特定の動詞が「to be」となる。これは、名詞の性質を表す非常に特殊な動詞である。
この種の文の例としては、[it] is fruit([それ]は果物だ)(VERB(is)−NOUN), [it] is a company([それ]は会社だ)(VERB(is)−NOUN)が挙げられる。
(c)単語ロジック:解析した文及び質問の属する単語の型構造の決定
自動文解析器151(図2E1)として構成されたプロセッサ150は、以下の動作を実行することにより、各単文の単語から関連する機能要素を得る。
「ケース」の言語について、静的データベースメモリ160の言語・単語・形態構文的ルール162の論理構造から、動詞末尾(VE)と、グループ化単語(GRW)一覧及び除外単語(EXW)一覧が存在する特殊単語(SW)一覧とを取得する。また、論理構造から適用されるガイドラインを規定した形態構文的ルールも取得する。
単文の論理構造及び動的データベースメモリ170の質問171から、対応する質問において構造化された「ケース」の単文を取得する。
また、「ケース」の各単文に連番を割り当てる。
「ケース」の各単文及び各質問について、単語を1つずつ取得し、以下のように単語の型に従って特性化する。
質問がHowの場合は、質問中の各単語の末尾を動詞末尾VEと比較して動詞を識別する。動詞を識別したら、その他の単語を特殊単語SW一覧と比較して、前置詞、冠詞、接続詞、及び副詞を識別する。動詞に続くとともにSWではない単語は、名詞である。名詞に続く単語としては、グループ化単語GRW一覧の要素であるSWが可能であり、この場合、GRWに直前及び直後の単語を合わせてグループ化名詞を構成する。SWではないその他の単語は、形容詞である。
質問がWhatの場合は、最初の単語が動詞である。動詞を識別したら、その他の単語を特殊単語一覧と比較して、前置詞、冠詞、接続詞、及び副詞を識別する。動詞が他動詞の場合、動詞に続く単語は、SWではない。直接目的語(DO)として振る舞う名詞である。名詞に続く単語としては、グループ化単語GRW一覧の要素であるSWが可能であり、この場合、GRWに直前及び直後の単語を合わせてグループ化名詞を構成する。SWではないその他の単語は、形容詞である。
質問がWhoの場合は、その他の単語を特殊単語一覧と比較して、前置詞、冠詞、及び接続詞を識別する。名詞に続く単語としては、グループ化単語GRW一覧の要素であるSWが可能であり、この場合、GRWに直前及び直後の単語を合わせてグループ化名詞を構成する。SWではないその他の単語は、形容詞である。
MASメタモデル及び形態構文的ルール構造は、下位段階E4において適用され、機能アーキテクチャ文書の作成に有用な機能要素を識別し、下位段階G6においてはソフトウェア設計要素を生成し、下位段階H4においては、ソフトウェア設計MASメタモデルと関連付けられたグラフィック表記を規定する。これらの下位段階は、「ケース」のテキストの他動詞が下位段階A1に規定の通り扱われる本発明の好適な実施形態を表す。
段階B.言語の素性及び構造の入力
この段階(図2B)においては、自然言語での「ケース」及びその形態構文的素性の記述に用いられる言語を以下の下位段階によって規定する。
下位段階B1.形容詞の順序の規定
形容詞の順序は、言語の名詞に対する形容詞の配置を表す。
言語ユーザインターフェース121として構成された入出力装置120においては、利用可能な形容詞の順序一覧(順序1:名詞+形容詞、順序2:形容詞+名詞、順序3:被修飾形容詞+被修飾名詞、順序4:形容詞+被修飾名詞、順序5:被修飾形容詞+名詞)から、言語の形容詞の適当な順序が規定される。例えば、英語の場合、形容詞の適当な順序は、形容詞+名詞である。
下位段階B2.特殊単語のアップロード
言語ユーザインターフェース121として構成された入出力装置120においては、下位段階B1において規定した言語の特殊単語をアップロードする。特殊単語は、自動文解析器151として構成されたプロセッサ150が使用して、文解析から除外する単語を決定する。本発明の背景においては、冠詞(ART)、前置詞(PREP)、接続詞(CONJ)、及び副詞(ADV)が言語の特殊単語と考えられる。英語においては、「a」及び「the」が冠詞の例であり、「for」及び「with」が前置詞の例であり、「and」及び「or」が接続詞の例であり、「how」及び「where」が副詞の例である。
下位段階B3.グループ化単語のアップロード
言語ユーザインターフェース121として構成された入出力装置120においては、下位段階B1において規定した言語のグループ化単語をアップロードする。本発明において、グループ化単語は、下位段階B2において規定した特殊単語であり、2つの単語をリンクさせて複合語を作ることができる。これは、単語「of」でグループ化された複合語「list of prices(価格一覧)」にも当てはまる。
下位段階B4.動詞末尾のアップロード
言語ユーザインターフェース121として構成された入出力装置120においては、通常の動詞末尾の最終音節に対応する下位段階B1からの言語の適当な動詞末尾をアップロードする。動詞末尾「〜ing」は、英語の場合の一例である。
段階C.「ケース」の記述の入力
この段階(図2C)においては、以下の下位段階によって、ケースを自然言語で記述する。
下位段階C1.ケースの「記述」用言語の選択
ケースユーザインターフェース122として構成された入出力装置120においては、「ケース」を記述する言語を選択する。言語は、段階Bでアップロードした適格言語一覧から選定する。
下位段階C2.「ケース」のコンテキストを構造化する要素の識別
本発明の一実施形態においては、「ケース」のコンテキストを構造化する要素を識別する。
この段階では、「ケース」の母集団の静的見通し及び時間的な動的見通しに対処する。静的見通しにおいては、時間の経過とともに発生することを考慮に入れず、それを構成する次元又は主要側面(レイヤ及びリソース)へと概念を分割して、グローバルな視点から「ケース」の概念構造を観察する。動的見通しにおいては、時間の経過とともに発生するイベント(時間的アクティビティ)の視点から、その発生順序(プロセス、モーメント、及びステップ)で観察する。
本発明の推奨される一実施形態においては、「ケース」の記述を構造化するため、レイヤ、リソース、プロセス、下位プロセス、及びモーメントを識別する。
(a)「ケース」のレイヤの識別
レイヤは、プロセスに関与する情報の階層であって、その他の階層から独立して扱うことができるとともに、十分に分化した入出力とは別に機能し得ることが了解される。例えば、データレイヤ(プロセスの入力データが構造化されてアクセスされる)及び計算レイヤ(上記データを用いて計算が実行される)という2つのレイヤが識別される。
(b)「ケース」に用いられるリソースの識別
リソースは、プロセス全体を通して変換され、変換プロセスの結果等の他のリソースへのアクセスを可能にする要素である。例えば、在庫商品は、販売プロセスの対象となるリソースである。
(c)「ケース」内のプロセスの識別
プロセスは、リソースを変換する動作又は動作群である。例えば、「在庫商品を売り込む」プロセスがある。
(d)「ケース」の各プロセスの下位プロセスの識別
下位プロセスは、断片によるプロセスの解析を可能とするプロセスの一部である。例えば、「値を付ける」及び「販売する」は、「在庫商品を売り込む」というプロセスに含まれる下位プロセスの可能性がある。
(e)「ケース」のモーメントの識別
本発明において、モーメントは、下位プロセスと関連するイベントの発生を告知する下位プロセスの区切りである。例えば、「クライアントが興味ある場合」は、「値を付ける」という下位プロセスにおいて発生するモーメントである。
下位段階C3.「ケース」のステップの識別
ステップは、任意所与のモーメントで実行されるアクティビティである。例えば、モーメント「当人が試験室に入室する場合」でのアクティビティとしては、識別文書の要求、当該識別文書のデータの記録、家族集団の調査の実行、現職の質問が考えられる。
「ケース」の記述が完了したことを保証するため、自明のため一般的に省略されるものも含めて、すべてのステップが含まれる必要がある。
ステップは、文であるとともにそれぞれの動詞が実行動作を決定するため、動詞が表す動作の種類に従って、動詞に続く名詞を解析することにより分類可能である(下位段階B2で規定した特殊単語(冠詞、接続詞、後置詞、及び前置詞)は含まず)。
ステップ型によって文を分類するためのガイドラインは、下位段階A2で規定するとともに以下に記載する形態構文的ルールの一部として、ステップ型ロジックと称する。
CCステップ:(チェック/確認動作を含むステップ)
これらは、チェック、確認、制限等のチェック又は確認動作を動詞が規定するステップである。この場合、動詞は常に、システムの数学的論理を表す文に結合されている。この種の文の例としては、Check that the items have a positive inventory(商品が正の在庫であることをチェックする)、Confirm that the client has a tax ID number(クライアントが税金ID番号を有することを確認する)、Restrict the intake of expired merchandise(期限切れ商品の摂取を制限する)が挙げられる。
QSステップ(質問/検索動作を含むステップ)
これらは、検索、探索、選択、質問、指示、表示、図示等の質問又は検索動作を動詞が規定するステップである。この場合は、常に名詞又は直接目的語が動詞に続く。この種の文の例としては、Query the items(商品を質問する)、Show the balances(バランスを図示する)、Display the data(データを表示する)、Show the results(結果を図示する)、Search the items(商品を検索する)、Locate the spare parts(予備部品を探索する)、Select the clients(クライアントを選択する)が挙げられる。
FXステップ(明示的な計算動作を含むステップ)
これらは、計算、グループ化、平均化、加算等の計算動作を動詞が具体的に規定するステップである。この場合、動詞は常に、システムの数学的論理を表す文に結合されている。この種の文の例としては、Calculate total sales(総売上高を計算する)、Group the items by color(商品を色でグループ化する)、Average last month’s cost(先月のコストを平均化する)が挙げられる。
Lステップ(リンク動作を含むステップ)
これらは、関係付け、リンク、関連付け、構成等のリンク動作を動詞が規定するステップである。この場合は、動詞に少なくとも2つの名詞が続く。この種の文の例としては、Link the items with the prices(商品に価格をリンクさせる)、Link the equipment with the spare parts(機器に予備部品をリンクさせる)、Associate the taxes with the shares(税金に負担を関連付ける)、Compose the product with the inputs(製品に入力を構成する)が挙げられる。
Fステップ(上記型のいずれにも対応しないステップ)
これらは、動詞が「ケース」固有の動作を表すため、上記型のいずれにも動詞が対応しないステップである。動詞は、以下のモデルのいずれかを表すことができる。モデル1:動詞に1つ又は複数の名詞が続く。例えば、Buy an item(商品を購入する)、Sell fruits(果物を販売する)、Fix the tools(工具を固定する)、Solve problems(問題を解決する)。モデル2:動詞には名詞が続かない。例えば、Enter(入る)、Exit(出る)。
これらのステップは一般的に、1)Fステップ、2)CCステップ、3)QSステップ、4)FXステップ、5)Lステップという順序で記述される。
段階D.「ケース」の単文の識別及び格納
この段階においては、「ケース」の記述の各段落を取得するとともに動詞が1つだけの文を抽出することにより、「ケース」の単文を一覧化して、入出力装置120のケースユーザインターフェース122にアップロードする。例えば、記述の段落が「その商品は在庫商品だ。当人が担当する商品を測定単位で測定して発注するとともに、注文型にリンクさせる」の場合、対応する単文は、「当人が商品を測定単位で測定する」、「当人が発注する」、「組織が当人に発注の責任を負わせる」、「その商品は在庫商品だ」、「当人が発注を発注型にリンクさせる」である。
自由記述テキストの場合は、同じ段落内に、一般的には接続詞で分離された主語が暗示的な文が存在する。この場合は、主語が暗示的な文を主語が明示的な単文に変換するため、主語をはっきりさせて完全な文を形成する。例えば、接続詞「and」で分離された「当人が商品を測定単位で測定して発注する」という文には、暗示的な主語が存在するため、これを「当人が商品を測定単位で測定する」、「当人が発注する」という2つの単文にする。
このステップにおいて、記述は、「ケース」を記述した単文の集合であることに留意する必要がある。質問Who、What、Where、How、及びWhenに対する答えから導出される1つの単文は、プロセスの各ステップに対応する。
単文が識別されるとともに主語が暗示的な単文が完全になったら、入出力装置120のケースユーザインターフェース122にアップロードする。
この段階(図2D)においては、以下の下位段階によって、「ケース」の単文を識別する。
下位段階D1.「ケース」のステップごとの質問への回答
この段階においては、「ケース」の各単文を用いて、質問When、Who、Where、What、How、及びWhenに答える。
単文・質問動的データベースメモリ170に格納された各単文について、プロセッサ150は、各文を入出力装置120のケースユーザインターフェース122に表示して、質問Who、What、Where、How、及びWhenを尋ねる。示された各文について、ユーザは、答えを入力する一方、各回答が文の意味の構成部となるようにする。場合によっては、質問のうちの1つ又は複数に答えられなくてもよい。
上記質問に対する答えにより、本発明の好適な一実施形態においては現在時制で書く必要がある単文のあらゆる部分が明確になる。
質問型によって文を分類するためのガイドラインは、下位段階A2で規定した形態構文的ルールの一部として、質問ロジックと称する。
下位段階D2.各ステップの答えの連結
質問に対する答えがアップロードされたら、各回答をWhen、Who、What、How、Whereの順序で連結する。このように、答えのテキストを1つの単文として接続し、動的データベースメモリ170の単文・質問171の論理構造に格納する。
上記質問に対する答えにより、現在時制で書く必要がある単文のあらゆる部分が明確になる。
例えば、不完全な文「彼の識別文書を要求する」の場合、上記方法を適用するなら、その結果は、「当人が入室した際、システムオペレータは、識別文書の番号を記録する」という単文となる。
段階E.機能要素の識別及び格納
本発明の背景においては、表現言語の文法及び構文構造に従って、プロセッサ150により自動的に抽出及び分類された文の単語それぞれに機能要素が対応することが了解される必要がある。
この段階(図2E)においては、文の機能要素を識別する下位段階について説明する。
下位段階E1.単文の単語への分解及び識別
プロセッサ150により生成された機能要素を以下の型に分割する。
名詞機能要素
What中の識別→名詞−直接目的語(DO)
Who中の識別→名詞−人物(PER)
When中の識別→名詞(NOUN)
How中の識別→名詞(NOUN)
形容詞機能要素
いずれかの質問中の識別→形容詞(ADJ)
動詞機能要素
What中の識別→動詞(VERB)
How中の識別→動詞(VERB)
副詞機能要素
How中の識別→副詞(ADV)
単語を構造化するためのガイドラインは、下位段階A2で規定するとともに以下に記載する形態構文的ルールの一部として、単語ロジックと称する。
この下位段階において、自動文解析器151として構成されたプロセッサ150は、「ケース」の各単文について以下の動作を実行する。
(a)単語の一覧化
あらゆる文について、その単語をそれぞれ一覧化する。
(b)除外する単語の識別
機能要素選択から、下位段階B2で除外と規定した単語を除外する。ただし、そのような単語が価格一覧、クッキー一箱等のグループ化名詞の一部である場合は除く。
(c)動詞の識別
下位段階B4で規定した動詞末尾一覧に対して各単語の末尾を比較することにより動詞を識別するか、又は、単文中のWhat質問に対する答えの最初の単語として動詞を識別する。
(d)名詞の識別
動詞ではなく、除外されていない単語を名詞として識別する。
(e)名詞の&attributeとしてのタグ付け
いくつかの名詞は、&attributeのように振る舞う。&attributeは、形容詞ではない別の名詞の素性の名称と理解される。本発明の一実施形態においては、識別された名詞一覧に関して、&attributeを手動で選択する。別の実施形態においては、テキストの括弧内に名詞が一覧化されている場合、プロセッサが自動的に認識する。例:「クライアントの文書番号をアップロードする」という文においては、「文書番号」が「クライアント」の&attributeである。
(f)グループ化名詞の識別
リンクとして作用する特殊単語が間に存在する2つの連続した名詞が存在するグループ化名詞を名詞として識別する。
(g)単語に基づく機能要素の識別
分類された単語一覧から、名詞及び動詞を機能要素として識別し、それに応じてVERB、DO、NOUN、PERSONとして分類する。
(h)各機能要素の既存性の個別確認
任意の型の新たな機能要素が識別された場合は、過去に存在したかをチェックする。存在していなければ作成する。存在していれば継続する。
(i)回答した質問との機能要素の関連付け
単語が属する質問に基づいて、型により機能要素を分類する。
i.Whenに属する場合、動詞とグループ化された単語は、副詞機能要素(ADV)である。
ii.Whatに属する場合、動詞に続く名詞は、直接目的語(DO)型の機能要素である。
iii.Whoに属する場合、最初の名詞は、人物(PERS)機能要素である。
図2E1に示すように、自動文解析器151として構成されたプロセッサ150は、以下の動作を実行することにより、各単文の単語から関連する機能要素を得る。
「ケース」の言語の場合は、静的データベースメモリ160の言語・単語・形態構文的ルール162の論理構造から、動詞末尾(VE)、グループ化単語(GRW)一覧が存在する特殊単語(SW)一覧、除外単語(EXW)一覧を取得する。
単文の論理構造及び動的データベースメモリ170の質問171から、対応する質問において構造化された「ケース」の単文を取得する。
また、「ケース」の各単文に連番を割り当てる。
「ケース」の各単文及び各質問について、単語を1つずつ取得し、以下のように単語の型に従って特性化する。
質問がHowの場合は、質問中の各単語の末尾を動詞末尾VEと比較して動詞を識別する。動詞を識別したら、その他の単語を特殊単語SW一覧と比較して、前置詞、冠詞、接続詞、及び副詞を識別する。動詞に続くとともにSWではない単語は、名詞である。名詞に続く単語としては、グループ化単語GRW一覧の要素であるSWが可能であり、この場合、GRWに直前及び直後の単語を合わせてグループ化名詞を構成する。SWではないその他の単語は、形容詞である。
質問がWhatの場合は、最初の単語が動詞である。動詞を識別したら、その他の単語を特殊単語一覧と比較して、前置詞、冠詞、接続詞、及び副詞を識別する。動詞が他動詞の場合、動詞に続く単語は、SWではない。直接目的語(DO)として振る舞う名詞である。名詞に続く単語としては、グループ化単語GRW一覧の要素であるSWが可能であり、この場合、GRWに直前及び直後の単語を合わせてグループ化名詞を構成する。SWではないその他の単語は、形容詞である。
質問がWhoの場合は、その他の単語を特殊単語一覧と比較して、前置詞、冠詞、及び接続詞を識別する。名詞に続く単語としては、グループ化単語GRW一覧の要素であるSWが可能であり、この場合、GRWに直前及び直後の単語を合わせてグループ化名詞を構成する。SWではないその他の単語は、形容詞である。
下位段階E2.記述に含まれない機能要素の追加
本発明の一実施形態においては、自動的に識別された機能要素一覧に存在しない機能要素をユーザが追加する。以下、同じ例で続ける。
識別文書の番号は、文から自動的に検出された&attributeである。
当人の年齢は、ユーザが追加した&attributeである。
本発明の一実施形態においては、追加した各機能要素に対して、対応するステップ及び単文が自動的に作成される。
下位段階E3.機能要素の強化
本発明の一実施形態において、ユーザは、FX及びCC型ステップと関連付けられた式表現並びに当該ステップと関連付けられたメッセージを追加する。
(a)式表現の追加
本発明の一実施形態において、ユーザは、すべてのCC及びFX型ステップに関して、「ケース」の数学的挙動を記述した式表現を追加する。例えば、
{fx expression}="(param1, param2,param3) expression= param1*param2/param3"
(b)メッセージの追加
本発明の一実施形態において、ユーザは、エラー、妥当性、及び警告メッセージを追加する。例えば、
{warning message}="The value cannotbe greater than zero"
{ok message}="The datum was savedcorrectly"
{error message}="Data readingerror"
下位段階E4.形態構文的ルールの機能要素への適用
本発明の一実施形態において、ユーザは、下位段階A2で規定したロジックにプロセッサ150が適合するように、形態構文的ルールの使用を可能にし得る。
本実施形態においては、図2A1のMASメタモデルに従って単文の各単語を単語161−1として分類し、VERB、NOUN、ART、CONJ、ADJといった単語の型のうちの1つを割り当てる。また、Performerという単語161−2及びPerformableという単語161−3を作成し、Performance 161−4クラスを他動詞に割り当てる。型で分類した単語161−1がすべて機能要素である。図2Dに示すように、各機能要素を作成したら、元の文、属する質問、対応する単語の型、及び下位段階A2において指定の質問を構成する一連の単語型を表す形態構文的ルールの識別子にリンクさせる。
機能要素の選択時は、対応する形態構文的ルールが特殊単語としてマークしている場合を除いて、下位段階B2で規定した特殊単語に適用する。
本実施形態において、プロセッサ150は、他動詞ごとに2つの新たな機能要素を作成する。動詞と動作主接尾辞「ER」とから成る名称の機能要素(Performer 161−2)及び動詞と接尾辞「BLE」とから成る名称の機能要素(Performable 161−3)である。他動詞は、Performance 161−4という単語である。他動詞を実行する名詞の場合、プロセッサ150は、動詞のERと関連付けられた動詞「is」を作成する。目的名詞(文の直接目的語)の場合、プロセッサは、動詞のBLEと関連付けられた動詞「is」を作成する。
段階F.機能アーキテクチャ文書の生成
この段階(図2F)において、文書生成器153として構成されたプロセッサ150は、静的データベースメモリ160のフォーマット・グラフィック表記・STD文163の論理構造に格納されたフォーマット及び表記を用いて機能アーキテクチャ文書を生成し、入出力装置120の文書表示ユーザインターフェース124に表示する。
この段階(図2F)においては、以下の下位段階によって、機能アーキテクチャ文書を生成する。
下位段階F1.機能アーキテクチャの形態構文的ルールの確立
段階Aで定めたように、前置詞「to」又は「to the」が続く各他動詞について、プロセッサは、動詞を実行する名詞に関して、動詞と動作主接尾辞「er」(以下、動詞のERと称する)とから成る名称の構文要素を作成し、動詞の動作を受ける名詞に関して、動詞と接尾辞「ble」(以下、動詞のBLEと称する)とから成る名称の構文要素を作成する。プロセッサは、元の名詞と動詞のERとの間に「動詞のPerformance」と称する新たな名詞を作成する。元の名詞について、プロセッサは、動詞のBLEと関連付けられた動詞「is」を作成する。目的名詞について、プロセッサは、動詞のERと関連付けられた動詞「is」を作成する。
下位段階F2.機能アーキテクチャ文書に用いられるグラフィック表記の規定
この段階においては、入出力装置120のフォーマット・グラフィック表記・STD文ユーザインターフェース123を用いて、機能アーキテクチャ図に用いられるグラフィック表記を規定するが、これは、対応する単語の型に従って機能要素ごとに図で用いられるグラフィック要素を示す。そして、規定したグラフィック表記をデータベースメモリ130に格納する。このように、ユーザは、フォーマット・グラフィック表記・STD文ユーザインターフェース123が表示する視覚的グリッドにグラフィック表記を入力する。

下位段階F3.機能アーキテクチャ文書の生成
文書生成器153として構成されたプロセッサ150は、動的データベースメモリ170の機能要素論理構成172に格納された機能要素を取得し、下位段階F2で規定した表記を用いて、静的データベースメモリ160のMASメタモデル161の論理構造にあるMASメタモデルを適用することにより、機能アーキテクチャ文書を構築する。機能アーキテクチャ図を生成するため、プロセッサは、機能要素一覧をスキャンし、図2F1に示すような図が生成されるまで、以下のルールを適用する。
ルール1:各NOUN型機能要素について、FCラベルを備えたFNOUNグラフィック要素を描画する。
ルール2:各VERB型機能要素については、i)VERBが「to be又はその活用形」の場合はVERBの前のNOUNからVERB直後のNOUNまでFTOBEグラフィック要素を描画し、ii)VERBがその他任意の他動詞である場合はVERBの前のNOUNからVERB直後のNOUNまでFERBLEグラフィック要素を描画し、iii)VERBが他動詞でない場合はVERBの前のNOUNから同じNOUNまでFVERBグラフィック要素を描画することを考慮して、VERB前後のNOUN間に線を描画する。
ルール3:各PREP型機能要素ではあるものの、前置詞「of」及び「of the」のみの場合は、前置詞前後のNOUN間にFPREPグラフィック要素を描画する。
ルール4:各他動詞の場合は、下位段階A1で規定したMASメタモデルに基づいて作成された単語に対応するグラフィック要素として、Performerという単語の場合はFERBLEグラフィック要素を、Performableという単語の場合はFERBLEを、Performanceという単語の場合はFPERFを描画する。
プロセッサ150は、機能アーキテクチャ文書を入出力装置120に表示する。
段階G.設計要素の識別及び格納
本発明において、「ケース」の設計文書は、概念設計図、使用ケース図、クラス図、エンティティ関係図、スクリーン設計図、及びレポート設計図といった図で構成される。
「ケース」の各設計文書は、グラフィックを表示する。具体的に、本発明においては、クラス図を使用する。オブジェクト指向(OO)パラダイムに係るクラス図の一部である各グラフィック要素は、設計要素(DC)と称する。その例は、クラス関係、属性、方法である。
本発明の目的として、クラス、属性、関係、及び方法は、オブジェクト指向(OO)パラダイムにおいて規定された設計要素であることが了解されるものとする。
この段階(図2G)において、自動ソフトウェア設計器152として構成されたプロセッサ150は、以下の下位段階によって、ソフトウェアを自動的に設計する。
下位段階G1.機能要素のグループ化、それぞれのクラス及び継承関係の作成
この下位段階において、自動ソフトウェア設計器152として構成されたプロセッサ150は、属性の類似性に基づいて、以下の動作を実行することにより、クラス及び継承関係を作成する。
(a)機能要素の選択
「Is attribute」としてタグ付けされた機能要素及びVERB単語型の機能要素を除いて、段階Dで作成されて動的データベースメモリ170の機能要素172の論理構造に格納された機能要素一覧を取得する。
そして、「person」及び「persons」という単語の場合(「Person」は単一の機能要素と考えられる)のように、名称が酷似する(例えば、レーベンシュタイン距離アルゴリズムによって90%類似する)機能要素を消去する。
(b)類似する機能要素のグループ化
{list of &attributes}を用いて、同じ{list of &attributes}を有する機能要素を同じグループに配置することにより、前ステップに含まれる機能要素をグループ化する。また、2つ以上の機能要素を有するグループを取得して、単語名(例えば、単語01、単語02)を割り当てる。
(c)グループによるクラスの作成
{list of &attributes}の各要素を属性として指定することにより、2つ以上の機能要素を有する各グループのクラスを作成し、当該グループに対応する単語の名称をクラスに割り当てる。
(d)グループの継承関係の作成
要素が2つ以上のグループに属する機能要素について、当該機能要素が属する各クラスと各グループのクラスとの間の継承関係を属する{list of &attributes}グループに応じて作成する。すなわち、前ステップから同じグループのクラスで一般化された同じ{list of &attributes}を有するクラス間に継承関係が存在する。
下位段階G2.FX及びCC型ステップに基づく式クラスの作成
この下位段階において、自動ソフトウェア設計器152として構成されたプロセッサ150は、「ケース」の単文に対して、質問型により分割された以下の動作を実行する。
(a)FX及びCCステップに属するVERB及びDO機能要素の一覧化
すべてのVERB及びDO型機能要素を一覧化し、下位段階C3に規定の通り、それぞれの対応するステップ型を識別する。
(b)FX及びCC型ステップのクラスの作成
FX及びCC型ステップに属する機能要素に基づいて、VERBにより規定された挙動のクラスを作成する。また、各VERBについて、クラスを作成するとともに、{fx expression}で示される表現の演算を担う方法(formulaと称する)を追加する。
そして、前ステップで作成した各クラスについて、以下の動作を実行する。
a.DOが「Is Attribute」の場合は、DOと称する属性をクラスに作成する。
b.DOが「Is[not]Attribute」の場合は、前ステップのクラスと属性としてDOを含むクラス(TargetClassと称する)との間に関係を作成する。この関係は、TargetClass_Movementと命名する。
下位段階G3.QS型ステップに基づくドメインクラスの作成
この下位段階において、自動ソフトウェア設計器152として構成されたプロセッサ150は、以下の動作を実行する。
(a)QSステップに属するVERB及びDO機能要素の一覧化
すべてのVERB及びDO型機能要素を一覧化し、下位段階C3に規定の通り、それぞれの対応するステップ型を識別する。
(b)QS型ステップのクラスの作成
QS型ステップに属する機能要素に基づいて、VERBにより規定された挙動のクラスを作成する。また、各VERBについて、VERB+DOと称するクラスを作成するとともに、{fx expression}により規定されたデータの検索を担う方法(fxdomainと称する)を追加する。{list of &attributes}に指定の&attributesを伴う「Domain」+VERB+DOと称するクラスを作成する。&attributes一覧が先に作成されたクラスのうちの1つの&attributesと一致する場合は、両者間に対応する方向の継承関係を作成する。
fxdomain方法は、「Domain」+VERB+DOを呼び出す。
下位段階G4.L型ステップに基づくドメインクラスの作成
この下位段階において、自動ソフトウェア設計器152として構成されたプロセッサ150は、以下の動作を実行する。
(a)L型ステップに属するVERB及びDO機能要素の一覧化
すべてのVERB及びDO型機能要素を一覧化し、下位段階C3に規定の通り、それぞれの対応するステップ型を識別する。
(b)Lステップ型のクラスの作成
L型機能要素に基づいて、DOとNOUNとの間にDO+「for」+NOUNと称する関係を作成する。
下位段階G5.F型ステップに基づく演算クラスの作成
この下位段階において、自動ソフトウェア設計器152として構成されたプロセッサ150は、以下の動作を実行する。
(a)Fステップに属するVERB及びDO機能要素の一覧化
すべてのVERB及びDO型機能要素を一覧化し、下位段階C3に規定の通り、それぞれの対応するステップ型を識別する。
(b)F型ステップのクラスの作成
F型機能要素に基づいて、DOが「Is Attribute」であるか否かに応じた以下のクラスを作成する。
a.DOが「Is Attribute」の場合は、クラスを作成しない。
b.DOが「Is[not]Attribute」の場合は、
i.VERB+DOと称するクラスを作成するが、これはClass_Cabと称することになる。
ii.F型ステップのDOクラスは、Class_Recと称することになる。
iii.Class_cabとClass_recとの間に1〜nの関係を作成する。この関係は、「Movement」+DOと命名する。
下位段階G6.形態構文的ルールの設計要素への適用
本発明の一実施形態において、ユーザは、下位段階A2で規定したロジックにプロセッサ150が適合するように、形態構文的ルールの使用を可能にし得る。
下位段階A2で規定するとともに静的データベースメモリ160の言語・単語・形態構文的ルール162の論理構造に格納された形態構文的ルールに基づいて、プロセッサ150は、動的データベースメモリ172の機能要素論理構造172に格納された各機能要素(FC)から導出されるソフトウェア設計要素(DC)を決定する。
質問を一覧化するとともに、答えを構成する単語の型に基づいて、各質問のルール識別子を作成する。その後、静的データベースメモリ160の言語・単語・形態構文的ルール162の論理構造において上記ルール識別子を検索し、識別子の整合によって基本ルールを見つける。同じ基本ルールの識別子について2つ以上の形態構文的ルールが存在する場合もある。この場合は、質問、Fステップ型、及びテキスト中に見られるとともに形態構文的ルールで指定された(1つ又は複数の)特定の単語に一致するルールを選択する。識別子がどの基本ルールとも一致しない場合、プロセッサ150は、その質問を無視する。
本実施形態においては、先の下位段階で識別するとともに下位段階A1で規定した各他動詞VERBについて、動詞と関連付けられた単語161−4、Performer 161−2、及びPerformable161−3という単語をプロセッサ150が作成する。
L型ステップの場合、ユーザは、基本ルールVERB−NOUN−PREP−NOUNによって決まる形態構文的ルールを作成可能であり、例えば動詞「to link」が特定の単語として処理される。この場合、ステップ型はLとなり、プロセッサ150は、DOとNOUNとの間にDO+「for」+NOUNと称する関係を作成することになる。
FX及びCC型ステップの場合、プロセッサ150は、動詞と関連付けられた単語161−4、Performer 161−2、及びPerformable161−3という単語を作成する。プロセッサ150は、fxdomainと称する方法をPerformer 161−2という単語に追加する。
図2A3は、MASメタモデル161に基づいてソフトウェア設計の形態構文的ルールを記述した用途例のソフトウェア設計クラスモデルを示している。これらの形態構文的ルールは、「ケース」の文のモデリングをもたらす。自然言語によりソフトウェアを設計するため、単文を記述した質問それぞれ(When、Who、What、How、Where)について、ソフトウェア設計用の形態構文的ルールが規定される。これらのルールは、静的データベースメモリ162の単語・ルール・形態構文的ルールに格納されているが、下位段階2Aで示したように、各単文に関して演算されたルール識別子と比較され、適合に基づいて、自動ソフトウェア設計器152として構成されたプロセッサ150が使用してソフトウェア設計要素を生成するロジックが規定される。
段階H.フォーマット・グラフィック表記・STD文の規定
この段階(図2H)においては、以下のステップによって、ビジネス、解析、及び設計文書用のフォーマット並びにそれらの生成に必要なパラメータを規定する。
下位段階H1.文書の出力フォーマットの規定
この下位段階においては、入出力装置120のフォーマット・グラフィック表記・STD文ユーザインターフェース123を用いることにより、ビジネス文書、解析文書、及び設計文書の表示又は印刷フォーマットを規定する。
これらの規定には、各文書のコンテンツを表示する際のマージン、フォント、及びシーケンスソート順序の規定を含む。
ビジネス文書の場合は、レイヤ、リソース、プロセス、下位プロセス、モーメント、及びステップの提示順序及びシーケンスを規定する。
解析文書の場合は、グローバル要件及び詳細要件の提示順序及びシーケンスを規定する。
本発明の一実施形態においては、入出力装置120のフォーマット・グラフィック表記・STD文ユーザインターフェース123を用いることにより、下位段階F1、F2、F3、及びF4でアップロードされたフォーマット、グラフィック表記、及び標準文をユーザが修正可能である。
下位段階H2.要件の標準文の規定
この下位段階においては、入出力装置120のフォーマット・グラフィック表記・STD文ユーザインターフェース123を用いることにより、要件を記述するための標準文を入力し、要件の生成に用いられる1つ又は複数の言語で記述し、入出力装置160の言語・単語・形態構文的ルール162の論理構造に格納する。要件の生成に必要な標準文は、以下のように記述される。これらの文は、文書要件の生成が望まれる言語それぞれに変換されて格納される必要がある。
(a)グローバル要件の標準文
グローバル要件を生成するため、以下の標準文を規定する。これらは英語に当てはまる。
OracionSTD_abm_Sust:"Create, Read,Update and Delete"
OracionSTD_abm_Pers:"Create, Read,Update and Delete Entities with role"
OracionSTD_verbo_F:"Create transactionrecord"
OracionSTD_verbo_R:"Create rulethat"
OracionSTD_verbo_conector_R:"with"
OracionSTD_verbo:"Create rulethat"
(b)NOUN及びDO要素の詳細要件の標準文
NOUN及びDO機能要素の詳細要件を生成するため、以下の標準文を規定する。これらは英語に当てはまる。
OracionSTD_Crear:"Create a newelement"
OracionSTD_Agregar_Atributos:OracionSTD_Agregar_Atributos
OracionSTD_Agregar_Controles:"Performthe following controls when an element is created"
OracionSTD_Baja:"Exclude a"
OracionSTD_Edicion:"Update a"
OracionSTD_Consulta:"Search thetransaction records of"
OracionSTD_complemento_control:"performingthe following controls"
OracionSTD_complemento_busqueda:"performingthe following searches"
OracionSTD_crear_atributo:"Create theattribute"
OracionSTD_validacion_atributo:"Performthe following controls when the datum is completed"
(c)PERSON要素の詳細要件の標準文
PERSON機能要素の詳細要件を生成するため、以下の標準文を規定する。これらは英語に当てはまる。
OracionSTD_permitirque:"Allow"
OracionSTD_acciones_Persona:"toperform the following actions"
OracionSTD_afectacion_Persona:"to besubject to the following actions"
OracionSTD_responsabilidad_Persona:"tobe performed under the responsibility of"
(d)VERB要素の詳細要件の標準文
CC型ステップ又はFF型ステップと関連付けられたVERB機能要素の詳細要件を生成するため、以下の標準文を規定する。これらは英語に当てはまる。
OracionSTD_crear_Fx:"Create a formulafor"
OracionSTD_argumentos:"using thefollowing data as arguments"
OracionSTD_expresion:"in the followingexpression"
OracionSTD_msj_error_Fx:"If theformula returns an error, display the following message"
OracionSTD_msj_ok_Fx :"If the formulareturns a valid result, display the following message"
OracionSTD_msj_advertencia_Fx:"If theformula returns a warning, display the following message"
QS型ステップと関連付けられたVERB機能要素の詳細要件を生成するため、以下の標準文を規定する。これらは英語に当てはまる。
OracionSTD_crear_busqueda:"Create arule for"
OracionSTD_exponer_atributos:"displayingthe following data"
OracionSTD_definir_busqueda:"Allowsearching for the data of"
OracionSTD_conector_orden:"by"
OracionSTD_definir_filtro:"Allowfiltering the data of"
OracionSTD_definir_orden:"Allowsorting the data of"
OracionSTD_definir_agrupamiento:"Allowgrouping for the data of"
OracionSTD_definir_total:"Display thefollowing summarized data"
L型ステップと関連付けられたVERB機能要素の詳細要件を生成するため、以下の標準文を規定する。これらは英語に当てはまる。
OracionSTD_crear_regla:"Create a rulethat"
OracionSTD_condicion:"as long as thefollowing condition is met"
OracionSTD_vincular:"Link"
OracionSTD_conector_vincular:"with"
OracionSTD_complemento_control:"performingthe following controls"
OracionSTD_des vincular:"Unlink"
OracionSTD_consultar:"Search"
OracionSTD_complemento_relacionar:"ina relationship with"
OracionSTD_complemento_criteriobusqueda:"usingthe following search criteria"
F型ステップと関連付けられたVERB機能要素の詳細要件を生成するため、以下の標準文を規定する。これらは英語に当てはまる。
OracionSTD_permitir:"Allow"
OracionSTD_habilitar_persona:"Enable"
OracionSTD_complemento_accionpersona:"todecide on the action"
OracionSTD_movimientos:"Allow themovements of"
OracionSTD_complemento_acargode:"toaffect"
OracionSTD_control_nuevo:"Perform thefollowing controls when creating a new transaction record of"
OracionSTD_control_eliminar:"Performthe following controls when deleting the transaction record of"
OracionSTD_control_modificar:"Performthe following controls when updating the transaction record of"
OracionSTD_precedencia:"based on thefollowing existing records:"
OracionSTD_nuevo_movimiento:"Record nmovements of"
OracionSTD_control_nuevo_movimiento:"Performthe following controls when creating a new movement of"
OracionSTD_control_eliminar_movimiento:"Performthe following controls when deleting the movement of"
OracionSTD_control_modificar_movimiento:"Performthe following controls when updating the movement of"
OracionSTD_buscar_elemento:"Search forthe elements of"
OracionSTD_complemento_buscarelemento:"tocreate a movement, performing the following searches"
下位段階H3.ソフトウェア設計に用いられるグラフィック表記の規定
この段階においては、入出力装置120のフォーマット・グラフィック表記・STD文ユーザインターフェース123を用いることにより、ソフトウェア設計図で用いられるグラフィック表記を規定する。
設計図は、様々なグラフィック表記で表示可能であり、その1つがUML表記(図6「例示的なクラス図」参照)であるが、設計文書を表すようにグラフィック要素を規定することができる。
下位段階H4.MASメタモデルと関連付けられたグラフィック表記の規定
下位段階A1で規定したMASメタモデルの各要素について、ソフトウェア設計図に用いられるグラフィック要素を指定する。このように、ユーザは、フォーマット・グラフィック表記・STD文ユーザインターフェース123が表示する視覚的グリッドにグラフィック表記を入力する。
設計図は、様々なグラフィック表記で表示可能であり、その1つがUML表記であるが、設計文書を表すようにグラフィック要素を規定することができる。

段階I.ビジネス、解析、及び設計文書の自動生成
この段階(図2I)において、文書生成器153として構成されたプロセッサ150は、以下の下位段階により、静的データベースメモリ160のフォーマット・グラフィック表記・STD文163に格納されたフォーマット及び表記を用いてビジネス、解析、及び設計文書を生成し、入出力装置120の文書表示ユーザインターフェース124に表示する。
下位段階I1.ビジネス文書の生成
この段階において、文書生成器153として構成されたプロセッサ150は、テキストをビジネス文書に構成する。本発明において、ビジネス文書は、以下の動作を実行することにより、動的データベースメモリ170の単文・質問171の論理構造に格納された単文を示す解析文書である。
a)次元、時間的アクティビティ、及び単文の順序付け
図3に示すようにテキストを階層的に順序付け、以下のように、レイヤが階層の最上位、ステップが階層の最下位となるようにする。
レイヤ310は、リソース320を含む。
リソース320は、プロセス330を含む。
プロセス330は、下位プロセス340を含む。
下位プロセス340は、モーメント350を含む。
モーメント350は、上記説明の通り最大5種類のステップ360を含む。
ステップ360は、対応する質問が完了した単文370を含む。
b)順序付けした要素の連続的な接続
好適な一実施形態(図3)においては、好適な順序(When、Who、What、How、最後にWhere)の質問それぞれに対して答えを接続することにより単文を得るが、これは、順序が変えられないことを意味するものではない。
この方法によりすべてのプロセスを記述したら、自然言語で表された「ケース」の完全且つ詳細な構成が実現される。
下位段階I2.解析文書の生成
この段階において、文書生成器153として構成されたプロセッサ150は、機能要件を構造化するとともに、解析文書を自動的に生成する。本発明において、解析文書は、以下の動作を実行することにより、動的データベースメモリ170の単文・質問172の論理構造に格納された機能要素から得られた要件を示す。
a)グローバル機能要件の組み立て
「ケース」のグローバル機能要件は、ソフトウェアアプリケーションの構築に要する機能要件の観点から、解釈可能且つ実行動作を決定可能となるように実行する必要がある順序でプロセスを記述する動作である。
プロセッサ150は、動的データベースメモリ170の機能要素論理構造172に格納された機能要素を取得し、NOUN、PERSON、DO、及びVERBのみを選択する。上記機能要素それぞれについて、名詞要素(NOUN、DO、PER)のグローバル要件を規定するとともに動詞要素のグローバル要件を規定することによって、「ケース」の範囲の一部であるグローバル要件を生成する。
NOUN要素のグローバル要件
各名詞機能要素(NOUN、PERSON、及びDO)について、それが属性でない限りは、下位段階F2で規定した標準文を用いて、表1に示す文のようにタグ付けされて順次番号付けされた文を作成することにより、グローバル要件を組み立てる。

VERB要素のグローバル要件
各VERB機能要素について、タグ付けされて順次番号付けされた文を作成することにより、グローバル要件を組み立てる。
この場合は、VERBに基づいてステップ型ごとに文が生成され、表3に示すように、What質問において結合されたDO及びNOUNを使用することにより構成する。
異なるステップから単一の機能要素を介して単一のグローバル要件が記述される。この場合、グローバル要件は、繰り返しを避けるために一度だけ記述され、必要な回数だけ対応するステップにリンクされる。
b)詳細な機能要件の組み立て
この段階においては、各グローバル要件に対して、文中に明示された明示的な詳細要件のほか、必要に応じて把握されるものの明確には記述されていない暗示的な詳細要件という「ケース」の詳細要件を記述する。
本発明の背景において、引用符中の文は、静的データベースメモリ160の言語・単語・形態構文的ルール162の論理構造から取得された好ましい文である。ただし、これらの文は、下位段階F2に示す実施形態において、同等の意味を有するとともにケースに選定した言語に適する文で置き換え可能である。
各種の機能要素について、下位段階F2で規定した標準文を用いることにより、そのグローバル要件の規定に基づいて「ケース」の詳細要件を規定する。
本発明をより深く理解するため、詳細要件の生成には、以下の基準に従って単語を置換することに留意するものとする。
NOUNは、下位段階D2で規定したこの種の機能要素を表す。
PERSONは、下位段階D2で規定したこの種の機能要素を表す。
DOは、下位段階D2で規定したこの種の機能要素を表す。
VERBは、下位段階D2で規定したこの種の機能要素を表す。
{list of &attributes}:NOUNを記述する&attributes一覧であって、下位段階D2で&attributesとマークしたNOUN及び下位段階D3で追加したNOUNで構成される。
{list of *attributes}:検索又は質問の結果の検索、フィルタリング、ソート、グループ化、又は追加に用いられる下位段階D2で規定した&attributes一覧の一部である。
{list of DO &attributes}:下位段階D2で規定した&attributes一覧からの&attributesの集合であって、下位段階G3で作成した詳細要件を介してDO要素と関連付けられた要素で構成される。
{list of NOUN &attributes}:下位段階D2で規定した&attributes一覧からの&attributesの集合であって、下位段階G3で作成した詳細要件を介してNOUN要素と関連付けられた要素で構成される。
{list of PERSON &attributes}:下位段階D2で規定した&attributes一覧からの&attributesの集合であって、下位段階G3で作成した詳細要件を介してPERSON要素と関連付けられた要素で構成される。
{list of CC−type global requirements}:グローバル要件の集合であって、下位段階E2で識別したCC型ステップに属するNOUN要素又はDO要素に基づいて規定されたグローバル要件で構成される。この一覧は、0〜n個のグローバル要件を含む。一覧に含むグローバル要件が0個の場合、CC型グローバル要件を表す詳細要件は生成されない。
{list of QS−type global requirements}:下位段階E3で識別したQS型ステップに基づいて生成されたグローバル要件一覧である。この一覧は、0〜n個のグローバル要件を含む。一覧に含むグローバル要件が0個の場合、QS型グローバル要件を表す詳細要件は生成されない。
{list of F−type global requirements}:下位段階E5で識別したF型ステップに基づいて生成されたグローバル要件一覧である。この一覧は、0〜n個のグローバル要件を含む。一覧に含むグローバル要件が0個の場合、F型グローバル要件を表す詳細要件は生成されない。
{fx expression}:一覧データを引数として取得するとともに下位段階D3で記載した式の表現である。
{error message}:下位段階D3で規定した式の実行に際してエラーが存在する場合にシステムで示されるメッセージのテキストである。
{ok message}:下位段階D3で規定したチェック又は確認の結果が正しい場合にシステムで示されるメッセージのテキストである。
{warning message}:下位段階D3で規定したチェック又は確認の結果が正しくない場合にシステムで示されるメッセージのテキストである。
NOUN要素の詳細要件の規定
動的データベースメモリ170の機能要素172の論理構造に格納されたNOUN型機能要素及びそれぞれのグローバル要件に基づいて、以下の詳細要件を生成する。

PERSON要素の詳細要件の規定
動的データベースメモリ170の機能要素172の論理構造に格納されたPERSON型機能要素及びそれぞれのグローバル要件に基づいて、以下の詳細要件を生成する。

VERB要素の詳細要件の規定
動的データベースメモリ170の機能要素172の論理構造に格納されたVERB型機能要素及びそれぞれのグローバル要件に基づいて、以下の詳細要件を生成する。


DO要素の詳細要件の規定
動的データベースメモリ170の機能要素172の論理構造に格納されたDO型機能要素及びそれぞれのグローバル要件に基づいて、以下の詳細要件を生成する。

下位段階I3.ソフトウェア設計文書の生成
下位段階F4で規定したグラフィック表記について、文書生成器153として構成されたプロセッサ150は、各設計要素の名称及びその対応するグラフィック表記コードがタグ間に格納されたXMLファイルを生成する。
UMLグラフィック表記が選定された本発明の実施形態においては、xmi標準を使用して、クラス図を表すXMLを生成する。
文書生成器153として構成されたプロセッサ150は、下位段階F4において選定したグラフィック表記の規定に従って、設計に対応するデータベースメモリに格納されたデータを取得し、コンテンツを特定のXMLフォーマットにエクスポートすることによって、設計文書を生成する。
7.本方法の一用途の例
自然言語でのプロセスの記述に基づいて、このシステムは、「ケース」のビジネス文書、解析文書、及び設計文書を自動的に生成する。
このシステムの構成要素は、以下のように、上記文書の生成を可能にする。
1.入出力装置120:以下の構成を用いて、自然言語のテキストを入力する装置。
a.言語ユーザインターフェース121
b.ケースユーザインターフェース122
c.フォーマット・グラフィック表記・STD文ユーザインターフェース123
d.文書表示ユーザインターフェース124
2.CPU110:以下で構成されたシステム100の処理装置。
a.メインメモリ140:その構成に従って、以下の機能を実行する。
i.図141
ii.文マトリクス142
iii.FCマトリクス143
iv.DCマトリクス144
b.プロセッサ150:その構成に応じて、以下の機能を実行する。
i.自動文解析器151
ii.自動ソフトウェア設計器152
iii.文書生成器153
3.データベースメモリ130
a.静的データベースメモリ160
i.MASメタモデル161
ii.言語・単語・形態構文的ルール162
iii.フォーマット・グラフィック表記・STD文163
b.動的データベースメモリ170
i.単文・質問171
ii.機能要素172
iii.設計要素173
入出力装置
このツールは、ユーザがデータ入力又は動作実行可能なフィールドを備え、モニタ上にスクリーンを生成可能な永久メモリで構成されている。
ケースユーザインターフェース122
ケースユーザインターフェースによれば、ユーザは、要求されたデータを入力するとともに動作を実行して、データベースメモリに保存することができる。
ツールが機能するように、ユーザは、この方法により確立された通りに、自然言語のデータ(レイヤ、リソース、プロセス、下位プロセス、モーメント、ステップ)を入力する必要がある。
この目的のため、ユーザによるこれらフィールドへの入力及びこの方法で定めた順序によるフィールド間の関係の作成を可能とするアップロードインターフェースを提示する。各要素(次元、時間的アクティビティ、及び単文)には、以下のデータフィールドをアップロードする必要がある。
名称
説明
関連する従属要素
これらのデータフィールドを図8のインターフェースに表示する。次元及び時間的アクティビティのアップロードインターフェースにおいては、定められたシーケンス中のデータフィールドにユーザが入力すると、{text1}及び{text2}が対応する要素の名称で置き換えられる。
まず、{text1}=“Layer”且つ{text2}=“Resourceである。
編集動作(8.2)が実行された場合は、図8「次元及び時間的アクティビティのアップロードインターフェース」のインターフェースが再び表示されるものの、今回は、{text1}=“Resource”且つ{text2}=“Process”である。
編集動作(8.2)が実行された場合は、図8「次元及び時間的アクティビティのアップロードインターフェース」のインターフェースが再び表示されるものの、今回は、{text1}=“Process”且つ{text2}=“Subprocess”である。
編集動作(8.2)が実行された場合は、図8「次元及び時間的アクティビティのアップロードインターフェース」のインターフェースが再び表示されるものの、今回は、{text1}=“Subprocess”且つ{text2}=“Moment”である。
編集動作(8.2)が実行された場合は、図8「次元及び時間的アクティビティのアップロードインターフェース」のインターフェースが再び表示されるものの、今回は、{text1}=“Moment”且つ{text2}=“Step”である。
ステップが完了したら、図9「文インターフェース」のインターフェースが表示されるが、ユーザは、質問に回答して、この方法で規定した通りに構造化された完全な構造化単文を作成する必要がある。また、ユーザは、ステップ型一覧(9.2)から以下の選択肢のうちの1つを選定する必要がある。
F:Functional
C:Check/Control
QS:Query/Search
FX:Calculation
L:Link
ユーザが質問に回答すると、インターフェースの表示順(9.3、9.4、9.5、9.6、9.7)で、質問に入力されたテキストを連結することにより、ツールは文(9.8)を完成させる。
データアップロードタスクが完了したら、ユーザは、以下の動作を実行可能である。
保存:アップロードデータをデータベースメモリ(7.3.1)に保存する。
キャンセル:データベースメモリのアップロードデータ(7.3.1)を破棄する。
解析表示
モニタに表示される解析表示(7.1.2)は、ツールのユーザが「ケース」を読んで理解できるように体系化されたアップロードデータを表示するスクリーンから成り、グローバル及び詳細な機能要件を適正に生成するための正確な解析を行うようにユーザをガイドする。これらの要件は、ツールによって、データの確認及び選択をユーザに対してプロンプトで誘導することにより自動的に生成される。
単語解析表示
このインターフェースは、構造化された形態の単文をユーザに提示する(図10「単語解析インターフェース」)。このインターフェースを用いることによって、ツールは、ユーザによる解析プロセッサ及び解析文書プロセッサの実行を可能とする。
ユーザは、アップロードされた単文(10.1)すべてを含む表が提示され、それぞれについて解析動作を実行可能である。この動作は、解析プロセッサで行われ、文(10.2)に含まれる単語一覧が結果として返される。
各単語には、以下のような特徴がある。
Word(10.2.1):解析プロセッサが検出した単語。
Word(10.2.2):文中で単語が属する質問(When、Who、What、How、Where)。
Component Type(10.3.3):解析プロセッサが各単語に自動的に割り当てる型(NOUN、ADV、VERB、DO、ADJ)。
In Scope(10.3.4):質問中の単語が必要に応じて設計対象の「ケース」の範囲の一部となるか否かをツールのユーザがマークできるようにする列。ユーザは、YES/NOという選択肢から選定可能である。
Is Attribute(10.3.5):質問中の単語が必要に応じて&attributeのように挙動すべきか否かをツールのユーザが指定できるようにする列。ユーザは、YES/NOという選択肢から選定可能である。
単語解析タスクが完了したら、ユーザは、以下の動作を実行可能である。
保存:アップロードデータをデータベースメモリに保存する(7.3.1)。
キャンセル:データベースメモリのアップロードデータ(7.3.1)を破棄する。
このインターフェースにおいては、解析プロセッサ(7.5)により識別された各単語の解析動作を実行することができる。このような場合は、解析文書プロセッサが実行された後、要件解析表示が示される(図11「要件解析表示」)。
要件解析表示
このインターフェース(図11「要件解析表示」)は、解析文書プロセッサにより生成されたグローバル及び詳細な要件をユーザに提示する。
ユーザには、生成されたグローバル要件(11.1.1)すべてを含む表と、各グローバル要件に対応する詳細要件(11.1.2)を含む入れ子になった表とが提示される。
各グローバル要件には、以下のような特徴がある。
Word(10.2.1):解析プロセッサが検出した単語
Component Type(10.3.3):解析プロセッサが各単語に自動的に割り当てる型(NOUN、ADV、VERB、DO、ADJ)。
Step Type(9.2):ユーザがアップロードインターフェースにおいて選定した値。
GlobalReqNum(11.1.3):ツールが生成した相関番号。
Global Requirement(11.1.4):解析プロセッサが生成したグローバル要件に対応する文。
各詳細要件には、以下のような特徴がある。
DetReqNum(11.1.5):ツールが生成した相関番号。
Detailed Requirement(11.1.6):解析プロセッサが生成した詳細要件に対応する文。
&Attributes(11.1.7):単語を記述する&attributes一覧。以下により生成された一覧からユーザが選定する必要がある。
手動ユーザ入力
自動生成(ユーザにより「Is Attribute」とフラグ立てされた単語の場合)
Message(11.1.8):要件実行の結果としてのエラー、正しい動作、及び正しくない動作の状況に対する応答としてユーザが指定したいメッセージ一覧。この一覧は、以下により生成可能である。
ユーザによる手動入力
Expression(11.1.9):ステップ型がCC又はFXの場合にユーザが指定する計算対象の表現。
Associated GlobalReq(10.1.10):ユーザによるGlobalReqの参照及び詳細要件との関連付けを可能にするグローバル要件一覧。これは、範囲の記述にこの種の何らかの素性の記述を含まない場合(システムによる関係の自動生成を防止)に発生するが、この場合はユーザが追加する。
単語解析タスクが完了したら、ユーザは、以下の動作を実行可能である。
保存:アップロードデータをデータベースメモリに保存する(7.3.1)。
キャンセル:データベースメモリのアップロードデータ(7.3.1)を破棄する。
設計表示
このインターフェース(7.1.3)(図12「設計インターフェース」)は、解析プロセッサが検出した単語をユーザに提示することで、解析の結果に基づく「ケース」の設計を可能にする。
ユーザには、解析された単語すべてを含む表が提示され、各単語は、関連要件(12.1.1)に基づく関連単語を含む入れ子になった表を有する。
各単語は、解析フェーズから導出された以下のデータを特徴とする。
Word(10.2.1):設計される範囲に含まれる単語。
Word(10.2.2):文中で単語が属する質問(When、Who、What、How、Where)
Component Type(10.3.3):解析プロセッサが各単語に割り当てる型(NOUN、ADV、VERB、DO、ADJ)。
Step Type(9.2):ユーザがアップロードインターフェースにおいて選定した値。
Is &attribute(10.3.5):解析フェーズにおいてユーザが指定する素性であり、YES又はNOが可能。
このインターフェースにおいては、一覧単語それぞれについて、設計動作を実行することができる。このような場合は、設計プロセッサ(7.6)が実行された後、当該単語及びその関連単語に対して生成されたクラス一覧を含む設計表示(12.2)が表示される。
各クラスには、以下のような特徴がある。
Class(12.2.1):設計プロセッサが設計したクラスの名称。
ClassType(12.2.2):L又はNonLが可能。
&Attributes(12.2.3):クラスに割り当てられた&attributes一覧。如何なる場合でも、解析フェーズにおける&attributes状態一覧に属する。
Methods(12.2.4):クラスに割り当てられた方法一覧。これらの方法は、設計プロセッサが生成する。
クラスを設計したら、図確認動作(12.1.3)を実行可能であり、これによって、図6(例示的なクラス図)の例に類似するクラス図がスクリーンに提示されることになる。
単語解析タスクが完了したら、ユーザは、以下の動作を実行可能である。
保存:アップロードデータをデータベースメモリに保存する(7.3.1)。
キャンセル:データベースメモリのアップロードデータ(7.3.1)を破棄する。
メインメモリ
プロセッサ
「ケース」の解析及び設計文書を自動的に生成するため、ツールは、解析動作を実行する解析処理、設計動作を実行する設計処理、及び結果としての文書を生成する文書処理という3つの機能をプロセッサに提供する。
自動文解析器
解析プロセッサは、ユーザがデータベースメモリにアップロードした完全な単文の集合を取得する。当該文に基づいて、以下3つのアルゴリズムを実行する。
「ケース」の構築に関連する単語を識別するアルゴリズム(図13「解析プロセッサ」)であって、タイトルV、段階Eに記載の本発明を構成する方法である。
「ケース」のグローバル要件を生成するアルゴリズム(図14「解析文書プロセッサ(グローバル機能要件)」)であって、タイトルV、段階F、下位段階1に記載の本発明を構成する方法である。
「ケース」の詳細要件を生成するアルゴリズム(図15「解析文書プロセッサ(詳細機能要件)」)であって、タイトルV、段階F、下位段階2に記載の本発明を構成する方法である。
単語アルゴリズム
このアルゴリズム(図13「解析プロセッサ」)は、既存の文ごとに上記ルーチンを実行するが、以下2つの一覧がデータベースにアップロードされている必要がある。
GRW={grouping words}:グループ化を定める単語の集合であり、例えば、単語「of」は、「list of prices(価格一覧)」に存在するとグループ化単語である。
PEX={excluded words}:解析から除外される単語の集合。通常は、前置詞、接続詞、及び冠詞で構成される。
このアルゴリズムが実行されたら、すべての単語が「ケース」の機能要素に変換され、要素型により分類されるとともに質問によって相互に関係付けられていることになる。
要素型は、以下を表す。
NOUN:NOUN
PER:PERSON NOUN
ADV:ADVERBIAL CONSTRUCTION
VERB:VERB
DO:DIRECT OBJECT NOUN
ADJ:ADJECTIVE
グローバル要件アルゴリズム
このアルゴリズム(図14「解析文書プロセッサ(グローバル機能要件)」)は、範囲で識別された単語ごとに上記ルーチンを実行するが、以下の一覧がデータベースにアップロードされている必要がある。
reqgl_abm_Sust:NOUN要素が範囲で識別されるたびにグローバル要件の構成に用いられる文。この方法は、“Create,Read,Update and Delete”+{NounWord}に類似したものを推奨する。
reqgl_abm_Pers:PER要素が範囲で識別されるたびにグローバル要件の構成に用いられる文。この方法は、“Create,Read,Update and Delete Entities with role”+{PersonWord}に類似したものを推奨する。
reqgl_verboF:F型ステップにリンクしたVERBが範囲で識別されるたびにグローバル要件の構成に用いられる文。この方法は、“Create transaction record”+{VerbWord}+{DOWord}に類似したものを推奨する。
reqgl_verboF:L型ステップにリンクしたVERBが範囲で識別されるたびにグローバル要件の構成に用いられる文。この方法は、“Create rule that”+{VerbWord}+{DOWord}“with”+{NounWord}に類似したものを推奨する。
reqgl_verbo:非F型又は非L型ステップにリンクしたVERBが範囲で識別されるたびにグローバル要件の構成に用いられる文。この方法は、“Create rule that”+{VerbWord}+{DOWord}に類似したものを推奨する。
このアルゴリズムが実行されたら、「ケース」のすべてのグローバル要件がデータベースに格納される。
詳細要件アルゴリズム
このアルゴリズム(図15「解析文書プロセッサ(詳細機能要件)」)は、範囲で識別された単語ごとに上記ルーチンを実行するが、ケースの記述用に選定された言語の標準文がデータベースにアップロードされている必要がある。
設計処理
設計プロセッサは、機能要素の集合及び解析フェーズにおいて追加された補集合を取得する。
属性
メッセージ
表現
関連Reqs
これらはすべて、「ケース」の範囲の一部である機能要素とリンクしている。
タイトルV、段階Gを実行するとともに「ケース」の結果としての設計図を構成するクラス及び関係を自動的に生成する図16「設計プロセッサアルゴリズム」のアルゴリズムが実行される。
文書処理
このツールは、ユーザがアップロードメモリからのデータを視認可能なフィールドを備え、モニタ上に示される文書を自動的に生成可能な永久メモリで構成されている。
ビジネス文書処理
ビジネス文書生成器は、アップロードインターフェースにおいてアップロードされ、データベースに格納されたデータを取得し、以下のアルゴリズムを適用してビジネス文書を生成する。
a)レイヤ、リソース、プロセス、下位プロセス、モーメント、ステップ、When、Who、What、How、Where、文といった列及び番号行がユーザによりアップロードされたデータベースにアクセスする方法により指定された順序で、格納されたアップロードデータすべてを取得する。
b)タイトル変数(17.1)においてレイヤ、リソース、及びプロセスを連結する。
c)サブタイトル変数(17.2)において下位プロセス及びモーメントを連結する。
d)より大きなインデント(17.3)を各ステップに提示する。
e)より大きなインデント(17.4)を各文に提示する。
結果としての文書であるビジネス文書(図17「ビジネス文書」)を命名し、ツールは、ユーザによる文書ファイル(7.3.1)への格納、印刷装置(プリンタ、プロッタ等)を用いた印刷、表示装置(モニタ、スクリーン、プロジェクタ等)を用いた表示を可能にする。
解析文書処理
解析文書プロセッサは、アップロードデータ及び生成された要件(グローバル及び詳細)をすべて取得し、以下のアルゴリズムを適用して解析文書を生成する。
a)ビジネス文書と同じアルゴリズムを使用して、タイトル(17.1)、サブタイトル(17.2)、及びステップ(17.3)を生成する。
b)ステップと関連付けられた各グローバル要件に対して、前ステップよりも大きなインデント(18.1)を提示する。
c)グローバル要件と関連付けられた各詳細要件に対して、先のグローバル要件よりも大きなインデント(18.2)を提示する。
結果としての文書である解析文書(図18「解析文書」)を命名し、ツールは、ユーザによる文書ファイル(7.3.1)への格納、印刷装置(プリンタ、プロッタ等)を用いた印刷、表示装置(モニタ、スクリーン、プロジェクタ等)を用いた表示を可能にする(7.3.1)。
設計文書処理
文書プロセッサは、設計プロセッサが識別したクラスのデータを取得し、UML図を読み取るxmi標準を用いてXMLファイルを作成する。
結果としての文書であるクラス設計文書を命名する。その例を図6「例示的なクラス図」に示す。
この結果としての文書は、文書ファイル(7.3.1)に格納される。
データベースメモリ
ツールは、生成した結果を格納可能な永久メモリで構成されている。
データベース
ツールが生成したアップロード、解析、及び設計データを格納するデータベースである。データベースエンジンが管理する。
文書ファイル
生成文書を格納するデータベースである。オペレーティングシステムのファイルサーバが管理するハードディスク上に設定された構造である。

Claims (19)

  1. データベースメモリ130に格納された、ケースを記述する自然言語で表された表現から機能アーキテクチャ文書を生成するコンピュータ実装方法において、
    A.論理構造であるMASメタモデルを入出力装置120を介してアップロードする段階であって、前記データベースメモリ130に格納された形態構文的ルールに応じて、前記MASメタモデルは、自動文解析器、自動ソフトウェア設計器及び文書生成器として構成されて以下の機能を実行するプロセッサ150の挙動を判定し、前記段階Aは、
    A1.前記自動文解析器として構成された前記プロセッサ150が使用して解析及び設計文書を生成するロジックであり、他動詞に基づくPerformer単語、Performable単語、及びPerformance単語の自動生成を含む、ロジックを規定する前記MASメタモデルを前記データベースメモリ130に格納する下位段階と、
    A2.a)単文内の単語が属し、WH質問と称される質問の形式(when、who、what、how、where)を規定する質問ロジック、b)前記WH質問を含む動詞の型(明示的な計算動作(FX)、チェック/確認動作(CC)、質問/検索動作(QS)、リンク動作(L)、前記動作のいずれにも対応しない動作(F))を規定するステップ型ロジック、及びc)単語の型を規定する単語ロジック、に基づいて自然言語のあらゆる文を構造化可能であることを定めた形態構文的ルールの前記MASメタモデルのロジックを前記データベースメモリ130に格納する下位段階と、
    を含む段階と、
    B.前記入出力装置120の言語ユーザインターフェース121を介して、適格言語、各適格言語の文法及び構文素性の一覧を入力し、このデータを前記データベースメモリ130に格納する段階と、
    C.前記入出力装置120のケースユーザインターフェース122を介して、前記段階Bの適格言語一覧から選択される自然言語のうちの1つで前記ケースの記述をテキストとして入力した後、前記記述を前記データベースメモリ130に格納する段階と、
    D.前記段階Cの前記ケースの単文を識別し、前記WH質問に対して各単文を応答し、前記入出力装置120の前記ケースユーザインターフェース122を用いて、後で前記データベースメモリ130に格納され得るように前記単文をアップロードする段階と、
    E.自動文解析器151として前記段階Aにおいて確立され構成されたプロセッサ150を介して、前記段階Dの前記単文に基づいて、機能要素を識別し、前記データベースメモリ130に格納する段階と、
    F.この種の文書に関して具体的に規定されたグラフィック表記を用いて、文書生成器153として構成されたプロセッサ150を介して、前記段階Eの前記機能要素に基づいて、前記機能アーキテクチャ文書を自動的に生成する段階であって、前記段階Fは、
    F1.形態構文的ルールを適用し、これに基づいて、文書生成器として構成された前記プロセッサ150が、記載された特殊単語を前記機能要素から除外するとともに、他動詞の場合の新たな機能要素として、動詞と動作主接尾辞「ER」とから成る名称の機能要素及び動詞と接尾辞「BLE」とから成る名称のその他の機能要素を作成する下位段階と、
    F2.前記入出力装置のフォーマット・グラフィック表記・STD文ユーザインターフェースを用いることにより、機能アーキテクチャ図に用いられる前記グラフィック表記を規定し、対応する単語の型に従って、各機能要素について前記図に用いられるグラフィック要素を指定し、前記データベースメモリ130に格納する下位段階と、
    F3.前記下位段階F2で規定した前記表記を用いることにより、前記データベースメモリ130に格納した前記機能要素に基づいて、文書生成器として構成された前記プロセッサ150を用いることにより前記機能アーキテクチャ文書を生成する下位段階と、
    を含む段階と、
    含む、コンピュータ実装方法。
  2. 前記段階Bが、
    B1.前記入出力装置120を介して、前記選定された適格言語の順序を入力し、前記データベースメモリ130に格納する下位段階と、
    B2.前記入出力装置120を介して、前記段階Dの前記単文のテキストに見られるとともに前記機能要素の一覧から除外される前記選定された適格言語の特殊単語を入力し、前記データベースメモリ130に格納する下位段階と、
    B3.前記入出力装置120を介して、2つ以上の単語を含むとともに前記段階Dの前記単文のテキストに見られる機能要素のリンクに用いられる前記選定された適格言語のグループ化単語を入力し、前記データベースメモリ130に格納する下位段階と、
    B4.前記入出力装置120を介して、前記段階Dの前記単文のテキストに見られる前記選定された適格言語の不定動詞の動詞末尾を入力し、前記データベースメモリ130に格納する下位段階と、
    から成ることを特徴とする、請求項1に記載のコンピュータ実装方法。
  3. 前記段階Cが、
    C1.ケースユーザインターフェース122として構成された前記入出力装置120を用いることにより、前記段階Bで規定した前記適格言語から、前記ケースを記述する言語を選定する下位段階と、
    C3.前記下位段階A2を適用することによって前記ケースのステップを識別し、前記データベースメモリ130に格納する下位段階と、
    から成ることを特徴とする、請求項1に記載のコンピュータ実装方法。
  4. 前記段階Cが、前記ケースのコンテキストを構造化する要素、レイヤ、リソース、プロセス、下位プロセス、及びモーメントを識別し、前記データベースメモリ130に格納することから成ることを特徴とする、請求項1に記載のコンピュータ実装方法。
  5. 前記段階Dが、
    D1.前記段階Bで識別した前記ケースのステップそれぞれについて、質問who、what、where、how、及びwhenに答え、その答えをテキストとしてデータベースメモリ130に格納する下位段階と、
    D2.各ステップの前記答えの前記テキストを連結して単文にし、前記文をテキストとしてデータベースメモリ130に格納する下位段階と、
    から成ることを特徴とする、請求項1に記載のコンピュータ実装方法。
  6. 前記段階Eが、前記単文を単語に分解し、前記選定した言語に従って特徴付けるとともに前記単文の前記機能要素を識別し、前記データベースメモリ130に格納することから成ることを特徴とする、請求項1に記載のコンピュータ実装方法。
  7. 前記段階Eにおいて、単文から自動的に識別した前記機能要素の一覧に存在しない機能要素をユーザが追加することを特徴とする、請求項1に記載のコンピュータ実装方法。
  8. 前記段階Eにおいて、すべてのCC及びFX型ステップについて「前記ケース」の数学的挙動を記述する式表現をユーザが追加することを特徴とする、請求項1に記載のコンピュータ実装方法。
  9. 前記下位段階A1で規定した形態構文的ルールを前記段階Eにおいて適用し、これに基づいて、自動文解析器として構成された前記プロセッサ150が、前記ルールに記載の特殊単語を除外するとともに、他動詞の場合の新たな機能要素として、動詞と動作主接尾辞「ER」とから成る名称の機能要素及び動詞と接尾辞「BLE」とから成る名称の機能要素を作成することを特徴とする、請求項1に記載のコンピュータ実装方法。
  10. データベースメモリ130に格納された、ケースを記述する自然言語で表された表現からソフトウェア設計仕様書を生成するコンピュータ実装方法において、
    A.入出力装置120を介して、MASメタモデルを前記データベースメモリ130にアップロードする段階であって、前記MASメタモデルは、前記データベースメモリ130に格納された形態構文的ルールに応じてプロセッサ150の挙動を判定し、前記段階Aは、
    A1.前記プロセッサ150が使用して解析及び設計文書を生成するロジックであり、他動詞に基づくPerformer単語、Performable単語、及びPerformance単語の自動生成を含む、ロジックを規定する前記MASメタモデルを前記データベースメモリ130に格納する下位段階と、
    A2.a)単文内の単語が属し、WH質問と称される質問の形式(when、who、what、how、where)を規定する質問ロジック、b)前記WH質問を含む動詞の型(明示的な計算動作(FX)、チェック/確認動作(CC)、質問/検索動作(QS)、リンク動作(L)、前記動作のいずれにも対応しない動作(F))を規定するステップ型ロジック、及びc)単語の型を規定する単語ロジック、に基づいて自然言語のあらゆる文を構造化可能であることを定めた形態構文的ルールの前記MASメタモデルのロジックを前記データベースメモリ130に格納する下位段階と、
    を含む段階と、
    B.前記入出力装置120の言語ユーザインターフェース121を介して、適格言語、各適格言語の文法及び構文素性を入力し、これらのデータを前記データベースメモリ130に格納する段階と、
    C.前記入出力装置120のケースユーザインターフェース122を介して、前記段階Bの適格言語一覧から選択される1つの自然言語で前記ケースの記述をテキストとしてアップロードした後、前記データベースメモリ130に格納する段階と、
    D.前記段階Cのステップに対応する前記ケースの単文を識別し、前記入出力装置120の前記ケースユーザインターフェース122を介して、後で前記データベースメモリ130に格納され得るように前記単文をアップロードする段階と、
    E.自動文解析器151として構成されたプロセッサ150により、前記段階Dの前記単文に基づいて、自動的に機能要素を識別し、前記データベースメモリ130に格納する段階と、
    F.この種の文書に関して具体的に規定されたグラフィック表記を用いて、文書生成器153として構成されたプロセッサ150を介して、前記段階Eの前記機能要素に基づいて、前記機能アーキテクチャ文書を自動的に生成する段階と、
    .自動ソフトウェア設計器152として構成されたプロセッサ150を介して、前記段階Eの前記機能要素に基づいて、設計要素を自動的に識別し、前記データベースメモリ130に格納する段階と、
    H.前記表示装置120のフォーマット・グラフィック表記・STD文ユーザインターフェース123を用いて、ビジネス、解析、及び設計文書の出力フォーマット、要件に対する標準文のパラメータ、並びに設計図のグラフィック表記をアップロードし、前記データベースメモリ130に格納する段階と、
    I.前記段階Gで規定した前記フォーマット・グラフィック表記・STD文を適用することによって、文書生成器153として構成されたプロセッサ150を介して、前記段階Dの前記単文に基づいてビジネス文書を、前記段階Eの前記機能要素に基づいて解析文書を、前記段階Fの前記設計要素に基づいて前記設計文書を自動的に生成する段階と、
    を特徴とする、コンピュータ実装方法。
  11. 前記段階Gが、
    G1.機能要素、それぞれのクラス及び継承関係のグループを選択するとともに作成し、前記データベースメモリ130に格納する下位段階と、
    G2.FX及びCC型ステップに基づいて式クラスを作成し、前記データベースメモリ130に格納する下位段階と、
    G3.QA型ステップに基づいてドメインクラスを作成し、前記データベースメモリ130に格納する下位段階と、
    G4.L型ステップに基づいて関係クラスを作成し、前記データベースメモリ130に格納する下位段階と、
    G5.F型ステップに基づいて演算クラスを作成し、前記データベースメモリ130に格納する下位段階と、
    から成ることを特徴とする、請求項10に記載のコンピュータ実装方法。
  12. 前記段階Eにおいて、エラー、妥当性、及び警告メッセージをユーザが追加することを特徴とする、請求項10に記載のコンピュータ実装方法。
  13. 前記段階Iが、
    I1.ビジネス文書を生成する下位段階と、
    I2.解析文書を生成する下位段階と、
    I3.ソフトウェア設計文書を生成する下位段階と、
    から成ることを特徴とする、請求項10に記載のコンピュータ実装方法。
  14. 前記下位段階I1が、
    a)次元、時間的アクティビティ、及び単文を順序付ける動作と、
    b)前記順序付けた要素を接続する動作と、
    c)前記入出力装置120に前記ビジネス文書を表示する動作と、
    によって前記ビジネス文書を生成することを特徴とする、請求項13に記載のコンピュータ実装方法。
  15. 前記下位段階I2が、
    a)グローバル機能要件を組み立て、NOUN要素のグローバル要件を規定し、VERB要素のグローバル要件を規定する動作と、
    b)詳細な機能要件を組み立て、NOUN、PERSON、VERB、及びDO要素の詳細要件を規定する動作と、
    c)前記入出力装置120に前記解析文書を表示する動作と、
    によって前記解析文書を生成することを特徴とする、請求項13に記載のコンピュータ実装方法。
  16. 前記下位段階I3が、前記設計文書を生成し、前記入出力装置120に表示することを特徴とする、請求項13に記載のコンピュータ実装方法。
  17. 前記段階Hにおいて、前記入出力装置120のフォーマット・グラフィック表記・STD文ユーザインターフェース123を用いることにより、ユーザがテンプレートを使用して「前記ケース」の機能解析文書のテキストの構造を構成した後、前記データベースメモリ130に格納可能であることを特徴とする、請求項10に記載のコンピュータ実装方法。
  18. 前記段階Iにおいて、「前記ケース」の前記設計要素をユーザが拡張可能マークアップ言語(XML)フォーマットで格納することを特徴とする、請求項10に記載のコンピュータ実装方法。
  19. データベースメモリに格納された、ケースを記述する自然言語表現で表された記述から機能アーキテクチャ文書並びにビジネス、解析、及びソフトウェア設計仕様書を生成するシステムであって、
    言語ユーザインターフェース121、ケースユーザインターフェース122、フォーマット・グラフィック表記・STD文ユーザインターフェース123、及び文書表示ユーザインターフェース124として構成され、適格言語及びそれぞれの構造を入力し、自然言語での前記ケースの記述を入力し、文書生成用のフォーマット・グラフィック表記を入力し、前記機能アーキテクチャ文書並びに前記ビジネス、解析、及びソフトウェア設計仕様書を表示する入出力装置120と、
    前記入出力装置120に接続され、プロセッサ150と相互作用することにより、前記ケースの記述、機能要素、設計要素、及び前記機能アーキテクチャ文書並びに前記ビジネス、解析、及びソフトウェア設計仕様書を揮発的に格納するように構成されたメインメモリ140と、を備え、
    前記プロセッサ150は、自然言語の少なくとも1つの記述をユーザから受け取るように構成され、前記記述が前記ケースを含むとともに前記ケースのステップを識別し、前記ケースのステップに対応する単文を作成して解析することにより、前記単文に基づいて機能要素を自動的に生成する自動文解析器151として構成され、前記機能要素に基づいて前記ケースの前記設計要素を識別する自動ソフトウェア設計器152として構成され、前記機能要素及び前記設計要素に基づいて、機能アーキテクチャ文書並びにビジネス、解析、及びソフトウェア設計仕様書を生成する文書生成器153として構成され
    前記システムは、
    前記プロセッサ150に接続され、MASメタモデル161、言語・単語・形態構文的ルール162、及びフォーマット・グラフィック表記・STD文163の静的ストレージ160として構成されるとともに、単文・質問171、機能要素172、及び設計要素173の動的ストレージ170として構成されたデータベースメモリ130と、
    を備えた、システム。
JP2018507792A 2015-04-28 2016-04-29 自然言語により機能アーキテクチャ文書及びソフトウェア設計・解析仕様書を自動的に生成するプロセス及びシステム Active JP6753596B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US201562154093P 2015-04-28 2015-04-28
PCT/IB2016/052465 WO2016174638A1 (es) 2015-04-28 2016-04-29 Proceso y sistema para generar documentos de arquitectura funcional y documentos de especificación de análisis y de diseño de software de manera automática

Publications (2)

Publication Number Publication Date
JP2018516420A JP2018516420A (ja) 2018-06-21
JP6753596B2 true JP6753596B2 (ja) 2020-09-09

Family

ID=57199746

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2018507792A Active JP6753596B2 (ja) 2015-04-28 2016-04-29 自然言語により機能アーキテクチャ文書及びソフトウェア設計・解析仕様書を自動的に生成するプロセス及びシステム

Country Status (12)

Country Link
US (1) US10303441B2 (ja)
EP (1) EP3364295B1 (ja)
JP (1) JP6753596B2 (ja)
CN (1) CN107851000B (ja)
CA (1) CA2984488C (ja)
CO (1) CO2017011036A2 (ja)
DK (1) DK3364295T3 (ja)
ES (1) ES2830779T3 (ja)
IL (1) IL255271B (ja)
MX (1) MX2017013899A (ja)
PT (1) PT3364295T (ja)
WO (1) WO2016174638A1 (ja)

Families Citing this family (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6725535B2 (ja) 2015-05-13 2020-07-22 ナディア アナリア ウェブラ, 設計仕様書に基づきソフトウェアタイプアプリケーションを表示するコンピュータに実装された方法
US10354070B2 (en) * 2015-08-22 2019-07-16 Avocado Systems Inc. Thread level access control to socket descriptors and end-to-end thread level policies for thread protection
TWI590095B (zh) * 2016-05-19 2017-07-01 緯創資通股份有限公司 軟體功能驗證系統及其驗證方法
US10839404B2 (en) * 2016-06-06 2020-11-17 Epiance Software Pvt. Ltd. Intelligent, interactive, and self-learning robotic process automation system
US10732965B2 (en) * 2016-10-13 2020-08-04 Tata Consultancy Services Limited Systems and methods for dynamic generation of questionnaires on programming concepts
US20180143951A1 (en) * 2016-11-21 2018-05-24 Kong Ping Oh Automatic creation of hierarchical diagrams
CN107247581B (zh) * 2017-03-07 2020-08-14 刘立 系统分析与概要设计交付模型的构建方法
US10460044B2 (en) * 2017-05-26 2019-10-29 General Electric Company Methods and systems for translating natural language requirements to a semantic modeling language statement
US10606586B2 (en) 2017-08-01 2020-03-31 Accenture Global Solutions Limited Application architecture generation
CN109840073B (zh) * 2017-11-24 2022-07-05 北京京东尚科信息技术有限公司 业务流程的实现方法和装置
US10664246B2 (en) * 2018-10-23 2020-05-26 BiznessLegion, LLC Method and system for using information about change to design evolvable compositions of reusable software components
US11003859B2 (en) * 2018-11-30 2021-05-11 International Business Machines Corporation Machine-learning automated structural quality analysis
FI3903182T3 (fi) * 2019-01-10 2023-12-13 Brane Cognitives Pte Ltd Luonnollinen ratkaisukieli
US11681504B1 (en) 2019-04-26 2023-06-20 Opturo, Inc. Automated application builder using configuration files
JP2022534506A (ja) * 2019-05-28 2022-08-01 レヒカ・エセ・ア・エセ 自然言語からの機能アーキテクチャドキュメントならびにソフトウェア設計および分析仕様ドキュメントの自動生成のためのプロセスおよびシステム
CN110321431B (zh) * 2019-05-31 2023-11-14 平安科技(深圳)有限公司 信息分析方法、装置、计算机设备及存储介质
CN110413267B (zh) * 2019-08-08 2023-05-26 四川爱创科技有限公司 基于业务规则的自适应业务流程建模方法
US11681873B2 (en) * 2019-09-11 2023-06-20 International Business Machines Corporation Creating an executable process from a text description written in a natural language
CN111273913B (zh) * 2020-01-20 2023-03-21 北京明略软件系统有限公司 一种输出规范表示的应用程序接口数据的方法及装置
CN112202591A (zh) * 2020-08-28 2021-01-08 网宿科技股份有限公司 配置管理系统、方法及存储介质
CN113010400B (zh) * 2021-04-26 2024-02-06 唐君宜 计算机工程技术文档智能生成、复盘系统和方法
CN113190222A (zh) * 2021-04-30 2021-07-30 南京航空航天大学 一种基于SysML的安全关键自治系统建模方法及工具

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6681383B1 (en) 2000-04-04 2004-01-20 Sosy, Inc. Automatic software production system
JP2003263428A (ja) * 2002-03-08 2003-09-19 Nippon Telegr & Teleph Corp <Ntt> 文型との照合による意味解釈方法、装置、当該方法の実行コンピュータプログラム、及び当該方法の実行コンピュータプログラムを記録した記憶媒体
US7409337B1 (en) * 2004-03-30 2008-08-05 Microsoft Corporation Natural language processing interface
US20080255997A1 (en) 2007-04-16 2008-10-16 Bluhm Thomas H Enterprise integrated business process schema
JP5536518B2 (ja) 2009-04-23 2014-07-02 インターナショナル・ビジネス・マシーンズ・コーポレーション システムの自然言語仕様から当該システム用のシステム・モデル化メタモデル言語モデルを自動的に抽出するための方法、装置及びコンピュータ・
US8949773B2 (en) * 2010-03-25 2015-02-03 International Business Machines Corporation Deriving process models from natural language use case models
US20130097583A1 (en) * 2011-09-27 2013-04-18 The University Of Texas System Systems and Methods For Automating the Application of a Software Methodology
CN102495832A (zh) * 2011-12-12 2012-06-13 方正国际软件有限公司 软件开发过程中文档自动生成系统
WO2013088287A1 (en) * 2011-12-12 2013-06-20 International Business Machines Corporation Generation of natural language processing model for information domain
JP6725535B2 (ja) 2015-05-13 2020-07-22 ナディア アナリア ウェブラ, 設計仕様書に基づきソフトウェアタイプアプリケーションを表示するコンピュータに実装された方法

Also Published As

Publication number Publication date
BR112017023287A8 (pt) 2023-04-18
CN107851000A (zh) 2018-03-27
IL255271B (en) 2020-10-29
IL255271A0 (en) 2017-12-31
US20170003937A1 (en) 2017-01-05
DK3364295T3 (da) 2020-11-09
CO2017011036A2 (es) 2018-01-16
EP3364295A1 (en) 2018-08-22
JP2018516420A (ja) 2018-06-21
EP3364295A4 (en) 2018-12-19
CA2984488A1 (en) 2016-11-03
CN107851000B (zh) 2021-03-30
WO2016174638A1 (es) 2016-11-03
CA2984488C (en) 2023-10-31
ES2830779T3 (es) 2021-06-04
US10303441B2 (en) 2019-05-28
BR112017023287A2 (pt) 2018-08-14
MX2017013899A (es) 2018-06-22
PT3364295T (pt) 2020-12-15
EP3364295B1 (en) 2020-08-05

Similar Documents

Publication Publication Date Title
JP6753596B2 (ja) 自然言語により機能アーキテクチャ文書及びソフトウェア設計・解析仕様書を自動的に生成するプロセス及びシステム
US10831449B2 (en) Process and system for automatic generation of functional architecture documents and software design and analysis specification documents from natural language
Paige et al. Rigorous identification and encoding of trace-links in model-driven engineering
US8589877B2 (en) Modeling and linking documents for packaged software application configuration
Krogstie Capturing enterprise data integration challenges using a semiotic data quality framework
Wardhana et al. Transformation of sysml requirement diagram into owl ontologies
García et al. Effective use of ontologies in software measurement
Hossain et al. Natural Language–Based Conceptual Modelling Frameworks: State of the Art and Future Opportunities
Giannoulis et al. Model-driven strategic awareness: From a unified business strategy meta-model (UBSMM) to enterprise architecture
Nistala et al. Towards digitalization of requirements: generating context-sensitive user stories from diverse specifications
EP3977261A1 (en) Process and system for automatic generation of functional architecture documents and software design and analysis specification documents from natural language
Rinker et al. A multi-model reviewing approach for production systems engineering models
Bagga et al. Transformation from CIM to PIM for querying multi-paradigm databases
Ameller Non-functional requirements as drivers of software architecture design
da Silva et al. Variability Specification and Resolution of Textual Requirements.
Ladeinde et al. Extracting Queryable Knowledge Graphs from User Stories: An Empirical Evaluation.
Couto Pattern based software development
Nistala Towards an Intelligent Systems Software Process Infrastructure for early SDLC
Mancuso et al. An Approach for Knowledge Graphs-Based User Stories in Agile Methodologies
Weissgerber Semantically-enriched business process modeling and management
Azmi et al. Test management traceability model to support software testing documentation
da Terra Development of tools for Data Management
Wautelet et al. Investigating Quality Attributes in Behavior-Driven Development Scenarios: An Evaluation Framework and an Experimental Supporting Tool
Ketola et al. Automated Data Quality Check in Plant Digital Twins
Froger et al. Generating Personalized and Certifiable Workflow Designs: A Prototype

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20190220

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20190919

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20191118

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20200107

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20200406

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20200608

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: 20200721

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20200814

R150 Certificate of patent or registration of utility model

Ref document number: 6753596

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250