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.
株式会社万葉
Ruby による
開発プロジェクトを
うまく回すには
∼ 8年間で得られた知見 ∼
2015. 6. 29
(株) 万葉 大場寧子 (@nay3)
株式会社万葉
大場寧子
(株) 万葉
株式会社万葉
8年間の歩み
•2007 創業
•ずーっと Rails の受託開発をし
ています
•非Rails の Ruby案件もやって
います
•スマフォアプリとPHPもちょっと
株式会社万葉
プロジェクト
状況の変遷
株式会社万葉
使用技術 形態
当初
Ruby 1.8
Rails 2
SVN
SES契約 / 派遣で
客先外注
近代
Ruby 1.9
Rails 3
Git
持ち帰り増えるも
儲からず
原価計算はじめる
最近
Ruby 2.1
Rails 4...
株式会社万葉
きょうの構成
1. Ruby/Railsの受託開発の実践
から得た技術・ビジネスのノウ
ハウ紹介
2. チーム開発のために行っている
取り組みの紹介
株式会社万葉
2時間近く
話すとなると
聞く方も
大変かと思います
ので…
株式会社万葉
途中に適当に
質疑を挟んだりして
変化をつけられると
良いなと
思っています
株式会社万葉
1.Ruby/Railsの受
託開発の実践から得
た技術・ビジネスの
ノウハウ紹介
株式会社万葉
Q. Ruby / Rails
を使ったプロジェク
トを経験されて
いる方?
株式会社万葉
Rubyの
うれしいところ
株式会社万葉
•書きやすい
•良いライブラリ
(gem)がいろいろあ
る
•ナイスな文化
株式会社万葉
Rubyの
難しいところ
株式会社万葉
•習熟が必要
•プログラマ不足
•バージョンアップが早く
て置いていかれやすい (特
にRails)
株式会社万葉
人の問題
•ナイスな人が必要
•git
•コミュニケーション
•Ruby
•Web
•DB
•サーバ
•開発規模をスケールさせるのは大変
株式会社万葉
人の問題に
どう立ち向かうか
•人脈を活用(コミュニティ)
•はやめの募集
•動かせるスコープ
•要求・要件を迅速に出す
•一人プロジェクトは避ける
株式会社万葉
一人は避ける
•レビューされる環境が大事
•他人の目を意識することでコー
ドはだいぶ良くなる
•一人が辞めてもメンテナンスで
きる
株式会社万葉
バージョンアップ
•リリース後も定期的にバージョ
ンアップする計画でないと辛い
•そのためにはある程度自動テス
トがないと辛い
•プロジェクト側に理解(予算)
がないと辛い
株式会社万葉
バージョンアップ
•やらないと死ぬ
•いいプログラマが集まらない
•受託会社的には、旧バージョン
割増料金なども視野
株式会社万葉
bundle update
•使っているgemを最新にする
•最新にして大丈夫かそれぞれの
更新情報などを見て確認
•bundle update 当番
株式会社万葉
どのgemがいいか
•という話は今日はしません
•しませんが、どうやって判断す
るかという話をします
株式会社万葉
gemとの
つきあい方
株式会社万葉
gem は
コード読んだり
手を入れたり
貢献したり
乗り換える物
株式会社万葉
コードも読まず
ただ入れてみて
利用できて便利
というのは幻想
株式会社万葉
そういう付き合い
前提なら
最悪、使ってみれば
わかります
株式会社万葉
どう判断しているか
•使いやすい I / F か
•よく使われてそうか
•最近メンテナンスされてそうか
•知人の評判はどうか
•メンバーの意見はどうか
株式会社万葉
Q. 皆様の
悩みを
教えてください
株式会社万葉
見積もり?
案件?
人数?
採用?
株式会社万葉
Ruby / Rails
開発で
これだけは守りたい
原則
株式会社万葉
バージョンアップに
追随する
株式会社万葉
バージョンアップに
追随する
•アプリケーションをメンテナン
スし続けるために最も重要
•人が来なくてはメンテできない
•選択の余地はない
株式会社万葉
自由
民主主義
多様性
株式会社万葉
自由
•Rubyと自由は相性がよい
•大した理由のない「制限」には
こだわらなくていい
•自由は生産性を高める
•レールを自分たちで作り、変え
ていく
株式会社万葉
民主主義
•チーム内で話し合って合意を作っ
て決めるスタイルがおすすめ
•チームは社外にも緩く連携
•間違った決定をするリスクが低
い
•誰もが責任を負う
株式会社万葉
多様性
•Ruby なのに Java みたいな
プロジェクト
•for 禁止で常に each
•POSTしたら絶対 redirect
•テスト通したのを確認しないとコミット
できない(SVNで長蛇の列 TT
•強い制約
株式会社万葉
多様性
•一貫性は絶対ではない
•一筆書きで正解に辿り着くのは
難しい
•ためしに一部だけこうする、と
いうのもおすすめ
株式会社万葉
できればアジャイル
開発に寄せたい
株式会社万葉
Q. いまアジャイル
開発をしている方?
株式会社万葉
Q. いまアジャイル
開発でない開発をし
ている方?
株式会社万葉
アジャイルに寄せたい
•Rails では機能ごとに各層を一
人で担当したりする
•要求の確認から実装までを何度
も行ったり来たりする
•ウォーターフォールだと待ち時
間や無駄が多くなりそう
株式会社万葉
自動テスト
株式会社万葉
自動テスト
•開発するための自動テストと、
維持のための自動テストは違う
•メンテナンスには機能レベルの
自動テストが必要
株式会社万葉
名前づけ
株式会社万葉
名前づけ
•変数やメソッドの内容は名前だ
けで示す
•変数に入るオブジェクト / メ
ソッドの返すオブジェクトを正
確に伝える必要がある
•※別資料あります
株式会社万葉
8年間の
事件簿と対策
株式会社万葉
1.「見積もりが
安すぎた!!」
株式会社万葉
一人で見積もると
性格の差が
吸収しづらい
株式会社万葉
見積もりは
なるべく大勢で
レビューする
株式会社万葉
規模が増えれば増え
る工数を自動計算
(PMとか)
株式会社万葉
2.「持ち帰り
儲からない…」
株式会社万葉
原価計算して
毎月原価率を
みんなで見るように
しました
株式会社万葉
原価計算に要るもの
•プロジェクト別時間集計
•月ごとの決算処理(経理)
•プロジェクト別の進捗率を毎月
出す
•コストと進捗でリアルタイム原
価率を見られるシステム
株式会社万葉
ちゃんとできるのに
1年くらい
かかりました
株式会社万葉
はかるだけ
ダイエット!
株式会社万葉
3. 「チーム」
株式会社万葉
Part2 へ続く!
You’ve finished this document.
Download and read it offline.
Upcoming SlideShare
Rubyによる開発プロジェクトをうまく回すには(2)
Next
Upcoming SlideShare
Rubyによる開発プロジェクトをうまく回すには(2)
Next
Download to read offline and view in fullscreen.

9

Share

Rubyによる開発プロジェクトをうまく回すには(1)

Download to read offline

日本OSS推進フォーラム 第 6 回アプリケーション部会勉強会 での資料その1(全2部)です。

Related Books

Free with a 30 day trial from Scribd

See all

Related Audiobooks

Free with a 30 day trial from Scribd

See all

Rubyによる開発プロジェクトをうまく回すには(1)

  1. 1. 株式会社万葉 Ruby による 開発プロジェクトを うまく回すには ∼ 8年間で得られた知見 ∼ 2015. 6. 29 (株) 万葉 大場寧子 (@nay3)
  2. 2. 株式会社万葉 大場寧子 (株) 万葉
  3. 3. 株式会社万葉 8年間の歩み •2007 創業 •ずーっと Rails の受託開発をし ています •非Rails の Ruby案件もやって います •スマフォアプリとPHPもちょっと
  4. 4. 株式会社万葉 プロジェクト 状況の変遷
  5. 5. 株式会社万葉 使用技術 形態 当初 Ruby 1.8 Rails 2 SVN SES契約 / 派遣で 客先外注 近代 Ruby 1.9 Rails 3 Git 持ち帰り増えるも 儲からず 原価計算はじめる 最近 Ruby 2.1 Rails 4 GitHub 持ち帰り改善 勤務場所Flexible チーム開発重視
  6. 6. 株式会社万葉 きょうの構成 1. Ruby/Railsの受託開発の実践 から得た技術・ビジネスのノウ ハウ紹介 2. チーム開発のために行っている 取り組みの紹介
  7. 7. 株式会社万葉 2時間近く 話すとなると 聞く方も 大変かと思います ので…
  8. 8. 株式会社万葉 途中に適当に 質疑を挟んだりして 変化をつけられると 良いなと 思っています
  9. 9. 株式会社万葉 1.Ruby/Railsの受 託開発の実践から得 た技術・ビジネスの ノウハウ紹介
  10. 10. 株式会社万葉 Q. Ruby / Rails を使ったプロジェク トを経験されて いる方?
  11. 11. 株式会社万葉 Rubyの うれしいところ
  12. 12. 株式会社万葉 •書きやすい •良いライブラリ (gem)がいろいろあ る •ナイスな文化
  13. 13. 株式会社万葉 Rubyの 難しいところ
  14. 14. 株式会社万葉 •習熟が必要 •プログラマ不足 •バージョンアップが早く て置いていかれやすい (特 にRails)
  15. 15. 株式会社万葉 人の問題 •ナイスな人が必要 •git •コミュニケーション •Ruby •Web •DB •サーバ •開発規模をスケールさせるのは大変
  16. 16. 株式会社万葉 人の問題に どう立ち向かうか •人脈を活用(コミュニティ) •はやめの募集 •動かせるスコープ •要求・要件を迅速に出す •一人プロジェクトは避ける
  17. 17. 株式会社万葉 一人は避ける •レビューされる環境が大事 •他人の目を意識することでコー ドはだいぶ良くなる •一人が辞めてもメンテナンスで きる
  18. 18. 株式会社万葉 バージョンアップ •リリース後も定期的にバージョ ンアップする計画でないと辛い •そのためにはある程度自動テス トがないと辛い •プロジェクト側に理解(予算) がないと辛い
  19. 19. 株式会社万葉 バージョンアップ •やらないと死ぬ •いいプログラマが集まらない •受託会社的には、旧バージョン 割増料金なども視野
  20. 20. 株式会社万葉 bundle update •使っているgemを最新にする •最新にして大丈夫かそれぞれの 更新情報などを見て確認 •bundle update 当番
  21. 21. 株式会社万葉 どのgemがいいか •という話は今日はしません •しませんが、どうやって判断す るかという話をします
  22. 22. 株式会社万葉 gemとの つきあい方
  23. 23. 株式会社万葉 gem は コード読んだり 手を入れたり 貢献したり 乗り換える物
  24. 24. 株式会社万葉 コードも読まず ただ入れてみて 利用できて便利 というのは幻想
  25. 25. 株式会社万葉 そういう付き合い 前提なら 最悪、使ってみれば わかります
  26. 26. 株式会社万葉 どう判断しているか •使いやすい I / F か •よく使われてそうか •最近メンテナンスされてそうか •知人の評判はどうか •メンバーの意見はどうか
  27. 27. 株式会社万葉 Q. 皆様の 悩みを 教えてください
  28. 28. 株式会社万葉 見積もり? 案件? 人数? 採用?
  29. 29. 株式会社万葉 Ruby / Rails 開発で これだけは守りたい 原則
  30. 30. 株式会社万葉 バージョンアップに 追随する
  31. 31. 株式会社万葉 バージョンアップに 追随する •アプリケーションをメンテナン スし続けるために最も重要 •人が来なくてはメンテできない •選択の余地はない
  32. 32. 株式会社万葉 自由 民主主義 多様性
  33. 33. 株式会社万葉 自由 •Rubyと自由は相性がよい •大した理由のない「制限」には こだわらなくていい •自由は生産性を高める •レールを自分たちで作り、変え ていく
  34. 34. 株式会社万葉 民主主義 •チーム内で話し合って合意を作っ て決めるスタイルがおすすめ •チームは社外にも緩く連携 •間違った決定をするリスクが低 い •誰もが責任を負う
  35. 35. 株式会社万葉 多様性 •Ruby なのに Java みたいな プロジェクト •for 禁止で常に each •POSTしたら絶対 redirect •テスト通したのを確認しないとコミット できない(SVNで長蛇の列 TT •強い制約
  36. 36. 株式会社万葉 多様性 •一貫性は絶対ではない •一筆書きで正解に辿り着くのは 難しい •ためしに一部だけこうする、と いうのもおすすめ
  37. 37. 株式会社万葉 できればアジャイル 開発に寄せたい
  38. 38. 株式会社万葉 Q. いまアジャイル 開発をしている方?
  39. 39. 株式会社万葉 Q. いまアジャイル 開発でない開発をし ている方?
  40. 40. 株式会社万葉 アジャイルに寄せたい •Rails では機能ごとに各層を一 人で担当したりする •要求の確認から実装までを何度 も行ったり来たりする •ウォーターフォールだと待ち時 間や無駄が多くなりそう
  41. 41. 株式会社万葉 自動テスト
  42. 42. 株式会社万葉 自動テスト •開発するための自動テストと、 維持のための自動テストは違う •メンテナンスには機能レベルの 自動テストが必要
  43. 43. 株式会社万葉 名前づけ
  44. 44. 株式会社万葉 名前づけ •変数やメソッドの内容は名前だ けで示す •変数に入るオブジェクト / メ ソッドの返すオブジェクトを正 確に伝える必要がある •※別資料あります
  45. 45. 株式会社万葉 8年間の 事件簿と対策
  46. 46. 株式会社万葉 1.「見積もりが 安すぎた!!」
  47. 47. 株式会社万葉 一人で見積もると 性格の差が 吸収しづらい
  48. 48. 株式会社万葉 見積もりは なるべく大勢で レビューする
  49. 49. 株式会社万葉 規模が増えれば増え る工数を自動計算 (PMとか)
  50. 50. 株式会社万葉 2.「持ち帰り 儲からない…」
  51. 51. 株式会社万葉 原価計算して 毎月原価率を みんなで見るように しました
  52. 52. 株式会社万葉 原価計算に要るもの •プロジェクト別時間集計 •月ごとの決算処理(経理) •プロジェクト別の進捗率を毎月 出す •コストと進捗でリアルタイム原 価率を見られるシステム
  53. 53. 株式会社万葉 ちゃんとできるのに 1年くらい かかりました
  54. 54. 株式会社万葉 はかるだけ ダイエット!
  55. 55. 株式会社万葉 3. 「チーム」
  56. 56. 株式会社万葉 Part2 へ続く!
  • ssuser2a81ed

    Mar. 4, 2017
  • kyamane13

    Jul. 24, 2016
  • KatsuyaTokuyama

    Jan. 24, 2016
  • ShinobuUeno

    Sep. 2, 2015
  • mikiowakafuji

    Aug. 11, 2015
  • ShosakuSuzuki

    Aug. 5, 2015
  • tatsuosakurai

    Jul. 17, 2015
  • ShuheiNagasawa

    Jul. 8, 2015
  • ssuser7a6f5c

    Jul. 2, 2015

日本OSS推進フォーラム 第 6 回アプリケーション部会勉強会 での資料その1(全2部)です。

Views

Total views

6,636

On Slideshare

0

From embeds

0

Number of embeds

2,208

Actions

Downloads

10

Shares

0

Comments

0

Likes

9

×