うさぎ組

ソフトウェア開発、チームによる製品開発、アジャイル、ソフトウェアテスト

Scrumが難しいのは幻想-情熱の再定義- を講演してきました。 #RSGT2018

私が所属しているチームは2017年にいろんなプラクティスを実践してきました。その内容をRegional Scrum Gathering Tokyo 2018で発表しました。

2018.scrumgatheringtokyo.org

confengine.com

発表内容の概要

私達のチームは2016年までメトリクスの活用、スプリント期間の短縮、くじ引きで決めるPOやSM、などのプラクティスを通して改善を繰り返してきました。スクラムガイドもどんどん破りました。

このチームはScrumが難しいなんて思っていませんし、誰でも出来ると信じています。

チームが開発する製品は大きく変わりましたがScrumが難しいなんてことはありませんでしたし、

なによりこのチームのエッセンスを大学生40名に導入したところなんと1週間で1日スプリントをモノにしました。Scrumが難しいのは幻想だったのかもしれません。

我々のチームはこういったことを通して2017年にいくつかのプラクティスを確立しました。スプリント期間は1時間へ、チーム内ボトルネックへの対応時間は25分以内を保証、人的リソース活用の損益分岐点を常に意識できる開発プロセスです。

結果、1週間でレビューを35回以上、振り返りを30回以上行っています。1週間で改善した項目は最大で20アイテムにおよび、それらのムダ取りによって6ヶ月間で最大2倍の成果を生み出しています。

チームのパフォーマンスを最大化するために私達の計画的な学び方、偶発的事象からの学び方などをScrumの文脈でご紹介します。

スライド

speakerdeck.com

2017年の資料

Scrumありがとう、 そしてさようなら -Scrum 破- #rsgt2017 // Speaker Deck

2016年の資料

Scrum,Test,Metrics #sgt2016

Spockのレポート生成はHTML, Markdown, Asciidocできるし、カスタムも出来るんだぜ

GroovyのテスティングフレームワークであるSpockは標準ではレポート生成機能はありません。 多くはGradleでビルドしたときのxmlやhtmlを利用していると思います。

Spockにはspock-reportという拡張ライブラリがあり、これを依存関係に追加するだけでテスト結果のレポートを独自に追加で生成できます。 しかもなんと、HTMLだけではなくMarkdownやAsciidocとして生成することもできます。 また、最新のspock-reportではテストコードからレポートに文章を追加することも出来るようになりました。

今回はそんなspock-reportの便利機能をいくつか紹介します。

github.com

本ブログで説明しているサンプルコード全部入りのspockおよびspock-reportのプロジェクトテンプレートはこちら。

github.com

本記事はG* Advent Calendar 2017の16日目になります。

G* Advent Calendar 2017 - Qiita

  • 最低限の使い方
  • レポートをMarkdown/Asciidocとして生成する
  • テストコードから説明を追加する
続きを読む

Spock1.1の新機能紹介

SpockというGroovy言語で記述するテスティングフレームワークがあります。 今回は2017/05/01にリリースされたバージョン1.1の新機能のうち3つを紹介します。

Spock リリースノート

本記事はG* Advent Calendar 2017の14日目です。

  • verifyAll メソッドによる(Soft Assert)
  • where句のデータテーブルで左側の値を参照できる
  • @PendingFeatureで未実装機能マーカーでテストを実行しない
  • その他
続きを読む

GroovyのAST変換事情

Groovy言語ではAST変換をサポートしているのでその昔からAST変換をつかったライブラリがそこそこあります。 アノテーションでコード生成やボイラープレートなどの短縮、コード検査があります。

今回はAST変換の書き方というよりどういった成果物があったり、参考になる情報をまとめておきます。 本記事はG* Advent Calendarの12日目になります。

G* Advent Calendar 2017 - Qiita

  • AST変換の方法
  • AST変換の事例となる実装
続きを読む

メールのテストとか気になっているやつ

メールのテストを中心にまとめました。

  • メールのテストのためのSMTPサーバ SaaS
  • メールのテストのためのSMTPサーバ OSS
  • メールのテストで気にすること
  • Gmailにおける迷惑メール判定の見方
  • 証明書の情報を確認
続きを読む

爆速WebFW(らしい) Light-4JをGroovyから使ってみる

G* Advent Calendar 5日目の記事です。

JVM上で使えるWebAPIを開発するFWなどは多々ありまして、ハイパフォーマンスなものを探していたらどうやら Light-4Jというものがあるらしいと聞きつけました。 彼が言うにはそこそこ速いということで、ベンチマークも出しているんだぜと。

doc.networknt.com

www.techempower.com

鵜呑みにはできないし、使い方とか知りたいので最小限のプロジェクトテンプレートをつくってみました。

github.com

JDK8が入っていれば、 ./gradlew runhttp://localhost:8081/baz で bazというテキストがレスポンスされると思います。 サンプルプロジェクトを移植しただけなので、Groovyらしさとかテストコードもありませんが。(ルーティング部分だけだったので)

Light4Jでは、Swagger 2.0, Open API 3.0, GraphQLに対応していたり、OAuth2.0に対応していたり、マイクロサービストレーサビリティ(X-Traceability-Id)に対応していたりとしていてよい感じです。(それぞれがライブラリで管理されているのもよい)

今回のプロジェクトテンプレートはそういったものは使っておらず、単純なAPIルーティング形式だけです。以下は使っている部分に関する知っていることの紹介です。

  • Java向けを考えて開発されている
  • 基本的な依存はundertow
  • いろんなものがライブラリに切られている
    • service.yml
    • server.yml
  • で、パフォーマンス
続きを読む

ファシリテーターズ・インタビュー 中埜博×安井力×森雄哉(スピンオフ企画) の感想文

ソフトウェア開発界隈でも影響があるパターン・ランゲージについての動画を見ました。 つい先日、(パターン・ランゲージの創始者であるクリストファー・アレギザンダーの弟子である)中埜さんがパターン・ランゲージについて話すというイベントがあったらしく、それが動画で公開されているっていう。

youtu.be

  • 見て思ったこと
  • 今後
  • 参考書籍
続きを読む