12
2010/8/29 Kyosuke Yanai 1 システム開発入門 プログラム プログラムの一生 プログラム作成から実行まで 外部データと管理 データ型 業務システムの例、方向性 システム開発のプロセスの例 品質システム ■プログラム作成(基礎) 02_Development システム開発とプログラム作成(概要)

システム開発入門 - ART TAGS · 2010/8/29 Kyosuke Yanai 2 1. プログラム 02_development コンピュータ環境でなんらかの目的を達成するために動作するソフトウェア

  • Upload
    others

  • View
    0

  • Download
    0

Embed Size (px)

Citation preview

Page 1: システム開発入門 - ART TAGS · 2010/8/29 Kyosuke Yanai 2 1. プログラム 02_development コンピュータ環境でなんらかの目的を達成するために動作するソフトウェア

2010/8/29 Kyosuke Yanai 1

システム開発入門

プログラム

プログラムの一生

プログラム作成から実行まで

外部データと管理

データ型

業務システムの例、方向性

システム開発のプロセスの例

品質システム

■プログラム作成(基礎)

02_Development

システム開発とプログラム作成(概要)

Page 2: システム開発入門 - ART TAGS · 2010/8/29 Kyosuke Yanai 2 1. プログラム 02_development コンピュータ環境でなんらかの目的を達成するために動作するソフトウェア

2010/8/29 Kyosuke Yanai 2

02_development 1. プログラム

コンピュータ環境でなんらかの目的を達成するために動作するソフトウェア

手続き(処理)とデータから成る

呼ばれて動作する

手続はデータを操作(生成、参照、更新、削除)する

すべてのプログラムの基本です。

データ手続き手続き操作

メッセージ(呼び出し)

他のプログラム

プログラム

他のプログラムなど

Page 3: システム開発入門 - ART TAGS · 2010/8/29 Kyosuke Yanai 2 1. プログラム 02_development コンピュータ環境でなんらかの目的を達成するために動作するソフトウェア

2010/8/29 Kyosuke Yanai 3

02_development 2.プログラムの一生

コンピュータ環境で生まれてから消滅するまで

誕生する(生成される)

メッセージを受け取り、処理(データを操作)をする

消滅する

処理

生成

他のプログラムプログラム

メッセージ

終了メッセージ

初期化

消滅処理

以降のメッセージを処理できるように準備をします

メッセージに応じた処理をします。さらに他のプログラムを生成し、メッセージを送ることもあります。

自分自身を破壊(destroy)します。

Page 4: システム開発入門 - ART TAGS · 2010/8/29 Kyosuke Yanai 2 1. プログラム 02_development コンピュータ環境でなんらかの目的を達成するために動作するソフトウェア

2010/8/29 Kyosuke Yanai 4

02_development 3.プログラムの作成から実行まで

詳しくは、Javaのコースで紹介します。

ソースコードを作成するソースコードを作成する

Javaの場合Javaの場合

ソースコードをコンパイルするソースコードをコンパイルする

Java環境を起動し、プログラムを実行する

Java環境を起動し、プログラムを実行する

エディタ

Javaコンパイラ

JavaVM

○○○.java

○○○.class

実行結果はプログラム毎に違います

IDE(Integrted Development Environment)

IDE(Integrted Development Environment)

Page 5: システム開発入門 - ART TAGS · 2010/8/29 Kyosuke Yanai 2 1. プログラム 02_development コンピュータ環境でなんらかの目的を達成するために動作するソフトウェア

2010/8/29 Kyosuke Yanai 5

02_development 4.外部データと管理

データは、プログラムに含まれるものとプログラムとは独立して外部システムに存在するものとがあります

長く使用するデータを扱うためには外部システムでの管理が必要です

そのようなプログラムではデータの入出力処理が必要です

外部データ管理

ファイル管理

データベース管理

RDB(Relational DataBase)

OODB(Object Oriented DataBase)

XMLDB

外部データ管理の方式に応じて入出力方法が決まります。

データ

他の手続き他の手続きプログラム

データ

出力手続き出力手続き入力手続き入力手続き

Page 6: システム開発入門 - ART TAGS · 2010/8/29 Kyosuke Yanai 2 1. プログラム 02_development コンピュータ環境でなんらかの目的を達成するために動作するソフトウェア

2010/8/29 Kyosuke Yanai 6

02_development 5.データ型

データにはいろいろな型があります

標準的なデータ型 文字列、数値、配列、表、画像、音声など

個別業務用のデータ型 帳票、アプリケーション間データなど

ファイル管理の対象となるデータとしては、文字列が良く使われます

CSV(Comma Separated Value)形式

XML形式

独自形式

<?xml version="1.0" encoding="Shift_JIS"?><division name="第一営業部"><person no="120" title="部長">

<name>高橋康史</order><birthday>1963-02-11</birthday>

</person><person no="237" title="部長">

<name>山田雄一</order><birthday>1978-05-10</birthday>

</person></division>

部門名, 社員番号, 役職名, 氏名, 生年月日第一営業部, 120, 部長, 高橋康史, 1963-2-11第一営業部, 237, ,山田雄一, 1978-5-10

CSV形式(例) XML形式(例)

部門名: 第一営業部社員番号:120, 役職名:部長, 氏名:高橋康史,生年月日:1963/2/11社員番号:237, 役職名:, 氏名:山田雄一,生年月日:1978/5/10

独自形式(例)

Page 7: システム開発入門 - ART TAGS · 2010/8/29 Kyosuke Yanai 2 1. プログラム 02_development コンピュータ環境でなんらかの目的を達成するために動作するソフトウェア

2010/8/29 Kyosuke Yanai 7

02_development 6. 業務システムの例、方向性

業務システムの統合化、異種システムの統合化

Webサービス

システム

サブシステム

モジュール モジュール

サブシステム

モジュール

業務システム 業務システム間統合/Webサービス

Webシステム Webシステム

Webサービス

業務システム 業務システム 業務システム

受注、発注、在庫管理、販売管理、財務会計、債務管理、人事管理、文書管理、設計変更管理、製造管理、CAD図面管理、

工場管理、製造計画、作業管理、医療事務、リサイクル物品管理、地図情報システム、などなど

•プロセス統合(複数の企業や組織の業務プロセスを統合)•SCM: 商品調達、在庫管理、配送貨物追跡 など

•ポータルサイト、マッチングサイト、ワンストップサービス•通信販売、旅行予約、工事入札、中古車販売、就職支援、行政手続き など

•その他のWebシステム統合

業務システム

注) SCM(Supply Chain Management)

クラウド化へクラウド化へ

Page 8: システム開発入門 - ART TAGS · 2010/8/29 Kyosuke Yanai 2 1. プログラム 02_development コンピュータ環境でなんらかの目的を達成するために動作するソフトウェア

2010/8/29 Kyosuke Yanai 8

02_development 7. システム開発プロセスの例

システム開発は設計やプログラムを行うだけではなく、たくさんの工程を経て行われる。

要件定義 実装設計 製造 テスト 運用管理

Start End Start・・・

システム化計画

テスト計画 導入

システム化計画

機能設計

コーディングレビューユニットテストデバグ・・・

テスト計画書、手順書サブシステムテストシステムインテグレーションシステムテスト業務シナリオテスト負荷テスト異常テスト・・・・・

設置移行運用テスト報告書 ・・・

クラス設計処理設計コーディングルールデータベース物理設計レビュー・・・

プロジェクトマネージメント、品質管理

システム要求分析要件定義書業務フローシステム開発計画書システム概要設計レビュー・・・

機能構成処理フロー画面遷移レビュー・・・

コンセプト提案書計画書・・・

※詳細項目は、企業やプロジェクトによって異なります。

Page 9: システム開発入門 - ART TAGS · 2010/8/29 Kyosuke Yanai 2 1. プログラム 02_development コンピュータ環境でなんらかの目的を達成するために動作するソフトウェア

2010/8/29 Kyosuke Yanai 9

02_development 8.オープン系システムの開発はスパイラル型開発が多い

要求仕様

開発開始時点で決まっていない、開発中にゆれ動く

採用技術

開発中に新たに登場、改訂がある

外部I/F

他システムや端末がさまざまなI/Fを持ち、変化も激しい

開発期間

相対的に短い

システムベンダーの責任が大

オープンなコンポーネント/プラットフォームから顧客個別のシステムを組み上げる

スパイラル型開発/イテレーション型開発スパイラル型開発/イテレーション型開発

少しずつ分析・設計・実装・テストする。

リスクの高いものを優先して手をつける。 具体的なやり方は、プロジェクトの状況/特徴によって選択する。

リスク管理(ウォーターフォール型開発では、プロジェクトの終了間際でリスクが表面化することがある )

Page 10: システム開発入門 - ART TAGS · 2010/8/29 Kyosuke Yanai 2 1. プログラム 02_development コンピュータ環境でなんらかの目的を達成するために動作するソフトウェア

2010/8/29 Kyosuke Yanai 10

02_development 9.スパイラル型 (イテレーション型開発)の例

イテレーション型開発のパターン例(一例です)

ポイント・ユースケースを管理単位として計画・実施管理する・プロジェクトの早期段階でアーキテクチャの設計、プロトタイプによる実現性の検証を行う・変化/変更を恐れない

企画企画 要求仕様要求仕様

アーキテクチャ開発アーキテクチャ開発

プロトタイププロトタイプ

開発開発

設計設計 実装実装 テストテスト 導入導入

アーキテクチャ改訂アーキテクチャ改訂

Page 11: システム開発入門 - ART TAGS · 2010/8/29 Kyosuke Yanai 2 1. プログラム 02_development コンピュータ環境でなんらかの目的を達成するために動作するソフトウェア

2010/8/29 Kyosuke Yanai 11

02_development 10. 品質システム

基本的な考え方: 品質は開発プロセス全体によって確保される

要件管理、プロジェクト計画、進捗管理、外注管理、品質保証、構成管理、レビュー、教育訓練など

ISO 9001:2000 QMS(Quality Management Systems)..….JISでは、JIS Q 9001-2000

ISO 9001:2000 は、製品やサービス(情報サービス含む)を購入者が安心して購入するために、供給者側の品質 管理/品質保証の仕組み・体制を規定した国際規格

CMM(Capability Maturity Model ) 組織のシステム開発プロセスの成熟度モデルをベースとしたプロセス評価を実施

ISO9001やCMM取得は企業にとって常識となっています。

ISO(International Organization for Standardization)国際標準化機構

未成熟な組織

成熟した組織

level-1: 初期レベル

level-2:反復できるレベル

level-3: 定義されたレベル

level-4: 管理されたレベル

level-5: 最適化するレベル

作業の仕方が場当たり的

基本的なプロジェクト管理実施

管理プロセスと開発プロセスの統合化

定量的管理が実施できている

プロセスの最適化と持続的改善

Page 12: システム開発入門 - ART TAGS · 2010/8/29 Kyosuke Yanai 2 1. プログラム 02_development コンピュータ環境でなんらかの目的を達成するために動作するソフトウェア

2010/8/29 Kyosuke Yanai 12

02_development End: システム開発入門 システム開発とプログラム作成

おつかれさまでした。

これで、システム開発入門 システム開発とプログラム作成は終わりです。