JP5649171B2 - クライアント上で実行されるアプリケーションのローカル環境を共有可能にする方法、並びにそのサーバ及びコンピュータ・プログラム - Google Patents
クライアント上で実行されるアプリケーションのローカル環境を共有可能にする方法、並びにそのサーバ及びコンピュータ・プログラム Download PDFInfo
- Publication number
- JP5649171B2 JP5649171B2 JP2010266585A JP2010266585A JP5649171B2 JP 5649171 B2 JP5649171 B2 JP 5649171B2 JP 2010266585 A JP2010266585 A JP 2010266585A JP 2010266585 A JP2010266585 A JP 2010266585A JP 5649171 B2 JP5649171 B2 JP 5649171B2
- Authority
- JP
- Japan
- Prior art keywords
- client
- environment
- server
- clone
- information
- 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
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/08—Protocols specially adapted for terminal emulation, e.g. Telnet
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/20—Software design
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/70—Software maintenance or management
- G06F8/71—Version control; Configuration management
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/445—Program loading or initiating
- G06F9/44505—Configuring for program initiating, e.g. using registry, configuration files
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/10—Office automation; Time management
- G06Q10/101—Collaborative creation, e.g. joint development of products or services
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/131—Protocols for games, networked simulations or virtual reality
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
- G06F2009/45562—Creating, deleting, cloning virtual machine instances
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Business, Economics & Management (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Human Resources & Organizations (AREA)
- Entrepreneurship & Innovation (AREA)
- Strategic Management (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Marketing (AREA)
- Economics (AREA)
- Data Mining & Analysis (AREA)
- Operations Research (AREA)
- Quality & Reliability (AREA)
- Tourism & Hospitality (AREA)
- General Business, Economics & Management (AREA)
- Computer Security & Cryptography (AREA)
- Stored Programmes (AREA)
- Information Transfer Between Computers (AREA)
Description
上記第1のクライアントのユーザからの上記クローン環境の構築の要請に応じて、上記第1のクライアントと異なる少なくとも1つの他のクライアント(以下、第2のクライアントという)から、上記クローン環境に参加する通知を受信するステップと、
上記第1のクライアントが保持する上記ローカル環境についての情報を使用して、上記クローン環境を当該サーバ上に構築するステップと、
上記第1のクライアント及び上記クローン環境に参加する通知を送信した第2のクライアントが上記クローン環境上でコンテンツを編集し又は閲覧することを可能にするステップと
を含む。
上記第1のクライアントのユーザからの上記クローン環境の構築の要請に応じて、上記第1のクライアントが保持する上記ローカル環境についての情報を使用して、上記クローン環境を当該サーバ上に構築するステップと、
上記第1のクライアントと異なる少なくとも1つの他のクライアント(第2のクライアント)から、上記サーバ上に構築された上記クローン環境に参加する通知を受信するステップと、
上記第1のクライアント及び上記クローン環境に参加する通知を送信した第2のクライアントが上記クローン環境上でコンテンツを編集し又は閲覧することを可能にするステップと
を含む。
上記ローカル環境についての情報を使用して、当該情報に基づいて上記クローン環境を構築するための環境(例えば、開発環境)の構成要素を当該サーバに関連付けられたレポジトリ(例えば、ソフトウェア構成管理(SCM:Software Configuration Management)サーバ)、又は、クライアント環境の構成要素を保持するデータベースから取り出すステップと、
上記取り出された構成要素に、上記第1のクライアントが保持する上記アプリケーションのローカル環境の構成要素をマージするステップと
を含む。
当該サーバ上でファイルの編集が開始されることに応じて、当該ファイル名に関連付けられた情報が上記第1のクライアントから送信されてきているかどうかをチェックするステップと、
上記ファイル名に関連付けられた情報が上記第1のクライアントに送信されてきていないことに応じて、
上記ファイル名を上記第1のクライアントに送信するステップと、
上記送信したファイル名に関連付けられた情報を上記第1のクライアントから取得するステップと、
上記取得された情報に対応するパラメータを当該サーバ上にあるレジストリから取り出すステップと、
上記ファイル名に関連付けられた情報が上記第1のクライアントに送信されてきていることに応じて、
上記記ファイル名に関連付けられた情報に対応するパラメータを当該サーバ上にあるレジストリから取り出すステップと、
上記取り出されたパラメータに、上記第1のクライアントが保持する上記アプリケーションのローカル環境のパラメータをマージするステップと
を含む。
上記第1のクライアントと異なる少なくとも1つの他のクライアント(第2のクライアント)から、上記クローン環境に参加する通知を受信する受信手段と、
上記第1のクライアントが保持する上記ローカル環境についての情報を使用して、上記クローン環境を当該サーバ上に構築する構築手段と、
上記第1のクライアント及び上記クローン環境に参加する通知を送信した第2のクライアントが上記クローン環境上でコンテンツを編集し又は閲覧することを可能にするクローン処理手段と
を備えている。
コンピュータ(101)は、CPU(102)とメイン・メモリ(103)とを備えており、これらはバス(104)に接続されている。CPU(102)は好ましくは、32ビット又は64ビットのアーキテクチャに基づくものであり、例えば、インテル社のCore i(商標)シリーズ、Core 2(商標)シリーズ、Atom(商標)シリーズ、Xeon(商標)シリーズ、Pentium(登録商標)シリーズ、Celeron(登録商標)シリーズ、AMD社のPhenom(商標)シリーズ、Athlon(商標)シリーズ、Turion(商標)シリーズ又はSempron(商標)が使用されうる。バス(104)には、ディスプレイ・コントローラ(105)を介して、ディスプレイ(106)、例えば液晶ディスプレイ(LCD)が接続されうる。ディスプレイ(106)は、コンピュータの管理のために、通信回線を介してネットワークに接続されたコンピュータについての情報と、そのコンピュータ上で動作中のソフトウェアについての情報を、適当なグラフィック・インタフェースで表示するために使用される。バス(104)にはまた、SATA又はIDEコントローラ(107)を介して、記憶装置(108)、例えばハードディスク又はソリッド・ステート・ドライブと、ドライブ(109)、例えばCD、DVD又はBDドライブとが接続されうる。バス(104)にはさらに、キーボード・マウスコントローラ(110)又はUSBバス(図示せず)を介して、キーボード(111)及びマウス(112)が接続されうる。
ドライブ(109)は、必要に応じて、CD−ROM、DVD−ROM又はBDからプログラムをディスク(108)にインストールするために使用される。
サーバ(201)は、複数のクライアント(202−1〜202−n)とネットワーク(205)を介して接続されている。サーバ(201)及び各クライアント(202−1〜202−n)とネットワーク(205)との接続は、有線又は無線のいずれであってもよい。
また、クローン環境構築手段(211)は、サーバ(201)上でファイルの編集が開始されることに応じて、当該ファイルのファイル名を第1のクライアント(202−1)に送信し、当該送信したファイル名に関連付けられた情報を第1のクライアント(202−1)から取得し、当該取得された情報に対応するパラメータをサーバ(201)上にあるレジストリから取り出し、当該取り出されたパラメータに、第1のクライアント(202−1)が保持するアプリケーションのローカル環境のパラメータをマージする。
下記に本発明の実施態様を概略的に説明する。
サーバ(201)は、クライアント(202−1〜202−4)とネットワーク(図示せず)を介して接続されている。クライアント(202−1〜202−4)の数は例示であり、これに制限されるものでない。また、サーバ(201)は、SCMサーバ(203)とネットワーク(図示せず)を介して接続されている。
ステップ401では、第1のクライアント(202−1)は、サーバ(201)上でクローン環境を構築するというユーザ命令を待つ。
当該クローン環境が構築されることに応じて、第1のクライアント(202−1)及び参加要請を受諾したクライアントは、サーバ(201)上に構築されたクローン環境を使用してペア・プログラミングを開始する準備ができる。当該ペア・プログラミングの開始前に、第1のクライアント(202−1)は、上記参加要請を受諾したクライアントがペア・プログラミングに参加又は閲覧することを許可するかどうかを決定しうる。当該決定は、ユーザによって個々に判断されてもよいし、第1のクライアント(202−1)に予め格納された許可テーブルの内容から判断されてもよい。または、当該決定は、開発プロジェクトのリーダはデフォルトで参加が許可されるように、プロジェクト管理サーバにおいて自動的に判断されるようにしうる。
または、ステップ411では、参加中の第2のクライアントのエンジニアがペア・プログラミングを終了することを当該第2のクライアント画面を通じて入力する(図16を参照)。参加中の第2のクライアントからのペア・プログラミングの終了の通知を受信することに応じて、サーバ(201)は、ペア・プログラミングを終了する。
サーバ(201)は、クローン環境で行われた操作を変更セットとして記録する。変更セットは、例えば、操作ログである。また、サーバ(201)は、クローン環境で行われた操作に関連する情報を記録する。当該操作に関連する情報は、例えば、ペア・プログラミングに参加したクライアントの情報(例えばIPアドレス)、ユーザ名、作業の開始又は終了時間を包含する。サーバ(201)は、変更セットをSCMサーバ(203)に登録する。また、サーバ(201)は、必要に応じて、変更セットを第1のクライアント(202−1)に送信する。第1のクライアント(202−1)は、上記変更セットをサーバ(201)から受信し、ローカル環境の対応するデータにマージしうる。
図5は、図4のステップ403〜404とステップ405〜406との順番が入れ替わった実施態様(ステップ503〜506)である。
ステップ501〜502及びステップ507〜511それぞれは、ステップ401〜402及びステップ407〜411に対応する。
図6のフローチャートは、図4のステップ405及び図5のステップ503のステップの内容を詳しく説明したフローチャートである。
図7のフローチャートは、図4のステップ406及び図5のステップ504のステップの内容を詳しく説明したフローチャートである。
図8のフローチャートは、図4のステップ403及び図5のステップ505のステップの内容を詳しく説明したフローチャートである。
図9のフローチャートは、図4のステップ407及び図5のステップ507のステップの内容を詳しく説明したフローチャートである。コンテンツの新規編集又はコンテンツの編集中において、図7のフローチャートに従い構築されたクローン環境に組み込まれなかったファイルなどが当該編集において必要になった場合に、当該クローン環境の補完が行われうる。
図10のフローチャートは、図4のステップ410及び図5のステップ510のステップの内容を詳しく説明したフローチャートである。
また、ペア・プログラミングの終了に応じて、第1のクライアント(202−1)の画面は、クローン環境の画面(例えば下記図13を参照)からローカル環境の画面(例えば下記図11を参照)に自動的に切り替わる。または、当該終了に応じて、第1のクライアント(202−1)の画面から、クローン環境のウィンドウ(例えば下記図14を参照)が消える。
図11は、エンジニアAのクライアント(202−1)の画面(1101)を示す。画面(1101)は、IDEアプリケーションの編集画面を示す。エンジニアAは、ペア・プログラミングの募集(サーバ上でのクローン環境の構築の要請)をしたいとする。エンジニアAは、画面(1101)上のボタン「ペア募集」(1121)をマウス等でクリックする。それに応じて、ペア募集ダイアログのウィンドウ(1131)が画面(1101)上に表示される。ペア募集ダイアログのウィンドウ(1131)は、例えば、IDEアプリケーションのタスク番号を指定するためのダイアログ・ボックス(1132)、編集するファイルを選択するためのダイアログ・ボックス(1133〜1134)、ペア候補を指定するためのダイアログ・ボックス(1135〜1137)、ペア開始時期を指定するためのダイアログ・ボックス(1138)、並びに「OK」ボタン(1139)及び「キャンセル」ボタン(1140)を有する。エンジニアAは、タスク番号をダイアログ・ボックス(1132)に指定可能である。また、エンジニアAは、ペア・プログラミングを行う編集対象であるファイルをダイアログ・ボックス(1133)に入力又は指定可能である。また、例えば、ソースコードの行の指定は、例えば、ソースファイルをブラウズするダイアログで行うようにすることができる。また、エンジニアAは、ペア・プログラミングを行うペア候補を入力又は指定可能である。なお、入力又は指定において、エンジニアの各名前を直接入力するだけでなく、チーム名、グループ名又は組織名が選択可能なようにしうる。また、エンジニアAは、ペア開始時期を指定しうる。なお、エンジニアAは、ペア開始時期を、別途、統合開発環境のスケジュール管理機能又はカレンダ機能を使用して指定しうる。タスク番号、編集するファイル、ペア候補、及び/又はペア開始時期が入力又は指定された後に、エンジニアAが、「OK」ボタンを押すことによって、エンジニアAのクライアント(202−1)から、サーバ(201)にペア募集の通知が送信される。そして、サーバ(201)上に、クライアント(202−1)の現在のワークスペースと同等のクローン環境が構築される。当該クローン環境の構築において、クライアント(202−1)の現在のワークスペースで使用されているベースラインと、編集するファイル一覧で指定されたファイル情報とが使用されうる。
図12は、エンジニアAのクライアント(202−1)の画面(1101)を示す。当該画面(1101)は、ペア応募者ダイアログ(1231)を有する。ここで、エンジニアAのペア募集に対して、エンジニアB(202−2)、エンジニアC(202−3)及びエンジニアD(202−4)が応募したとする。ペア応募者ダイアログ(1231)は、エンジニアAに対して、エンジニアB(202−2)、エンジニアC(202−3)及びエンジニアD(202−4)のうちの誰とペア・プログラミングをするかの選択を許すためのダイアログ・ボックス(1233、1234及び1235)を表示する。エンジニアAは、応募者の全て又は一部(例えばエンジニアBさんとエンジニアDさん)とペア・プログラミングすることを許可することも可能であり、又は応募者の全てとのペア・プログラミングを拒否することも可能である。エンジニアAがエンジニアBとのペア・プログラミングを希望したとする。エンジニアAがダイアログ・ボックス(1233)をマウス等でクリックし、「OK」ボタンを押すことによって、エンジニアAのクライアント(202−1)から、サーバ(201)に許可された(すなわち、ペア・プログラミングを行う)相手がエンジニアBである情報が送信される。そして、サーバ(201)は、エンジニアBに関連付けられたコンピュータ(202−2)に、ペア開始可能であることを伝える。一方、エンジニアAによって選択されなかったエンジニアC及びDについては、エンジニアC及びDにそれぞれ関連付けられたコンピュータ(202−3及び202−4)に、ペア開始が拒否されたことを伝える。
図13は、エンジニアAのクライアント(202−1)の画面を示す。当該画面では、ローカルのIDEアプリケーションの編集画面(以下、ローカル環境における編集画面ともいう)(1101)が、サーバ(201)上に構築されたクローン環境におけるIDEアプリケーションの編集画面(以下、クローン環境における編集画面ともいう)(1301)に置き換わっている例を示す。クローン環境における編集画面(1301)であることをエンジニアAに示すために、クローン環境における編集画面(1301)はクローンであることを示す表示(1322)を有しうる。または、クローン環境における編集画面(1301)の背景色をローカル環境における編集画面(1101)の背景色と異なる色に設定し、エンジニアAに対してクローン環境における編集画面(1301)であることを示すことが可能である。
また、クローン環境における編集画面(1301)は、ペア・プログラミングを実行中であること、その編集対象であるタスクが「123」であること、及びペア・プログラミングを行っているエンジニアの名称を表示しうる(1314a)。
ペア・プログラミングにおいて、コードに対する変更は変更作業をしたクライアントからサーバ(201)に送信される。サーバ(201)は、各クライアントから送信された変更内容を編集ログとして保存する。
図14は、エンジニアAのクライアント(202−1)の画面を示す。当該画面では、エンジニアAのローカルにおけるIDEアプリケーションの編集画面(ローカル環境における編集画面)のウィンドウ(1101)上に、サーバ(201)上に構築されたクローン環境におけるIDEアプリケーションの編集画面(クローン環境における編集画面)のウィンドウ(1401)が別に表示されている。クローン環境における編集画面(1401)のウィンドウであることをエンジニアAに示すために、クローン環境における編集画面はクローンであることを示す表示(1423)を有しうる。または、クローン環境における編集画面(1401)の背景色をローカル環境における編集画面の背景色と異なる色に設定し、エンジニアAに対していずれの画面であるかを示すことが可能である。
また、クローン環境における編集画面は、ペア・プログラミングを実行中であること、その編集対象であるタスクが「123」であること、及びペア・プログラミングを行っているエンジニアの名称を表示しうる(1414)。
また、クライアント(202−1)は、クローン環境における編集画面のウィンドウ(1401)が消去されるまで、ローカル環境における編集画面のウィンドウ(1101)をアクティブにできないように設定しうる。すなわち、クライアント(202−1)は、ペア・プログラミングが終了することに応じて、クローン環境における編集画面のウィンドウ(1401)を消去するとともに、ローカル環境における編集画面のウィンドウ(1101)をアクティブにしうる。
図15は、エンジニアAとペア・プログラミングを行う相手であるエンジニアBのクライアント(202−2)の画面(1501)を示す。画面(1501)は、エンジニアAからのペア参加ダイアログ(1531)を表示する。ペア参加の募集は、例えば、エンジニアBのクライアント(202−2)の統合開発環境、ダッシュボード、又はメール若しくはインスタント・メッセンジャを通じてエンジニアBに通知されうる。ペア参加ダイアログ(1531)は、例えば、ペア要請者の名前、「今すぐ参加」可能であること又は後に参加可能であること(例えば「下記予定で参加」)を知らせるためのダイアログ・ボックス(1533、1534)を有する。エンジニアBが「今すぐ参加」のダイアログ・ボックス(1533)を選択し、「OK」ボタンを押すことによって、今すぐにペア参加可能であることがサーバ(201)に伝えられる。また、エンジニアBが今すぐにペア参加せずに参加可能である予定日付及び必要に応じて時間を指定した場合、その参加可能である予定日付及び時間がサーバ(201)に伝えられる。また、ペア参加ダイアログ(1531)、コンテンツの編集又は閲覧のいずれを行うかを選択可能なチェックボックスを有しうる(図示せず)。
図16は、エンジニアBのクライアント(202−2)の画面(1501)を示す。当該画面(1501)は、サーバ(201)上に構築されたクローン環境におけるIDEアプリケーションの編集又は閲覧画面を有する(1611、1612、1613、1614)。また、画面(1501)は、ペア・プログラミングを実行中であること、その編集対象であるタスクが「123」であること、及びペア・プログラミングを行っているエンジニアの名前を表示しうる(1614)。
図17は、エンジニアAの第1のクライアント(202−1)の画面(1301)を示す。エンジニアAはペア・プログラミングの終了をしたいとする。エンジニアAは、画面(1301)上のボタン「ペア終了」(1322)をマウス等でクリックする。それに応じて、ペア終了ダイアログのウィンドウ(1731)が画面(1301)上に表示される。ペア終了ダイアログのウィンドウ(1731)は、現在編集中のタスク番号を示すボックス(1732)、コメントを記載するためのボックス(1733)、及び編集結果をマージするマージ先候補のダイアログ・ボックス(1734、1735、1736)、並びに「OK」ボタン(1737)及び「キャンセル」ボタン(1738)を有する。エンジニアAは、マージ先をダイアログ・ボックス(1734、1735、1736)から選択可能である。マージ先は、例えば、第1のクライアント(202−1)(1734)及びSCMサーバ(203)(1735)である。エンジニアAは、1又は複数のマージ先を指定し、必要に応じてコメントを記入して、「OK」ボタンを押す。当該「OK」ボタンが押されることに応じて、ペア・プログラミングが終了する。また、ペア・プログラミング中の編集結果が、指定されたマージ先に格納される。また、ペア・プログラミングが終了することに応じて、エンジニアAのクライアント(202−1)の画面(1301)は、ローカル環境の画面に切り替わる。
Claims (18)
- 少なくとも2のクライアント・コンピュータ(以下、クライアントという)と当該クライアントにネットワークを介して接続されうるサーバ・コンピュータ(以下、サーバという)とを備えるコンピューティング環境において、前記少なくとも2のクライアントのうちの1つのクライアント(以下、第1のクライアントという)上で実行されるアプリケーションのローカル環境を共有可能にする方法であって、前記サーバが、
前記第1のクライアントのユーザからの前記ローカル環境のクローン(以下、クローン環境という)の構築の要請に応じて、前記第1のクライアントと異なる少なくとも1つの他のクライアント(以下、第2のクライアントという)から、前記クローン環境に参加する通知を受信するステップと、
前記第1のクライアントが保持する前記ローカル環境についての情報を使用して、前記クローン環境を当該サーバ上に構築するステップと、
前記第1のクライアント及び前記クローン環境に参加する通知を送信した第2のクライアントが前記クローン環境上でコンテンツを編集し又は閲覧することを可能にするステップと
を実行すること含む、前記方法。 - 前記構築するステップが、
前記ローカル環境についての情報を使用して、当該情報に基づいて前記クローン環境を構築するための環境の構成要素を当該サーバに関連付けられたレポジトリから取り出すステップと、
前記取り出された構成要素に、前記第1のクライアントが保持する前記アプリケーションのローカル環境の構成要素をマージするステップと
を含む、請求項1に記載の方法。 - 前記クローン環境上でコンテンツを編集し又は閲覧することを可能にすることが、前記第1のクライアントに、当該第1のクライアントの画面上のローカル環境を前記クローン環境に切り替えさせること、又は、前記第1のクライアントに、当該第1のクライアントの画面上に前記クローン環境のウィンドウを表示させることによって実現される、請求項1に記載の方法。
- 前記サーバが、
前記参加する通知の受信に応答して、前記第2のクライアント又は当該第2のクライアントに関連付けられたユーザが前記クローン環境に参加することの許否を、前記第1のクライアントに問い合わせるステップ
を実行することさらに含み、
前記第2のクライアント又は当該第2のクライアントに関連付けられたユーザが前記クローン環境に参加することの承認を前記第1のクライアントから受信することに応じて、前記構築するステップが実行される、請求項1に記載の方法。 - 前記サーバが、前記クローン環境で行われた編集又は閲覧の操作ログである変更セットを、当該サーバに関連付けられた記憶装置内に保存するステップ、又は前記第1のクライアントに送信するステップを実行することをさらに含む、請求項1に記載の方法。
- 前記サーバが、前記クローン環境での参加者の識別子、又は、作業の開始時間及び終了時間を当該サーバに関連付けられた記憶装置内に保存するステップを実行することをさらに含む、請求項1に記載の方法。
- 前記ローカル環境についての情報が、開発環境のランタイム情報、前記アプリケーションにおいて使用するファイル、ドキュメント又はコードのベースライン情報、又はプライベート・ファイル情報である、請求項1に記載の方法。
- 前記開発環境のランタイム情報が、統合開発環境の種類、仮想マシンのバージョン、又はソフトウェア構成管理サーバ名である、請求項7に記載の方法。
- 前記ベースライン情報が、ファイル、ドキュメント又はコードのバージョン管理情報である、請求項7に記載の方法。
- 前記プライベート・ファイル情報が、編集対象であるコンテンツに関連付けられたソース又はライブラリである、請求項8に記載の方法。
- 前記構築するステップが、前記ローカル環境についての情報及び前記ローカル環境の構成要素を前記第1のクライアントから受信するステップをさらに含む、請求項2に記載の方法。
- 前記アプリケーションのローカル環境が、統合開発環境、オフィス・アプリケーション環境又は教育支援環境である、請求項1〜11のいずれか一項に記載の方法。
- 前記コンテンツが、ドキュメント、コード、オフィス・アプリケーション・データ又は教育支援ファイルである、請求項1〜12のいずれか一項に記載の方法。
- 少なくとも2のクライアント・コンピュータ(以下、クライアントという)と当該クライアントにネットワークを介して接続されうるサーバ・コンピュータ(以下、サーバという)とを備えるコンピューティング環境において、前記少なくとも2のクライアントのうちの1つのクライアント(以下、第1のクライアントという)上で実行されるアプリケーションのローカル環境を共有可能にする方法であって、前記サーバが、
前記第1のクライアントのユーザからの前記ローカル環境のクローン(以下、クローン環境という)の構築の要請に応じて、前記第1のクライアントが保持する前記ローカル環境についての情報を使用して、前記クローン環境を当該サーバ上に構築するステップと、
前記第1のクライアントと異なる少なくとも1つの他のクライアント(以下、第2のクライアントという)から、前記クローン環境に参加する通知を受信するステップと、
前記第1のクライアント及び前記クローン環境に参加する通知を送信した第2のクライアントが前記クローン環境上でコンテンツを編集し又は閲覧することを可能にするステップと
を実行すること含む、前記方法。 - 前記サーバが、
前記参加する通知の受信に応答して、前記参加する通知を送信した第2のクライアント又は当該第2のクライアントに関連付けられたユーザが前記クローン環境に参加することの許否を、前記第1のクライアントに問い合わせるステップ
を実行することさらに含み、
前記参加する通知を送信した第2のクライアント又は当該第2のクライアントに関連付けられたユーザが前記クローン環境に参加することの承認を前記第1のクライアントから受信することに応じて、前記編集し又は閲覧することを可能にするステップが実行される、請求項14に記載の方法。 - 少なくとも2のクライアント・コンピュータ(以下、クライアントという)と当該クライアントにネットワークを介して接続されうるサーバ・コンピュータ(以下、サーバという)とを備えるコンピューティング環境において、前記少なくとも2のクライアントのうちの1つのクライアント(以下、第1のクライアントという)上で実行されるアプリケーションのローカル環境を共有可能にするサーバであって、
前記第1のクライアントのユーザからの前記ローカル環境のクローン(以下、クローン環境という)の構築の要請に応じて、前記第1のクライアントと異なる少なくとも1つの他のクライアント(以下、第2のクライアントという)から、前記クローン環境に参加する通知を受信する受信手段と、
前記第1のクライアントが保持する前記ローカル環境についての情報を使用して、前記クローン環境を当該サーバ上に構築する構築手段と、
前記第1のクライアント及び前記ローカル環境に参加する通知を送信した第2のクライアントが前記クローン環境上でコンテンツを編集し又は閲覧することを可能にするクローン処理手段と
を備えている、前記サーバ。 - 少なくとも2のクライアント・コンピュータ(以下、クライアントという)と当該クライアントにネットワークを介して接続されうるサーバ・コンピュータ(以下、サーバという)とを備えるコンピューティング環境において、前記少なくとも2のクライアントのうちの1つのクライアント(以下、第1のクライアントという)上で実行されるアプリケーションのローカル環境を共有可能にするサーバであって、
前記第1のクライアントのユーザからの前記ローカル環境のクローン(以下、クローン環境という)の構築の要請に応じて、前記第1のクライアントが保持する前記ローカル環境についての情報を使用して、前記クローン環境を当該サーバ上に構築する構築手段と、
前記第1のクライアントと異なる少なくとも1つの他のクライアント(以下、第2のクライアントという)から、前記クローン環境に参加する通知を受信する受信手段と、
前記第1のクライアント及び前記ローカル環境に参加する通知を送信した第2のクライアントが前記クローン環境上でコンテンツを編集し又は閲覧することを可能にするクローン処理手段と
を備えている、前記サーバ。 - 少なくとも2のクライアント・コンピュータ(以下、クライアントという)と当該クライアントにネットワークを介して接続されうるサーバ・コンピュータ(以下、サーバという)とを備えるコンピューティング環境において、前記少なくとも2のクライアントのうちの1つのクライアント(以下、第1のクライアントという)上で実行されるアプリケーションのローカル環境を共有可能にするサーバに、請求項1〜15のいずれか一項に記載の方法の各ステップを実行させるコンピュータ・プログラム。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2010266585A JP5649171B2 (ja) | 2010-11-30 | 2010-11-30 | クライアント上で実行されるアプリケーションのローカル環境を共有可能にする方法、並びにそのサーバ及びコンピュータ・プログラム |
US13/304,290 US10659522B2 (en) | 2010-11-30 | 2011-11-23 | Sharing application local environment |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2010266585A JP5649171B2 (ja) | 2010-11-30 | 2010-11-30 | クライアント上で実行されるアプリケーションのローカル環境を共有可能にする方法、並びにそのサーバ及びコンピュータ・プログラム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2012118674A JP2012118674A (ja) | 2012-06-21 |
JP5649171B2 true JP5649171B2 (ja) | 2015-01-07 |
Family
ID=46127354
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2010266585A Active JP5649171B2 (ja) | 2010-11-30 | 2010-11-30 | クライアント上で実行されるアプリケーションのローカル環境を共有可能にする方法、並びにそのサーバ及びコンピュータ・プログラム |
Country Status (2)
Country | Link |
---|---|
US (1) | US10659522B2 (ja) |
JP (1) | JP5649171B2 (ja) |
Families Citing this family (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9213515B2 (en) * | 2012-09-24 | 2015-12-15 | At&T Intellectual Property I, L.P. | On-demand multi-screen computing |
JP6048957B2 (ja) | 2012-12-21 | 2016-12-21 | インターナショナル・ビジネス・マシーンズ・コーポレーションInternational Business Machines Corporation | 情報処理装置、プログラム、及び情報処理方法 |
WO2014112089A1 (ja) * | 2013-01-17 | 2014-07-24 | 株式会社日立製作所 | 計算機システム、及びプログラム |
CN103268246B (zh) * | 2013-05-20 | 2016-01-20 | 南京师范大学 | 一种分布式结对编程交流中的自动干预方法及其装置 |
US9934075B2 (en) | 2013-06-28 | 2018-04-03 | Empire Technology Development Llc | Managing associated tasks using a task manager in communication devices |
US9483261B2 (en) * | 2014-07-10 | 2016-11-01 | International Business Machines Corporation | Software documentation generation with automated sample inclusion |
JP6029117B2 (ja) | 2014-07-31 | 2016-11-24 | インターナショナル・ビジネス・マシーンズ・コーポレーションInternational Business Machines Corporation | ソースコードの共有を支援する装置及び方法 |
US10013273B1 (en) * | 2016-06-22 | 2018-07-03 | Amazon Technologies, Inc. | Virtual machine termination management |
US20200210599A1 (en) * | 2018-12-31 | 2020-07-02 | Ultimate Knowledge Corporation | OpenDash System For Managing A Plurality Of Software Services Including Within A Cyber Range |
Family Cites Families (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2002140278A (ja) * | 2000-10-31 | 2002-05-17 | Sony Corp | 情報処理装置および方法、並びに記録媒体 |
JP4203657B2 (ja) * | 2004-02-27 | 2009-01-07 | インターナショナル・ビジネス・マシーンズ・コーポレーション | コラボレーションサーバ、コラボレーションシステム、その方法及びプログラム |
JP5002975B2 (ja) | 2006-02-08 | 2012-08-15 | 富士電機株式会社 | プログラム開発支援システム |
JP2007226287A (ja) * | 2006-02-21 | 2007-09-06 | Yokogawa Electric Corp | システム環境再現方法およびシステム環境修正方法 |
KR100796374B1 (ko) | 2006-04-21 | 2008-01-21 | (주) 디엠디 | 네트워크 기반의 정보기술 솔루션 개발관리 시스템 및 그방법 |
US20070288884A1 (en) * | 2006-06-13 | 2007-12-13 | Vince Carl Brunssen | Managing non-essential formatting elements peculiar to individual program developers in source code in a system for shared computer program development |
US8464209B2 (en) | 2007-03-19 | 2013-06-11 | Microsoft Corporation | Using collaborative development information in a team environment |
US20080244418A1 (en) * | 2007-03-30 | 2008-10-02 | Microsoft Corporation | Distributed multi-party software construction for a collaborative work environment |
US20090228576A1 (en) * | 2008-03-06 | 2009-09-10 | Rosenan Avner | System and method for testing software |
US8365167B2 (en) * | 2008-04-15 | 2013-01-29 | International Business Machines Corporation | Provisioning storage-optimized virtual machines within a virtual desktop environment |
US8543998B2 (en) * | 2008-05-30 | 2013-09-24 | Oracle International Corporation | System and method for building virtual appliances using a repository metadata server and a dependency resolution service |
CH702260B1 (de) * | 2008-09-08 | 2014-06-30 | Credit Suisse Securities Usa Llc | Umgebungsentwicklungsvorrichtung. |
US8190569B2 (en) * | 2009-04-03 | 2012-05-29 | Wishlist Holdings Limited | System and method for site cloning |
US8204908B2 (en) * | 2009-11-24 | 2012-06-19 | Sap Ag | Team support in change recording and versioning systems |
-
2010
- 2010-11-30 JP JP2010266585A patent/JP5649171B2/ja active Active
-
2011
- 2011-11-23 US US13/304,290 patent/US10659522B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
US20120136925A1 (en) | 2012-05-31 |
US10659522B2 (en) | 2020-05-19 |
JP2012118674A (ja) | 2012-06-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5649171B2 (ja) | クライアント上で実行されるアプリケーションのローカル環境を共有可能にする方法、並びにそのサーバ及びコンピュータ・プログラム | |
US8132092B2 (en) | Automated management of internet and/or web site content | |
De Roure et al. | myExperiment: defining the social virtual research environment | |
US20080046862A1 (en) | Business task management | |
JP4268093B2 (ja) | 会議遷移制御方法、会議遷移制御サーバおよび会議遷移制御プログラム | |
US7814030B2 (en) | Systems and methods for managing enterprise IT support planning | |
US8701083B2 (en) | Systems and methods for varying software build properties using primary and supplemental build files | |
US20140129585A1 (en) | Information management systems and methods | |
JPWO2009116163A1 (ja) | アプリケーション開発支援装置、プログラム及び記録媒体 | |
JP2009181329A (ja) | アプリケーション開発支援装置及びプログラム | |
US8788313B2 (en) | Decentralised audit system in collaborative workflow environment | |
US8984001B2 (en) | System and method for digital assistance agents in product lifecycle management | |
JP2002259642A (ja) | 情報管理方法、情報管理装置、及びそれに適用されるプログラム | |
JP7277877B2 (ja) | 看板基盤の業務処理装置及び業務処理方法 | |
JP2006195833A (ja) | ワークフローシステム、そのプログラム | |
JP4714199B2 (ja) | アプリケーション開発支援装置及びプログラム | |
JP2000215244A (ja) | ワ―クプロセス管理装置 | |
JP4262655B2 (ja) | ワークフローシステム及びワークフローシステムの管理方法 | |
JP2023110808A (ja) | スマートタグ基盤の業務処理装置及び業務処理方法 | |
JP2021125264A (ja) | 情報処理装置 | |
JP7039903B2 (ja) | 情報処理システム、情報処理装置、プログラム及び画面共有端末制御方法 | |
JP3939904B2 (ja) | ワークフローシステム、文書承認方法および記憶媒体 | |
KR20030004838A (ko) | 기업 업무 관리 시스템 및 그 제어방법 | |
JP5691516B2 (ja) | 画面情報提供プログラムおよび画面情報提供方法 | |
JP7095478B2 (ja) | 情報処理装置及びプログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20130903 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20140528 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20140627 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A821 Effective date: 20140701 Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20140701 |
|
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: 20141020 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A821 Effective date: 20141020 |
|
RD14 | Notification of resignation of power of sub attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7434 Effective date: 20141020 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20141107 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5649171 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |