Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

プロエンジニアになるための「アジャイル開発」再入門

22,195 views

Published on

アジャイル開発の基本と、エンジニアに求められる姿勢

Published in: Business
  • Be the first to comment

プロエンジニアになるための「アジャイル開発」再入門

  1. 1. プロエンジニア になるための “アジャイル開発”再入門 株式会社ソニックガーデン 倉貫義人
  2. 2. プロセスやツール よりも 個人と対話を、 包括的なドキュメント よりも 動くソフトウェアを、 契約交渉 よりも 顧客との協調を、 計画に従うこと よりも 変化への対応を、 アジャイルソフトウェア開発宣言 私たちは、ソフトウェア開発の実践あるいは実践を手助けをする活動を通じて、よりよい開発方法を見つけだ そうとしている。この活動を通して、私たちは以下の価値に至った。 価値とする。すなわち、左記のことがらに価値があることを 認めながらも、私たちは右記のことがらにより価値をおく。
  3. 3. アジャイル開発の基本
  4. 4. これまでのソフトウェア開発 市場 事業 IT 要件 設計 実装 テスト 市場分析 依頼/発注 納品 リリース 半年〜 のんびりしてたな
  5. 5. いま世界で起きていること Software is eating the world マーク・アンドリーセン
  6. 6. これからのソフトウェア開発 これまで これから バグないように品質重視 事前の計画をしっかり 大きく投資してビックバン 減価償却するまで使う リリースまでのプロジェクト スピード重視で市場へ フィードバックから改修 スモールスタートの初期投資 スケールアウトして成長 事業が続く限り継続的改善
  7. 7. アジャイルの基本・・・なぜ繰り返すのか? スコープ 時間 分析 設計 実装 テスト ウォーターフォール アジャイル スコープ 時間
  8. 8. 必要なものを 必要なときに 必要なだけ作る 一回で完成する様に 一度に作らない 最初に決めた機能を 全部を作らない (ホールケーキで作る) ウォーターフォール アジャイル (カットケーキで作る)
  9. 9. アジャイル開発の実践
  10. 10. 開発をする前にしておくべきこと ● “何を作るのか?”よりも“何のためか?”が大事 ● “やりたいこと”よりも“困っていること”を確認 ● “最大限の構想”よりも“最小限の完成品”を探る
  11. 11. 設計をする際に気をつけること ● チームと期間は固定して、機能数で調整する ● 何を作るのか?ではなく、何は作らないか? ● タスクばらし、見積もり、優先順位を決める
  12. 12. 品質に対する考え方 「誰が顧客なのかがわから なければ、何が品質なのか もわからない。」 (リーンスタートアップより)
  13. 13. “Point of Sales”から“Point of Use”へ 時間 構築 償却 利用中が最高品質 (サービス業の発想) 買った時点が最高品質 (製造業の発想) 時間 品質 品質
  14. 14. ずっと続く前提で開発をすること ● バグを出さない→バグをすぐに直せるように ● サーバは落ちない→すぐに復旧できるように ● 仕様は変わらない→気軽に変更できるように
  15. 15. エンジニアに求められる姿勢
  16. 16. その1・・・当事者意識を持つ ● 「そもそも(Why)」から考えること ● ビジョンやコンセプト、課題を理解すること ● 言われた作業をするのではなく、問題を解消
  17. 17. その2・・・保守性を重視する ● DRYな状態を保つ、保守性に妥協しないこと ● 将来の自分は、もはや他人だと思うこと ● ソースコードの表現に意図を込めること
  18. 18. その3・・・単位を小さくする ● 必ずタスクばらしをして、優先順位を付ける ● 遅巧よりも拙速で、こまめに報告と相談する ● 小さくして、何度も繰り返し習慣にすること
  19. 19. その4・・・なるべく作らない ● YAGNIの精神、作らなければバグもない ● 技術ありきで考えない、難しく作らない ● 手を動かすことよりも、頭を動かすこと
  20. 20. その5・・・守備範囲を広げる ● 開発と運用を分けない、ビジネスも分けない ● 役割を決めて自分自身の仕事を縛りすぎない ● ソフトウェア開発のすべてに責任をもつ仕事
  21. 21. この先のエンジニアの生き方
  22. 22. ソフトウェア開発の本質とは ● 大量生産・ルーチンワーク・製造業ではない ● デザイン・問題解決・ナレッジワークである ● プログラミングを手段に、問題解決する仕事
  23. 23. これから求められる仕事とは ● 人工知能、ロボットに置き換えられる不自由 ● 自由な発想が求められる、好きで楽しめるか ● クリエイティブな仕事、人数の要らない仕事
  24. 24. この先のエンジニアの生き方 ● ソフトウェア開発の仕事は、減ることはない ● 受託脳では生き残れない、提案脳であること ● 腕を磨き続ければ、自分の価値を高められる
  25. 25. ありがとうございました(講演者について) http://kuranuki.sonicgarden.jp kuranuki@sonicgarden.jp ブログ 連絡先 倉貫義人 株式会社ソニックガーデン 代表取締役

×