ログイン
検索
メインメニュー
フォーラム一覧   -   トピック一覧
   astah*の使い方
     Astah API ユースケース記述でのアクター取得の仕方
投稿するにはまず登録を

スレッド表示 | 新しいものから 前のトピック | 次のトピック | 下へ
投稿者 トピック
mjackson
投稿日時: 2011-5-16 20:43
新米
登録日: 2010-11-19
居住地:
投稿: 7
Astah API ユースケース記述でのアクター取得の仕方
こんばんは。

プロジェクトからユースケース記述を取得して
Excelに貼り付けるようなプログラムを作ろうと
思っています。

そこで、APIによってアクター以外は取得できましたが、
アクターだけが取得できません。

取得方法を教えてください。

下記に、取得方法を示します。

// クラスで定義
private static final String SUMMARY = "uc.description.summary";	       // 概要
private static final String PRE_COND = "uc.description.precondition";  // 事前条件
private static final String POST_COND = "uc.description.postcondition"; // 事後条件
private static final String BASE_SEQ = "uc.description.base_sequence"; // 基本シーケンス
private static final String BRANCH_SEQ = "uc.description.branch_sequence"; // 代替シーケンス
private static final String EXPT_SEQ = "uc.description.exception_sequence"; // 例外シーケンス
private static final String NOTE = "uc.description.note"; // 備考

// プロジェクトオープン/クローズ等は省く

INamedElement[] iNamedElements = prjAccessor
                                      .findElements(IUseCase.class);
for (INamedElement nameEl : iNamedElements) {
  IUseCase uc = (IUseCase) nameEl;
  System.out.println("ユースケース : "+uc.getName());
  System.out.println("概要 : " + uc.getTaggedValue(SUMMARY));
  System.out.println("アクター : ?");
  System.out.println("事前条件 : \n" + uc.getTaggedValue(PRE_COND));
  System.out.println("事後条件 : \n" + uc.getTaggedValue(POST_COND));
  System.out.println("基本シーケンス : \n" + uc.getTaggedValue(BASE_SEQ));
  System.out.println("代替シーケンス : \n" + uc.getTaggedValue(BRANCH_SEQ));
  System.out.println("例外シーケンス : \n" + uc.getTaggedValue(EXPT_SEQ));
  System.out.println("サブユースケース : \n");
  for(IInclude i : uc.getIncludes()){
    System.out.println(i.getAddition().getName());
  }
  System.out.println("備考 : \n" + uc.getTaggedValue(NOTE));
}

umeda
投稿日時: 2011-5-18 11:03
開発者
登録日: 2006-5-9
居住地:
投稿: 50
Re: Astah API ユースケース記述でのアクター取得の仕方
mjacksonさん、こんにちは。

開発やってる梅田と申します。

ユースケースとアクターの間の関係が、クラス間の関係と同じだとは考えづらいので、わかりにくいですよね。
実際にユースケースにつながっているアクターを取得するときは、下記のように書きます。

IAttribute[] actorRefs = uc.getAttributes();
for (IAttribute actorRef : actorRefs) {
System.out.println(actorRef.getType().getName());
}

他にも何かございましたら、お気軽にご質問ください。

それでは!
mjackson
投稿日時: 2011-5-23 11:56
新米
登録日: 2010-11-19
居住地:
投稿: 7
Re: Astah API ユースケース記述でのアクター取得の仕方
ありがとうございます。
後は、ApacheのPOIを利用してExcelでドキュメントがかけそうです。
また、よろしくお願いします。
スレッド表示 | 新しいものから 前のトピック | 次のトピック | トップ

投稿するにはまず登録を