角征典のレビュー一覧
-
Posted by ブクログ
Clean Craftsmanship
プログラマーのRobert C.Martin氏の著書です。
倍増する経験の浅いプログラマーに向け、プロのプログラマーが持つべき規律、基準、倫理とは、何であるかを解説した本になります。
【本書で学べること・考えること】
- 規律
XP(Extreme Programming)プラクティスの「サークルオブライフ」から、技術に関する以下の5つのプラクティスをベースに解説しています。
- テスト駆動開発
- リファクタリング
- シンプルな設計
- 協力的プログラミング
- 受け入れテスト
- 基準
基準とはベースラインとなる「期待」であると定義し、以下の項目を解説しています。 - 生産性
- 品質
- 勇気
- 倫理
倫理では、プログラマーの仕事の重要性を説き、プログラマーの誓いとして12項目について解説しています。
読んでみての感想です。
ボブおじさんのCleanシリーズの最新刊です。
本書の内容としては、テスト駆動開発、リファクタリング、シンプルな設計の規律に関する記述が多くを占めています。
特にテスト駆動開発が、すべてのスタートであり、これが無くては何も始まらないからです。
でも、TDDってやり方がわからない・・・
大丈夫です。
本書では、Web上でボブおじさんが実際にTDDを行っている動画を5本観ることができます。こんな感じで進めるのかとイメージが湧くと同時に理解しやすいです。
ボブおじさんのハイテンションも面白いです。(笑)
基準や倫理については、プログラマーの構成人員の関係上、あまり体系的にまとめられた資料がなかったので、非常に有益です。
今後も増え続けるプログラマー間の競争を生き抜くためにも、規律、基準、倫理を理解しておきたいと思える良書でした。
ちなみにサンプルコードはJavaです。 -
Posted by ブクログ
Clean Agile 基本に立ち戻れ
プログラマーのRobertC.Martin氏の著書です。
アジャイル宣言以後、プログラミングの世界で定着したアジャイルですが、広がるにつれ誤解も一緒に広がっています。
アジャイルとは何なのかを、基本に戻って確認するための一冊です。
【本書で学べること・考えること】
- アジャイルの歴史(アジャイル宣言)
- アジャイル概要
- サークルオブライフ(XP)
- 顧客、開発者の権利
- ビジネスプラクティス
- チームプラクティス
- テクニカルプラクティス
- アジャイルの価値基準
- 大規模アジャイル
- クラフトマンシップ
読んでみての感想です。
本書を読んで、アジャイルの基本を再認識することができました。
サークルオブライフのプラクティスを利用して、ビジネス・チーム・テクニカルの側面から各プラクティスを説明しています。
体系的にまとめられており、理解が進みました。
また、アジャイルの価値基準では、アジャイルは小から中規模のソフトウェア開発向けであり、大規模アジャイルやハードウェアのアジャイルなどはないということも再認識できました。
印象的だったのは、チームプラクティスでFace to Faceのコミュニケーションを非常に重視している点でした。ココは、普段の業務でも苦労しているので・・・
個人的には、TDDを実践するにあたり、うまくいっていないので、TDDに詳しい技術書を読んで、更に実践できるようにしたいです。 -
Posted by ブクログ
ネタバレアジャイルは経験したことがないが、もし経験した時にはこの本をもう一度読み返して、アジャイルの本質は忘れずに取り組んでいきたい。
アジャイルと一緒によくでてくるXPやTDD等、本書の言葉でいえばメソドロジーにこだわるのではなく、そのメソドロジーで叶えたいとしているイデオロギーを見据えることが大事であるというのは、見失わないようにしたい…。
本書ででてくるプラクティスも、いずれはよりよいプラクティスに代替され、マニフェストも塗り替えられていくのかもしれない。
アジャイルだけに限らず、ソフトウェアの開発手法の本質について考えさせられる内容でした。
-
Posted by ブクログ
最初は読みにくいなぁと思っていた。
ただ、「2章の「ノー」と言う」につい食いつきました。
プロフェッショナルというのはどういうことか?という話なのですが、自分も含め、どれだけプロではないことをしていたのかと反省しました。
責任を持って、出来ないことを言うことが大事であること、コミュニケーションをとって、相手が何を望んでいるかを把握すること。その望みをかなえる為に、別の提案で出来ないかを考えること。
その他、プロが見積もりを立てる時、予定完了時間と分散を使った確立的な見積もりを提出することが多い。不確実性があるから、当たり前のことですね。
今まで、やってみますと言って、残業して必死に対応したものの、あまり役に立たなかった、使われなかったことが多々あるなぁ。もう、そんなのは止めよう。 -
Posted by ブクログ
スクラムを始めたときから、何回も開いている。
ここに答えはないが、考えるための要素がある。
これまで一気通貫で読んだことがなかったので、通しで読んでみた。
結果、あらためてスクラムは難しいと思った。
予想として良しとするのか、コミットメントしてやり切るのか。
どっちが正解なのかわからない。
本気なのか適当なのか。
本気でやってても、他人からみたら適当レベルに見えるかもしれない。
ただ開発はチームで行っていて、人と一緒にチームを形成している。
一人ひとりが異なるのだから、どのチームでも正解なんてないのと同じように、
そういうことを受け取られる可能性の一つがスクラムなのだと思う。
スクラムを用いることで、チームに最低限のルールを示し、
一人ひとりが異なることを前提に、チームで前進していくしかないのだろう。
(以下抜粋。○:完全抜粋、●:簡略抜粋)
○私自身は、開発チームはすべからく、各スプリントで何を届けられるかを予想(見積もり)しなければならないということに賛同する。しかし、予想を基にコミットメントを導きだすことで、利益を得られる開発チームも多い。コミットメントによって、プロダクトオーナーと開発チームの間にも、開発チームの内部にも、相互の信頼関係が築かれる。(P.18)
○プロダクト開発の初日には、自分たちが何をしているかについての情報は最も少ない。開発が続くにつれて、少しずつ学習していく。それではなぜ、最も重要で、おそらくやり直しの利かない判断を初日、もしくは初期に行おうとするのだろうか?(P.38)
○ただ実際のところは、ほとんどの技術的ストーリーはプロダクトバックログに入れるべきではない。代わりに、これらのストーリーはビジネスストーリーの関連タスクとするべきだ。(P.88)
●プロダクトバックログアイテムの例:PBIの形式は、フィーチャー、変更、不具合対応、技術的な改善、知識の獲得
○みんなでグルーミングすることでさまざまな意見がを引き出せることを知っている。みんなの意見や、それぞれの立場から視点を活かせば、重要な情報をもれなく引き出せる。また、いろいろな立場のチームのメンバーをグルーミングに参加させると、プロダクトバックログについての明確な理解を共有できる。(P.102)
○見積もりはコミットメントではない(P.120)
○技術的負債があまりにも増えすぎてしまうと、そのプロダクトに関して何らかの予測をするのはほぼ不可能になる。(P.139)
○負債を返済する手段として一括払いを選ぶことが多い。それよりは、何回にも分けて、適切なタイミングでインクリメンタルに既知の技術的負債を返済していくほうがよい。(P.154)
○チームを小さく保つ理由を以下のように述べている。
・誰かがやってくれるから自分はやらあくてもよいという「社会的手抜き」が少ない。
・小さなチームは建設的なやり取りが頻繁に発生する。
・調整に必要な時間が少ない。
・誰も陰に埋もれることがない。
・小さなチームのほうがメンバーを満足させることができる。
・有害な過度の専門家が発生しにくい。(P.197)
●Appelo による7段階の権限レベル、通知、説得、相談、合意、助言、確認、委譲(P.218)
●伝統的なプロジェクトマネージャーの責務は一貫性の管理、スコープ、時間、コスト、品質、チーム、コミュニケーション、リスク、調達。PO、SM、開発チームはこれらの責務を分割、あるいは共有する。(P.226)
○事前にきちんと計画を作れると思うな(P.235)
●プランニングのレベル(P.244)
・ポートフォリオ:おそらく年単位
・プロダクト:数か月単位、あるいはもっと長期
・リリース:3か月から9か月
・スプリント:1週間から1か月
・デイリー:毎日
○MRFは最低限の「必須」フィーチャーを表すものだ。つまり、顧客が期待する価値や品質をもたらすために、今回のリリースに必ず含める必要があるフィーチャーである。リリースプランニングの中でも重要なのが、今回のリリースにおける真のMRFが何なのかを再評価して見直すことだ。(P.300)