①システム開発のプロセス(1) (要件定義~テスト) p141~

Slides:



Advertisements
Similar presentations
1 情報基礎 A 第 9 週 プログラミング入門 VBA の基本文法 1 準備・変数・データの入出力 徳山 豪・全 眞嬉 東北大学情報科学研究科 システム情報科学専攻 情報システム評価学分野.
Advertisements

1 EASE プロジェクトにおける EPM ( Empirical Project Monitor) を用いたプロジェクト管理デモ 奈良先端科学技術大学院大学 産学官連携研究員 松村 知子 2005 年 9 月 30 日 JISA 経営者セミナー.
2015/03/12 事故事例分析に基づく 情報システム調達のリスク対策 静岡大学 齋田芽久美 平林元明 湯浦克彦.
東京工科大学 コンピュータサイエンス学部 亀田弘之
背景 ソフトウェアの大規模化・複雑化 生産性と品質の向上 ↓ オブジェクト指向分析設計の適用 開発ツールの投入.
東京工科大学 コンピュータサイエンス 亀田弘之
①プロジェクトとは ②プロジェクト・マネジメント
機能実現期間の測定による プログラマ能力の実験的評価
ここに若林の絵が入る Ⅰ 従来型サービスの課題 Ⅴ Solaris基盤ヘルスチェックサービス ●従来型サービス Ⅱ 新サービスの概要
ソフトウェア開発及びソフトウェア プロジェクトマネジメント(II)
VBAを通して プログラム言語の基本構造を学ぶ
talend活用事例 ・ナビゲータグラフのカスタマイズにおける事例 ・CSVダウンロードでのカスタマイズ事例
OJT研修 「テスト実施、テスト設計の技術習得」 日時: 8月22日(月)  場所: 本社5階.
計測 と 見積り ~ ソフトウェア開発のよりよい見積りのために ~ biac
3-1システム戦略 3-1-3ソリューションビジネス (Point) ・代表的なサービスを通じ、ソリューションの考え方を理解
VBA H106077 寺沢友宏.
情報基礎A 第10週 プログラミング入門 VBAの基本文法2 データ型・If ~Then~Else
ビジネスパターンに基づく クラウドシステムのサービスレベル設計
『コンピュータ構成要素』 (C)Copyright, Toshiomi KOBAYASHI,
情報基礎A 第7週 プログラミング入門 VBAの基本文法2 データ型・If ~Then~Else
情報基礎A 第14週プログラミング 実際のデータ処理での応用(2)
情報基礎A 第11週 プログラミング入門 VBAの基本文法3 配列・For~Next
パッケージソフトウェア利用コンピュータシステム構築委託契約書 パッケージソフトウェア、OS、第三者ソフトウェアの使用許諾契約
「システム構成要素」 (C)Copyright,Toshiomi KOBAYASHI,
要員管理 要員の質、量、配置、作業状況を管理する 一般的な注意点を下記に示す (1)組織 ・組織構成を明快にする -指示命令系統
①データ構造 ②アルゴリズム ③プログラム言語 ④マークアップ言語
開発流れ.
CSP記述によるモデル設計と ツールによる検証
ソフトウェア工学 第四回 知能情報学部 新田直也.
プログラム実行履歴を用いたトランザクションファンクション抽出手法
プログラム実行時情報を用いたトランザクションファンクション抽出手法
資格取得スキルⅠb (ITパスポート試験対策講座)
ソフトウェア工学 第五回 知能情報学部 新田直也.
次期経営情報システムの 段階的なWeb化事例
実例で学ぶプログラミング VBAを用いて簡単なゲームを作ろう 徳山 豪 東北大学情報科学研究科 システム情報科学専攻 情報システム評価学分野.
本時の目標 「簡単なプログラム言語の意味を理解し、マクロ機能を使って簡単なプログラムを作ることができる。」
電気・機械・情報概論 VBAプログラミング 第2回 2018年7月2日
2011年4月14日 電子制御設計製図Ⅰ 第一回 担当教員: 北川輝彦.
地域情報学演習 VBAプログラミング 第3回 2017年10月24日
ソフトウェアを取り巻く環境の変化がメトリクスに及ぼす影響について
TDDとメソッドの外部設計 テストファーストの秘訣 2009/08 biac.
アップデート 株式会社アプライド・マーケティング 大越 章司
技術参照モデルとシステム要件定義 に関する学習システム
加工工程決定支援システム 電子情報通信学会 2010年総合大会 2010年3月18日 松江工業高等専門学校  情報工学科 越田 高志.
ミドルウェア”TSUNAGI”を 用いたWEBアプリケーションの構築
数量分析 第2回 データ解析技法とソフトウェア
オープンソース開発支援のための ソースコード及びメールの履歴対応表示システム
実践プログラミング入門2 配列を使ってゲームを作ろう 徳山 豪 東北大学情報科学研究科 システム情報科学専攻 情報システム評価学分野.
情報基礎Ⅱ (第11回) 月曜4限 担当:北川 晃.
品質リスクマネジメント ICH Q9 付属書Ⅰ:リスクマネジメントの方法と手法
就学等援護費における同一住所住民照会対応
計測 と 見積り ~ ソフトウェア開発のよりよい見積りのために ~ biac
第15回放送授業.
障 害 処 理 票 レ トラブル分類 1 設計バグ 2 製造バグ 3 改造バグ 4 DB、OSバグ 5 環境、HWバグ 6 手順バグ
パッケージソフトウェア利用コンピュータシステム構築委託契約書 パッケージソフトウェア、OS、第三者ソフトウェアの使用許諾契約
ソフトウェア制作論 平成30年12月12日.
第6回レポート解説 条件1 条件2 条件3 月の入力 月、日、曜日の表示 日の入力 曜日の入力
情報基礎Ⅱ (第1回) 月曜4限 担当:北川 晃.
情報工学Ⅱ (第9回) 月曜4限 担当:北川 晃.
保守請負時を対象とした 労力見積のためのメトリクスの提案
情報の授業 アプリ等を活用した勉強方法の改善(計画) ・R-PDCAサイクル ・アプリを活用した勉強方法の改善 計画書
データ中心システム設計方法論“DATARUN” 
第1章 現状メソッドの標準化 対象工程を流れる代表品種に対し作業を区分し、時間・頻度を 明らかにして、オペレーションリストを作成する。
MSG시스템 팀 2006年5月26日 株式会社 데굴데굴 開発部 開発G 아무개.
アルゴリズムの視覚化 この図は左が大きく、 右が小さくなるようにソートしている  この図は左が大きく、  右が小さくなるようにソートしている
Javaとは Javaとはオブジェクト指向言語でJava VM(Java仮想マシン)と呼ばれるプログラム上で動作します。
オブジェクト指向メトリクスを用いた 開発支援に関する研究 --- VC++とMFCを用いた開発を対象として ---
アジャイル開発プロセス 森口朋広.
情報スキル活用 第1週    ガイダンス.
情報基礎A 第14週プログラミング 実際のデータ処理での応用(2)
Presentation transcript:

①システム開発のプロセス(1) (要件定義~テスト) p141~ システム開発技術(1) ①システム開発のプロセス(1)          (要件定義~テスト) p141~ 『システム開発技術』  (C)Copyright, Toshiomi KOBAYASHI,2009-2016

『システム開発技術』 (C)Copyright, Toshiomi KOBAYASHI,2009-2016 (例)図書館管理システム             画面を定めて プログラム      を「作る」必要がある この「作る」 = 「システム開発」 どう「作っていくか」を勉強する 『システム開発技術』  (C)Copyright, Toshiomi KOBAYASHI,2009-2016

『システム開発技術』 (C)Copyright, Toshiomi KOBAYASHI,2009-2016 ①システム開発のプロセス 『システム開発技術』  (C)Copyright, Toshiomi KOBAYASHI,2009-2016

『システム開発技術』 (C)Copyright, Toshiomi KOBAYASHI,2009-2016 外部設計 内部設計 ③プログラミング 結合テスト システムテスト 単体テスト 運用テスト ①要件定義 ④テスト ②設計 システム開発順(小テスト) 『システム開発技術』  (C)Copyright, Toshiomi KOBAYASHI,2009-2016

『システム開発技術』 (C)Copyright, Toshiomi KOBAYASHI,2009-2016 (業務)要件定義書 (1)要件定義(p146) 「業務要件」を定義する 情報システムを使って実現される         「業務内容」を明確にする 経営者~利用者のニーズを調査・分析する 手法:ヒアリングなど(後期第5回) 優先度・予算なども考慮 『システム開発技術』  (C)Copyright, Toshiomi KOBAYASHI,2009-2016

『システム開発技術』 (C)Copyright, Toshiomi KOBAYASHI,2009-2016 (2)設計工程の概要(・・・配布の図) 外部設計 利用者から見える部分 内部設計 開発に必要な部分 『システム開発技術』  (C)Copyright, Toshiomi KOBAYASHI,2009-2016

『システム開発技術』 (C)Copyright, Toshiomi KOBAYASHI,2009-2016 Software Life Cycle Process 『システム開発技術』  (C)Copyright, Toshiomi KOBAYASHI,2009-2016

『システム開発技術』 (C)Copyright, Toshiomi KOBAYASHI,2009-2016 A.外部設計工程の詳細 ①システム要件定義(p146) 業務要件 → 外部設計の要件として再定義 ⅰ)システム機能(機能要件)の明確化 ⅱ)非機能要件の明確化 ②システム方式設計(p148) システム要件 → どういう方式で実装するか ⅰ)ハードウェア方式 (汎用機 vs C/S) ⅱ)ソフトウェア方式 (ERP vs 開発、 手作業の範囲) 『システム開発技術』  (C)Copyright, Toshiomi KOBAYASHI,2009-2016

『システム開発技術』 (C)Copyright, Toshiomi KOBAYASHI,2009-2016 外部設計工程の詳細(続き) ③ソフトウェア要件定義(p148) システム要件 → 内部設計の要件として再定義 ⅰ)データの定義 画面設計 ⅱ)コード設計 処理の正確化 画面 → データ MRT空港は無い 各設計はこのスライドで簡単に 全般にもっと少なく コード設計(期末)、ソフトウェア要件(小テスト) 『システム開発技術』  (C)Copyright, Toshiomi KOBAYASHI,2009-2016

『システム開発技術』 (C)Copyright, Toshiomi KOBAYASHI,2009-2016 ④ソフトウェア方式設計 ソフトウェア要件 → どういう方式で開発するか ⅰ)DBMS・プログラム言語の選定 ⅱ)プログラムや データベースの「全体構造」 ⑤ソフトウェア詳細設計 どういうプログラムを作るか(プログラム設計書) ⅰ)プログラム分割 ⅱ)データベース詳細 内部設計(小テスト) 『システム開発技術』  (C)Copyright, Toshiomi KOBAYASHI,2009-2016

『システム開発技術』 (C)Copyright, Toshiomi KOBAYASHI,2009-2016 (休憩)なぜ「開発工程順」 日本史を例に 「真言宗」と「浄土真宗」はどちらが先 開発工程順を知ってると 「コード設計」 vs 「全体構造」 ③ソフトウェア要件定義 vs ④ソフトウェア方式設計 日本史:「時代」 がある 『システム開発技術』  (C)Copyright, Toshiomi KOBAYASHI,2009-2016

『システム開発技術』 (C)Copyright, Toshiomi KOBAYASHI,2009-2016 プログラミング(PG) アルゴリズムの基本構造(第4回) 『システム開発技術』  (C)Copyright, Toshiomi KOBAYASHI,2009-2016

『システム開発技術』 (C)Copyright, Toshiomi KOBAYASHI,2009-2016 「正しく作られているか」を確認する ①単体テスト(p149) 別名:モジュールテスト デバッグ(DeBug、p228) 『システム開発技術』  (C)Copyright, Toshiomi KOBAYASHI,2009-2016

『システム開発技術』 (C)Copyright, Toshiomi KOBAYASHI,2009-2016 複数のプログラムが連携できているか ボトムアップテスト ・・・ドライバ トップダウンテスト ・・・スタブ (p150) 『システム開発技術』  (C)Copyright, Toshiomi KOBAYASHI,2009-2016

③システムテスト(p149) ④運用テスト 外部設計書(システム要件)どおりできているか 機能テスト 性能テストも 退行(リグレッション)テストも 侵入(ペネトレーション)テスト(p184) 性能テストも ④運用テスト (業務)要件定義書どおりできているか システムテストデータ作成(期末)

『システム開発技術』 (C)Copyright, Toshiomi KOBAYASHI,2009-2016 (5)システム開発への利用部門の参画 外部設計 内部設計 プログラミング 結合テスト システムテスト 単体テスト 運用テスト 要件定義 対応関係 利用部門の参画(小テスト) 『システム開発技術』  (C)Copyright, Toshiomi KOBAYASHI,2009-2016

『システム開発技術』 (C)Copyright, Toshiomi KOBAYASHI,2009-2016 (6)テストの技法 ホワイトボックステスト(p151) 内部構造の経路をテスト 網羅(省略) 単体テストで ブラックボックステスト(p150) 機能が仕様書どおりか 結合テスト以降で 『システム開発技術』  (C)Copyright, Toshiomi KOBAYASHI,2009-2016

『システム開発技術』 (C)Copyright, Toshiomi KOBAYASHI,2009-2016 同値分割 限界値分析 例:10個以上100個未満 正常限界:10、99 異常限界:9、100 同値クラスごとに 各1回テストする 限界値分析(期末) 『システム開発技術』  (C)Copyright, Toshiomi KOBAYASHI,2009-2016

『システム開発技術』 (C)Copyright, Toshiomi KOBAYASHI,2009-2016 End 『システム開発技術』  (C)Copyright, Toshiomi KOBAYASHI,2009-2016

『システム開発技術』 (C)Copyright, Toshiomi KOBAYASHI,2009-2016 Link先 『システム開発技術』  (C)Copyright, Toshiomi KOBAYASHI,2009-2016

『システム開発技術』 (C)Copyright, Toshiomi KOBAYASHI,2009-2016 (戻る) 性能要件 どのくらいの処理能力を持たせるのか 月間処理件数(データベース容量) 1分あたりの処理件数(スループット、第2回) 運用要件 いつでも使えるのか(可用性、第2回) 故障しないか(信頼性) 『システム開発技術』  (C)Copyright, Toshiomi KOBAYASHI,2009-2016

『システム開発技術』 (C)Copyright, Toshiomi KOBAYASHI,2009-2016 Sub NameCheck (Uname As String, Ucode As Integer, Ssw As Integer) Static nmul(1 To 5) As Integer Const p_mod% = 16384 Dim i , j, n, w As Integer nmul(1) = 1: nmul(2) = 2: nmul(3) = 3: nmul(4) = 5: nmul(5) = 7 If LenB(Uname) < 10 Then End w = 0 For i = 1 To 5 For j = 1 To 2 k = (i - 1) * 2 + j n = CInt(Asc(MidB(Uname, k, 1))) w = w + (n * nmul(i) Mod p_mod) Next j Next I If Ssw <> 1 Then If Ucode <> w Then MsgBox "名前が変えられています。" End End If Else Ssw = 0 Ssw = 1 End Sub 他の部分でバグ発生 → 退行 退行しないように 修正したら 他の部分もテスト バグ発生 プログラム修正 (戻る) 『システム開発技術』  (C)Copyright, Toshiomi KOBAYASHI,2009-2016

『システム開発技術』 (C)Copyright, Toshiomi KOBAYASHI,2009-2016 Fin 『システム開発技術』  (C)Copyright, Toshiomi KOBAYASHI,2009-2016

①システム開発のプロセス(2) (テスト管理、・・・) ②ソフトウェアの規模見積り システム開発技術(2) ①システム開発のプロセス(2)           (テスト管理、・・・) ②ソフトウェアの規模見積り 『システム開発技術』  (C)Copyright, Toshiomi KOBAYASHI,2009-2016

『システム開発技術』 (C)Copyright, Toshiomi KOBAYASHI,2009-2016 ①システム開発のプロセス(続き) 『システム開発技術』  (C)Copyright, Toshiomi KOBAYASHI,2009-2016

『システム開発技術』 (C)Copyright, Toshiomi KOBAYASHI,2009-2016 (前回の整理)テスト工程 テスト(開発)のプロセス 単体/結合/システム(機能、性能)/運用 テスト(方式)の種類 トップダウン/ボトムアップ テスト(技法)の種類 ホワイトボックス ブラックボックス 同値分割/限界値分析 『システム開発技術』  (C)Copyright, Toshiomi KOBAYASHI,2009-2016

『システム開発技術』 (C)Copyright, Toshiomi KOBAYASHI,2009-2016 テスト進捗率 信頼度成長曲線(ゴンペルツ曲線). テスト進捗率(期末) 『システム開発技術』  (C)Copyright, Toshiomi KOBAYASHI,2009-2016

『システム開発技術』 (C)Copyright, Toshiomi KOBAYASHI,2009-2016 (補足)開発システムが高品質とは 標準的 高品質(小テスト) 信頼度成長の不思議 『システム開発技術』  (C)Copyright, Toshiomi KOBAYASHI,2009-2016

『システム開発技術』 (C)Copyright, Toshiomi KOBAYASHI,2009-2016 レビューの目的 バグのあるまま次の工程に進まないように 開発時に品質の向上を図る 例)プログラミング ・レビュー レビューの目的(小テスト) 『システム開発技術』  (C)Copyright, Toshiomi KOBAYASHI,2009-2016

『システム開発技術』 (C)Copyright, Toshiomi KOBAYASHI,2009-2016 ソフトウェア開発を委託 受入れテスト(検収テスト) 調達先(SI企業、p126) 委託元 テスト 納入 受入れ 開発 『システム開発技術』  (C)Copyright, Toshiomi KOBAYASHI,2009-2016

『システム開発技術』 (C)Copyright, Toshiomi KOBAYASHI,2009-2016 システム開発のプロセス(再掲) 外部設計 内部設計 ③プログラミング 結合テスト システムテスト 単体テスト 運用テスト ①要件定義 ⑤運用 ④テスト ②設計 『システム開発技術』  (C)Copyright, Toshiomi KOBAYASHI,2009-2016

『システム開発技術』 (C)Copyright, Toshiomi KOBAYASHI,2009-2016 (10)システムの保守(運用に入ると) 情報システムが本稼働(Production Run) 運用(Operation) 日々情報システムを運転する 保守(Maintenance、p152) ①障害(テスト漏れ) ②改善 業務変更 環境変化 情報システム(プログラム)を修正=保守 運用:後期第12回 システム保守(期末) 『システム開発技術』  (C)Copyright, Toshiomi KOBAYASHI,2009-2016

『システム開発技術』 (C)Copyright, Toshiomi KOBAYASHI,2009-2016 事故った! システムの保守 一般的な保守の分類 BM(Breakdown Maintenance、事後修理) 障害を取り除く PM(Preventive Maintenance、予防保守、p152) 障害が起こらないようにする(MTBFを長く) 定期保守 形態別の分類 Remote Maintenance(遠隔地保守) MTTRが短くなる(第2回) 2月1日に 『システム開発技術』  (C)Copyright, Toshiomi KOBAYASHI,2009-2016

『システム開発技術』 (C)Copyright, Toshiomi KOBAYASHI,2009-2016 身の回りの情報処理ー保守 障害が出ないように 運転中でも エ)システム運用中に、障害を引き起こす可能性のあるプログラムを 見つけ出しこれをあらかじめ修正する 『システム開発技術』  (C)Copyright, Toshiomi KOBAYASHI,2009-2016

『システム開発技術』 (C)Copyright, Toshiomi KOBAYASHI,2009-2016 ②ソフトウェアの 規模見積り 規模=工数:人月(単位) (p255) 『システム開発技術』  (C)Copyright, Toshiomi KOBAYASHI,2009-2016

『システム開発技術』 (C)Copyright, Toshiomi KOBAYASHI,2009-2016 プログラムステップ(LOC)法 プログラムの行数(本数)を見積る 過去の開発経験をベースに 行数(本数)から開発作業規模(人月)を計算する FP法 プログラムの点数を見積る 画面数、ファイル数などから 点数から開発作業規模(人月)を計算する 難易度を考慮 基幹情報システムなど Sub NameCheck (Uname As String, Ucode As Integer, Ssw As Integer) Static nmul(1 To 5) As Integer Const p_mod% = 16384 Dim i , j, n, w As Integer nmul(1) = 1: nmul(2) = 2: nmul(3) = 3: nmul(4) = 5: nmul(5) = 7 If LenB(Uname) < 10 Then End w = 0 For i = 1 To 5 For j = 1 To 2 k = (i - 1) * 2 + j n = CInt(Asc(MidB(Uname, k, 1))) w = w + (n * nmul(i) Mod p_mod) Next j Next I If Ssw <> 1 Then If Ucode <> w Then MsgBox "名前が変えられています。" End End If Else Ssw = 0 Ssw = 1 End Sub FP法(期末) プログラムステップ(LOC)法(小テスト) 『システム開発技術』  (C)Copyright, Toshiomi KOBAYASHI,2009-2016

『システム開発技術』 (C)Copyright, Toshiomi KOBAYASHI,2009-2016 規模見積りの例(1) プログラムステップ法 3000本のプログラムを修正 30%修正が必要 1日1人: 0.25本修正できる 本数=3000 x 0.3 = 900 規模(人日)=900 ÷ 0.25 = 3,600 規模見積り(期末) 『システム開発技術』  (C)Copyright, Toshiomi KOBAYASHI,2009-2016

『システム開発技術』 (C)Copyright, Toshiomi KOBAYASHI,2009-2016 規模見積りの例(2) FP法 点数:350(←上2表の積和) 生産性係数:0.073 (人月/FP) 規模(人月)=350 x 0.073 = 25.55 外部入力 外部出力 外部照会 外部インタフェースファイル 内部論理ファイル もっと簡単に・・・LOCの計算は丁寧に」 正確には (1)外部入力 ≒ 入力画面(外部から入力されるデータをもとに、内部論理ファイルを更新する) (2)外部出力 ≒ 出力画面(内部論理ファイルを加工して、外部に出力する、【新たなデータ項目が作られる】) (3)外部照会 ≒ 照会画面(外部からの入力により内部論理ファイルを編集して、                                     外部に出力する、【新たなデータ項目が作られない】) (4)内部論理ファイル ≒ 出力ファイル(ユーザが識別可能な論理的ファイル=>当該システムで扱うファイル) (5)外部インタフェースファイル ≒ 入力ファイル(他のアプリで保守管理され、当該システムでは参照のみ) 『システム開発技術』  (C)Copyright, Toshiomi KOBAYASHI,2009-2016

『システム開発技術』 (C)Copyright, Toshiomi KOBAYASHI,2009-2016 見積りー練習1 各工程の生産性 設計 3Kステップ/月 PG 4Kステップ/月 テスト 6Kステップ/月 12Kステップのプログラム:何ヶ月? 計算 設計 12/3=4 PG 12/4=3 テスト 12/6=2   合計=9ヶ月 『システム開発技術』  (C)Copyright, Toshiomi KOBAYASHI,2009-2016

『システム開発技術』 (C)Copyright, Toshiomi KOBAYASHI,2009-2016 End 『システム開発技術』  (C)Copyright, Toshiomi KOBAYASHI,2009-2016