タグ

ブックマーク / www.ryuzee.com (15)

  • FAQ

    SCRUM BOOT CAMP THE BOOK【増補改訂版】 スクラムチームではじめるアジャイル開発著者/訳者:西村 直人、 永瀬 美穂、 吉羽 龍太郎出版社:翔泳社発売日:2020-05-20単行(ソフトカバー):288ページISBN-13:9784798163680ASIN:4798163686 アジャイルコーチングやトレーニングを提供しています株式会社アトラクタでは、アジャイル開発に取り組むチーム向けのコーチングや、認定スクラムマスター研修などの各種トレーニングを提供しています。ぜひお気軽にご相談ください。 詳細はこちら エンジニアリングマネージャーのしごと ―チームが必要とするマネージャーになる方法著者/訳者:James Stanier / 吉羽龍太郎 永瀬美穂 原田騎郎 竹葉美沙出版社:オライリージャパン(2022-08-26)定価:¥ 3,740エンジニアリングチームのマネ

    FAQ
  • スクラムマスターを雇う時に聞いてみるとよい38個の質問に答えてみた

    みなさんこんにちは。@ryuzeeです。 以前書いたスクラムマスターを雇う時に聞いてみるとよい38個の質問という記事に対して、自分も答えてみましたので、以下で紹介します。 なお、既に38個答えた勇者がいるのでこちらも併せて読んでみるとよいと思います。 「スクラムマスターを雇う時に聞いてみるとよい38個の質問」に答えた@katzchang/回答-スクラムマスターを雇う時に聞いてみるとよい38個の質問それでは、行ってみましょう。 スクラムマスターの役割についてアジャイルマニフェストでは「プロセスやツールよりも個人と対話を」といっている。プロセスを守らせるスクラムマスターは、それとは反対のことをしているのではないか?スクラムマスターの関与の度合いはチームの力量や規律の有無、外部との関係性などによって変わります。 チームが自分で解決できない大きな問題をかかえていたり、チームとして機能していなかった

    スクラムマスターを雇う時に聞いてみるとよい38個の質問に答えてみた
  • ベロシティに対する誤解 | Ryuzee.com

    みなさんこんにちは。@ryuzeeです。 スクラムをはじめとしたアジャイル開発の見積りでよく使われるのがストーリーポイントです。 ストーリーポイントは研修でもよく聞かれるテーマであるとともに、誤解も多いものなので、今回基からまとめて解説したいと思います。 なお、文脈の前提として、スクラムでの活用を想定しています。 ストーリーポイントとは?まずは、ストーリーポイントとは何なのかを見ていきましょう。 書籍『アジャイルな見積りと計画づくり ー価値あるソフトウェアを育てる概念と技法』(Mike Cohn 著、安井力、角谷信太郎 訳、マイナビ出版、2009/1/29)の61ページから62ページにかけて、ストーリーポイントは以下のように定義されています。 ストーリーポイントとは、ユーザーストーリーやフィーチャ、その他の作業の大きさをあらわす単位である。 ストーリーポイントを使った見積りではそのような

    ベロシティに対する誤解 | Ryuzee.com
  • WEB+DB PRESS Vol.93に「実践見積り」という話を書いた

  • CakePHP SimpleTest連携時のメッセージ文字化けを修正する方法

    CakePHPSimpleTestの連携で以下のようなソースを書いた。 $data = array('username' => 'hogehoge', 'password' => '1234567'); $this->User->create($data); $result = $this->User->validates(); $this->assertFalse($result, 'パスワードが7文字の時はエラーになること'); んで、失敗するテストとして実行したところ、テスト結果のメッセージ(パスワードが7文字・・・)が文字化けするので調べてみたところ、cake\tests\libにあるcake_reporter.phpに問題があることが分かったので今後のためにメモ。 問題となっているのは42行目 function CakeHtmlReporter($character_set =

    CakePHP SimpleTest連携時のメッセージ文字化けを修正する方法
  • PHPの外部ライブラリの管理にComposerを使う | Ryuzee.com

    みなさんこんにちは。@ryuzeeです。 ComposerはRubyでいうところのBundlerのようなもので、アプリケーションが必要とする外部ライブラリを、そのアプリケーション固有の状態で一元的に管理してくれるツールです。 PHPではPearのようなコマンドを使ってライブラリをインストールすることが一般的ですが、アプリケーションによって必要とするバージョンが違う、といったケースでは問題が起こりやすくなります。 例えば手動でインストールをしていた場合、将来的にライブラリの配布が終わってしまったり、特定のバージョンが配布されなくなると困ってしまいます(したがって、インストールしたバージョンは構成管理の対象とするべきで、常に環境を再現可能にしなければいけません)。 Composerを使うことで、そのような問題からは簡単に解放されます。 なお、ComposerはPHP5.3.2以降で利用可能です

    PHPの外部ライブラリの管理にComposerを使う | Ryuzee.com
  • テスト自動化について5分で分かるまとめ

    みなさんこんにちは。@ryuzeeです。 テスト自動化について簡単に教えてほしいと言われることが多いので、以下にまとめました。 テスト自動化/テスト駆動開発についてXPのプラクティスの中で、最も単体で導入しやすいプラクティスの1つであるこのプラクティスのみで1冊のが書けるくらい奥が深い基的な方法失敗するテストを書くできる限り早く、テストがパスするような最小限のコード体を書くリファクタリングをする適用範囲通常では、独立性の高いクラスやファンクションへの適用が良いGUIや分散オブジェクト、自動生成されたコード、DBのスキーマに関するテストは導入が難しい既存システムにおいて、テストが準備されていない場合に、部分的に導入するのは難易度が高い。したがって新規プロジェクトの初期から導入することが望ましい問題点開発者が仕様を誤解していた場合、誤解に基づくテストコードが作成されるため、誤解の検知は保

    テスト自動化について5分で分かるまとめ
  • CakePHP2.0+Jenkinsで継続的インテグレーションを行う方法

    みなさんこんにちは。@ryuzeeです。 CakePHP2.0になってテスティングフレームワークがSimpleTestからPHPUnitに変わったことで、以前に比べると大分簡単にはなっていますが、まとまった情報が少ないので整理しておきます。 事前準備JenkinsのインストールおよびCIサーバへのPHPのインストールは済ませておいてください。 CakePHP2.0でCIを行う場合は、以前のようにStagehand_TestRunnerを使ったりPhingを使う必要はありません(Phingは以前も使わない手もあった)が、PHPUnit、Xdebugのインストールは行なっておきます。 また今後利用するであろう、PMDやCPD等も導入しておくと良いでしょう。 なお、今回の作業はCentOS5.7上でPHP5.3.8を利用して行いました。 PHP関連のパッケージ導入 pecl install xd

    CakePHP2.0+Jenkinsで継続的インテグレーションを行う方法
  • 自動テストのfixtureを効率的に管理する方法

    みなさんこんにちは。@ryuzeeです。 僕がやっている案件(PHP)はもともとテストコードのないレガシーなプロジェクトで、それを改善するためにずっと動作を確認するための結合レベルの自動テストを増やしてきました。 そんな中で、僕のところではどうやってテスト用のfixtureを管理しているか事例として紹介したいと思います。 最初にコアとなるfixtureを用意するみんながたくさんテストを作る前にコアとなるテスト用のfixtureは用意しておきます。 さもないと、みんなが好き勝手にfixtureを作ってしまい、あっという間に混乱に陥ります。 プログラム体と同様に、DRYの原則で、同じようなテストデータを繰り返し作ってしまうようなことは避けるべきです。 最悪なパターンは、開発機や番機のデータを引っこ抜いてきて、それをそのままテストデータとしてごっそり使う方法です。 流石に居ないと思いたいです

    自動テストのfixtureを効率的に管理する方法
  • 5分で分かるデプロイ自動化への道

    12月20日に第1回ワンクリックデプロイ勉強会で、デプロイの自動化について好き勝手に喋ったりデモしたりする予定なのですが、当日話す内容の概略について以下に載せておきます。 以下にあげることをやっておけばデプロイ自動化、ワンクリックデプロイはそんなに遠くないところにあると思います。 ソースコードのバージョン管理いわずもがな。全ての起点はここにあるコードの共同所有の原則への理解このソースコードは番環境または開発環境などで同じように動作しなければならないテストを書く習慣、コミット前に他のテストも含めて通してからコミットする習慣設定ファイルのバージョン管理環境によって異なる設定値(接続先データベース情報など)が書かれた設定ファイルもバージョン管理する開発環境用、ステージング環境用、番環境用などに分けて定義し、容易に切り替え可能にする番環境に配置する際に、アプリケーションの各所を書き換えなけれ

    5分で分かるデプロイ自動化への道
  • PHPでもHudson使うべし

    今までもPHP案件でCIはしているんだけど、環境にはCruiseControl+phpUnderControlという構成で、これももう古いなぁと思ったのでHudsonに移行してみた。 感触としては、PHP案件でもHudson使うべし、でいいんじゃないかな。 導入 今回導入した環境はCentOS5.3なので、rpmを使ってインストールできる。 sudo rpm --import http://hudson-ci.org/redhat/hudson-ci.org.key wget http://hudson-ci.org/latest/redhat/hudson.rpm rpm -Uvh hudson.rpm なお、当然のことだが、Hudsonを動作させるためにはJDKのインストールが必要なので、先にインストールしておく。 インストールが完了したら自動起動の設定をして、起動する。 /sbin/

    PHPでもHudson使うべし
  • CakePHPアプリをHudsonで継続的インテグレーションする方法

    この記事はCakePHP1.2系またら1.3系を対象としており、CakePHP2.0系では別のアプローチになります。 不思議なことにCakePHPアプリの開発でHudson使って継続的インテグレーションしている事例をほとんど見たことがないんだけど、個人的にはPHPアプリだって全部HudsonでCIすべきと思っているのでやってみた。 (ちなみに最近までphpUnderControlでCIしていた) 概略 CakePHPアプリでCIやろうとして問題になるのは、 CakePHPでのテストライブラリがSimpleTestでありJUnit互換のテスト結果を出力できないこと さらにSimpleTestでは一応XMLでの結果出力ができるのに、CakePHPreporterにcake_xml_reporterとかが無くて、html出力かテキスト出力しかできない という2点にあるので、この2点をクリアする

    CakePHPアプリをHudsonで継続的インテグレーションする方法
  • CakePHPアプリをNetBeans+xdebugでデバッグする

    2012/5/26 追記と修正を行いました よくあるパターンの割に、Eclipse(PDT)での解説しかないので、今後利用する人のために手順を残しておく。 確認した環境は以下の2つだ。 MacOS X(Snow Leopard) + NetBeans6.9.1 + CakePHP1.3 + xdebug2.1.0。ApacheはMAMPではなく、MacPortsでインストール MacOS X(Lion) + NetBeans7.1.2 + CakePHP1.3 + xdebug2.2.0。ApacheはLion標準。PHPはHomeBrewでインストール PHPにpearを組み込む xdebugのインストールにはpeclコマンドを利用するのだが、MacPortsで何も考えずにPHPをインストールすると、pearがサポートされない形になっているので以下のようにして、pearを組み込む。 su

    CakePHPアプリをNetBeans+xdebugでデバッグする
  • PHPでBDD(Behavior Driven Development)する方法

    みなさんこんにちは。@ryuzeeです。 RubyであればRSpecやCucumberとか使って、むしろBDDしているケースの方が多いようですが、PHPでやっている事例はあまり聞きません。 とりあえずPHPでもBDDできることは確認できたので、その方法をご紹介します。 ※実戦投入にはもうちょっと検証は必要かもしれません。 BDDとは?BDDとはビヘイビア駆動開発(Behavior Driven Development)でテスト駆動開発から派生したものです。 テスト駆動開発とドメイン駆動設計を統合したようなイメージになります。 対象における「振る舞い」や「制約条件」の検証のために、自然言語的な記述でテストコードを記述します。 スペックファーストで仕様を作ってから実装するという流れになります(コードを書く前に振る舞いを決める)。 ということで、以下ではPHPでBDDを行う方法について解説してい

    PHPでBDD(Behavior Driven Development)する方法
  • BehatとSeleniumを組み合わせ受け入れテストを自動化する

    みなさんこんにちは。@ryuzeeです。 Behatは良さそうなので引き続き検証しています。 今回は、BehatとSeleniumを組み合わせて、受け入れテスト型のテストを自動化してみたので、その方法について説明しましょう。 なお、前回の記事を読まれていない場合はまずそちらを参照してください。 PHPでBDD(Behavior Driven Development)する方法 Seleniumの課題僕が関わっている案件では受入テストを自動化しているケースももちろんあって、その際はPHPUnitとSeleniumを組み合わせています。 このテストには以下のような課題があります。 画面の操作をするphpコードが大量にあって、ソースを見ただけでは何をしているのか分かりにくいSeleniumは操作に画面の要素名利用するため、例えばサイトのデザインを大幅に変えたりすると、テストの中身も大幅に書き換えな

    BehatとSeleniumを組み合わせ受け入れテストを自動化する
  • 1