JP2013164673A - ソフトウェア管理システムおよびその管理方法 - Google Patents

ソフトウェア管理システムおよびその管理方法 Download PDF

Info

Publication number
JP2013164673A
JP2013164673A JP2012026384A JP2012026384A JP2013164673A JP 2013164673 A JP2013164673 A JP 2013164673A JP 2012026384 A JP2012026384 A JP 2012026384A JP 2012026384 A JP2012026384 A JP 2012026384A JP 2013164673 A JP2013164673 A JP 2013164673A
Authority
JP
Japan
Prior art keywords
scm
request
software
management system
function
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.)
Pending
Application number
JP2012026384A
Other languages
English (en)
Inventor
Satoshi Ukai
敏 鵜飼
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Toshiba Corp
Original Assignee
Toshiba Corp
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 Toshiba Corp filed Critical Toshiba Corp
Priority to JP2012026384A priority Critical patent/JP2013164673A/ja
Publication of JP2013164673A publication Critical patent/JP2013164673A/ja
Pending legal-status Critical Current

Links

Images

Landscapes

  • Stored Programmes (AREA)

Abstract

【課題】ソフトウェア構成管理システムの変更に伴う対応を最小限に抑え、長期的な運用に耐えうるソフトウェア管理システムを提供する。
【解決手段】ソフトウェア開発に係るファイルの変更履歴を含むファイル管理を行うためのサーバシステムであるソフトウェア管理システム1において、ファイル管理を行うソフトウェア構成管理システム21と、ソフトウェア管理システム1において規定された要求を、ソフトウェア構成管理システム21に対して受け付ける要求対応機能62〜66と、要求対応機能62〜66が受け付ける要求と、ソフトウェア構成管理システム21が専用に受け付ける要求とを相互に変換し、要求対応機能62〜66とソフトウェア構成管理システム21とのインタフェース機能を有するインタフェース部67とを備えた。
【選択図】 図2

Description

本発明は、ソフトウェア管理システムおよびその管理方法に関する。
近年、高度なソフトウェア構成管理機能を有するオープンソースソフトウェアやフリーソフトウェア、商用のソフトウェアが多数存在している。このため、ソフトウェア構成管理システム(SCM(Software Configuration Management)システム)を自社開発することは少なく、既存のソフトウェアを採用するのが一般的である。例えば、代表的なSCMシステムとしては、CVS、Subversion、Git、Mercurial、Bazaar(登録商標)などがある。
また、引用文献1においては、CVSやSubversionを使用したソフトウェア構成管理システムが開示されている。
特開2010−33373号公報
ソフトウェア管理システム(サーバ)は、SCMシステムを構成するソフトウェア(SCMソフトウェア)のセキュリティ問題の解消や、最新バージョンの提供にともなって、SCMソフトウェアのバージョンアップをインターネット経由で行うソフトウェアアップデート機能を有する。
特に、セキュリティ問題対応のためのアップデートは、最優先で行う必要がある。しかし、SCMソフトウェアの機能、性能などに対して、アップデート前後で確実に互換性があることや、ソフトウェアに新たな問題が含まれていないことの保証は、現実問題として困難である。
ソフトウェアアップデート機能を使用せずに、人間系によるSCMソフトウェアのバージョンアップを行った場合にも、同様に、互換性や新たな問題が含まれていないことの保証を得ることは困難である。
また、例えば、電力設備や公共設備などのインフラ向けに開発されているソフトウェアは、10〜20年にも及ぶ管理・メンテナンスが必要となる場合も少なくない。SCMソフトウェアの使用が長期にわたると、SCMソフトウェアに仕様変更や製品提供終了が発生する可能性がある。自社開発でないSCMソフトウェアを採用している場合には、仕様変更や製品提供終了に関する問題をコントロールすることはできない。これにより、ソフトウェア管理システムの品質低下が発生し、SCMシステムが管理するソース成果物の信頼性の低下が発生する恐れがある。
さらに、SCMシステムの仕様変更や新たなSCMへの入れ替えに伴い、SCMシステムに付随するソフトウェア管理システム内の各種機能との間のインタフェース部分の改造および動作検証作業が発生する可能性がある。これは、長期間にわたるソフトウェア管理システムの停止や、ソフトウェア管理システムの大規模な、改造・検証費用を発生させる。
本発明はこのような事情を考慮してなされたもので、ソフトウェア構成管理システムの変更に伴う対応を最小限に抑え、長期的な運用に耐えうるソフトウェア管理システムおよびその管理方法を提供することを目的とする。
本発明に係るソフトウェア管理システムは、上述した課題を解決するために、ソフトウェア開発に係るファイルの変更履歴を含むファイル管理を行うためのサーバシステムであるソフトウェア管理システムにおいて、前記ファイル管理を行うソフトウェア構成管理システムと、前記ソフトウェア管理システムにおいて規定された要求を受け付ける要求対応部と、前記要求対応部が受け付けた前記要求を、前記ソフトウェア構成管理システムが専用に受け付ける要求に変換し、前記要求対応部と前記ソフトウェア構成管理システムとのインタフェース機能を有するインタフェース部とを備えたことを特徴とする。
本発明に係るソフトウェア管理システムおよびその管理方法においては、ソフトウェア構成管理システムの変更に伴う対応を最小限に抑え、長期的な運用に耐えることができる。
本発明の第1実施形態に係るソフトウェア管理システムのブロック構成図。 第1実施形態におけるソース成果物操作クライアントおよびSCM I/F機能の詳細な機能ブロック構成図。 SCM健全性確認対応機能により実行されるSCM健全性確認処理を説明するフローチャート。 第1実施形態におけるソフトウェア管理システムのSMC I/F機能で実行される、SCMプラグインI/Fが各種要求を受け取った場合に実行される要求実施処理を説明するフローチャート。 本発明の第2実施形態に係るソフトウェア管理システムのブロック構成図。 第2実施形態におけるSCM I/F機能の詳細な機能ブロック構成図。 第2実施形態におけるSCM健全性確認対応機能により実行されるSCM健全性確認処理を説明するフローチャート。 図7のSCM健全性確認処理の一部の処理を説明するフローチャート。 第2実施形態におけるソフトウェア管理システムのSCMプラグインI/Fが各種要求を受け取った場合に実行される要求実施処理を説明するフローチャート。 図7、図8のSCM健全性確認処理のフラグリセットステップS50に続くSCM健全性確認処理を説明するフローチャート。 第3実施形態におけるSCM I/F機能の詳細な機能ブロック構成図。 第3実施形態におけるソフトウェア管理システムのデータ自動復元機能により実行されるデータ自動復元処理を説明するフローチャート。 第3実施形態におけるソフトウェア管理システムのSCMプラグインI/Fが各種要求を受け取った場合に実行される要求実施処理を説明するフローチャート。
本発明に係るソフトウェア管理システムおよびその管理方法の第1〜第3実施形態を添付図面に基づいて説明する。
[第1実施形態]
図1は、本発明の第1実施形態に係るソフトウェア管理システム1のブロック構成図である。
ソフトウェア管理システム1は、開発者11により開発されたファイルの変更履歴を含むファイル管理を行うためのサーバシステムである。ソフトウェア管理システム1は、ソフトウェア開発者11のソフトウェア開発用パーソナルコンピュータ(PC)2、およびソフトウェア利用者31のWebブラウザ3と通信する。
ソフトウェア開発用PC2は、ソフトウェアの開発者11により操作される。ソフトウェア開発用PC2は、ソース成果物操作クライアント12およびソース成果物13を有する。ソース成果物13は、ソフトウェア開発用PC2にて開発されたソースコードファイル、ソースコードに付随するコンパイル/ビルド情報ファイル、最終的な成果物である実行ファイル、途中成果物であるオブジェクトファイルを含むファイルである。
ソース成果物操作クライアント12は、ソフトウェア管理システム1のSCMインタフェース(I/F)機能22専用のクライアントである。ソース成果物操作クライアント12は、ソフトウェア管理システム1と通信する際、SCM I/F機能22を介して通信する。
ソース成果物操作クライアント12は、ソフトウェア管理システム1(SCM I/F機能22)に対してソース成果物13をソース成果物一時コピー23へ送信し、ソース成果物一時コピー23をSCMシステム21へ登録/管理することをSCM I/F機能22へ要求する。また、ソース成果物操作クライアント12は、ソフトウェア管理システム1に対してソース成果物一時コピー23の取り出しを要求し、SCMシステム21に管理されているソース成果物を取得する。
ソース成果物操作クライアント12は、ソフトウェア管理システム1に対して変更点確認などのため管理情報の取得を要求する。
ソフトウェア管理システム1は、ソフトウェア構成管理システム(SCMシステム)21、SCMインタフェース機能(SCM I/F機能)22、ソース成果物一時コピー23、変更点管理機能25、リリース管理機能26、その他の社内特有機能27、Webインタフェース機能28、およびソフトウェアアップデート機能29を備える。
SCMシステム21は、ソフトウェアの構成管理機能を有し、コンピュータ上で作成、編集されるファイルの変更履歴を管理するためのソフトウェアである。例えば、オープンソースソフトウェアやフリーソフトウェア、商用のソフトウェアを採用することができる(例えば、CVS、Subversion、Git、Mercurial、Bazaar)。
SCM I/F機能22は、ソフトウェア開発用PC2のソース成果物操作クライアント12や、ソフトウェア管理システム1の変更点管理機能25など各種機能と、SCMシステム21とのインタフェースである。具体的には、SCM I/F機能22は、開発者11が作成したソース成果物13がSCMシステム21へ登録、変更される場合に、ソース成果物操作クライアント12より要求を受け付け、SCMシステム21に対して送信する。SCM I/F機能22は、変更点管理機能25などがSCMシステム21により管理される情報を利用する要求を行う際、その要求を受け付け、SCMシステム21に対して送信する。
すなわち、ソフトウェア管理システム1は、SCMシステム21に対する要求はSCM I/F機能22から行われ、SCM I/F機能22以外の機能からは直接要求が行われない。
ソース成果物一時コピー23は、ソフトウェア開発用PC2より受信したソース成果物13の一時コピーである。
変更点管理機能25、リリース管理機能26、およびその他の社内特有機能27は、SCM I/F機能22を介してSCMシステム21へ各種要求を行い、必要な情報を取得する。これらの機能25〜27は、Webインタフェース機能28を経由して、Webブラウザ3を介して必要な情報を利用者31に提供する。
変更点管理機能25は、ソース成果物の変更点を変更管理情報として取得する。リリース管理機能26は、ソース成果物に含まれる実行ファイルなどのリリース対象物を取得する。その他の社内特有機能27は、変更管理情報やリリース対象物以外の本システムを運用する組織特有の機能を実現する上で必要な各種情報を取得する。
変更点管理機能25、リリース管理機能26、その他の社内特有機能27は、公知の技術を適用できるため、ここでは詳細な説明を省略する。
ソフトウェアアップデート機能29は、SCMシステム21を構成するソフトウェア(SCMソフトウェア)のセキュリティ問題の解消や、最新バージョンの提供に伴い、インターネット40経由で、SCMソフトウェアのバージョンアップを行う機能である。ソフトウェアアップデート機能29は、オペレーションシステム(OS)や、SCMソフトウェア自身により提供される。
なお、利用者31へ提供されるユーザーインタフェースは、Webインタフェース機能28およびWebブラウザ3に限らず、専用のインターフェースソフトウェアと専用のクライアントソフトウェアであってもよい。ソース成果物操作クライアント12とSCM I/F機能22との間のインタフェースは、Webブラウザをクライアントとしてもよい。
次に、ソース成果物操作クライアント12およびSCM I/F機能22の詳細な機能について説明する。
図2は、第1実施形態におけるソース成果物操作クライアント12およびSCM I/F機能22の詳細な機能ブロック構成図である。
ソース成果物操作クライアント12は、ソース成果物送受信機能51、成果物一覧情報整合機能52、変更点確認機能53、コミット機能54、チェックアウト機能55、およびSCM健全性確認機能56を有する。
SCM I/F機能22は、ソース成果物操作クライアント12の各機能51〜56に対応する、ソース成果物送受信対応機能61、成果物一覧情報整合対応機能62、変更点確認対応機能63、コミット対応機能64、チェックアウト対応機能65、およびSCM健全性確認対応機能66を有する。また、SCM I/F機能22は、SCMプラグインI/F67、異常通知機能68を有する。
ソース成果物操作クライアント12の各機能51〜56と、SCM I/F機能22の各機能61〜66とは、ソフトウェア管理システム1により規定され標準化された機能である。また、SCM I/F機能22の各機能62〜66は、ソフトウェア構成管理システムに対して、ソフトウェア管理システム1において規定された要求を受け付ける要求対応部として機能する。
SCMプラグインI/F67(インタフェース部)は、各機能61〜66とSCMシステム21とのインタフェース機能を有する。SCMプラグインI/F67は、ソフトウェア管理システム1において規定し標準化された要求を、SCMシステム21専用の要求に変換する。さらに、SCMシステム21に要求を与えて得た実施結果をソフトウェア管理システム1に送信することができる。実施結果の送信においても、ソフトウェア管理システム1が受信することができる形式に変換を行うことができる。
ソース成果物操作クライアント12の各機能51〜56は、開発者11の要求に基づき、SCM I/F機能22の対応する各機能61〜66とそれぞれ通信する。
ソース成果物送受信機能51は、ソース成果物送受信対応機能61との間で、ソース成果物13の送信、およびソース成果物一時コピー23の受信を行う。成果物一覧情報整合機能52は、成果物一覧情報整合対応機能62に対して成果物情報整合要求を行う。成果物一覧情報整合対応機能62は、SCMプラグインI/F67を介して、SCMシステム21に対して成果物情報整合要求を行う。成果物一覧情報整合対応機能62は、実施結果をSCMプラグインI/F67より受け取り、成果物一覧情報整合機能52へ通知する。
変更点確認機能53は、変更点確認対応機能63に対して変更点確認要求を行う。変更点確認対応機能63は、SCMプラグインI/F67を介して、SCMシステム21に対して変更点確認要求を行う。変更点確認対応機能63は、実施結果をSCMプラグインI/F67より受け取り、変更点確認機能53へ通知する。
コミット機能54は、コミット対応機能64に対してコミット要求を行う。コミット対応機能64は、SCMプラグインI/F67を介して、SCMシステム21に対してコミット要求を行う。コミット対応機能64は、実施結果をSCMプラグインI/F67より受け取り、コミット機能54へ通知する。
チェックアウト機能55は、チェックアウト対応機能65に対してチェックアウト要求を行う。チェックアウト対応機能65は、SCMプラグインI/F67を介してSCMシステム21に対しにチェックアウト要求を行う。チェックアウト対応機能65は、実施結果をSCMプラグインI/F67より受け取り、チェックアウト機能55へ通知する。
SCM健全性確認機能56は、SCMシステム21の健全性を確認するため、SCM健全性確認対応機能66に対して情報整合要求、変更点確認要求、コミット要求、チェックアウト要求を行う。SCM健全性確認対応機能66(健全性確認部)は、SCMプラグインI/F67を介して、健全性確認専用の模擬ファイルである模擬ソース成果物および模擬用リポジトリー(SCMシステム21により管理される、マスターとなるソース成果物およびその保管場所)を使用した要求である健全性確認要求をSCMプラグインI/F67に対して行う。
SCM健全性確認対応機能66は、SCM健全性確認機能56から健全性確認要求を受信した場合のみならず、定期的(例えば1日1回)に要求を生成し健全性の定周期チェックを実施する。
健全性確認処理の結果、診断結果、すなわちSMCシステム21に問題がない場合、SCM健全性確認対応機能66は、チェック対象のSCMプラグインI/F67を有効状態にする。診断結果に問題が発見された場合、SCM健全性確認対応機能66は、SCMプラグインI/F67を無効状態にし、異常通知機能68にSCMプラグインI/F67が無効状態であること通知する。
異常通知機能68(異常通知部)は、SCMプラグインI/F67が無効状態であることが通知された場合、SCMプラグインI/F67が無効状態になっていることをソフトウェア管理システム1外部である、異常通知機能68に登録されている対象者(一般にはシステム管理者)に対してメールなどの通知手段により通知する。
変更点管理機能25およびリリース管理機能26は、SCMシステム21より取得したい情報を、それぞれ変更点確認機能71、チェックアウト機能72を利用して取得する。その他の社内特有機能27は、SCMシステム21より取得したい情報を、変更点確認機能73、チェックアウト機能74を利用して取得する。
ソース成果物操作クライアント12の変更点確認機能53およびチェックアウト機能55とSCM I/F機能22の変更点確認対応機能63およびチェックアウト対応機能65との間で実行される処理と同様に、変更点確認機能71、73およびチェックアウト機能72、74は、変更点確認対応機能63およびチェックアウト対応機能65と通信を行い必要な情報を取得する。
本実施形態におけるソフトウェア管理システム1は、ソース成果物管理に最低限必要な、ソース成果物の送受信に必要な機能、登録/取り出しに必要な機能、変更点情報の取得に必要な機能を実現するための機能を備える一例である。ソフトウェア管理システム1は、SCMシステム21が一般的に提供している上記以外の機能を備えてもよく、上記以外の機能を備える場合、各機能はSCM I/F機能22を介してSCMシステム21と通信するようになっている。
次に、第1実施形態におけるソフトウェア管理システム1の動作について説明する。
以下、フローチャートを用いてSCM健全性確認対応機能66がSCMシステム21の健全性を確認するための処理、およびSCMプラグインI/F67がソース成果物操作クライアント12や変更点管理機能25などから各種要求を受け取った場合に実行される処理を説明する。
図3は、SCM健全性確認対応機能66により実行されるSCM健全性確認処理を説明するフローチャートである。
SCM健全性確認対応機能66は、SCM健全性確認機能56または内部で一定周期で発生する健全性確認要求の受信待ちを行う(ステップS1)。要求を受信した場合、SCM健全性確認対応機能66は、SCMプラグインI/F67に対して情報整合要求を指示し、SCMプラグインI/F67はSCMシステム21に対して情報整合要求を実施する(ステップS2)。他の各種要求を受け付けた場合のSCMプラグインI/F67の動作については、図4で詳述する。
SCM健全性確認対応機能66は、予測されている診断結果が得られたかチェックする(ステップS3)。診断結果に問題がない場合(ステップS3の「問題なし」)、SCM健全性確認対応機能66は、SCMプラグインI/F67に対して変更点確認要求を指示し、SCMプラグインI/F67は変更点確認要求を実施する(ステップS4)。SCM健全性確認対応機能66は、予測されている診断結果が得られたかチェックする(ステップS5)。
診断結果に問題がない場合(ステップS5の「問題なし」)、SCM健全性確認対応機能66は、SCMプラグインI/F67に対してコミット要求を指示し、SCMプラグインI/F67はコミット要求を実施する(ステップS6)。SCM健全性確認対応機能66は、予測されている診断結果が得られたかチェックする(ステップS7)。診断結果に問題がない場合(ステップS7の「問題なし」)、SCM健全性確認対応機能66は、SCMプラグインI/F67に対してチェックアウト要求を指示し、SCMプラグインI/F67はチェックアウト要求を実施する(ステップS8)。
SCM健全性確認対応機能66は、予測されている診断結果が得られたかチェックする(ステップS9)。診断結果に問題がない場合(ステップS9の「問題なし」)、SCM健全性確認対応機能66は、健全性確認の対象となったSCMプラグインI/F67を有効状態にする(ステップS10)。その後、処理はステップS1に戻り、健全性確認要求の受信待ちを行う。
一方、各診断結果に問題がある場合(ステップS3、S5、S7、S9の「問題あり」)、SCM健全性確認対応機能66は、健全性確認対象のSCMプラグインI/F67を無効状態にする(ステップS11)。SCM健全性確認対応機能66は、異常通知機能68にSCMプラグインI/F67が無効状態であること通知する(ステップS12)。その後、SCM健全性確認対応機能66は、ステップS1に戻り健全性確認要求の受信待ちを行う。
図4は、第1実施形態におけるソフトウェア管理システム1のSMC I/F機能22で実行される、SCMプラグインI/F67が各種要求を受け取った場合に実行される要求実施処理を説明するフローチャートである。
図4においては、オープンソフトウェアとして提供されるSCMシステムであるBazaarを用いた場合のコマンドを実装例として説明する。なお、図4に示すコマンドのうち、「src_path」は、ソース成果物一時コピーの保存場所を示す。「msg」は、コミット時に残すメッセージを示す。「br_path」は、取り出したい成果物が入っているブランチのパスを示す。なお、Bazaarとは別のSCMシステムが実装される場合は、このコマンドを相当の処理に置き換えることで同等の機能が提供される。
この処理は、各種機能より常時要求の受信待ちを行う(ステップS21)。
要求を受信した場合、SCMプラグインI/F67が有効状態であるか否かの判定が行われる(ステップS22)。SCMプラグインI/F67が無効状態であると判定された場合(ステップS22のNO)、SCMプラグインI/F67から要求元にSCMプラグインI/F67が無効状態であることが通知され(ステップS23)、処理は要求受信待ち状態に戻る(ステップS21)。
SCMプラグインI/F67が有効状態の場合(ステップS22のYES)、SCMプラグインI/F67に対する要求内容のチェックが行われる(ステップS24)。要求内容が成果物一覧情報整合機能52(成果物一覧情報整合対応機能62)からの成果物情報整合要求である場合、SCMプラグインI/F67は、SCMシステム21に対して情報整合用のコマンドを実行する(ステップS25)。
要求内容が変更点確認機能53(変更点確認対応機能63)や変更点確認機能71、73からの変更点確認要求である場合、SCMプラグインI/F67は、SCMシステム21に対して変更点確認用のコマンドを実行する(ステップS26)。
要求内容がコミット機能54(コミット対応機能64)からのコミット要求である場合、SCMプラグインI/F67は、SCMシステム21に対してコミット用のコマンドを実行する(ステップS27)。
要求内容がチェックアウト機能55(チェックアウト対応機能65)や、チェックアウト機能72、74からのチェックアウト要求である場合、SCMプラグインI/F67は、SCMシステムに対してチェックアウト用のコマンドを実行する(ステップS28)。
SCMプラグインI/F67は、SCMシステム21の動作結果を要求元に返し(ステップS29)、再度要求受信待ち状態(ステップS21)に戻る。
第1実施形態のソフトウェア管理システム1によれば、開発者11などの人間系によりソフトウェアアップデート機能29におけるSCMシステム21のアップデートが実施された場合、ソフトウェア開発用PC2のSCM健全性確認機能56がソフトウェア管理システム1のSCM健全性確認対応機能66に対して健全性を確認するための要求を行う。また、ソフトウェア管理システム1内部においても、一定周期でSCMシステム21の健全性を確認するための要求を行う。
これにより、ソフトウェア管理システム1は、ソフトウェアのアップデートに起因するSCMシステム21の問題を検出することができる。
SCMシステム21に問題がある場合、ソフトウェア管理システム1は、SCMプラグインI/F67を無効状態にする。これによりソフトウェア管理システム1は、従来のソフトウェア管理システムにて想定される、アップデートに起因する品質低下が発生した状態での運用に対する課題を抑制することができる。
ソフトウェア管理システム1およびその管理方法は、SCM I/F機能22を設けることにより、SCMシステム21の互換性の問題や、新たなSCMシステム21の採用によりソフトウェア管理システム1に改造が必要になった場合にも対処することができる。具体的には、SCMシステム21の変更が生じた場合には、新たなSCMシステム21の仕様に合わせて、SCMプラグインI/F67のSCMシステム21に対してコマンドを実行する部分のみを改造し、SCMプラグインI/F67に対する要求に対する動作/応答に関してのみ検証を行うことで、品質を確保することができる。
また、SCM I/F機能22を設けるにあたり、従来から用いられるソフトウェア開発用PC2、変更点管理機能25、リリース管理機能26、その他の社内特有機能27などに対しては、従来同等のSCMシステム21の機能を提供でき、さらに最終的な利用者31に対しても従来システムの同様の機能を提供することができる。
このため、従来システムの問題であった変更点管理機能25、リリース管理機能26、その他の社内特有機能27、およびSCMシステム21に付随して提供されるソース成果物操作クライアント12に対する改造が発生せず、システム停止時間の短縮、改造・検証費用の抑制が可能となる。
[第2実施形態]
図5は、本発明の第2実施形態に係るソフトウェア管理システム100のブロック構成図である。
図6は、第2実施形態におけるSCM I/F機能122の詳細な機能ブロック構成図である。
なお、第1実施形態と同一の構成には同一の符号を付し、重複する説明は省略する。また、図5および図6においては、説明の都合上、第1実施形態と対応する構成および部分の図示を省略する。
第2実施形態におけるソフトウェア管理システム100が第1実施形態と異なる点は、2つ以上のSCMシステム(第2実施形態においては3つのSCMシステム121a〜121c)が設けられる点である。これらのSCMシステム121a〜121cは、それぞれ異なる種類のシステムソフトウェアを含むSCMシステムである。
各SCMシステム121a〜121cには、優先度が付与されている。第2実施形態においては、SCMシステム121a、SCMシステム121b、SCMシステム121cの順に高い優先度が付与される。優先度は、ソフトウェア開発用PC2や変更点管理機能25などから送信される要求を実施する際に、優先的に利用されるSCMシステムを判別するために利用される。
また、ソフトウェア管理システム100は、各SCMシステム121a〜121cと同数のSCMプラグインI/F167a〜167cを備え、各SCMプラグインI/F167a〜167cは各SCMシステム121a〜121cに対して専用に設けられる。
第2実施形態におけるソフトウェア管理システム100の動作について説明する。第2実施形態におけるソフトウェア管理システム100は、SCM健全性確認対応機能166によりSCMプラグインI/F167a〜167cに対して順番に健全性確認処理を行う。また、ソフトウェア管理システム100は、健全性確認完了後、有効状態であるSCMプラグインI/Fに対して、予め付与された優先度に応じて優先フラグをセットする。
以下、ソフトウェア管理システム100のSCM健全性確認対応機能166により実行されるSCM健全性確認処理をフローチャートを用いて説明する。
図7は、第2実施形態におけるSCM健全性確認対応機能166により実行されるSCM健全性確認処理を説明するフローチャートである。
図8は、図7のSCM健全性確認処理の一部の処理を説明するフローチャートである。
SCM健全性確認対応機能166は、SCM健全性確認機能56または内部で一定周期で発生する健全性確認要求の受信待ちを行う(ステップS31)。要求を受信した場合、SCM健全性確認対応機能166は、SCMプラグインI/F167a〜167cに対して順次各種要求を実施する(ステップS32)。各種要求を受け付けた場合のSCMプラグインI/F167a〜167cの動作については、図9で詳述する。
ステップS33〜S43の処理は、図4のSCM健全性確認処理の情報整合要求実施ステップS2〜無効状態通知ステップS12とほぼ同様であるため、詳細な説明を省略する。
全てのSCMプラグインI/F167a〜167cで各種要求の実施が完了した場合(ステップS32の「全てで実施完了」)、図8に示すように、SCM健全性確認対応機能166は、最も優先度の高いSCMプラグインI/F167aが有効状態であるか否かの判定を行う(ステップS44)。SCM健全性確認対応機能166は、SCMプラグインI/F167aが有効状態であると判定した場合(ステップS44のYES)、SCMプラグインI/F167aに優先フラグをセットする(ステップS45)。
SCM健全性確認対応機能166は、SCMプラグインI/F167aが無効状態であると判断した場合(ステップS44のNO)、SCM健全性確認対応機能166は、2番目に優先度の高いSCMプラグインI/F167bが有効状態であるか否かの判定を行う(ステップS46)。SCM健全性確認対応機能166は、SCMプラグインI/F167bが有効状態であると判定した場合(ステップS46のYES)、SCMプラグインI/F167bに優先フラグをセットする(ステップS47)。
SCM健全性確認対応機能166は、SCMプラグインI/F167bが無効状態であると判断した場合(ステップS46のNO)、SCM健全性確認対応機能166は、3番目に優先度の高いSCMプラグインI/F167cが有効状態であるか否かの判定を行う(ステップS48)。SCM健全性確認対応機能166は、SCMプラグインI/F167cが有効状態であると判定した場合(ステップS48のYES)、SCMプラグインI/F167cに優先フラグをセットする(ステップS49)。
SCM健全性確認対応機能166は、SCMプラグインI/F167cが無効状態であると判断した場合(ステップS48のNO)、全てのSCMプラグインI/F167a〜167cが無効状態であるため、全てのSCMプラグインI/F167a〜167cにセットされている優先フラグをリセットする(ステップS50)。優先フラグがセットまたはリセットされた後、処理は再び健全性確認要求の受信待ち状態(図7のステップS31)に戻る。
次に、SCMプラグインI/F167a〜167bが各種要求を受け取った場合にSCM I/F機能122で実行される処理について説明する。この要求実施処理は、各SCMプラグインI/F167a〜167cに対して同様に実施される。すなわち、成果物一覧情報整合対応機能62などの各種機能から要求を受け取った場合、全てのSCMプラグインI/F167a〜167cに対して同じ要求を送信する。
図9は、第2実施形態におけるソフトウェア管理システム100のSCMプラグインI/F167a〜167cが各種要求を受け取った場合に実行される要求実施処理を説明するフローチャートである。
SCMプラグインI/F167a〜167cの処理においては、SCMシステム121a〜121cの種類が異なるため、各要求に対して実施されるコマンド実行処理がシステム間で異なる。図9においては、オープンソフトウェアとして提供されるSCMシステムであるBazaarを用いた場合のコマンドを実装例として説明する。例えば、他のSCMシステムにBazaar同様のオープンソースソフトウェアとして提供されているMercurialを用いる場合、情報整合用のコマンドは「hg add src_path」のように異なるものとなる。
各SCMシステム121a〜121cに用いられるソフトウェアの種類に応じてコマンドが異なる点以外は、各SCMプラグインI/F167a〜167cで実行される処理はほぼ同様であるため、本処理の説明においては、SCMシステム121a〜121cを単にSCMシステム121とし、SCMプラグインI/F167a〜167cを単にSCMプラグインI/F167として説明する。
ステップS61〜S64は、図4の要求受信待ちステップS21〜要求チェックステップS24とほぼ同様であるため、ここでは説明を省略する。
要求内容が成果物一覧情報整合対応機能62などからの成果物情報整合要求である場合、SCMプラグインI/F167は、SCMシステム121に対して情報整合用のコマンドを実行する(ステップS65)。要求内容が変更点確認対応機能63などからの変更点確認要求である場合、SCMプラグインI/F167に対して優先フラグがセットされているか否かの判定が行われる(ステップS66)。SCMプラグインI/F167に対して優先フラグがセットされていると判定された場合(ステップS66のYES)、SCMプラグインI/F167は、SCMシステム121に対して変更点確認用のコマンドを実行する(ステップS67)。
要求内容がコミット対応機能64からのコミット要求である場合、SCMプラグインI/F167は、SCMシステム121に対してコミット用のコマンドを実行する(ステップS68)。要求内容がチェックアウト対応機能65などからのチェックアウト要求である場合、SCMプラグインI/F167に対して優先フラグがセットされているか否かの判定が行われる(ステップS69)。
SCMプラグインI/F167に対して優先フラグがセットされていると判定された場合(ステップS69のYES)、SCMプラグインI/F167は、SCMシステム121に対してチェックアウト用のコマンドを実行する(ステップS70)。SCMプラグインI/F167は、SCMシステム121の動作結果を要求元に返し(ステップS71)、再度要求受信待ち状態(ステップS61)に戻る。
一方、SCMプラグインI/F167に優先フラグがセットされていないと判定された場合(ステップS66、S69のNO)、要求元にSCMプラグインI/F167が無効状態であることを通知し(ステップS63)、要求受信待ち状態に戻る(ステップS61)。
図9の要求実施処理においては、SCMプラグインI/F167に対して変更点確認要求またはチェックアウト要求があった場合、各要求に対するコマンドの実行前に、要求対象となるSCMプラグインI/F167に優先フラグがセットされているか否かの判定が行われる。優先フラグがセットされている場合には、各要求に対する処理が実行される。一方、優先フラグがリセットされている場合には、SCMプラグインI/F167が無効状態である場合と同じ動作(ステップS63)を行う。
すなわち、この要求実施処理は、SCMシステム121へソース成果物一時コピー23を登録する方向の要求である、成果物情報整合要求、コミット要求に対しては要求の実施は制限しない。一方、SCMシステム121より情報を取り出す方向の要求に対しては、有効状態であり、かつ、優先フラグがセットされている(最も優先度の高い)SCMプラグインI/F167だけが処理を行う。
優先フラグは、2つ以上のSCMプラグインI/F167に同時にセットされることはないので、有効状態のSCMプラグインI/F167が複数存在していても、1つのSCMプラグインI/F167から情報が返されるようになっている。
第2実施形態のソフトウェア管理システム100によれば、複数のSCMシステム121a〜121cに対してソース成果物13の登録を実施する一方、情報の取り出しは、有効状態かつ優先度の高いSCMシステム121a〜121cから行うことができる。
例えば、アップデートに起因する品質低下が発生する場合、複数の種類の異なるSCMシステム121a〜121cに対して同時に問題が発生する可能性は非常に低いと考えられるため、非常に高い可用性が実現できる。また、同一種類の場合は、ソフトウェア管理システム100が多重化され、高い信用性を実現することができる。
なお、ソフトウェア管理システム100の信頼性をより向上させるため、SCM健全性確認処理のフラグリセットステップS50(図8)において、全ての優先フラグがリセットされた場合に以下の図10のSCM健全性確認処理を実行してもよい。図10のSCM健全性確認処理は、多数決論理を適用するため、SCMシステム(SCMプラグインI/F)が3つ以上ある場合に適用可能である。
図10は、図7、図8のSCM健全性確認処理のフラグリセットステップS50に続くSCM健全性確認処理を説明するフローチャートである。
SCM健全性確認対応機能166は、各SCMプラグインI/F167a〜167c(SCMプラグインI/F167)に対して、それぞれ変更点確認要求を実施する。ここでは、図7の変更点確認要求(ステップS35)とは異なり、実際のリポジトリーに対して要求が実施される。SCM健全性確認対応機能166は、各SCMシステム121a〜121c(SCMシステム121)から得られた結果を記憶する(ステップS71)。
SCM健全性確認対応機能166は、得られた結果を比較する(ステップS72)。SCM健全性確認対応機能166は、比較結果に多数決の論理を適用し、SCMプラグインI/F167のうち他の2つのSCMプラグインI/F167とは不一致である結果を返したSCMプラグインI/F167を異常とみなし、無効状態にする(ステップS73)。なお、SCMプラグインI/Fが偶数個設けられる場合には多数決論理が適用できない場合がある。この場合、多数決論理のほか、予めSCMプラグインI/F167に付与された優先度などを考慮して、有効状態か無効状態かを判定することができる。
SCM健全性確認対応機能166は、全ての結果が不一致である場合には、全てのSCMプラグインI/F167を無効状態にする(ステップS74)。SCM健全性確認対応機能166は、全ての結果が一致する場合には、各SCMプラグインI/F167に対してチェックアウト要求を実施する。ここでは、図7のチェックアウト要求(ステップS39)とは異なり、実際のリポジトリーに対してチェックアウト要求が実施される。SCM健全性確認対応機能166は、各SCMシステム121から得られた結果を記憶する(ステップS75)。
SCM健全性確認対応機能166は、得られた結果を比較する(ステップS76)。SCM健全性確認対応機能166は、変更点確認要求を行う場合と同様に、SCMプラグインI/F167のうち他の2つのSCMプラグインI/F167とは不一致である結果を返したSCMプラグインI/F167を異常とみなし、無効状態にする(ステップS77)。SCM健全性確認対応機能166は、全ての結果が不一致である場合には、全てのSCMプラグインI/F167を無効状態にする(ステップS78)。
SCM健全性確認対応機能166は、SCMプラグインI/F167を無効状態にした場合には、異常通知機能68にSCMプラグインI/F167が無効状態であること通知する(ステップS79)。
SCM健全性確認対応機能166は、チェックアウト要求の全ての結果が一致する場合(ステップS76の「全てのSCMプラグインI/Fが一致」)、またはSCMプラグインI/Fの無効状態を通知した(ステップS79)後、図7の要求受信待ちステップS31に戻り健全性確認要求の受信待ちを行う。
この図10のSCM健全性確認処理によれば、模擬ソース成果物および模擬リポジトリーを使用してSCMシステム121a〜121c単体の異常を検出する方法では検出しきれない問題を、多数決論理で検出することにより、より信頼性の高いソフトウェア管理システム100を実現できる。
[第3実施形態]
図11は、第3実施形態におけるSCM I/F機能222の詳細な機能ブロック構成図である。第1および第2実施形態と同一の構成には同一の符号を付し、重複する説明は省略する。また、図11においては、説明の都合上、第1および第2実施形態と対応する構成および部分の図示を省略する。
なお、ソフトウェア管理システム200全体のブロック構成図については、図5とほぼ同様であるため図面を用いた説明を省略する。
第3実施形態におけるソフトウェア管理システム200が、第2実施形態と異なる点は、データ自動復元機能269が追加された点である。データ自動復元機能269(自動復元部)は、SCM健全性確認対応機能266により無効状態にされたSCMプラグインI/F267a〜267cを監視する。データ自動復元機能269は、有効状態のSCMプラグインI/F267a〜267c経由で取得したソース成果物から無効状態のSCMプラグインI/F267a〜267cに対応するSCMシステム121a〜121cを復元する。
以下、無効状態であるSCMプラグインI/F267a〜267cに対するデータ自動復元機能269の処理について、フローチャートを用いて説明する。
図12は、第3実施形態におけるソフトウェア管理システム200のデータ自動復元機能269により実行されるデータ自動復元処理を説明するフローチャートである。
データ自動復元機能269は、一定周期(例えば1分周期)でデータ自動復元処理を繰り返す(ステップS81)。データ自動復元機能269は、無効状態のSCMプラグインI/F267a〜267cがあるかチェックする(ステップS82)。無効状態のSCMプラグインI/F267a〜267cがない場合(ステップS82の「なし」)、ステップS81に戻り次の周期が到来するまで待機する。無効状態のSCMプラグインI/F267a〜267cがある場合(ステップS82の「あり」)、データ自動復元機能269は、有効状態のSCMプラグインI/F267a〜267cがあるかチェックする(ステップS83)。有効状態のSCMプラグインI/F267a〜267cがない場合(ステップS83の「なし」)、ステップS81に戻り次の周期が到来するまで待機する。
有効状態のSCMプラグインI/F267a〜267cがある場合(ステップS83の「あり」)、データ自動復元機能269は、無効状態のSCMプラグインI/F267a〜267cに復元中状態をセットする(ステップS84)。データ自動復元機能269は、有効状態のSCMプラグインI/F267a〜267cに対してチェックアウト要求を実施し、ソース成果物を復元用ファイルとして取得する(ステップS85)。
データ自動復元機能269は、復元中状態のSCMプラグインI/F267a〜267cに対して、取得したソース成果物用の成果物情報整合要求を実施する(ステップS86)。また、データ自動復元機能269は、復元中状態のSCMプラグインI/F267a〜267cに対して、取得したソース成果物用のコミット要求を実施する(ステップS87)。
データ自動復元機能269は、復元中状態のSCMプラグインI/F267a〜267c(SCMシステム121a〜121c)に対して全てのソース成果物を復元したか否かを判定する(ステップS88)。全てのソース成果物が復元されていない場合(ステップS88のNO)、全ての成果物が復元されるまでチェックアウト要求ステップS85〜復元判定ステップS88を繰り返す。
全てのソース成果物が復元された場合(ステップS88のYES)、データ自動復元機能269は、SCMプラグインI/F267a〜267cの復元中状態をリセットする(ステップS89)。処理はステップS81に戻り、次の周期が到来するまで待機する。
次に、データ自動復元機能269の要求に基づいてSCMプラグインI/F267a〜267cが実行する要求実施処理についてフローチャートを用いて説明する。
図13は、第3実施形態におけるソフトウェア管理システム200のSCMプラグインI/F267a〜267cが各種要求を受け取った場合に実行される要求実施処理を説明するフローチャートである。
ステップS91およびS92は、図9の要求受信待ちステップS61および要求チェックステップS62とほぼ同様であるため、ここでは説明を省略する。対象となるSCMプラグインI/F267a〜267cが有効状態である場合(ステップS92のYES)、以降の処理は第2実施形態の図9の要求実施処理のコマンド実行ステップS65〜結果送信ステップS71とほぼ同様であるためここでは説明を省略する。
要求の対象となるSCMプラグインI/F267a〜267cが有効状態ではない場合(ステップS92のNO)、要求は復元中状態のSCMプラグインI/F267a〜267cに対してであり、かつデータ自動復元機能269からの要求であるか否かの判定が行われる(ステップS93)。要求は復元中状態のSCMプラグインI/F267a〜267cに対してではなく、またはデータ自動復元機能269からの要求ではない場合(ステップS93のNO)、要求元に対象となるSCMプラグインI/F267a〜267cは無効状態であることが通知され(ステップS94)、処理は要求受信待ち状態に戻る(ステップS91)。
要求は復元中状態のSCMプラグインI/F267a〜267cに対してであり、かつデータ自動復元機能269からの要求である場合(ステップS93のYES)、SCMプラグインI/F267a〜267cに対する要求内容のチェックが行われる(ステップS95)。
この場合、図12のデータ自動復元処理で説明したように、データ自動復元機能269は、いずれかの有効状態であるSCMプラグインI/F267a〜267cに対してチェックアウト要求を行う。また、データ自動復元機能269は、復元中状態のSCMプラグインI/F267a〜267cに対して、取得されたソース成果物用の情報整合要求およびコミット要求、すなわち、ソース成果物を登録する方向の要求を行う。SCMプラグインI/F267a〜267cは、データ自動復元機能269から送信される要求に対して所定のコマンドを実行する。
すなわち、受信した要求が、復元中状態であるSCMプラグインI/F267a〜267cに対するデータ自動復元機能269からの要求である場合には、SCMプラグインI/F267a〜267cが無効状態の場合であっても受信した要求の処理が実施される。以降の処理は第1および第2実施形態と同様であるため、ここでは説明を省略する。
第3実施形態におけるソフトウェア管理システム200によれば、異常検出されたSCMプラグインI/F267a〜267cおよびSCMシステム121a〜121cを自動的に復旧できる可能性があり、より可用性の高いソフトウェア管理システムを実現できる。
このソフトウェア管理システム200は、第2実施形態で説明した多数決論理において検出されるSCMシステム121a〜121cの異常に起因する問題ではなく、ソフトウェア管理システム内の記憶装置の異常などに起因する、登録されているソース成果物データの異常などが発生している場合において、特に有効である。
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
1、100、200 ソフトウェア管理システム
2 ソフトウェア開発用パーソナルコンピュータ(PC)
12 ソース成果物操作クライアント
13 ソース成果物
21、121a〜121c ソフトウェア構成管理システム(SCMシステム)
22、122、222 SCMインタフェース機能(SCM I/F機能)
23 ソース成果物一時コピー
25 変更点管理機能
26 リリース管理機能
27 その他の社内特有機能
29 ソフトウェアアップデート機能
51 ソース成果物送受信機能
52 成果物一覧情報整合機能
53 変更点確認機能
54 コミット機能
55 チェックアウト機能
56 SCM健全性確認機能
61 ソース成果物送受信対応機能
62 成果物一覧情報整合対応機能
63 変更点確認対応機能
64 コミット対応機能
65 チェックアウト対応機能
66、166、266 SCM健全性確認対応機能
67、167a〜167c、267a〜267c SCMプラグインI/F
68 異常通知機能
71、73 変更点確認機能
72、74 チェックアウト機能
269 データ自動復元機能

Claims (10)

  1. ソフトウェア開発に係るファイルの変更履歴を含むファイル管理を行うためのサーバシステムであるソフトウェア管理システムにおいて、
    前記ファイル管理を行うソフトウェア構成管理システムと、
    前記ソフトウェア管理システムにおいて規定された要求を受け付ける要求対応部と、
    前記要求対応部が受け付けた前記要求を、前記ソフトウェア構成管理システムが専用に受け付ける要求に変換し、前記要求対応部と前記ソフトウェア構成管理システムとのインタフェース機能を有するインタフェース部とを備えたことを特徴とするソフトウェア管理システム。
  2. 前記ソフトウェア構成管理システムの健全性を確認する健全性確認要求を前記インタフェース部に送信し、前記健全性確認要求に対して前記ソフトウェア構成管理システムから得られる結果に基づいて前記ソフトウェア構成管理システムの健全性を診断し、前記結果に問題がある場合前記インタフェース部を無効状態にし、前記結果に問題がない場合前記インタフェース部を有効状態にする健全性確認部をさらに備えた請求項1記載のソフトウェア管理システム。
  3. 健全性確認要求は、前記ソフトウェア構成管理システムが管理するファイルとは異なる健全性確認用の模擬ファイルを用いて実施される請求項2記載のソフトウェア管理システム。
  4. 前記健全性確認部が前記インタフェースを無効状態にした場合、前記インタフェース部が無効状態である旨の通知を前記ソフトウェア管理システム外部に通知する異常通知部をさらに備えた請求項2記載のソフトウェア管理システム。
  5. 前記インタフェース部は前記無効状態である場合、前記要求を行った前記要求対応部に対して無効状態である旨を通知する請求項2記載のソフトウェア管理システム。
  6. 前記ソフトウェア構成管理システムは、2つ以上設けられ、
    前記インタフェース部は前記ソフトウェア構成管理システムの数と同数設けられ、各インタフェース部は各前記ソフトウェア構成管理システムに対して専用に設けられ、
    各前記ソフトウェア構成管理システムには、優先的に利用されるソフトウェア構成管理システムを判別するために利用される優先度が予め付与され、
    前記要求は、前記有効状態であるインタフェース部のうち、最も優先度の高いインタフェース部に対して送信される請求項2記載のソフトウェア管理システム。
  7. 最も優先度の高いソフトウェア構成管理システムに対応するインタフェース部に対して送信される要求は、前記ソフトウェア構成管理システムより所定のファイルを取り出す方向の要求である請求項6記載のソフトウェア管理システム。
  8. 前記ソフトウェア構成管理システムは、3つ以上設けられ、
    前記インタフェース部は前記ソフトウェア構成管理システムの数と同数設けられ、各インタフェース部は各前記ソフトウェア構成管理システムに対して専用に設けられ、
    前記健全性確認部は、前記健全性確認要求に対して前記ソフトウェア構成管理システムより得られる結果に多数決論理を適用して、前記ソフトウェア構成管理システムの健全性を診断する請求項2記載のソフトウェア管理システム。
  9. 無効状態であるインタフェース部と有効状態であるインタフェース部とが存在する場合、有効状態のインタフェース部に対し所定のファイルを復元用ファイルとして取り出す要求を行い、得られた前記復元用ファイルを用いて前記無効状態のインタフェース部に対して前記復元用ファイルを登録する方向の要求を行う自動復元部をさらに備えた請求項2記載のソフトウェア管理システム。
  10. ソフトウェア開発に係るファイルの変更履歴を含むファイル管理を行うためのサーバシステムであるソフトウェア管理方法において、
    前記ソフトウェア管理システムにおいて規定された要求を受け付け、
    前記要求を前記ファイル管理を行うソフトウェア構成管理システムが専用に受け付ける要求に変換し、
    前記変換された要求を前記ソフトウェア構成管理システムに送信し、
    前記ソフトウェア構成管理システムから得られる前記要求に対する結果を前記要求の要求元に送信するソフトウェア管理方法。
JP2012026384A 2012-02-09 2012-02-09 ソフトウェア管理システムおよびその管理方法 Pending JP2013164673A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2012026384A JP2013164673A (ja) 2012-02-09 2012-02-09 ソフトウェア管理システムおよびその管理方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2012026384A JP2013164673A (ja) 2012-02-09 2012-02-09 ソフトウェア管理システムおよびその管理方法

Publications (1)

Publication Number Publication Date
JP2013164673A true JP2013164673A (ja) 2013-08-22

Family

ID=49175999

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2012026384A Pending JP2013164673A (ja) 2012-02-09 2012-02-09 ソフトウェア管理システムおよびその管理方法

Country Status (1)

Country Link
JP (1) JP2013164673A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111367555A (zh) * 2020-03-23 2020-07-03 北京字节跳动网络技术有限公司 断言的方法、装置、电子设备及计算机可读介质

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111367555A (zh) * 2020-03-23 2020-07-03 北京字节跳动网络技术有限公司 断言的方法、装置、电子设备及计算机可读介质
CN111367555B (zh) * 2020-03-23 2023-08-08 抖音视界有限公司 断言的方法、装置、电子设备及计算机可读介质

Similar Documents

Publication Publication Date Title
US8087013B2 (en) Assisted migration in a data processing environment
US8522207B1 (en) Systems and methods for automated centralized build/merge management
US8726090B2 (en) Information processing system, management apparatus, information processing apparatus, and computer program product
US9754242B2 (en) Deployment mechanism for non-versioning business process artifacts
US20130339933A1 (en) Systems and methods for quality assurance automation
CN110162334B (zh) 一种代码管理方法、装置及存储介质
US20160162263A1 (en) Visual and interaction design integrated development infrastructure
US11847437B2 (en) Performing translations on change requests
CN112131013A (zh) 分布式系统中调用链的监控方法、装置、设备及存储介质
CN103649924A (zh) 嵌入式装置、程序产生装置和程序
CN111966382A (zh) 机器学习模型的在线部署方法、装置及相关设备
US10719313B2 (en) Providing external access to a processing platform
CN109299124B (zh) 用于更新模型的方法和装置
US11734057B2 (en) Method and apparatus for processing a service of an abnormal server
CN110580216B (zh) 一种应用提测的方法和装置
JP2013164673A (ja) ソフトウェア管理システムおよびその管理方法
US10114635B2 (en) Software development support
CN115729590A (zh) 服务部署方法、装置、设备和计算机可读存储介质
WO2022057564A1 (zh) 通信方法及装置、系统
US10291700B2 (en) Network optimized scan with dynamic fallback recovery
CN114021133A (zh) 代码处理方法、装置、电子设备和存储介质
EP3780551A1 (en) Method and system for managing assets in a cloud computing environment
CN111104415A (zh) 一种时区更新方法、装置、电子设备及存储介质
US20230047978A1 (en) System and Method for Real-Time Configuration Analysis
US20170052803A1 (en) Dynamically provisioning, managing, and executing tasks