中電シーティーアイ流

ハイブリッド型アジャイル開発のすべて

平成29年3月3日
株式会社

中電シーティーアイ

佐村 卓

All rights reserved, Copyright (C) 2017, ChudenCTI Co., Ltd.

INDEX
1. はじめに2. アジャイル開発とは
3. 従来型開発との融合

4. 見える化の徹底
5. 顧客との協調作業

6. 開発環境の自働化
7. まとめAll rights reserved, Copyright (C) 2017, ChudenCTI Co., Ltd.

1

はじめに
中電シーティーアイのご紹介

商号

株式会社中電シーティーアイ

設立（合併）

平成15年10月1日

資本金1億円

出資会社

中部電力株式会社

従業員数

1053名（平成28年7月現在）

売上高333億円（平成27年度）

All rights reserved, Copyright (C) 2017, ChudenCTI Co., Ltd.

2

はじめに
当社システム開発の特徴・課題
特 徴 中部電力株式会社およびグループ各社のシステム開発・保守 開発・保守件名の一括受注とメーカーおよび協力会社への発注
課 題
 要求仕様がなかなか固まらない 度重なる仕様追加・変更と手戻り手直し
 更なる生産性向上と効率化

All rights reserved, Copyright (C) 2017, ChudenCTI Co., Ltd.

3

アジャイル開発とはアジャイル開発への期待

 要件が決まっていなくても開発できる
 開発期間を短縮できる
 開発費用を安くできる

All rights reserved, Copyright (C) 2017, ChudenCTI Co., Ltd.

4

アジャイル開発とはアジャイル開発の概要• アジャイルとは『すばやい』『俊敏な』という意味で、反復 (イテレーション)と呼ばれる数週間～数ヶ月の短い開発単位を採用することにより、リスクを最小化しようとする開発手法。
• 開発対象を多数の小さな機能に分割し、反復内で機能を開発する 。この反復を繰り返し行うことで、 機能を1つずつ追加的に優先度を付けて開発してゆく。

• 1つの反復内では、計画、要求分析、設計、実装(コーディング) 、テストといった、ソフトウェア開発で必要とする全ての工程を行う。
計画～テスト 計画～テスト 計画～テスト
毎回リリース

反復

反復

反復

毎回リリース
毎回リリース

数週間～数ヶ月 数週間～数ヶ月 数週間～数ヶ月
All rights reserved, Copyright (C) 2017, ChudenCTI Co., Ltd.

5

アジャイル開発とはScrum（スクラム）開発
開発チーム会議

デイリースクラム

受入テスト

作業タスクの洗い出し

日々進捗や問題の共有

アプリの動作を確認

プロダクト
バックログ
（顧客要求事項）

スプリント（数週間～数ヶ月）
スプリント
計画会議

スプリントバックログ（スプリント期間で実施するもの）

設計～製造～テスト

スプリント
レビュー

振り返り

タスク洗い出しAll rights reserved, Copyright (C) 2017, ChudenCTI Co., Ltd.

ス
プ
リン
トを
反復繰
り
返す

6

アジャイル開発とはXP（エクストリームプログラミング）
アジャイルソフトウェア開発宣言の起草者の一人である米国のケント・ベックらによって考案されたソフトウェア開発手法

４つの価値
・コミュニケーション （Communication）
・シンプルさ（Simplicity）
・フィードバック（Feedback）
・勇気（変更に対する）(Courage)

XPのプラクティス（実践）・顧客同室・テストファースト
・ペアプログラミング・リファクタリング・ソースコードの共同所有
・メタファー／比喩・継続的インテグレーション
・チーム全体／多能工・持続可能なペース／週40時間
・小さなリリース・計画ゲーム・コーディング標準
All rights reserved, Copyright (C) 2017, ChudenCTI Co., Ltd.

7

アジャイル開発とはアジャイル開発のプラクティス
プロセス的なプラクティス

技術的なプラクティス（スクラム開発）（XP)• ファシリテーション• テストファースト• 振り返り• ペアプログラミング• 自律的な開発チーム• リファクタリング• 朝会• 継続的インテグレーション

人間性を重視し、リードタイム短縮と自働化を図る
All rights reserved, Copyright (C) 2017, ChudenCTI Co., Ltd.

8

アジャイル開発とはアジャイル開発の源流
代表的なアジャイル開発手法のすべてがトヨタ生産方式を源流とする⇒「カイゼン」、「見える化」、「ムリ、ムラ、ムダの排除」、「かんばん」、「自働化」、「現地現物」、「なぜなぜ５回」、「５S」など

アジャイル開発への応用
７つのムダ
余分な機能のムダ、遅れのムダ、引き継ぎのムダ、再学習のムダ、未完成のムダ、タスク切り替えのムダ、欠陥のムダ

ポカよけ
欠陥を出さないためにリリースを短い期間で繰り返し、フィードバックを頻繁に行う方法

かんばん「JITフロー」JIT（Just In Time）で必要なモノを、必要なときに、必要なだけ作るように見える化
All rights reserved, Copyright (C) 2017, ChudenCTI Co., Ltd.

9

アジャイル開発とはアジャイル開発のまとめ「カイゼン」や「ムダの排除」などによる生産性向上と品質向上「自働化」による作業効率の向上と欠陥除去「かんばん」などの「見える化」による問題の早期発見と対策
ムダなくシンプルに作ることによる変更要求への柔軟性確保

顧客と開発メンバーの協調作業
反復型開発での要求仕様の早期確認によるリスクの最小化

All rights reserved, Copyright (C) 2017, ChudenCTI Co., Ltd.

10

従来型開発との融合
ハイブリッド型アジャイル開発
ハイブリッド型
事前に行う

企画

要件
定義

2週間

スクラム開発sprint(1) sprint(2) sprint(3) sprint(4)･･･

sprint(n)従来型（ウォーターフォール型）
企画

要件
定義

基本設計

詳細
設計

(外部設計) (内部設計)

ﾌﾟﾛｸﾞﾗﾐﾝｸﾞ 結合
総合
単体テスト テスト テスト

複数開発チームが次々とソフトウェアを製造するため、これらを統合するテスト工程（結合・総合テスト工程）を設ける
All rights reserved, Copyright (C) 2017, ChudenCTI Co., Ltd.

11

従来型開発との融合
ハイブリッド型アジャイル開発
従来型開発での成果物量

ハイブリッド型開発での成果物量

基本設計書

詳細設計書

80%

基本設計書
詳細設計書

保守用資料、その他保守用資料、その他

All rights reserved, Copyright (C) 2017, ChudenCTI Co., Ltd.

12

見える化の徹底ストーリーボード
プロダクトバックログ
要求事項A
高

要求事項B
要求事項C

優
先
度

要求事項D
要求事項E
要求事項F

低

「ユーザーストーリー(ストーリー)」に変える
顧客の要求事項を５W1Hで表す

例：“日中に営業部が自席の事務PCから入力確認のために販売一覧を参照したい”

要求事項G要求事項H「ストーリーポイント」を付ける
標準値＝ポイントを決め、各ストーリーの相対値を決める
All rights reserved, Copyright (C) 2017, ChudenCTI Co., Ltd.

13

見える化の徹底ストーリーボード
プロダクトバックログ

スプリントバックログ

要求事項A
高

全開
発
期
間

要求事項B
要求事項C

優
先
度

要求事項D
要求事項X
要求事項E

要求事項F
低

要求事項G
要求事項H

生産性を上げない限りプロジェクト全開発期間で開発可能な量は変わらないため開発枠が固定される

All rights reserved, Copyright (C) 2017, ChudenCTI Co., Ltd.

14

見える化の徹底ストーリーボード
プロダクトバックログ

スプリントバックログ
要求事項A

高要求事項B
要求事項C

優
先度

要求事項X
要求事項E

要求事項F
低要求事項D

全開
発
期
間

要求事項G
要求事項H

生産性を上げない限り生産性を上げない限りプロジェクト全開発期間で開発可能な量は変わらないため開発枠が固定される

All rights reserved, Copyright (C) 2017, ChudenCTI Co., Ltd.

15

見える化の徹底ストーリーボード
スプリント
スプリント(1)(4月第1,2週)

スプリント(2)(4月第3,4週)

ｽﾄｰﾘｰ

ｽﾄｰﾘｰ

ｽﾄｰﾘｰ
ｽﾄｰﾘｰ

ｽﾄｰﾘｰ

達成感を共有する開発期間を見極める
ｽﾄｰﾘｰ

･･･

全
開
発
期
間

ｽﾄｰﾘｰ

スプリント(12)(9月第3,4週)

ｽﾄｰﾘｰ

ｽﾄｰﾘｰ

ｽﾄｰﾘｰ

All rights reserved, Copyright (C) 2017, ChudenCTI Co., Ltd.

ｽﾄｰﾘｰ

16

見える化の徹底ストーリーボードAll rights reserved, Copyright (C) 2017, ChudenCTI Co., Ltd.

17

見える化の徹底
タスクかんばんストーリー

ToDo(未着手) Doing(進行中)
タスク2

ストーリー1

タスク4

あんどん表示Done(終了)
タスク1

タスク3
タスク6

タスク5

ストーリー2

タスク5

タスク2

タスク1

タスク4

タスク3

タスク6

All rights reserved, Copyright (C) 2017, ChudenCTI Co., Ltd.

18

見える化の徹底
タスクかんばんAll rights reserved, Copyright (C) 2017, ChudenCTI Co., Ltd.

19

見える化の徹底
タスクかんばん（電子かんばん）

All rights reserved, Copyright (C) 2017, ChudenCTI Co., Ltd.

20

見える化の徹底
テストかんばん（結合テスト以降）
ToDo

A機能×B機能テストシナリオ

ﾃｽﾄｹｰｽ5
B機能×C機能テストシナリオ

A機能不具合B機能不具合

ﾃｽﾄｹｰｽ5

ﾃｽﾄｹｰｽ3

ﾃｽﾄｹｰｽ1

ﾃｽﾄｹｰｽ6

ﾃｽﾄｹｰｽ4

ﾃｽﾄｹｰｽ2

ﾃｽﾄｹｰｽ4

ﾃｽﾄｹｰｽ2

Doing

C機能
不具合

ﾃｽﾄｹｰｽ1

Done

ﾃｽﾄｹｰｽ3

ﾃｽﾄｹｰｽ6

All rights reserved, Copyright (C) 2017, ChudenCTI Co., Ltd.

21

見える化の徹底
テストかんばん（結合テスト以降）
ToDo

不具合レーンDone

All rights reserved, Copyright (C) 2017, ChudenCTI Co., Ltd.

22

見える化の徹底
バーンダウンチャート（進捗管理）

All rights reserved, Copyright (C) 2017, ChudenCTI Co., Ltd.

23

見える化の徹底
KPTボード
Keep

Try

継続強化

Problem

挑戦問題

All rights reserved, Copyright (C) 2017, ChudenCTI Co., Ltd.

24

見える化の徹底
今の気持ちは？

開発メンバー全員の気持ち振り返りの際にシールを貼る

All rights reserved, Copyright (C) 2017, ChudenCTI Co., Ltd.

25

顧客との協調作業
顧客同室
顧客には開発チームと可能な限り協調して作業をしていただくために、プロジェクトルームを設け、動作確認のための顧客用PC、専用の打合せコーナーを用意した。

顧客にお願いしたこと･･･
プロジェクトルームで毎日行われる朝会への参加
朝会後、プロジェクトルームでの短時間の打合せ
スプリント毎の計画会議への参加
スプリント毎のレビュー
区切り区切りでの慰労会参加

All rights reserved, Copyright (C) 2017, ChudenCTI Co., Ltd.

26

開発環境の自働化
継続的インテグレーション
開発ツールを駆使し、ビルドとテストを頻繁に行うことにより開発効率の向上と品質の向上を実現すること。
毎日の全アプリケーション自動コンパイル＆リンク（ビルド）
毎日の全アプリケーション自動テスト（リグレッションテスト）

開発メンバ
開発担当者

⑧結果通知

Redmine①チケット登録⑦チケット登録③コミット通知⑤ビルド・静的解析
・テスト・WAR作成

Jenkins②コミット Subversion④コミット通知Tomcat⑥デプロイ・GUIテスト

All rights reserved, Copyright (C) 2017, ChudenCTI Co., Ltd.

27

まとめ
アジャイル開発への期待要件が決まっていなくても開発できる
開発期間を短縮できる
開発費用を安くできる要件の定義は必要。早期リリースで思い違いを早く見つける。

要件の早期確定、開発期間短縮、コスト低減を実現
カイゼンやムダの排除、シンプルな考え、自働化で生産性を上げる。
動くソフトウェアを重視し、ドキュメント作成稼動時間を低減する。

All rights reserved, Copyright (C) 2017, ChudenCTI Co., Ltd.

28

まとめ
アジャイル開発

成功のポイント

顧客の理解と合意
顧客の迅速な意思決定
強いリーダーシップ
カイゼンマインドの定着

ワーキングスタイルの変革
コミュニケーションロスの低減
All rights reserved, Copyright (C) 2017, ChudenCTI Co., Ltd.

29