システム開発の初歩

記事
ビジネス・マーケティング
初歩読んで欲しい人

•社内でシステム開発を行っている。
•it企業に就職、転職した。
1.システム開発工程
システムができる流れを理解することは、大切です。あと、会話でいっぱい出てくると思います。システム開発は、業界用語が多く、当たり前ののように使われます。
この業界の悪いところです。お客様が業界のことをしらかいのに、関係なく話すことが多いです。
1.要件定義
どのようなシステムを作りたいかをヒアリングして、せいりします。
ポイント
•お客様が、開発対象のシステムをどのように使うのか?
→業務フロー
•あくまでも、お客様目線が必要で、お客様の業界の言葉で記載すべきです。
・システムを導入する目的

•売上アップ
→新規事業
→売上目標は?
•コストダウン

→業務効率アップ
→こすと?時間?
→目標直

2.基本設計
•システム構成
→大きなシステムの場合は、細分化し、どのようなサブシステムがあり。それぞれのサブシステムがどのように関係しているか?どのような人が、システムをどう使うか?
•ネットワーク構成
サーバを何処に何台?費用?
→セキュリティーは大丈夫か?
→データの保全性
→バックアップや災害対策は、大丈夫か?
→どのような障害を想定し、それをどのように対処することを想定しているか?
→」レスポンス
→同時に利用する数と、アクセスが集中する時間帯などを考慮し、サーバ構成を考える。
アプリケーション構成
•開発言語楽
→プログラムには、多くのプログラミング言語が余す。どれを選択するかも、とても大切です。
→サーバアプリケーション、選択したプログラム言語が動くための最適なアプリケーションこうせい
データベースの選択
データベースも多くの種類が存在します。
→処理速度、開発のしやすさなどを考慮して選択します。
その他アプリケーション 
→バックアップアプリケーション 
→バックアップのしやすさも大事ですが、そこばかりに目を向けると忘れがちなのが、リストアです。リストアのしやすさも大事です。あと、バックアップに使うディスク容量も大切ですね。
→セキュリティ
社外や社内から、悪意を持ったアクセスや攻撃から、どのようにまもるか?

基本設計を基に、開発効率など。基本設計の要件を満たすために、具体的に、どのように設計するか、落とし込んで行きます。

3.詳細設計
プログララマが作りやすいようにせっけいします。勿論、基本設計の用件を満たしてることが重要です。
詳細設計は、内部仕様と外部仕様に分かれます。
1-1.外部仕様
お客様から見える部分の設計
•画面設計
どのような画面にするか?画面のフィールドは、データベース設計がおわってないと難しいです。
ここでようやく、お客様が何を作ってらのかをイメージし易くなり、とても大切な設計です。
ここで実際にマックを作りお客様に使うイメージを持ってもらうことも大切です。
システム開発では、ソフトウェアなので、まだないものをイメージしてもらうのは、とても難しく、完成後にお客様の想定とギャップが生まれることが多いです。このギャップを少なくするのが設計です。

•チェック仕様
ユーザが入力したデータをデータベースに格納するために、データベースの制約通りになっているか?
•データベースアクセス仕様
データベースへのあくせは、3種しかありません。新規作成、データの更新、データの削除
削除したデータは、当然、復活が難しいので、間違って削除した場合を想定して設計します。


1-2.内部仕様
お客様には、見えない部分ですが、プログラマには、とても大切です。
画面とデータベースをどのようにつなけまるか?
データベース設計
テーブルの構成とそのテーブルの要素フィールド、そして、フィールドの制約。入るデータの型、入るデータの種類をめいかくにします。


ログ設計
どのようなログをのこすのか?
ログの役割。
→ユーザの操作の履歴
→データベースへの履歴
・将来の発展のため、調査分析用、
→いつ?誰が?どこから?どのようなアクセス、操作をしたのか?をログに保存します。
システムを実際に使い始めて、障害が発生した時にログを分析します。
ログの設計しだいで、トラブル対応のスピードが変わります。
私は、とても大切だと思ってますが、ログを正しく、設計されないことが多いです。
4.開発
詳細設計を基に開発を進めます。
プログラマが詳細設計書を読んで、プログラム言語を書いていきます。
プログラマが詳細設計を理解しないまた作るとバグの原因となります。

5.品質管理
また、別で記載します。
5-1.画面単体試験
詳細設計が正しく実装されているかを一つ一つチェックします。

5-2.結合試験
画面間でデータの引き継ぎが上手くいってるかなどをチェックします。
入力されたデータが他の画面で正しく表示されているか、そのデータを正しく更新できるか?画面に跨った試験をおこないます。
ここでバグが出ると詳細設計をゆり直すことにらなることが多く、バグを修正するのにとても時間がかかりたす。

6.運用試験
お客様が実際に使雨方法でテストをします。業務フローに基づいて試験を行います。
このように、システム開発は、とても複雑です。中々、スケジュール通りに開発が進まないことが多いです。あと、様々な知識が必要ですし、木を見て森を見ず森を見て木を見ずと、全体を見たり、細かく見たりと視点を変えながら見ていくことが重要です。


サービス数40万件のスキルマーケット、あなたにぴったりのサービスを探す