Upload
others
View
0
Download
0
Embed Size (px)
Citation preview
アジャイル開発でよみがえった、プロダクト開発
2012年12月12日
アクセラテクノロジ株式会社
取締役 技術開発部 部長
萩原純一
All Rights Reserved © Accela Technology Corporation, 2001-2012 2
目次
アクセラテクノロジ概要
会社設立→新商品開発に集中のはずが…
アクセラ流プロダクト開発の取り組み
アジャイル開発手法の導入
ITツール化
まとめ
All Rights Reserved © Accela Technology Corporation, 2001-2012 3
アクセラテクノロジ概要
設立
2001年7月 富士通(株)からのスピンオフにより創業
特徴
エンタープライズサーチ専業ベンダ
博士号を持つ社長を筆頭にとことん技術系
All Rights Reserved © Accela Technology Corporation, 2001-2012 4
2001年設立以来、ウォーターフォール開発を推進
商品企画
基本設計
システムテスト
詳細設計
プログラミング
レビュー
ルートテスト
単体テスト
結合テスト
機能設計
・・・
機能モジュール毎の 高い専門性
開発者の強い「モジュール担当」意識
人のローテーションを あまり考えない
All Rights Reserved © Accela Technology Corporation, 2001-2012 5
会社設立→新商品開発に集中のはずが
All Rights Reserved © Accela Technology Corporation, 2001-2012 6
設立して遭遇した様々な困難
製品を世に出さねば、売れない とにかく迅速に製品を作り上げなければ、売上がない
モジュール=人に強くアサインされ、休めない
開発・サポート両面から担当者は疲弊していく。設立当初は勢いでいけるが、疲れはどんどん溜まる
人を増やすが失敗
転職市場にプロダクト開発経験者は希、ということに改めて気づかされる
All Rights Reserved © Accela Technology Corporation, 2001-2012 7
「ソフトウェアプロダクト」開発会社として、理想の姿を再定義
再定義の背景
中途採用者はSIや派遣プログラマが多く、「ソフトウェアプロダクト」開
発経験者はほとんどいない
いないなら、作りだそう。新卒の社員を継続的に採用して、自分たち
の力で開発プロセスを確立しよう!
理想の開発チームとは
「担当モジュールのプログラマ」
→ 「製品開発者」
「○○さんがいないと分からない」
→ 「だれもが対応可能」
「一人が問題を抱える/風邪をひいても休めない」
→ 「皆で解決する/安心して休める」
All Rights Reserved © Accela Technology Corporation, 2001-2012 8
解決すべき課題
新卒社員の技量の差をどう埋めるか? 成長してもらうか?
コミュニケーション能力の乏しさをどう上げていくか?
どのようにコードを複数人で共有化するか?
担当者への仕事の割り当てを、いかに実現するか? (効率よく、そして柔軟に)
仕事の割り当てやコードを共有する中で、どのように品質を確保するか?
アクセラ流プロダクト開発の構築開始
All Rights Reserved © Accela Technology Corporation, 2001-2012 9
最初の成果: Accela BizSearch R4
Accela BizSearch(エンタープライズサーチ製品)の後継製品を開発
ブラックボックス化しつつある過去の資産に、建て増し・建て増しはしない
既存バージョンの良い考え方、実装、外部仕様(互換性)は維持しつつ、新しいチームで「自分たちが作った」と 自信と愛情を持てる製品を皆でつくり あげ、その中で成長する
Accela BizSearch R4 特徴
Accela BizSearch V3の上位互換
(外部仕様はそのまま継承)
C言語からJava言語へ
64ビットで動作。高性能・大容量
新規付加価値機能
(ドリルダウンナビ)の投入
All Rights Reserved © Accela Technology Corporation, 2001-2012 10
お蔭様で1900*を超えるサーバ導入の実績
出荷検索サーバ数 1979サーバ(2012年8月現在)
富士通様 みずほ情報総研様
損保ジャパン様 中電技術コンサルタント様
コガネイ様 日本情報通信様
日経BP様 アイスタイル様
大塚商会様
図書館流通センター様
ぐるなび 様 NECパーソナルコンピュータ 様
大塚製薬工場様
パソナ様
札幌市役所様 NTTデータ様
三井物産様
All Rights Reserved © Accela Technology Corporation, 2001-2012 11
アクセラ流プロダクト開発の取り組み
All Rights Reserved © Accela Technology Corporation, 2001-2012 12
アクセラ流プロダクト開発のイメージ
完成
完成
<担当制の場合> <アクセラ流プロダクト開発>
Aさん Bさん Cさん
①
②
③
④
⑤
⑥
①
仕事
②
① ② ③ ④ ⑤ ⑥
①
Aさん
割り振り
④
②
Bさん
Bさん
終わったので
④をやります。
取りに行く
⑥ Bさん
終わったので
⑥をやります。
Cさん
③
⑤
Cさん
終わったので ⑤をやります。
③
④
⑤
⑥
All Rights Reserved © Accela Technology Corporation, 2001-2012 13
アクセラ流プロダクト開発の実際
アジャイル開発手法の導入
毎朝のスタンドアップミーティング (朝会)
テスト駆動型開発
ペアプログラミング
ITツール化
個人の持つノウハウやコツを共有
手順書、チェックシートの整備
まず、まねる 次に、改善する
All Rights Reserved © Accela Technology Corporation, 2001-2012 14
アジャイル開発とは
フィーチャー
ユーザーにとって
役に立つ機能 イテレーション1 イテレーション2 イテレーション …
:PDF検索機能
:検索ログ解析機能 朝会
ペアプログラミング
2~3週間 2~3週間 2~3週間
2~3ヶ月毎に完成品リリース
朝会
ペアプログラミング
朝会
ペアプログラミング
All Rights Reserved © Accela Technology Corporation, 2001-2012 15
参考にしたアジャイル開発手法の代表例
種類 内容 効果
スタンドアップ ミーティング (朝会)
15分以内の定時ミーティングを毎日開催。やったこと、課題、これからやることを確認する。
課題の整理と抽出が確実に出来る。また、チームメンバ全員が個々の進捗・課題を理解し、一緒に考えるきっかけとなる。 (チェック&ヘルプ)
テスト駆動型開発 (TDD)
実装の前に、(自動化された)テストを作成する。実装はそのテストをパスすることを目標に行う。
抜け・漏れのないテストによる品質向上が期待出来る。
ペアプログラミング
2人1組で実装を行い、1人がコードを書き、もう1人はそれをチェックしながらナビゲートする。
チームメンバの開発スキルの均一化。課題のフローティングを助ける。
All Rights Reserved © Accela Technology Corporation, 2001-2012 16
アジャイル開発のモデルケースを実践
スタンドアップミーティング(朝会)
昨日やったことは?
今日やることは?
進捗を妨げている問題点は何?
課題・障害管理の確認
実装
テスト駆動型開発(TDD)
ペアプログラミング
All Rights Reserved © Accela Technology Corporation, 2001-2012 17
アクセラ流に改善するんです!
教科書のアジャイルではなく、独自のアジャイルを模索。
当社事情に積極的にアレンジ。
効率化 朝会では、1つの議題は5分以内 実装のペアには、設計者を入れる。ただし、設計者はコードを書かない
(設計者の意図をくみやすくするため) 朝会で“今日の帰宅予定時刻”を宣言し、日々の目標を明確化 仕様書もペアで作成し、ペアプロの良い点を取り込む
品質確保 ペアの片方にはプログラムのスキルが高い人を入れる
(初心者どうしのペアは実装が簡単でも障害が多く発生したため) Redmine(障害管理システム)を導入
(障害・課題管理をExcelで管理していると分かりづらい)
All Rights Reserved © Accela Technology Corporation, 2001-2012 18
ITツール化
まねるヒントを皆でコレクションして活用する仕組み
見つけた情報、資料、アイデア、ノウハウをすぐに保存
なぜそれが良いと思ったか?どこの部分をまねするべきと思ったか?コメントを添付
保存内容は簡単に取り出せるようにしチームで共有
ツール化/資料化
テスト手順や仕様書構成/書き方は、手順書/チェックシートにして共有
1イテレーション完了時に振り返り会を開催。手順書/チェックシートを更新
All Rights Reserved © Accela Technology Corporation, 2001-2012 19
検索+コメントによる超整理法型情報活用
メモも含めて 横断検索実現
RDBMS
ファイルサーバ
社内Web
Notes
業務で活用
All Rights Reserved © Accela Technology Corporation, 2001-2005 17
BizSearch 活用シーン3:カスタマサポート系モデル
狙い: 1.回答時間短縮による顧客満足度向上2.1次解決率向上による対応コスト削減3.顧客の声を商品開発にフィードバック
顧客
電話・E-mail
受付け/回答
コールトラッキングシステム
エージェント
問題解決ナレッジDB
製品開発部門ナレッジDBと対応履歴を検索し問題解決
Accela
BizSearch
WebによるFAQセルフサービス
Accela
BizSearch
顧客対応履歴
顧客対応履歴から得られるお客様の声を製品に反映
価値ある情報 を全文検索
企業内 業務サーバ群
BizAntenna
自身の記録や
仲間への共有のためメモを残す
BizSearch
All Rights Reserved © Accela Technology Corporation, 2001-2012 20
ITツールとして実現: Accela BizAntenna
インターネット上のコンテンツ 企業内コンテンツ
WebでもOffice文書でもコメントを付けて一括管理
タグ:仕様書
メモ:これを雛形にする
タグ:手順書
メモ:21ページは間違っている。修正して
タグ:注目テクノロジー
メモ:うちでもやってみる
タグ:写真
メモ:他社の開発現場風景
タグ:開発ノウハウ
メモ:Ruby虎の巻
タグ:開発ノウハウ
メモ:Visual Studioが使いやすくなったらしい。次回開発から採用
タグ:開発ノウハウ
メモ:Java開発のノウハウ
タグ:議事録
メモ:修正点がありましたら
「コメント」でお願いします
タグ:手順書
メモ:2010年11月での最新版
タグ:注目テクノロジー
メモ:採用技術のヒントか
All Rights Reserved © Accela Technology Corporation, 2001-2012 21
まねるヒントを皆でコレクションして活用する仕組み
技術系WebのURLを皆にお知らせ
技術セミナー/講習会資料をスキャンして保存
Webで見つけた開発ノウハウやコツとなる「お手本」をブックマーク
本で読んだり、セミナーで聞いたヒントはメモを共有化
ツール化/資料化
議事録の叩き台をまずBizAntennaで共有し、コメントに対するコメントで完成度をアップ。改版の背景も含めてコメントに残す
手順書/チェックシートの改善内容は、議論の背景も含めてコメントに残す。背景を残すことで将来の再利用性を高める
当社技術開発部門での利用シーン
All Rights Reserved © Accela Technology Corporation, 2001-2012 22
まとめ
アクセラテクノロジ株式会社 2001年富士通のベンチャー起業制度で設立
エンタープライズサーチの専業ベンダー
失敗の経験から プロダクト開発のプロフェッショナルは転職市場には希
開発の結果が即売上に反映。この緊張感の中で開発もやる、サポートもやるエンジニアを確保しなければならない
→ 必要な人材は自分たちで育てるしかない
アクセラ流プロダクト開発 アジャイル開発手法を導入(まねる)。当社事情に合わせてアレンジ
(改善)
ITツール化を推進し、情報を積極的に共有 → Accela BizAntennaご紹介