[第8章 構造化分析しよう] [第9章 フローチャートを使ってみよ …astah*...

14
株式会社チェンジビジョン 使用バージョン:astah* 6.0, 6.1 astah* チュートリアル [第 8 章 構造化分析しよう] [第 9 章 フローチャートを使ってみよう] [第 10 章 トレーサビリティマップを使ってみよう] 目次 構造化分析しよう 2 構造化分析とは 2 DFD(データフロー図) 3 DFD(データフロー図)を使ってみよう 4 フローチャートを使ってみよう 9 トレーサビリティマップを使ってみよう 13

Upload: others

Post on 19-Jan-2021

0 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: [第8章 構造化分析しよう] [第9章 フローチャートを使ってみよ …astah* チュートリアル 第8 章 構造化分析しよう 4 / 14 DFD(データフロー図)を使ってみよう

株式会社チェンジビジョン 使用バージョン:astah* 6.0, 6.1

astah* チュートリアル [第 8 章 構造化分析しよう] [第 9 章 フローチャートを使ってみよう] [第 10 章 トレーサビリティマップを使ってみよう]

目次

構造化分析しよう 2

構造化分析とは 2

DFD(データフロー図) 3

DFD(データフロー図)を使ってみよう 4

フローチャートを使ってみよう 9

トレーサビリティマップを使ってみよう 13

Page 2: [第8章 構造化分析しよう] [第9章 フローチャートを使ってみよ …astah* チュートリアル 第8 章 構造化分析しよう 4 / 14 DFD(データフロー図)を使ってみよう

astah* チュートリアル 第 8 章 構造化分析しよう

2 / 14

構造化分析しよう

構造化分析とは

構造化分析(Structured Analysis)は、トム・デマルコによって考案され、1970 年代後半から普及した要求を階層的

に設計していく分析手法です。構造化分析では、データフロー図(DFD)、データディクショナリ、ミニ仕様書と

いったツールを利用します。

ツール 概要 astah*での対応

データフロー図(DFD) データの流れを表現する図 デマルコ式/ゲイン・サーソン式で編集可能。

外部エンティティ、プロセス、データスト

ア、アンカー、データフローが表現可能。

データディクショナリ システムのデータのディクショナリ(辞

書)で、データフローの詳細な構成内容を

記載するもの

astah*では未対応。

ミニ仕様書 プロセスにつき1つ、プロセスの基本機

能について記述する仕様書のこと

astah*では未対応ですが、

Excel で作成し、ハイパーリンクを張るなど

という対応も可能。

参考書籍:

『構造化分析とシステム仕様』 日経 BP 出版センター トム・デマルコ著

実際には、これだけでは多種多様なデータを扱うには適さず、大規模な開発ではむしろデータを中心に据えたオブ

ジェクト指向に関心が移る事となった。しかし部分部分の処理分割では構造化が基本であり、オブジェクト指向と

構造化プログラミングが対立しているわけではない。理想的な構造化プログラミングに、データの多態と継承など

のオブジェクト関係性を扱う能力を持たせると、ほとんどオブジェクト指向と区別がつかないものとなり、パラダ

イムとしては案外に隣り合わせの関係にあることが分かる。

引用:

構造化プログラミング. (2009, 9 月 27). Wikipedia, . Retrieved 07:45, 11 月 11, 2009 from

http://ja.wikipedia.org/w/index.php?title=%E6%A7%8B%E9%80%A0%E5%8C%96%E3%83%97%E3%83%AD

%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0&oldid=28206959.

Page 3: [第8章 構造化分析しよう] [第9章 フローチャートを使ってみよ …astah* チュートリアル 第8 章 構造化分析しよう 4 / 14 DFD(データフロー図)を使ってみよう

astah* チュートリアル 第 8 章 構造化分析しよう

3 / 14

DFD(データフロー図 )

使用できるエディション: astah* professional

デモ動画:http://astah.change-vision.com/ja/movie.html#dataflow-diagram

データの入出力や流れを可視化する図です。

astah* の DFD の主な機能は以下の通りです。

・DFD 作成(外部エンティティ、プロセス、データストア、データフロー)

・デマルコ式、ゲイン・サーソン式の両記法

・CRUD との連携(機能軸に DFD を指定)

・Excel にプロセスの階層表を出力

・UML との連携(外部エンティティからアクターへの変換、プロセスからユースケースへの変換)

・ER 図との連携(データストアから ER エンティティに変換、データフローから ER エンティティに変換)

・マインドマップとの連携(トピックから、DFD の図要素への変換)

・外部エンティティ、データストアに別名指定

Page 4: [第8章 構造化分析しよう] [第9章 フローチャートを使ってみよ …astah* チュートリアル 第8 章 構造化分析しよう 4 / 14 DFD(データフロー図)を使ってみよう

astah* チュートリアル 第 8 章 構造化分析しよう

4 / 14

DFD(データフロー図 )を使ってみよう

インストールフォルダ配下の Sample.asta を開いて出力してみましょう。4つの DFD がありますね。

システムプロパティの[プロジェクトビュー]-[階層ツリーの表示(要再起動)]を ON にして astah*を再起動します。

左のプロジェクトビューの”階層ツリー“を表示します。

Page 5: [第8章 構造化分析しよう] [第9章 フローチャートを使ってみよ …astah* チュートリアル 第8 章 構造化分析しよう 4 / 14 DFD(データフロー図)を使ってみよう

astah* チュートリアル 第 8 章 構造化分析しよう

5 / 14

これらの図は階層化されていることを意味します。

例えば、” 0. Withdrawal service of saving account[Context]”図の“Withdrawal service of saving account”プロセス

を選択して、右プリックして、ポップアップメニューの“図を開く”を選択します。

(“Withdrawal service of saving account”プロセスをダブルクリックでもかまいません。)

一階層下の“00.Withdrawal service of saving account”が開かれます。

Page 6: [第8章 構造化分析しよう] [第9章 フローチャートを使ってみよ …astah* チュートリアル 第8 章 構造化分析しよう 4 / 14 DFD(データフロー図)を使ってみよう

astah* チュートリアル 第 8 章 構造化分析しよう

6 / 14

つまり、上の階層のプロセスの詳細化した図であることを意味しています。

同様に、” 00.Withdrawal service of saving account”図の“Customer Certification”プロセスを選択してダブルクリ

ックします。(“Customer Certification”プロセスの右プリックして、ポップアップメニューの“図を開く”でもか

まいません。)

一階層下の“1. Customer Certification”が開かれます。

Page 7: [第8章 構造化分析しよう] [第9章 フローチャートを使ってみよ …astah* チュートリアル 第8 章 構造化分析しよう 4 / 14 DFD(データフロー図)を使ってみよう

astah* チュートリアル 第 8 章 構造化分析しよう

7 / 14

また、一階層上の図” 00.Withdrawal service of saving account”に戻り

“Confirm Balance”プロセスを選択して、右プリックして、ポップアップメニューの“データフロー図(DFD)を

作成する”を選択します。(“Confirm Balance”プロセスをダブルクリックでもかまいません。)

以下のように、階層化関係を持つ新しい DFD が作成されました。

Page 8: [第8章 構造化分析しよう] [第9章 フローチャートを使ってみよ …astah* チュートリアル 第8 章 構造化分析しよう 4 / 14 DFD(データフロー図)を使ってみよう

astah* チュートリアル 第 8 章 構造化分析しよう

8 / 14

このように階層構造を意識しならがモデリングできるような仕組みになっています。

[データフロー図(DFD)作成ポイント]

階層関係を意識しながらモデリングすることが重要です。

Page 9: [第8章 構造化分析しよう] [第9章 フローチャートを使ってみよ …astah* チュートリアル 第8 章 構造化分析しよう 4 / 14 DFD(データフロー図)を使ってみよう

astah* チュートリアル 第 9 章 フローチャートを使ってみよう

9 / 14

フローチャートを使ってみよう

使用できるエディション: astah* professional

デモ動画:http://astah.change-vision.com/ja/movie.html#flowchart

astah* のフローチャートの主な機能は以下の通りです。

・フローチャート作成

・フローチャートのテンプレート

・図要素のパレットを利用した作図

・フロー記号のテンプレート

・フロー要素からユースケースの作成

・レーンからアクターの作成

インストールフォルダ配下の Sample.asta を開いて出力してみましょう。

画面左にフロー記号パレットが表示されていますね。

このようにデフォルトでサーバーや端末のようなアイコンでフローチャートを書けるようになっています。

また、産能式(産能大式事務工程分析図表の記号)と呼ばれるものにも対応しています。

Page 10: [第8章 構造化分析しよう] [第9章 フローチャートを使ってみよ …astah* チュートリアル 第8 章 構造化分析しよう 4 / 14 DFD(データフロー図)を使ってみよう

astah* チュートリアル 第 9 章 フローチャートを使ってみよう

10 / 14

また、フロー記号パレットを作成できます。

[ツール]-[テンプレートの設定]-[フロー記号]を選択し、追加ボタンをクリックします。

設定ファイルを保存する場所を選択します。

Page 11: [第8章 構造化分析しよう] [第9章 フローチャートを使ってみよ …astah* チュートリアル 第8 章 構造化分析しよう 4 / 14 DFD(データフロー図)を使ってみよう

astah* チュートリアル 第 9 章 フローチャートを使ってみよう

11 / 14

“フロー記号点テンプレートの設定”ダイアログに戻ります。

編集ボタンをクリックします。” フロー記号点テンプレートの編集”ダイアログが表示されます。

追加ボタンをクリックします。

Page 12: [第8章 構造化分析しよう] [第9章 フローチャートを使ってみよ …astah* チュートリアル 第8 章 構造化分析しよう 4 / 14 DFD(データフロー図)を使ってみよう

astah* チュートリアル 第 9 章 フローチャートを使ってみよう

12 / 14

使用するイメージを選択し、開くボタンをクリックします。

アイコンが追加されました。

了解ボタンをクリックして、メイン画面に戻ります。フロー記号パレットに新しいタブと追加したアイコンが追加

され、フローチャートの編集に使用できるようになります。

Page 13: [第8章 構造化分析しよう] [第9章 フローチャートを使ってみよ …astah* チュートリアル 第8 章 構造化分析しよう 4 / 14 DFD(データフロー図)を使ってみよう

astah* チュートリアル 第 10 章 トレーサビリティマップを使ってみよう

13 / 14

トレーサビリティマップを使ってみよう

使用できるエディション: astah* professional

デモ動画:http://astah.change-vision.com/ja/movie.html#traceability-map

astah* では、選択したモデルがどの図で使用されているか、どのモデルに関連しているかというような、モデルの

影響範囲を可視化するトレーサビリティマップを用意しました。モデルのトレーサビリティ(追跡可能性)を把握

でき、スムーズなモデリングをサポートします。

インストールフォルダ配下の Sample.asta を開いて出力してみましょう。

この図の Tracer クラスについてどのモデルで参照されているか見てみましょう。

構造ツリーで Tracer クラスを選択し、“トレーサビリティマップを開く”を選択します。

Page 14: [第8章 構造化分析しよう] [第9章 フローチャートを使ってみよ …astah* チュートリアル 第8 章 構造化分析しよう 4 / 14 DFD(データフロー図)を使ってみよう

astah* チュートリアル 第 10 章 トレーサビリティマップを使ってみよう

14 / 14

以下のようなトレーサビリティマップが作成されました。

依存先と依存元描画している図などがグラフィヵルに表示されます。

モデル設計がパッケージをまたいで多数の個所から参照されているときなどに有効です。

トレーサビリティマップで、どこまでたどって依存関係を表示するかは、システムプロパティや図のプロパティで

変更可能です(ver.6.1 より)。複雑なモデルの場合、表示する階層を大きくすると時間がかかることがあるのでご

注意ください。