にシフトしつつある
時点で自分は会社を辞めています。なので、小さいサイクルをくるくる回す開発はほぼ経験していません。
大抵顧客がやりたいことを明確にして開発する、ざっくりいうとウォーターフォール型なんですかね、V型ともよばれますけど。
もちろん、どちらもいい面悪い面があると思っています。
大規模システムの上の表面部分の開発(Web画面のみ)とかであればたぶん私たちがやってきた昔ながらの手法は遅いと言われて仕方ない気がします。
部分リリースももちろん実施しますがそれは整合性を確認とれることを前提とし設計した場合のみ可能でした。
※現役はなれて結構たってしまっているので新技術の推測に対しては間違ったことを言ってるかもしれません。
アジャイル開発とスクラム 顧客・技術・経営をつなぐ協調的ソフトウェア開発マネジメント
- 作者: 平鍋健児,野中郁次郎
- 出版社/メーカー: 翔泳社
- 発売日: 2013/06/20
- メディア: Kindle版
- この商品を含むブログを見る
IT技術の進歩は早い
とはいえ、作る人材全員がその速度についていっているかというとそうでもないのが現状だと思います。
新技術に疎い人、明るい人いろいろいます。
で、引継ぎなど含めた長期開発をしていると、メンバの入れ替わりで死んでいくシステムも何度もみてきました。
それはドキュメント不備だったり(途中までしか書かれていない)コンセプトを顧客と考えていた人間がいなくなったなどいろいろな理由はありますが、で?どうししたらいいの?を現場で共有しきれていないケースみられました。
たぶんその辺のツールがたとえばTracのようなチケットだけではなくもっと良い環境が現在出来ているのだと思っています。
斜め読みしてみた
短いサイクルでくるくるまわしてりりースを繰り返す、、うん。たとえば一度作ったシステムの画面を弄るとか、新機能を追加していく、、とかだとそれで十分な気がします。ドキュメント(ノウハウ)の残し方はよくわからんけど。
いろんな記事をみるとそういう管理コストが減るので楽になるという事が書かれています。
自分の時代も、何度か社内で実験したことはあるのですが、例えばVer1完成したシステムに対して実施して固定メンバーで行える環境はある程度うまくまわりますが、やっぱり人がいなくなったり、大規模修正となるととたんに破綻していました。
どうやったらその辺うまくいくんですかね?
興味本位ですが教えてほしいです。
コア部分に手を入れてテストちびっと、、なんてありえないですからねぇ、、、
テストについて
個人的にツールをつかったテストや自動化テストも経験していますが、テストツールのテストも実施しないといけないので、安定システムのコア部分は自動化しやすいですが、コロコロ変わるフロント側のテストって自動化しにくいイメージがあります。
テストツールが古いのでエラー吐いてます、となった場合、ツールを直すのか、スキップするのか、そこだけ目視するのか。。。数万項目(下手したら数千万項目)とかあるようなシステムだとどうやるんだろう、、、っておもいましたね。
基本システム部分の定常テストみたいなものはVerが変わっても同じ結果になるはずということでパターン表だけ確認して実施していましたが、その辺のツールがどれだけ進化しているのか知りたいです。( ´艸`)
これ読むといいよみたいなのがあるといいのですが。。。
システムテスト自動化 標準ガイド (CodeZine BOOKS)
- 作者: Mark Fewster,Dorothy Graham,テスト自動化研究会,伊藤望,玉川紘子,長谷川孝二,きょん,鈴木一裕,太田健一郎,森龍二,近江久美子,永田敦,吉村好廣,板垣真太郎,浦山さつき,井芹洋輝,松木晋祐,長田学,早川隆治
- 出版社/メーカー: 翔泳社
- 発売日: 2014/12/16
- メディア: 単行本(ソフトカバー)
- この商品を含むブログ (4件) を見る
なんとなくなんですが
最近のシステム、特に一般人が使うWebシステムの品質低下がみられるのはこの辺に問題があるんじゃないかと逆に心配しています。
なんでこんなバグがでてるのにリリースしてるんだろう、、、って思うこともります。
それが些細なことだ、、と判断しているんだとおもうのですが、それって私の概念だと、エンドユーザ軽視なんですよね。
ちょっと不便かけるけどリリース優先(顧客)で、エンドユーザに少し不便かけるけどリリースすることが重要っていう場面も良く遭遇しました。
でもエンドユーザが満足しな=顧客もダメージがあるはずなんですけど。理解してくれませんでしたね。私が神経質なだけなのかな?。
顧客的にはライバルに対し1日でも1時間でも早くリリースすることが重要ってこともあるのでなんともいえませんけど。
話はずれて行っていますが
規模の小さいシステムで大きな利益が見込めるようなシステムが求められる業界ならしかたないのかなーと感じ、スマホアプリとかゲームなんかはまさにその代表例なのかと思います。
今の時代はそっちのほうが儲かるのかな?よくわからんちんです。
まとめ
夜中のボーーっとしてるときに書いてる記事なので何が言いたいのかわからん内容になっていますが、結局は今の開発手法ってどうなん?ってことなんですよ。
古い考え方しかないので、新しい技術にふれてみたくなってる今日この頃であります。