システム工学概論 第9回 状態構造を持っ系の設計

Slides:



Advertisements
Similar presentations
1 WSIF における Web サービス・メソッドの自動設 定 2004 年 3 月 23 日 越田高志 松江工業高等専門学校 情報工学科 電子情報通信学会 2004年総合 大会.
Advertisements

1 プリミティブ Web サービスの 入出力データに関する一考察 2005 年 3 月 21 日 松江工業高等専門学校 情報工学科 奈良先端科学技術大学院大学 情報科学研究科 越田高志 電子情報通信学会 2005年総合 大会.
Division of Process Control & Process Systems Engineering Department of Chemical Engineering, Kyoto University
通信制高等学校管理システム 学生情報登録~教科書注文処理 処理概要. はじめに 通信制高等学校管理システムの概要説明をご覧頂き、 誠に有難うございます。 本プログラムは、通信制高等学校管理システムの学生 登録から教科書・教材注文までの処理の流れを説明し ます。 この画面が終了した後、メニューが現れます。画面下.
グループウェア ”Aipo” を用いた 「勤怠管理システム」のご紹 介 株式会社 ヒューマンリング.
ソフトウェア工学 理工学部 情報システム工学科 新田直也. 演習問題 1 の解答例  入庫処理の DFD 酒屋の在庫問題の DFD( 入庫処理 ) 更新情報 在庫ファイル 更新処理 倉庫係 在庫不足リスト 在庫ファイル 出庫指示書 新規出庫 判定 出庫指示書 作成処理 出庫依頼 積荷票.
モデル検査の応用 徳田研究室 西村太一.
第12回 順序回路の解析方法 瀬戸 順序回路から,以下を導き、解析を行えるようにする タイムチャート 状態遷移関数・出力関数 状態遷移表
Web-EDI方式 シナリオ1 [実験番号] : 実験タイトル 1 :標準類の評価
システム工学概論 第10回 状態遷移の実現
パイプラインパフォーマンス管理 SAP Best Practices.
ケータイキット for Smarty のご紹介
データ構造と アルゴリズム 理工学部 情報システム工学科 新田直也.
最終回 総合演習 第13回目 [7月17日、H.15(‘03)] 本日のメニュー 1)総合演習課題 2)過去の試験問題 3)試験について
4. 順序回路 五島 正裕.
授業展開#11 コンピュータは 何ができるか、できないか.
     年  月  日 名前 太郎 1 班.
データ構造と アルゴリズム 知能情報学部 新田直也.
BPMN(Business Process Modeling Notation)
7. 順序回路 五島 正裕.
8. 順序回路の簡単化,機能的な順序回路 五島 正裕.
第7回 2006/6/12.
オブジェクト プログラミング 第1回.
入出力データ型に透過な Webサービス動的実行システム 松江工業高等専門学校 情報工学科 越田高志 情報処理学会第68回全国大会
3.成績処理 3.1 成績の平均点など ・・・AVERAGE,MAX,MIN関数 3.2 成績(合計点) ・・・SUM関数
チューリング機械 状態の有限集合 ヘッドの方向を表す。 L:1コマ左へ R:1コマ右へ テープ記号の有限集合 入力記号の有限集合 動作関数
プログラム実行時情報を用いたトランザクションファンクション抽出手法
概要 Boxed Economy Simulation Platform(BESP)とその基本構造 BESPの設計・実装におけるポイント!
シミュレーション論 Ⅱ 第14回 まとめ.
シミュレーション論 Ⅱ 第15回 まとめ.
情報管理論 2018/11/9 情報分析の道具 2018/11/9 情報分析の道具 情報分析の道具.
アルゴリズムとチューリングマシン 「もの」(商品)としてのコンピュータ 「こと」(思想)としてのコンピュータ アルゴリズム
LCD搭載タワー型UPS! 設置場所を選ばないコンパクトボディ!
序章 第2節 教育機器とコンピュータ 1 パーソナルコンピュータ
「iQUAVIS」 によるハード・ソフトの 横断的な構想検討
ディジタル回路 6. 順序回路の実現 五島 正裕.
Webサービスによる 加工工程決定支援システム
実行時情報に基づく OSカーネルのコンフィグ最小化
     年  月  日 名前 太郎 1 班.
     年  月  日 名前 太郎 x 班.
第7回 授業計画の修正 中間テストの解説・復習 前回の補足(クロックアルゴリズム・PFF) 仮想記憶方式のまとめ 特別課題について
加工工程決定支援システム 電子情報通信学会 2010年総合大会 2010年3月18日 松江工業高等専門学校  情報工学科 越田 高志.
 情報の授業 アルゴリズムとプログラム(1) Go.Ota.
プログラミング基礎a 第1回 ハードウェアとソフトウェア プログラミング総論 ~プログラミング言語とは~
All Rights Reserved, Copyright © 2004, Kobayashi
プログラミング基礎a 第1回 ハードウェアとソフトウェア プログラミング総論 ~プログラミング言語とは~
片方向通信路を含む ネットワークアーキテクチャに於ける 動的な仮想リンク制御機構の設計と実装
先週の復習: CPU が働く仕組み コンピュータの構造 pp 制御装置+演算装置+レジスタ 制御装置がなければ電卓と同様
RDFの生産工程管理システムへの適用 情報処理学会 第74回全国大会 2012年3月6日 松江工業高等専門学校  情報工学科 越田 高志.
明星大学 情報学科 2012年度前期     情報技術Ⅰ   第1回
★C++/オブジェクト指向実践企画★ Othelloゲーム作成
計算機プログラミングI 木曜日 1時限・5時限 担当: 増原英彦 第1回 2002年10月10日(木)
サブゼミ第7回 実装編① オブジェクト型とキャスト.
8. 順序回路の実現 五島 正裕.
@MD-NET Web-EDI導入について ~ 説明会資料 ~
第5回 プログラミングⅡ 第5回
FILDERの将来構想 ダイキン工業株式会社 電子システム事業部.
アルゴリズム入門 (Ver /10/07) ・フローチャートとプログラムの基本構造 ・リスト ・合計の計算
計算の理論 I NFAとDFAの等価性 火曜3校時 大月 美佳 平成16年5月18日 佐賀大学理工学部知能情報システム学科.
エイリアス関係を考慮した Javaプログラム用静的スライシングツール
コンパイラ 2012年10月11日
ソフトウェア工学 知能情報学部 新田直也.
情報数理Ⅱ 第10章 オートマトン 平成28年12月21日.
Javaとは Javaとはオブジェクト指向言語でJava VM(Java仮想マシン)と呼ばれるプログラム上で動作します。
エクセル(3)の目次 参照演算子と演算子 参照セルの表示法 セルの参照方法 エラーについて シグマ(Σ)関数 条件付書式 問題(1)
明星大学 情報学科 2014年度前期     情報技術Ⅰ   第1回
オブジェクト指向メトリクスを用いた 開発支援に関する研究 --- VC++とMFCを用いた開発を対象として ---
ベイジアンネットワークと クラスタリング手法を用いたWeb障害検知システムの開発
1.2 言語処理の諸観点 (1)言語処理の利用分野
アルゴリズム ~すべてのプログラムの基礎~.
Presentation transcript:

システム工学概論 第9回 状態構造を持っ系の設計 システム工学概論 第9回 状態構造を持っ系の設計 2004. 12. 2

第9回概要 1.自動販売機 2.外部仕様 3.振舞い 4.設計手順 5.仕様記述  第9回概要 1.自動販売機 2.外部仕様 3.振舞い 4.設計手順 5.仕様記述

自動販売機

I(Input)P(Process)O(Output)図 IPO(Input Process Output)図 I P O 1秒 クロック 時計 盤面 時刻をえる 時刻 時刻表示 をえる 表示 表示する Input Process Output 実時間 クロック 時計 盤面 仕様の 表記 時刻をえる I P  O I P O 実時間 クロック 時計 盤面 記号に よる表記 時刻をえる I P  O 表示する I P  O データフロー図 による表記 I P O 実時間 クロック 時計 盤面 HIPO(Hierarchical Input Process Output)図

自動販売機の仕様 夫々は,如何なる条件があるだろうか?

自動販売機の条件 入力に対する条件 外部入力仕様書 出力に対する条件 外部出力仕様書 本体に対する条件 外部~機能仕様書

外部仕様類 外部入力仕様書 外部出力仕様書 外部~機能仕様書 ?

外部出力仕様

外部入力仕様

システム仕様 如何に仕様を記述するか? 1.投入金を入れる 2.投入金と過去の投入金の合計を求め,表示する 3.合計金額で買える物があれば,販売可能商品を   表示する 参考:成績集計システム    1.試験結果を読込む    2.学籍番号順に並べる    3.クラス平均値を求める    4.各人の順位を決める    5.成績一覧表を出力する    6.個人毎成績表を出力する 4.販売可能でない商品を販売指定しても無視する 5.販売可能な商品を指定すると,商品を出力する 6.投入金額合計から,商品の価格を差引き表示する (7.釣銭出力を指定すると,返戻金/釣銭を出力する) これで完全であろうか? 状態を持つ系は,成績集計のようには記述出来ない

自動販売機の振舞い 販売 可能 合計金額 待機中S0 投入金あり販売不可S1 販売可能S2 購入指定 投入金 購入(商品)指定 投入金

状態遷移ルートの抜けチェック 釣銭 出力 が 抜けて いる 状態遷移原因表は, 漏れなく状態遷移を 洗出すのに効果的な 手段である T01 購入指定 T01 購入(商品)指定 T21 釣銭 出力 が 抜けて いる 投入金 T00 販売 可能 合計金額 待機中S0 投入金 T10 投入金 T20 投入金あり販売不可S1 販売可能S2 購入指定 T11 釣銭出力e2 投入金e0 購入指定e1 待機中S0 投入金あり販売不可S1 販売可能S2 T00 T01 状態遷移原因表は, 漏れなく状態遷移を 洗出すのに効果的な 手段である T10 T11 T20 T21

各種の 遷移 ルート T02 T12 T22 T01 T21 T11 T10 T20 T00 釣銭出力e2 投入金e0 購入指定e1 待機中S0 投入金あり販売不可S1 販売可能S2 T00

出力を記入する 下記を記入する 状態, 状態遷移,遷移ルート 状態遷移原因 出力

完備した外部仕様 外観図 外部入力仕様書 外部出力仕様書 外部機能仕様書

完全な仕様記述 状態遷移図を併用する記述 有限状態(抽象 )機械モデル Finite State Machine, FSMモデル 外部機能仕様書 状態遷移図を併用する記述  有限状態(抽象 )機械モデル   Finite State Machine, FSMモデル 殆どの着目対象(Object)を記述可能である  (従来技法では,データの変換関係のみ記述) 状態遷移+遷移ルート(プログラム)で構成する  従来のプログラム以上の存在  状態遷移実行機構により,平明な設計が可能 状態遷移原因表により,漏れが防止できる    通常の正常な動作は,全体の一部に過ぎない 場合により,状態数が爆発的に増える   幾つかの抽象機械に分解すれば良い 状態遷移原因表 釣銭出力e2 投入金e0 購入指定e1 待機中S0 投入金あり販売不可S1 販売可能S2 T10 T20 T21 T22 T02 T01 T11 T00 T12

システムの構成(簡単な系) ソフト ハ|ド 出力 O 入力 I 処理 P, 機能 F (Output) (Input) 自動販売機 販売プロセス ソフト 待機注 販売可能 投入金あり 販売不可 指定 商品 投入金 商品 指定 名称  / 定義 名称  / 定義 ハ|ド 自動販売機 マイコンボード 10 ストッカー部 現金 収受部 1000

システムの構成(複雑な系) ソフトウエア ハ|ドウエア 入力 I (Input) 出力 O (Output) 処理 P,機能 F 自動倉庫 プロセス 現金収受 プロセス 自動販売機 ソフトウエア 販売プロセス 投入金0 待機注 販売可能 投入金あり 販売不可 指定 商品 投入金 投入金 投入金 > 0 商品 指定 投入金 ハ|ドウエア マイコン制御 現金収受装置 自動販売機 本体装置 マイコン制御 自動倉庫

システムの構成(複雑な系) コ|ラ在庫少数 通信 プロセス PHS お総菜ユニット パン・麺ユニット コールド ドリンク ユニット 自動販売機 待機注 販売可能 投入金あり 販売不可 投入金 指定 商品 販売プロセス 自動 倉庫 プロ セス ホットドリンクユニット 現金収受部 投入金0 投入金 > 0 現金収受 プロセス

組込システム ・外から見ると,ハード装置であるが,実は計算機/ソフトを 内蔵するシステム.計算機制御の技術が使われている.  内蔵するシステム.計算機制御の技術が使われている.  これから伸びる分野.VTR, 携帯電話,GPS.... ・特殊性 ハード並の高い信頼度が求められる      ソフトは,殆どが状態構造を持っている      ハード並のキチンとした信頼度と原価等の管理        量産をベースにした考え方        各種の使われ方〜機種を統合する標準化          単純/複雑/大規模自販機         たばこからコーヒー,拉麺等を一本化          表示位置と商品対応,商品価格 データ ・有利な就職先として,諸君に推奨する

システム設計上の要件 商品はどの場所に置ける 商品名はソフトに関係させない 場所(指定釦番号)で見る 価格は,変更できる 商品はどの場所に置ける   商品名はソフトに関係させない    場所(指定釦番号)で見る 価格は,変更できる    メモリのある領域に定価表を持つ イベントを標準化する  ・遷移原因となるもの  ・伴う情報 例:投入金 + 金額(¥50) 自動販売機 待機注 販売可能 投入金あり 販売不可 投入金 指定 商品 販売プロセス 投入金0 投入金 > 0 現金収受 プロセス 自動倉庫 出力/メッセージ  ・外部指令/メッセージ名となるもの  ・伴う情報 例:釣銭出力 + 釣銭金額 複数プロセスの場合には,下記を加える  宛先プロセス番号 + 送元プロセス番号

プログラム設計上の要件 出力メッセージ標準形式 入力メッセージ標準形式 ハード 対応情報 ソフト用 情報 入出力統一フォーマット 場所番号    0 1 2 3 4 5 6 7 ストッカー番号     ” ” ” ” ” ” ” ” 在庫センサ番号    ” ” ” ” ” ” ” ”  (メモリ内情報) 在庫切れランプ番号 ” ” ” ” ” ” ” ” 販売可能ランプ番号 ” ” ” ” ” ” ” ” 商品指定釦番号  ” ” ” ” ” ” ” ” 商品価格表  〔メモリ内情報)  販売可能商品表     ハード 対応情報 ソフト用 情報 110 可/不可 出力メッセージ標準形式 入力メッセージ標準形式  種別指定    | 場所指定 例:合計金額 | 560 例:在庫切ランプ点 | 群指定 例:ストッカー開   | 個別指定 例:釣銭出力   | 250  種別指定    | 場所指定 例:在庫切    | 群情報 例:投入金    | 100 例:商品指定   | 場所情報 例:釣銭    | 540 種別指定   |  伴 う 情 報  入力/出力  |コード情報 |パターン情報 * 入出力統一フォーマット 種別指定   |伴う情報  入力/出力  |コード情報 種別指定   |伴う情報  入力/出力  |パターン情報 * 又は

自動販売機中のアルゴリズムの例 1 Input Process Output 販売可能 な商品を 決める 合計金額 ハード 対応情報 価格表 販売 可能 群 ハード 対応情報 ソフト用 情報 場所番号    0 1 2 3 4 5 6 7 商品価格表 110 250 260 300 …………………. 販売可能商品表 Y N Y Y ……………………. 場所番号    0 1 2 3 4 5 6 7 ストッカー番号      ” ” ” ” ” ” ” ” 在庫センサ番号     ” ” ” ” ” ” ” ” 在庫切れランプ番号 ” ” ” ” ” ” ” ” 販売可能ランプ番号 ” ” ” ” ” ” ” ” 商品指定釦番号  ” ” ” ” ” ” ” ” 商品価格表 〔メモリ内情報)  販売可能商品表 ハード 対応情報 ソフト用 情報

同 例 2 指定 指定した商品が,販売可能なら商品(i)を出力する.販売不可なら無視する 商品(i) 入力メッセージ標準形式 ハード 同 例 2 場所番号    0 1 2 3 4 5 6 7 販売可能商品表 Y N Y Y ……………………. 指定した商品が,販売可能なら商品(i)を出力する.販売不可なら無視する 指定 商品(i) 販売可能商品表の場所(i)を読む i =Y? 場所(i)のストッカーを開ける ------------------------------- ストッカー開 | 場所(i) Y N 出力メッセージ標準形式  種別指定    | 場所指定 例:合計金額 | 560 例:在庫切ランプ点 | 群指定 例:ストッカー開   | 個別指定 例:釣銭出力   | 250 例:在庫切    | 群情報 例:投入金    | 100 例:商品指定   | 場所情報 例:釣銭    | 540 入力メッセージ標準形式 場所番号    0 1 2 3 4 5 6 7 ストッカー番号      ” ” ” ” ” ” ” ” 在庫センサ番号     ” ” ” ” ” ” ” ” 在庫切れランプ番号 ” ” ” ” ” ” ” ” 販売可能ランプ番号 ” ” ” ” ” ” ” ” 商品指定釦番号  ” ” ” ” ” ” ” ” 商品価格表 〔メモリ内情報)  販売可能商品表 ハード 対応情報 ソフト用 情報

状態遷移の実行の為の配慮 ・遷移ルートは関数に対応  させる ・状態遷移原因表に対応し  て各関数を実行させる ・終着状態が不明になるの  で,各関数の実行の最末  尾に行先状態番号を指定  する T11 釣銭出力e2 投入金e0 購入指定e1 待機中S0 投入金あり販売不可S1 販売可能S2 T10 T20 T21 T22 T02 T00 T12 T01

状態遷移の実行 ・遷移原因(イベント)が到着すると, 記憶している過去からの状態 対 遷移原因 の交点の状態遷移ルート(関数)を実行させる T00 T01 T02 到着した 遷移原因 e1 記憶した状態 S0 T11 釣銭出力e2 投入金e0 購入指定e1 待機中S0 投入金あり販売不可S1 販売可能S2 T10 T20 T21 T22 T02 T00 T12 T01 ・遷移原因(イベント)が到着すると,   記憶している過去からの状態 対 遷移原因  の交点の状態遷移ルート(関数)を実行させる ・各状態遷移ルートの最末尾で次状態を規定する

纏め 1.状態,状態遷移原因,状態遷移により 殆どの対象を振舞いを含め記述できる 2.見かけ上の入力は,下記の2者になる    殆どの対象を振舞いを含め記述できる 2.見かけ上の入力は,下記の2者になる    動作の契機(イベント)と伴う情報   これを考えると,如何なる系でも    状態遷移ルートのプログラムで統一的に設計可能 3.状態遷移原因表で漏れなく仕様を決定可能 Object指向設計は,これらの実用的/不完全な実現   上記を充分に理解すれば,OO設計に有効

以下のページは参考

分析:初期段階

分析:初期段階纏め データフロー図 フローチャート 合計金額を求める 合計金額を表示する 合計金額以下の商品を求める 商品有り 商品無し 販売可能商品を表示する 入口1 出口2 出口1 フローチャート

分析:後期段階 最大抽象点は何処か? データフロー図

分析:後期段階 PAD

分析の纏め