プログラミングはシステム開発の一部である
こんにちは!CODE CLUB965のKです!
今回はシステム開発について記事に書こうと思います。
プログラミング初学者の方でまだシステム開発が具体的にどんなものかイメージできていない方は、読んでみてください。
プログラミングだけができてもシステムは開発できない
プログラミングだけができてもシステムの開発はできません。
システム開発には、以下の工程があり、プログラミングを行うのはその一部なのです。
1. 要件定義
2. 設計
3. 開発(プログラミング)
4. テスト
5. リリース
6. 運用
それぞれのフェーズでどのようなことを行うのか簡単に解説をしていきます。
1. 要件定義
どのようなシステムを開発するのかを決めます。
お客様からオーダーを受けて開発をする受託開発であれば、お客様からヒアリングをして、そのヒアリング結果を踏まえて、システムの仕様を作成します。
ここを間違えると、お客様が望まないシステムを開発してしまうことになるので、とても重要な工程になります。
プログラミングと同じように、要件定義にも技術があります。
必要な要件を漏れなく定義するための技術です。
2. 設計
名前そのままですが、どのようにシステムを構築するかの設計を行います。
何をどこまで設計するかはプロジェクトによります。
どのようにコードを書くかまで細かく設計することもあれば、DB設計くらいまでしかしないこともあります。
私は、基本的には以下の2つだけを作成しています。
・システム全体構成図
・DB設計(ER図)
3. 開発(プログラミング)
みなさんが勉強されている工程ですね。
ここまで来て、ようやく開発に入ります。
4. テスト
システムの品質を担保する工程です。
実は、テストにも技術が必要です。
100%バグが無いと言い切れるようにテストをすることは不可能なので、効率良くテストを実施して、良い品質のシステムに仕上げるには技術が必要なのです。
これも確立された方法があるので、学ぶことでテストの技術を向上させることができます。
5. リリース
開発して自分のPC内で動くだけでは意味がないので、システムをインターネット上に公開する必要があり、その公開作業がリリースです。
ネットワークやサーバーの知識が必要になり、プログラミングとは全く異なる知識・技術を習得する必要があります。
6. 運用
リリースができた後には、運用が始まります。
リリースしたシステムがトラブルで止まったりする可能性もあるので、その時には復旧作業をしないといけません。
ここでも、ネットワークやサーバーの知識が必要になるのです。
プログラミングの学習コストが1番高い
システムを開発して、リリース・運用していくには、たくさんの工程があり、たくさんの知識が必要であることがわかって頂けたでしょうか。
とは言え、習得が1番大変なのは開発(プログラミング)の技術です。
プログラミングだけできるようになれば、システムの開発ができるわけではないということを踏まえた上で、引き続き、プログラミングの学習を頑張ってもらえたらと思います!
全体象を知った上で1部を学習するのと、全体像を知らずに1部を学習するのとでは、やはり全体像を知った上での学習の方が良いので、今回はこの記事を書かせてもらいました!
それでは、また!