Chapter 1: ソフトウェア開発の全体像
開発の流れと生成AIがもたらす変革
1.1 ソフトウェアとは何か
「ソフトウェア」とは、コンピュータに「何をすべきか」を伝える指示書のことです。スマートフォンのアプリ、会社の業務システム、Webサイト——これらはすべてソフトウェアです。
ソフトウェアは大きく2種類に分けられます。
| 種類 | 役割 | 例 |
|---|---|---|
| システムソフトウェア | コンピュータ自体を動かす | Windows、macOS、Android |
| アプリケーションソフトウェア | 特定の目的のために使う | Excel、Chrome、Slack |
この研修で作るのは主にWebアプリケーションです。ブラウザから使えるソフトウェアで、会社の在庫管理システムや顧客向けポータルサイトなどが例として挙げられます。
ソフトウェアはどうやって動く?
人間が書いたソースコード(プログラムの設計図)を、コンピュータが理解できる命令に変換して実行します。料理に例えると、ソースコードはレシピ、コンピュータはそのレシピ通りに料理する「調理師」です。
1.2 開発の流れ
ソフトウェアは思いついた瞬間に完成するわけではありません。一般的に以下の5つのフェーズを経て完成します。
各フェーズをもう少し詳しく
要件定義 — ユーザーや上司と「何が必要か」を話し合い、言語化する段階です。「顧客の注文履歴を一覧表示したい」「月次レポートを自動で出力したい」などを整理します。
設計 — 要件をもとに、画面の構成・データの持ち方・システムの構成などを決めます。家を建てるときの「設計図」と同じです。
実装 — 実際にコードを書く段階です。設計に基づいて、プログラミング言語でソフトウェアを作ります。
テスト — 作ったソフトウェアが正しく動くか確認します。意図した通りに動かない部分(バグ)を見つけて修正します。
デプロイ — 完成したソフトウェアを実際のサーバーに配置して、ユーザーが使える状態にします。
1.3 なぜ生成AIが開発を変えるのか
2022年末にChatGPTが登場して以来、ソフトウェア開発の現場は大きく変わりつつあります。
以前の開発との違い
以前:コードを書くにはプログラミング言語を深く習得する必要があり、非エンジニアがソフトウェアを作ることは現実的ではありませんでした。
現在:生成AIに「こんなものを作りたい」と日本語で伝えるだけで、コードの大部分を自動生成できます。エンジニアは書く量が減り、設計・レビュー・改善に集中できます。
生成AIの得意なこと・苦手なこと
| 得意 | 苦手 |
|---|---|
| 決まったパターンのコードを素早く生成 | 要件の曖昧さを読み取ること |
| ドキュメントや説明文の作成 | まったく新しいアイデアの創出 |
| バグの原因候補を提示する | 「正しいか」を保証すること |
| 複数の言語間の変換 | ビジネス上の判断・意思決定 |
重要なポイント:生成AIはあくまで「優秀なアシスタント」です。最終的な判断や責任を持つのはあなた自身です。AIが生成したコードでも、内容を理解してレビューする力が求められます。
1.4 この研修で身につくこと
この研修は、IT未経験の非エンジニアが、生成AIを活用して業務システムを作れるようになることをゴールとしています。
Part 1(本章)で学ぶこと
- Ch.1(本章) — ソフトウェア開発の全体像を把握する
- Ch.2 — ターミナル(コマンドライン)の基本操作
- Ch.3 — ファイルとフォルダの構造・パスの読み方
- Ch.4 — テキストエディタ VS Code の使い方
- Ch.5 — Markdown でドキュメントを書く
- Ch.6 — JSON / YAML などのデータ形式を読む
この研修を終えると
- ターミナルで基本的なコマンドを打てる
- コードファイルをエディタで開いて読める
- 生成AIへの指示(プロンプト)を適切に書ける
- 簡単な業務改善ツールを自分で作れる
プログラミングの経験がなくても大丈夫です。一歩一歩、一緒に進んでいきましょう。