サクサク読めて、アプリ限定の機能も多数!
トップへ戻る
災害への備え
ja.astahblog.com
※2022.11.07追記: VSCode版は、現在VSCodeのバージョンが1.73では正常に動作しないことが確認されました。 原因は究明中ですので、試用したい方は1.72以前のバージョンでお試しください。 VSCode版バージョン0.1.3で対応しました チェンジビジョン 藤元です。 ご存知の方も多いと思いますが、GithubではIssueも含むMarkdown上でMermaidによる図の表示が可能です。 テキストで軽快に作図できる嬉しさの反面、描きたい図のイメージを頭の中でテキストに変換しなければならず、直感的に扱うには慣れが必要でした。 どうにか「”描きたいイメージ”と”Mermaidテキスト”とのギャップ」を埋めることができないか? どうにか「Github上で手軽に使える」ことで普段からモデルを利用し易くすることができないか? と、僕が考えて試しに作ってみたものが、今回ご紹介する
皆さんこんにちは。今回は、ユースケース図を応用したセキュリティ分析手法であるミスユースケースをご紹介します。ミスユースケースはユースケースの拡張ですが、特別な記号などを使うわけではなく、表記法の枠組み自体は通常のユースケースの範囲内に収まっているので、astah*で十分書けるものです。前半では、astah*でミスユースケースを記述するときに便利な機能やオリジナルの論文での記述例、後半では、セキュリティに限らず一般的なリスクやハザード分析へ応用した例をご紹介します。 ミスユースケースのためのほんの少しの準備 はじめに、astah*で効果的にミスユースケースが書けるために少し準備しておきましょう。 まず、メニューの[Tools]から[Project]に入り、[Set Project Property]を選択します。 つぎに、[Default Stereotype Color]を選び、新たなSt
3月30日、IPA(独立行政法人情報処理推進機構)は、大規模・複雑化するシステムに適した安全解析手法STAMPの導入を容易にするモデリングツール「STAMP Workbench」を無償公開しました。このSTAMP Workbenchのモデリングツールのベースには、astah*を採用頂きました。 STAMP Workbenchは、システムの安全性に関して世界的に著名なマサチューセッツ工科大学(MIT)のNancy G. Leveson教授が提唱しているSTAMP/STPA(*1)に対応したモデリングツールです。 STPAは、自動運転など大規模複雑化されるシステムへの、 システム思考といった全体視点を持った分析など、システム思考に基づく新しい安全性解析手法として、国内外で様々なWorkshopが開催されるなど、大変注目されています。STAMP/STPAについては、IPAウェブサイトからガイドブ
著者:早水公二 (株式会社フォーマルテック)、高井利憲 (チェンジビジョン) みなさん、こんにちは。 2017年7月31日の記事では、ステートマシン図の設計品質の向上のための方法として、モデル検査を紹介しました。今回は、ソフトウェア開発におけるモデル検査の利用例をいくつか紹介します。 前回の記事では、モデル検査の概要とステートマシン図にモデル検査を適用して設計ミスを発見した事例を紹介しました。紹介した事例では、モデル検査のメリットである、 (1) 網羅的な検査ができること がいかされました。モデル検査のメリットには他にも次のようなものもあります。 (2) モデルと検査式を作成した後の繰り返し試験が容易であること (3) モデルと反例を共有することで不具合情報を共有できること 今回は、上の(1)(2)(3)のメリットをそれぞれ有効に活用したモデル検査のユースケースをご紹介します。 1.
著者:早水公二 (株式会社フォーマルテック)、高井利憲 (チェンジビジョン) みなさんは、astah*で書いたステートマシン図をどのように活用していますか?システムの取り得る状態を把握したり、システムの振る舞いに関する理解を共有したり、不正な状態遷移がないかレビューしたりしていると思います。今回は、モデル検査という技術を応用することにより、ステートマシン図を自動検証する手法をご紹介します。 ■モデル検査の概要 モデル検査とは、システムの網羅的な検査ができる技術です。 網羅的とはどういうことでしょうか。例えば、実機や実際の実行コードを用いる試験やソフトウェアテストでは、特定の環境条件や入力値を設定することによって、検査対象のシステムやソフトウェアの振る舞いを観察します。ただし、一回あたりの試験の実行には、無視できない時間やコストが係るため、限られた環境条件や入力値しか確かめられないのが普通で
海外のastah*ユーザーさんが、新しいプラグイン「LORINI」を開発してくださいました。 作者は、ニュージーランド在住のBrian Chamさん。勤務先のオークランド大学で、オブジェクト指向プログラミング(OOP)を生徒に教える為のツールとして作られたそうです。 このLORINIプラグインをインストールすると、新しいビューが追加され、そこには、モデルのJavaソースコードがリアルタイムで表示されます。逆にコードをクリックすると、それに対応したモデルが図上でハイライトされます。コードビューの右隣には、モデルに誤りがある場合にそれを指摘する[Feedback]ビューがあります。
astah*のユーザーさんが、モデル駆動開発でも活用できるソースコード生成プラグインを開発されました。 groovyのテンプレートを利用して、astah*で描いたクラス図、ステートマシン図を対象にソースコードを生成できるプラグインです。 この「モデル駆動開発m2tプラグイン」は、製品サイトよりダウンロードできます。 そこで、プラグイン作者の細合晋太郎さんに、プラグイン開発の経緯、他のコード生成プラグインとの違い、プラグイン開発で苦労したことなど、お話を伺いました。 Q: 今回プラグインを作成しようと思ったきっかけは? 気軽にコード生成を試せるUMLエディタが欲しいと思ったのが始まりです。Eclipseには、いくつかコード生成のための枠組みがあるのですが、肝心のエディタがいまいち書きづらいため、描き心地のよいastah*でコード生成が行えないか検討しました。 既存のコード生成のプラグインがあ
銀行のATMでお金を引き出す処理の流れを表した、このアクティビティ図を、様々なコツを使って、素早くそして綺麗に描くコツを紹介する3分動画です。(ツールは、UMLモデリングツールastah*を使っています) コツ1 – アクションは、図上をダブルクリックして作成する astah*では、各図で一番多く描画される図要素を、図上のダブルクリックで生成できます。(アクティビティ図ではアクション、クラス図ではクラス、ユースケース図ではアクター..etc) ツールバーと図上を往復する回数が減り、より素早く図を描くことができます。 コツ2 – コントロールフローは、ドローサジェストで作成する 図要素をマウスオーバーすると、小さな矢印(ドローサジェスト)が現れます。 この矢印をクリックして、対象の図要素を選択するだけで、コントロールフローを作成できます。 コツ3 – ガード条件は直接入力する ガード条件は
製品事業部の松田です。(読みやすくなるモデルを描くコツ「りりぃメソッド」連載中) 普段、astah*の製品開発やサポート、astah*のプラグイン開発等をしています。 私は、昨年からETロボコンに実行委員として関わっており、沢山のチームのモデル図を見てきましたが、同一クラスを指定しているのに、クラス図とシーケンス図で操作名の異なる図を多く見かけました。本来、同一クラスの同じ操作であれば、名前が一致しなくてはなりません。astah*には、これを自動で合わせる機能がありますが、あまり知られていないようなので紹介します。 既存のクラスをシーケンス図で使う astah*では、作成したクラスを、シーケンス図のライフラインのベースクラスに設定することで、クラス図とのトレーサビリティを保ちながら動的設計をすることができます。 例として、運搬車が走ることを説明するためのクラス図を描いてみました。 この図で
近藤です。こんにちは。Gitは様々な利用の仕方ができますが、その基盤となるモデルは8個だけの簡単なモデルです。これらのモデルを理解していない状態でGitを利用すると、あたかもリポジトリが壊れたように見えてしまいます。Gitは難しいと言われますが、そういう感想を持つ人はGitのモデルを理解していない事が多いようです。 今回はGitを構成する中心モデルと、基本的なコマンドを実行した時のオブジェクト関係を解説します。 基本概念 Gitの基本概念は大きく2つにわかれます。 GitObject Reference GitObjectはGitで管理するオブジェクトです。CommitなどがGitObjectです。Gitリポジトリである.gitを開くとobjects配下にあるファイルがGitObjectです。GitObjectはそのコンテンツをハッシュ化した文字列を元に、先頭2文字で配置フォルダ、残りの文
こんにちは。製品事業部の近藤です。今回はastahチームの開発プロセスを改善する開発ツールの使い方を整理することで、astahチームの開発をどう改善したのかを紹介します。1 前回はastah*チームの開発にHubotを取り入れたことを紹介しました。これにより、定時連絡など、プロジェクト運営で自動化したい細かな事はHubotにお願いできるようになりました。また、各サービスからチャットに情報を流す事で、Hubotを介したサービス間連携を実現できます。HubotはJavaScriptで拡張できるので、調整も簡単です。 では、なぜHubotを導入したのでしょうか?今回はHubotの導入理由や、どのサービスを連携させたら効果的なのか、分析した時のポイントを紹介します。 Hubot導入前の問題 Hubotを導入する前のAstahチームには、開発ツールの使い方をよく間違えてしまうメンバーがいました。Gi
こんにちは。製品事業部の近藤です。みなさんの現場ではHubotを活用されていますか?Hubotはプロジェクトの様々なことを自動的に解決してくれる優秀なロボットです。Hubotがチャットに常駐するだけで、こんなことを実現してくれるでしょう。 朝会やふりかえりの時間を教えてくれる Jenkinsおじさんにビルドやリリースをお願いしてくれる(ChatOps) チャットに流れたチケット番号から、そのタイトルとリンク先を教えてくれる GitHub等のチケットの状態をTrelloに反映してくれる ………ん?最後のTrac等のチケットの状態をTrelloに反映してくれるという話はなんでしょう?そうなんです。Hubotは各サービスのHubとなり、プロジェクトの運営を円滑に進めてくれている存在なのです!今回はHubotが各サービスのHubとなり、ロボットとして大活躍している様子とその仕組みを紹介します。 r
(図を拡大する) こんにちは。製品事業部の近藤(@kompiro)です。JavaDayTokyo2015で平鍋が発表したそうですね。いい機会ですので、これらのツール群をどのように連携させているかを紹介します。 利用している主なツール Idobata: 開発状況を共有するためのチャット Trac: Wiki&Ticket 管理 GitHub: 言わずと知れたGitHub。SCMとして利用するだけでなく、コードレビューにも活用しています。 Jenkins: CIやインストーラのビルド。 VMWare ESXi: 複数の仮想マシンを動作させる仮想マシンサーバ Trello: ふりかえりで活用するだけでなく、HubotがIdobataに流れる情報を元に適宜Trelloに反映してくれるおかげでプロジェクトの状況をデジタルに俯瞰できるボードもできました。 Hubot: chatops&プロジェクトの細
こんにちは。モデリング事業部の中村です。 本日は、弊社のastah*製品販売以外の「モデリング関連サービス」についてご紹介します。
このページを最初にブックマークしてみませんか?
『astah in 5 min』の新着エントリーを見る
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く