開発フェーズのいろは その4
ようやく最終回を迎える開発フェーズのお話しです。
最後はシステムテストと受入テスト(UAT)についてお話ししたいと思います。
テストフェーズも終盤になってくるこの辺では運用テストというフェーズを設けたりシステムテスト前に統合テストを行ったりと少しずつ違う場合もあります。
その辺はバリエーションとみて頂けると幸いです。
システムテスト
システムテストとは?
システムテストとは今まで部分的に確認してきたシステムを頭からお尻まで全て通しで確認するテストになります。
テストする方法としてはシナリオテストと呼ばれる物が多いかと思います。
実際のお客さまや業務のパターンによってどのようにシステムが運用されるか確認する事になるので運用テストと呼ばれる事もあります。
具体的な成果物は?
こちらもテストケースが分かる資料とテスト結果をまとめる資料になります。
テストの時はずっとそうですねw
作業のポイント
このフェーズでは業務的な知識がかなり必要になってきます。
どのようなテストケースを実施した際『どのようになっていれば正しいのか』を判断する必要があるのでそのためにはお客さまの業務上どうするつもりなのか、その通りに出来ているのかを考えられるだけの知識が必要になるのです。
受入テスト(UAT)
受入テストとは(UAT)とは?
こちらのテストは今までと少し違ってテストの主体はシステム開発を依頼したお客さまになります。
お客さまが納品されたシステムのテストを実施し実用に耐えうるか判断するためのテストとなります。
ベンダー側としてはお客さまが初めて見るシステムを上手にテスト出来るよう準備・サポートする必要があります。
具体的な成果物は?
お客さま側が主体となるのでお客さまマターな部分はありますが、やはりテストケースの資料と結果は必要になります。
システムテストのテストケースをベースに、どんなテストをしたいのか対話しながら作成する必要があるので調整の時間が掛かるかもしれませんね。
作業のポイント
ここで重要になるのは『UATでお客さまが受け入れOKしてくれないとシステム開発の費用はいただけない』と言う事です。
システムの請負開発は毎月働いてればお金を貰える訳では無く発注頂いたシステムを納品し、それをお客さまが受け入れ(検収と言います)してくれてはじめて請求することができるのです。
そのためにこのフェーズは非常に重要と言われています。
おわりに
以上でシステム開発のフェーズについての説明は終了となります。
長々と説明してしまいましたが少しでも参考になって頂けると嬉しいです。
特に『システムエンジニアはプログラムを作っているのではなく、システムを作っている』という認識がこのnoteを通じて伝わってくれたらこれに勝ることはありません。
ちなみにシステム開発の手法には今回説明したウォーターフォールの他にアジャイル開発というものもあります。
もちろん勘所など違いはありますがどちらもアプローチが違うだけで良いシステムを作ろうとする為の手法に違いはありません。
ひょっとしたら両方の良い部分を取り込んだ新しい手法が発明されるかもしれませんねw