今日の学習内容
使用教材:【令和7年度】 いちばんやさしい ITパスポート 絶対合格の教科書+出る順問題集 (絶対合格の教科書シリーズ)
勉強時間:1時間
学習範囲:
Lesson06-01「システム開発技術」
Lesson06-02「システム要件定義」
Lesson06-03「システム設計」
Lesson06-04「プログラミング」
Lesson06-05「テストとソフトウェア受入れ」
Lesson06-06「運用プロセスと保守プロセス」
Lesson06-07「ソフトウェアの開発モデル」
出る順!過去問&完全解説
今日学んだ内容のポイントまとめ
Lesson06-01「システム開発技術」
システム開発とは、必要なハードウェアを調達し、必要な機能を持ったソフトウェアを新たに作ること
システム開発の開発モデルでITパスポート試験でよく出題されるのは「ウォーターフォールモデル」。
ウォーターフォールモデルでは、
1.システム要件定義
2.システム設計
3.プログラミング
4.テスト
5.ソフトウェア受入れ
の順で開発を行っていく。
Lesson06-02「システム要件定義」
システム要件定義ではシステムに必要な機能や性能について決める。
システム要件には機能要件と非機能要件の2種類がある。
機能要件とはユーザーも把握している機能のこと。
非機能要件とは処理時間等、ユーザーは把握しきれていない機能のこと。
Lesson06-03「システム設計」
システム設計とはシステム要件定義で決めたことをもとにして、システムの設計図を書き起こすこと。
システム設計のプロセスは下記4つの工程に分けられる。
・システム方式設計
・ソフトウェア要件定義
・ソフトウェア方式設計
・ソフトウェア詳細設計
システム方式設計とはシステム要件定義プロセスで洗い出したシステム要件を「ハードウェア」「ソフトウェア」「手作業」のいずれかに振り分けるプロセスのこと。
ソフトウェア要件定義とはソフトウェアの要件(機能や性能)を決めるプロセスのこと。
代表的なソフトウェア要件は「インタフェースの要件」「データの要件」がある。
ソフトウェア方式設計とはソフトウェア要件定義で決めたソフトウェア要件をプログラム単位まで分割するプロセスのこと。
ソフトウェア詳細設計とはソフトウェア方式設計でプログラムの単位まで分割された要件をさらにコーディングができる単位まで分割するプロセスのこと。
具体的にはフローチャート(流れ図)を作成すること。
Lesson06-04「プログラミング」
プログラミングとはプログラム言語の文法にしたがって処理手順を書くことで、ソフトウェア詳細設計終了後に行う。
流れ図に従ってソースコードを記述することをコーディングと言う。
人間が書いたプログラムを機械語に変換することをコンパイルと言い、この処理を行う機能のことをコンパイラと言う。
Lesson06-05「テストとソフトウェア受入れ」
テストとはシステムが仕様どおりに動くか確認する工程のこと。
テストは種類は下記の4つ。
テスト名 | テスト内容 |
単体テスト | プログラムに誤りがないことを検証する。ホワイトボックステストと呼ばれるテスト手法で行う。 |
結合テスト | プログラム同士のインターフェースが合うかを検証する。ブラックボックステストと呼ばれるテスト手法で行う。 |
システムテスト | システム要件(機能と性能)が仕様通りに動作するかを検証する。 |
運用テスト | 本番環境でシステムを運用し、業務要件どおりにシステムが動作することを検証する。 |
ホワイトボックステストとは内部構造を分析して行うテストのこと。
ブラックボックステストとは内部構造を考慮せず、システム要件定義書どおりに動作するかを確認するテストのこと。
ソフトウェア導入とは発注者側の本番環境にソフトウェアをインストールする工程のこと。
ソフトウェア受入れテストとはシステムが正常に稼働することを利用者側が確認するテストのことで検収の意味合いが強い。
Lesson06-06「運用プロセスと保守プロセス」
運用プロセスとは完成したシステムを本番環境で動かす工程のこと。
保守プロセスとは稼働中に見つかったバグを修正したり、ソフトウェアに新機能を追加したりする工程のこと。ITパスポート試験では「ソフトウェア保守」という用語で出題される。
Lesson06-07「ソフトウェアの開発モデル」
ウォーターフォールモデルとはソフトウェアの開発プロセスを上流工程から下流工程へ向かって一直線に順番に手法のこと。
計画が立てやすいメリットがある反面、修正作業がとても大変というデメリットがある。
アジャイル開発とは開発する機能を小さい谷に分割して、優先度の高いものから短期間に開発とリリースを繰り返す開発モデルのこと。ウォーターフォールモデルのデメリットを解決するために作られた開発モデルのため仕様変更に強いが、大規模開発には向いていない。
DevOpsとは開発担当者と運用担当者が密接に連携してシステムを開発する手法のこと。
テスト駆動開発とは、開発順序を逆にして単体テストを通るようにプログラムを開発する手法のこと。
ペアプログラミングとは2人のプログラマが1つのパソコンを使ってソフトウェアを開発する手法。1人が休んでも、もう1人が作業ができ、またOJTにもある。
リファクタリングとはプログラムの機能仕様は変えずに、内部構造を変えること。不具合が減ったり、プログラムの保守が容易になる。
出る順!過去問&完全解説
15問中15問正解
感想・気づき・つまづいた点
「要件定義プロセス」「システム要件定義」「ソフトウェア要件定義」と要件定義が3つも出てきたり、「単体テスト」「結合テスト」「システムテスト」「運用テスト」とテストが4つも出てきたりと同じような用語がたくさん出てくるので、混乱します。
一応これらはは階層であったり、順番で覚えれば覚えられそうなので、イメージで覚えていこうと思います。
第6章開発技術で開発の大まかな流れは確かにわかりますけど、実際に仕事をしてみないと本当の流れと言うか、大変さと言うものは理解できないんだろうなと思いました。
明日の予定
昨日の目標どおり第6章は終わったので、明日からは第7章に突入します。
明日の目標はLesson07-01「プロジェクトマネジメントと3つの制約」~Lesson07-06「プロジェクトリスクマネジメント」を学んで
第7章プロジェクトマネジメントを終わらせることです。
毎日「出る順!過去問&完全解説」までを目標に勉強していますが、明日の分も今日に引き続き結構ボリュームありますね。
明日もITパスポートの勉強頑張ります。
コメント