BT

最新技術を追い求めるデベロッパのための情報コミュニティ

寄稿

Topics

地域を選ぶ

InfoQ ホームページ Delivering Quality に関するすべてのコンテンツ

  • コメントを書くべきか書かざるべきか

    開発者ならだれもが、自分のコードに最低一行はコメントを書いているはずだ。コメントをたくさん書いて、コードをもっとわかりやすくしようとする人もいる。この記事では、コードにコメントを書くときに使われるプラクティスを集めてみた。

  • 継続的デプロイのプラクティス

    継続的デプロイは、リーン開発の"仕掛排除"運動で最近注目されている。多くの人が、これについて興味を持ち、価値のある目標を見出している一方、これが実際どのように達成されたかをなかなか可視化できていない。Ash Maurya氏は会社で起こった自身の経験を説明することで、このギャップを埋めようとしている。

  • 安定化スプリント - 必要悪か、それとも純粋な無駄か?

    安定化スプリント("Stabilization Sprint")とは、製品をリリースする前、通常の開発サイクルの最後に付け加えられる付加的なスプリントである。名前が示している通り、このスプリントは通常プロダクトを最後にもう一度叩き、最後のバグを出すためのものである。これはアジャイルに属するものなのか?それとも「完了」すれば充分なのか?

  • 技術的負債を解剖する

    "技術的負債"という言葉はWard Cunningham氏によって作られた。この言葉が表すのは、短期的には簡単に実装できるが長期的には大きな悪影響を生み出すような設計上の方法を採用してしまったがために、開発チームが引き受けざるを得ない義務のことだ。技術的負債をどう考えるべきか、どのように分類できるか、についてアジャイルを実践する人々がそれぞれの見解を表明している。

  • ソフトウェアの負債には多額の費用がかかる

    “Continued Delivery of High Values as Systems Age”(システムの年数を重ねながら、高い価値を提供し続ける)という最近の記事において、 Chris Sterling氏がソフトウェアの負債の概念について論じている。“ソフトウェアの負債は、長年にわたってシステムの変わりやすい性質を軽視し、急いで完成させることに注目し続けるときに蓄積していくものだ。”ソフトウェアの負債は技術的負債以上のものであり、価値を提供する能力に影響する様々な面を含む。

  • Ruby on Rails プロジェクトを救助する

    Ruby on Railsが世に出て5年ほどの間,開発者たちは数多くのアプリケーションを開発してきた。その多くがRubyないしRuny on Railsを習得しながら開発されたため,ベストプラクティスとは言いがたいが,それでもWebサイトとして製品にはなっている。これらのWebアプリケーションには問題もあるが,その解決方法を取り上げた本が新たに発行された。

  • チームのコード品質

    Jaibeer Malik氏は、チームにおけるコード品質への取り組み方や導入方法を紹介する記事を投稿してきた。氏の一連の記事は、自身のさらなる学習や、そこで得た考えを第三者に伝えなければならない状況に置かれた場合に役立つだろう。一連の記事では、トピックの概要を簡単に述べ、学習をさらに深めるために進むべきさまざまな方向について助言している

  • ペアプログラミングの1ドルの価値

    "なぜこの世界では1つの仕事を2人でするのか?" 初めてペアプログラミングの考え方を紹介されたとき、多くの人は最初にこのように反応する。本質的に、彼らは、ペアプログラミングとはある部分のコードを書くコストが2倍になることだと考える。Dave Nicollete氏が、ある計量的な考え方を示し、ペアプログラミングはお金を無駄にするのではなく、節約することを示している。

  • Kent Beck氏、ごく短期のプロジェクトではテストを省略することを提案

    Kent Beck氏は、ごく短期のプロジェクトにおいて、実行可能なコンセプトがあるかどうか判断するときには、すばやく軌道に乗せるために自動テストをあまり(あるいはまったく)やらなくても構わないと提案している。これはTDDを取り巻く従来の見解に反するものだ。

  • なぜTDDとペアプログラミングで生産量が増えるのか

    テスト駆動開発」と「ペアプログラミング」は、アジャイルプラクティスで最も広く知られているものの2つであるが、まだそれほど多くのアジャイルチームによって実践されてはいない。たいていその理由として、TDDやペアプログラミングなどのプラクティスを取り入れるには「忙しすぎる」点が挙げられるだろう。要するに、これは高いコード品質を得ようと努力することが生産性を低下させることを示唆している。Mike Hill氏は、この論理がなぜ重大な誤りであるか説明している。

  • 品質とは何を意味しているのか?

    ソフトウェア開発において、品質とは何を意味しているのだろうか?今日の使われ方として、Mike Bria氏は次のように述べている:日常より多く見られる使われ方としては、「品質」は「価値があること」のかわりに「欠陥がないこと」を示している。

  • 「結合テストはでたらめだ」- J.B.Rainsberger氏による連載の紹介

    著名なアジャイリストでテスト駆動開発のエキスパートでもあるJ.B.Rainsberger氏(J.B. Rainsberger)が始めたブログでの連載では、「結合テストはでたらめだ」という考えさせられる見解になぜ氏が行き着いたかの説明がなされている。

  • バグトラッキングシステムなんて捨ててしまえ?

    "testObsessed"の名で知られるElisabeth Hendricksonが、アジャイルプロジェクトで使うバグトリアージ手法について、考えさせられる提案をしている。

  • デバッガは忘れて、「Saff Squeeze」を使おう

    XPの提唱者の一人であり、TDDやJUnit自体の開発者であるKent Beck氏は、デバッガの代わりに単体テストを用いて、JUnitの新しい機能であるJUnitMaxの不具合の調査を行うことについて話をしている。

  • コードカバレッジには要注意

    Christian Gruber氏はコードのカバレッジをメトリクスとして使うことに対するTDDのスタンスを、時間をかけて明確にしようとしている。

BT