7. ソフトウェア開発管理技術

Chapter 7

ソフトウェア開発管理技術の用語を順に解説します。

マイクロサービス | 応用情報技術者試験

マイクロサービスとはマイクロサービス(Microservices)は、1つの巨大なシステムを、機能ごとに独立した複数の小さなWebサービス(サービス)に分割して開発・運用するシステム設計の手法です。従来のシステムが「すべての機能を1つにまとめた巨大なプログラム(モノリス)」だったのに対し、マイクロサービスでは機能ごとにデータベースやサーバープログラムを分け、それらがネットワークを通じて互いに通信しながら動作します。これにより、一部分の修正がシステム全体に影響を与えにくくなり、開発スピードの向上や柔軟な拡張が可能にな

記事を読む この本で読む

コンテナオーケストレーション | 応用情報技術者試験

コンテナオーケストレーションとはコンテナオーケストレーションは、アプリを動かすための「コンテナ(OS上で仮想的に独立した実行環境を作る技術)」を、大量かつ自動的に管理・運用する仕組みのことです。Webサービスが大規模になると、何百個、何千個ものコンテナを同時に動かす必要があり、これらを人間が手動で監視・管理するのは不可能です。コンテナオーケストレーション(代表例:Kubernetes)を使えば、コンテナの起動や停止、アクセスの偏りを防ぐ負荷分散、異常終了したコンテナの自動再起動などをシステムがすべて自動で行ってくれ

記事を読む この本で読む

DevOps | 応用情報技術者試験

DevOpsとはDevOps(デブオプス)は、システムを開発する「開発(Development)チーム」と、システムを安定稼働させる「運用(Operations)チーム」が密接に連携し、お互いに協力し合うことで、新しい機能や修正をより早く、高い品質でユーザーに提供し続けるための開発手法や組織的な文化のことです。開発チームが「新しい機能をどんどん追加したい」と考え、運用チームが「トラブルを避けるためにシステムを安定させたい(変化を避けたい)」と考えがちで対立しやすい問題を、ツールによる自動化や活発なコミュニケーション

記事を読む この本で読む

CI/CD | 応用情報技術者試験

CI/CD(継続的インテグレーション/継続的デリバリー)とはCI/CDは、ソフトウェアの「ビルド(プログラムを動く状態にする処理)」「テスト」「本番サーバーへの配布(デプロイ)」という一連の開発手順を自動化し、安全かつ高頻度でリリースを行うための仕組みです。CI(Continuous Integration:継続的インテグレーション)により、コードを変更するたびに自動でテストが実行されてバグが早期発見され、CD(Continuous Delivery:継続的デリバリー/デプロイ)によって、テストを通過したプログラム

記事を読む この本で読む

テスト駆動開発 | 応用情報技術者試験

テスト駆動開発(TDD)とはテスト駆動開発(TDD:Test-Driven Development)は、実際の製品プログラムを書く前に、まず「そのプログラムが満たすべき仕様を確認するテストコード」を先に書き、そのテストに合格するように少しずつ製品プログラムを実装していくソフトウェア開発の手法です。「①失敗するテストを書く(Red)」「②テストを通る最小限のコードを書く(Green)」「③コードを綺麗に整理する(Refactor)」という3つのステップ(サイクル)を小刻みに繰り返すことで、バグが少なく、設計のクリーン

記事を読む この本で読む

リファクタリング | 応用情報技術者試験

リファクタリングとはリファクタリング(Refactoring)は、プログラムの「外側から見た動作(仕様や挙動)」は一切変えずに、プログラムの「内側の構造(コードの綺麗さや整理状況)」を整理して、読みやすく・修正しやすく改善する作業のことです。ソフトウェアは機能追加を繰り返すとソースコードが複雑になり(スパゲッティコード)、バグが発生しやすくなったり開発効率が落ちたりします。定期的にリファクタリングを行うことで、コードの健全性を保ち、将来の機能追加や変更に耐えられるシステムを維持できます。具体例例えば、同じ計算処理や

記事を読む この本で読む
試験でのポイント

公式資料へのリンクと確認日を各記事に掲載しています。