33
独立行政法人 情報処理推進機構 1 付録 2IT 知識体系の科目別の関係(科目別) OSS モデルカリキュラムの 27 科目(OSS 基本知識・応用知識)と IT 知識体系との関係を IT 知識体 系の各科目を基点として示す。次頁以降の各科目別の構成は以下の通りである。 IT 知識体系の科目名 OSS モデルカリキュラムにおける関連項目の一覧 (当該科目の内容と関連のある OSS モデルカリキュラムの科目を網掛けした。また、対応関係を[] 内に示した)。 OSS モデルカリキュラムでカバーされない IT 知識体系固有知識の整理 OSS 知識を学習するための前提知識が含まれる)

IT 知識体系の科目別の関係(科目別) · 1 独立行政法人情報処理推進機構 付録2:it知識体系の科目別の関係(科目別) ossモデルカリキュラムの27科目(oss基本知識・応用知識)とit知識体系との関係をit知識体

  • Upload
    others

  • View
    1

  • Download
    0

Embed Size (px)

Citation preview

Page 1: IT 知識体系の科目別の関係(科目別) · 1 独立行政法人情報処理推進機構 付録2:it知識体系の科目別の関係(科目別) ossモデルカリキュラムの27科目(oss基本知識・応用知識)とit知識体系との関係をit知識体

独立行政法人 情報処理推進機構1

付録 2:IT知識体系の科目別の関係(科目別)

OSSモデルカリキュラムの27科目(OSS基本知識・応用知識)と IT知識体系との関係を IT知識体

系の各科目を基点として示す。次頁以降の各科目別の構成は以下の通りである。

・ IT知識体系の科目名

・ OSSモデルカリキュラムにおける関連項目の一覧

(当該科目の内容と関連のあるOSSモデルカリキュラムの科目を網掛けした。また、対応関係を[ ]内に示した)。

・ OSSモデルカリキュラムでカバーされない IT知識体系固有知識の整理

(OSS知識を学習するための前提知識が含まれる)

Page 2: IT 知識体系の科目別の関係(科目別) · 1 独立行政法人情報処理推進機構 付録2:it知識体系の科目別の関係(科目別) ossモデルカリキュラムの27科目(oss基本知識・応用知識)とit知識体系との関係をit知識体

独立行政法人 情報処理推進機構2

(1) IT-IAS 情報保証と情報セキュリティ

<OSSモデルカリキュラム上の関連部分>分野 科目名 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15

オープンソースの理念

オープンソースOSの歴史

代表的なオープンソース

代表的なオープンソース開発言語

代表的なオープンソースアプリケーション

オープンソースの市場動向

オープンソースソフトウェアを用いたシステム事例

オープンソースソフトウェアコミュニティ

オープンソースソフトウェアビジネス

オープンソースの技術情報獲得方法

オープンソースのOSの導入と動作確認

オープンソースのサーバ製品の導入と動作確認

オープンソースのデスクトップ用アプリケーションの導入と動作確認

オープンソースのサーバサイドアプリケーションの導入と動作確認

オープンソースの仮想化ツールの導入と動作確認

オープンソース・ライセンスの概要

代表的なオープンソース・ライセンスの解説[GPL類型]

代表的なオープンソース・ライセンスの解説[MPL類型]

代表的なオープンソース・ライセンスの解説[BSD類型]

知的財産の概要(1) 知的財産の概要(2) OSS利用上の知的財産面での考慮点

OSS利用上の知的財産以外での法務面での考慮点

企業/団体等における法的リスク管理

法的リスクに対応したビジネス

OSS開発コミュニティが検討すべき法的リスク低減策

OSSビジネス関連企業が検討すべき法的リスク低減策

OSSの知的財産問題に関する訴訟/トラブル事例

ソフトウェア特許論争

知的財産関連の出願のガイドライン

コンピュータアーキテクチャの基本

コンピュータハードウェアの基本

CPUアーキテクチャの基本

ディスクと周辺機器の基本

インタフェース技術の基本

ソフトウェアアーキテクチャ

OSのアーキテクチャ

ミドルウェアの種類と特徴

コンピュータシステムの構成

システムアーキテクチャの活用事例

Webシステムのアーキテクチャ

OSSを活用した基盤設計ケースワーク

オープンソースシステムアーキテクチャ構築

OSSの動作環境としてのハードウェア

これからのオープンソースアーキテクチャの動向

分散アーキテクチャとは 名前管理 複製管理 耐故障性 セキュアチャネル CORBA入門(1) CORBA入門(2) Webサービス入門

(1)Webサービス入門(2) マッシュアップ入門 分散トランザクショ

ンピアツーピアアーキテクチャ モビリティ 一貫性 大規模な分散シス

テムの事例

[IT-IAS9] {IT-IAS9] [IT-IAS2]

Linux概要 ファイルシステム ファイルシステム データ保全とバックアップ

データ保全とバックアップ

シェルスクリプトと開発環境

シェルスクリプトと開発環境 ネットワークの基本

Linuxカーネル概論 スケジューリング 割り込みと遅延 システムコール プロセス管理 メモリ管理(1) メモリ管理(2) メモリ管理(3) ファイル管理(1) ファイル管理(2) ファイル管理(3) ネットワーク(1) ネットワーク(2) ネットワーク(3) ネットワーク(4)

Linuxシステム管理の作業概要

Linuxシステム管理・サーバ管理

Linuxシステム管理・ファイル/ディスク管理

Linuxシステム管理・ユーザ管理

Linuxシステム管理・バックアップとログ運用管理

Linuxシステム管理・リソース管理

Linuxシステム管理・カーネルの管理

Linuxシステム管理・ネットワーク管理

Linuxシステム管理・ルーティング管理

Linuxシステム管理・DHCPの構築と運用

Linuxシステム管理・FTPの構築と運用

Linuxシステム管理・NFSの構築と運用

Linuxシステム管理・Sambaの構築と運用

Linuxシステム管理・基本運用作業のトラブルシューティング

Linuxシステム管理・ネットワークのトラブルシューティング

[IT-IAS6]

ログイン手順とコンパイル手順 shellプログラミング ファイル入出力プロ

グラミング ファイルシステム UNIX環境 ライブラリの利用方法と作成手順 データの管理 ソフトウェアの開発

環境 デバッグ プロセスとスレッド シグナル プロセス間通信とパイプ 端末機器の入出力

セマフォ、共有メモリ、メッセージキュー

ネットワークプログラミング

ネットワークサーバの機能と特徴

サーバシステムの導入

ネームサーバの導入 Webサーバの導入 メールサーバ導入

の内容と作業手順スーパーサーバの導入

プロキシサーバの導入

その他のネットワークサーバ導入の作業内容と手順

ネットワークサーバによるルーティング処理、フィルタリング処理の実装

ネットワークサーバによるインターネット接続

サーバの運用管理業務

ログ管理の内容と手順

Linuxサーバセキュリティ

Linuxのサービスセキュリティ

セキュアOSの機能と実装

[IT-IAS1,3,4]

クラスタシステム概論、HAクラスタ(1) HAクラスタ(2) HAクラスタ(3) コンピュータシミュ

レーション並列プログラミング概論

並列プログラミング実践(2)

Beowulf PCクラスタの構築 SCoreクラスタ PCクラスタの周辺

技術グリッド・コンピューティング

オープンネットワークの概念と仕組み

通信の形態とプロトコル

インターネット通信の仕組み

LANネットワークの仕組み

無線ネットワークの種類と通信の仕組み

オープンネットワークの通信仕様

IPネットワークの仕組み

ルーティングの仕組み

ルーティングプロトコルの仕様 TCPの仕組み 通信プロトコルの動

作確認TCPアプリケーションの仕組み・Web

TCPアプリケーションの仕組み・FTP

TCPアプリケーションの仕組み・Telnet

新しいネットワークアーキテクチャ

ネットワークシステム運用の概要

ネットワーク管理の個別項目とその内容

ネットワークのキャパシティ管理の個別項目とその内容

ネットワークの性能管理の個別項目とその内容

TCP/IPの管理 ネットワークサーバの運用管理実践

ネットワークハードウェアの運用管理

ネットワーク管理プロトコルの概要

MRTGによるネットワーク管理の実施

ネットワーク運用設計

ネットワーク運用設計

運用管理の実際的手順と体制

WANの運用管理 ネットワーク障害管理

ネットワークトラブルシューティング

Javaの基本 Java言語の基本構造

オブジェクト指向プログラミングのメリット

Javaによるアプリケーション開発手順

Javaによるネットワークプログラミング

Servlet/JSP/JDBCによるWebアプリケーション開発の概要

JDBCによるデータベースアクセス MVCモデル EJBによるアプリ

ケーション開発

JavaによるServer処理実装の特徴と設計方法

JavaによるWebアプリケーションの設計/実装

JavaによるServerSide Java/Webアプリケーション実装

オブジェクト指向システム分析/設計/実装の実践技術

デザインパターンによる開発手順

Javaのパフォーマンスチューニング

Cの基本 Cの基本構造 文字列操作 関数 ポインタ 構造体 コンソール入出力 ファイル管理 データ構造 C++の基本 C++の基本構造 オブジェクト指向プログラミング

STL(StandardTemplate Library)

GUIアプリケーションの開発

開発ライブラリの使用

LightWeightLanguageの基本 Perlの基本構造 PHPの基本構造 Pythonの基本構造 Rubyの基本構造 オブジェクト指向プ

ログラミング組み込みクラス[データ構造]

組み込みクラス[データ操作]

組み込みクラス[ファイル管理]

GUIアプリケーション開発 Ruby on Rails データベースアプリ

ケーション開発Webアプリケーション開発

プラグイン導入と開発

オープンソースシステムのカスタマイズ

開発フレームワークとは何か

開発フレームワークの種類と特徴

オープンソースによるWebアプリケーションのフレームワーク

フリーのWebコンテナ/J2EEコンテナの概要

オープンソースの開発ツール

開発フレームワークによる開発プロセスの手順

Ruby on Railsによるアプリケーション開発

Strutsとは MyFace(JSF)の開発モデルとは

データベース接続・アクセスのフレームワーク

DIxAOPコンテナの概要

Springフレームワーク Seasar2 Tapestry Strutsによるアプリ

ケーション開発

開発の流れとツール

ソフトウェア開発環境の概要

Linux開発環境におけるソフトウェアアプリケーション開発の概要

バージョン管理ツールの活用

デバッガによるプログラムデバッグの環境

カーネルデバッガを使用したデバッグ

バグ追跡システムを使用したデバッグ

オープンソース開発ツールの種類と機能

統合開発環境を用いた開発手順

オープンソース統合開発環境の種類と特徴

Linux開発環境におけるソフトウェア開発ワークショップ

Linux開発環境におけるソフトウェア開発支援ツール概要

ソフトウェア開発ツールの評価

Eclipseを用いたソフトウェア開発

Eclipseを用いたソフトウェア開発ワークショップ

統合開発環境によるソフトウェア開発

さまざまな統合開発環境 Eclipseとは何か NetBeans IDEとは

何かWideStudioとは何か

Eclipse入門 -セットアップ

Eclipse入門 -基本操作

NetBeans入門 -セットアップ

NetBeans入門 -基本操作

WideStudio入門- セットアップ

WideStudio入門- 基本操作

EclipseによるJavaプログラミング

EclipseによるWebアプリケーション開発

NetBeansによるWebアプリケーション開発

WideStudioによるアプリケーション開発

セキュリティ機能と暗号化の位置づけ 暗号化の方式・共

通鍵暗号方式暗号化の方式・公開鍵暗号方式

情報システムにおける暗号化適用の方式

電子証明書の仕組み OSSの活用シーン

と暗号化無線LANの暗号化 認証と暗号化 IPsecによる暗号化

通信SSHによるトンネリング

SSLプロトコルの仕組み

VPN通信の構築 PKI(公開鍵暗号化基盤)の仕組み

認証基盤構築実習 暗号化・これからの活用シーンと課題

[IT-IAS1] [IT-IAS11] [IT-IAS2] [IT-IAS2,7, 8] [IT-IAS2] [IT-IAS2]

ネットワークセキュリティの概要

ウィルスの特性と対策

ネットワーク攻撃方法の簡易的な分類

TCPにおける不正アクセス技術 Webにおける攻撃 IPにおける不正アク

セス技術

TCP/IPネットワークセキュリティの設計方法

アクセス制御の仕組みとファイアウォールの機能

Linuxのネットワークセキュリティ対策

ネットワーク脆弱性調査

セキュアなネットワークの構築

侵入検知システムの仕様と導入

IDSによる侵入検知

ネットワークセキュリティ構築

モバイルコンピューティングとリモートアクセスのセキュリティ

[IT-IAS1, 2, 3, 4, 6,9] [IT-IAS5] [IT-IAS5, 11] [IT-IAS5, 11] [IT-IAS5] [IT-IAS2, 6] [IT-IAS2] [IT-IAS2] [IT-IAS11]

OSのセキュリティ機能

Linuxサーバのローカルセキュリティ対策

Linuxのネットワークセキュリティ対策

Linuxによるファイアウォール構築

Linuxのサーバセキュリティ設定

安全なリモートアクセス

SSLによるサーバVPNとCA

ドメインネームサービスのセキュリティ対策

電子メールのセキュリティ対策

Webのセキュリティ対策(1)

Webのセキュリティ対策(2)

ファイルサービスのセキュリティ対策

システムログの管理

Linuxによる侵入検知の手法

サーバのセキュリティ監査と設定の自動化

[IT-IAS7, 9] [IT-IAS6] [IT-IAS3]

データベースの基礎理論 RDBMSの基本知識 トランザクションの

基本概念データベースの構成要素 DOAの内容概要 データベース設計

の基本理論 ERモデル 正規化の手順と方法

データベースインデックス

データベースの物理構造

SQLによるデータベースアクセス

SQL実践演習ワークショップ

代表的なオープンソースRDBMS製品

データベース設計構築の実践 データベース構築

データベース運用管理の目的と項目

データベースの運用作業と障害回復

データベース運用設計

データベースセキュリティ

データベースリカバリ設計

データベースの最適化

データベースのトラブル

データベースチューニング データベース構築

データベースインデックスを用いた性能改善

MySQLの導入と運用

データベーストラブルシューティング

データベース運用環境構築 データベース運用 データベースチュー

ニング

組み込みコンピュータシステムとは何か

組み込みコンピュータのアーキテクチャ

組み込みシステムの基本構成

組み込みコンピュータハードウェアの基本

CPUアーキテクチャの基本

組み込みソフトウェアの概要

カーネル処理の概要

リアルタイムシステムの構成と仕組み

組み込みシステムの開発方法

オブジェクト指向分析による組み込みシステムの分析とモデリング

組み込みコンピュータシステムの開発管理

組み込みシステムのアーキテクチャ

組み込みシステムのネットワーク機能

組み込みシステムの設計

これからの組み込みシステムの動向

組み込み開発の流れと環境

組み込み開発環境の概要

組み込み開発環境を用いた開発手順

プログラムデバッグの環境

デバッガソフトを使用したデバッグ環境

ICEを使用したデバッグ環境

ツールチェーンによるデバッグ

組み込みアプリケーションデバッグの手順

組み込みアプリケーションの事例と開発環境

組み込みクロス開発環境の構築

GNU開発環境の特徴

GNU開発環境における組み込みアプリケーション開発

組み込みLinux開発最新デバッグ環境

組み込み開発環境の評価

組み込み開発環境におけるデバッグのパターン演習

タスクとコンテキスト

非同期と同期の設計仕様

タスクの優先度とその制御仕様

組み込みアプリケーション間の資源配分技術

組み込みアプリケーション間のリソースの共有技術

リソース有効活用のアーキテクチャ

プログラム資源の有効活用技術

入出力待ちリソースの有効利用

入出力資源管理 J2MEの仕様 VMの概要のその活用

高信頼性の実装組み込みアプリケーションの実装事例研究

クリティカルなマイコンアプリケーションを活用した設計ケースワーク

組み込みアプリケーションソフトウェアの実装

マルチプロセッサシステム

ハードウェアによる最適化

リアルタイムシステムの設計

リアルタイムソフトウェアの条件と最適化

性能最適化の評価項目

ソフトウェアの最適化

MPUの性能最適化設計

システムの性能要件と評価項目

システム性能の評価方法

性能評価手法の分類 拡張性の評価 システム資源のト

レードオフ

基本ソフトウェアと応用ソフトウェアのトレードオフ

組み込みシステム最適化のための方式設計

最適化のための検討項目

基礎

組み込みSW

RDB

セキュリティ

開発体系

プログラミング

システム

ファイル操作 ユーザの権限と管理 システム管理

並列プログラミング 実践(1) マルチスレッドプログラミング

並列プログラミング 実践(3)

13. Javaに関する知識Ⅰ・Ⅱ

14. C、C++に関する知識Ⅰ・Ⅱ

15. Light WeightLanguageに関する知識

Ⅰ・Ⅱ

11. ネットワーク・アーキテクチャに関する知識Ⅰ・Ⅱ

12. ネットワーク管理に関する知識Ⅰ・Ⅱ

ネットワーク

1. OSSの概要に関する知識Ⅰ・Ⅱ

2. 法務分野に関する基礎知識Ⅰ・Ⅱ

3. コンピューターシステムやアーキテクチャに関する

知識Ⅰ・Ⅱ

4. 分散アーキテクチャに関する知識Ⅱ

5. Linuxの概念や基本操作に関する知識Ⅰ・Ⅱ

6. Linuxのカーネルに関する知識Ⅰ・Ⅱ

7. Linuxのシステム管理に関する知識Ⅰ・Ⅱ

8. Linuxのシステムプログラミングに関する知識Ⅰ・Ⅱ

25. 組み込み開発環境に関する知識Ⅰ・Ⅱ

26. 組み込みアプリケーション開発に関する知識Ⅰ・Ⅱ

27. 組み込みシステム最適化に関する知識Ⅰ・Ⅱ

20. ネットワークセキュリティに関する知識Ⅰ・Ⅱ

21. OSセキュリティに関する知識Ⅰ・Ⅱ

22. RDBに関する基礎知識Ⅰ・Ⅱ

23. RDBシステム管理に関する知識Ⅰ・Ⅱ

9. ネットワークサーバ管理に関する知識Ⅰ・Ⅱ

10. クラスタシステム構築に関する知識Ⅰ・Ⅱ

24. 組み込みシステムに関する知識Ⅰ・Ⅱ

16. 開発フレームワークに関する知識Ⅰ・Ⅱ

17. 開発ツールに関する知識Ⅰ・Ⅱ

18. 統合開発環境に関する知識Ⅰ・Ⅱ

19. 暗号化に関する知識Ⅰ・Ⅱ

Page 3: IT 知識体系の科目別の関係(科目別) · 1 独立行政法人情報処理推進機構 付録2:it知識体系の科目別の関係(科目別) ossモデルカリキュラムの27科目(oss基本知識・応用知識)とit知識体系との関係をit知識体

独立行政法人 情報処理推進機構3

<IT知識体系固有の知識>

科目名

IAS1. 基礎的な問題

IAS2. 情報セキュリティの仕組み( 対策)

IAS3. 運用上の問題

IAS4. ポリシー IAS5. 攻撃 IAS6. 情報セキュリティ分野

IAS7. フォレンジック( 情報証拠)

IAS8. 情報の状態

IAS9. 情報セキュリティサービス

IAS10. 脅威分析モデル

IAS11. 脆弱性

・歴史と用語 ・暗号 ・最近の動向 ・ポリシーの策定 ・ソーシャルエンジニアリング

・ヒューマンコンピュータインタラクション

・法体系 ・転送 ・利用可能性 ・リスク評価 ・犯人

・情報セキュリティの考え方

・暗号システム ・監査 ・ポリシーの管理 ・サービス妨害(DoS)

・情報管理 ・フォレンジック(情報証拠) と他のフォレンジック分野との関係

・ストレージ ・完全性 ・費用便益 ・内部からの攻撃

・設計原理(防御の詳細)

・対称鍵と非対称鍵

・費用便益分析 ・防御 ・プロトコル攻撃 ・統合的プログラミング

・証拠の条件 ・処理 ・機密性 ・外部からの攻撃

・システム/ 情報セキュリティのライフサイクル

・性能( ソフトウェア/ ハードウェア)

・資産管理 ・回避 ・積極的攻撃 ・ネットワーク構築

・捜査と押収 ・認証( アクセス元の信頼性)

・ブラックハット(悪玉ハッカー)

・情報セキュリティの実現の仕組(防御; 暗号)

・実装 ・標準仕様 ・インシデントへの対応( フォレンジック( 情報証拠))

・消極的攻撃 ・プログラミングの基礎

・デジタルな証拠 ・否認防止 ・ホワイトハット(善玉ハッカー)

・情報保証分析モデル(MSR モデル*; 脅威; 脆弱性;攻撃; 対策)

・認証 ・法の施行 ・分野の統合( 物理資源, ネットワーク, インターネットなど)

・バッファーオーバーフロー攻撃

・プラットフォーム技術

・メディア分析 ・無知

・災害復旧(自然災害と人的災害)

・Who you are,what you have,what you know

・法的な問題 ・悪意のあるソフトウェア( ウイルス, トロイの木馬, ワーム)

・システム管理 ・不注意

・フォレンジック(情報証拠)

・生体認証( 生体情報の利用)

・災害復旧(自然災害と人的災害)

・システムインテグレーションとアーキテクチャ

・ネットワーク

・冗長性 ・社会的視点とプロフェッショナルとしての問題

・ハードウェア(設計, 実装, 導入など)

・侵入検知 ・ウェブシステム ・ソフトウェア( 設計, 実装, 導入など)

・物理的な装置 ・物理的アクセス

IT-IAS 情報保証と情報セキュリティ

Page 4: IT 知識体系の科目別の関係(科目別) · 1 独立行政法人情報処理推進機構 付録2:it知識体系の科目別の関係(科目別) ossモデルカリキュラムの27科目(oss基本知識・応用知識)とit知識体系との関係をit知識体

独立行政法人 情報処理推進機構4

(2) IT-SP 社会的な観点とプロフェッショナルとしての課題

<OSSモデルカリキュラム上の関連部分>分野 科目名 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15

オープンソースの理念

オープンソースOSの歴史

代表的なオープンソース

代表的なオープンソース開発言語

代表的なオープンソースアプリケーション

オープンソースの市場動向

オープンソースソフトウェアを用いたシステム事例

オープンソースソフトウェアコミュニティ

オープンソースソフトウェアビジネス

オープンソースの技術情報獲得方法

オープンソースのOSの導入と動作確認

オープンソースのサーバ製品の導入と動作確認

オープンソースのデスクトップ用アプリケーションの導入と動作確認

オープンソースのサーバサイドアプリケーションの導入と動作確認

オープンソースの仮想化ツールの導入と動作確認

オープンソース・ライセンスの概要

代表的なオープンソース・ライセンスの解説[GPL類型]

代表的なオープンソース・ライセンスの解説[MPL類型]

代表的なオープンソース・ライセンスの解説[BSD類型]

知的財産の概要(1) 知的財産の概要(2) OSS利用上の知的財産面での考慮点

OSS利用上の知的財産以外での法務面での考慮点

企業/団体等における法的リスク管理

法的リスクに対応したビジネス

OSS開発コミュニティが検討すべき法的リスク低減策

OSSビジネス関連企業が検討すべき法的リスク低減策

OSSの知的財産問題に関する訴訟/トラブル事例

ソフトウェア特許論争

知的財産関連の出願のガイドライン

[IT-SP5] [IT-SP5] [IT-SP5] [IT-SP5,6] [IT-SP-5]

コンピュータアーキテクチャの基本

コンピュータハードウェアの基本

CPUアーキテクチャの基本

ディスクと周辺機器の基本

インタフェース技術の基本

ソフトウェアアーキテクチャ

OSのアーキテクチャ

ミドルウェアの種類と特徴

コンピュータシステムの構成

システムアーキテクチャの活用事例

Webシステムのアーキテクチャ

OSSを活用した基盤設計ケースワーク

オープンソースシステムアーキテクチャ構築

OSSの動作環境としてのハードウェア

これからのオープンソースアーキテクチャの動向

[IT-SP2]

分散アーキテクチャとは 名前管理 複製管理 耐故障性 セキュアチャネル CORBA入門(1) CORBA入門(2) Webサービス入門

(1)Webサービス入門(2) マッシュアップ入門 分散トランザクショ

ンピアツーピアアーキテクチャ モビリティ 一貫性 大規模な分散シス

テムの事例

Linux概要 ファイルシステム ファイルシステム データ保全とバックアップ

データ保全とバックアップ

シェルスクリプトと開発環境

シェルスクリプトと開発環境 ネットワークの基本

Linuxカーネル概論 スケジューリング 割り込みと遅延 システムコール プロセス管理 メモリ管理(1) メモリ管理(2) メモリ管理(3) ファイル管理(1) ファイル管理(2) ファイル管理(3) ネットワーク(1) ネットワーク(2) ネットワーク(3) ネットワーク(4)

Linuxシステム管理の作業概要

Linuxシステム管理・サーバ管理

Linuxシステム管理・ファイル/ディスク管理

Linuxシステム管理・ユーザ管理

Linuxシステム管理・バックアップとログ運用管理

Linuxシステム管理・リソース管理

Linuxシステム管理・カーネルの管理

Linuxシステム管理・ネットワーク管理

Linuxシステム管理・ルーティング管理

Linuxシステム管理・DHCPの構築と運用

Linuxシステム管理・FTPの構築と運用

Linuxシステム管理・NFSの構築と運用

Linuxシステム管理・Sambaの構築と運用

Linuxシステム管理・基本運用作業のトラブルシューティング

Linuxシステム管理・ネットワークのトラブルシューティング

ログイン手順とコンパイル手順 shellプログラミング ファイル入出力プロ

グラミング ファイルシステム UNIX環境 ライブラリの利用方法と作成手順 データの管理 ソフトウェアの開発

環境 デバッグ プロセスとスレッド シグナル プロセス間通信とパイプ 端末機器の入出力

セマフォ、共有メモリ、メッセージキュー

ネットワークプログラミング

ネットワークサーバの機能と特徴

サーバシステムの導入

ネームサーバの導入 Webサーバの導入 メールサーバ導入

の内容と作業手順スーパーサーバの導入

プロキシサーバの導入

その他のネットワークサーバ導入の作業内容と手順

ネットワークサーバによるルーティング処理、フィルタリング処理の実装

ネットワークサーバによるインターネット接続

サーバの運用管理業務

ログ管理の内容と手順

Linuxサーバセキュリティ

Linuxのサービスセキュリティ

セキュアOSの機能と実装

クラスタシステム概論、HAクラスタ(1) HAクラスタ(2) HAクラスタ(3) コンピュータシミュ

レーション並列プログラミング概論

並列プログラミング実践(2)

Beowulf PCクラスタの構築 SCoreクラスタ PCクラスタの周辺

技術グリッド・コンピューティング

オープンネットワークの概念と仕組み

通信の形態とプロトコル

インターネット通信の仕組み

LANネットワークの仕組み

無線ネットワークの種類と通信の仕組み

オープンネットワークの通信仕様

IPネットワークの仕組み

ルーティングの仕組み

ルーティングプロトコルの仕様 TCPの仕組み 通信プロトコルの動

作確認TCPアプリケーションの仕組み・Web

TCPアプリケーションの仕組み・FTP

TCPアプリケーションの仕組み・Telnet

新しいネットワークアーキテクチャ

ネットワークシステム運用の概要

ネットワーク管理の個別項目とその内容

ネットワークのキャパシティ管理の個別項目とその内容

ネットワークの性能管理の個別項目とその内容

TCP/IPの管理 ネットワークサーバの運用管理実践

ネットワークハードウェアの運用管理

ネットワーク管理プロトコルの概要

MRTGによるネットワーク管理の実施

ネットワーク運用設計

ネットワーク運用設計

運用管理の実際的手順と体制

WANの運用管理 ネットワーク障害管理

ネットワークトラブルシューティング

Javaの基本 Java言語の基本構造

オブジェクト指向プログラミングのメリット

Javaによるアプリケーション開発手順

Javaによるネットワークプログラミング

Servlet/JSP/JDBCによるWebアプリケーション開発の概要

JDBCによるデータベースアクセス MVCモデル EJBによるアプリ

ケーション開発

JavaによるServer処理実装の特徴と設計方法

JavaによるWebアプリケーションの設計/実装

JavaによるServerSide Java/Webアプリケーション実装

オブジェクト指向システム分析/設計/実装の実践技術

デザインパターンによる開発手順

Javaのパフォーマンスチューニング

Cの基本 Cの基本構造 文字列操作 関数 ポインタ 構造体 コンソール入出力 ファイル管理 データ構造 C++の基本 C++の基本構造 オブジェクト指向プログラミング

STL(StandardTemplate Library)

GUIアプリケーションの開発

開発ライブラリの使用

LightWeightLanguageの基本 Perlの基本構造 PHPの基本構造 Pythonの基本構造 Rubyの基本構造 オブジェクト指向プ

ログラミング組み込みクラス[データ構造]

組み込みクラス[データ操作]

組み込みクラス[ファイル管理]

GUIアプリケーション開発 Ruby on Rails データベースアプリ

ケーション開発Webアプリケーション開発

プラグイン導入と開発

オープンソースシステムのカスタマイズ

開発フレームワークとは何か

開発フレームワークの種類と特徴

オープンソースによるWebアプリケーションのフレームワーク

フリーのWebコンテナ/J2EEコンテナの概要

オープンソースの開発ツール

開発フレームワークによる開発プロセスの手順

Ruby on Railsによるアプリケーション開発

Strutsとは MyFace(JSF)の開発モデルとは

データベース接続・アクセスのフレームワーク

DIxAOPコンテナの概要

Springフレームワーク Seasar2 Tapestry Strutsによるアプリ

ケーション開発

開発の流れとツール

ソフトウェア開発環境の概要

Linux開発環境におけるソフトウェアアプリケーション開発の概要

バージョン管理ツールの活用

デバッガによるプログラムデバッグの環境

カーネルデバッガを使用したデバッグ

バグ追跡システムを使用したデバッグ

オープンソース開発ツールの種類と機能

統合開発環境を用いた開発手順

オープンソース統合開発環境の種類と特徴

Linux開発環境におけるソフトウェア開発ワークショップ

Linux開発環境におけるソフトウェア開発支援ツール概要

ソフトウェア開発ツールの評価

Eclipseを用いたソフトウェア開発

Eclipseを用いたソフトウェア開発ワークショップ

統合開発環境によるソフトウェア開発

さまざまな統合開発環境 Eclipseとは何か NetBeans IDEとは

何かWideStudioとは何か

Eclipse入門 -セットアップ

Eclipse入門 -基本操作

NetBeans入門 -セットアップ

NetBeans入門 -基本操作

WideStudio入門- セットアップ

WideStudio入門- 基本操作

EclipseによるJavaプログラミング

EclipseによるWebアプリケーション開発

NetBeansによるWebアプリケーション開発

WideStudioによるアプリケーション開発

セキュリティ機能と暗号化の位置づけ 暗号化の方式・共

通鍵暗号方式暗号化の方式・公開鍵暗号方式

情報システムにおける暗号化適用の方式

電子証明書の仕組み OSSの活用シーン

と暗号化無線LANの暗号化 認証と暗号化 IPsecによる暗号化

通信SSHによるトンネリング

SSLプロトコルの仕組み

VPN通信の構築 PKI(公開鍵暗号化基盤)の仕組み

認証基盤構築実習 暗号化・これからの活用シーンと課題

ネットワークセキュリティの概要

ウィルスの特性と対策

ネットワーク攻撃方法の簡易的な分類

TCPにおける不正アクセス技術 Webにおける攻撃 IPにおける不正アク

セス技術

TCP/IPネットワークセキュリティの設計方法

アクセス制御の仕組みとファイアウォールの機能

Linuxのネットワークセキュリティ対策

ネットワーク脆弱性調査

セキュアなネットワークの構築

侵入検知システムの仕様と導入

IDSによる侵入検知

ネットワークセキュリティ構築

モバイルコンピューティングとリモートアクセスのセキュリティ

[IT-SP6]

OSのセキュリティ機能

Linuxサーバのローカルセキュリティ対策

Linuxのネットワークセキュリティ対策

Linuxによるファイアウォール構築

Linuxのサーバセキュリティ設定

安全なリモートアクセス

SSLによるサーバVPNとCA

ドメインネームサービスのセキュリティ対策

電子メールのセキュリティ対策

Webのセキュリティ対策(1)

Webのセキュリティ対策(2)

ファイルサービスのセキュリティ対策

システムログの管理

Linuxによる侵入検知の手法

サーバのセキュリティ監査と設定の自動化

データベースの基礎理論 RDBMSの基本知識 トランザクションの

基本概念データベースの構成要素 DOAの内容概要 データベース設計

の基本理論 ERモデル 正規化の手順と方法

データベースインデックス

データベースの物理構造

SQLによるデータベースアクセス

SQL実践演習ワークショップ

代表的なオープンソースRDBMS製品

データベース設計構築の実践 データベース構築

データベース運用管理の目的と項目

データベースの運用作業と障害回復

データベース運用設計

データベースセキュリティ

データベースリカバリ設計

データベースの最適化

データベースのトラブル

データベースチューニング データベース構築

データベースインデックスを用いた性能改善

MySQLの導入と運用

データベーストラブルシューティング

データベース運用環境構築 データベース運用 データベースチュー

ニング

組み込みコンピュータシステムとは何か

組み込みコンピュータのアーキテクチャ

組み込みシステムの基本構成

組み込みコンピュータハードウェアの基本

CPUアーキテクチャの基本

組み込みソフトウェアの概要

カーネル処理の概要

リアルタイムシステムの構成と仕組み

組み込みシステムの開発方法

オブジェクト指向分析による組み込みシステムの分析とモデリング

組み込みコンピュータシステムの開発管理

組み込みシステムのアーキテクチャ

組み込みシステムのネットワーク機能

組み込みシステムの設計

これからの組み込みシステムの動向

組み込み開発の流れと環境

組み込み開発環境の概要

組み込み開発環境を用いた開発手順

プログラムデバッグの環境

デバッガソフトを使用したデバッグ環境

ICEを使用したデバッグ環境

ツールチェーンによるデバッグ

組み込みアプリケーションデバッグの手順

組み込みアプリケーションの事例と開発環境

組み込みクロス開発環境の構築

GNU開発環境の特徴

GNU開発環境における組み込みアプリケーション開発

組み込みLinux開発最新デバッグ環境

組み込み開発環境の評価

組み込み開発環境におけるデバッグのパターン演習

タスクとコンテキスト

非同期と同期の設計仕様

タスクの優先度とその制御仕様

組み込みアプリケーション間の資源配分技術

組み込みアプリケーション間のリソースの共有技術

リソース有効活用のアーキテクチャ

プログラム資源の有効活用技術

入出力待ちリソースの有効利用

入出力資源管理 J2MEの仕様 VMの概要のその活用

高信頼性の実装組み込みアプリケーションの実装事例研究

クリティカルなマイコンアプリケーションを活用した設計ケースワーク

組み込みアプリケーションソフトウェアの実装

マルチプロセッサシステム

ハードウェアによる最適化

リアルタイムシステムの設計

リアルタイムソフトウェアの条件と最適化

性能最適化の評価項目

ソフトウェアの最適化

MPUの性能最適化設計

システムの性能要件と評価項目

システム性能の評価方法

性能評価手法の分類 拡張性の評価 システム資源のト

レードオフ

基本ソフトウェアと応用ソフトウェアのトレードオフ

組み込みシステム最適化のための方式設計

最適化のための検討項目

基礎

組み込みSW

RDB

セキュリティ

開発体系

プログラミング

システム

ファイル操作 ユーザの権限と管理 システム管理

並列プログラミング 実践(1) マルチスレッドプログラミング

並列プログラミング 実践(3)

13. Javaに関する知識Ⅰ・Ⅱ

14. C、C++に関する知識Ⅰ・Ⅱ

15. Light WeightLanguageに関する知識

Ⅰ・Ⅱ

11. ネットワーク・アーキテクチャに関する知識Ⅰ・Ⅱ

12. ネットワーク管理に関する知識Ⅰ・Ⅱ

ネットワーク

1. OSSの概要に関する知識Ⅰ・Ⅱ

2. 法務分野に関する基礎知識Ⅰ・Ⅱ

3. コンピューターシステムやアーキテクチャに関する

知識Ⅰ・Ⅱ

4. 分散アーキテクチャに関する知識Ⅱ

5. Linuxの概念や基本操作に関する知識Ⅰ・Ⅱ

6. Linuxのカーネルに関する知識Ⅰ・Ⅱ

7. Linuxのシステム管理に関する知識Ⅰ・Ⅱ

8. Linuxのシステムプログラミングに関する知識Ⅰ・Ⅱ

25. 組み込み開発環境に関する知識Ⅰ・Ⅱ

26. 組み込みアプリケーション開発に関する知識Ⅰ・Ⅱ

27. 組み込みシステム最適化に関する知識Ⅰ・Ⅱ

20. ネットワークセキュリティに関する知識Ⅰ・Ⅱ

21. OSセキュリティに関する知識Ⅰ・Ⅱ

22. RDBに関する基礎知識Ⅰ・Ⅱ

23. RDBシステム管理に関する知識Ⅰ・Ⅱ

9. ネットワークサーバ管理に関する知識Ⅰ・Ⅱ

10. クラスタシステム構築に関する知識Ⅰ・Ⅱ

24. 組み込みシステムに関する知識Ⅰ・Ⅱ

16. 開発フレームワークに関する知識Ⅰ・Ⅱ

17. 開発ツールに関する知識Ⅰ・Ⅱ

18. 統合開発環境に関する知識Ⅰ・Ⅱ

19. 暗号化に関する知識Ⅰ・Ⅱ

Page 5: IT 知識体系の科目別の関係(科目別) · 1 独立行政法人情報処理推進機構 付録2:it知識体系の科目別の関係(科目別) ossモデルカリキュラムの27科目(oss基本知識・応用知識)とit知識体系との関係をit知識体

独立行政法人 情報処理推進機構5

<IT知識体系固有の知識>

科目名

SP1. プロフェッショナルとしてのコミュニケーション

SP2. コンピュータの歴史

SP3. コンピュータを取り巻く社会環境

SP4. チームワーク

SP5. 知的財産権

SP6. コンピュータの法的問題

SP7. 組織の中のI T

SP8. プロフェッショナルとしての倫理的な問題と責任

SP9. プライバシーと個人の自由

・技術メモ ・コンピュータハードウェア, ソフトウェアの歴史、インターネットの歴史、通信

・社会情報学 ・共同作業 ・ 国ごとの違い ・法令遵守( 個人情報保護法)

・ビジネスプロセス

・学会との関係 ・個人情報保護法

・システム文書 ・IT プロフェッショナル

・IT による社会への影響

・グループダイナミクス

・ 著作権法(DMCA 及びTEACHI 議定書)

・ハッカー/ クラッカー

・IT 環境 ・プロフェッショナルの行動規約(IEEE, ACM, 情報処理学会など)

・E.U.のデータ保護

・技術要求 ・IT 教育 ・オンラインコミュニティとその社会的意味

・ひとりひとりのリーダーシップスタイル

・ 情報の所有権 ・コンピュータ犯罪

・組織文化 ・倫理学とその歴史

・多様性の問題 ・パーソナリティタイプ

・ 盗用 ・ウイルス ・プロフェッショナリズム

・個人情報の盗難

・受け入れられやすさ

・グループウェア ・ 著作権, 産業財産権(実用新案権, 特許権,意匠権, 商標権) に関する法律

・システムの利用規定と監視

・倫理的ハッキング

・グローバル化問題

・ 企業秘密 ・コンピュータを利用する上でのリスクと賠償問題

・コンピュータの経済的問題

・説明責任, 職責, 賠償責任

・情報格差

IT-SP 社会的な観点とプロフェッショナルとしての課題

Page 6: IT 知識体系の科目別の関係(科目別) · 1 独立行政法人情報処理推進機構 付録2:it知識体系の科目別の関係(科目別) ossモデルカリキュラムの27科目(oss基本知識・応用知識)とit知識体系との関係をit知識体

独立行政法人 情報処理推進機構6

(3) IT-IM 情報管理

<OSSモデルカリキュラム上の関連部分>分野 科目名 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15

オープンソースの理念

オープンソースOSの歴史

代表的なオープンソース

代表的なオープンソース開発言語

代表的なオープンソースアプリケーション

オープンソースの市場動向

オープンソースソフトウェアを用いたシステム事例

オープンソースソフトウェアコミュニティ

オープンソースソフトウェアビジネス

オープンソースの技術情報獲得方法

オープンソースのOSの導入と動作確認

オープンソースのサーバ製品の導入と動作確認

オープンソースのデスクトップ用アプリケーションの導入と動作確認

オープンソースのサーバサイドアプリケーションの導入と動作確認

オープンソースの仮想化ツールの導入と動作確認

オープンソース・ライセンスの概要

代表的なオープンソース・ライセンスの解説[GPL類型]

代表的なオープンソース・ライセンスの解説[MPL類型]

代表的なオープンソース・ライセンスの解説[BSD類型]

知的財産の概要(1) 知的財産の概要(2) OSS利用上の知的財産面での考慮点

OSS利用上の知的財産以外での法務面での考慮点

企業/団体等における法的リスク管理

法的リスクに対応したビジネス

OSS開発コミュニティが検討すべき法的リスク低減策

OSSビジネス関連企業が検討すべき法的リスク低減策

OSSの知的財産問題に関する訴訟/トラブル事例

ソフトウェア特許論争

知的財産関連の出願のガイドライン

コンピュータアーキテクチャの基本

コンピュータハードウェアの基本

CPUアーキテクチャの基本

ディスクと周辺機器の基本

インタフェース技術の基本

ソフトウェアアーキテクチャ

OSのアーキテクチャ

ミドルウェアの種類と特徴

コンピュータシステムの構成

システムアーキテクチャの活用事例

Webシステムのアーキテクチャ

OSSを活用した基盤設計ケースワーク

オープンソースシステムアーキテクチャ構築

OSSの動作環境としてのハードウェア

これからのオープンソースアーキテクチャの動向

[IT-IM1]

分散アーキテクチャとは 名前管理 複製管理 耐故障性 セキュアチャネル CORBA入門(1) CORBA入門(2) Webサービス入門

(1)Webサービス入門(2) マッシュアップ入門 分散トランザクショ

ンピアツーピアアーキテクチャ モビリティ 一貫性 大規模な分散シス

テムの事例

[IT-IM5] [IT-IM5] [IT-IM5]

Linux概要 ファイルシステム ファイルシステム データ保全とバックアップ

データ保全とバックアップ

シェルスクリプトと開発環境

シェルスクリプトと開発環境 ネットワークの基本

[IT-IM-1]

Linuxカーネル概論 スケジューリング 割り込みと遅延 システムコール プロセス管理 メモリ管理(1) メモリ管理(2) メモリ管理(3) ファイル管理(1) ファイル管理(2) ファイル管理(3) ネットワーク(1) ネットワーク(2) ネットワーク(3) ネットワーク(4)

Linuxシステム管理の作業概要

Linuxシステム管理・サーバ管理

Linuxシステム管理・ファイル/ディスク管理

Linuxシステム管理・ユーザ管理

Linuxシステム管理・バックアップとログ運用管理

Linuxシステム管理・リソース管理

Linuxシステム管理・カーネルの管理

Linuxシステム管理・ネットワーク管理

Linuxシステム管理・ルーティング管理

Linuxシステム管理・DHCPの構築と運用

Linuxシステム管理・FTPの構築と運用

Linuxシステム管理・NFSの構築と運用

Linuxシステム管理・Sambaの構築と運用

Linuxシステム管理・基本運用作業のトラブルシューティング

Linuxシステム管理・ネットワークのトラブルシューティング

ログイン手順とコンパイル手順 shellプログラミング ファイル入出力プロ

グラミング ファイルシステム UNIX環境 ライブラリの利用方法と作成手順 データの管理 ソフトウェアの開発

環境 デバッグ プロセスとスレッド シグナル プロセス間通信とパイプ 端末機器の入出力

セマフォ、共有メモリ、メッセージキュー

ネットワークプログラミング

ネットワークサーバの機能と特徴

サーバシステムの導入

ネームサーバの導入 Webサーバの導入 メールサーバ導入

の内容と作業手順スーパーサーバの導入

プロキシサーバの導入

その他のネットワークサーバ導入の作業内容と手順

ネットワークサーバによるルーティング処理、フィルタリング処理の実装

ネットワークサーバによるインターネット接続

サーバの運用管理業務

ログ管理の内容と手順

Linuxサーバセキュリティ

Linuxのサービスセキュリティ

セキュアOSの機能と実装

クラスタシステム概論、HAクラスタ(1) HAクラスタ(2) HAクラスタ(3) コンピュータシミュ

レーション並列プログラミング概論

並列プログラミング実践(2)

Beowulf PCクラスタの構築 SCoreクラスタ PCクラスタの周辺

技術グリッド・コンピューティング

オープンネットワークの概念と仕組み

通信の形態とプロトコル

インターネット通信の仕組み

LANネットワークの仕組み

無線ネットワークの種類と通信の仕組み

オープンネットワークの通信仕様

IPネットワークの仕組み

ルーティングの仕組み

ルーティングプロトコルの仕様 TCPの仕組み 通信プロトコルの動

作確認TCPアプリケーションの仕組み・Web

TCPアプリケーションの仕組み・FTP

TCPアプリケーションの仕組み・Telnet

新しいネットワークアーキテクチャ

ネットワークシステム運用の概要

ネットワーク管理の個別項目とその内容

ネットワークのキャパシティ管理の個別項目とその内容

ネットワークの性能管理の個別項目とその内容

TCP/IPの管理 ネットワークサーバの運用管理実践

ネットワークハードウェアの運用管理

ネットワーク管理プロトコルの概要

MRTGによるネットワーク管理の実施

ネットワーク運用設計

ネットワーク運用設計

運用管理の実際的手順と体制

WANの運用管理 ネットワーク障害管理

ネットワークトラブルシューティング

Javaの基本 Java言語の基本構造

オブジェクト指向プログラミングのメリット

Javaによるアプリケーション開発手順

Javaによるネットワークプログラミング

Servlet/JSP/JDBCによるWebアプリケーション開発の概要

JDBCによるデータベースアクセス MVCモデル EJBによるアプリ

ケーション開発

JavaによるServer処理実装の特徴と設計方法

JavaによるWebアプリケーションの設計/実装

JavaによるServerSide Java/Webアプリケーション実装

オブジェクト指向システム分析/設計/実装の実践技術

デザインパターンによる開発手順

Javaのパフォーマンスチューニング

[IT-IM5] [IT-IM5] [IT-IM-4,5] [IT-IM5]

Cの基本 Cの基本構造 文字列操作 関数 ポインタ 構造体 コンソール入出力 ファイル管理 データ構造 C++の基本 C++の基本構造 オブジェクト指向プログラミング

STL(StandardTemplate Library)

GUIアプリケーションの開発

開発ライブラリの使用

LightWeightLanguageの基本 Perlの基本構造 PHPの基本構造 Pythonの基本構造 Rubyの基本構造 オブジェクト指向プ

ログラミング組み込みクラス[データ構造]

組み込みクラス[データ操作]

組み込みクラス[ファイル管理]

GUIアプリケーション開発 Ruby on Rails データベースアプリ

ケーション開発Webアプリケーション開発

プラグイン導入と開発

オープンソースシステムのカスタマイズ

開発フレームワークとは何か

開発フレームワークの種類と特徴

オープンソースによるWebアプリケーションのフレームワーク

フリーのWebコンテナ/J2EEコンテナの概要

オープンソースの開発ツール

開発フレームワークによる開発プロセスの手順

Ruby on Railsによるアプリケーション開発

Strutsとは MyFace(JSF)の開発モデルとは

データベース接続・アクセスのフレームワーク

DIxAOPコンテナの概要

Springフレームワーク Seasar2 Tapestry Strutsによるアプリ

ケーション開発

開発の流れとツール

ソフトウェア開発環境の概要

Linux開発環境におけるソフトウェアアプリケーション開発の概要

バージョン管理ツールの活用

デバッガによるプログラムデバッグの環境

カーネルデバッガを使用したデバッグ

バグ追跡システムを使用したデバッグ

オープンソース開発ツールの種類と機能

統合開発環境を用いた開発手順

オープンソース統合開発環境の種類と特徴

Linux開発環境におけるソフトウェア開発ワークショップ

Linux開発環境におけるソフトウェア開発支援ツール概要

ソフトウェア開発ツールの評価

Eclipseを用いたソフトウェア開発

Eclipseを用いたソフトウェア開発ワークショップ

統合開発環境によるソフトウェア開発

さまざまな統合開発環境 Eclipseとは何か NetBeans IDEとは

何かWideStudioとは何か

Eclipse入門 -セットアップ

Eclipse入門 -基本操作

NetBeans入門 -セットアップ

NetBeans入門 -基本操作

WideStudio入門- セットアップ

WideStudio入門- 基本操作

EclipseによるJavaプログラミング

EclipseによるWebアプリケーション開発

NetBeansによるWebアプリケーション開発

WideStudioによるアプリケーション開発

セキュリティ機能と暗号化の位置づけ 暗号化の方式・共

通鍵暗号方式暗号化の方式・公開鍵暗号方式

情報システムにおける暗号化適用の方式

電子証明書の仕組み OSSの活用シーン

と暗号化無線LANの暗号化 認証と暗号化 IPsecによる暗号化

通信SSHによるトンネリング

SSLプロトコルの仕組み

VPN通信の構築 PKI(公開鍵暗号化基盤)の仕組み

認証基盤構築実習 暗号化・これからの活用シーンと課題

ネットワークセキュリティの概要

ウィルスの特性と対策

ネットワーク攻撃方法の簡易的な分類

TCPにおける不正アクセス技術 Webにおける攻撃 IPにおける不正アク

セス技術

TCP/IPネットワークセキュリティの設計方法

アクセス制御の仕組みとファイアウォールの機能

Linuxのネットワークセキュリティ対策

ネットワーク脆弱性調査

セキュアなネットワークの構築

侵入検知システムの仕様と導入

IDSによる侵入検知

ネットワークセキュリティ構築

モバイルコンピューティングとリモートアクセスのセキュリティ

OSのセキュリティ機能

Linuxサーバのローカルセキュリティ対策

Linuxのネットワークセキュリティ対策

Linuxによるファイアウォール構築

Linuxのサーバセキュリティ設定

安全なリモートアクセス

SSLによるサーバVPNとCA

ドメインネームサービスのセキュリティ対策

電子メールのセキュリティ対策

Webのセキュリティ対策(1)

Webのセキュリティ対策(2)

ファイルサービスのセキュリティ対策

システムログの管理

Linuxによる侵入検知の手法

サーバのセキュリティ監査と設定の自動化

[IT-IM5]

データベースの基礎理論 RDBMSの基本知識 トランザクションの

基本概念データベースの構成要素 DOAの内容概要 データベース設計

の基本理論 ERモデル 正規化の手順と方法

データベースインデックス

データベースの物理構造

SQLによるデータベースアクセス

SQL実践演習ワークショップ

代表的なオープンソースRDBMS製品

データベース設計構築の実践 データベース構築

[IT-IM1,2] [IT-IM3] [IT-IM5] [IT-IM3] [IT-IM4] [IT-IM4] [IT-IM4] [IT-IM3] [IT-IM5] [IT-IM-2] [IT-IM-2] [IT-IM-3,4] [IT-IM-2]

データベース運用管理の目的と項目

データベースの運用作業と障害回復

データベース運用設計

データベースセキュリティ

データベースリカバリ設計

データベースの最適化

データベースのトラブル

データベースチューニング データベース構築

データベースインデックスを用いた性能改善

MySQLの導入と運用

データベーストラブルシューティング

データベース運用環境構築 データベース運用 データベースチュー

ニング

[IT-IM5] [IT-IM5] [IT-IM4] [IT-IM5] [IT-IM1,5] [IT-IM4,5] [IT-IM2]

組み込みコンピュータシステムとは何か

組み込みコンピュータのアーキテクチャ

組み込みシステムの基本構成

組み込みコンピュータハードウェアの基本

CPUアーキテクチャの基本

組み込みソフトウェアの概要

カーネル処理の概要

リアルタイムシステムの構成と仕組み

組み込みシステムの開発方法

オブジェクト指向分析による組み込みシステムの分析とモデリング

組み込みコンピュータシステムの開発管理

組み込みシステムのアーキテクチャ

組み込みシステムのネットワーク機能

組み込みシステムの設計

これからの組み込みシステムの動向

組み込み開発の流れと環境

組み込み開発環境の概要

組み込み開発環境を用いた開発手順

プログラムデバッグの環境

デバッガソフトを使用したデバッグ環境

ICEを使用したデバッグ環境

ツールチェーンによるデバッグ

組み込みアプリケーションデバッグの手順

組み込みアプリケーションの事例と開発環境

組み込みクロス開発環境の構築

GNU開発環境の特徴

GNU開発環境における組み込みアプリケーション開発

組み込みLinux開発最新デバッグ環境

組み込み開発環境の評価

組み込み開発環境におけるデバッグのパターン演習

タスクとコンテキスト

非同期と同期の設計仕様

タスクの優先度とその制御仕様

組み込みアプリケーション間の資源配分技術

組み込みアプリケーション間のリソースの共有技術

リソース有効活用のアーキテクチャ

プログラム資源の有効活用技術

入出力待ちリソースの有効利用

入出力資源管理 J2MEの仕様 VMの概要のその活用

高信頼性の実装組み込みアプリケーションの実装事例研究

クリティカルなマイコンアプリケーションを活用した設計ケースワーク

組み込みアプリケーションソフトウェアの実装

マルチプロセッサシステム

ハードウェアによる最適化

リアルタイムシステムの設計

リアルタイムソフトウェアの条件と最適化

性能最適化の評価項目

ソフトウェアの最適化

MPUの性能最適化設計

システムの性能要件と評価項目

システム性能の評価方法

性能評価手法の分類 拡張性の評価 システム資源のト

レードオフ

基本ソフトウェアと応用ソフトウェアのトレードオフ

組み込みシステム最適化のための方式設計

最適化のための検討項目

基礎

組み込みSW

RDB

セキュリティ

開発体系

プログラミング

システム

ファイル操作 ユーザの権限と管理 システム管理

並列プログラミング 実践(1) マルチスレッドプログラミング

並列プログラミング 実践(3)

13. Javaに関する知識Ⅰ・Ⅱ

14. C、C++に関する知識Ⅰ・Ⅱ

15. Light WeightLanguageに関する知識

Ⅰ・Ⅱ

11. ネットワーク・アーキテクチャに関する知識Ⅰ・Ⅱ

12. ネットワーク管理に関する知識Ⅰ・Ⅱ

ネットワーク

1. OSSの概要に関する知識Ⅰ・Ⅱ

2. 法務分野に関する基礎知識Ⅰ・Ⅱ

3. コンピューターシステムやアーキテクチャに関する

知識Ⅰ・Ⅱ

4. 分散アーキテクチャに関する知識Ⅱ

5. Linuxの概念や基本操作に関する知識Ⅰ・Ⅱ

6. Linuxのカーネルに関する知識Ⅰ・Ⅱ

7. Linuxのシステム管理に関する知識Ⅰ・Ⅱ

8. Linuxのシステムプログラミングに関する知識Ⅰ・Ⅱ

25. 組み込み開発環境に関する知識Ⅰ・Ⅱ

26. 組み込みアプリケーション開発に関する知識Ⅰ・Ⅱ

27. 組み込みシステム最適化に関する知識Ⅰ・Ⅱ

20. ネットワークセキュリティに関する知識Ⅰ・Ⅱ

21. OSセキュリティに関する知識Ⅰ・Ⅱ

22. RDBに関する基礎知識Ⅰ・Ⅱ

23. RDBシステム管理に関する知識Ⅰ・Ⅱ

9. ネットワークサーバ管理に関する知識Ⅰ・Ⅱ

10. クラスタシステム構築に関する知識Ⅰ・Ⅱ

24. 組み込みシステムに関する知識Ⅰ・Ⅱ

16. 開発フレームワークに関する知識Ⅰ・Ⅱ

17. 開発ツールに関する知識Ⅰ・Ⅱ

18. 統合開発環境に関する知識Ⅰ・Ⅱ

19. 暗号化に関する知識Ⅰ・Ⅱ

Page 7: IT 知識体系の科目別の関係(科目別) · 1 独立行政法人情報処理推進機構 付録2:it知識体系の科目別の関係(科目別) ossモデルカリキュラムの27科目(oss基本知識・応用知識)とit知識体系との関係をit知識体

独立行政法人 情報処理推進機構7

<IT知識体系固有の知識>

科目名IM1. 情報管理の概念と基礎

IM2. データベース問合わせ言語

IM3. データアーキテクチャ

IM4. データモデリングとデータベース設計

IM5. データと情報の管理

IM6. データベースの応用分野

・データ, メタデータ, 情報,知識, 他。

・SQL によるデータ操作

・データモデル ・概念モデル ・データの管理 ・特定用途のデータベース

・データの品質(正確性, 即時性, 完全性など)

・SQL によるデータ定義

・階層モデル ・ER 図(実体-関連モデル)

・データベースの管理

・テキストデータベース

・データベースシステムの歴史およびその動機づ

・SQL 記述における性能チューニング・最適化

・ネットワークモデル

・拡張されたER図

・並列処理 ・マルチメディアデータベース

・データの入手先やその形式の検討

・XML 問合わせ言語(XQuery,Xpath)

・関係モデル ・ビジネスルールの特定

・セキュリティ ・時制データベース

・データの収集 ・分析レポート機能

・オブジェク指向データベース, オブジェクト指向関係データベース

・論理モデル ・バックアップとリカバリー

・空間データベース

・データの保持 ・Query byExample (QBE)

・論理データベース

・物理モデル ・分散データベース

・モバイルデータベース

・データのバックアップとリカバリー

・質問処理の最適化

・XML データベース

・データベース設計の再構築

・分散データベースの種類( 同種,異種, 連合又は連邦)

・科学データベース

・意味モデル ・ UML, IDEF1X,TM(T 字型ER) ,TH(椿正明, 穂鷹良介)などによるモデリング

・分散・分割の種類( 複製(レプリケーション), 垂直分割, 水平分割)

・意思決定サポート

・多次元モデル ・パターンと標準的なモデル

・クライアント・サーバ型データベースアーキテクチャ

・オンライン分析処理(OLAP)

・スタースキーマ ・データモデル作成を支援するCASE ツール

・n 階層アーキテクチャ

・データウェアハウス

・正規形 ・メタモデリング ・データベースとの接続方法

・データマイニング

・関数従属性 ・データ統合 ・ODBC ・知識管理・1NF, 2NF, 3NF,BCNF, 4NF: 多値従属性, 5NF: 結合従属性

・データウェアハウス

・JDBC ・知識( 表現と)解明

・ドメインキーNF ・データマート ・XML ・情報取得・Second orderrelation

・Web サービス ・電子図書館

・参照制約 ・SOAP・主キー制約 ・データベースシ

ステムの歴史およびその動機づ

・整合性制約 ・データの入手先やその形式の検討・データの収集・データの保持・データのバックアップとリカバ

IT-IM 情報管理

Page 8: IT 知識体系の科目別の関係(科目別) · 1 独立行政法人情報処理推進機構 付録2:it知識体系の科目別の関係(科目別) ossモデルカリキュラムの27科目(oss基本知識・応用知識)とit知識体系との関係をit知識体

独立行政法人 情報処理推進機構8

(4) IT-WS Webシステムとその技術

<OSSモデルカリキュラム上の関連部分>分野 科目名 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15

オープンソースの理念

オープンソースOSの歴史

代表的なオープンソース

代表的なオープンソース開発言語

代表的なオープンソースアプリケーション

オープンソースの市場動向

オープンソースソフトウェアを用いたシステム事例

オープンソースソフトウェアコミュニティ

オープンソースソフトウェアビジネス

オープンソースの技術情報獲得方法

オープンソースのOSの導入と動作確認

オープンソースのサーバ製品の導入と動作確認

オープンソースのデスクトップ用アプリケーションの導入と動作確認

オープンソースのサーバサイドアプリケーションの導入と動作確認

オープンソースの仮想化ツールの導入と動作確認

[IT-WS1,2]

オープンソース・ライセンスの概要

代表的なオープンソース・ライセンスの解説[GPL類型]

代表的なオープンソース・ライセンスの解説[MPL類型]

代表的なオープンソース・ライセンスの解説[BSD類型]

知的財産の概要(1) 知的財産の概要(2) OSS利用上の知的財産面での考慮点

OSS利用上の知的財産以外での法務面での考慮点

企業/団体等における法的リスク管理

法的リスクに対応したビジネス

OSS開発コミュニティが検討すべき法的リスク低減策

OSSビジネス関連企業が検討すべき法的リスク低減策

OSSの知的財産問題に関する訴訟/トラブル事例

ソフトウェア特許論争

知的財産関連の出願のガイドライン

コンピュータアーキテクチャの基本

コンピュータハードウェアの基本

CPUアーキテクチャの基本

ディスクと周辺機器の基本

インタフェース技術の基本

ソフトウェアアーキテクチャ

OSのアーキテクチャ

ミドルウェアの種類と特徴

コンピュータシステムの構成

システムアーキテクチャの活用事例

Webシステムのアーキテクチャ

OSSを活用した基盤設計ケースワーク

オープンソースシステムアーキテクチャ構築

OSSの動作環境としてのハードウェア

これからのオープンソースアーキテクチャの動向

[IT-WS4]

分散アーキテクチャとは 名前管理 複製管理 耐故障性 セキュアチャネル CORBA入門(1) CORBA入門(2) Webサービス入門

(1)Webサービス入門(2) マッシュアップ入門 分散トランザクショ

ンピアツーピアアーキテクチャ モビリティ 一貫性 大規模な分散シス

テムの事例

[IT-WS1] [IT-WS1] [IT-WS1]

Linux概要 ファイルシステム ファイルシステム データ保全とバックアップ

データ保全とバックアップ

シェルスクリプトと開発環境

シェルスクリプトと開発環境 ネットワークの基本

Linuxカーネル概論 スケジューリング 割り込みと遅延 システムコール プロセス管理 メモリ管理(1) メモリ管理(2) メモリ管理(3) ファイル管理(1) ファイル管理(2) ファイル管理(3) ネットワーク(1) ネットワーク(2) ネットワーク(3) ネットワーク(4)

Linuxシステム管理の作業概要

Linuxシステム管理・サーバ管理

Linuxシステム管理・ファイル/ディスク管理

Linuxシステム管理・ユーザ管理

Linuxシステム管理・バックアップとログ運用管理

Linuxシステム管理・リソース管理

Linuxシステム管理・カーネルの管理

Linuxシステム管理・ネットワーク管理

Linuxシステム管理・ルーティング管理

Linuxシステム管理・DHCPの構築と運用

Linuxシステム管理・FTPの構築と運用

Linuxシステム管理・NFSの構築と運用

Linuxシステム管理・Sambaの構築と運用

Linuxシステム管理・基本運用作業のトラブルシューティング

Linuxシステム管理・ネットワークのトラブルシューティング

ログイン手順とコンパイル手順 shellプログラミング ファイル入出力プロ

グラミング ファイルシステム UNIX環境 ライブラリの利用方法と作成手順 データの管理 ソフトウェアの開発

環境 デバッグ プロセスとスレッド シグナル プロセス間通信とパイプ 端末機器の入出力

セマフォ、共有メモリ、メッセージキュー

ネットワークプログラミング

ネットワークサーバの機能と特徴

サーバシステムの導入

ネームサーバの導入 Webサーバの導入 メールサーバ導入

の内容と作業手順スーパーサーバの導入

プロキシサーバの導入

その他のネットワークサーバ導入の作業内容と手順

ネットワークサーバによるルーティング処理、フィルタリング処理の実装

ネットワークサーバによるインターネット接続

サーバの運用管理業務

ログ管理の内容と手順

Linuxサーバセキュリティ

Linuxのサービスセキュリティ

セキュアOSの機能と実装

クラスタシステム概論、HAクラスタ(1) HAクラスタ(2) HAクラスタ(3) コンピュータシミュ

レーション並列プログラミング概論

並列プログラミング実践(2)

Beowulf PCクラスタの構築 SCoreクラスタ PCクラスタの周辺

技術グリッド・コンピューティング

オープンネットワークの概念と仕組み

通信の形態とプロトコル

インターネット通信の仕組み

LANネットワークの仕組み

無線ネットワークの種類と通信の仕組み

オープンネットワークの通信仕様

IPネットワークの仕組み

ルーティングの仕組み

ルーティングプロトコルの仕様 TCPの仕組み 通信プロトコルの動

作確認TCPアプリケーションの仕組み・Web

TCPアプリケーションの仕組み・FTP

TCPアプリケーションの仕組み・Telnet

新しいネットワークアーキテクチャ

[IT-WS1,5]

ネットワークシステム運用の概要

ネットワーク管理の個別項目とその内容

ネットワークのキャパシティ管理の個別項目とその内容

ネットワークの性能管理の個別項目とその内容

TCP/IPの管理 ネットワークサーバの運用管理実践

ネットワークハードウェアの運用管理

ネットワーク管理プロトコルの概要

MRTGによるネットワーク管理の実施

ネットワーク運用設計

ネットワーク運用設計

運用管理の実際的手順と体制

WANの運用管理 ネットワーク障害管理

ネットワークトラブルシューティング

Javaの基本 Java言語の基本構造

オブジェクト指向プログラミングのメリット

Javaによるアプリケーション開発手順

Javaによるネットワークプログラミング

Servlet/JSP/JDBCによるWebアプリケーション開発の概要

JDBCによるデータベースアクセス MVCモデル EJBによるアプリ

ケーション開発

JavaによるServer処理実装の特徴と設計方法

JavaによるWebアプリケーションの設計/実装

JavaによるServerSide Java/Webアプリケーション実装

オブジェクト指向システム分析/設計/実装の実践技術

デザインパターンによる開発手順

Javaのパフォーマンスチューニング

[IT-WS1] [IT-WS1]

Cの基本 Cの基本構造 文字列操作 関数 ポインタ 構造体 コンソール入出力 ファイル管理 データ構造 C++の基本 C++の基本構造 オブジェクト指向プログラミング

STL(StandardTemplate Library)

GUIアプリケーションの開発

開発ライブラリの使用

LightWeightLanguageの基本 Perlの基本構造 PHPの基本構造 Pythonの基本構造 Rubyの基本構造 オブジェクト指向プ

ログラミング組み込みクラス[データ構造]

組み込みクラス[データ操作]

組み込みクラス[ファイル管理]

GUIアプリケーション開発 Ruby on Rails データベースアプリ

ケーション開発Webアプリケーション開発

プラグイン導入と開発

オープンソースシステムのカスタマイズ

開発フレームワークとは何か

開発フレームワークの種類と特徴

オープンソースによるWebアプリケーションのフレームワーク

フリーのWebコンテナ/J2EEコンテナの概要

オープンソースの開発ツール

開発フレームワークによる開発プロセスの手順

Ruby on Railsによるアプリケーション開発

Strutsとは MyFace(JSF)の開発モデルとは

データベース接続・アクセスのフレームワーク

DIxAOPコンテナの概要

Springフレームワーク Seasar2 Tapestry Strutsによるアプリ

ケーション開発

[IT-WS2]

開発の流れとツール

ソフトウェア開発環境の概要

Linux開発環境におけるソフトウェアアプリケーション開発の概要

バージョン管理ツールの活用

デバッガによるプログラムデバッグの環境

カーネルデバッガを使用したデバッグ

バグ追跡システムを使用したデバッグ

オープンソース開発ツールの種類と機能

統合開発環境を用いた開発手順

オープンソース統合開発環境の種類と特徴

Linux開発環境におけるソフトウェア開発ワークショップ

Linux開発環境におけるソフトウェア開発支援ツール概要

ソフトウェア開発ツールの評価

Eclipseを用いたソフトウェア開発

Eclipseを用いたソフトウェア開発ワークショップ

統合開発環境によるソフトウェア開発

さまざまな統合開発環境 Eclipseとは何か NetBeans IDEとは

何かWideStudioとは何か

Eclipse入門 -セットアップ

Eclipse入門 -基本操作

NetBeans入門 -セットアップ

NetBeans入門 -基本操作

WideStudio入門- セットアップ

WideStudio入門- 基本操作

EclipseによるJavaプログラミング

EclipseによるWebアプリケーション開発

NetBeansによるWebアプリケーション開発

WideStudioによるアプリケーション開発

セキュリティ機能と暗号化の位置づけ 暗号化の方式・共

通鍵暗号方式暗号化の方式・公開鍵暗号方式

情報システムにおける暗号化適用の方式

電子証明書の仕組み OSSの活用シーン

と暗号化無線LANの暗号化 認証と暗号化 IPsecによる暗号化

通信SSHによるトンネリング

SSLプロトコルの仕組み

VPN通信の構築 PKI(公開鍵暗号化基盤)の仕組み

認証基盤構築実習 暗号化・これからの活用シーンと課題

[IT-WS5] [IT-WS5] [IT-WS5]

ネットワークセキュリティの概要

ウィルスの特性と対策

ネットワーク攻撃方法の簡易的な分類

TCPにおける不正アクセス技術 Webにおける攻撃 IPにおける不正アク

セス技術

TCP/IPネットワークセキュリティの設計方法

アクセス制御の仕組みとファイアウォールの機能

Linuxのネットワークセキュリティ対策

ネットワーク脆弱性調査

セキュアなネットワークの構築

侵入検知システムの仕様と導入

IDSによる侵入検知

ネットワークセキュリティ構築

モバイルコンピューティングとリモートアクセスのセキュリティ

[IT-WS5] [IT-WS5] [IT-WS4] [IT-WS5]

OSのセキュリティ機能

Linuxサーバのローカルセキュリティ対策

Linuxのネットワークセキュリティ対策

Linuxによるファイアウォール構築

Linuxのサーバセキュリティ設定

安全なリモートアクセス

SSLによるサーバVPNとCA

ドメインネームサービスのセキュリティ対策

電子メールのセキュリティ対策

Webのセキュリティ対策(1)

Webのセキュリティ対策(2)

ファイルサービスのセキュリティ対策

システムログの管理

Linuxによる侵入検知の手法

サーバのセキュリティ監査と設定の自動化

[IT-WS5] [IT-WS5] [IT-WS5]

データベースの基礎理論 RDBMSの基本知識 トランザクションの

基本概念データベースの構成要素 DOAの内容概要 データベース設計

の基本理論 ERモデル 正規化の手順と方法

データベースインデックス

データベースの物理構造

SQLによるデータベースアクセス

SQL実践演習ワークショップ

代表的なオープンソースRDBMS製品

データベース設計構築の実践 データベース構築

データベース運用管理の目的と項目

データベースの運用作業と障害回復

データベース運用設計

データベースセキュリティ

データベースリカバリ設計

データベースの最適化

データベースのトラブル

データベースチューニング データベース構築

データベースインデックスを用いた性能改善

MySQLの導入と運用

データベーストラブルシューティング

データベース運用環境構築 データベース運用 データベースチュー

ニング

組み込みコンピュータシステムとは何か

組み込みコンピュータのアーキテクチャ

組み込みシステムの基本構成

組み込みコンピュータハードウェアの基本

CPUアーキテクチャの基本

組み込みソフトウェアの概要

カーネル処理の概要

リアルタイムシステムの構成と仕組み

組み込みシステムの開発方法

オブジェクト指向分析による組み込みシステムの分析とモデリング

組み込みコンピュータシステムの開発管理

組み込みシステムのアーキテクチャ

組み込みシステムのネットワーク機能

組み込みシステムの設計

これからの組み込みシステムの動向

組み込み開発の流れと環境

組み込み開発環境の概要

組み込み開発環境を用いた開発手順

プログラムデバッグの環境

デバッガソフトを使用したデバッグ環境

ICEを使用したデバッグ環境

ツールチェーンによるデバッグ

組み込みアプリケーションデバッグの手順

組み込みアプリケーションの事例と開発環境

組み込みクロス開発環境の構築

GNU開発環境の特徴

GNU開発環境における組み込みアプリケーション開発

組み込みLinux開発最新デバッグ環境

組み込み開発環境の評価

組み込み開発環境におけるデバッグのパターン演習

タスクとコンテキスト

非同期と同期の設計仕様

タスクの優先度とその制御仕様

組み込みアプリケーション間の資源配分技術

組み込みアプリケーション間のリソースの共有技術

リソース有効活用のアーキテクチャ

プログラム資源の有効活用技術

入出力待ちリソースの有効利用

入出力資源管理 J2MEの仕様 VMの概要のその活用

高信頼性の実装組み込みアプリケーションの実装事例研究

クリティカルなマイコンアプリケーションを活用した設計ケースワーク

組み込みアプリケーションソフトウェアの実装

マルチプロセッサシステム

ハードウェアによる最適化

リアルタイムシステムの設計

リアルタイムソフトウェアの条件と最適化

性能最適化の評価項目

ソフトウェアの最適化

MPUの性能最適化設計

システムの性能要件と評価項目

システム性能の評価方法

性能評価手法の分類 拡張性の評価 システム資源のト

レードオフ

基本ソフトウェアと応用ソフトウェアのトレードオフ

組み込みシステム最適化のための方式設計

最適化のための検討項目

9. ネットワークサーバ管理に関する知識Ⅰ・Ⅱ

10. クラスタシステム構築に関する知識Ⅰ・Ⅱ

24. 組み込みシステムに関する知識Ⅰ・Ⅱ

16. 開発フレームワークに関する知識Ⅰ・Ⅱ

17. 開発ツールに関する知識Ⅰ・Ⅱ

18. 統合開発環境に関する知識Ⅰ・Ⅱ

19. 暗号化に関する知識Ⅰ・Ⅱ

25. 組み込み開発環境に関する知識Ⅰ・Ⅱ

26. 組み込みアプリケーション開発に関する知識Ⅰ・Ⅱ

27. 組み込みシステム最適化に関する知識Ⅰ・Ⅱ

20. ネットワークセキュリティに関する知識Ⅰ・Ⅱ

21. OSセキュリティに関する知識Ⅰ・Ⅱ

22. RDBに関する基礎知識Ⅰ・Ⅱ

23. RDBシステム管理に関する知識Ⅰ・Ⅱ

5. Linuxの概念や基本操作に関する知識Ⅰ・Ⅱ

6. Linuxのカーネルに関する知識Ⅰ・Ⅱ

7. Linuxのシステム管理に関する知識Ⅰ・Ⅱ

8. Linuxのシステムプログラミングに関する知識Ⅰ・Ⅱ

1. OSSの概要に関する知識Ⅰ・Ⅱ

2. 法務分野に関する基礎知識Ⅰ・Ⅱ

3. コンピューターシステムやアーキテクチャに関する

知識Ⅰ・Ⅱ

4. 分散アーキテクチャに関する知識Ⅱ

並列プログラミング 実践(3)

13. Javaに関する知識Ⅰ・Ⅱ

14. C、C++に関する知識Ⅰ・Ⅱ

15. Light WeightLanguageに関する知識

Ⅰ・Ⅱ

11. ネットワーク・アーキテクチャに関する知識Ⅰ・Ⅱ

12. ネットワーク管理に関する知識Ⅰ・Ⅱ

ネットワーク

ファイル操作 ユーザの権限と管理 システム管理

並列プログラミング 実践(1) マルチスレッドプログラミング

基礎

組み込みSW

RDB

セキュリティ

開発体系

プログラミング

システム

Page 9: IT 知識体系の科目別の関係(科目別) · 1 独立行政法人情報処理推進機構 付録2:it知識体系の科目別の関係(科目別) ossモデルカリキュラムの27科目(oss基本知識・応用知識)とit知識体系との関係をit知識体

独立行政法人 情報処理推進機構9

<IT知識体系固有の知識>

科目名

WS1. Web 技術 WS2. 情報アーキテクチャ

WS3. デジタルメディア

WS4. Web 開発 WS5. 脆弱性 WS6. ソーシャルソフトウェア

・HTTP プロトコル ・ハイパーテキスト, ハイパーメディア

・デジタルライブラリ

・Web のインタフェース

・クライアントセキュリティ

・非同期コミュニケーション, および同期コミュニケーションの手順

・プレゼンテーションの抽象化

・Web の設計プロセス

・メディアのフォーマット

・Web サイトの実装と統合

・クッキー,Webビーコン

・ブロードキャストによるコミュニケーションの手順

・Web のマークアップ言語と表示用言語

・キャプチャツール, オーサリングツール, プロダクションツール

・データベースの統合

・フィッシング ・協調的なコミュニケーションの手順

・クライアントサイドのプログラミング

・圧縮 ・アクセシビリティに関する問題

・インターネット上の取引・決済における安全性- 認証と安全な接続

・倫理的問題

・サーバサイドのプログラミング

・ストリーミングメディア

・WebAccessibility

・スパイウェア ・デジタルデバイド

・Web サービス ・ウイルス ・言論の自由と誹謗中傷, わいせつ表現

・Web サーバ ・中間者攻撃 ・プライバシー・新しい技術 ・サーバセキュリ

ティ・コピーライトとデジタルコンテンツの権利

・標準規格と標準化団体

・サーバを守る

・ホストを守る・DoS( サービス妨害攻撃)

・クライアントを介した攻撃( ゾンビやDoS など)

・DNS 汚染

IT-WS Webシステムとその技術

Page 10: IT 知識体系の科目別の関係(科目別) · 1 独立行政法人情報処理推進機構 付録2:it知識体系の科目別の関係(科目別) ossモデルカリキュラムの27科目(oss基本知識・応用知識)とit知識体系との関係をit知識体

独立行政法人 情報処理推進機構10

(5) IT-PF プログラミング基礎

<OSSモデルカリキュラム上の関連部分>分野 科目名 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15

オープンソースの理念

オープンソースOSの歴史

代表的なオープンソース

代表的なオープンソース開発言語

代表的なオープンソースアプリケーション

オープンソースの市場動向

オープンソースソフトウェアを用いたシステム事例

オープンソースソフトウェアコミュニティ

オープンソースソフトウェアビジネス

オープンソースの技術情報獲得方法

オープンソースのOSの導入と動作確認

オープンソースのサーバ製品の導入と動作確認

オープンソースのデスクトップ用アプリケーションの導入と動作確認

オープンソースのサーバサイドアプリケーションの導入と動作確認

オープンソースの仮想化ツールの導入と動作確認

オープンソース・ライセンスの概要

代表的なオープンソース・ライセンスの解説[GPL類型]

代表的なオープンソース・ライセンスの解説[MPL類型]

代表的なオープンソース・ライセンスの解説[BSD類型]

知的財産の概要(1) 知的財産の概要(2) OSS利用上の知的財産面での考慮点

OSS利用上の知的財産以外での法務面での考慮点

企業/団体等における法的リスク管理

法的リスクに対応したビジネス

OSS開発コミュニティが検討すべき法的リスク低減策

OSSビジネス関連企業が検討すべき法的リスク低減策

OSSの知的財産問題に関する訴訟/トラブル事例

ソフトウェア特許論争

知的財産関連の出願のガイドライン

コンピュータアーキテクチャの基本

コンピュータハードウェアの基本

CPUアーキテクチャの基本

ディスクと周辺機器の基本

インタフェース技術の基本

ソフトウェアアーキテクチャ

OSのアーキテクチャ

ミドルウェアの種類と特徴

コンピュータシステムの構成

システムアーキテクチャの活用事例

Webシステムのアーキテクチャ

OSSを活用した基盤設計ケースワーク

オープンソースシステムアーキテクチャ構築

OSSの動作環境としてのハードウェア

これからのオープンソースアーキテクチャの動向

分散アーキテクチャとは 名前管理 複製管理 耐故障性 セキュアチャネル CORBA入門(1) CORBA入門(2) Webサービス入門

(1)Webサービス入門(2) マッシュアップ入門 分散トランザクショ

ンピアツーピアアーキテクチャ モビリティ 一貫性 大規模な分散シス

テムの事例

Linux概要 ファイルシステム ファイルシステム データ保全とバックアップ

データ保全とバックアップ

シェルスクリプトと開発環境

シェルスクリプトと開発環境 ネットワークの基本

Linuxカーネル概論 スケジューリング 割り込みと遅延 システムコール プロセス管理 メモリ管理(1) メモリ管理(2) メモリ管理(3) ファイル管理(1) ファイル管理(2) ファイル管理(3) ネットワーク(1) ネットワーク(2) ネットワーク(3) ネットワーク(4)

Linuxシステム管理の作業概要

Linuxシステム管理・サーバ管理

Linuxシステム管理・ファイル/ディスク管理

Linuxシステム管理・ユーザ管理

Linuxシステム管理・バックアップとログ運用管理

Linuxシステム管理・リソース管理

Linuxシステム管理・カーネルの管理

Linuxシステム管理・ネットワーク管理

Linuxシステム管理・ルーティング管理

Linuxシステム管理・DHCPの構築と運用

Linuxシステム管理・FTPの構築と運用

Linuxシステム管理・NFSの構築と運用

Linuxシステム管理・Sambaの構築と運用

Linuxシステム管理・基本運用作業のトラブルシューティング

Linuxシステム管理・ネットワークのトラブルシューティング

ログイン手順とコンパイル手順 shellプログラミング ファイル入出力プロ

グラミング ファイルシステム UNIX環境 ライブラリの利用方法と作成手順 データの管理 ソフトウェアの開発

環境 デバッグ プロセスとスレッド シグナル プロセス間通信とパイプ 端末機器の入出力

セマフォ、共有メモリ、メッセージキュー

ネットワークプログラミング

ネットワークサーバの機能と特徴

サーバシステムの導入

ネームサーバの導入 Webサーバの導入 メールサーバ導入

の内容と作業手順スーパーサーバの導入

プロキシサーバの導入

その他のネットワークサーバ導入の作業内容と手順

ネットワークサーバによるルーティング処理、フィルタリング処理の実装

ネットワークサーバによるインターネット接続

サーバの運用管理業務

ログ管理の内容と手順

Linuxサーバセキュリティ

Linuxのサービスセキュリティ

セキュアOSの機能と実装

クラスタシステム概論、HAクラスタ(1) HAクラスタ(2) HAクラスタ(3) コンピュータシミュ

レーション並列プログラミング概論

並列プログラミング実践(2)

Beowulf PCクラスタの構築 SCoreクラスタ PCクラスタの周辺

技術グリッド・コンピューティング

オープンネットワークの概念と仕組み

通信の形態とプロトコル

インターネット通信の仕組み

LANネットワークの仕組み

無線ネットワークの種類と通信の仕組み

オープンネットワークの通信仕様

IPネットワークの仕組み

ルーティングの仕組み

ルーティングプロトコルの仕様 TCPの仕組み 通信プロトコルの動

作確認TCPアプリケーションの仕組み・Web

TCPアプリケーションの仕組み・FTP

TCPアプリケーションの仕組み・Telnet

新しいネットワークアーキテクチャ

ネットワークシステム運用の概要

ネットワーク管理の個別項目とその内容

ネットワークのキャパシティ管理の個別項目とその内容

ネットワークの性能管理の個別項目とその内容

TCP/IPの管理 ネットワークサーバの運用管理実践

ネットワークハードウェアの運用管理

ネットワーク管理プロトコルの概要

MRTGによるネットワーク管理の実施

ネットワーク運用設計

ネットワーク運用設計

運用管理の実際的手順と体制

WANの運用管理 ネットワーク障害管理

ネットワークトラブルシューティング

Javaの基本 Java言語の基本構造

オブジェクト指向プログラミングのメリット

Javaによるアプリケーション開発手順

Javaによるネットワークプログラミング

Servlet/JSP/JDBCによるWebアプリケーション開発の概要

JDBCによるデータベースアクセス MVCモデル EJBによるアプリ

ケーション開発

JavaによるServer処理実装の特徴と設計方法

JavaによるWebアプリケーションの設計/実装

JavaによるServerSide Java/Webアプリケーション実装

オブジェクト指向システム分析/設計/実装の実践技術

デザインパターンによる開発手順

Javaのパフォーマンスチューニング

[IT-PF3] [IT-PF3] [IT-PF3]

Cの基本 Cの基本構造 文字列操作 関数 ポインタ 構造体 コンソール入出力 ファイル管理 データ構造 C++の基本 C++の基本構造 オブジェクト指向プログラミング

STL(StandardTemplate Library)

GUIアプリケーションの開発

開発ライブラリの使用

[IT-PF1] [IT-PF1] [IT-PF1] [IT-PF1] [IT-PF1] [IT-PF1] [IT-PF1] [IT-PF2,3] [IT-PF3]

LightWeightLanguageの基本 Perlの基本構造 PHPの基本構造 Pythonの基本構造 Rubyの基本構造 オブジェクト指向プ

ログラミング組み込みクラス[データ構造]

組み込みクラス[データ操作]

組み込みクラス[ファイル管理]

GUIアプリケーション開発 Ruby on Rails データベースアプリ

ケーション開発Webアプリケーション開発

プラグイン導入と開発

オープンソースシステムのカスタマイズ

[IT-PF3]

開発フレームワークとは何か

開発フレームワークの種類と特徴

オープンソースによるWebアプリケーションのフレームワーク

フリーのWebコンテナ/J2EEコンテナの概要

オープンソースの開発ツール

開発フレームワークによる開発プロセスの手順

Ruby on Railsによるアプリケーション開発

Strutsとは MyFace(JSF)の開発モデルとは

データベース接続・アクセスのフレームワーク

DIxAOPコンテナの概要

Springフレームワーク Seasar2 Tapestry Strutsによるアプリ

ケーション開発

開発の流れとツール

ソフトウェア開発環境の概要

Linux開発環境におけるソフトウェアアプリケーション開発の概要

バージョン管理ツールの活用

デバッガによるプログラムデバッグの環境

カーネルデバッガを使用したデバッグ

バグ追跡システムを使用したデバッグ

オープンソース開発ツールの種類と機能

統合開発環境を用いた開発手順

オープンソース統合開発環境の種類と特徴

Linux開発環境におけるソフトウェア開発ワークショップ

Linux開発環境におけるソフトウェア開発支援ツール概要

ソフトウェア開発ツールの評価

Eclipseを用いたソフトウェア開発

Eclipseを用いたソフトウェア開発ワークショップ

[IT-PF2] [IT-PF2]

統合開発環境によるソフトウェア開発

さまざまな統合開発環境 Eclipseとは何か NetBeans IDEとは

何かWideStudioとは何か

Eclipse入門 -セットアップ

Eclipse入門 -基本操作

NetBeans入門 -セットアップ

NetBeans入門 -基本操作

WideStudio入門- セットアップ

WideStudio入門- 基本操作

EclipseによるJavaプログラミング

EclipseによるWebアプリケーション開発

NetBeansによるWebアプリケーション開発

WideStudioによるアプリケーション開発

セキュリティ機能と暗号化の位置づけ 暗号化の方式・共

通鍵暗号方式暗号化の方式・公開鍵暗号方式

情報システムにおける暗号化適用の方式

電子証明書の仕組み OSSの活用シーン

と暗号化無線LANの暗号化 認証と暗号化 IPsecによる暗号化

通信SSHによるトンネリング

SSLプロトコルの仕組み

VPN通信の構築 PKI(公開鍵暗号化基盤)の仕組み

認証基盤構築実習 暗号化・これからの活用シーンと課題

ネットワークセキュリティの概要

ウィルスの特性と対策

ネットワーク攻撃方法の簡易的な分類

TCPにおける不正アクセス技術 Webにおける攻撃 IPにおける不正アク

セス技術

TCP/IPネットワークセキュリティの設計方法

アクセス制御の仕組みとファイアウォールの機能

Linuxのネットワークセキュリティ対策

ネットワーク脆弱性調査

セキュアなネットワークの構築

侵入検知システムの仕様と導入

IDSによる侵入検知

ネットワークセキュリティ構築

モバイルコンピューティングとリモートアクセスのセキュリティ

OSのセキュリティ機能

Linuxサーバのローカルセキュリティ対策

Linuxのネットワークセキュリティ対策

Linuxによるファイアウォール構築

Linuxのサーバセキュリティ設定

安全なリモートアクセス

SSLによるサーバVPNとCA

ドメインネームサービスのセキュリティ対策

電子メールのセキュリティ対策

Webのセキュリティ対策(1)

Webのセキュリティ対策(2)

ファイルサービスのセキュリティ対策

システムログの管理

Linuxによる侵入検知の手法

サーバのセキュリティ監査と設定の自動化

データベースの基礎理論 RDBMSの基本知識 トランザクションの

基本概念データベースの構成要素 DOAの内容概要 データベース設計

の基本理論 ERモデル 正規化の手順と方法

データベースインデックス

データベースの物理構造

SQLによるデータベースアクセス

SQL実践演習ワークショップ

代表的なオープンソースRDBMS製品

データベース設計構築の実践 データベース構築

データベース運用管理の目的と項目

データベースの運用作業と障害回復

データベース運用設計

データベースセキュリティ

データベースリカバリ設計

データベースの最適化

データベースのトラブル

データベースチューニング データベース構築

データベースインデックスを用いた性能改善

MySQLの導入と運用

データベーストラブルシューティング

データベース運用環境構築 データベース運用 データベースチュー

ニング

組み込みコンピュータシステムとは何か

組み込みコンピュータのアーキテクチャ

組み込みシステムの基本構成

組み込みコンピュータハードウェアの基本

CPUアーキテクチャの基本

組み込みソフトウェアの概要

カーネル処理の概要

リアルタイムシステムの構成と仕組み

組み込みシステムの開発方法

オブジェクト指向分析による組み込みシステムの分析とモデリング

組み込みコンピュータシステムの開発管理

組み込みシステムのアーキテクチャ

組み込みシステムのネットワーク機能

組み込みシステムの設計

これからの組み込みシステムの動向

[IT-PF3]

組み込み開発の流れと環境

組み込み開発環境の概要

組み込み開発環境を用いた開発手順

プログラムデバッグの環境

デバッガソフトを使用したデバッグ環境

ICEを使用したデバッグ環境

ツールチェーンによるデバッグ

組み込みアプリケーションデバッグの手順

組み込みアプリケーションの事例と開発環境

組み込みクロス開発環境の構築

GNU開発環境の特徴

GNU開発環境における組み込みアプリケーション開発

組み込みLinux開発最新デバッグ環境

組み込み開発環境の評価

組み込み開発環境におけるデバッグのパターン演習

タスクとコンテキスト

非同期と同期の設計仕様

タスクの優先度とその制御仕様

組み込みアプリケーション間の資源配分技術

組み込みアプリケーション間のリソースの共有技術

リソース有効活用のアーキテクチャ

プログラム資源の有効活用技術

入出力待ちリソースの有効利用

入出力資源管理 J2MEの仕様 VMの概要のその活用

高信頼性の実装組み込みアプリケーションの実装事例研究

クリティカルなマイコンアプリケーションを活用した設計ケースワーク

組み込みアプリケーションソフトウェアの実装

マルチプロセッサシステム

ハードウェアによる最適化

リアルタイムシステムの設計

リアルタイムソフトウェアの条件と最適化

性能最適化の評価項目

ソフトウェアの最適化

MPUの性能最適化設計

システムの性能要件と評価項目

システム性能の評価方法

性能評価手法の分類 拡張性の評価 システム資源のト

レードオフ

基本ソフトウェアと応用ソフトウェアのトレードオフ

組み込みシステム最適化のための方式設計

最適化のための検討項目

基礎

組み込みSW

RDB

セキュリティ

開発体系

プログラミング

システム

ファイル操作 ユーザの権限と管理 システム管理

並列プログラミング 実践(1) マルチスレッドプログラミング

並列プログラミング 実践(3)

13. Javaに関する知識Ⅰ・Ⅱ

14. C、C++に関する知識Ⅰ・Ⅱ

15. Light WeightLanguageに関する知識

Ⅰ・Ⅱ

11. ネットワーク・アーキテクチャに関する知識Ⅰ・Ⅱ

12. ネットワーク管理に関する知識Ⅰ・Ⅱ

ネットワーク

1. OSSの概要に関する知識Ⅰ・Ⅱ

2. 法務分野に関する基礎知識Ⅰ・Ⅱ

3. コンピューターシステムやアーキテクチャに関する

知識Ⅰ・Ⅱ

4. 分散アーキテクチャに関する知識Ⅱ

5. Linuxの概念や基本操作に関する知識Ⅰ・Ⅱ

6. Linuxのカーネルに関する知識Ⅰ・Ⅱ

7. Linuxのシステム管理に関する知識Ⅰ・Ⅱ

8. Linuxのシステムプログラミングに関する知識Ⅰ・Ⅱ

25. 組み込み開発環境に関する知識Ⅰ・Ⅱ

26. 組み込みアプリケーション開発に関する知識Ⅰ・Ⅱ

27. 組み込みシステム最適化に関する知識Ⅰ・Ⅱ

20. ネットワークセキュリティに関する知識Ⅰ・Ⅱ

21. OSセキュリティに関する知識Ⅰ・Ⅱ

22. RDBに関する基礎知識Ⅰ・Ⅱ

23. RDBシステム管理に関する知識Ⅰ・Ⅱ

9. ネットワークサーバ管理に関する知識Ⅰ・Ⅱ

10. クラスタシステム構築に関する知識Ⅰ・Ⅱ

24. 組み込みシステムに関する知識Ⅰ・Ⅱ

16. 開発フレームワークに関する知識Ⅰ・Ⅱ

17. 開発ツールに関する知識Ⅰ・Ⅱ

18. 統合開発環境に関する知識Ⅰ・Ⅱ

19. 暗号化に関する知識Ⅰ・Ⅱ

Page 11: IT 知識体系の科目別の関係(科目別) · 1 独立行政法人情報処理推進機構 付録2:it知識体系の科目別の関係(科目別) ossモデルカリキュラムの27科目(oss基本知識・応用知識)とit知識体系との関係をit知識体

独立行政法人 情報処理推進機構11

<IT知識体系固有の知識>

科目名

PF1. 基本データ構造

PF2. プログラミングの基本的構成要素

PF3. オブジェクト指向プログラミング

PF4. アルゴリズムと問題解決

PF5. イベント駆動プログラミング

PF6. 再帰

・基本型 ・高水準言語の基本構文と意味

・オブジェクト指向設計

・問題解決戦略 ・イベント処理手法

・再帰の概念

・配列 ・変数,型, 式,代入

・カプセル化と情報隠蔽

・問題解決過程におけるアルゴリズムの役割

・イベント伝播

・レコード ・条件判定と繰返しの制御構造

・動作とその実装の分離

・アルゴリズムの実現戦略

・例外処理

・文字列と文字列処理

・単純な入出力 ・クラスとサブクラス

・デバッグ戦略

・メモリ内でのデータの表現

・関数と引数受渡し

・継承( オーバライド, 動的ディスパッチ)

・アルゴリズムの概念と特性

・ポインタと参照 ・構造的分解 ・多相性( サブタイプ多相性と継承)

・連結構造 ・クラス階層・ハッシュ関数の知識

・コレクションクラスと反復プロトコル

・スタック, キューの使用・グラフ,木の使・適切なデータ構造を選択するための戦略

IT-PF プログラミング基礎

Page 12: IT 知識体系の科目別の関係(科目別) · 1 独立行政法人情報処理推進機構 付録2:it知識体系の科目別の関係(科目別) ossモデルカリキュラムの27科目(oss基本知識・応用知識)とit知識体系との関係をit知識体

独立行政法人 情報処理推進機構12

(6) IT-IPT 技術を統合するためのプログラミング

<OSSモデルカリキュラム上の関連部分>分野 科目名 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15

オープンソースの理念

オープンソースOSの歴史

代表的なオープンソース

代表的なオープンソース開発言語

代表的なオープンソースアプリケーション

オープンソースの市場動向

オープンソースソフトウェアを用いたシステム事例

オープンソースソフトウェアコミュニティ

オープンソースソフトウェアビジネス

オープンソースの技術情報獲得方法

オープンソースのOSの導入と動作確認

オープンソースのサーバ製品の導入と動作確認

オープンソースのデスクトップ用アプリケーションの導入と動作確認

オープンソースのサーバサイドアプリケーションの導入と動作確認

オープンソースの仮想化ツールの導入と動作確認

オープンソース・ライセンスの概要

代表的なオープンソース・ライセンスの解説[GPL類型]

代表的なオープンソース・ライセンスの解説[MPL類型]

代表的なオープンソース・ライセンスの解説[BSD類型]

知的財産の概要(1) 知的財産の概要(2) OSS利用上の知的財産面での考慮点

OSS利用上の知的財産以外での法務面での考慮点

企業/団体等における法的リスク管理

法的リスクに対応したビジネス

OSS開発コミュニティが検討すべき法的リスク低減策

OSSビジネス関連企業が検討すべき法的リスク低減策

OSSの知的財産問題に関する訴訟/トラブル事例

ソフトウェア特許論争

知的財産関連の出願のガイドライン

コンピュータアーキテクチャの基本

コンピュータハードウェアの基本

CPUアーキテクチャの基本

ディスクと周辺機器の基本

インタフェース技術の基本

ソフトウェアアーキテクチャ

OSのアーキテクチャ

ミドルウェアの種類と特徴

コンピュータシステムの構成

システムアーキテクチャの活用事例

Webシステムのアーキテクチャ

OSSを活用した基盤設計ケースワーク

オープンソースシステムアーキテクチャ構築

OSSの動作環境としてのハードウェア

これからのオープンソースアーキテクチャの動向

分散アーキテクチャとは 名前管理 複製管理 耐故障性 セキュアチャネル CORBA入門(1) CORBA入門(2) Webサービス入門

(1)Webサービス入門(2) マッシュアップ入門 分散トランザクショ

ンピアツーピアアーキテクチャ モビリティ 一貫性 大規模な分散シス

テムの事例

[IT-IPT1] [IT-IPT1] [IT-IPT1] [IT-IPT1]

Linux概要 ファイルシステム ファイルシステム データ保全とバックアップ

データ保全とバックアップ

シェルスクリプトと開発環境

シェルスクリプトと開発環境 ネットワークの基本

[IT-IPT5] [IT-IPT5]

Linuxカーネル概論 スケジューリング 割り込みと遅延 システムコール プロセス管理 メモリ管理(1) メモリ管理(2) メモリ管理(3) ファイル管理(1) ファイル管理(2) ファイル管理(3) ネットワーク(1) ネットワーク(2) ネットワーク(3) ネットワーク(4)

Linuxシステム管理の作業概要

Linuxシステム管理・サーバ管理

Linuxシステム管理・ファイル/ディスク管理

Linuxシステム管理・ユーザ管理

Linuxシステム管理・バックアップとログ運用管理

Linuxシステム管理・リソース管理

Linuxシステム管理・カーネルの管理

Linuxシステム管理・ネットワーク管理

Linuxシステム管理・ルーティング管理

Linuxシステム管理・DHCPの構築と運用

Linuxシステム管理・FTPの構築と運用

Linuxシステム管理・NFSの構築と運用

Linuxシステム管理・Sambaの構築と運用

Linuxシステム管理・基本運用作業のトラブルシューティング

Linuxシステム管理・ネットワークのトラブルシューティング

ログイン手順とコンパイル手順 shellプログラミング ファイル入出力プロ

グラミング ファイルシステム UNIX環境 ライブラリの利用方法と作成手順 データの管理 ソフトウェアの開発

環境 デバッグ プロセスとスレッド シグナル プロセス間通信とパイプ 端末機器の入出力

セマフォ、共有メモリ、メッセージキュー

ネットワークプログラミング

[IT-IPT6]

ネットワークサーバの機能と特徴

サーバシステムの導入

ネームサーバの導入 Webサーバの導入 メールサーバ導入

の内容と作業手順スーパーサーバの導入

プロキシサーバの導入

その他のネットワークサーバ導入の作業内容と手順

ネットワークサーバによるルーティング処理、フィルタリング処理の実装

ネットワークサーバによるインターネット接続

サーバの運用管理業務

ログ管理の内容と手順

Linuxサーバセキュリティ

Linuxのサービスセキュリティ

セキュアOSの機能と実装

クラスタシステム概論、HAクラスタ(1) HAクラスタ(2) HAクラスタ(3) コンピュータシミュ

レーション並列プログラミング概論

並列プログラミング実践(2)

Beowulf PCクラスタの構築 SCoreクラスタ PCクラスタの周辺

技術グリッド・コンピューティング

オープンネットワークの概念と仕組み

通信の形態とプロトコル

インターネット通信の仕組み

LANネットワークの仕組み

無線ネットワークの種類と通信の仕組み

オープンネットワークの通信仕様

IPネットワークの仕組み

ルーティングの仕組み

ルーティングプロトコルの仕様 TCPの仕組み 通信プロトコルの動

作確認TCPアプリケーションの仕組み・Web

TCPアプリケーションの仕組み・FTP

TCPアプリケーションの仕組み・Telnet

新しいネットワークアーキテクチャ

ネットワークシステム運用の概要

ネットワーク管理の個別項目とその内容

ネットワークのキャパシティ管理の個別項目とその内容

ネットワークの性能管理の個別項目とその内容

TCP/IPの管理 ネットワークサーバの運用管理実践

ネットワークハードウェアの運用管理

ネットワーク管理プロトコルの概要

MRTGによるネットワーク管理の実施

ネットワーク運用設計

ネットワーク運用設計

運用管理の実際的手順と体制

WANの運用管理 ネットワーク障害管理

ネットワークトラブルシューティング

Javaの基本 Java言語の基本構造

オブジェクト指向プログラミングのメリット

Javaによるアプリケーション開発手順

Javaによるネットワークプログラミング

Servlet/JSP/JDBCによるWebアプリケーション開発の概要

JDBCによるデータベースアクセス MVCモデル EJBによるアプリ

ケーション開発

JavaによるServer処理実装の特徴と設計方法

JavaによるWebアプリケーションの設計/実装

JavaによるServerSide Java/Webアプリケーション実装

オブジェクト指向システム分析/設計/実装の実践技術

デザインパターンによる開発手順

Javaのパフォーマンスチューニング

[IT-IPT3] [IT-IPT3] [IT-IPT3]

Cの基本 Cの基本構造 文字列操作 関数 ポインタ 構造体 コンソール入出力 ファイル管理 データ構造 C++の基本 C++の基本構造 オブジェクト指向プログラミング

STL(StandardTemplate Library)

GUIアプリケーションの開発

開発ライブラリの使用

[IT-IPT7] [IT-IPT7] [IT-IPT7] [IT-IPT3,7] [IT-IPT3,7]

LightWeightLanguageの基本 Perlの基本構造 PHPの基本構造 Pythonの基本構造 Rubyの基本構造 オブジェクト指向プ

ログラミング組み込みクラス[データ構造]

組み込みクラス[データ操作]

組み込みクラス[ファイル管理]

GUIアプリケーション開発 Ruby on Rails データベースアプリ

ケーション開発Webアプリケーション開発

プラグイン導入と開発

オープンソースシステムのカスタマイズ

[IT-IPT4,7] [IT-IPT4] [IT-IPT4] [IT-IPT4] [IT-IPT4]

開発フレームワークとは何か

開発フレームワークの種類と特徴

オープンソースによるWebアプリケーションのフレームワーク

フリーのWebコンテナ/J2EEコンテナの概要

オープンソースの開発ツール

開発フレームワークによる開発プロセスの手順

Ruby on Railsによるアプリケーション開発

Strutsとは MyFace(JSF)の開発モデルとは

データベース接続・アクセスのフレームワーク

DIxAOPコンテナの概要

Springフレームワーク Seasar2 Tapestry Strutsによるアプリ

ケーション開発

開発の流れとツール

ソフトウェア開発環境の概要

Linux開発環境におけるソフトウェアアプリケーション開発の概要

バージョン管理ツールの活用

デバッガによるプログラムデバッグの環境

カーネルデバッガを使用したデバッグ

バグ追跡システムを使用したデバッグ

オープンソース開発ツールの種類と機能

統合開発環境を用いた開発手順

オープンソース統合開発環境の種類と特徴

Linux開発環境におけるソフトウェア開発ワークショップ

Linux開発環境におけるソフトウェア開発支援ツール概要

ソフトウェア開発ツールの評価

Eclipseを用いたソフトウェア開発

Eclipseを用いたソフトウェア開発ワークショップ

[IT-IPT7] [IT-IPT6] [IT-IPT6]

統合開発環境によるソフトウェア開発

さまざまな統合開発環境 Eclipseとは何か NetBeans IDEとは

何かWideStudioとは何か

Eclipse入門 -セットアップ

Eclipse入門 -基本操作

NetBeans入門 -セットアップ

NetBeans入門 -基本操作

WideStudio入門- セットアップ

WideStudio入門- 基本操作

EclipseによるJavaプログラミング

EclipseによるWebアプリケーション開発

NetBeansによるWebアプリケーション開発

WideStudioによるアプリケーション開発

セキュリティ機能と暗号化の位置づけ 暗号化の方式・共

通鍵暗号方式暗号化の方式・公開鍵暗号方式

情報システムにおける暗号化適用の方式

電子証明書の仕組み OSSの活用シーン

と暗号化無線LANの暗号化 認証と暗号化 IPsecによる暗号化

通信SSHによるトンネリング

SSLプロトコルの仕組み

VPN通信の構築 PKI(公開鍵暗号化基盤)の仕組み

認証基盤構築実習 暗号化・これからの活用シーンと課題

[IT-IPT5]

ネットワークセキュリティの概要

ウィルスの特性と対策

ネットワーク攻撃方法の簡易的な分類

TCPにおける不正アクセス技術 Webにおける攻撃 IPにおける不正アク

セス技術

TCP/IPネットワークセキュリティの設計方法

アクセス制御の仕組みとファイアウォールの機能

Linuxのネットワークセキュリティ対策

ネットワーク脆弱性調査

セキュアなネットワークの構築

侵入検知システムの仕様と導入

IDSによる侵入検知

ネットワークセキュリティ構築

モバイルコンピューティングとリモートアクセスのセキュリティ

OSのセキュリティ機能

Linuxサーバのローカルセキュリティ対策

Linuxのネットワークセキュリティ対策

Linuxによるファイアウォール構築

Linuxのサーバセキュリティ設定

安全なリモートアクセス

SSLによるサーバVPNとCA

ドメインネームサービスのセキュリティ対策

電子メールのセキュリティ対策

Webのセキュリティ対策(1)

Webのセキュリティ対策(2)

ファイルサービスのセキュリティ対策

システムログの管理

Linuxによる侵入検知の手法

サーバのセキュリティ監査と設定の自動化

[IT-IPT5]

データベースの基礎理論 RDBMSの基本知識 トランザクションの

基本概念データベースの構成要素 DOAの内容概要 データベース設計

の基本理論 ERモデル 正規化の手順と方法

データベースインデックス

データベースの物理構造

SQLによるデータベースアクセス

SQL実践演習ワークショップ

代表的なオープンソースRDBMS製品

データベース設計構築の実践 データベース構築

データベース運用管理の目的と項目

データベースの運用作業と障害回復

データベース運用設計

データベースセキュリティ

データベースリカバリ設計

データベースの最適化

データベースのトラブル

データベースチューニング データベース構築

データベースインデックスを用いた性能改善

MySQLの導入と運用

データベーストラブルシューティング

データベース運用環境構築 データベース運用 データベースチュー

ニング

組み込みコンピュータシステムとは何か

組み込みコンピュータのアーキテクチャ

組み込みシステムの基本構成

組み込みコンピュータハードウェアの基本

CPUアーキテクチャの基本

組み込みソフトウェアの概要

カーネル処理の概要

リアルタイムシステムの構成と仕組み

組み込みシステムの開発方法

オブジェクト指向分析による組み込みシステムの分析とモデリング

組み込みコンピュータシステムの開発管理

組み込みシステムのアーキテクチャ

組み込みシステムのネットワーク機能

組み込みシステムの設計

これからの組み込みシステムの動向

組み込み開発の流れと環境

組み込み開発環境の概要

組み込み開発環境を用いた開発手順

プログラムデバッグの環境

デバッガソフトを使用したデバッグ環境

ICEを使用したデバッグ環境

ツールチェーンによるデバッグ

組み込みアプリケーションデバッグの手順

組み込みアプリケーションの事例と開発環境

組み込みクロス開発環境の構築

GNU開発環境の特徴

GNU開発環境における組み込みアプリケーション開発

組み込みLinux開発最新デバッグ環境

組み込み開発環境の評価

組み込み開発環境におけるデバッグのパターン演習

タスクとコンテキスト

非同期と同期の設計仕様

タスクの優先度とその制御仕様

組み込みアプリケーション間の資源配分技術

組み込みアプリケーション間のリソースの共有技術

リソース有効活用のアーキテクチャ

プログラム資源の有効活用技術

入出力待ちリソースの有効利用

入出力資源管理 J2MEの仕様 VMの概要のその活用

高信頼性の実装組み込みアプリケーションの実装事例研究

クリティカルなマイコンアプリケーションを活用した設計ケースワーク

組み込みアプリケーションソフトウェアの実装

[IT-IPT7]

マルチプロセッサシステム

ハードウェアによる最適化

リアルタイムシステムの設計

リアルタイムソフトウェアの条件と最適化

性能最適化の評価項目

ソフトウェアの最適化

MPUの性能最適化設計

システムの性能要件と評価項目

システム性能の評価方法

性能評価手法の分類 拡張性の評価 システム資源のト

レードオフ

基本ソフトウェアと応用ソフトウェアのトレードオフ

組み込みシステム最適化のための方式設計

最適化のための検討項目

9. ネットワークサーバ管理に関する知識Ⅰ・Ⅱ

10. クラスタシステム構築に関する知識Ⅰ・Ⅱ

24. 組み込みシステムに関する知識Ⅰ・Ⅱ

16. 開発フレームワークに関する知識Ⅰ・Ⅱ

17. 開発ツールに関する知識Ⅰ・Ⅱ

18. 統合開発環境に関する知識Ⅰ・Ⅱ

19. 暗号化に関する知識Ⅰ・Ⅱ

25. 組み込み開発環境に関する知識Ⅰ・Ⅱ

26. 組み込みアプリケーション開発に関する知識Ⅰ・Ⅱ

27. 組み込みシステム最適化に関する知識Ⅰ・Ⅱ

20. ネットワークセキュリティに関する知識Ⅰ・Ⅱ

21. OSセキュリティに関する知識Ⅰ・Ⅱ

22. RDBに関する基礎知識Ⅰ・Ⅱ

23. RDBシステム管理に関する知識Ⅰ・Ⅱ

5. Linuxの概念や基本操作に関する知識Ⅰ・Ⅱ

6. Linuxのカーネルに関する知識Ⅰ・Ⅱ

7. Linuxのシステム管理に関する知識Ⅰ・Ⅱ

8. Linuxのシステムプログラミングに関する知識Ⅰ・Ⅱ

1. OSSの概要に関する知識Ⅰ・Ⅱ

2. 法務分野に関する基礎知識Ⅰ・Ⅱ

3. コンピューターシステムやアーキテクチャに関する

知識Ⅰ・Ⅱ

4. 分散アーキテクチャに関する知識Ⅱ

並列プログラミング 実践(3)

13. Javaに関する知識Ⅰ・Ⅱ

14. C、C++に関する知識Ⅰ・Ⅱ

15. Light WeightLanguageに関する知識

Ⅰ・Ⅱ

11. ネットワーク・アーキテクチャに関する知識Ⅰ・Ⅱ

12. ネットワーク管理に関する知識Ⅰ・Ⅱ

ネットワーク

ファイル操作 ユーザの権限と管理 システム管理

並列プログラミング 実践(1) マルチスレッドプログラミング

基礎

組み込みSW

RDB

セキュリティ

開発体系

プログラミング

システム

Page 13: IT 知識体系の科目別の関係(科目別) · 1 独立行政法人情報処理推進機構 付録2:it知識体系の科目別の関係(科目別) ossモデルカリキュラムの27科目(oss基本知識・応用知識)とit知識体系との関係をit知識体

独立行政法人 情報処理推進機構13

<IT知識体系固有の知識>

科目名

IPT1. システム間通信

IPT2. データ割り当てと交換

IPT3. 統合的コーディング

IPT4. スクリプティング手法

IPT5. ソフトウェアセキュリティの実現

IPT6. 種々の問題

IPT7. プログラミング言語の概要

・システム統合のためのアーキテクチャ

・メタデータ ・デザインパターン

・スクリプティングとスクリプト言語の役割

・証拠ベースセキュリティとコードアクセスセキュリティ

・採用または適用するか, 作成するか

・プログラミング言語の歴史

・分散処理(DCOM, CORBA,RMI)

・データ表現とエンコーディング

・インタフェース ・スクリプトの作成と実行

・セキュリティコーディングの実例

・バージョンとバージョン管理

・プログラミングパラダイム

・ウェブサービスとミドルウェア

・XML,DTD.XMLスキーマ

・継承 ・プログラミングに対するスクリプトの影響

・システム資源やサービスへのアクセスに対する認

・規模の効果

・ネットワークプログラミング

・XML ドキュメントの構文解析

・システムとサービスの間で転送されるデータの暗号化

・仮想マシン

・メッセージとキューイングサービス

・XSL,XSLT,XPath

・コンパイル型とインタープリタ型言語

・低レベルデータ通信

・アプリケーションとスクリプト言語

IT-IPT 技術を統合するためのプログラミング

Page 14: IT 知識体系の科目別の関係(科目別) · 1 独立行政法人情報処理推進機構 付録2:it知識体系の科目別の関係(科目別) ossモデルカリキュラムの27科目(oss基本知識・応用知識)とit知識体系との関係をit知識体

独立行政法人 情報処理推進機構14

(7) CE-SWE ソフトウェア工学

<OSSモデルカリキュラム上の関連部分>分野 科目名 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15

オープンソースの理念

オープンソースOSの歴史

代表的なオープンソース

代表的なオープンソース開発言語

代表的なオープンソースアプリケーション

オープンソースの市場動向

オープンソースソフトウェアを用いたシステム事例

オープンソースソフトウェアコミュニティ

オープンソースソフトウェアビジネス

オープンソースの技術情報獲得方法

オープンソースのOSの導入と動作確認

オープンソースのサーバ製品の導入と動作確認

オープンソースのデスクトップ用アプリケーションの導入と動作確認

オープンソースのサーバサイドアプリケーションの導入と動作確認

オープンソースの仮想化ツールの導入と動作確認

[CE-SWE6] [CE-SWE12]

オープンソース・ライセンスの概要

代表的なオープンソース・ライセンスの解説[GPL類型]

代表的なオープンソース・ライセンスの解説[MPL類型]

代表的なオープンソース・ライセンスの解説[BSD類型]

知的財産の概要(1) 知的財産の概要(2) OSS利用上の知的財産面での考慮点

OSS利用上の知的財産以外での法務面での考慮点

企業/団体等における法的リスク管理

法的リスクに対応したビジネス

OSS開発コミュニティが検討すべき法的リスク低減策

OSSビジネス関連企業が検討すべき法的リスク低減策

OSSの知的財産問題に関する訴訟/トラブル事例

ソフトウェア特許論争

知的財産関連の出願のガイドライン

コンピュータアーキテクチャの基本

コンピュータハードウェアの基本

CPUアーキテクチャの基本

ディスクと周辺機器の基本

インタフェース技術の基本

ソフトウェアアーキテクチャ

OSのアーキテクチャ

ミドルウェアの種類と特徴

コンピュータシステムの構成

システムアーキテクチャの活用事例

Webシステムのアーキテクチャ

OSSを活用した基盤設計ケースワーク

オープンソースシステムアーキテクチャ構築

OSSの動作環境としてのハードウェア

これからのオープンソースアーキテクチャの動向

[CE-SWE8]

分散アーキテクチャとは 名前管理 複製管理 耐故障性 セキュアチャネル CORBA入門(1) CORBA入門(2) Webサービス入門

(1)Webサービス入門(2) マッシュアップ入門 分散トランザクショ

ンピアツーピアアーキテクチャ モビリティ 一貫性 大規模な分散シス

テムの事例

[CE-SWE-10]

Linux概要 ファイルシステム ファイルシステム データ保全とバックアップ

データ保全とバックアップ

シェルスクリプトと開発環境

シェルスクリプトと開発環境 ネットワークの基本

Linuxカーネル概論 スケジューリング 割り込みと遅延 システムコール プロセス管理 メモリ管理(1) メモリ管理(2) メモリ管理(3) ファイル管理(1) ファイル管理(2) ファイル管理(3) ネットワーク(1) ネットワーク(2) ネットワーク(3) ネットワーク(4)

Linuxシステム管理の作業概要

Linuxシステム管理・サーバ管理

Linuxシステム管理・ファイル/ディスク管理

Linuxシステム管理・ユーザ管理

Linuxシステム管理・バックアップとログ運用管理

Linuxシステム管理・リソース管理

Linuxシステム管理・カーネルの管理

Linuxシステム管理・ネットワーク管理

Linuxシステム管理・ルーティング管理

Linuxシステム管理・DHCPの構築と運用

Linuxシステム管理・FTPの構築と運用

Linuxシステム管理・NFSの構築と運用

Linuxシステム管理・Sambaの構築と運用

Linuxシステム管理・基本運用作業のトラブルシューティング

Linuxシステム管理・ネットワークのトラブルシューティング

[CE-SWE10]

ログイン手順とコンパイル手順 shellプログラミング ファイル入出力プロ

グラミング ファイルシステム UNIX環境 ライブラリの利用方法と作成手順 データの管理 ソフトウェアの開発

環境 デバッグ プロセスとスレッド シグナル プロセス間通信とパイプ 端末機器の入出力

セマフォ、共有メモリ、メッセージキュー

ネットワークプログラミング

[CE-SWE-6,8]

ネットワークサーバの機能と特徴

サーバシステムの導入

ネームサーバの導入 Webサーバの導入 メールサーバ導入

の内容と作業手順スーパーサーバの導入

プロキシサーバの導入

その他のネットワークサーバ導入の作業内容と手順

ネットワークサーバによるルーティング処理、フィルタリング処理の実装

ネットワークサーバによるインターネット接続

サーバの運用管理業務

ログ管理の内容と手順

Linuxサーバセキュリティ

Linuxのサービスセキュリティ

セキュアOSの機能と実装

クラスタシステム概論、HAクラスタ(1) HAクラスタ(2) HAクラスタ(3) コンピュータシミュ

レーション並列プログラミング概論

並列プログラミング実践(2)

Beowulf PCクラスタの構築 SCoreクラスタ PCクラスタの周辺

技術グリッド・コンピューティング

オープンネットワークの概念と仕組み

通信の形態とプロトコル

インターネット通信の仕組み

LANネットワークの仕組み

無線ネットワークの種類と通信の仕組み

オープンネットワークの通信仕様

IPネットワークの仕組み

ルーティングの仕組み

ルーティングプロトコルの仕様 TCPの仕組み 通信プロトコルの動

作確認TCPアプリケーションの仕組み・Web

TCPアプリケーションの仕組み・FTP

TCPアプリケーションの仕組み・Telnet

新しいネットワークアーキテクチャ

ネットワークシステム運用の概要

ネットワーク管理の個別項目とその内容

ネットワークのキャパシティ管理の個別項目とその内容

ネットワークの性能管理の個別項目とその内容

TCP/IPの管理 ネットワークサーバの運用管理実践

ネットワークハードウェアの運用管理

ネットワーク管理プロトコルの概要

MRTGによるネットワーク管理の実施

ネットワーク運用設計

ネットワーク運用設計

運用管理の実際的手順と体制

WANの運用管理 ネットワーク障害管理

ネットワークトラブルシューティング

Javaの基本 Java言語の基本構造

オブジェクト指向プログラミングのメリット

Javaによるアプリケーション開発手順

Javaによるネットワークプログラミング

Servlet/JSP/JDBCによるWebアプリケーション開発の概要

JDBCによるデータベースアクセス MVCモデル EJBによるアプリ

ケーション開発

JavaによるServer処理実装の特徴と設計方法

JavaによるWebアプリケーションの設計/実装

JavaによるServerSide Java/Webアプリケーション実装

オブジェクト指向システム分析/設計/実装の実践技術

デザインパターンによる開発手順

Javaのパフォーマンスチューニング

Cの基本 Cの基本構造 文字列操作 関数 ポインタ 構造体 コンソール入出力 ファイル管理 データ構造 C++の基本 C++の基本構造 オブジェクト指向プログラミング

STL(StandardTemplate Library)

GUIアプリケーションの開発

開発ライブラリの使用

LightWeightLanguageの基本 Perlの基本構造 PHPの基本構造 Pythonの基本構造 Rubyの基本構造 オブジェクト指向プ

ログラミング組み込みクラス[データ構造]

組み込みクラス[データ操作]

組み込みクラス[ファイル管理]

GUIアプリケーション開発 Ruby on Rails データベースアプリ

ケーション開発Webアプリケーション開発

プラグイン導入と開発

オープンソースシステムのカスタマイズ

[CE-SWE3]

開発フレームワークとは何か

開発フレームワークの種類と特徴

オープンソースによるWebアプリケーションのフレームワーク

フリーのWebコンテナ/J2EEコンテナの概要

オープンソースの開発ツール

開発フレームワークによる開発プロセスの手順

Ruby on Railsによるアプリケーション開発

Strutsとは MyFace(JSF)の開発モデルとは

データベース接続・アクセスのフレームワーク

DIxAOPコンテナの概要

Springフレームワーク Seasar2 Tapestry Strutsによるアプリ

ケーション開発

[CE-SWE2,3]

開発の流れとツール

ソフトウェア開発環境の概要

Linux開発環境におけるソフトウェアアプリケーション開発の概要

バージョン管理ツールの活用

デバッガによるプログラムデバッグの環境

カーネルデバッガを使用したデバッグ

バグ追跡システムを使用したデバッグ

オープンソース開発ツールの種類と機能

統合開発環境を用いた開発手順

オープンソース統合開発環境の種類と特徴

Linux開発環境におけるソフトウェア開発ワークショップ

Linux開発環境におけるソフトウェア開発支援ツール概要

ソフトウェア開発ツールの評価

Eclipseを用いたソフトウェア開発

Eclipseを用いたソフトウェア開発ワークショップ

[CE-SWE0] [CE-SWE11] [CE-SWE-6,7] [CE-SWE-6,7,8]

統合開発環境によるソフトウェア開発

さまざまな統合開発環境 Eclipseとは何か NetBeans IDEとは

何かWideStudioとは何か

Eclipse入門 -セットアップ

Eclipse入門 -基本操作

NetBeans入門 -セットアップ

NetBeans入門 -基本操作

WideStudio入門- セットアップ

WideStudio入門- 基本操作

EclipseによるJavaプログラミング

EclipseによるWebアプリケーション開発

NetBeansによるWebアプリケーション開発

WideStudioによるアプリケーション開発

[CE-SWE6] [CE-SWE6]

セキュリティ機能と暗号化の位置づけ 暗号化の方式・共

通鍵暗号方式暗号化の方式・公開鍵暗号方式

情報システムにおける暗号化適用の方式

電子証明書の仕組み OSSの活用シーン

と暗号化無線LANの暗号化 認証と暗号化 IPsecによる暗号化

通信SSHによるトンネリング

SSLプロトコルの仕組み

VPN通信の構築 PKI(公開鍵暗号化基盤)の仕組み

認証基盤構築実習 暗号化・これからの活用シーンと課題

ネットワークセキュリティの概要

ウィルスの特性と対策

ネットワーク攻撃方法の簡易的な分類

TCPにおける不正アクセス技術 Webにおける攻撃 IPにおける不正アク

セス技術

TCP/IPネットワークセキュリティの設計方法

アクセス制御の仕組みとファイアウォールの機能

Linuxのネットワークセキュリティ対策

ネットワーク脆弱性調査

セキュアなネットワークの構築

侵入検知システムの仕様と導入

IDSによる侵入検知

ネットワークセキュリティ構築

モバイルコンピューティングとリモートアクセスのセキュリティ

OSのセキュリティ機能

Linuxサーバのローカルセキュリティ対策

Linuxのネットワークセキュリティ対策

Linuxによるファイアウォール構築

Linuxのサーバセキュリティ設定

安全なリモートアクセス

SSLによるサーバVPNとCA

ドメインネームサービスのセキュリティ対策

電子メールのセキュリティ対策

Webのセキュリティ対策(1)

Webのセキュリティ対策(2)

ファイルサービスのセキュリティ対策

システムログの管理

Linuxによる侵入検知の手法

サーバのセキュリティ監査と設定の自動化

データベースの基礎理論 RDBMSの基本知識 トランザクションの

基本概念データベースの構成要素 DOAの内容概要 データベース設計

の基本理論 ERモデル 正規化の手順と方法

データベースインデックス

データベースの物理構造

SQLによるデータベースアクセス

SQL実践演習ワークショップ

代表的なオープンソースRDBMS製品

データベース設計構築の実践 データベース構築

データベース運用管理の目的と項目

データベースの運用作業と障害回復

データベース運用設計

データベースセキュリティ

データベースリカバリ設計

データベースの最適化

データベースのトラブル

データベースチューニング データベース構築

データベースインデックスを用いた性能改善

MySQLの導入と運用

データベーストラブルシューティング

データベース運用環境構築 データベース運用 データベースチュー

ニング

組み込みコンピュータシステムとは何か

組み込みコンピュータのアーキテクチャ

組み込みシステムの基本構成

組み込みコンピュータハードウェアの基本

CPUアーキテクチャの基本

組み込みソフトウェアの概要

カーネル処理の概要

リアルタイムシステムの構成と仕組み

組み込みシステムの開発方法

オブジェクト指向分析による組み込みシステムの分析とモデリング

組み込みコンピュータシステムの開発管理

組み込みシステムのアーキテクチャ

組み込みシステムのネットワーク機能

組み込みシステムの設計

これからの組み込みシステムの動向

[CE-SWE-3]

組み込み開発の流れと環境

組み込み開発環境の概要

組み込み開発環境を用いた開発手順

プログラムデバッグの環境

デバッガソフトを使用したデバッグ環境

ICEを使用したデバッグ環境

ツールチェーンによるデバッグ

組み込みアプリケーションデバッグの手順

組み込みアプリケーションの事例と開発環境

組み込みクロス開発環境の構築

GNU開発環境の特徴

GNU開発環境における組み込みアプリケーション開発

組み込みLinux開発最新デバッグ環境

組み込み開発環境の評価

組み込み開発環境におけるデバッグのパターン演習

タスクとコンテキスト

非同期と同期の設計仕様

タスクの優先度とその制御仕様

組み込みアプリケーション間の資源配分技術

組み込みアプリケーション間のリソースの共有技術

リソース有効活用のアーキテクチャ

プログラム資源の有効活用技術

入出力待ちリソースの有効利用

入出力資源管理 J2MEの仕様 VMの概要のその活用

高信頼性の実装組み込みアプリケーションの実装事例研究

クリティカルなマイコンアプリケーションを活用した設計ケースワーク

組み込みアプリケーションソフトウェアの実装

[CE-SWE-10]

マルチプロセッサシステム

ハードウェアによる最適化

リアルタイムシステムの設計

リアルタイムソフトウェアの条件と最適化

性能最適化の評価項目

ソフトウェアの最適化

MPUの性能最適化設計

システムの性能要件と評価項目

システム性能の評価方法

性能評価手法の分類 拡張性の評価 システム資源のト

レードオフ

基本ソフトウェアと応用ソフトウェアのトレードオフ

組み込みシステム最適化のための方式設計

最適化のための検討項目

基礎

組み込みSW

RDB

セキュリティ

開発体系

プログラミング

システム

ファイル操作 ユーザの権限と管理 システム管理

並列プログラミング 実践(1) マルチスレッドプログラミング

並列プログラミング 実践(3)

13. Javaに関する知識Ⅰ・Ⅱ

14. C、C++に関する知識Ⅰ・Ⅱ

15. Light WeightLanguageに関する知識

Ⅰ・Ⅱ

11. ネットワーク・アーキテクチャに関する知識Ⅰ・Ⅱ

12. ネットワーク管理に関する知識Ⅰ・Ⅱ

ネットワーク

1. OSSの概要に関する知識Ⅰ・Ⅱ

2. 法務分野に関する基礎知識Ⅰ・Ⅱ

3. コンピューターシステムやアーキテクチャに関する

知識Ⅰ・Ⅱ

4. 分散アーキテクチャに関する知識Ⅱ

5. Linuxの概念や基本操作に関する知識Ⅰ・Ⅱ

6. Linuxのカーネルに関する知識Ⅰ・Ⅱ

7. Linuxのシステム管理に関する知識Ⅰ・Ⅱ

8. Linuxのシステムプログラミングに関する知識Ⅰ・Ⅱ

25. 組み込み開発環境に関する知識Ⅰ・Ⅱ

26. 組み込みアプリケーション開発に関する知識Ⅰ・Ⅱ

27. 組み込みシステム最適化に関する知識Ⅰ・Ⅱ

20. ネットワークセキュリティに関する知識Ⅰ・Ⅱ

21. OSセキュリティに関する知識Ⅰ・Ⅱ

22. RDBに関する基礎知識Ⅰ・Ⅱ

23. RDBシステム管理に関する知識Ⅰ・Ⅱ

9. ネットワークサーバ管理に関する知識Ⅰ・Ⅱ

10. クラスタシステム構築に関する知識Ⅰ・Ⅱ

24. 組み込みシステムに関する知識Ⅰ・Ⅱ

16. 開発フレームワークに関する知識Ⅰ・Ⅱ

17. 開発ツールに関する知識Ⅰ・Ⅱ

18. 統合開発環境に関する知識Ⅰ・Ⅱ

19. 暗号化に関する知識Ⅰ・Ⅱ

Page 15: IT 知識体系の科目別の関係(科目別) · 1 独立行政法人情報処理推進機構 付録2:it知識体系の科目別の関係(科目別) ossモデルカリキュラムの27科目(oss基本知識・応用知識)とit知識体系との関係をit知識体

独立行政法人 情報処理推進機構15

<IT知識体系固有の知識>

科目名

CE-SWE0 歴史と概要 [コア]

CE-SWE1 ソフトウェアプロセス [コア]

CE-SWE2 ソフトウェアの要求と仕様 [コア]

CE-SWE3 ソフトウェアの設計[コア]

CE-SWE4 ソフトウェアのテストと検証 [コア]

CE-SWE5 ソフトウェアの保守[コア]

CE-SWE6 ソフトウェア開発・保守ツールと環境 [コア]

CE-SWE7 ソフトウェアプロジェクト管理 [コア]

・ソフトウェア工学を学習する理由

・ソフトウェアライフサイクルおよびプロセスモデル

・要求獲得 ・基本的な設計の概念および原理

・妥当性検査(validation) 計画

・ソフトウェアの保守: 保守の様々な形態, 他

・プログラミング環境

・チーム管理:チームプロセス,チーム編成と意思決定, 他

・ソフトウェア工学の領域への貢献や影響が認められる人物

・プロセス評価モデル

・要求分析モデル化技法

・ソフトウェアアーキテクチャ

・テストの基本事項( テスト計画立案, テストケース生成など)

・影響分析, 回帰テスト,関連ソフトウェアのサポート

・要求分析および設計モデリングツール

・プロジェクト計画

・ソフトウェアプロセス,要件, 仕様, 設計, テスト, 検証, 他

・ソフトウェアプロセス計量尺度

・機能および非機能要求

・構造化設計 ・ブラックボックスおよびホワイトボックステスト技術

・保全性の高いソフトウェアの特徴

・テストツール ・ソフトウェアの計測および見積りの技術

・ソフトウェア工学とコンピュータ工学の対照

・プロトタイピング ・オブジェクト指向分析および設計

・単体テスト,統合テスト, 妥当性確認テスト,システムテスト

・様々な形態のソフトウェア再利用,その長所と短所

・構成管理ツール ・リスク分析

・ソフトウェア工学のアプローチを使用するいくつかの例

・形式仕様技法の基本概念

・コンポーネントレベル設計

・オブジェクト指向テスト

・リエンジニアリング

・データベースを利用したツール,その設計と開発

・ソフトウェア品質保証

・ソフトウェアライフサイクルなどの正式なソフトウェアプロセスの存在

・再利用を考慮した設計

・査閲(inspection)

・遺産システム ・その他の可能性(CASE ツールなど)

・ソフトウェア構成管理

・ソフトウェアプロジェクトの進展に伴い, 要件や仕様が若干変化することがあること

・ツール統合機構 ・プロジェクト管理ツール

・ソフトウェア設計時における言語選択の重要性・ソフトウェアプロジェクトにおけるテストと検証の重要性・ソフトウェア工学に関連する補完的な教材の研究・コンピュータ工学におけるソフトウェア工学の目的と役割

CE-SWE ソフトウェア工学

科目名

CE-SWE8 言語翻訳 [選択]

CE-SWE9 ソフトウェアのフォールトトレランス [選択]

CE-SWE10 ソフトウェアの構成管理 [選択]

CE-SWE11 ソフトウェアの標準化 [選択]

・コンピュータ技術者によるソフトウェア開発をサポートするツール

・ソフトウェア信頼性モデル

・システム管理 ・標準化の必要性

・言語翻訳の様々な可能性、他

・ソフトウェアフォールトトレランスの実現方式

・ネットワーク管理

・世界の標準化団体( IEEE, ISO,ITU)

・言語翻訳の各フェーズ( 語彙分析, 構文解析,生成フェーズ, 最適化), 他

・オペレーティングシステムとデータ構造におけるフォールトトレランス

・バージョン管理 ・標準化のプロセス

・データベースと分散システムにおけるフォールトトレランス

・構成管理のツール

・標準化されたソフトウェアの実例

CE-SWE ソフトウェア工学

Page 16: IT 知識体系の科目別の関係(科目別) · 1 独立行政法人情報処理推進機構 付録2:it知識体系の科目別の関係(科目別) ossモデルカリキュラムの27科目(oss基本知識・応用知識)とit知識体系との関係をit知識体

独立行政法人 情報処理推進機構16

(8) IT-SIA システムインテグレーションとアーキテクチャ

<OSSモデルカリキュラム上の関連部分>分野 科目名 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15

オープンソースの理念

オープンソースOSの歴史

代表的なオープンソース

代表的なオープンソース開発言語

代表的なオープンソースアプリケーション

オープンソースの市場動向

オープンソースソフトウェアを用いたシステム事例

オープンソースソフトウェアコミュニティ

オープンソースソフトウェアビジネス

オープンソースの技術情報獲得方法

オープンソースのOSの導入と動作確認

オープンソースのサーバ製品の導入と動作確認

オープンソースのデスクトップ用アプリケーションの導入と動作確認

オープンソースのサーバサイドアプリケーションの導入と動作確認

オープンソースの仮想化ツールの導入と動作確認

[IT-SIA3]

オープンソース・ライセンスの概要

代表的なオープンソース・ライセンスの解説[GPL類型]

代表的なオープンソース・ライセンスの解説[MPL類型]

代表的なオープンソース・ライセンスの解説[BSD類型]

知的財産の概要(1) 知的財産の概要(2) OSS利用上の知的財産面での考慮点

OSS利用上の知的財産以外での法務面での考慮点

企業/団体等における法的リスク管理

法的リスクに対応したビジネス

OSS開発コミュニティが検討すべき法的リスク低減策

OSSビジネス関連企業が検討すべき法的リスク低減策

OSSの知的財産問題に関する訴訟/トラブル事例

ソフトウェア特許論争

知的財産関連の出願のガイドライン

コンピュータアーキテクチャの基本

コンピュータハードウェアの基本

CPUアーキテクチャの基本

ディスクと周辺機器の基本

インタフェース技術の基本

ソフトウェアアーキテクチャ

OSのアーキテクチャ

ミドルウェアの種類と特徴

コンピュータシステムの構成

システムアーキテクチャの活用事例

Webシステムのアーキテクチャ

OSSを活用した基盤設計ケースワーク

オープンソースシステムアーキテクチャ構築

OSSの動作環境としてのハードウェア

これからのオープンソースアーキテクチャの動向

[IT-SIA3] [IT-SIA7]

分散アーキテクチャとは 名前管理 複製管理 耐故障性 セキュアチャネル CORBA入門(1) CORBA入門(2) Webサービス入門

(1)Webサービス入門(2) マッシュアップ入門 分散トランザクショ

ンピアツーピアアーキテクチャ モビリティ 一貫性 大規模な分散シス

テムの事例

Linux概要 ファイルシステム ファイルシステム データ保全とバックアップ

データ保全とバックアップ

シェルスクリプトと開発環境

シェルスクリプトと開発環境 ネットワークの基本

Linuxカーネル概論 スケジューリング 割り込みと遅延 システムコール プロセス管理 メモリ管理(1) メモリ管理(2) メモリ管理(3) ファイル管理(1) ファイル管理(2) ファイル管理(3) ネットワーク(1) ネットワーク(2) ネットワーク(3) ネットワーク(4)

Linuxシステム管理の作業概要

Linuxシステム管理・サーバ管理

Linuxシステム管理・ファイル/ディスク管理

Linuxシステム管理・ユーザ管理

Linuxシステム管理・バックアップとログ運用管理

Linuxシステム管理・リソース管理

Linuxシステム管理・カーネルの管理

Linuxシステム管理・ネットワーク管理

Linuxシステム管理・ルーティング管理

Linuxシステム管理・DHCPの構築と運用

Linuxシステム管理・FTPの構築と運用

Linuxシステム管理・NFSの構築と運用

Linuxシステム管理・Sambaの構築と運用

Linuxシステム管理・基本運用作業のトラブルシューティング

Linuxシステム管理・ネットワークのトラブルシューティング

ログイン手順とコンパイル手順 shellプログラミング ファイル入出力プロ

グラミング ファイルシステム UNIX環境 ライブラリの利用方法と作成手順 データの管理 ソフトウェアの開発

環境 デバッグ プロセスとスレッド シグナル プロセス間通信とパイプ 端末機器の入出力

セマフォ、共有メモリ、メッセージキュー

ネットワークプログラミング

ネットワークサーバの機能と特徴

サーバシステムの導入

ネームサーバの導入 Webサーバの導入 メールサーバ導入

の内容と作業手順スーパーサーバの導入

プロキシサーバの導入

その他のネットワークサーバ導入の作業内容と手順

ネットワークサーバによるルーティング処理、フィルタリング処理の実装

ネットワークサーバによるインターネット接続

サーバの運用管理業務

ログ管理の内容と手順

Linuxサーバセキュリティ

Linuxのサービスセキュリティ

セキュアOSの機能と実装

クラスタシステム概論、HAクラスタ(1) HAクラスタ(2) HAクラスタ(3) コンピュータシミュ

レーション並列プログラミング概論

並列プログラミング実践(2)

Beowulf PCクラスタの構築 SCoreクラスタ PCクラスタの周辺

技術グリッド・コンピューティング

[IT-SIA4]

オープンネットワークの概念と仕組み

通信の形態とプロトコル

インターネット通信の仕組み

LANネットワークの仕組み

無線ネットワークの種類と通信の仕組み

オープンネットワークの通信仕様

IPネットワークの仕組み

ルーティングの仕組み

ルーティングプロトコルの仕様 TCPの仕組み 通信プロトコルの動

作確認TCPアプリケーションの仕組み・Web

TCPアプリケーションの仕組み・FTP

TCPアプリケーションの仕組み・Telnet

新しいネットワークアーキテクチャ

ネットワークシステム運用の概要

ネットワーク管理の個別項目とその内容

ネットワークのキャパシティ管理の個別項目とその内容

ネットワークの性能管理の個別項目とその内容

TCP/IPの管理 ネットワークサーバの運用管理実践

ネットワークハードウェアの運用管理

ネットワーク管理プロトコルの概要

MRTGによるネットワーク管理の実施

ネットワーク運用設計

ネットワーク運用設計

運用管理の実際的手順と体制

WANの運用管理 ネットワーク障害管理

ネットワークトラブルシューティング

Javaの基本 Java言語の基本構造

オブジェクト指向プログラミングのメリット

Javaによるアプリケーション開発手順

Javaによるネットワークプログラミング

Servlet/JSP/JDBCによるWebアプリケーション開発の概要

JDBCによるデータベースアクセス MVCモデル EJBによるアプリ

ケーション開発

JavaによるServer処理実装の特徴と設計方法

JavaによるWebアプリケーションの設計/実装

JavaによるServerSide Java/Webアプリケーション実装

オブジェクト指向システム分析/設計/実装の実践技術

デザインパターンによる開発手順

Javaのパフォーマンスチューニング

[IT-SIA7]

Cの基本 Cの基本構造 文字列操作 関数 ポインタ 構造体 コンソール入出力 ファイル管理 データ構造 C++の基本 C++の基本構造 オブジェクト指向プログラミング

STL(StandardTemplate Library)

GUIアプリケーションの開発

開発ライブラリの使用

LightWeightLanguageの基本 Perlの基本構造 PHPの基本構造 Pythonの基本構造 Rubyの基本構造 オブジェクト指向プ

ログラミング組み込みクラス[データ構造]

組み込みクラス[データ操作]

組み込みクラス[ファイル管理]

GUIアプリケーション開発 Ruby on Rails データベースアプリ

ケーション開発Webアプリケーション開発

プラグイン導入と開発

オープンソースシステムのカスタマイズ

開発フレームワークとは何か

開発フレームワークの種類と特徴

オープンソースによるWebアプリケーションのフレームワーク

フリーのWebコンテナ/J2EEコンテナの概要

オープンソースの開発ツール

開発フレームワークによる開発プロセスの手順

Ruby on Railsによるアプリケーション開発

Strutsとは MyFace(JSF)の開発モデルとは

データベース接続・アクセスのフレームワーク

DIxAOPコンテナの概要

Springフレームワーク Seasar2 Tapestry Strutsによるアプリ

ケーション開発

開発の流れとツール

ソフトウェア開発環境の概要

Linux開発環境におけるソフトウェアアプリケーション開発の概要

バージョン管理ツールの活用

デバッガによるプログラムデバッグの環境

カーネルデバッガを使用したデバッグ

バグ追跡システムを使用したデバッグ

オープンソース開発ツールの種類と機能

統合開発環境を用いた開発手順

オープンソース統合開発環境の種類と特徴

Linux開発環境におけるソフトウェア開発ワークショップ

Linux開発環境におけるソフトウェア開発支援ツール概要

ソフトウェア開発ツールの評価

Eclipseを用いたソフトウェア開発

Eclipseを用いたソフトウェア開発ワークショップ

[IT-SIA4] [IT-SIA4]

統合開発環境によるソフトウェア開発

さまざまな統合開発環境 Eclipseとは何か NetBeans IDEとは

何かWideStudioとは何か

Eclipse入門 -セットアップ

Eclipse入門 -基本操作

NetBeans入門 -セットアップ

NetBeans入門 -基本操作

WideStudio入門- セットアップ

WideStudio入門- 基本操作

EclipseによるJavaプログラミング

EclipseによるWebアプリケーション開発

NetBeansによるWebアプリケーション開発

WideStudioによるアプリケーション開発

セキュリティ機能と暗号化の位置づけ 暗号化の方式・共

通鍵暗号方式暗号化の方式・公開鍵暗号方式

情報システムにおける暗号化適用の方式

電子証明書の仕組み OSSの活用シーン

と暗号化無線LANの暗号化 認証と暗号化 IPsecによる暗号化

通信SSHによるトンネリング

SSLプロトコルの仕組み

VPN通信の構築 PKI(公開鍵暗号化基盤)の仕組み

認証基盤構築実習 暗号化・これからの活用シーンと課題

ネットワークセキュリティの概要

ウィルスの特性と対策

ネットワーク攻撃方法の簡易的な分類

TCPにおける不正アクセス技術 Webにおける攻撃 IPにおける不正アク

セス技術

TCP/IPネットワークセキュリティの設計方法

アクセス制御の仕組みとファイアウォールの機能

Linuxのネットワークセキュリティ対策

ネットワーク脆弱性調査

セキュアなネットワークの構築

侵入検知システムの仕様と導入

IDSによる侵入検知

ネットワークセキュリティ構築

モバイルコンピューティングとリモートアクセスのセキュリティ

OSのセキュリティ機能

Linuxサーバのローカルセキュリティ対策

Linuxのネットワークセキュリティ対策

Linuxによるファイアウォール構築

Linuxのサーバセキュリティ設定

安全なリモートアクセス

SSLによるサーバVPNとCA

ドメインネームサービスのセキュリティ対策

電子メールのセキュリティ対策

Webのセキュリティ対策(1)

Webのセキュリティ対策(2)

ファイルサービスのセキュリティ対策

システムログの管理

Linuxによる侵入検知の手法

サーバのセキュリティ監査と設定の自動化

データベースの基礎理論 RDBMSの基本知識 トランザクションの

基本概念データベースの構成要素 DOAの内容概要 データベース設計

の基本理論 ERモデル 正規化の手順と方法

データベースインデックス

データベースの物理構造

SQLによるデータベースアクセス

SQL実践演習ワークショップ

代表的なオープンソースRDBMS製品

データベース設計構築の実践 データベース構築

データベース運用管理の目的と項目

データベースの運用作業と障害回復

データベース運用設計

データベースセキュリティ

データベースリカバリ設計

データベースの最適化

データベースのトラブル

データベースチューニング データベース構築

データベースインデックスを用いた性能改善

MySQLの導入と運用

データベーストラブルシューティング

データベース運用環境構築 データベース運用 データベースチュー

ニング

組み込みコンピュータシステムとは何か

組み込みコンピュータのアーキテクチャ

組み込みシステムの基本構成

組み込みコンピュータハードウェアの基本

CPUアーキテクチャの基本

組み込みソフトウェアの概要

カーネル処理の概要

リアルタイムシステムの構成と仕組み

組み込みシステムの開発方法

オブジェクト指向分析による組み込みシステムの分析とモデリング

組み込みコンピュータシステムの開発管理

組み込みシステムのアーキテクチャ

組み込みシステムのネットワーク機能

組み込みシステムの設計

これからの組み込みシステムの動向

組み込み開発の流れと環境

組み込み開発環境の概要

組み込み開発環境を用いた開発手順

プログラムデバッグの環境

デバッガソフトを使用したデバッグ環境

ICEを使用したデバッグ環境

ツールチェーンによるデバッグ

組み込みアプリケーションデバッグの手順

組み込みアプリケーションの事例と開発環境

組み込みクロス開発環境の構築

GNU開発環境の特徴

GNU開発環境における組み込みアプリケーション開発

組み込みLinux開発最新デバッグ環境

組み込み開発環境の評価

組み込み開発環境におけるデバッグのパターン演習

タスクとコンテキスト

非同期と同期の設計仕様

タスクの優先度とその制御仕様

組み込みアプリケーション間の資源配分技術

組み込みアプリケーション間のリソースの共有技術

リソース有効活用のアーキテクチャ

プログラム資源の有効活用技術

入出力待ちリソースの有効利用

入出力資源管理 J2MEの仕様 VMの概要のその活用

高信頼性の実装組み込みアプリケーションの実装事例研究

クリティカルなマイコンアプリケーションを活用した設計ケースワーク

組み込みアプリケーションソフトウェアの実装

マルチプロセッサシステム

ハードウェアによる最適化

リアルタイムシステムの設計

リアルタイムソフトウェアの条件と最適化

性能最適化の評価項目

ソフトウェアの最適化

MPUの性能最適化設計

システムの性能要件と評価項目

システム性能の評価方法

性能評価手法の分類 拡張性の評価 システム資源のト

レードオフ

基本ソフトウェアと応用ソフトウェアのトレードオフ

組み込みシステム最適化のための方式設計

最適化のための検討項目

[IT-SIA4]

9. ネットワークサーバ管理に関する知識Ⅰ・Ⅱ

10. クラスタシステム構築に関する知識Ⅰ・Ⅱ

24. 組み込みシステムに関する知識Ⅰ・Ⅱ

16. 開発フレームワークに関する知識Ⅰ・Ⅱ

17. 開発ツールに関する知識Ⅰ・Ⅱ

18. 統合開発環境に関する知識Ⅰ・Ⅱ

19. 暗号化に関する知識Ⅰ・Ⅱ

25. 組み込み開発環境に関する知識Ⅰ・Ⅱ

26. 組み込みアプリケーション開発に関する知識Ⅰ・Ⅱ

27. 組み込みシステム最適化に関する知識Ⅰ・Ⅱ

20. ネットワークセキュリティに関する知識Ⅰ・Ⅱ

21. OSセキュリティに関する知識Ⅰ・Ⅱ

22. RDBに関する基礎知識Ⅰ・Ⅱ

23. RDBシステム管理に関する知識Ⅰ・Ⅱ

5. Linuxの概念や基本操作に関する知識Ⅰ・Ⅱ

6. Linuxのカーネルに関する知識Ⅰ・Ⅱ

7. Linuxのシステム管理に関する知識Ⅰ・Ⅱ

8. Linuxのシステムプログラミングに関する知識Ⅰ・Ⅱ

1. OSSの概要に関する知識Ⅰ・Ⅱ

2. 法務分野に関する基礎知識Ⅰ・Ⅱ

3. コンピューターシステムやアーキテクチャに関する

知識Ⅰ・Ⅱ

4. 分散アーキテクチャに関する知識Ⅱ

並列プログラミング 実践(3)

13. Javaに関する知識Ⅰ・Ⅱ

14. C、C++に関する知識Ⅰ・Ⅱ

15. Light WeightLanguageに関する知識

Ⅰ・Ⅱ

11. ネットワーク・アーキテクチャに関する知識Ⅰ・Ⅱ

12. ネットワーク管理に関する知識Ⅰ・Ⅱ

ネットワーク

ファイル操作 ユーザの権限と管理 システム管理

並列プログラミング 実践(1) マルチスレッドプログラミング

基礎

組み込みSW

RDB

セキュリティ

開発体系

プログラミング

システム

Page 17: IT 知識体系の科目別の関係(科目別) · 1 独立行政法人情報処理推進機構 付録2:it知識体系の科目別の関係(科目別) ossモデルカリキュラムの27科目(oss基本知識・応用知識)とit知識体系との関係をit知識体

独立行政法人 情報処理推進機構17

<IT知識体系固有の知識>

科目名

SIA1. 要求仕様 SIA2. 調達/手配

SIA3. インテグレーション

SIA4. プロジェクト管理

SIA5. テストと品質保証(QA)

SIA6. 組織の特性

SIA7. アーキテクチャ

・ユーザ, タスク, 技術の収集

・構築/ 購入 ・コンポーネント,インタフェース,インテグレーショ

・費用便益分析 ・標準仕様 ・ビジネスプロセス

・表記/モデリング

・モデリング ・インソーシング/アウトソーシング

・インフラストラクチャ, ミドルウェア, プラットフォーム

・役割/責任/説明責任

・技法 ・IT 環境 ・情報アーキテクチャ

・テスト ・ハードウェア ・技法: データウェアハウス, 拡張フレームワーク, ラッパー, グルー, ファサード

・資金調達/見積もり/予算作成

・ユーザビリティ ・組織文化 ・エンタープライズアーキテクチャ(EA)

・ライフサイクル ・ソフトウェア ・テスト/ 評価 /ベンチマーク

・計画 ・受入れ/ 契約への適合

・システムアーキテクチャ

・サポート ・リスク分析 ・ストレステスト(負荷試験)

・大組織の統合アプリケーション(CRM, ERP)

・テスト/ 評価/ベンチマーク

・スケジューリング

・性能

・契約/ RFP(Request forProporsal )

・トラッキング

・品質 ・事後分析

IT-SIA システムインテグレーションとアーキテクチャ

Page 18: IT 知識体系の科目別の関係(科目別) · 1 独立行政法人情報処理推進機構 付録2:it知識体系の科目別の関係(科目別) ossモデルカリキュラムの27科目(oss基本知識・応用知識)とit知識体系との関係をit知識体

独立行政法人 情報処理推進機構18

(9) IT-NET ネットワーク

<OSSモデルカリキュラム上の関連部分>分野 科目名 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15

オープンソースの理念

オープンソースOSの歴史

代表的なオープンソース

代表的なオープンソース開発言語

代表的なオープンソースアプリケーション

オープンソースの市場動向

オープンソースソフトウェアを用いたシステム事例

オープンソースソフトウェアコミュニティ

オープンソースソフトウェアビジネス

オープンソースの技術情報獲得方法

オープンソースのOSの導入と動作確認

オープンソースのサーバ製品の導入と動作確認

オープンソースのデスクトップ用アプリケーションの導入と動作確認

オープンソースのサーバサイドアプリケーションの導入と動作確認

オープンソースの仮想化ツールの導入と動作確認

[IT-NET5]

オープンソース・ライセンスの概要

代表的なオープンソース・ライセンスの解説[GPL類型]

代表的なオープンソース・ライセンスの解説[MPL類型]

代表的なオープンソース・ライセンスの解説[BSD類型]

知的財産の概要(1) 知的財産の概要(2) OSS利用上の知的財産面での考慮点

OSS利用上の知的財産以外での法務面での考慮点

企業/団体等における法的リスク管理

法的リスクに対応したビジネス

OSS開発コミュニティが検討すべき法的リスク低減策

OSSビジネス関連企業が検討すべき法的リスク低減策

OSSの知的財産問題に関する訴訟/トラブル事例

ソフトウェア特許論争

知的財産関連の出願のガイドライン

コンピュータアーキテクチャの基本

コンピュータハードウェアの基本

CPUアーキテクチャの基本

ディスクと周辺機器の基本

インタフェース技術の基本

ソフトウェアアーキテクチャ

OSのアーキテクチャ

ミドルウェアの種類と特徴

コンピュータシステムの構成

システムアーキテクチャの活用事例

Webシステムのアーキテクチャ

OSSを活用した基盤設計ケースワーク

オープンソースシステムアーキテクチャ構築

OSSの動作環境としてのハードウェア

これからのオープンソースアーキテクチャの動向

[IT-NET1] [IT-NET5]

分散アーキテクチャとは 名前管理 複製管理 耐故障性 セキュアチャネル CORBA入門(1) CORBA入門(2) Webサービス入門

(1)Webサービス入門(2) マッシュアップ入門 分散トランザクショ

ンピアツーピアアーキテクチャ モビリティ 一貫性 大規模な分散シス

テムの事例

[IT-NET1] [IT-NET2] [IT-NET4] [IT-NET6]

Linux概要 ファイルシステム ファイルシステム データ保全とバックアップ

データ保全とバックアップ

シェルスクリプトと開発環境

シェルスクリプトと開発環境 ネットワークの基本

[IT-NET6]

Linuxカーネル概論 スケジューリング 割り込みと遅延 システムコール プロセス管理 メモリ管理(1) メモリ管理(2) メモリ管理(3) ファイル管理(1) ファイル管理(2) ファイル管理(3) ネットワーク(1) ネットワーク(2) ネットワーク(3) ネットワーク(4)

[IT-NET1,2] [IT-NET1]

Linuxシステム管理の作業概要

Linuxシステム管理・サーバ管理

Linuxシステム管理・ファイル/ディスク管理

Linuxシステム管理・ユーザ管理

Linuxシステム管理・バックアップとログ運用管理

Linuxシステム管理・リソース管理

Linuxシステム管理・カーネルの管理

Linuxシステム管理・ネットワーク管理

Linuxシステム管理・ルーティング管理

Linuxシステム管理・DHCPの構築と運用

Linuxシステム管理・FTPの構築と運用

Linuxシステム管理・NFSの構築と運用

Linuxシステム管理・Sambaの構築と運用

Linuxシステム管理・基本運用作業のトラブルシューティング

Linuxシステム管理・ネットワークのトラブルシューティング

ログイン手順とコンパイル手順 shellプログラミング ファイル入出力プロ

グラミング ファイルシステム UNIX環境 ライブラリの利用方法と作成手順 データの管理 ソフトウェアの開発

環境 デバッグ プロセスとスレッド シグナル プロセス間通信とパイプ 端末機器の入出力

セマフォ、共有メモリ、メッセージキュー

ネットワークプログラミング

ネットワークサーバの機能と特徴

サーバシステムの導入

ネームサーバの導入 Webサーバの導入 メールサーバ導入

の内容と作業手順スーパーサーバの導入

プロキシサーバの導入

その他のネットワークサーバ導入の作業内容と手順

ネットワークサーバによるルーティング処理、フィルタリング処理の実装

ネットワークサーバによるインターネット接続

サーバの運用管理業務

ログ管理の内容と手順

Linuxサーバセキュリティ

Linuxのサービスセキュリティ

セキュアOSの機能と実装

[IT-NET4]

クラスタシステム概論、HAクラスタ(1) HAクラスタ(2) HAクラスタ(3) コンピュータシミュ

レーション並列プログラミング概論

並列プログラミング実践(2)

Beowulf PCクラスタの構築 SCoreクラスタ PCクラスタの周辺

技術グリッド・コンピューティング

オープンネットワークの概念と仕組み

通信の形態とプロトコル

インターネット通信の仕組み

LANネットワークの仕組み

無線ネットワークの種類と通信の仕組み

オープンネットワークの通信仕様

IPネットワークの仕組み

ルーティングの仕組み

ルーティングプロトコルの仕様 TCPの仕組み 通信プロトコルの動

作確認TCPアプリケーションの仕組み・Web

TCPアプリケーションの仕組み・FTP

TCPアプリケーションの仕組み・Telnet

新しいネットワークアーキテクチャ

[IT-NET1] [IT-NET1,3] [IT-NET1] [IT-NET1] [IT-NET3,6] [IT-NET1,3] [IT-NET2] [IT-NET2]

ネットワークシステム運用の概要

ネットワーク管理の個別項目とその内容

ネットワークのキャパシティ管理の個別項目とその内容

ネットワークの性能管理の個別項目とその内容

TCP/IPの管理 ネットワークサーバの運用管理実践

ネットワークハードウェアの運用管理

ネットワーク管理プロトコルの概要

MRTGによるネットワーク管理の実施

ネットワーク運用設計

ネットワーク運用設計

運用管理の実際的手順と体制

WANの運用管理 ネットワーク障害管理

ネットワークトラブルシューティング

[IT-NET6] [IT-NET6] [IT-NET6] [IT-NET6] [IT-NET6]

Javaの基本 Java言語の基本構造

オブジェクト指向プログラミングのメリット

Javaによるアプリケーション開発手順

Javaによるネットワークプログラミング

Servlet/JSP/JDBCによるWebアプリケーション開発の概要

JDBCによるデータベースアクセス MVCモデル EJBによるアプリ

ケーション開発

JavaによるServer処理実装の特徴と設計方法

JavaによるWebアプリケーションの設計/実装

JavaによるServerSide Java/Webアプリケーション実装

オブジェクト指向システム分析/設計/実装の実践技術

デザインパターンによる開発手順

Javaのパフォーマンスチューニング

Cの基本 Cの基本構造 文字列操作 関数 ポインタ 構造体 コンソール入出力 ファイル管理 データ構造 C++の基本 C++の基本構造 オブジェクト指向プログラミング

STL(StandardTemplate Library)

GUIアプリケーションの開発

開発ライブラリの使用

LightWeightLanguageの基本 Perlの基本構造 PHPの基本構造 Pythonの基本構造 Rubyの基本構造 オブジェクト指向プ

ログラミング組み込みクラス[データ構造]

組み込みクラス[データ操作]

組み込みクラス[ファイル管理]

GUIアプリケーション開発 Ruby on Rails データベースアプリ

ケーション開発Webアプリケーション開発

プラグイン導入と開発

オープンソースシステムのカスタマイズ

開発フレームワークとは何か

開発フレームワークの種類と特徴

オープンソースによるWebアプリケーションのフレームワーク

フリーのWebコンテナ/J2EEコンテナの概要

オープンソースの開発ツール

開発フレームワークによる開発プロセスの手順

Ruby on Railsによるアプリケーション開発

Strutsとは MyFace(JSF)の開発モデルとは

データベース接続・アクセスのフレームワーク

DIxAOPコンテナの概要

Springフレームワーク Seasar2 Tapestry Strutsによるアプリ

ケーション開発

開発の流れとツール

ソフトウェア開発環境の概要

Linux開発環境におけるソフトウェアアプリケーション開発の概要

バージョン管理ツールの活用

デバッガによるプログラムデバッグの環境

カーネルデバッガを使用したデバッグ

バグ追跡システムを使用したデバッグ

オープンソース開発ツールの種類と機能

統合開発環境を用いた開発手順

オープンソース統合開発環境の種類と特徴

Linux開発環境におけるソフトウェア開発ワークショップ

Linux開発環境におけるソフトウェア開発支援ツール概要

ソフトウェア開発ツールの評価

Eclipseを用いたソフトウェア開発

Eclipseを用いたソフトウェア開発ワークショップ

統合開発環境によるソフトウェア開発

さまざまな統合開発環境 Eclipseとは何か NetBeans IDEとは

何かWideStudioとは何か

Eclipse入門 -セットアップ

Eclipse入門 -基本操作

NetBeans入門 -セットアップ

NetBeans入門 -基本操作

WideStudio入門- セットアップ

WideStudio入門- 基本操作

EclipseによるJavaプログラミング

EclipseによるWebアプリケーション開発

NetBeansによるWebアプリケーション開発

WideStudioによるアプリケーション開発

セキュリティ機能と暗号化の位置づけ 暗号化の方式・共

通鍵暗号方式暗号化の方式・公開鍵暗号方式

情報システムにおける暗号化適用の方式

電子証明書の仕組み OSSの活用シーン

と暗号化無線LANの暗号化 認証と暗号化 IPsecによる暗号化

通信SSHによるトンネリング

SSLプロトコルの仕組み

VPN通信の構築 PKI(公開鍵暗号化基盤)の仕組み

認証基盤構築実習 暗号化・これからの活用シーンと課題

[IT-NET4] [IT-NET4] [IT-NET4] [IT-NET4] [IT-NET4,6] [IT-NET4] [IT-NET4] [IT-NET4] [IT-NET4] [IT-NET4] [IT-NET4] [IT-NET4]

ネットワークセキュリティの概要

ウィルスの特性と対策

ネットワーク攻撃方法の簡易的な分類

TCPにおける不正アクセス技術 Webにおける攻撃 IPにおける不正アク

セス技術

TCP/IPネットワークセキュリティの設計方法

アクセス制御の仕組みとファイアウォールの機能

Linuxのネットワークセキュリティ対策

ネットワーク脆弱性調査

セキュアなネットワークの構築

侵入検知システムの仕様と導入

IDSによる侵入検知

ネットワークセキュリティ構築

モバイルコンピューティングとリモートアクセスのセキュリティ

[IT-NET4,6] [IT-NET4] [IT-NET4] [IT-NET4] [IT-NET4] [IT-NET4]

OSのセキュリティ機能

Linuxサーバのローカルセキュリティ対策

Linuxのネットワークセキュリティ対策

Linuxによるファイアウォール構築

Linuxのサーバセキュリティ設定

安全なリモートアクセス

SSLによるサーバVPNとCA

ドメインネームサービスのセキュリティ対策

電子メールのセキュリティ対策

Webのセキュリティ対策(1)

Webのセキュリティ対策(2)

ファイルサービスのセキュリティ対策

システムログの管理

Linuxによる侵入検知の手法

サーバのセキュリティ監査と設定の自動化

[IT-NET4] [IT-NET4] [IT-NET4]

データベースの基礎理論 RDBMSの基本知識 トランザクションの

基本概念データベースの構成要素 DOAの内容概要 データベース設計

の基本理論 ERモデル 正規化の手順と方法

データベースインデックス

データベースの物理構造

SQLによるデータベースアクセス

SQL実践演習ワークショップ

代表的なオープンソースRDBMS製品

データベース設計構築の実践 データベース構築

データベース運用管理の目的と項目

データベースの運用作業と障害回復

データベース運用設計

データベースセキュリティ

データベースリカバリ設計

データベースの最適化

データベースのトラブル

データベースチューニング データベース構築

データベースインデックスを用いた性能改善

MySQLの導入と運用

データベーストラブルシューティング

データベース運用環境構築 データベース運用 データベースチュー

ニング

組み込みコンピュータシステムとは何か

組み込みコンピュータのアーキテクチャ

組み込みシステムの基本構成

組み込みコンピュータハードウェアの基本

CPUアーキテクチャの基本

組み込みソフトウェアの概要

カーネル処理の概要

リアルタイムシステムの構成と仕組み

組み込みシステムの開発方法

オブジェクト指向分析による組み込みシステムの分析とモデリング

組み込みコンピュータシステムの開発管理

組み込みシステムのアーキテクチャ

組み込みシステムのネットワーク機能

組み込みシステムの設計

これからの組み込みシステムの動向

組み込み開発の流れと環境

組み込み開発環境の概要

組み込み開発環境を用いた開発手順

プログラムデバッグの環境

デバッガソフトを使用したデバッグ環境

ICEを使用したデバッグ環境

ツールチェーンによるデバッグ

組み込みアプリケーションデバッグの手順

組み込みアプリケーションの事例と開発環境

組み込みクロス開発環境の構築

GNU開発環境の特徴

GNU開発環境における組み込みアプリケーション開発

組み込みLinux開発最新デバッグ環境

組み込み開発環境の評価

組み込み開発環境におけるデバッグのパターン演習

タスクとコンテキスト

非同期と同期の設計仕様

タスクの優先度とその制御仕様

組み込みアプリケーション間の資源配分技術

組み込みアプリケーション間のリソースの共有技術

リソース有効活用のアーキテクチャ

プログラム資源の有効活用技術

入出力待ちリソースの有効利用

入出力資源管理 J2MEの仕様 VMの概要のその活用

高信頼性の実装組み込みアプリケーションの実装事例研究

クリティカルなマイコンアプリケーションを活用した設計ケースワーク

組み込みアプリケーションソフトウェアの実装

マルチプロセッサシステム

ハードウェアによる最適化

リアルタイムシステムの設計

リアルタイムソフトウェアの条件と最適化

性能最適化の評価項目

ソフトウェアの最適化

MPUの性能最適化設計

システムの性能要件と評価項目

システム性能の評価方法

性能評価手法の分類 拡張性の評価 システム資源のト

レードオフ

基本ソフトウェアと応用ソフトウェアのトレードオフ

組み込みシステム最適化のための方式設計

最適化のための検討項目

[IT-NET3]

基礎

組み込みSW

RDB

セキュリティ

開発体系

プログラミング

システム

ファイル操作 ユーザの権限と管理 システム管理

並列プログラミング 実践(1) マルチスレッドプログラミング

並列プログラミング 実践(3)

13. Javaに関する知識Ⅰ・Ⅱ

14. C、C++に関する知識Ⅰ・Ⅱ

15. Light WeightLanguageに関する知識

Ⅰ・Ⅱ

11. ネットワーク・アーキテクチャに関する知識Ⅰ・Ⅱ

12. ネットワーク管理に関する知識Ⅰ・Ⅱ

ネットワーク

1. OSSの概要に関する知識Ⅰ・Ⅱ

2. 法務分野に関する基礎知識Ⅰ・Ⅱ

3. コンピューターシステムやアーキテクチャに関する

知識Ⅰ・Ⅱ

4. 分散アーキテクチャに関する知識Ⅱ

5. Linuxの概念や基本操作に関する知識Ⅰ・Ⅱ

6. Linuxのカーネルに関する知識Ⅰ・Ⅱ

7. Linuxのシステム管理に関する知識Ⅰ・Ⅱ

8. Linuxのシステムプログラミングに関する知識Ⅰ・Ⅱ

25. 組み込み開発環境に関する知識Ⅰ・Ⅱ

26. 組み込みアプリケーション開発に関する知識Ⅰ・Ⅱ

27. 組み込みシステム最適化に関する知識Ⅰ・Ⅱ

20. ネットワークセキュリティに関する知識Ⅰ・Ⅱ

21. OSセキュリティに関する知識Ⅰ・Ⅱ

22. RDBに関する基礎知識Ⅰ・Ⅱ

23. RDBシステム管理に関する知識Ⅰ・Ⅱ

9. ネットワークサーバ管理に関する知識Ⅰ・Ⅱ

10. クラスタシステム構築に関する知識Ⅰ・Ⅱ

24. 組み込みシステムに関する知識Ⅰ・Ⅱ

16. 開発フレームワークに関する知識Ⅰ・Ⅱ

17. 開発ツールに関する知識Ⅰ・Ⅱ

18. 統合開発環境に関する知識Ⅰ・Ⅱ

19. 暗号化に関する知識Ⅰ・Ⅱ

Page 19: IT 知識体系の科目別の関係(科目別) · 1 独立行政法人情報処理推進機構 付録2:it知識体系の科目別の関係(科目別) ossモデルカリキュラムの27科目(oss基本知識・応用知識)とit知識体系との関係をit知識体

独立行政法人 情報処理推進機構19

<IT知識体系固有の知識>

科目名

NET1. ネットワークの基礎

NET2. ルーティングとスイッチング

NET3. 物理層 NET4. セキュリティ

NET5. アプリケーション分野

NET6. ネットワーク管理

・標準化団体 ・IEEE 802.1 ・無線& モバイルリンク

・暗号の基礎 ・マルチメディアデータ技術

・無線& モバイル

・OSI モデル ・ルーティングアルゴリズム

・交換型とパケット型

・暗号のネットワークへの応用

・World Wide Web ・有線

・インターネットモデル

・ルーティングプロトコル

・物理メディア ・秘密鍵アルゴリズム, 公開鍵アルゴリズム, 認証プロトコル, 電子署名,VPN アプリケーション

・データベースとファイルサービス

・セキュリティ

・ノードとリンク ・デバイスアーキテクチャ

・シャノンの法則 ・ネットワーク攻撃シナリオ

・LAN,WAN ・発展的なルーティングとスイッチング

・衛星通信 ・ファイアウォール

・バンド幅, スループット

・性能への影響(レイテンシ, ジッター)

・エラー検出と訂正

・侵入検知

・コンポーネントとアーキテクチャ

・通信の標準仕様

・有線, 無線&モバイル

・ルーティングとスイッチング( ブリッジング)

・データ圧縮

・通信プロトコル ・IEEE 802・トポロジー

IT-NET ネットワーク

Page 20: IT 知識体系の科目別の関係(科目別) · 1 独立行政法人情報処理推進機構 付録2:it知識体系の科目別の関係(科目別) ossモデルカリキュラムの27科目(oss基本知識・応用知識)とit知識体系との関係をit知識体

独立行政法人 情報処理推進機構20

(10) CE-NWK テレコミュニケーション

<OSSモデルカリキュラム上の関連部分>分野 科目名 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15

オープンソースの理念

オープンソースOSの歴史

代表的なオープンソース

代表的なオープンソース開発言語

代表的なオープンソースアプリケーション

オープンソースの市場動向

オープンソースソフトウェアを用いたシステム事例

オープンソースソフトウェアコミュニティ

オープンソースソフトウェアビジネス

オープンソースの技術情報獲得方法

オープンソースのOSの導入と動作確認

オープンソースのサーバ製品の導入と動作確認

オープンソースのデスクトップ用アプリケーションの導入と動作確認

オープンソースのサーバサイドアプリケーションの導入と動作確認

オープンソースの仮想化ツールの導入と動作確認

[CE-NWK4] [CE-NWK14] [CE-NWK14]

オープンソース・ライセンスの概要

代表的なオープンソース・ライセンスの解説[GPL類型]

代表的なオープンソース・ライセンスの解説[MPL類型]

代表的なオープンソース・ライセンスの解説[BSD類型]

知的財産の概要(1) 知的財産の概要(2) OSS利用上の知的財産面での考慮点

OSS利用上の知的財産以外での法務面での考慮点

企業/団体等における法的リスク管理

法的リスクに対応したビジネス

OSS開発コミュニティが検討すべき法的リスク低減策

OSSビジネス関連企業が検討すべき法的リスク低減策

OSSの知的財産問題に関する訴訟/トラブル事例

ソフトウェア特許論争

知的財産関連の出願のガイドライン

コンピュータアーキテクチャの基本

コンピュータハードウェアの基本

CPUアーキテクチャの基本

ディスクと周辺機器の基本

インタフェース技術の基本

ソフトウェアアーキテクチャ

OSのアーキテクチャ

ミドルウェアの種類と特徴

コンピュータシステムの構成

システムアーキテクチャの活用事例

Webシステムのアーキテクチャ

OSSを活用した基盤設計ケースワーク

オープンソースシステムアーキテクチャ構築

OSSの動作環境としてのハードウェア

これからのオープンソースアーキテクチャの動向

[CE-NWK0,1]

分散アーキテクチャとは 名前管理 複製管理 耐故障性 セキュアチャネル CORBA入門(1) CORBA入門(2) Webサービス入門

(1)Webサービス入門(2) マッシュアップ入門 分散トランザクショ

ンピアツーピアアーキテクチャ モビリティ 一貫性 大規模な分散シス

テムの事例

[CE-NWK0,3] [CE-NWK11] [CE-NWK5] [CE-NWK14] [CE-NWK14] [CE-NWK6]

Linux概要 ファイルシステム ファイルシステム データ保全とバックアップ

データ保全とバックアップ

シェルスクリプトと開発環境

シェルスクリプトと開発環境 ネットワークの基本

[CE-NWK6] [CE-NWK6]

Linuxカーネル概論 スケジューリング 割り込みと遅延 システムコール プロセス管理 メモリ管理(1) メモリ管理(2) メモリ管理(3) ファイル管理(1) ファイル管理(2) ファイル管理(3) ネットワーク(1) ネットワーク(2) ネットワーク(3) ネットワーク(4)

[CE-NWK2] [CE-NWK2] [CE-NWK2,3]

Linuxシステム管理の作業概要

Linuxシステム管理・サーバ管理

Linuxシステム管理・ファイル/ディスク管理

Linuxシステム管理・ユーザ管理

Linuxシステム管理・バックアップとログ運用管理

Linuxシステム管理・リソース管理

Linuxシステム管理・カーネルの管理

Linuxシステム管理・ネットワーク管理

Linuxシステム管理・ルーティング管理

Linuxシステム管理・DHCPの構築と運用

Linuxシステム管理・FTPの構築と運用

Linuxシステム管理・NFSの構築と運用

Linuxシステム管理・Sambaの構築と運用

Linuxシステム管理・基本運用作業のトラブルシューティング

Linuxシステム管理・ネットワークのトラブルシューティング

[CE-NWK2] [CE-NWK2]

ログイン手順とコンパイル手順 shellプログラミング ファイル入出力プロ

グラミング ファイルシステム UNIX環境 ライブラリの利用方法と作成手順 データの管理 ソフトウェアの開発

環境 デバッグ プロセスとスレッド シグナル プロセス間通信とパイプ 端末機器の入出力

セマフォ、共有メモリ、メッセージキュー

ネットワークプログラミング

ネットワークサーバの機能と特徴

サーバシステムの導入

ネームサーバの導入 Webサーバの導入 メールサーバ導入

の内容と作業手順スーパーサーバの導入

プロキシサーバの導入

その他のネットワークサーバ導入の作業内容と手順

ネットワークサーバによるルーティング処理、フィルタリング処理の実装

ネットワークサーバによるインターネット接続

サーバの運用管理業務

ログ管理の内容と手順

Linuxサーバセキュリティ

Linuxのサービスセキュリティ

セキュアOSの機能と実装

[CE-NWK4] [CE-NWK2] [CE-NWK2,5] [CE-NWK11] [CE-NWK11]

クラスタシステム概論、HAクラスタ(1) HAクラスタ(2) HAクラスタ(3) コンピュータシミュ

レーション並列プログラミング概論

並列プログラミング実践(2)

Beowulf PCクラスタの構築 SCoreクラスタ PCクラスタの周辺

技術グリッド・コンピューティング

[CE-NWK13]

オープンネットワークの概念と仕組み

通信の形態とプロトコル

インターネット通信の仕組み

LANネットワークの仕組み

無線ネットワークの種類と通信の仕組み

オープンネットワークの通信仕様

IPネットワークの仕組み

ルーティングの仕組み

ルーティングプロトコルの仕様 TCPの仕組み 通信プロトコルの動

作確認TCPアプリケーションの仕組み・Web

TCPアプリケーションの仕組み・FTP

TCPアプリケーションの仕組み・Telnet

新しいネットワークアーキテクチャ

[CE-NWK0] [CE-NWK1] [CE-NWK2] [CE-NWK3] [CE-NWK9] [CE-NWK2,3] [CE-NWK2] [CE-NWK2] [CE-NWK2,9] [CE-NWK2] [CE-NWK5] [CE-NWK14] [CE-NWK14] [CE-NWK15]

ネットワークシステム運用の概要

ネットワーク管理の個別項目とその内容

ネットワークのキャパシティ管理の個別項目とその内容

ネットワークの性能管理の個別項目とその内容

TCP/IPの管理 ネットワークサーバの運用管理実践

ネットワークハードウェアの運用管理

ネットワーク管理プロトコルの概要

MRTGによるネットワーク管理の実施

ネットワーク運用設計

ネットワーク運用設計

運用管理の実際的手順と体制

WANの運用管理 ネットワーク障害管理

ネットワークトラブルシューティング

[CE-NWK11] [CE-NWK11] [CE-NWK2] [CE-NWK11]

Javaの基本 Java言語の基本構造

オブジェクト指向プログラミングのメリット

Javaによるアプリケーション開発手順

Javaによるネットワークプログラミング

Servlet/JSP/JDBCによるWebアプリケーション開発の概要

JDBCによるデータベースアクセス MVCモデル EJBによるアプリ

ケーション開発

JavaによるServer処理実装の特徴と設計方法

JavaによるWebアプリケーションの設計/実装

JavaによるServerSide Java/Webアプリケーション実装

オブジェクト指向システム分析/設計/実装の実践技術

デザインパターンによる開発手順

Javaのパフォーマンスチューニング

Cの基本 Cの基本構造 文字列操作 関数 ポインタ 構造体 コンソール入出力 ファイル管理 データ構造 C++の基本 C++の基本構造 オブジェクト指向プログラミング

STL(StandardTemplate Library)

GUIアプリケーションの開発

開発ライブラリの使用

LightWeightLanguageの基本 Perlの基本構造 PHPの基本構造 Pythonの基本構造 Rubyの基本構造 オブジェクト指向プ

ログラミング組み込みクラス[データ構造]

組み込みクラス[データ操作]

組み込みクラス[ファイル管理]

GUIアプリケーション開発 Ruby on Rails データベースアプリ

ケーション開発Webアプリケーション開発

プラグイン導入と開発

オープンソースシステムのカスタマイズ

[CE-NWK4]

開発フレームワークとは何か

開発フレームワークの種類と特徴

オープンソースによるWebアプリケーションのフレームワーク

フリーのWebコンテナ/J2EEコンテナの概要

オープンソースの開発ツール

開発フレームワークによる開発プロセスの手順

Ruby on Railsによるアプリケーション開発

Strutsとは MyFace(JSF)の開発モデルとは

データベース接続・アクセスのフレームワーク

DIxAOPコンテナの概要

Springフレームワーク Seasar2 Tapestry Strutsによるアプリ

ケーション開発

開発の流れとツール

ソフトウェア開発環境の概要

Linux開発環境におけるソフトウェアアプリケーション開発の概要

バージョン管理ツールの活用

デバッガによるプログラムデバッグの環境

カーネルデバッガを使用したデバッグ

バグ追跡システムを使用したデバッグ

オープンソース開発ツールの種類と機能

統合開発環境を用いた開発手順

オープンソース統合開発環境の種類と特徴

Linux開発環境におけるソフトウェア開発ワークショップ

Linux開発環境におけるソフトウェア開発支援ツール概要

ソフトウェア開発ツールの評価

Eclipseを用いたソフトウェア開発

Eclipseを用いたソフトウェア開発ワークショップ

統合開発環境によるソフトウェア開発

さまざまな統合開発環境 Eclipseとは何か NetBeans IDEとは

何かWideStudioとは何か

Eclipse入門 -セットアップ

Eclipse入門 -基本操作

NetBeans入門 -セットアップ

NetBeans入門 -基本操作

WideStudio入門- セットアップ

WideStudio入門- 基本操作

EclipseによるJavaプログラミング

EclipseによるWebアプリケーション開発

NetBeansによるWebアプリケーション開発

WideStudioによるアプリケーション開発

セキュリティ機能と暗号化の位置づけ 暗号化の方式・共

通鍵暗号方式暗号化の方式・公開鍵暗号方式

情報システムにおける暗号化適用の方式

電子証明書の仕組み OSSの活用シーン

と暗号化無線LANの暗号化 認証と暗号化 IPsecによる暗号化

通信SSHによるトンネリング

SSLプロトコルの仕組み

VPN通信の構築 PKI(公開鍵暗号化基盤)の仕組み

認証基盤構築実習 暗号化・これからの活用シーンと課題

[CE-NWK5] [CE-NWK5] [CE-NWK5] [CE-NWK5] [CE-NWK5] [CE-NWK5] [CE-NWK5] [CE-NWK6]

ネットワークセキュリティの概要

ウィルスの特性と対策

ネットワーク攻撃方法の簡易的な分類

TCPにおける不正アクセス技術 Webにおける攻撃 IPにおける不正アク

セス技術

TCP/IPネットワークセキュリティの設計方法

アクセス制御の仕組みとファイアウォールの機能

Linuxのネットワークセキュリティ対策

ネットワーク脆弱性調査

セキュアなネットワークの構築

侵入検知システムの仕様と導入

IDSによる侵入検知

ネットワークセキュリティ構築

モバイルコンピューティングとリモートアクセスのセキュリティ

[CE-NWK5, 12] [CE-NWK5, 12] [CE-NWK5] [CE-NWK5] [CE-NWK6]

OSのセキュリティ機能

Linuxサーバのローカルセキュリティ対策

Linuxのネットワークセキュリティ対策

Linuxによるファイアウォール構築

Linuxのサーバセキュリティ設定

安全なリモートアクセス

SSLによるサーバVPNとCA

ドメインネームサービスのセキュリティ対策

電子メールのセキュリティ対策

Webのセキュリティ対策(1)

Webのセキュリティ対策(2)

ファイルサービスのセキュリティ対策

システムログの管理

Linuxによる侵入検知の手法

サーバのセキュリティ監査と設定の自動化

[CE-NWK5] [CE-NWK5, 12] [CE-NWK5]

データベースの基礎理論 RDBMSの基本知識 トランザクションの

基本概念データベースの構成要素 DOAの内容概要 データベース設計

の基本理論 ERモデル 正規化の手順と方法

データベースインデックス

データベースの物理構造

SQLによるデータベースアクセス

SQL実践演習ワークショップ

代表的なオープンソースRDBMS製品

データベース設計構築の実践 データベース構築

データベース運用管理の目的と項目

データベースの運用作業と障害回復

データベース運用設計

データベースセキュリティ

データベースリカバリ設計

データベースの最適化

データベースのトラブル

データベースチューニング データベース構築

データベースインデックスを用いた性能改善

MySQLの導入と運用

データベーストラブルシューティング

データベース運用環境構築 データベース運用 データベースチュー

ニング

組み込みコンピュータシステムとは何か

組み込みコンピュータのアーキテクチャ

組み込みシステムの基本構成

組み込みコンピュータハードウェアの基本

CPUアーキテクチャの基本

組み込みソフトウェアの概要

カーネル処理の概要

リアルタイムシステムの構成と仕組み

組み込みシステムの開発方法

オブジェクト指向分析による組み込みシステムの分析とモデリング

組み込みコンピュータシステムの開発管理

組み込みシステムのアーキテクチャ

組み込みシステムのネットワーク機能

組み込みシステムの設計

これからの組み込みシステムの動向

[CE-NWK8]

組み込み開発の流れと環境

組み込み開発環境の概要

組み込み開発環境を用いた開発手順

プログラムデバッグの環境

デバッガソフトを使用したデバッグ環境

ICEを使用したデバッグ環境

ツールチェーンによるデバッグ

組み込みアプリケーションデバッグの手順

組み込みアプリケーションの事例と開発環境

組み込みクロス開発環境の構築

GNU開発環境の特徴

GNU開発環境における組み込みアプリケーション開発

組み込みLinux開発最新デバッグ環境

組み込み開発環境の評価

組み込み開発環境におけるデバッグのパターン演習

タスクとコンテキスト

非同期と同期の設計仕様

タスクの優先度とその制御仕様

組み込みアプリケーション間の資源配分技術

組み込みアプリケーション間のリソースの共有技術

リソース有効活用のアーキテクチャ

プログラム資源の有効活用技術

入出力待ちリソースの有効利用

入出力資源管理 J2MEの仕様 VMの概要のその活用

高信頼性の実装組み込みアプリケーションの実装事例研究

クリティカルなマイコンアプリケーションを活用した設計ケースワーク

組み込みアプリケーションソフトウェアの実装

[CE-NWK7]

マルチプロセッサシステム

ハードウェアによる最適化

リアルタイムシステムの設計

リアルタイムソフトウェアの条件と最適化

性能最適化の評価項目

ソフトウェアの最適化

MPUの性能最適化設計

システムの性能要件と評価項目

システム性能の評価方法

性能評価手法の分類 拡張性の評価 システム資源のト

レードオフ

基本ソフトウェアと応用ソフトウェアのトレードオフ

組み込みシステム最適化のための方式設計

最適化のための検討項目

[CE-NWK13]

9. ネットワークサーバ管理に関する知識Ⅰ・Ⅱ

10. クラスタシステム構築に関する知識Ⅰ・Ⅱ

並列プログラミング 実践(3)

16. 開発フレームワークに関する知識Ⅰ・Ⅱ

17. 開発ツールに関する知識Ⅰ・Ⅱ

18. 統合開発環境に関する知識Ⅰ・Ⅱ

19. 暗号化に関する知識Ⅰ・Ⅱ

25. 組み込み開発環境に関する知識Ⅰ・Ⅱ

26. 組み込みアプリケーション開発に関する知識Ⅰ・Ⅱ

27. 組み込みシステム最適化に関する知識Ⅰ・Ⅱ

20. ネットワークセキュリティに関する知識Ⅰ・Ⅱ

21. OSセキュリティに関する知識Ⅰ・Ⅱ

22. RDBに関する基礎知識Ⅰ・Ⅱ

23. RDBシステム管理に関する知識Ⅰ・Ⅱ

24. 組み込みシステムに関する知識Ⅰ・Ⅱ

5. Linuxの概念や基本操作に関する知識Ⅰ・Ⅱ

6. Linuxのカーネルに関する知識Ⅰ・Ⅱ

7. Linuxのシステム管理に関する知識Ⅰ・Ⅱ

8. Linuxのシステムプログラミングに関する知識Ⅰ・Ⅱ

1. OSSの概要に関する知識Ⅰ・Ⅱ

2. 法務分野に関する基礎知識Ⅰ・Ⅱ

3. コンピューターシステムやアーキテクチャに関する

知識Ⅰ・Ⅱ

4. 分散アーキテクチャに関する知識Ⅱ

11. ネットワーク・アーキテクチャに関する知識Ⅰ・Ⅱ

12. ネットワーク管理に関する知識Ⅰ・Ⅱ

ネットワーク

13. Javaに関する知識Ⅰ・Ⅱ

14. C、C++に関する知識Ⅰ・Ⅱ

15. Light WeightLanguageに関する知識

Ⅰ・Ⅱ

ファイル操作 ユーザの権限と管理 システム管理

並列プログラミング 実践(1) マルチスレッドプログラミング

基礎

組み込みSW

RDB

セキュリティ

開発体系

プログラミング

システム

Page 21: IT 知識体系の科目別の関係(科目別) · 1 独立行政法人情報処理推進機構 付録2:it知識体系の科目別の関係(科目別) ossモデルカリキュラムの27科目(oss基本知識・応用知識)とit知識体系との関係をit知識体

独立行政法人 情報処理推進機構21

<IT知識体系固有の知識>

科目名

CE-NWK0 歴史と概要 [コア]

CE-NWK1 通信ネットワークのアーキテクチャ[コア]

CE-NWK2 通信ネットワークのプロトコル [コア]

CE-NWK3 LANとWAN [コア]

CE-NWK4 クライアントサーバコンピューティング [コア]

CE-NWK5 データのセキュリティと整合性[コア]

CE-NWK6 ワイヤレスコンピューティングとモバイルコンピューティング [コア]

CE-NWK7 データ通信 [コア]

CE-NWK8 組込み機器向けネットワーク [コア]

・ネットワークを学習する理由

・ネットワーク回線の構成( ポイントツーポイント,マルチポイント)

・ネットワークプロトコル( シンタクス, セマンティクス,タイミング)

・LAN トポロジ(バス,リング, スター)

・ウェブ技術:サーバサイドプログラム, CGI他

・セキュアなネットワークの基礎,暗号化

・ワイヤレス標準の歴史,発展, 互換性の概要

・符号化処理と変調:A/D およびD/A 変換

・車載・航空機向けネットワーク

・ネットワークの領域への貢献や影響が認められる人物

・ネットワーキングとインターネットワーキング用の機器

・プロトコルスイート(TCP/IP)

・LAN 技術(Ethernet, トークンリング,Gigabit Ethernet)

・ウェブサーバの特性: パーミッションの扱い,ファイル管理、他

・暗号化とプライバシー:公開鍵,秘密鍵, 共通鍵

・ワイヤレスコンピューティングとモバイルコンピューティングに特有な問題

・インタフェースとモデム

・情報家電向けネットワーク

・ネットワークのアーキテクチャとプロトコル,ネットワークの種類、他

・ネットワークトポロジ(メッシュ,スター, ツリー, バス, リング)

・階層化プロトコルソフトウェア(スタック)

・エラーの検出と訂正

・ウェブサイト作成およびウェブ管理のサポートツール

・認証プロトコル ・ワイヤレスLAN と衛星を利用したネットワーク

・伝送媒体 ・組込みインターネット

・ネットワークのハードウェアとソフトウェアの構成要素

・接続指向サービスと無接続サービス

・ネットワーク標準と標準化団体

・キャリアセンスマルチプルアクセスネットワーク(CSMA)

・パケットフィルタリング

・モバイルインターネットプロトコル

・多重化

・ネットワーク機器の操作

・大規模ネットワークと広域

・ファイアウォール

・モバイルへの適応

・エラーの検出と訂正

・ネットワークトポロジ(メッシュ,スター, ツリー, バス, リングなど)

・回線交換とパケット交換

・仮想専用網 ・クライアントサーバモデルのモバイル向け拡張

・ネットワークプロトコルの目的

・プロトコル(アドレッシング, 輻輳制御, 仮想回線, サービス品質)

・トランスポート階層のセキュリティ

・モバイルデータアクセス: サーバデータ配信とクライアントキャッシュ管理

・著名なプロトコル

・モバイルおよびワイヤレスコンピューティングをサポートするソフトウェアパッケージ

・ネットワークに関連する補完的教材の研究

・ミドルウェアの役割とサポートツール

・コンピュータ工学におけるネットワークの目的と役割

・性能問題

・新興技術

CE-NWK テレコミュニケーション

科目名

CE-NWK9 通信技術とネットワーク概要 [コア]

CE-NWK10 性能評価 [選択]

CE-NWK11ネットワーク管理 [選択]

CE-NWK12 圧縮と伸張 [選択]

CE-NWK13 クラスタシステム[選択]

CE-NWK14 インターネットアプリケーション[選択]

CE-NWK15 次世代インターネット[選択]

CE-NWK16 放送 [選択]

・光通信とネットワーク

・専用ネットワークと公衆ネットワーク

・ネットワーク管理上の課題の概要

・アナログ表現およびディジタル表現

・クラスタシステム向けネットワークシステム

・遠隔ログイン、ファイル転送、メイルシステム

・高速ネットワーク実装

・ブロードキャストネットワーク

・無線技術とネットワーク

・仮想専用網 ・パスワードおよびアクセス制御機構の使用

・符号化と復号のアルゴリズム

・クラスタシステム向け通信プリミティブ

・Web アプリケーション

・高速ネットワークと輻輳制御

・ブロードキャストルーティング

・ルーティングプロトコル

・サービスパラダイム

・ドメインネームとネームサービス

・可逆的圧縮と不可逆的圧縮

・クラスタシステムと分散OS

・テレフォニーアプリケーション

・高速ルータ ・放送とネットワーク

・インターネットサービスプロバイダ( ISP) にかかわる問題

・データ圧縮:ハフマン符号とジブ・レンペルのアルゴリズム

・並列言語とクラスタシステム

・マルチメディアアプリケーション

・オーバレイネットワーク

・セキュリティとファイアウォール

・オーディオ情報の圧縮と伸張

・Web サービス

・サービス品質の問題: 性能, 障害回復

・画像情報の圧縮と伸張

・ビデオ情報の圧縮と伸張・性能の問題:タイミング, 圧縮係数, リアルタイム使用への適合性

CE-NWK テレコミュニケーション

Page 22: IT 知識体系の科目別の関係(科目別) · 1 独立行政法人情報処理推進機構 付録2:it知識体系の科目別の関係(科目別) ossモデルカリキュラムの27科目(oss基本知識・応用知識)とit知識体系との関係をit知識体

独立行政法人 情報処理推進機構22

(11) IT-PT プラットフォーム技術

<OSSモデルカリキュラム上の関連部分>分野 科目名 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15

オープンソースの理念

オープンソースOSの歴史

代表的なオープンソース

代表的なオープンソース開発言語

代表的なオープンソースアプリケーション

オープンソースの市場動向

オープンソースソフトウェアを用いたシステム事例

オープンソースソフトウェアコミュニティ

オープンソースソフトウェアビジネス

オープンソースの技術情報獲得方法

オープンソースのOSの導入と動作確認

オープンソースのサーバ製品の導入と動作確認

オープンソースのデスクトップ用アプリケーションの導入と動作確認

オープンソースのサーバサイドアプリケーションの導入と動作確認

オープンソースの仮想化ツールの導入と動作確認

[IT-PT1] [IT-PT4]

オープンソース・ライセンスの概要

代表的なオープンソース・ライセンスの解説[GPL類型]

代表的なオープンソース・ライセンスの解説[MPL類型]

代表的なオープンソース・ライセンスの解説[BSD類型]

知的財産の概要(1) 知的財産の概要(2) OSS利用上の知的財産面での考慮点

OSS利用上の知的財産以外での法務面での考慮点

企業/団体等における法的リスク管理

法的リスクに対応したビジネス

OSS開発コミュニティが検討すべき法的リスク低減策

OSSビジネス関連企業が検討すべき法的リスク低減策

OSSの知的財産問題に関する訴訟/トラブル事例

ソフトウェア特許論争

知的財産関連の出願のガイドライン

コンピュータアーキテクチャの基本

コンピュータハードウェアの基本

CPUアーキテクチャの基本

ディスクと周辺機器の基本

インタフェース技術の基本

ソフトウェアアーキテクチャ

OSのアーキテクチャ

ミドルウェアの種類と特徴

コンピュータシステムの構成

システムアーキテクチャの活用事例

Webシステムのアーキテクチャ

OSSを活用した基盤設計ケースワーク

オープンソースシステムアーキテクチャ構築

OSSの動作環境としてのハードウェア

これからのオープンソースアーキテクチャの動向

[IT-PT2] [IT-PT1]

分散アーキテクチャとは 名前管理 複製管理 耐故障性 セキュアチャネル CORBA入門(1) CORBA入門(2) Webサービス入門

(1)Webサービス入門(2) マッシュアップ入門 分散トランザクショ

ンピアツーピアアーキテクチャ モビリティ 一貫性 大規模な分散シス

テムの事例

Linux概要 ファイルシステム ファイルシステム データ保全とバックアップ

データ保全とバックアップ

シェルスクリプトと開発環境

シェルスクリプトと開発環境 ネットワークの基本

Linuxカーネル概論 スケジューリング 割り込みと遅延 システムコール プロセス管理 メモリ管理(1) メモリ管理(2) メモリ管理(3) ファイル管理(1) ファイル管理(2) ファイル管理(3) ネットワーク(1) ネットワーク(2) ネットワーク(3) ネットワーク(4)

[IT-PT1] [IT-PT1] [IT-PT1] [IT-PT1] [IT-PT1]

Linuxシステム管理の作業概要

Linuxシステム管理・サーバ管理

Linuxシステム管理・ファイル/ディスク管理

Linuxシステム管理・ユーザ管理

Linuxシステム管理・バックアップとログ運用管理

Linuxシステム管理・リソース管理

Linuxシステム管理・カーネルの管理

Linuxシステム管理・ネットワーク管理

Linuxシステム管理・ルーティング管理

Linuxシステム管理・DHCPの構築と運用

Linuxシステム管理・FTPの構築と運用

Linuxシステム管理・NFSの構築と運用

Linuxシステム管理・Sambaの構築と運用

Linuxシステム管理・基本運用作業のトラブルシューティング

Linuxシステム管理・ネットワークのトラブルシューティング

ログイン手順とコンパイル手順 shellプログラミング ファイル入出力プロ

グラミング ファイルシステム UNIX環境 ライブラリの利用方法と作成手順 データの管理 ソフトウェアの開発

環境 デバッグ プロセスとスレッド シグナル プロセス間通信とパイプ 端末機器の入出力

セマフォ、共有メモリ、メッセージキュー

ネットワークプログラミング

ネットワークサーバの機能と特徴

サーバシステムの導入

ネームサーバの導入 Webサーバの導入 メールサーバ導入

の内容と作業手順スーパーサーバの導入

プロキシサーバの導入

その他のネットワークサーバ導入の作業内容と手順

ネットワークサーバによるルーティング処理、フィルタリング処理の実装

ネットワークサーバによるインターネット接続

サーバの運用管理業務

ログ管理の内容と手順

Linuxサーバセキュリティ

Linuxのサービスセキュリティ

セキュアOSの機能と実装

クラスタシステム概論、HAクラスタ(1) HAクラスタ(2) HAクラスタ(3) コンピュータシミュ

レーション並列プログラミング概論

並列プログラミング実践(2)

Beowulf PCクラスタの構築 SCoreクラスタ PCクラスタの周辺

技術グリッド・コンピューティング

オープンネットワークの概念と仕組み

通信の形態とプロトコル

インターネット通信の仕組み

LANネットワークの仕組み

無線ネットワークの種類と通信の仕組み

オープンネットワークの通信仕様

IPネットワークの仕組み

ルーティングの仕組み

ルーティングプロトコルの仕様 TCPの仕組み 通信プロトコルの動

作確認TCPアプリケーションの仕組み・Web

TCPアプリケーションの仕組み・FTP

TCPアプリケーションの仕組み・Telnet

新しいネットワークアーキテクチャ

ネットワークシステム運用の概要

ネットワーク管理の個別項目とその内容

ネットワークのキャパシティ管理の個別項目とその内容

ネットワークの性能管理の個別項目とその内容

TCP/IPの管理 ネットワークサーバの運用管理実践

ネットワークハードウェアの運用管理

ネットワーク管理プロトコルの概要

MRTGによるネットワーク管理の実施

ネットワーク運用設計

ネットワーク運用設計

運用管理の実際的手順と体制

WANの運用管理 ネットワーク障害管理

ネットワークトラブルシューティング

[IT-PT4]

Javaの基本 Java言語の基本構造

オブジェクト指向プログラミングのメリット

Javaによるアプリケーション開発手順

Javaによるネットワークプログラミング

Servlet/JSP/JDBCによるWebアプリケーション開発の概要

JDBCによるデータベースアクセス MVCモデル EJBによるアプリ

ケーション開発

JavaによるServer処理実装の特徴と設計方法

JavaによるWebアプリケーションの設計/実装

JavaによるServerSide Java/Webアプリケーション実装

オブジェクト指向システム分析/設計/実装の実践技術

デザインパターンによる開発手順

Javaのパフォーマンスチューニング

Cの基本 Cの基本構造 文字列操作 関数 ポインタ 構造体 コンソール入出力 ファイル管理 データ構造 C++の基本 C++の基本構造 オブジェクト指向プログラミング

STL(StandardTemplate Library)

GUIアプリケーションの開発

開発ライブラリの使用

LightWeightLanguageの基本 Perlの基本構造 PHPの基本構造 Pythonの基本構造 Rubyの基本構造 オブジェクト指向プ

ログラミング組み込みクラス[データ構造]

組み込みクラス[データ操作]

組み込みクラス[ファイル管理]

GUIアプリケーション開発 Ruby on Rails データベースアプリ

ケーション開発Webアプリケーション開発

プラグイン導入と開発

オープンソースシステムのカスタマイズ

開発フレームワークとは何か

開発フレームワークの種類と特徴

オープンソースによるWebアプリケーションのフレームワーク

フリーのWebコンテナ/J2EEコンテナの概要

オープンソースの開発ツール

開発フレームワークによる開発プロセスの手順

Ruby on Railsによるアプリケーション開発

Strutsとは MyFace(JSF)の開発モデルとは

データベース接続・アクセスのフレームワーク

DIxAOPコンテナの概要

Springフレームワーク Seasar2 Tapestry Strutsによるアプリ

ケーション開発

開発の流れとツール

ソフトウェア開発環境の概要

Linux開発環境におけるソフトウェアアプリケーション開発の概要

バージョン管理ツールの活用

デバッガによるプログラムデバッグの環境

カーネルデバッガを使用したデバッグ

バグ追跡システムを使用したデバッグ

オープンソース開発ツールの種類と機能

統合開発環境を用いた開発手順

オープンソース統合開発環境の種類と特徴

Linux開発環境におけるソフトウェア開発ワークショップ

Linux開発環境におけるソフトウェア開発支援ツール概要

ソフトウェア開発ツールの評価

Eclipseを用いたソフトウェア開発

Eclipseを用いたソフトウェア開発ワークショップ

統合開発環境によるソフトウェア開発

さまざまな統合開発環境 Eclipseとは何か NetBeans IDEとは

何かWideStudioとは何か

Eclipse入門 -セットアップ

Eclipse入門 -基本操作

NetBeans入門 -セットアップ

NetBeans入門 -基本操作

WideStudio入門- セットアップ

WideStudio入門- 基本操作

EclipseによるJavaプログラミング

EclipseによるWebアプリケーション開発

NetBeansによるWebアプリケーション開発

WideStudioによるアプリケーション開発

セキュリティ機能と暗号化の位置づけ 暗号化の方式・共

通鍵暗号方式暗号化の方式・公開鍵暗号方式

情報システムにおける暗号化適用の方式

電子証明書の仕組み OSSの活用シーン

と暗号化無線LANの暗号化 認証と暗号化 IPsecによる暗号化

通信SSHによるトンネリング

SSLプロトコルの仕組み

VPN通信の構築 PKI(公開鍵暗号化基盤)の仕組み

認証基盤構築実習 暗号化・これからの活用シーンと課題

ネットワークセキュリティの概要

ウィルスの特性と対策

ネットワーク攻撃方法の簡易的な分類

TCPにおける不正アクセス技術 Webにおける攻撃 IPにおける不正アク

セス技術

TCP/IPネットワークセキュリティの設計方法

アクセス制御の仕組みとファイアウォールの機能

Linuxのネットワークセキュリティ対策

ネットワーク脆弱性調査

セキュアなネットワークの構築

侵入検知システムの仕様と導入

IDSによる侵入検知

ネットワークセキュリティ構築

モバイルコンピューティングとリモートアクセスのセキュリティ

OSのセキュリティ機能

Linuxサーバのローカルセキュリティ対策

Linuxのネットワークセキュリティ対策

Linuxによるファイアウォール構築

Linuxのサーバセキュリティ設定

安全なリモートアクセス

SSLによるサーバVPNとCA

ドメインネームサービスのセキュリティ対策

電子メールのセキュリティ対策

Webのセキュリティ対策(1)

Webのセキュリティ対策(2)

ファイルサービスのセキュリティ対策

システムログの管理

Linuxによる侵入検知の手法

サーバのセキュリティ監査と設定の自動化

データベースの基礎理論 RDBMSの基本知識 トランザクションの

基本概念データベースの構成要素 DOAの内容概要 データベース設計

の基本理論 ERモデル 正規化の手順と方法

データベースインデックス

データベースの物理構造

SQLによるデータベースアクセス

SQL実践演習ワークショップ

代表的なオープンソースRDBMS製品

データベース設計構築の実践 データベース構築

データベース運用管理の目的と項目

データベースの運用作業と障害回復

データベース運用設計

データベースセキュリティ

データベースリカバリ設計

データベースの最適化

データベースのトラブル

データベースチューニング データベース構築

データベースインデックスを用いた性能改善

MySQLの導入と運用

データベーストラブルシューティング

データベース運用環境構築 データベース運用 データベースチュー

ニング

組み込みコンピュータシステムとは何か

組み込みコンピュータのアーキテクチャ

組み込みシステムの基本構成

組み込みコンピュータハードウェアの基本

CPUアーキテクチャの基本

組み込みソフトウェアの概要

カーネル処理の概要

リアルタイムシステムの構成と仕組み

組み込みシステムの開発方法

オブジェクト指向分析による組み込みシステムの分析とモデリング

組み込みコンピュータシステムの開発管理

組み込みシステムのアーキテクチャ

組み込みシステムのネットワーク機能

組み込みシステムの設計

これからの組み込みシステムの動向

[IT-PT1]

組み込み開発の流れと環境

組み込み開発環境の概要

組み込み開発環境を用いた開発手順

プログラムデバッグの環境

デバッガソフトを使用したデバッグ環境

ICEを使用したデバッグ環境

ツールチェーンによるデバッグ

組み込みアプリケーションデバッグの手順

組み込みアプリケーションの事例と開発環境

組み込みクロス開発環境の構築

GNU開発環境の特徴

GNU開発環境における組み込みアプリケーション開発

組み込みLinux開発最新デバッグ環境

組み込み開発環境の評価

組み込み開発環境におけるデバッグのパターン演習

タスクとコンテキスト

非同期と同期の設計仕様

タスクの優先度とその制御仕様

組み込みアプリケーション間の資源配分技術

組み込みアプリケーション間のリソースの共有技術

リソース有効活用のアーキテクチャ

プログラム資源の有効活用技術

入出力待ちリソースの有効利用

入出力資源管理 J2MEの仕様 VMの概要のその活用

高信頼性の実装組み込みアプリケーションの実装事例研究

クリティカルなマイコンアプリケーションを活用した設計ケースワーク

組み込みアプリケーションソフトウェアの実装

[IT-PT1]

マルチプロセッサシステム

ハードウェアによる最適化

リアルタイムシステムの設計

リアルタイムソフトウェアの条件と最適化

性能最適化の評価項目

ソフトウェアの最適化

MPUの性能最適化設計

システムの性能要件と評価項目

システム性能の評価方法

性能評価手法の分類 拡張性の評価 システム資源のト

レードオフ

基本ソフトウェアと応用ソフトウェアのトレードオフ

組み込みシステム最適化のための方式設計

最適化のための検討項目

基礎

組み込みSW

RDB

セキュリティ

開発体系

プログラミング

システム

ファイル操作 ユーザの権限と管理 システム管理

並列プログラミング 実践(1) マルチスレッドプログラミング

並列プログラミング 実践(3)

13. Javaに関する知識Ⅰ・Ⅱ

14. C、C++に関する知識Ⅰ・Ⅱ

15. Light WeightLanguageに関する知識

Ⅰ・Ⅱ

11. ネットワーク・アーキテクチャに関する知識Ⅰ・Ⅱ

12. ネットワーク管理に関する知識Ⅰ・Ⅱ

ネットワーク

1. OSSの概要に関する知識Ⅰ・Ⅱ

2. 法務分野に関する基礎知識Ⅰ・Ⅱ

3. コンピューターシステムやアーキテクチャに関する

知識Ⅰ・Ⅱ

4. 分散アーキテクチャに関する知識Ⅱ

5. Linuxの概念や基本操作に関する知識Ⅰ・Ⅱ

6. Linuxのカーネルに関する知識Ⅰ・Ⅱ

7. Linuxのシステム管理に関する知識Ⅰ・Ⅱ

8. Linuxのシステムプログラミングに関する知識Ⅰ・Ⅱ

25. 組み込み開発環境に関する知識Ⅰ・Ⅱ

26. 組み込みアプリケーション開発に関する知識Ⅰ・Ⅱ

27. 組み込みシステム最適化に関する知識Ⅰ・Ⅱ

20. ネットワークセキュリティに関する知識Ⅰ・Ⅱ

21. OSセキュリティに関する知識Ⅰ・Ⅱ

22. RDBに関する基礎知識Ⅰ・Ⅱ

23. RDBシステム管理に関する知識Ⅰ・Ⅱ

9. ネットワークサーバ管理に関する知識Ⅰ・Ⅱ

10. クラスタシステム構築に関する知識Ⅰ・Ⅱ

24. 組み込みシステムに関する知識Ⅰ・Ⅱ

16. 開発フレームワークに関する知識Ⅰ・Ⅱ

17. 開発ツールに関する知識Ⅰ・Ⅱ

18. 統合開発環境に関する知識Ⅰ・Ⅱ

19. 暗号化に関する知識Ⅰ・Ⅱ

Page 23: IT 知識体系の科目別の関係(科目別) · 1 独立行政法人情報処理推進機構 付録2:it知識体系の科目別の関係(科目別) ossモデルカリキュラムの27科目(oss基本知識・応用知識)とit知識体系との関係をit知識体

独立行政法人 情報処理推進機構23

<IT知識体系固有の知識>

科目名

PT1. オペレーティングシステム

PT2. アーキテクチャと機構

PT3. コンピュータインフラストラクチャ

PT4. デプロイメントソフトウェア

PT5. ファームウェア

PT6. ハードウェア

・概要 ・マシンレベルでのデータ表現

・消費電力と熱収支

・ミドルウェアフレームワーク

・ファームウェアストレージオプ

・デジタル論理とデジタルシステム

・Windows とUnixオペレーティングシステム

・アセンブリレベルでのマシン機構

・サーバ ・企業におけるデプロイメントとマネジメントのソフトウェア

・ファームウェア,ソフトウェア,ハードウェア

・ベンチマーク

・オペレーティングシステムの原則

・メモリシステム機構とアーキテクチャ

・サーバファーム( データセンタ)

・構成, 定義, 管理

・バージョン付与 ・シリアルとパラレル

・並列制御 ・インタフェースと通信

・ハードウェアとソフトウェアの統合

・実装オプション

・スケジューリングとディスパッチ

・機能的構成 ・エレクトロニクスの基本

・メモリ管理 ・マルチプロセッシングと代替アーキテクチャ

・ハードウェア設計言語

・デバイス管理 ・パフォーマンス向上

・バーチャルマシンエミュレーション

・セキュリティと保護・ファイルシステ・リアルタイムと組み込みシステ・フォルトトレランス

・スクリプティング

IT-PT プラットフォーム技術

Page 24: IT 知識体系の科目別の関係(科目別) · 1 独立行政法人情報処理推進機構 付録2:it知識体系の科目別の関係(科目別) ossモデルカリキュラムの27科目(oss基本知識・応用知識)とit知識体系との関係をit知識体

独立行政法人 情報処理推進機構24

(12) CE-OPS オペレーティングシステム

<OSSモデルカリキュラム上の関連部分>分野 科目名 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15

オープンソースの理念

オープンソースOSの歴史

代表的なオープンソース

代表的なオープンソース開発言語

代表的なオープンソースアプリケーション

オープンソースの市場動向

オープンソースソフトウェアを用いたシステム事例

オープンソースソフトウェアコミュニティ

オープンソースソフトウェアビジネス

オープンソースの技術情報獲得方法

オープンソースのOSの導入と動作確認

オープンソースのサーバ製品の導入と動作確認

オープンソースのデスクトップ用アプリケーションの導入と動作確認

オープンソースのサーバサイドアプリケーションの導入と動作確認

オープンソースの仮想化ツールの導入と動作確認

オープンソース・ライセンスの概要

代表的なオープンソース・ライセンスの解説[GPL類型]

代表的なオープンソース・ライセンスの解説[MPL類型]

代表的なオープンソース・ライセンスの解説[BSD類型]

知的財産の概要(1) 知的財産の概要(2) OSS利用上の知的財産面での考慮点

OSS利用上の知的財産以外での法務面での考慮点

企業/団体等における法的リスク管理

法的リスクに対応したビジネス

OSS開発コミュニティが検討すべき法的リスク低減策

OSSビジネス関連企業が検討すべき法的リスク低減策

OSSの知的財産問題に関する訴訟/トラブル事例

ソフトウェア特許論争

知的財産関連の出願のガイドライン

コンピュータアーキテクチャの基本

コンピュータハードウェアの基本

CPUアーキテクチャの基本

ディスクと周辺機器の基本

インタフェース技術の基本

ソフトウェアアーキテクチャ

OSのアーキテクチャ

ミドルウェアの種類と特徴

コンピュータシステムの構成

システムアーキテクチャの活用事例

Webシステムのアーキテクチャ

OSSを活用した基盤設計ケースワーク

オープンソースシステムアーキテクチャ構築

OSSの動作環境としてのハードウェア

これからのオープンソースアーキテクチャの動向

[CE-OPS0,2,3]

分散アーキテクチャとは 名前管理 複製管理 耐故障性 セキュアチャネル CORBA入門(1) CORBA入門(2) Webサービス入門

(1)Webサービス入門(2) マッシュアップ入門 分散トランザクショ

ンピアツーピアアーキテクチャ モビリティ 一貫性 大規模な分散シス

テムの事例

Linux概要 ファイルシステム ファイルシステム データ保全とバックアップ

データ保全とバックアップ

シェルスクリプトと開発環境

シェルスクリプトと開発環境 ネットワークの基本

[CE-OPS0] [CE-OPS6]

Linuxカーネル概論 スケジューリング 割り込みと遅延 システムコール プロセス管理 メモリ管理(1) メモリ管理(2) メモリ管理(3) ファイル管理(1) ファイル管理(2) ファイル管理(3) ネットワーク(1) ネットワーク(2) ネットワーク(3) ネットワーク(4)

[CE-OPS1,8] [CE-OPS0,1,2,6] [CE-OPS2,3,8] [CE-OPS1,2] [CE-OPS2,6] [CE-OPS3] [CE-OPS3] [CE-OPS3] [CE-OPS6]

Linuxシステム管理の作業概要

Linuxシステム管理・サーバ管理

Linuxシステム管理・ファイル/ディスク管理

Linuxシステム管理・ユーザ管理

Linuxシステム管理・バックアップとログ運用管理

Linuxシステム管理・リソース管理

Linuxシステム管理・カーネルの管理

Linuxシステム管理・ネットワーク管理

Linuxシステム管理・ルーティング管理

Linuxシステム管理・DHCPの構築と運用

Linuxシステム管理・FTPの構築と運用

Linuxシステム管理・NFSの構築と運用

Linuxシステム管理・Sambaの構築と運用

Linuxシステム管理・基本運用作業のトラブルシューティング

Linuxシステム管理・ネットワークのトラブルシューティング

ログイン手順とコンパイル手順 shellプログラミング ファイル入出力プロ

グラミング ファイルシステム UNIX環境 ライブラリの利用方法と作成手順 データの管理 ソフトウェアの開発

環境 デバッグ プロセスとスレッド シグナル プロセス間通信とパイプ 端末機器の入出力

セマフォ、共有メモリ、メッセージキュー

ネットワークプログラミング

[CE-OPS0] [CE-OPS3]

ネットワークサーバの機能と特徴

サーバシステムの導入

ネームサーバの導入 Webサーバの導入 メールサーバ導入

の内容と作業手順スーパーサーバの導入

プロキシサーバの導入

その他のネットワークサーバ導入の作業内容と手順

ネットワークサーバによるルーティング処理、フィルタリング処理の実装

ネットワークサーバによるインターネット接続

サーバの運用管理業務

ログ管理の内容と手順

Linuxサーバセキュリティ

Linuxのサービスセキュリティ

セキュアOSの機能と実装

[CE-OPS5]

クラスタシステム概論、HAクラスタ(1) HAクラスタ(2) HAクラスタ(3) コンピュータシミュ

レーション並列プログラミング概論

並列プログラミング実践(2)

Beowulf PCクラスタの構築 SCoreクラスタ PCクラスタの周辺

技術グリッド・コンピューティング

オープンネットワークの概念と仕組み

通信の形態とプロトコル

インターネット通信の仕組み

LANネットワークの仕組み

無線ネットワークの種類と通信の仕組み

オープンネットワークの通信仕様

IPネットワークの仕組み

ルーティングの仕組み

ルーティングプロトコルの仕様 TCPの仕組み 通信プロトコルの動

作確認TCPアプリケーションの仕組み・Web

TCPアプリケーションの仕組み・FTP

TCPアプリケーションの仕組み・Telnet

新しいネットワークアーキテクチャ

ネットワークシステム運用の概要

ネットワーク管理の個別項目とその内容

ネットワークのキャパシティ管理の個別項目とその内容

ネットワークの性能管理の個別項目とその内容

TCP/IPの管理 ネットワークサーバの運用管理実践

ネットワークハードウェアの運用管理

ネットワーク管理プロトコルの概要

MRTGによるネットワーク管理の実施

ネットワーク運用設計

ネットワーク運用設計

運用管理の実際的手順と体制

WANの運用管理 ネットワーク障害管理

ネットワークトラブルシューティング

[CE-OPS8] [CE-OPS8]

Javaの基本 Java言語の基本構造

オブジェクト指向プログラミングのメリット

Javaによるアプリケーション開発手順

Javaによるネットワークプログラミング

Servlet/JSP/JDBCによるWebアプリケーション開発の概要

JDBCによるデータベースアクセス MVCモデル EJBによるアプリ

ケーション開発

JavaによるServer処理実装の特徴と設計方法

JavaによるWebアプリケーションの設計/実装

JavaによるServerSide Java/Webアプリケーション実装

オブジェクト指向システム分析/設計/実装の実践技術

デザインパターンによる開発手順

Javaのパフォーマンスチューニング

Cの基本 Cの基本構造 文字列操作 関数 ポインタ 構造体 コンソール入出力 ファイル管理 データ構造 C++の基本 C++の基本構造 オブジェクト指向プログラミング

STL(StandardTemplate Library)

GUIアプリケーションの開発

開発ライブラリの使用

LightWeightLanguageの基本 Perlの基本構造 PHPの基本構造 Pythonの基本構造 Rubyの基本構造 オブジェクト指向プ

ログラミング組み込みクラス[データ構造]

組み込みクラス[データ操作]

組み込みクラス[ファイル管理]

GUIアプリケーション開発 Ruby on Rails データベースアプリ

ケーション開発Webアプリケーション開発

プラグイン導入と開発

オープンソースシステムのカスタマイズ

開発フレームワークとは何か

開発フレームワークの種類と特徴

オープンソースによるWebアプリケーションのフレームワーク

フリーのWebコンテナ/J2EEコンテナの概要

オープンソースの開発ツール

開発フレームワークによる開発プロセスの手順

Ruby on Railsによるアプリケーション開発

Strutsとは MyFace(JSF)の開発モデルとは

データベース接続・アクセスのフレームワーク

DIxAOPコンテナの概要

Springフレームワーク Seasar2 Tapestry Strutsによるアプリ

ケーション開発

開発の流れとツール

ソフトウェア開発環境の概要

Linux開発環境におけるソフトウェアアプリケーション開発の概要

バージョン管理ツールの活用

デバッガによるプログラムデバッグの環境

カーネルデバッガを使用したデバッグ

バグ追跡システムを使用したデバッグ

オープンソース開発ツールの種類と機能

統合開発環境を用いた開発手順

オープンソース統合開発環境の種類と特徴

Linux開発環境におけるソフトウェア開発ワークショップ

Linux開発環境におけるソフトウェア開発支援ツール概要

ソフトウェア開発ツールの評価

Eclipseを用いたソフトウェア開発

Eclipseを用いたソフトウェア開発ワークショップ

統合開発環境によるソフトウェア開発

さまざまな統合開発環境 Eclipseとは何か NetBeans IDEとは

何かWideStudioとは何か

Eclipse入門 -セットアップ

Eclipse入門 -基本操作

NetBeans入門 -セットアップ

NetBeans入門 -基本操作

WideStudio入門- セットアップ

WideStudio入門- 基本操作

EclipseによるJavaプログラミング

EclipseによるWebアプリケーション開発

NetBeansによるWebアプリケーション開発

WideStudioによるアプリケーション開発

セキュリティ機能と暗号化の位置づけ 暗号化の方式・共

通鍵暗号方式暗号化の方式・公開鍵暗号方式

情報システムにおける暗号化適用の方式

電子証明書の仕組み OSSの活用シーン

と暗号化無線LANの暗号化 認証と暗号化 IPsecによる暗号化

通信SSHによるトンネリング

SSLプロトコルの仕組み

VPN通信の構築 PKI(公開鍵暗号化基盤)の仕組み

認証基盤構築実習 暗号化・これからの活用シーンと課題

[CE-OPS4] [CE-OPS4]

ネットワークセキュリティの概要

ウィルスの特性と対策

ネットワーク攻撃方法の簡易的な分類

TCPにおける不正アクセス技術 Webにおける攻撃 IPにおける不正アク

セス技術

TCP/IPネットワークセキュリティの設計方法

アクセス制御の仕組みとファイアウォールの機能

Linuxのネットワークセキュリティ対策

ネットワーク脆弱性調査

セキュアなネットワークの構築

侵入検知システムの仕様と導入

IDSによる侵入検知

ネットワークセキュリティ構築

モバイルコンピューティングとリモートアクセスのセキュリティ

OSのセキュリティ機能

Linuxサーバのローカルセキュリティ対策

Linuxのネットワークセキュリティ対策

Linuxによるファイアウォール構築

Linuxのサーバセキュリティ設定

安全なリモートアクセス

SSLによるサーバVPNとCA

ドメインネームサービスのセキュリティ対策

電子メールのセキュリティ対策

Webのセキュリティ対策(1)

Webのセキュリティ対策(2)

ファイルサービスのセキュリティ対策

システムログの管理

Linuxによる侵入検知の手法

サーバのセキュリティ監査と設定の自動化

[CE-OPS4,10]

データベースの基礎理論 RDBMSの基本知識 トランザクションの

基本概念データベースの構成要素 DOAの内容概要 データベース設計

の基本理論 ERモデル 正規化の手順と方法

データベースインデックス

データベースの物理構造

SQLによるデータベースアクセス

SQL実践演習ワークショップ

代表的なオープンソースRDBMS製品

データベース設計構築の実践 データベース構築

データベース運用管理の目的と項目

データベースの運用作業と障害回復

データベース運用設計

データベースセキュリティ

データベースリカバリ設計

データベースの最適化

データベースのトラブル

データベースチューニング データベース構築

データベースインデックスを用いた性能改善

MySQLの導入と運用

データベーストラブルシューティング

データベース運用環境構築 データベース運用 データベースチュー

ニング

組み込みコンピュータシステムとは何か

組み込みコンピュータのアーキテクチャ

組み込みシステムの基本構成

組み込みコンピュータハードウェアの基本

CPUアーキテクチャの基本

組み込みソフトウェアの概要

カーネル処理の概要

リアルタイムシステムの構成と仕組み

組み込みシステムの開発方法

オブジェクト指向分析による組み込みシステムの分析とモデリング

組み込みコンピュータシステムの開発管理

組み込みシステムのアーキテクチャ

組み込みシステムのネットワーク機能

組み込みシステムの設計

これからの組み込みシステムの動向

[CE-OPS6] [CE-OPS6] [CE-OPS6]

組み込み開発の流れと環境

組み込み開発環境の概要

組み込み開発環境を用いた開発手順

プログラムデバッグの環境

デバッガソフトを使用したデバッグ環境

ICEを使用したデバッグ環境

ツールチェーンによるデバッグ

組み込みアプリケーションデバッグの手順

組み込みアプリケーションの事例と開発環境

組み込みクロス開発環境の構築

GNU開発環境の特徴

GNU開発環境における組み込みアプリケーション開発

組み込みLinux開発最新デバッグ環境

組み込み開発環境の評価

組み込み開発環境におけるデバッグのパターン演習

タスクとコンテキスト

非同期と同期の設計仕様

タスクの優先度とその制御仕様

組み込みアプリケーション間の資源配分技術

組み込みアプリケーション間のリソースの共有技術

リソース有効活用のアーキテクチャ

プログラム資源の有効活用技術

入出力待ちリソースの有効利用

入出力資源管理 J2MEの仕様 VMの概要のその活用

高信頼性の実装組み込みアプリケーションの実装事例研究

クリティカルなマイコンアプリケーションを活用した設計ケースワーク

組み込みアプリケーションソフトウェアの実装

[CE-OPS1] [CE-OPS1] [CE-OPS6] [CE-OPS1, 6] [CE-OPS1, 6] [CE-OPS6,9]

マルチプロセッサシステム

ハードウェアによる最適化

リアルタイムシステムの設計

リアルタイムソフトウェアの条件と最適化

性能最適化の評価項目

ソフトウェアの最適化

MPUの性能最適化設計

システムの性能要件と評価項目

システム性能の評価方法

性能評価手法の分類 拡張性の評価 システム資源のト

レードオフ

基本ソフトウェアと応用ソフトウェアのトレードオフ

組み込みシステム最適化のための方式設計

最適化のための検討項目

9. ネットワークサーバ管理に関する知識Ⅰ・Ⅱ

10. クラスタシステム構築に関する知識Ⅰ・Ⅱ

24. 組み込みシステムに関する知識Ⅰ・Ⅱ

16. 開発フレームワークに関する知識Ⅰ・Ⅱ

17. 開発ツールに関する知識Ⅰ・Ⅱ

18. 統合開発環境に関する知識Ⅰ・Ⅱ

19. 暗号化に関する知識Ⅰ・Ⅱ

25. 組み込み開発環境に関する知識Ⅰ・Ⅱ

26. 組み込みアプリケーション開発に関する知識Ⅰ・Ⅱ

27. 組み込みシステム最適化に関する知識Ⅰ・Ⅱ

20. ネットワークセキュリティに関する知識Ⅰ・Ⅱ

21. OSセキュリティに関する知識Ⅰ・Ⅱ

22. RDBに関する基礎知識Ⅰ・Ⅱ

23. RDBシステム管理に関する知識Ⅰ・Ⅱ

5. Linuxの概念や基本操作に関する知識Ⅰ・Ⅱ

6. Linuxのカーネルに関する知識Ⅰ・Ⅱ

7. Linuxのシステム管理に関する知識Ⅰ・Ⅱ

8. Linuxのシステムプログラミングに関する知識Ⅰ・Ⅱ

1. OSSの概要に関する知識Ⅰ・Ⅱ

2. 法務分野に関する基礎知識Ⅰ・Ⅱ

3. コンピューターシステムやアーキテクチャに関する

知識Ⅰ・Ⅱ

4. 分散アーキテクチャに関する知識Ⅱ

並列プログラミング 実践(3)

13. Javaに関する知識Ⅰ・Ⅱ

14. C、C++に関する知識Ⅰ・Ⅱ

15. Light WeightLanguageに関する知識

Ⅰ・Ⅱ

11. ネットワーク・アーキテクチャに関する知識Ⅰ・Ⅱ

12. ネットワーク管理に関する知識Ⅰ・Ⅱ

ネットワーク

ファイル操作 ユーザの権限と管理 システム管理

並列プログラミング 実践(1) マルチスレッドプログラミング

基礎

組み込みSW

RDB

セキュリティ

開発体系

プログラミング

システム

Page 25: IT 知識体系の科目別の関係(科目別) · 1 独立行政法人情報処理推進機構 付録2:it知識体系の科目別の関係(科目別) ossモデルカリキュラムの27科目(oss基本知識・応用知識)とit知識体系との関係をit知識体

独立行政法人 情報処理推進機構25

<IT知識体系固有の知識>

科目名

CE-OPS0 歴史と概要 [コア]

CE-OPS1 並行性 [コア]

CE-OPS2 スケジューリングとディスパッチ [コア]

CE-OPS3 メモリ管理 [コア]

CE-OPS4 セキュリティと保護 [コア]

CE-OPS5 ファイルシステム[コア]

CE-OPS6 リアルタイムOS [コア]

CE-OPS7 OSの概要[コア]

CE-OPS8 設計の原則 [選択]

CE-OPS9 デバイス管理 [選択]

CE-OPS10 システム性能評価 [選択]

・オペレーティングシステムを学習する理由

・状態と状態図 ・プリエンプティブおよびノンプリエンプティブスケジューリング

・物理メモリとメモリ管理ハードウェアの復習

・システムセキュリティの概要

・ファイル: データ, メタデータ,操作, 編成,他

・コンテクスト切り替え機構

・オペレーティングシステムの役割tの目的

・典型的なオペレーティングシステムの機能

・シリアルデバイスとパラレルデバイスの特性

・システム性能評価が必要な理由と評価対象

・オペレーティングシステムの領域への貢献や影響が認められる人物

・データ構造(実行可能リスト, プロセス制御ブロックなど)

・スケジューラとスケジューリングポリシー

・オーバレイ,スワッピング, パーティション

・ポリシーと機構の分離

・ディレクトリ: 内容と構造

・スケジューリングポリシー

・オペレーティングシステム開発の歴史

・クライアントサーバモデルやハンドヘルドデバイスを支援する機構

・デバイス差異の抽象化

・キャッシング,ページング, スケジューリング, メモリ管理, セキュリティなどのポリシー

・機能および設計, 並行性, スケジューリング,ディスパッチ, 他

・ディスパッチングとコンテキストスイッチング

・プロセスとスレッド

・ページングとセグメンテーション

・セキュリティの方式と装置

・ファイルシステム: パーティショニング, マウント,他

・レート単調スケジューリング: 理論と実践

・典型的なオペレーティングシステムの機能

・設計上の問題(効率性,頑強性,柔軟性, 可搬性,セキュリティ, 互換

・バッファリング方式

・評価モデル:決定的, 解析的,シミュレーション,実装特化

・オペレーティングシステムの目的

・割込みの役割 ・デッドラインとリアルタイム問題

・配置と置換えのポリシー

・保護, アクセス, 認証

・標準的な実現技術

・優先順位反転 ・クライアントサーバモデルやハンドヘルドデバイスを支援する機能

・セキュリティ, ネットワーキング,マルチメディア, ウィンドウの影響

・ダイレクトメモリアクセス

・評価データの収集方法(プロファイルおよびトレース機構)

・割込みの意味 ・並行実行: 利点と欠点

・ワーキングセットとスラッシング

・保護のモデル ・メモリマップトファイル

・その他のスケジューリングポリシー(EDF など)

・設計上の問題 ・構成法( モノリシック,階層型, モジュール化, マイクロカーネルモデル)

・障害回復

・並行性の意味と重要性

・「相互排除」問題とその解

・キャッシング ・メモリ保護 ・専用ファイルシステム

・メッセージ通過と共有メモリ通信

・セキュリティ、ネットワーキング、マルチメディア、ウィンドウの

・抽象, プロセス,資源

・コンピュータ内でオペレーティングシステムを通じてスケジューリングとディスパッチが実行される仕組みの例示

・デッドロック: 要因, 条件, 回避

・暗号化 ・ネーミング,探索, アクセス,バックアップ

・プロセス間通信スタイル( メールボックス,RPC など)

・オペレーティングシステムに固有なアプリケーションプログラムインタフェース(API) の概念

・メモリ管理の方法と重要性の説明

・モデルと機構(セマフォ, モニタ,条件変数,ランデブー)

・回復管理 ・アプリケーションからの要求, ハードウェアおよびソフトウェア技術の発

・デバイス管理の方法と重要性の説明。

・生産者消費者問題と同期

・デバイスの構成

・オペレーティングシステムに関連する補完的な教材の研究

・マルチプロセッシングの問題( スピンロック,再入可能性)

・割込み: 方式と実現

・コンピュータ工学におけるオペレーティングシステムの目的と役割

・ユーザ状態およびシステム状態と保護の概念,カーネルモードへの移行

CE-OPS オペレーティングシステム

Page 26: IT 知識体系の科目別の関係(科目別) · 1 独立行政法人情報処理推進機構 付録2:it知識体系の科目別の関係(科目別) ossモデルカリキュラムの27科目(oss基本知識・応用知識)とit知識体系との関係をit知識体

独立行政法人 情報処理推進機構26

(13) CE-CAO コンピュータのアーキテクチャと構成

<OSSモデルカリキュラム上の関連部分>分野 科目名 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15

オープンソースの理念

オープンソースOSの歴史

代表的なオープンソース

代表的なオープンソース開発言語

代表的なオープンソースアプリケーション

オープンソースの市場動向

オープンソースソフトウェアを用いたシステム事例

オープンソースソフトウェアコミュニティ

オープンソースソフトウェアビジネス

オープンソースの技術情報獲得方法

オープンソースのOSの導入と動作確認

オープンソースのサーバ製品の導入と動作確認

オープンソースのデスクトップ用アプリケーションの導入と動作確認

オープンソースのサーバサイドアプリケーションの導入と動作確認

オープンソースの仮想化ツールの導入と動作確認

オープンソース・ライセンスの概要

代表的なオープンソース・ライセンスの解説[GPL類型]

代表的なオープンソース・ライセンスの解説[MPL類型]

代表的なオープンソース・ライセンスの解説[BSD類型]

知的財産の概要(1) 知的財産の概要(2) OSS利用上の知的財産面での考慮点

OSS利用上の知的財産以外での法務面での考慮点

企業/団体等における法的リスク管理

法的リスクに対応したビジネス

OSS開発コミュニティが検討すべき法的リスク低減策

OSSビジネス関連企業が検討すべき法的リスク低減策

OSSの知的財産問題に関する訴訟/トラブル事例

ソフトウェア特許論争

知的財産関連の出願のガイドライン

コンピュータアーキテクチャの基本

コンピュータハードウェアの基本

CPUアーキテクチャの基本

ディスクと周辺機器の基本

インタフェース技術の基本

ソフトウェアアーキテクチャ

OSのアーキテクチャ

ミドルウェアの種類と特徴

コンピュータシステムの構成

システムアーキテクチャの活用事例

Webシステムのアーキテクチャ

OSSを活用した基盤設計ケースワーク

オープンソースシステムアーキテクチャ構築

OSSの動作環境としてのハードウェア

これからのオープンソースアーキテクチャの動向

[CE-CAO0,1] [CE-CAO0,1] [CE-CAO5] [CE-CAO1] [CE-CAO3] [CE-CAO7]

分散アーキテクチャとは 名前管理 複製管理 耐故障性 セキュアチャネル CORBA入門(1) CORBA入門(2) Webサービス入門

(1)Webサービス入門(2) マッシュアップ入門 分散トランザクショ

ンピアツーピアアーキテクチャ モビリティ 一貫性 大規模な分散シス

テムの事例

[CE-CAO-7] [CE-CAO-4] [CE-CAO7] [CE-CAO7] [CE-CAO7]

Linux概要 ファイルシステム ファイルシステム データ保全とバックアップ

データ保全とバックアップ

シェルスクリプトと開発環境

シェルスクリプトと開発環境 ネットワークの基本

Linuxカーネル概論 スケジューリング 割り込みと遅延 システムコール プロセス管理 メモリ管理(1) メモリ管理(2) メモリ管理(3) ファイル管理(1) ファイル管理(2) ファイル管理(3) ネットワーク(1) ネットワーク(2) ネットワーク(3) ネットワーク(4)

[CE-CAO2] [CE-CAO2] [CE-CAO2]

Linuxシステム管理の作業概要

Linuxシステム管理・サーバ管理

Linuxシステム管理・ファイル/ディスク管理

Linuxシステム管理・ユーザ管理

Linuxシステム管理・バックアップとログ運用管理

Linuxシステム管理・リソース管理

Linuxシステム管理・カーネルの管理

Linuxシステム管理・ネットワーク管理

Linuxシステム管理・ルーティング管理

Linuxシステム管理・DHCPの構築と運用

Linuxシステム管理・FTPの構築と運用

Linuxシステム管理・NFSの構築と運用

Linuxシステム管理・Sambaの構築と運用

Linuxシステム管理・基本運用作業のトラブルシューティング

Linuxシステム管理・ネットワークのトラブルシューティング

ログイン手順とコンパイル手順 shellプログラミング ファイル入出力プロ

グラミング ファイルシステム UNIX環境 ライブラリの利用方法と作成手順 データの管理 ソフトウェアの開発

環境 デバッグ プロセスとスレッド シグナル プロセス間通信とパイプ 端末機器の入出力

セマフォ、共有メモリ、メッセージキュー

ネットワークプログラミング

ネットワークサーバの機能と特徴

サーバシステムの導入

ネームサーバの導入 Webサーバの導入 メールサーバ導入

の内容と作業手順スーパーサーバの導入

プロキシサーバの導入

その他のネットワークサーバ導入の作業内容と手順

ネットワークサーバによるルーティング処理、フィルタリング処理の実装

ネットワークサーバによるインターネット接続

サーバの運用管理業務

ログ管理の内容と手順

Linuxサーバセキュリティ

Linuxのサービスセキュリティ

セキュアOSの機能と実装

クラスタシステム概論、HAクラスタ(1) HAクラスタ(2) HAクラスタ(3) コンピュータシミュ

レーション並列プログラミング概論

並列プログラミング実践(2)

Beowulf PCクラスタの構築 SCoreクラスタ PCクラスタの周辺

技術グリッド・コンピューティング

[CE-CAO7]

オープンネットワークの概念と仕組み

通信の形態とプロトコル

インターネット通信の仕組み

LANネットワークの仕組み

無線ネットワークの種類と通信の仕組み

オープンネットワークの通信仕様

IPネットワークの仕組み

ルーティングの仕組み

ルーティングプロトコルの仕様 TCPの仕組み 通信プロトコルの動

作確認TCPアプリケーションの仕組み・Web

TCPアプリケーションの仕組み・FTP

TCPアプリケーションの仕組み・Telnet

新しいネットワークアーキテクチャ

ネットワークシステム運用の概要

ネットワーク管理の個別項目とその内容

ネットワークのキャパシティ管理の個別項目とその内容

ネットワークの性能管理の個別項目とその内容

TCP/IPの管理 ネットワークサーバの運用管理実践

ネットワークハードウェアの運用管理

ネットワーク管理プロトコルの概要

MRTGによるネットワーク管理の実施

ネットワーク運用設計

ネットワーク運用設計

運用管理の実際的手順と体制

WANの運用管理 ネットワーク障害管理

ネットワークトラブルシューティング

Javaの基本 Java言語の基本構造

オブジェクト指向プログラミングのメリット

Javaによるアプリケーション開発手順

Javaによるネットワークプログラミング

Servlet/JSP/JDBCによるWebアプリケーション開発の概要

JDBCによるデータベースアクセス MVCモデル EJBによるアプリ

ケーション開発

JavaによるServer処理実装の特徴と設計方法

JavaによるWebアプリケーションの設計/実装

JavaによるServerSide Java/Webアプリケーション実装

オブジェクト指向システム分析/設計/実装の実践技術

デザインパターンによる開発手順

Javaのパフォーマンスチューニング

Cの基本 Cの基本構造 文字列操作 関数 ポインタ 構造体 コンソール入出力 ファイル管理 データ構造 C++の基本 C++の基本構造 オブジェクト指向プログラミング

STL(StandardTemplate Library)

GUIアプリケーションの開発

開発ライブラリの使用

LightWeightLanguageの基本 Perlの基本構造 PHPの基本構造 Pythonの基本構造 Rubyの基本構造 オブジェクト指向プ

ログラミング組み込みクラス[データ構造]

組み込みクラス[データ操作]

組み込みクラス[ファイル管理]

GUIアプリケーション開発 Ruby on Rails データベースアプリ

ケーション開発Webアプリケーション開発

プラグイン導入と開発

オープンソースシステムのカスタマイズ

開発フレームワークとは何か

開発フレームワークの種類と特徴

オープンソースによるWebアプリケーションのフレームワーク

フリーのWebコンテナ/J2EEコンテナの概要

オープンソースの開発ツール

開発フレームワークによる開発プロセスの手順

Ruby on Railsによるアプリケーション開発

Strutsとは MyFace(JSF)の開発モデルとは

データベース接続・アクセスのフレームワーク

DIxAOPコンテナの概要

Springフレームワーク Seasar2 Tapestry Strutsによるアプリ

ケーション開発

開発の流れとツール

ソフトウェア開発環境の概要

Linux開発環境におけるソフトウェアアプリケーション開発の概要

バージョン管理ツールの活用

デバッガによるプログラムデバッグの環境

カーネルデバッガを使用したデバッグ

バグ追跡システムを使用したデバッグ

オープンソース開発ツールの種類と機能

統合開発環境を用いた開発手順

オープンソース統合開発環境の種類と特徴

Linux開発環境におけるソフトウェア開発ワークショップ

Linux開発環境におけるソフトウェア開発支援ツール概要

ソフトウェア開発ツールの評価

Eclipseを用いたソフトウェア開発

Eclipseを用いたソフトウェア開発ワークショップ

統合開発環境によるソフトウェア開発

さまざまな統合開発環境 Eclipseとは何か NetBeans IDEとは

何かWideStudioとは何か

Eclipse入門 -セットアップ

Eclipse入門 -基本操作

NetBeans入門 -セットアップ

NetBeans入門 -基本操作

WideStudio入門- セットアップ

WideStudio入門- 基本操作

EclipseによるJavaプログラミング

EclipseによるWebアプリケーション開発

NetBeansによるWebアプリケーション開発

WideStudioによるアプリケーション開発

セキュリティ機能と暗号化の位置づけ 暗号化の方式・共

通鍵暗号方式暗号化の方式・公開鍵暗号方式

情報システムにおける暗号化適用の方式

電子証明書の仕組み OSSの活用シーン

と暗号化無線LANの暗号化 認証と暗号化 IPsecによる暗号化

通信SSHによるトンネリング

SSLプロトコルの仕組み

VPN通信の構築 PKI(公開鍵暗号化基盤)の仕組み

認証基盤構築実習 暗号化・これからの活用シーンと課題

ネットワークセキュリティの概要

ウィルスの特性と対策

ネットワーク攻撃方法の簡易的な分類

TCPにおける不正アクセス技術 Webにおける攻撃 IPにおける不正アク

セス技術

TCP/IPネットワークセキュリティの設計方法

アクセス制御の仕組みとファイアウォールの機能

Linuxのネットワークセキュリティ対策

ネットワーク脆弱性調査

セキュアなネットワークの構築

侵入検知システムの仕様と導入

IDSによる侵入検知

ネットワークセキュリティ構築

モバイルコンピューティングとリモートアクセスのセキュリティ

OSのセキュリティ機能

Linuxサーバのローカルセキュリティ対策

Linuxのネットワークセキュリティ対策

Linuxによるファイアウォール構築

Linuxのサーバセキュリティ設定

安全なリモートアクセス

SSLによるサーバVPNとCA

ドメインネームサービスのセキュリティ対策

電子メールのセキュリティ対策

Webのセキュリティ対策(1)

Webのセキュリティ対策(2)

ファイルサービスのセキュリティ対策

システムログの管理

Linuxによる侵入検知の手法

サーバのセキュリティ監査と設定の自動化

データベースの基礎理論 RDBMSの基本知識 トランザクションの

基本概念データベースの構成要素 DOAの内容概要 データベース設計

の基本理論 ERモデル 正規化の手順と方法

データベースインデックス

データベースの物理構造

SQLによるデータベースアクセス

SQL実践演習ワークショップ

代表的なオープンソースRDBMS製品

データベース設計構築の実践 データベース構築

データベース運用管理の目的と項目

データベースの運用作業と障害回復

データベース運用設計

データベースセキュリティ

データベースリカバリ設計

データベースの最適化

データベースのトラブル

データベースチューニング データベース構築

データベースインデックスを用いた性能改善

MySQLの導入と運用

データベーストラブルシューティング

データベース運用環境構築 データベース運用 データベースチュー

ニング

組み込みコンピュータシステムとは何か

組み込みコンピュータのアーキテクチャ

組み込みシステムの基本構成

組み込みコンピュータハードウェアの基本

CPUアーキテクチャの基本

組み込みソフトウェアの概要

カーネル処理の概要

リアルタイムシステムの構成と仕組み

組み込みシステムの開発方法

オブジェクト指向分析による組み込みシステムの分析とモデリング

組み込みコンピュータシステムの開発管理

組み込みシステムのアーキテクチャ

組み込みシステムのネットワーク機能

組み込みシステムの設計

これからの組み込みシステムの動向

[CE-CAO1]

組み込み開発の流れと環境

組み込み開発環境の概要

組み込み開発環境を用いた開発手順

プログラムデバッグの環境

デバッガソフトを使用したデバッグ環境

ICEを使用したデバッグ環境

ツールチェーンによるデバッグ

組み込みアプリケーションデバッグの手順

組み込みアプリケーションの事例と開発環境

組み込みクロス開発環境の構築

GNU開発環境の特徴

GNU開発環境における組み込みアプリケーション開発

組み込みLinux開発最新デバッグ環境

組み込み開発環境の評価

組み込み開発環境におけるデバッグのパターン演習

タスクとコンテキスト

非同期と同期の設計仕様

タスクの優先度とその制御仕様

組み込みアプリケーション間の資源配分技術

組み込みアプリケーション間のリソースの共有技術

リソース有効活用のアーキテクチャ

プログラム資源の有効活用技術

入出力待ちリソースの有効利用

入出力資源管理 J2MEの仕様 VMの概要のその活用

高信頼性の実装組み込みアプリケーションの実装事例研究

クリティカルなマイコンアプリケーションを活用した設計ケースワーク

組み込みアプリケーションソフトウェアの実装

[CE-CAO3] [CE-CAO7] [CE-CAO3] [CE-CAO3]

マルチプロセッサシステム

ハードウェアによる最適化

リアルタイムシステムの設計

リアルタイムソフトウェアの条件と最適化

性能最適化の評価項目

ソフトウェアの最適化

MPUの性能最適化設計

システムの性能要件と評価項目

システム性能の評価方法

性能評価手法の分類 拡張性の評価 システム資源のト

レードオフ

基本ソフトウェアと応用ソフトウェアのトレードオフ

組み込みシステム最適化のための方式設計

最適化のための検討項目

[CE-CAO7] [CE-CAO3,7] [CE-CAO1,2,6] [CE-CAO2,6] [CE-CAO5,6] [CE-CAO6]

基礎

組み込みSW

RDB

セキュリティ

開発体系

プログラミング

システム

ファイル操作 ユーザの権限と管理 システム管理

並列プログラミング 実践(1) マルチスレッドプログラミング

並列プログラミング 実践(3)

13. Javaに関する知識Ⅰ・Ⅱ

14. C、C++に関する知識Ⅰ・Ⅱ

15. Light WeightLanguageに関する知識

Ⅰ・Ⅱ

11. ネットワーク・アーキテクチャに関する知識Ⅰ・Ⅱ

12. ネットワーク管理に関する知識Ⅰ・Ⅱ

ネットワーク

1. OSSの概要に関する知識Ⅰ・Ⅱ

2. 法務分野に関する基礎知識Ⅰ・Ⅱ

3. コンピューターシステムやアーキテクチャに関する

知識Ⅰ・Ⅱ

4. 分散アーキテクチャに関する知識Ⅱ

5. Linuxの概念や基本操作に関する知識Ⅰ・Ⅱ

6. Linuxのカーネルに関する知識Ⅰ・Ⅱ

7. Linuxのシステム管理に関する知識Ⅰ・Ⅱ

8. Linuxのシステムプログラミングに関する知識Ⅰ・Ⅱ

25. 組み込み開発環境に関する知識Ⅰ・Ⅱ

26. 組み込みアプリケーション開発に関する知識Ⅰ・Ⅱ

27. 組み込みシステム最適化に関する知識Ⅰ・Ⅱ

20. ネットワークセキュリティに関する知識Ⅰ・Ⅱ

21. OSセキュリティに関する知識Ⅰ・Ⅱ

22. RDBに関する基礎知識Ⅰ・Ⅱ

23. RDBシステム管理に関する知識Ⅰ・Ⅱ

9. ネットワークサーバ管理に関する知識Ⅰ・Ⅱ

10. クラスタシステム構築に関する知識Ⅰ・Ⅱ

24. 組み込みシステムに関する知識Ⅰ・Ⅱ

16. 開発フレームワークに関する知識Ⅰ・Ⅱ

17. 開発ツールに関する知識Ⅰ・Ⅱ

18. 統合開発環境に関する知識Ⅰ・Ⅱ

19. 暗号化に関する知識Ⅰ・Ⅱ

Page 27: IT 知識体系の科目別の関係(科目別) · 1 独立行政法人情報処理推進機構 付録2:it知識体系の科目別の関係(科目別) ossモデルカリキュラムの27科目(oss基本知識・応用知識)とit知識体系との関係をit知識体

独立行政法人 情報処理推進機構27

<IT知識体系固有の知識>

科目名

CE-CAO0 歴史と概要 [コア]

CE-CAO0 歴史と概要 [コア]

CE-CAO1 コンピュータアーキテクチャの基礎[コア]

CE-CAO2 メモリシステムの構成とアーキテクチャ [コア]

CE-CAO3 インタフェースと通信 [コア]

CE-CAO4 デバイスサブシステム [コア]

CE-CAO5 CPUアーキテクチャ[コア]

CE-CAO6 性能・コスト評価[コア]

CE-CAO7 分散・並列処理 [コア]

CE-CAO8 コンピュータによる計算 [コア]

CE-CAO9 性能向上 [選択]

・コンピュータのアーキテクチャと構成を学習する理由を示す。

・コンピュータのアーキテクチャと構成に関連する補完的な教材を研究する。

・プログラム格納型計算機の構成

・メモリシステムの階層

・入出力の基礎:ハンドシェイク、バッファリング

・外部記憶システム、ディスクドライブと光学メモリの構成と構造

・プログラム格納型計算機の基本構成

・コンピュータ性能の分析

・モデルの分類:並列マシンモデル(SIMD、MIMD、SISD、MISD)・フリンのタキソノミー、ハンドラの分類、メッセージ通過

・整数の表現(正負)

・パイプラインの動的スケジューリング

・コンピュータのアーキテクチャと構成に貢献したり影響を与えた人物について説明する。

・コンピュータ工学におけるコンピュータのアーキテクチャおよび構成の目的と役割を説明する。

・命令セットアーキテクチャの分類

・コーディング、データ圧縮、データの整合性

・入出力の技法:プログラム入出力、割込みを用いた入出力、DMA

・基本入出力コントローラ( キーボードやマウスなど)

・命令のパイプライン化

・性能評価法、ベンチマークとデータ処理方法

・粒度、並列レベル ・汎用演算のアルゴリズム( 加減乗除)

・分岐予測

・システム構成とアーキテクチャ、メモリ、インタフェース、マイクロプロセッサ他

・基本演算命令 ・電子的、磁気的、光学的技術

・割込みの構造:割込みベクトルと優先順位、割込みオーバーヘッド、割込みとリエントラントコード

・RAID アーキテクチャ

・各ステージの動作と構成

・アムダールの法則

・共有メモリモデルと実現法

・コンピュータによる算術演算における範囲、精度、正確性の重要性

・プリフェッチ

・コンピュータの構成とアーキテクチャの意味を対照する。

・メモリアクセス命令とアドレッシングモード

・主記憶の構成、特性、性能

・メモリシステムの設計とインタフェース

・ビデオコントロール

・パイプライン化に起因するハザード: 構造、データ、制御

・計算機のコスト ・パケット転送法と相互結合網

・実数の表現(浮動小数点演算の標準)

・投機的実行

・コンピュータで二進算術演算を行うことの重要性を示す。

・分岐命令 ・待ち時間、サイクルタイム、帯域、インターリーブ処理

・バス: バスプロトコル、ローカルアービトレーションとジオグラフィックアービトレー

・入出力性能 ・ハザードの緩和 ・半導体のコストの見積もり

・プロセス: スレッド、クライアント、サーバ、コード移行、ソフトウェアエージェント

・汎用浮動小数点演算のアルゴリズム

・複数命令同時発行技術(スーパスカラ)

・メモリがコンピュータの設計にきわめて重要なコンポーネントであることに言及する。

・サブルーチンのコールとリターンのメカニズム

・キャッシュメモリ( アドレスマッピング、ラインサイズ、交換およびライトバックポリシー)

・SMART テクノロジーと障害検出

・コンパイラによる並列性の抽出とスケジューリング

・物理クロックと論理クロック: クロック同期アルゴリズム、ランポートのタイムスタンプ、ベクトルタイムスタンプ

・整数と実数の相互変換

・コンパイラによる並列性抽出とスケジューリング

・コンピュータのコンポーネントと周辺機器間のインタフェースの重要性を例示する。

・アセンブリ言語のプログラミング

・仮想記憶システム

・プロセッサとネットワーク間のインタフェース

・選挙アルゴリズム ・マルチプレシジョン演算

・VLIW アーキテクチャ

・CPU の典型例と構成図を示す。

・計算機の基本構成

・メモリ技術(DRAM、EPROM、FLASH

・相互排除アルゴリズム

・演算ユニットのハードウェアとソフトウェアの実装

・命令レベル並列処理の限界

・性能を追求すると代替アーキテクチャにたどり着く理由を示す。

・フェッチと実行のサイクル、命令のデコードと実行

・メモリシステムの信頼性、エラー検出システム、エラー訂正システム

・分散トランザクション:モデル、分類、並行実行制御

・平方根から超越関数までの高階関数の生成

・マルチスレッディング

・性能向上の手段であるキャッシュ処理について言及する。

・データパスの基本構成:演算器とレジスタファイル

・スケーラビリティ

・命令セットアーキテクチャで採用する戦略(RISC、CISC) を説明する。

・制御部の基本構成

・ショートベクトル命令セット

・性能向上のための戦略(命令レベル並列性とスレッドレベル並列性)を説明する。

・設計上の諸問題

CE-CAO コンピュータのアーキテクチャと構成

Page 28: IT 知識体系の科目別の関係(科目別) · 1 独立行政法人情報処理推進機構 付録2:it知識体系の科目別の関係(科目別) ossモデルカリキュラムの27科目(oss基本知識・応用知識)とit知識体系との関係をit知識体

独立行政法人 情報処理推進機構28

(14) IT-ITF IT基礎

<OSSモデルカリキュラム上の関連部分>分野 科目名 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15

オープンソースの理念

オープンソースOSの歴史

代表的なオープンソース

代表的なオープンソース開発言語

代表的なオープンソースアプリケーション

オープンソースの市場動向

オープンソースソフトウェアを用いたシステム事例

オープンソースソフトウェアコミュニティ

オープンソースソフトウェアビジネス

オープンソースの技術情報獲得方法

オープンソースのOSの導入と動作確認

オープンソースのサーバ製品の導入と動作確認

オープンソースのデスクトップ用アプリケーションの導入と動作確認

オープンソースのサーバサイドアプリケーションの導入と動作確認

オープンソースの仮想化ツールの導入と動作確認

[IT-ITF1]

オープンソース・ライセンスの概要

代表的なオープンソース・ライセンスの解説[GPL類型]

代表的なオープンソース・ライセンスの解説[MPL類型]

代表的なオープンソース・ライセンスの解説[BSD類型]

知的財産の概要(1) 知的財産の概要(2) OSS利用上の知的財産面での考慮点

OSS利用上の知的財産以外での法務面での考慮点

企業/団体等における法的リスク管理

法的リスクに対応したビジネス

OSS開発コミュニティが検討すべき法的リスク低減策

OSSビジネス関連企業が検討すべき法的リスク低減策

OSSの知的財産問題に関する訴訟/トラブル事例

ソフトウェア特許論争

知的財産関連の出願のガイドライン

コンピュータアーキテクチャの基本

コンピュータハードウェアの基本

CPUアーキテクチャの基本

ディスクと周辺機器の基本

インタフェース技術の基本

ソフトウェアアーキテクチャ

OSのアーキテクチャ

ミドルウェアの種類と特徴

コンピュータシステムの構成

システムアーキテクチャの活用事例

Webシステムのアーキテクチャ

OSSを活用した基盤設計ケースワーク

オープンソースシステムアーキテクチャ構築

OSSの動作環境としてのハードウェア

これからのオープンソースアーキテクチャの動向

分散アーキテクチャとは 名前管理 複製管理 耐故障性 セキュアチャネル CORBA入門(1) CORBA入門(2) Webサービス入門

(1)Webサービス入門(2) マッシュアップ入門 分散トランザクショ

ンピアツーピアアーキテクチャ モビリティ 一貫性 大規模な分散シス

テムの事例

Linux概要 ファイルシステム ファイルシステム データ保全とバックアップ

データ保全とバックアップ

シェルスクリプトと開発環境

シェルスクリプトと開発環境 ネットワークの基本

Linuxカーネル概論 スケジューリング 割り込みと遅延 システムコール プロセス管理 メモリ管理(1) メモリ管理(2) メモリ管理(3) ファイル管理(1) ファイル管理(2) ファイル管理(3) ネットワーク(1) ネットワーク(2) ネットワーク(3) ネットワーク(4)

Linuxシステム管理の作業概要

Linuxシステム管理・サーバ管理

Linuxシステム管理・ファイル/ディスク管理

Linuxシステム管理・ユーザ管理

Linuxシステム管理・バックアップとログ運用管理

Linuxシステム管理・リソース管理

Linuxシステム管理・カーネルの管理

Linuxシステム管理・ネットワーク管理

Linuxシステム管理・ルーティング管理

Linuxシステム管理・DHCPの構築と運用

Linuxシステム管理・FTPの構築と運用

Linuxシステム管理・NFSの構築と運用

Linuxシステム管理・Sambaの構築と運用

Linuxシステム管理・基本運用作業のトラブルシューティング

Linuxシステム管理・ネットワークのトラブルシューティング

ログイン手順とコンパイル手順 shellプログラミング ファイル入出力プロ

グラミング ファイルシステム UNIX環境 ライブラリの利用方法と作成手順 データの管理 ソフトウェアの開発

環境 デバッグ プロセスとスレッド シグナル プロセス間通信とパイプ 端末機器の入出力

セマフォ、共有メモリ、メッセージキュー

ネットワークプログラミング

ネットワークサーバの機能と特徴

サーバシステムの導入

ネームサーバの導入 Webサーバの導入 メールサーバ導入

の内容と作業手順スーパーサーバの導入

プロキシサーバの導入

その他のネットワークサーバ導入の作業内容と手順

ネットワークサーバによるルーティング処理、フィルタリング処理の実装

ネットワークサーバによるインターネット接続

サーバの運用管理業務

ログ管理の内容と手順

Linuxサーバセキュリティ

Linuxのサービスセキュリティ

セキュアOSの機能と実装

クラスタシステム概論、HAクラスタ(1) HAクラスタ(2) HAクラスタ(3) コンピュータシミュ

レーション並列プログラミング概論

並列プログラミング実践(2)

Beowulf PCクラスタの構築 SCoreクラスタ PCクラスタの周辺

技術グリッド・コンピューティング

オープンネットワークの概念と仕組み

通信の形態とプロトコル

インターネット通信の仕組み

LANネットワークの仕組み

無線ネットワークの種類と通信の仕組み

オープンネットワークの通信仕様

IPネットワークの仕組み

ルーティングの仕組み

ルーティングプロトコルの仕様 TCPの仕組み 通信プロトコルの動

作確認TCPアプリケーションの仕組み・Web

TCPアプリケーションの仕組み・FTP

TCPアプリケーションの仕組み・Telnet

新しいネットワークアーキテクチャ

ネットワークシステム運用の概要

ネットワーク管理の個別項目とその内容

ネットワークのキャパシティ管理の個別項目とその内容

ネットワークの性能管理の個別項目とその内容

TCP/IPの管理 ネットワークサーバの運用管理実践

ネットワークハードウェアの運用管理

ネットワーク管理プロトコルの概要

MRTGによるネットワーク管理の実施

ネットワーク運用設計

ネットワーク運用設計

運用管理の実際的手順と体制

WANの運用管理 ネットワーク障害管理

ネットワークトラブルシューティング

Javaの基本 Java言語の基本構造

オブジェクト指向プログラミングのメリット

Javaによるアプリケーション開発手順

Javaによるネットワークプログラミング

Servlet/JSP/JDBCによるWebアプリケーション開発の概要

JDBCによるデータベースアクセス MVCモデル EJBによるアプリ

ケーション開発

JavaによるServer処理実装の特徴と設計方法

JavaによるWebアプリケーションの設計/実装

JavaによるServerSide Java/Webアプリケーション実装

オブジェクト指向システム分析/設計/実装の実践技術

デザインパターンによる開発手順

Javaのパフォーマンスチューニング

Cの基本 Cの基本構造 文字列操作 関数 ポインタ 構造体 コンソール入出力 ファイル管理 データ構造 C++の基本 C++の基本構造 オブジェクト指向プログラミング

STL(StandardTemplate Library)

GUIアプリケーションの開発

開発ライブラリの使用

LightWeightLanguageの基本 Perlの基本構造 PHPの基本構造 Pythonの基本構造 Rubyの基本構造 オブジェクト指向プ

ログラミング組み込みクラス[データ構造]

組み込みクラス[データ操作]

組み込みクラス[ファイル管理]

GUIアプリケーション開発 Ruby on Rails データベースアプリ

ケーション開発Webアプリケーション開発

プラグイン導入と開発

オープンソースシステムのカスタマイズ

開発フレームワークとは何か

開発フレームワークの種類と特徴

オープンソースによるWebアプリケーションのフレームワーク

フリーのWebコンテナ/J2EEコンテナの概要

オープンソースの開発ツール

開発フレームワークによる開発プロセスの手順

Ruby on Railsによるアプリケーション開発

Strutsとは MyFace(JSF)の開発モデルとは

データベース接続・アクセスのフレームワーク

DIxAOPコンテナの概要

Springフレームワーク Seasar2 Tapestry Strutsによるアプリ

ケーション開発

開発の流れとツール

ソフトウェア開発環境の概要

Linux開発環境におけるソフトウェアアプリケーション開発の概要

バージョン管理ツールの活用

デバッガによるプログラムデバッグの環境

カーネルデバッガを使用したデバッグ

バグ追跡システムを使用したデバッグ

オープンソース開発ツールの種類と機能

統合開発環境を用いた開発手順

オープンソース統合開発環境の種類と特徴

Linux開発環境におけるソフトウェア開発ワークショップ

Linux開発環境におけるソフトウェア開発支援ツール概要

ソフトウェア開発ツールの評価

Eclipseを用いたソフトウェア開発

Eclipseを用いたソフトウェア開発ワークショップ

[IT-ITF2] [IT-ITF2]

統合開発環境によるソフトウェア開発

さまざまな統合開発環境 Eclipseとは何か NetBeans IDEとは

何かWideStudioとは何か

Eclipse入門 -セットアップ

Eclipse入門 -基本操作

NetBeans入門 -セットアップ

NetBeans入門 -基本操作

WideStudio入門- セットアップ

WideStudio入門- 基本操作

EclipseによるJavaプログラミング

EclipseによるWebアプリケーション開発

NetBeansによるWebアプリケーション開発

WideStudioによるアプリケーション開発

セキュリティ機能と暗号化の位置づけ 暗号化の方式・共

通鍵暗号方式暗号化の方式・公開鍵暗号方式

情報システムにおける暗号化適用の方式

電子証明書の仕組み OSSの活用シーン

と暗号化無線LANの暗号化 認証と暗号化 IPsecによる暗号化

通信SSHによるトンネリング

SSLプロトコルの仕組み

VPN通信の構築 PKI(公開鍵暗号化基盤)の仕組み

認証基盤構築実習 暗号化・これからの活用シーンと課題

[IT-ITF6]

ネットワークセキュリティの概要

ウィルスの特性と対策

ネットワーク攻撃方法の簡易的な分類

TCPにおける不正アクセス技術 Webにおける攻撃 IPにおける不正アク

セス技術

TCP/IPネットワークセキュリティの設計方法

アクセス制御の仕組みとファイアウォールの機能

Linuxのネットワークセキュリティ対策

ネットワーク脆弱性調査

セキュアなネットワークの構築

侵入検知システムの仕様と導入

IDSによる侵入検知

ネットワークセキュリティ構築

モバイルコンピューティングとリモートアクセスのセキュリティ

[IT-ITF1]

OSのセキュリティ機能

Linuxサーバのローカルセキュリティ対策

Linuxのネットワークセキュリティ対策

Linuxによるファイアウォール構築

Linuxのサーバセキュリティ設定

安全なリモートアクセス

SSLによるサーバVPNとCA

ドメインネームサービスのセキュリティ対策

電子メールのセキュリティ対策

Webのセキュリティ対策(1)

Webのセキュリティ対策(2)

ファイルサービスのセキュリティ対策

システムログの管理

Linuxによる侵入検知の手法

サーバのセキュリティ監査と設定の自動化

データベースの基礎理論 RDBMSの基本知識 トランザクションの

基本概念データベースの構成要素 DOAの内容概要 データベース設計

の基本理論 ERモデル 正規化の手順と方法

データベースインデックス

データベースの物理構造

SQLによるデータベースアクセス

SQL実践演習ワークショップ

代表的なオープンソースRDBMS製品

データベース設計構築の実践 データベース構築

データベース運用管理の目的と項目

データベースの運用作業と障害回復

データベース運用設計

データベースセキュリティ

データベースリカバリ設計

データベースの最適化

データベースのトラブル

データベースチューニング データベース構築

データベースインデックスを用いた性能改善

MySQLの導入と運用

データベーストラブルシューティング

データベース運用環境構築 データベース運用 データベースチュー

ニング

組み込みコンピュータシステムとは何か

組み込みコンピュータのアーキテクチャ

組み込みシステムの基本構成

組み込みコンピュータハードウェアの基本

CPUアーキテクチャの基本

組み込みソフトウェアの概要

カーネル処理の概要

リアルタイムシステムの構成と仕組み

組み込みシステムの開発方法

オブジェクト指向分析による組み込みシステムの分析とモデリング

組み込みコンピュータシステムの開発管理

組み込みシステムのアーキテクチャ

組み込みシステムのネットワーク機能

組み込みシステムの設計

これからの組み込みシステムの動向

組み込み開発の流れと環境

組み込み開発環境の概要

組み込み開発環境を用いた開発手順

プログラムデバッグの環境

デバッガソフトを使用したデバッグ環境

ICEを使用したデバッグ環境

ツールチェーンによるデバッグ

組み込みアプリケーションデバッグの手順

組み込みアプリケーションの事例と開発環境

組み込みクロス開発環境の構築

GNU開発環境の特徴

GNU開発環境における組み込みアプリケーション開発

組み込みLinux開発最新デバッグ環境

組み込み開発環境の評価

組み込み開発環境におけるデバッグのパターン演習

タスクとコンテキスト

非同期と同期の設計仕様

タスクの優先度とその制御仕様

組み込みアプリケーション間の資源配分技術

組み込みアプリケーション間のリソースの共有技術

リソース有効活用のアーキテクチャ

プログラム資源の有効活用技術

入出力待ちリソースの有効利用

入出力資源管理 J2MEの仕様 VMの概要のその活用

高信頼性の実装組み込みアプリケーションの実装事例研究

クリティカルなマイコンアプリケーションを活用した設計ケースワーク

組み込みアプリケーションソフトウェアの実装

マルチプロセッサシステム

ハードウェアによる最適化

リアルタイムシステムの設計

リアルタイムソフトウェアの条件と最適化

性能最適化の評価項目

ソフトウェアの最適化

MPUの性能最適化設計

システムの性能要件と評価項目

システム性能の評価方法

性能評価手法の分類 拡張性の評価 システム資源のト

レードオフ

基本ソフトウェアと応用ソフトウェアのトレードオフ

組み込みシステム最適化のための方式設計

最適化のための検討項目

[IT-ITF1,2]

9. ネットワークサーバ管理に関する知識Ⅰ・Ⅱ

10. クラスタシステム構築に関する知識Ⅰ・Ⅱ

24. 組み込みシステムに関する知識Ⅰ・Ⅱ

16. 開発フレームワークに関する知識Ⅰ・Ⅱ

17. 開発ツールに関する知識Ⅰ・Ⅱ

18. 統合開発環境に関する知識Ⅰ・Ⅱ

19. 暗号化に関する知識Ⅰ・Ⅱ

25. 組み込み開発環境に関する知識Ⅰ・Ⅱ

26. 組み込みアプリケーション開発に関する知識Ⅰ・Ⅱ

27. 組み込みシステム最適化に関する知識Ⅰ・Ⅱ

20. ネットワークセキュリティに関する知識Ⅰ・Ⅱ

21. OSセキュリティに関する知識Ⅰ・Ⅱ

22. RDBに関する基礎知識Ⅰ・Ⅱ

23. RDBシステム管理に関する知識Ⅰ・Ⅱ

5. Linuxの概念や基本操作に関する知識Ⅰ・Ⅱ

6. Linuxのカーネルに関する知識Ⅰ・Ⅱ

7. Linuxのシステム管理に関する知識Ⅰ・Ⅱ

8. Linuxのシステムプログラミングに関する知識Ⅰ・Ⅱ

1. OSSの概要に関する知識Ⅰ・Ⅱ

2. 法務分野に関する基礎知識Ⅰ・Ⅱ

3. コンピューターシステムやアーキテクチャに関する

知識Ⅰ・Ⅱ

4. 分散アーキテクチャに関する知識Ⅱ

並列プログラミング 実践(3)

13. Javaに関する知識Ⅰ・Ⅱ

14. C、C++に関する知識Ⅰ・Ⅱ

15. Light WeightLanguageに関する知識

Ⅰ・Ⅱ

11. ネットワーク・アーキテクチャに関する知識Ⅰ・Ⅱ

12. ネットワーク管理に関する知識Ⅰ・Ⅱ

ネットワーク

ファイル操作 ユーザの権限と管理 システム管理

並列プログラミング 実践(1) マルチスレッドプログラミング

基礎

組み込みSW

RDB

セキュリティ

開発体系

プログラミング

システム

Page 29: IT 知識体系の科目別の関係(科目別) · 1 独立行政法人情報処理推進機構 付録2:it知識体系の科目別の関係(科目別) ossモデルカリキュラムの27科目(oss基本知識・応用知識)とit知識体系との関係をit知識体

独立行政法人 情報処理推進機構29

<IT知識体系固有の知識>

科目名

ITF1. IT の一般的なテーマ

ITF2. 組織の問題

ITF3. IT の歴史 ITF4. IT 分野(学科)とそれに関連のある分野(学科)

ITF5. 応用領域 ITF6. IT 分野における数学と統計学の活用

・ユーザを中心に置くこととユーザを擁護すること

・どのようにIT の活用方法を説明するか

・コンピューティング技術の歴史

・IT 分野の定義 ・バイオインフォマティクスと医療分野への応用

・関数, 関係, 集合

・情報保証と情報セキュリティ

・組織改革を拡大させることと変化への対応

・コンピュータが社会に与えた影響の歴史

・コンピュータ科学

・ビジネスへの応用

・データ表現と暗号化

・IT システムモデル

・ビジネスプロセスの統合

・ユーザインタラクションの発展

・ソフトウェア工学 ・法律の施行への応用

・プログラミングで利用される基本的な論理

・複雑さの管理(抽象化, モデリング, ベストプラクティス, パターン, 標準,適切なツールの利用)

・ビジネスプロセスの再設計

・インターネットの歴史

・情報システム ・行政プロセスへの応用

・問題を解く上での確率的手法の活用

・情報・通信技術 ・費用便益分析 ・認知科学 ・e-コマースへの応用

・問題を解く上での統計的手法の活用

・ヒューマンコンピュータインタラクション

・プロジェクト管理 ・コンピュータ工学

・製造業への応用

・情報管理 ・数学と統計学 ・教育への応用・ネットワーク ・自然科学, 言

語学, 社会学,心理学などの他の分野

・エンタテインメントへの応用

・プラットフォーム技術

・農業への応用

・プログラミング・Web システムと技術

・適応力

・プロフェッショナリズム( 生涯学習, 専門能力開発, 倫理観, 責任感)

・対人スキル

・データと情報

IT-ITF IT基礎

Page 30: IT 知識体系の科目別の関係(科目別) · 1 独立行政法人情報処理推進機構 付録2:it知識体系の科目別の関係(科目別) ossモデルカリキュラムの27科目(oss基本知識・応用知識)とit知識体系との関係をit知識体

独立行政法人 情報処理推進機構30

(15) CE-ESY 組込み

<OSSモデルカリキュラム上の関連部分>分野 科目名 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15

オープンソースの理念

オープンソースOSの歴史

代表的なオープンソース

代表的なオープンソース開発言語

代表的なオープンソースアプリケーション

オープンソースの市場動向

オープンソースソフトウェアを用いたシステム事例

オープンソースソフトウェアコミュニティ

オープンソースソフトウェアビジネス

オープンソースの技術情報獲得方法

オープンソースのOSの導入と動作確認

オープンソースのサーバ製品の導入と動作確認

オープンソースのデスクトップ用アプリケーションの導入と動作確認

オープンソースのサーバサイドアプリケーションの導入と動作確認

オープンソースの仮想化ツールの導入と動作確認

オープンソース・ライセンスの概要

代表的なオープンソース・ライセンスの解説[GPL類型]

代表的なオープンソース・ライセンスの解説[MPL類型]

代表的なオープンソース・ライセンスの解説[BSD類型]

知的財産の概要(1) 知的財産の概要(2) OSS利用上の知的財産面での考慮点

OSS利用上の知的財産以外での法務面での考慮点

企業/団体等における法的リスク管理

法的リスクに対応したビジネス

OSS開発コミュニティが検討すべき法的リスク低減策

OSSビジネス関連企業が検討すべき法的リスク低減策

OSSの知的財産問題に関する訴訟/トラブル事例

ソフトウェア特許論争

知的財産関連の出願のガイドライン

コンピュータアーキテクチャの基本

コンピュータハードウェアの基本

CPUアーキテクチャの基本

ディスクと周辺機器の基本

インタフェース技術の基本

ソフトウェアアーキテクチャ

OSのアーキテクチャ

ミドルウェアの種類と特徴

コンピュータシステムの構成

システムアーキテクチャの活用事例

Webシステムのアーキテクチャ

OSSを活用した基盤設計ケースワーク

オープンソースシステムアーキテクチャ構築

OSSの動作環境としてのハードウェア

これからのオープンソースアーキテクチャの動向

分散アーキテクチャとは 名前管理 複製管理 耐故障性 セキュアチャネル CORBA入門(1) CORBA入門(2) Webサービス入門

(1)Webサービス入門(2) マッシュアップ入門 分散トランザクショ

ンピアツーピアアーキテクチャ モビリティ 一貫性 大規模な分散シス

テムの事例

[CE-ESY2,24]

Linux概要 ファイルシステム ファイルシステム データ保全とバックアップ

データ保全とバックアップ

シェルスクリプトと開発環境

シェルスクリプトと開発環境 ネットワークの基本

Linuxカーネル概論 スケジューリング 割り込みと遅延 システムコール プロセス管理 メモリ管理(1) メモリ管理(2) メモリ管理(3) ファイル管理(1) ファイル管理(2) ファイル管理(3) ネットワーク(1) ネットワーク(2) ネットワーク(3) ネットワーク(4)

Linuxシステム管理の作業概要

Linuxシステム管理・サーバ管理

Linuxシステム管理・ファイル/ディスク管理

Linuxシステム管理・ユーザ管理

Linuxシステム管理・バックアップとログ運用管理

Linuxシステム管理・リソース管理

Linuxシステム管理・カーネルの管理

Linuxシステム管理・ネットワーク管理

Linuxシステム管理・ルーティング管理

Linuxシステム管理・DHCPの構築と運用

Linuxシステム管理・FTPの構築と運用

Linuxシステム管理・NFSの構築と運用

Linuxシステム管理・Sambaの構築と運用

Linuxシステム管理・基本運用作業のトラブルシューティング

Linuxシステム管理・ネットワークのトラブルシューティング

ログイン手順とコンパイル手順 shellプログラミング ファイル入出力プロ

グラミング ファイルシステム UNIX環境 ライブラリの利用方法と作成手順 データの管理 ソフトウェアの開発

環境 デバッグ プロセスとスレッド シグナル プロセス間通信とパイプ 端末機器の入出力

セマフォ、共有メモリ、メッセージキュー

ネットワークプログラミング

ネットワークサーバの機能と特徴

サーバシステムの導入

ネームサーバの導入 Webサーバの導入 メールサーバ導入

の内容と作業手順スーパーサーバの導入

プロキシサーバの導入

その他のネットワークサーバ導入の作業内容と手順

ネットワークサーバによるルーティング処理、フィルタリング処理の実装

ネットワークサーバによるインターネット接続

サーバの運用管理業務

ログ管理の内容と手順

Linuxサーバセキュリティ

Linuxのサービスセキュリティ

セキュアOSの機能と実装

クラスタシステム概論、HAクラスタ(1) HAクラスタ(2) HAクラスタ(3) コンピュータシミュ

レーション並列プログラミング概論

並列プログラミング実践(2)

Beowulf PCクラスタの構築 SCoreクラスタ PCクラスタの周辺

技術グリッド・コンピューティング

オープンネットワークの概念と仕組み

通信の形態とプロトコル

インターネット通信の仕組み

LANネットワークの仕組み

無線ネットワークの種類と通信の仕組み

オープンネットワークの通信仕様

IPネットワークの仕組み

ルーティングの仕組み

ルーティングプロトコルの仕様 TCPの仕組み 通信プロトコルの動

作確認TCPアプリケーションの仕組み・Web

TCPアプリケーションの仕組み・FTP

TCPアプリケーションの仕組み・Telnet

新しいネットワークアーキテクチャ

ネットワークシステム運用の概要

ネットワーク管理の個別項目とその内容

ネットワークのキャパシティ管理の個別項目とその内容

ネットワークの性能管理の個別項目とその内容

TCP/IPの管理 ネットワークサーバの運用管理実践

ネットワークハードウェアの運用管理

ネットワーク管理プロトコルの概要

MRTGによるネットワーク管理の実施

ネットワーク運用設計

ネットワーク運用設計

運用管理の実際的手順と体制

WANの運用管理 ネットワーク障害管理

ネットワークトラブルシューティング

Javaの基本 Java言語の基本構造

オブジェクト指向プログラミングのメリット

Javaによるアプリケーション開発手順

Javaによるネットワークプログラミング

Servlet/JSP/JDBCによるWebアプリケーション開発の概要

JDBCによるデータベースアクセス MVCモデル EJBによるアプリ

ケーション開発

JavaによるServer処理実装の特徴と設計方法

JavaによるWebアプリケーションの設計/実装

JavaによるServerSide Java/Webアプリケーション実装

オブジェクト指向システム分析/設計/実装の実践技術

デザインパターンによる開発手順

Javaのパフォーマンスチューニング

Cの基本 Cの基本構造 文字列操作 関数 ポインタ 構造体 コンソール入出力 ファイル管理 データ構造 C++の基本 C++の基本構造 オブジェクト指向プログラミング

STL(StandardTemplate Library)

GUIアプリケーションの開発

開発ライブラリの使用

LightWeightLanguageの基本 Perlの基本構造 PHPの基本構造 Pythonの基本構造 Rubyの基本構造 オブジェクト指向プ

ログラミング組み込みクラス[データ構造]

組み込みクラス[データ操作]

組み込みクラス[ファイル管理]

GUIアプリケーション開発 Ruby on Rails データベースアプリ

ケーション開発Webアプリケーション開発

プラグイン導入と開発

オープンソースシステムのカスタマイズ

開発フレームワークとは何か

開発フレームワークの種類と特徴

オープンソースによるWebアプリケーションのフレームワーク

フリーのWebコンテナ/J2EEコンテナの概要

オープンソースの開発ツール

開発フレームワークによる開発プロセスの手順

Ruby on Railsによるアプリケーション開発

Strutsとは MyFace(JSF)の開発モデルとは

データベース接続・アクセスのフレームワーク

DIxAOPコンテナの概要

Springフレームワーク Seasar2 Tapestry Strutsによるアプリ

ケーション開発

開発の流れとツール

ソフトウェア開発環境の概要

Linux開発環境におけるソフトウェアアプリケーション開発の概要

バージョン管理ツールの活用

デバッガによるプログラムデバッグの環境

カーネルデバッガを使用したデバッグ

バグ追跡システムを使用したデバッグ

オープンソース開発ツールの種類と機能

統合開発環境を用いた開発手順

オープンソース統合開発環境の種類と特徴

Linux開発環境におけるソフトウェア開発ワークショップ

Linux開発環境におけるソフトウェア開発支援ツール概要

ソフトウェア開発ツールの評価

Eclipseを用いたソフトウェア開発

Eclipseを用いたソフトウェア開発ワークショップ

[CE-ESY10]

統合開発環境によるソフトウェア開発

さまざまな統合開発環境 Eclipseとは何か NetBeans IDEとは

何かWideStudioとは何か

Eclipse入門 -セットアップ

Eclipse入門 -基本操作

NetBeans入門 -セットアップ

NetBeans入門 -基本操作

WideStudio入門- セットアップ

WideStudio入門- 基本操作

EclipseによるJavaプログラミング

EclipseによるWebアプリケーション開発

NetBeansによるWebアプリケーション開発

WideStudioによるアプリケーション開発

セキュリティ機能と暗号化の位置づけ 暗号化の方式・共

通鍵暗号方式暗号化の方式・公開鍵暗号方式

情報システムにおける暗号化適用の方式

電子証明書の仕組み OSSの活用シーン

と暗号化無線LANの暗号化 認証と暗号化 IPsecによる暗号化

通信SSHによるトンネリング

SSLプロトコルの仕組み

VPN通信の構築 PKI(公開鍵暗号化基盤)の仕組み

認証基盤構築実習 暗号化・これからの活用シーンと課題

ネットワークセキュリティの概要

ウィルスの特性と対策

ネットワーク攻撃方法の簡易的な分類

TCPにおける不正アクセス技術 Webにおける攻撃 IPにおける不正アク

セス技術

TCP/IPネットワークセキュリティの設計方法

アクセス制御の仕組みとファイアウォールの機能

Linuxのネットワークセキュリティ対策

ネットワーク脆弱性調査

セキュアなネットワークの構築

侵入検知システムの仕様と導入

IDSによる侵入検知

ネットワークセキュリティ構築

モバイルコンピューティングとリモートアクセスのセキュリティ

OSのセキュリティ機能

Linuxサーバのローカルセキュリティ対策

Linuxのネットワークセキュリティ対策

Linuxによるファイアウォール構築

Linuxのサーバセキュリティ設定

安全なリモートアクセス

SSLによるサーバVPNとCA

ドメインネームサービスのセキュリティ対策

電子メールのセキュリティ対策

Webのセキュリティ対策(1)

Webのセキュリティ対策(2)

ファイルサービスのセキュリティ対策

システムログの管理

Linuxによる侵入検知の手法

サーバのセキュリティ監査と設定の自動化

データベースの基礎理論 RDBMSの基本知識 トランザクションの

基本概念データベースの構成要素 DOAの内容概要 データベース設計

の基本理論 ERモデル 正規化の手順と方法

データベースインデックス

データベースの物理構造

SQLによるデータベースアクセス

SQL実践演習ワークショップ

代表的なオープンソースRDBMS製品

データベース設計構築の実践 データベース構築

データベース運用管理の目的と項目

データベースの運用作業と障害回復

データベース運用設計

データベースセキュリティ

データベースリカバリ設計

データベースの最適化

データベースのトラブル

データベースチューニング データベース構築

データベースインデックスを用いた性能改善

MySQLの導入と運用

データベーストラブルシューティング

データベース運用環境構築 データベース運用 データベースチュー

ニング

組み込みコンピュータシステムとは何か

組み込みコンピュータのアーキテクチャ

組み込みシステムの基本構成

組み込みコンピュータハードウェアの基本

CPUアーキテクチャの基本

組み込みソフトウェアの概要

カーネル処理の概要

リアルタイムシステムの構成と仕組み

組み込みシステムの開発方法

オブジェクト指向分析による組み込みシステムの分析とモデリング

組み込みコンピュータシステムの開発管理

組み込みシステムのアーキテクチャ

組み込みシステムのネットワーク機能

組み込みシステムの設計

これからの組み込みシステムの動向

[CE-ESY0,3,10] [CE-ESY0] [CE-ESY1,3,14,17] [CE-ESY3,14] [CE-ESY14] [CE-ESY13] [CE-ESY13] [CE-ESY13] [CE-ESY7,8,13,16] [CE-ESY10,16] [CE-ESY3,14,20] [CE-ESY18,19]

組み込み開発の流れと環境

組み込み開発環境の概要

組み込み開発環境を用いた開発手順

プログラムデバッグの環境

デバッガソフトを使用したデバッグ環境

ICEを使用したデバッグ環境

ツールチェーンによるデバッグ

組み込みアプリケーションデバッグの手順

組み込みアプリケーションの事例と開発環境

組み込みクロス開発環境の構築

GNU開発環境の特徴

GNU開発環境における組み込みアプリケーション開発

組み込みLinux開発最新デバッグ環境

組み込み開発環境の評価

組み込み開発環境におけるデバッグのパターン演習

[CE-ESY4,15,21] [CE-ESY4] [CE-ESY4] [CE-ESY4,15] [CE-ESY17] [CE-ESY15] [CE-ESY4,17]

タスクとコンテキスト

非同期と同期の設計仕様

タスクの優先度とその制御仕様

組み込みアプリケーション間の資源配分技術

組み込みアプリケーション間のリソースの共有技術

リソース有効活用のアーキテクチャ

プログラム資源の有効活用技術

入出力待ちリソースの有効利用

入出力資源管理 J2MEの仕様 VMの概要のその活用

高信頼性の実装組み込みアプリケーションの実装事例研究

クリティカルなマイコンアプリケーションを活用した設計ケースワーク

組み込みアプリケーションソフトウェアの実装

[CE-ESY13] [CE-ESY13] [CE-ESY13] [CE-ESY13] [CE-ESY13] [CE-ESY14,15] [CE-ESY13] [CE-ESY13] [CE-ESY21] [CE-ESY2,8,23,24] [CE-ESY23]

マルチプロセッサシステム

ハードウェアによる最適化

リアルタイムシステムの設計

リアルタイムソフトウェアの条件と最適化

性能最適化の評価項目

ソフトウェアの最適化

MPUの性能最適化設計

システムの性能要件と評価項目

システム性能の評価方法

性能評価手法の分類 拡張性の評価 システム資源のト

レードオフ

基本ソフトウェアと応用ソフトウェアのトレードオフ

組み込みシステム最適化のための方式設計

最適化のための検討項目

[CE-ESY3] [CE-ESY1,21] [CE-ESY4,6,7,8,21] [CE-ESY21] [CE-ESY8,12,21] [CE-ESY15] [CE-ESY24] [CE-ESY6] [CE-ESY16]

基礎

組み込みSW

RDB

セキュリティ

開発体系

プログラミング

システム

ファイル操作 ユーザの権限と管理 システム管理

並列プログラミング 実践(1) マルチスレッドプログラミング

並列プログラミング 実践(3)

13. Javaに関する知識Ⅰ・Ⅱ

14. C、C++に関する知識Ⅰ・Ⅱ

15. Light WeightLanguageに関する知識

Ⅰ・Ⅱ

11. ネットワーク・アーキテクチャに関する知識Ⅰ・Ⅱ

12. ネットワーク管理に関する知識Ⅰ・Ⅱ

ネットワーク

1. OSSの概要に関する知識Ⅰ・Ⅱ

2. 法務分野に関する基礎知識Ⅰ・Ⅱ

3. コンピューターシステムやアーキテクチャに関する

知識Ⅰ・Ⅱ

4. 分散アーキテクチャに関する知識Ⅱ

5. Linuxの概念や基本操作に関する知識Ⅰ・Ⅱ

6. Linuxのカーネルに関する知識Ⅰ・Ⅱ

7. Linuxのシステム管理に関する知識Ⅰ・Ⅱ

8. Linuxのシステムプログラミングに関する知識Ⅰ・Ⅱ

25. 組み込み開発環境に関する知識Ⅰ・Ⅱ

26. 組み込みアプリケーション開発に関する知識Ⅰ・Ⅱ

27. 組み込みシステム最適化に関する知識Ⅰ・Ⅱ

20. ネットワークセキュリティに関する知識Ⅰ・Ⅱ

21. OSセキュリティに関する知識Ⅰ・Ⅱ

22. RDBに関する基礎知識Ⅰ・Ⅱ

23. RDBシステム管理に関する知識Ⅰ・Ⅱ

9. ネットワークサーバ管理に関する知識Ⅰ・Ⅱ

10. クラスタシステム構築に関する知識Ⅰ・Ⅱ

24. 組み込みシステムに関する知識Ⅰ・Ⅱ

16. 開発フレームワークに関する知識Ⅰ・Ⅱ

17. 開発ツールに関する知識Ⅰ・Ⅱ

18. 統合開発環境に関する知識Ⅰ・Ⅱ

19. 暗号化に関する知識Ⅰ・Ⅱ

Page 31: IT 知識体系の科目別の関係(科目別) · 1 独立行政法人情報処理推進機構 付録2:it知識体系の科目別の関係(科目別) ossモデルカリキュラムの27科目(oss基本知識・応用知識)とit知識体系との関係をit知識体

独立行政法人 情報処理推進機構31

<IT知識体系固有の知識>

科目名

CE-ESY0 歴史と概要 [コア]

CE-ESY1 低電力コンピューティング [コア]

CE-ESY2 高信頼性システムの設計 [コア]

CE-ESY3 組込み用アーキテクチャ [コア]

CE-ESY4 開発環境 [コア]

CE-ESY5 ライフサイクル [コア]

CE-ESY6 要件分析 [コア]

CE-ESY7 仕様定義 [コア]

CE-ESY8 構造設計 [コア]

・組込みシステムを学習する理由

・エネルギー消費源: トグル処理,漏電

・ハードウェアの過渡的障害と永続的障害

・性能, 能力,コスト面から見た多重プロセッサの重要性

・クロス開発環境とデバッガ・モニタ

・ライフサイクルの性質,ライフサイクルモデルの役割,他

・システム分析:必要性の識別,実現可能性の検討, 経済性の検討

・機能仕様とそれ以外の仕様: 各種のアプローチと可能性

・システムとサブシステムへの分割の基礎, その判断の基礎

・組込みシステムの領域への貢献や影響が認められる人物

・命令レベルの電力管理戦略: 機能ユニット管理

・ソフトウェアエラーの発生源

・単一バスシステム用のハードウェアとソフトウェアのパーティショニング

・プログラミングと単体テスト

・ライフサイクルの各種モデル:長所と短所

・要件の性質:機能要件と機能以外の要件

・仕様に関連する品質, 整合性,一貫性, 単純性, 検証可能性, 他

・高品質設計の要素

・言語とハードウェア間の対応付け,分類, ソフトウェア工学の影響,他

・メモリシステムの電力消費:キャッシュ, オフチップメモリ

・高信頼システム設計における設計確認の役割

・汎用アーキテクチャ

・システムおよびソフトウェアの分析・設計

・プロセスの概念: プロセス改善, 基礎としての情報, 情報収集

・要件決定のアプローチ:分析作業とその要素

・仕様に基づいたテスト:テストに関連した独立性の役割,安全性ケース

・コンピュータシステム工学で採用するシステムレベル設計戦略、他

・組込みシステムと他のコンピュータシステムを対照する。

・複数プロセスの電力消費

・フォールトトレランス技法

・多重プロセッサとしてのFPGA プラットフォーム

・ソフトウェアおよびシステムのテスト

・成熟度のモデル, 標準,ガイドライン

・プロトタイピング, シミュレーション, モデリング

・こうしたテストの限界

・信頼性実現に関連する設計問題,冗長性の役割,設計の独立性,関連性の分離,他・組込みシステム

に応用するプログラミングの役割と関連する言語

・システムレベルの電力管理: 決定論手法, 確率論手法

・組込みコンピュータの既知の障害

・アプリケーションのテストと品質評価ベンチ

・人的要因 ・低下運転モード: 可能性, この状況でのテスト

・アーキテクチャ設計の各種アプローチ, その長所と短所

・組込みシステムに関連する補完的教材の研究

・マネジメントおよび協調支援

・スキルの蓄積 ・性能対策( 信頼性や安全性など)を実現する設計

・コンピュータ工学における組込みシステムの目的と役割

・専門家の役割と経験

・共通原因故障の概念

・機能以外の要件, 可能性の範囲, 資格問題

・障害モード,フォールトトレラント設計のアプローチ, 障害の対処

・人的要因問題:標準, ユーザインタフェースの設・個別のアプリケーション,コンピュータシステムの構築

CE-ESY 組込みシステム

Page 32: IT 知識体系の科目別の関係(科目別) · 1 独立行政法人情報処理推進機構 付録2:it知識体系の科目別の関係(科目別) ossモデルカリキュラムの27科目(oss基本知識・応用知識)とit知識体系との関係をit知識体

独立行政法人 情報処理推進機構32

科目名

CE-ESY9 テスト [コア]

CE-ESY10 プロジェクト管理 [コア]

CE-ESY11 並行設計( ハードウェア, ソフトウェア) [コア]

CE-ESY12 実装 [コア]

CE-ESY13 リアルタイムオペレーティングシステム [コア]

CE-ESY14 組込みマイクロコントローラ [選択]

CE-ESY15 組込みプログラム[選択]

CE-ESY16 設計手法 [選択]

・テストの性質,ライフサイクル全体での実施,効率的かつ効果的なプロセス

・システム工学におけるプロジェクト管理の性質,基本原理

・ハードウェアとソフトウェアの並行開発の重要性を高めるような性能制約のある応用

・個別の目的に適した技術の選択

・コンテクスト切り替え機構

・基本的なコンピュータシステムの構成:CPU, メモリ,バス上のI/O 装置

・プログラム翻訳プロセス: コンパイル, アセンブリ, リンク

・多人数による設計プロジェクト

・テスト計画,その目的と性質

・チーム編成,ソフトウェアプロジェクト管理の難しさ

・ハードウェアによるリアルタイム機能の需要

・高速アプリケーション開発

・スケジューリングポリシー

・マイクロコントローラで使用されているCPU ファミリー:4 ビット,8ビット,16-32 ビッ

・プログラムの表現: データフローと制御フロー

・期限と予算を順守した設計

・ホワイトボード,ブラックボード,回帰テスト, ストレステスト, 他

・資源配分 ・ハードウェアとソフトウェアの共同設計

・関連する標準と文書化の役割

・レート単調スケジューリング: 理論と実践

・基本的なI/O 装置: タイマとカウンタ,GPIO,A/D,D/A

・アセンブリ言語とリンクの基本概念: ラベル,アドレス管理

・設計レビュー

・効率的かつ効果的な開発をサポートするツール( 回帰テストなど)

・意思決定をチームに割り当てる:問題と選択肢

・性能レベルの保証, テストの性質,回帰テスト

・優先順位反転 ・ポーリング対象I/O と割込み駆動型I/O

・コンパイル作業: メモリへの変数のマッピング,データ構造の管理,制御構造の

・エラー率と発生源の追跡

・システムレベルのテストと診断

・ガントチャート:プロジェクト計画, コスト計算,チームワーク

・技術に固有な問題

・その他のスケジューリングポリシー(EDF など)

・割込みの構成:ベクトル割込みと優先順位付き割込み

・コンパイラが制御可能なものと不可能なもの,他

・変更管理

・プリント回路基板,MCM, コアベースのテスト

・プロジェクト管理情報の確保, 仕様へのタイムリーな準拠, 他

・メッセージ通過と共有メモリ通信

・DMA 転送

・ソフトウェアテスト

・標準, 法的要件, コンサルタント,下請業者,それらの利用と管理

・プロセス間通信スタイル( メールボックス,RPC など)

・メモリ管理ユニット

・管理サポートの測定基準の役割

・メモリ階層とキャッシュ

CE-ESY 組込みシステム

Page 33: IT 知識体系の科目別の関係(科目別) · 1 独立行政法人情報処理推進機構 付録2:it知識体系の科目別の関係(科目別) ossモデルカリキュラムの27科目(oss基本知識・応用知識)とit知識体系との関係をit知識体

独立行政法人 情報処理推進機構33

科目名

CE-ESY17 ツールによるサポート [選択]

CE-ESY18 ネットワーク型組込みシステム [選択]

CE-ESY19 インタフェースシステムと混合信号システム [選択]

CE-ESY20 センサ技術 [選択]

CE-ESY21 デバイスドライバ[選択]

CE-ESY22 メンテナンス [選択]

CE-ESY23 専門システム [選択]

CE-ESY24 信頼性とフォールトトレランス [選択]

・コンパイラとプログラミング環境

・ネットワーク型組込みシステムを使う理由

・D/A 変換 ・センサの種類と用途

・デバイスドライバの目的と種類

・ハードウェアアップグレード時やツール開発時などに一部のシステムで不可避なメ

・リスクとハザードの分析, リスク緩和戦略, リスク管理,実装の影響,予備ハザード分

・信頼性と可用性のモデリング

・論理アナライザ ・ネットワーク型組込みシステムの例: 自動車,工場自動化システム

・A/D 変換 ・光センサ、圧力センサ

・デバイスドライバの構造

・メンテナンスに関連する振る舞いのパターン

・整合性レベルの概念: 定量化とそれがライフサイクル問題に及ぼす影響

・ハードウェア冗長性アプローチ

・RTOS ツール ・OSI 参照モデル ・インタフェースにおけるアナログ処理とディジタル処理を区分する方法

・MEMS ・割り込みハンドラ

・メンテナンス通知の測定基準(ボトルネック)

・安全性重視,安全性計画の概念

・エラー検出とコード訂正

・電力解析 ・ネットワーク組織の種類

・ディジタル処理とリアルタイムの検討事項

・センサの精度と補正

・メンテナンスの性質: 欠陥の削除,アップグレード, 機能向上

・セキュリティ重視システムとその他の高整合性システム,高整合性機能: 性能の保

・ハードウェア障害を許容するソフトウェアアプローチ

・ソフトウェア管理ツール

・ネットワーク性能解析

・影響分析, メンテナンスに関連する意思決定,構成制御委員会の役割

・整合性レベルの達成に必要な主要機能に基づく設計

・ソフトウェア信頼性モデル

・プロジェクト管理ツール

・インターネットプロトコルの基本原理

・工学システムにおける構成管理とバージョン管理,他

・高性能レベルの達成に向けた各種戦略。安全性,信頼性,セキュリティの実装

・ソフトウェアフォールトトレランス手法(N バージョンプログラミング, 回復ブロッ

・インターネット対応組込みシステム

・ツールによるサポートとその性質

・整合性レベルの達成に適したアプローチをライフサイクル全体で選択する

・オペレーティングシステムとデータ構造におけるフォールトトレランス

・将来の再利用に向けたスキルの蓄積, 問題, バランス, 選択肢

・国際標準, 法的要件

・データベースと分散システムにおけるフォールトトレランス

・トランザクション処理システムにおけるフォールトトレランス

・航空宇宙, 通信, 工業制御向けのフォールトトレラントシステム

CE-ESY 組込みシステム