• 検索結果がありません。

PowerPoint プレゼンテーション

N/A
N/A
Protected

Academic year: 2022

シェア "PowerPoint プレゼンテーション"

Copied!
30
0
0

読み込み中.... (全文を見る)

全文

(1)

中電シーティーアイ流

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

平成29年3月3日

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

(2)

INDEX

1. はじめに

2. アジャイル開発とは 3. 従来型開発との融合 4. 見える化の徹底

5. 顧客との協調作業

6. 開発環境の自働化

7. まとめ

(3)

はじめに

中電シーティーアイのご紹介

商号 株式会社中電シーティーアイ 設立(合併) 平成15年10月1日

資本金 1億円

出資会社 中部電力株式会社

従業員数 1053名(平成28年7月現在)

売上高 333億円(平成27年度)

(4)

はじめに

当社システム開発の特徴・課題

中部電力株式会社およびグループ各社のシステム開発・保守

開発・保守件名の一括受注とメーカーおよび協力会社への発注 特 徴

要求仕様がなかなか固まらない

度重なる仕様追加・変更と手戻り手直し

更なる生産性向上と効率化

課 題

(5)

アジャイル開発とは

アジャイル開発への期待

要件が決まっていなくても開発できる

開発期間を短縮できる

開発費用を安くできる

(6)

アジャイル開発とは

アジャイル開発の概要

計画~テスト 計画~テスト 計画~テスト

数週間~数ヶ月 数週間~数ヶ月 数週間~数ヶ月

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

反復 反復 反復

アジャイルとは『すばやい』『俊敏な』という意味で、反復 (イテレーション) と呼ばれる数週間~数ヶ月の短い開発単位を採用することにより、

リスクを最小化しようとする開発手法。

開発対象を多数の小さな機能に分割し、反復内で機能を開発する 。この反復を 繰り返し行うことで、 機能を1つずつ追加的に優先度を付けて開発してゆく。

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

(7)

アジャイル開発とは

Scrum(スクラム)開発

スプリント

計画会議 設計~製造~テスト スプリント

レビュー 振り返り 日々進捗や問題の共有

タスク 洗い出し

スプリント(数週間~数ヶ月)

アプリの動作を確認 作業タスクの洗い出し

スプリントバックログ

(スプリント期間で 実施するもの)

開発チーム会議 デイリースクラム 受入テスト

プロダクト バックログ

(顧客要求事項)

(8)

アジャイル開発とは

XP(エクストリームプログラミング)

アジャイルソフトウェア開発宣言の起草者の一人である米国のケント・

ベックらによって考案されたソフトウェア開発手法

4つの価値

・コミュニケーション (Communication)

・シンプルさ (Simplicity)

・フィードバック (Feedback)

・勇気(変更に対する)(Courage)

XPのプラクティス(実践)

・顧客同室 ・継続的インテグレーション

・テストファースト ・チーム全体/多能工

・ペアプログラミング ・持続可能なペース/週40時間

・リファクタリング ・小さなリリース

・ソースコードの共同所有 ・計画ゲーム

・メタファー/比喩 ・コーディング標準

(9)

アジャイル開発とは

アジャイル開発のプラクティス

プロセス的なプラクティス

(スクラム開発)

• ファシリテーション

• 振り返り

• 自律的な開発チーム

• 朝会

技術的なプラクティス

(XP)

• テストファースト

• ペアプログラミング

• リファクタリング

• 継続的インテグレーション

人間性を重視し、リードタイム短縮と自働化を図る

(10)

アジャイル開発とは

アジャイル開発の源流

代表的なアジャイル開発手法のすべてが

トヨタ生産方式

を源流とする

⇒「カイゼン」、「見える化」、「ムリ、ムラ、ムダの排除」、「かんばん」、

「自働化」、「現地現物」、「なぜなぜ5回」、「5S」など

アジャイル開発への応用 7つのムダ

余分な機能のムダ、遅れのムダ、引き継ぎのムダ、再学習のムダ、未完成 のムダ、タスク切り替えのムダ、欠陥のムダ

ポカよけ

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

かんばん

「JITフロー」JIT(Just In Time)で必要なモノを、必要なときに、

必要なだけ作るように見える化

(11)

アジャイル開発とは

アジャイル開発のまとめ

「カイゼン」や「ムダの排除」などによる

生産性向上と品質向上

ムダなくシンプルに作ることによる変更要求への

柔軟性確保

反復型開発での要求仕様の早期確認による

リスクの最小化

「かんばん」などの「見える化」による

問題の早期発見と対策

顧客と開発メンバーの

協調作業

「自働化」による

作業効率の向上と欠陥除去

(12)

従来型開発との融合

ハイブリッド型アジャイル開発

企画 要件 定義

スクラム開発

ハイブリッド型

企画 要件 定義

結合 テスト

総合 テスト

従来型(ウォーターフォール型)

基本 設計

(外部設計)

詳細 設計

(内部設計)

プログラミング 単体テスト

事前に行う

複数開発チームが次々とソフトウェアを製造するため、これら を統合するテスト工程(結合・総合テスト工程)を設ける

sprint(2)

sprint(1)

sprint(3) sprint(4) ・・・ sprint(n)

2週間

(13)

従来型開発との融合

ハイブリッド型アジャイル開発

基本設計書

詳細設計書

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

従来型開発での

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

80%

詳細設計書 基本設計書

(14)

標準値=ポイントを決め、

各ストーリーの相対値を決める

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

見える化の徹底

要求事項A 要求事項B 要求事項C 要求事項D 要求事項E 要求事項F 要求事項G 要求事項H

プロダクトバックログ

ストーリーボード

顧客の要求事項を5W1Hで表す

「ストーリーポイント」を付ける

「ユーザーストーリー(ストーリー)」

に変える

(15)

見える化の徹底

ストーリーボード

要求事項A 要求事項B 要求事項C 要求事項D 要求事項E 要求事項F 要求事項G 要求事項H 要求事項X

スプリントバックログ プロダクトバックログ

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

(16)

見える化の徹底

ストーリーボード

要求事項A 要求事項B 要求事項C 要求事項D 要求事項E

要求事項F 要求事項G 要求事項H 要求事項X

スプリントバックログ プロダクトバックログ

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

生産性を上げない限り

プロジェクト全開発期間で 開発可能な量は変わらないため 開発枠が固定される

(17)

見える化の徹底

ストーリーボード

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

・・・

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

(4月第1,2週)

スプリント

ストーリー ストーリー ストーリー ストーリー

ストーリー ストーリー ストーリー

ストーリー ストーリー ストーリー ストーリー

達成感を共有する

開発期間を見極める

(18)

ストーリーボード

見える化の徹底

(19)

見える化の徹底

タスクかんばん

ToDo(未着手)

ストーリー Doing(進行中) Done(終了)

ストーリー1

ストーリー2

タスク2 タスク4 タスク5

タスク3

タスク1

タスク6

タスク2 タスク1

タスク3 タスク4

タスク5 タスク6

あんどん表示

(20)

見える化の徹底

タスクかんばん

(21)

見える化の徹底

タスクかんばん(電子かんばん)

(22)

見える化の徹底

テストかんばん(結合テスト以降)

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

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

A機能

ToDo

不具合

Done

テストケース5 テストケース1

テストケース2

B機能 不具合

テストケース3

テストケース4

C機能

Doing

不具合

テストケース6

テストケース1

テストケース2 テストケース3 テストケース4

テストケース5

テストケース6

(23)

テストかんばん(結合テスト以降)

見える化の徹底

ToDo 不具合レーン Done

(24)

見える化の徹底

バーンダウンチャート(進捗管理)

(25)

見える化の徹底

KPTボード

Keep Try

継続

問題

強化 挑戦

Problem

(26)

見える化の徹底

今の気持ちは?

開発メンバー全員の気持ち

振り返りの際にシールを貼る

(27)

顧客との協調作業

顧客同室

顧客には開発チームと可能な限り協調して作業をしていただくために、

プロジェクトルームを設け、動作確認のための顧客用PC、専用の打合せ コーナーを用意した。

プロジェクトルームで毎日行われる朝会への参加

顧客にお願いしたこと・・・

朝会後、プロジェクトルームでの短時間の打合せ スプリント毎の計画会議への参加

スプリント毎のレビュー

区切り区切りでの慰労会参加

(28)

開発メンバ 開発担当者

Redmine

Subversion Jenkins Tomcat

開発環境の自働化

①チケット登録

⑧結果通知

②コミット

④コミット通知

③コミット通知

⑦チケット登録 ⑤ビルド・静的解析

・テスト・WAR作成

⑥デプロイ

・GUIテスト

毎日の全アプリケーション自動コンパイル&リンク(ビルド)

毎日の全アプリケーション自動テスト(リグレッションテスト)

継続的インテグレーション

開発ツールを駆使し、ビルドとテストを頻繁に行うことにより開発効率の 向上と品質の向上を実現すること。

(29)

まとめ

アジャイル開発への期待

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

開発費用を安くできる

要件の定義は必要。早期リリースで思い違いを早く見つける。

カイゼンやムダの排除、シンプルな考え、自働化で生産性を上げる。

動くソフトウェアを重視し、ドキュメント作成稼動時間を低減する。

要件の早期確定、開発期間短縮、コスト低減を実現

(30)

まとめ

アジャイル開発 成功のポイント

ワーキングスタイルの変革 強いリーダーシップ

カイゼンマインドの定着

コミュニケーションロスの低減 顧客の理解と合意

顧客の迅速な意思決定

参照

関連したドキュメント

ANSYS ICEM CFDの生い立ち ICEM CFDは1990年代初頭にコントロールデータ社の ドイツ法人により作られ、30年が経ちました。

Biz/Browser製品開発者が語るリッチクライアントによる

Copyright 2015 iGUAZU Corporation Zend Server 7.0の主な機能のまとめ 21 (Edition 対比表の番号順で記載) ① 実行環境の履歴管理 Zend Server

componentの開発サイクル • デバイス上で Recipeとソースコード(artifact)を作成 ディレクトリ構成例 •

7 BlackBerry の特徴 の特徴 ・カナダRIM(Research In

育成においては以下の4つの機能が必要 発掘 育成 指導者教育

将来の発展へ向けたいくつかの展望 • 独自性の追求 • 物質科学研究に役立つ

アーキテクチャは、以下の6つの機能グ ループから構成される。 ・端末機能グループ