20180907 第2回enPiT-Proスマートエスイーセミナー: アジャイル品質保証と組織変革に参加してきました
20180907 第2回enPiT-Proスマートエスイーセミナー: アジャイル品質保証と組織変革
所感
- 結構人が多く、熱心に聞き入っていた。
- XP祭りの前夜祭扱いということで、会場下見もかねて?
- アジャイルが不確実性への対応ということで品質はケースバイケースしかないと考えていたが、色々な整理の方法があることを知れてよかった。
アジャイル品質保証パターン: Quality Assurance から Agile Quality へ
- Joseph Yoder(The Refactory, Inc.)
- @metayoda
- MVPではなく、MAP(Minimum amwsome product)
- 課題
- どうやってスケールするか?
- セキュリティどうする?
- テストは??
- 成長するシステムは、非常に複雑で、多くの依存関係を持つ
- Big Ball of Mud : スパゲッティコード
- なぜデファクトスタンダードと、我々が実践すしていることのギャップが大きいのか?
- なぜ高品質システムを構築したいのに、こうなってしまうのか。。
- Financial Times でも取り上げれている
- どうやってリーンでアジャイルであり続けられるのか? 開発の継続がポイント
- ビジネスのS曲線。成熟してくると開発はなだらかに。
- システムの品質
- パフォーマンス
- セキュリティ
- スケーラビリティ
- 可用性
- 信頼戦
- 保守性
- 進化性
- テスト容易性
- デプロイ容易性
- 最後の四つが開発スピードに影響
- バリューがプラクティスを工藤する(Values Drive Practices)
- アジャイル・リーン
- 設計の価値
- デザインのシンプルさ
- 迅速なフィードバック
- 頻繁なリリース
- 継続的改善
- チームワーク・信頼
- Agile Development Accelerate Delivery(Wikiに図がある)
- 品質面でアジャイルになる
- (品)質は行為ではなく、習慣(habit)である:アリストテレス
- 障壁の解体(打破する)
- 物理、文化的な障壁、言語、コミュニケーションなど
- 品質保証チーム(QA)
- プロダクト、プログラムマネジメント、品質保障、アーキテクトの相互作用
- 最終責任地点(Last Responsible Moment:最大限遅れさせられる地点)を選択する
- Responsible Momentを計画する
- 品質検討するためのロードマップを定める
- 視認性(可視化)が重要
- バックログを色付けし、アーキテクチャ作業の可視化と明治を行う
- CI(継続的インスペクション)でコードの匂いを検出。メトリクス(テストカバレッジ、サイクロマティック複雑度などを)自動で計測
- 改善するためには余分な時間が必要(Slack Time)
- 余分な時間を可視化する。
- ジャーニーである
- コミットする
- 徹底的に従う
- プラクティスを熟慮する
- 改善する
- 参考
https://qiita.com/kenjihiranabe/items/a0795dbdab4c58e746a1
OODAと品質保証:アジャイル開発に置ける品質管理のアプローチ
- WFの品質保証のアプローチをそのままアジャイルに適応できない、という課題からくる
- OODAループ
- 戦局を左右するのは、情報量と意思決定のスピードである
- 相手を観察、状況判断し、意思決定し、行動する
- 相手も同じことをした場合、早く行動したほうが勝つ
- ソフトウェア開発モデル:Vモデルにフィードバックを加えたWモデルがある
- アジャイルの場合は、テストをOODAする。テストと学びを短いサイクルで実施、享受する
- QAのアジャイルとは?Steleth:ステレス。開発の人からは見えない存在になれ。開発の初めから入り込め
- ステルスモード:まずは見守る:朝会
- 朝会の目的:リスクセンサー
- ステルスモード:まずは見守る:朝会
- DevQAとして、品質保証部門の関係も
高生産性と信頼性におけるアジャイル形式工学手法
- Agile-SOFL
- アジャイル手法を好きになれるか?
- プロジェクトが小さい、短い場合はYes。(5000LOC,5ヶ月内の場合は気にせず導入すれば良い)
- 大きい、クリティカルなシステムはNo。深い理解が必要になるため。バグに繋がってしまう
- SOFL:仕様を書くことによってユーザーのニーズをはっきりさせる
- セーフティとセキュリティに関するところはフォーマルに、それ以外はセミフォーマルでよい
- テストデータの自動生成、テストの自動実行まではできる
- 結果の分析が時間かかる