ObjectSquare [2008 年 3 月号]

[レポート]


Developers Summit 2008
〜越境しよう!コードで世界を変えよう!〜
参加レポート

株式会社オージス総研
大村伸吾

去る2月13,14日(水,木)、今年も目黒雅叙園において、ソフトウェア開発者たちの祭典Developers Summit 2008が開催されました。
今年は『〜越境しよう!コードで世界を変えよう!〜』というスローガンのもとに

といった様々な視点で、日本における各分野のコミュニティリーダー達による熱い講演が行われました。
この記事では、多少偏りがありますが、筆者らが参加したセッションで受けたほとばしる情熱を交えながらセッションの内容をレポートします。

もくじ

[開発プロセス]
海外におけるアジャイルの現在

平鍋健児氏 / 株式会社チェンジビジョン 代表取締役社長

このセッションでは、まずアジャイルの現状を概説し、

というソフトウェア開発の未来を一緒に考えることのできる熱いご講演でした。

アジャイルの現状

ソフトウェア開発では、「技術」「プロセス」「人の心」が一体となってソフトウェアを生み出しますが、「人の心」が及ぼす影響は50%だと確信する。その「人」をキーワードにして1990年代にFDD,Crystal,DSDM,ASD,XP,SCRUM等の手法が生み出され、2002年にアジャイル宣言を持ってそれらのキーワードを包括するような"アンブレラワード"としての「アジャイル」が生まれた。それ以降も発展を続けアジャイルの国際会議であるAgile2007では次のようなキーワードが目立った。

また、特徴的なものとしては"ISO9001 and Agile","CMMI and Agile"といった一見アジャイルと相反すると取られがちな標準と呼ばれるものについてもアジャイルは共存可能なのだという意見のセッションもあった。

Agile2007は、1000名以上の参加者がホテルに缶詰めになって、1週間アジャイルについてだけ議論をする会議である。参加者にはGoogle, Yahoo, Salesforceといった大企業や、ユーザ企業の参加者が大多数を占めた。近年の傾向として、次のような事が見えつつある。

TPS/Leanとアジャイル

Leanとは、大きく言えば「顧客が定義した価値の流れ(Value Stream)を作り、それをスムーズにムダを抑えた形で流せるような状態を作る」という考え方である。もう少し詳しく言えば

これらの考え方はTPSの中にもさまざまな場所に現れている。

分割の仕方(MMFで切る。層で切らない)

Leanの考え方でムダなく作るという観点でいえば、テストされていないコードを作ることはムダだと考えられる。ムダなくValue Streamを作りだすためには機能単位に作るべきである。Leanではそれをもう少し抽象化してMinimum Marketable Feature、すなわち顧客にとっての価値のある最小単位の機能という風に表現している。

これまでは層で切って作られることが多かったが、これからはMMF(機能)で切って作るべきである。MMFごとに作っていけば当然先に作った部品の変更を余儀なくされるが、それをサポートするのがオブジェクト指向、自動テストといった技術なのだ。なので今では「オブジェクト指向」という技術を「変更容易性・テスト容易性を提供する技術」と捉えている。

Mary Poppendick氏も"These days we do not program software module by module; we program software feature by feature."と言っている。

必要なリーダーシップの種類

ソフトウェア開発におけるリーダーシップの分類として次のようなものが見られる(The Toyota Wayより引用)

高い管理能力 その分野の深い理解
ボトムアップ グループファシリテータ
「皆さんが決めるんです!」
学習する組織のリーダー
「これが私たちの目的です。
いっしょに行きましょう!」
トップダウン 官僚的管理者
「ルールに従え!」
作業管理者
「これがやるべきことです。
この手順に従ってやりなさい!」

このうち、「学習する組織のリーダー」タイプが現在のところ一番ソフトウェア開発において「良い」リーダーなのではないかと考えている。

Lean開発の本質

このページのトップへ

[開発プロセス]
新車開発"巨大プロジェクト"マネジメント

片山信昭氏 / 株式会社日立製作所 オートモティブシステムグループ 理事 技術長

200億円〜300億円かかるといわれている新車開発のプロジェクトはどのように行われるのか?何百人、何千人とかかわり、生産開始までに数年はかかるといわれている大規模プロジェクトをどのように成功に導いてきたのか。長年チーフエンジニアとしてそのような新車開発に携わってこられた片山氏がその秘訣を語られました。新車開発のプロセスの概要から、最後には大プロジェクトを率いるリーダーとしての心がまえ、リーダーから若手へ向けたメッセージがいただけました。

新車開発のプロセス(先行開発が鍵を握る)

新車開発のプロジェクトは3つのフェーズ(先行開発、実車開発、生産・販売)に区切って行われるが、プロジェクト全体の成功のカギをを握っているのは最初の先行開発であるといっても過言ではない。このフェーズでは「どんな車を作るのか」という本質的な部分が作られる。このフェーズでは納得するまで何度でも繰り返す。ものづくりの世界では作ってしまってから欠陥が見つかった場合のリスクが非常に高い。紙の上、コンピュータの上で繰り返せることはとことんまで繰り返すことが行われる。専門的にはフロントローディングと呼ばれる。

  1. コンセプト
  2. スタイル (エクステリア・インテリアはどんな風にするか?)
  3. Market Research (通常行うような市場のニーズを調査するのではなく、作成したコンセプトが受け入れられるかの確認のように用いる。
  4. ユニット先行開発
  5. 原価・利益の目標値設定
  6. 開発費・必要工数・設備投資の目標値設定

大規模プロジェクトのマネジメント

企画・コンセプトのマネジメント

このようなプロジェクトの重要なファクターとなる先行開発では、通常異なる環境にある複数チームで行われ合格するまで行う。コンセプトを作り上げることは車の印象を作ることであるため作り方にも気を使い、文字だけでなく、視覚的に訴える資料を作成した。コンセプト企画書を作成する段階からデザイン部に背景を頼んだこともあった。

開発進行マネジメント

リソースマネジメント

製品コストマネジメント

ベンチマーク活動

日本の製造業では敬遠されがちだが、グローバルに競争力を高めるには必要なことだと考える。

リーダーシップとは

リーダーシップに必要なことは3つあると考える

OBからのメッセージ

これまでのプロジェクト経験を生かして、老婆心ながらメッセージをさせていただく。

できるまで v.s. 締め切り時間までやる

常に十分な時間があるわけではないが

大学ノート v.s. 提案書

どんな事もあるレベルを超えればきっと役立つ

何事も中途半端は役に立たないものだ。講演だったり、飲み会の幹事だったり、原稿執筆といったこまごまとしたことも何度か経験してくればきっとなにかの役にたつので意欲的に取り組もう。そしてやる時は自分なりに満足いけるレベルまでしっかりやる。そうすればきっと新たな知見・知力・将来に役立つ。ある程度になればきっと相手も認めてくれるから。

戦争をやる人 v.s. 見る人

F1とかラリーとか花形とよばれるようなものは外見はかっこいい。チーフをやってきたときにもチームに入れてくれというオファーは山ほど来る。しかし中でやっている人はみんな戦争をしているかのように必死に頑張っている。あこがれるよりも、今与えられていることをとことんやろう。

気分転換・健康

やはり体は資本である。自分から意識的・意欲的に気分転換をしよう。問題を抱えているときも、一度そこから離れてみる事で糸口が見つかったり、新しいやる気が生まれたりするものだ。

このページのトップへ

[Development Style(Language & API)]
怪盗RubyからScala座の怪人へ:DSLはオブジェクト指向と関数型の融合へ向かう

羽生田栄一氏 / 株式会社豆蔵 取締役会長

Java VM言語上で動作する関数型とオブジェクト指向が融合した新世代言語Scala。Scalaの魅力が詰まった贈物のようなセッションでした。

Javaとの融合

純粋なオブジェクト指向かつ本格的な関数型言語

この先も安心な開発体制

Traitによる多重継承が可能(Mixin機能)

DSLとしてのScalaの可能性

番外

このページのトップへ

参考・関連記事


© 2008 OGIS-RI Co., Ltd.
HOME HOME TOP オブジェクトの広場 TOP