【手続補正書】
【提出日】平成20年9月16日(2008.9.16)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
ワークフローに関係するユーザコードを参照しつつ前記ワークフローを実行するコンピュータにより実装される方法であって、
複数のアクティビティを有するワークフローを規定するステップと、
前記コンパイルされていないワークフローの表現を生成するステップと、
前記複数のアクティビティの１又は２以上との関連についてユーザコードを規定するステップと、
前記ユーザコードをコンパイルするステップと、
前記規定されたワークフローを、前記ワークフローのコンパイルされていない表現及び前記コンパイルされたユーザコードに応じて実行するステップと、
前記規定されたワークフローが実行され続けている間に前記ユーザが前記コンパイルされていないワークフローの表現を動的に修正できるようにするステップと
を備えたことを特徴とするコンピュータにより実装される方法。
【請求項２】
前記各アクティビティは、該アクティビティに関連付けられたアクティビティ実行プログラムを有し、前記規定されたワークフローを実行するステップは、前記コンパイルされたユーザコードを参照しつつ前記複数のアクティビティのそれぞれについて前記アクティビティ実行プログラムを実行するステップを含むことを特徴とする請求項１に記載のコンピュータにより実装される方法。
【請求項３】
前記修正されたワークフローを前記ワークフローのコンパイルされていない表現及び前記コンパイルされたユーザコードに応じて遂行するステップをさらに備えたことを特徴とする請求項１に記載のコンピュータにより実装される方法。
【請求項４】
前記修正されたワークフローを前記ワークフローのコンパイルされていない表現及び前記コンパイルされたユーザコードに応じて実行するステップをさらに備えたことを特徴とする請求項１に記載のコンピュータにより実装される方法。
【請求項５】
前記規定されたワークフローを実行するステップ、および前記修正されたワークフローを実行するステップは、前記コンパイルされていないワークフローの表現をコンパイルせずに実行するステップを含むことを特徴とする請求項４に記載のコンピュータにより実装される方法。
【請求項６】
前記ユーザコードは、前記ワークフローの実行に影響を及ぼす１つまたは複数のビジネスルールを表すことを特徴とする請求項１に記載のコンピュータにより実装される方法。
【請求項７】
前記ユーザコードを前記ユーザから受け取るステップをさらに備えたことを特徴とする請求項１に記載のコンピュータにより実装される方法。
【請求項８】
前記ユーザコードをコンパイルするステップは、前記複数のアクティビティのそれぞれに関連付けられた前記ユーザコードをコンパイルするステップを含むことを特徴とする請求項１に記載のコンピュータにより実装される方法。
【請求項９】
前記コンパイルされていないワークフローを実行するステップは、デッドロック検出および同時実行制御を課すステップを含むことを特徴とする請求項１に記載のコンピュータにより実装される方法。
【請求項１０】
１つまたは複数のコンピュータ読み取り可能媒体は、請求項１に記載の前記方法を実行するコンピュータ実行可能命令を格納することを特徴とする請求項１に記載のコンピュータにより実装される方法。
【請求項１１】
ワークフローに関係するユーザコードを参照しつつ前記ワークフローを実行するためのコンピュータ実行可能コンポーネントを格納する１つまたは複数のコンピュータ読み取り可能媒体であって、前記コンポーネントは、
前記ユーザコードを実行可能オブジェクトコードに翻訳するコンパイラコンポーネントであって、前記ユーザコードが前記ワークフローと関連する複数のアクティビティの１又は２以上と関連付けることを規定されるコンパイラコンポーネントと、
コンパイルされていないワークフローの表現及び前記コンパイラコンポーネントから得られた前記実行可能オブジェクトコードに応じて前記ワークフローを実行するワークフローコンポーネントと、
前記ワークフローが前記ワークフローコンポーネントにより実行され続けている間に、前記ユーザが前記コンパイルされていないワークフローの表現を動的に修正できるようにするデザイナコンポーネントと
を備えたことを特徴とするコンピュータ読み取り可能媒体。
【請求項１２】
前記ワークフローコンポーネントは、前記修正されたコンパイルされていないワークフローの表現及び前記コンパイルされたユーザコードに基づいて前記ワークフローをさらに実行することを特徴とする請求項１１に記載のコンピュータ読み取り可能媒体。
【請求項１３】
前記ワークフローコンポーネントは、前記コンパイルされていないワークフローの表現をコンパイルせずに前記修正されたコンパイルされていないワークフローの表現及び前記ユーザコードに基づいて前記ワークフローをさらに実行することを特徴とする請求項１２に記載のコンピュータ読み取り可能媒体。
【請求項１４】
前記ユーザコードをユーザから受け取るためのインターフェイスコンポーネントをさらに格納することを特徴とする請求項１１に記載のコンピュータ読み取り可能媒体。
【請求項１５】
前記ワークフローに関連付けられた前記各アクティビティは、それに関連付けられたアクティビティ実行プログラムを有し、前記ワークフローコンポーネントは、前記アクティビティのそれぞれについて前記アクティビティ実行プログラムを実行することにより前記ワークフローを実行することを特徴とする請求項１１に記載のコンピュータ読み取り可能媒体。
【請求項１６】
ワークフローに関係するユーザコードを参照しつつ前記ワークフローを実行するシステムであって、
コンパイルされていないワークフローの表現およびユーザコードを格納するメモリ領域と、
プロセッサであって、
複数のアクティビティを有するワークフローを規定するためのコンピュータ実行可能命令と、
前記コンパイルされていないワークフローの表現を生成するためのコンピュータ実行可能命令と、
前記複数のアクティビティの１又は２以上との関連についてユーザコードを規定するためのコンピュータ実行可能命令と、
前記メモリ領域内に格納された前記ユーザコードをコンパイルするためのコンピュータ実行可能命令と、
前記規定されたワークフローを前記コンパイルされていないワークフローの表現及び前記メモリ領域内に格納された前記コンパイルされたユーザコードで実行するためのコンピュータ実行可能命令と、
前記規定されたワークフローが実行され続けている間に前記ユーザが前記コンパイルされていないワークフローの表現を動的に修正できるようにするためのコンピュータ実行可能命令を実行するように構成されたプロセッサと
を備えたことを特徴とするシステム。
【請求項１７】
前記複数のアクティビティの各々は、それに関連付けられたアクティビティ実行プログラムを有し、前記プロセッサは、前記アクティビティのそれぞれについて前記アクティビティ実行プログラムを実行することにより前記規定されたワークフローを実行するように構成されていることを特徴とする請求項１６に記載のシステム。
【請求項１８】
前記メモリ領域に格納されている前記ユーザコードをコンパイルするための手段をさらに備えたことを特徴とする請求項１６に記載のシステム。
【請求項１９】
前記規定されたワークフローを前記コンパイルされていないワークフローの表現及び前記コンパイルされたユーザコードに応じて実行するための手段をさらに備えることを特徴とする請求項１８に記載のシステム。
【請求項２０】
前記規定されたワークフローが実行され続けている間に、前記ユーザが前記コンパイルされていないワークフローの表現を動的に修正できるようにするための手段をさらに備えたことを特徴とする請求項１９に記載のシステム。