Upload
morita-hideyuki
View
1.103
Download
1
Embed Size (px)
Citation preview
Good Software
2010 オブラブ2010夏デザイン倶楽部 森田秀幸(emeitch)
自己紹介
名前: 森田 秀幸
職業: プログラマ
ときどき執筆
Twitter: @emeitch
2006年にESMへ
•アジャイルな開発というものを実践している現場で直に触れ、肌で感じてみたいという思いで転職。
•それから4年ほど経った。
4年で感じたこと•アジャイルな考え方やプラクティスを導入することで、うまくソフトウェアを作れるようになってきたな、という実感を持った。
•しかしその一方で、煮え切らない思いも募ってきた。
煮え切らない思い
確かにソフトウェアをうまく作れるようにはなってきたけれど、それが本当の目的だったのだろうか...?
否
私の真の目的
当然ソフトウェアをうまく作れるようにはなりたいけれど、少なくとも私が本当にやりたかったこと、それは良いソフトウェアを作れるようになることだ。
似て非なる
ソフトウェアをうまく作る
≠
良いソフトウェアつくる
良いソフトウェア
良いソフトウェアとは、価値が高いソフトウェア
価値が高いソフトウェア価値 = 嬉しさ ÷ 負担
嬉しさ(ベネフィット) ... 機能的 / 感性的
負担(コスト) ... 金銭的 / 時間的 / エネルギー / 精神的
負担に対して嬉しさの割合が高いソフトウェアが価値の高いソフトウェア、つまりは良いソフトウェア。
誰にとっての•開発メンバー•開発会社•顧客•社会•そして何よりユーザ
アジャイルは価値を高めないのか?
•嬉しさを作り上げて行く、という意味では大きく貢献できる。負担の軽減にも貢献できるかもしれない。
•しかし、そもそも何をつくれば「嬉しさ」につながるのか? という部分については何もサポートされない。
アジャイル開発
•「どうやって作って行くべきか?」という問いに対する解の一端を見ることはできる。
•しかし、そもそも「何を作るべきか?」という問いには答えてはくれない。
どうすればいいの?•アジャイル開発が広がりつつある今、「どう作るべきか?」を超えて「何を作るべきか?」というポイントが、今後ボトルネックとなるのは確実です。
•何が「嬉しさ」なのか、というものを探求する術が必要です。
例えばUXD/UCD•User Experience Design•User Centered Design
機能、UI、使い勝手といった要素を包括しつつ、さらにそれを超えてユーザにとっての嬉しさを追求し、デザインしていく手法。
他にもある•何故作るのかを追求する•理念やビジョンを明確にするなどの経営的手法
•Value Product Owner•スクラムのプロダクトオーナー側がどうやって「価値」を作り上げるかのスキルセット。Kai Gilb考案。
FAQQ1.言いたいことは分からなくもないのですが、どちらかといえば私はソフトウェアをうまく作れることに注力したいのですが?
A.スクラムでも価値を定義づけるという役割は開発者でなく、プロダクトオーナーに与えられていますので、自分はうまく作ることに注力して、価値の定義付けはプロダクトオーナーにその役割を任せるというあり方は全く問題ないと思います。
ただしその場合、開発者は価値を高めるという考え方を、プロダクトオーナーはうまく作るという考え方を、お互いに尊重しあうという心は忘れていはなりません。陰陽の心です。
FAQQ2.私は(バグが無い|コードが綺麗な|アーキテクチャが素晴らしい|e.t.c.)ソフトウェアが良いソフトウェアだと思ってるんですが。
A.良いソフトウェアの定義は、あくまで私の定義です。それぞれが己の信じる「良いソフトウェア」を定義すればいいと思います。ただし、あなたの考える良いソフトウェアが、ユーザの笑顔に直結しているかどうか一度は考えてみた方がよいと思いますよ。
FAQQ3.価値の高いソフトウェアとか言っても、結局はお客さんの言う通りに作らないと、食べて行けないんだよねぇ...。
A.いわゆる受託ビジネスでは、契約内容、開発会社と発注元の関係、プロジェクトの体制などの要因で、ソフトウェアの価値を高めるという観点で開発を進めるは難しい、という場合がほとんどだと思います。それに対する打開策を私は持っていませんが、ステークホルダーを説得するなど政治的に解決するよう立ち回る、受託の契約内容を改めてみるなどの方法で解決できるかもしれません。また過激な方法ですが、受託というビジネスを見限り、自分達で価値を定義付けできるサービスやパッケージビジネスに転向してしまうのも手かもしれません。
まとめ•「嬉しさ」を追求し、「負担」をできるだけ軽減することで、価値を高めたソフトウェアが良いソフトウェア。
•これからも「どう作るか?」という観点は重要であるが、「何が嬉しさなのか?」という観点がより重要となってきている。そこに対応していくべき。
ご清聴ありがとうございました