あれ、これ書かなかったっけ?
開発費を削減したい場合、やみくもに自動化してもうまくいかない
現在において、開発期間の短縮、人件費の圧縮ができるのは、3点だと思う
(1)要求仕様におけるUI関連仕様の削減
(2)開発、運用、テスト環境の標準化・自動化
(3)テスト自動化・品質向上
これ以外の、設計部分の自動化は、導入コストに比べると、あまり効果が
出ないと思う。現時点でも、かなり行われている。
以下、それぞれについてみてみる
■(1)要求仕様におけるUI関連仕様の削減
従来ユーザーインターフェースは紙でUI仕様書を作成し・・
としていたが、プロトタイプでUIを作成、さらにはHTML5で
記述して、アジャイルによりコードを即座に作成していくこと
により、UI仕様書作成のための時間と人が削減できる
また、JQuery等の利用により、UIのコーディング量は、
一時的に減っている。そのため、画面修正を即時にでき、
アジャイルを適用することにより、ユーザーと開発者間の
コミュニケーション量を増大させることが出来、その分、
意思疎通不足による工数は削減された
(一方、意思疎通しすぎによる、ユーザーが決められないための
工数は増大中なんだけど・・・)
■(2)開発、運用、テスト環境の標準化・自動化
従来は、いろんなパソコンに開発環境をいれ、
開発が終わったら、テスト環境にインストールし、
全部テストが終わったら、運用環境を構築し・・・
・・・といちいち別々に、手作業で構築していた。
これが仮想化技術(開発用のクラウドを含む)や
コンテナ技術により、仮想環境を一回構築すれば、
その環境をコピーして、みんなが使えるようになった。
もう、この時点で、個別のインストールがなくなるということ、
環境の違いによるバグが生じにくくなったというメリットがあり、
これだけで、工数は大幅に削減している。
さらに将来的には、Chef、Dockerによる自動環境構築、
Serverspecによる環境テスト等もあるんだろうけど、
そこまで行かなくても、効果は増大。
■(3)テスト自動化・品質向上
回帰テストの自動化、とくにUI関係の自動化による、工数削減効果が
期待されている。
テスト観点により、テスト品質をあげることに関しては、すでに
行われているが、問題は、要求仕様、UI,プログラミングの一貫した
テストに関しては、アイデアレベルではあるものの、実用化には
至っていない。
たぶん、今後大きく工数削減・費用削減ができるのは、
テストだと思う(自動化だけでなくSHIFT、VALTESのような第三者テストを含めて))
開発費を削減したい場合、やみくもに自動化してもうまくいかない
現在において、開発期間の短縮、人件費の圧縮ができるのは、3点だと思う
(1)要求仕様におけるUI関連仕様の削減
(2)開発、運用、テスト環境の標準化・自動化
(3)テスト自動化・品質向上
これ以外の、設計部分の自動化は、導入コストに比べると、あまり効果が
出ないと思う。現時点でも、かなり行われている。
以下、それぞれについてみてみる
■(1)要求仕様におけるUI関連仕様の削減
従来ユーザーインターフェースは紙でUI仕様書を作成し・・
としていたが、プロトタイプでUIを作成、さらにはHTML5で
記述して、アジャイルによりコードを即座に作成していくこと
により、UI仕様書作成のための時間と人が削減できる
また、JQuery等の利用により、UIのコーディング量は、
一時的に減っている。そのため、画面修正を即時にでき、
アジャイルを適用することにより、ユーザーと開発者間の
コミュニケーション量を増大させることが出来、その分、
意思疎通不足による工数は削減された
(一方、意思疎通しすぎによる、ユーザーが決められないための
工数は増大中なんだけど・・・)
■(2)開発、運用、テスト環境の標準化・自動化
従来は、いろんなパソコンに開発環境をいれ、
開発が終わったら、テスト環境にインストールし、
全部テストが終わったら、運用環境を構築し・・・
・・・といちいち別々に、手作業で構築していた。
これが仮想化技術(開発用のクラウドを含む)や
コンテナ技術により、仮想環境を一回構築すれば、
その環境をコピーして、みんなが使えるようになった。
もう、この時点で、個別のインストールがなくなるということ、
環境の違いによるバグが生じにくくなったというメリットがあり、
これだけで、工数は大幅に削減している。
さらに将来的には、Chef、Dockerによる自動環境構築、
Serverspecによる環境テスト等もあるんだろうけど、
そこまで行かなくても、効果は増大。
■(3)テスト自動化・品質向上
回帰テストの自動化、とくにUI関係の自動化による、工数削減効果が
期待されている。
テスト観点により、テスト品質をあげることに関しては、すでに
行われているが、問題は、要求仕様、UI,プログラミングの一貫した
テストに関しては、アイデアレベルではあるものの、実用化には
至っていない。
たぶん、今後大きく工数削減・費用削減ができるのは、
テストだと思う(自動化だけでなくSHIFT、VALTESのような第三者テストを含めて))