BT

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

寄稿

Topics

地域を選ぶ

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

  • TDDの5つの前提 - GeePaw Hill氏に聞く

    TDDは単なるテクニックではない、プログラミング全般のスタイルであり、関連する行動や考え方の統合システムである。TDDの5つの前提は、我々が活動するリングを提供する。それらはTDDを行うものが呼吸する大気なのだ。

  • コードレビューの実際

    コードレビューは、バグを見つけたり、他のチームメンバーからインプットを得たり、知識とオーナーシップを共有するのに最適な方法だ。最大の恩恵を受けるには、コードレビューを開発プロセスに統合して、レビューされていないコードが本番環境に投入されないようにしなくてはならない。レビューは、開発プロセスにおける解決を必要とする未解決問題を明らかにするのに役立つ。

  • なぜ、どのように、いつ読みやすいコードを書くか

    ほとんどの開発者が読みやすいコードを欲している。開発チームは機能性より読みやすさを好ましいと思っているかもしれない。しかし、読みやすさを定義しようとすると、意見が割れる。Explore DDD 2018でLaura Savino氏はなぜ読みやすいコードが良いのか、読みやすさとはどういうことなのか、他の考慮点よりも読みやすさが絶対的に優先度が高い場合はどんな場合か、について話をした。

  • ビジネス成果に注目するBarclays

    Barclays作業部長のJonathan Smart氏とPMOのMorag McCall氏が、先月ロンドンで開催されたDevOps Enterprise Summitで、アイデアのトリアージから製品としてのリリースに至るまでの作業フロー全体の再考について講演した。具体的な内容は、アプリケーションおよびサービスポートフォリオの管理方法へのアジリティの導入と、PMOおよび財務部門の役割の変更である。

  • 少ない作業時間で多くの仕事をするには

    Jason Lengstorf氏は、自身の仕事の方法が原因で体を壊したことをきっかけに、コンピュータの使用時間を週40時間に制限することを決め、集中度の高い作業ポケットを設定した。労働時間を少なくすれば、過労や集中力の欠如を防止することができる。労働時間と同じようなケアレベルで休息時間を扱うこと、創造的なつながりを作り、元気を取り戻し、作業の目的を思い出すために休憩を利用することが必要だ。

  • 持続可能なソフトウェアとアジャイル

    持続可能なソフトウェア(Sustainable software)は、変更をより短期間で顧客に提供するとともに、バグ可能性の低減、アプリケーションの総所有コストの削減、ビジネスアジリティの向上を可能にする。ソースコードの自動解析、専門家による技術的アーティファクトのレビュー、ベンチマークデータの比較を組み合わせることで、ソフトウェアの持続性を検証することが可能になる。

  • 創造、協力、革新のためのソフトウェアエンジニアリング

    ソフトウェアエンジニアリングは、反復的で、フィードバックに基づき、漸進的��実験的で、実証的でなければならない。 C職人技は十分ではない。エンジニアリングは増幅器であり、創造性と協力、発明を強化する。継続的デリバリはエンジニアリングの原則に根ざしている。

  • プログラマーの誓い

    社会は私たちにプロフェッショナルとしての振る舞いを要求している。人生と運命がソフトウェアの適切な構築と実行に依存しているため、私たちにはプログラマーの誓いが必要である、とRobert Martin氏は主張している。彼によると、これは将来的にはプロフェッショナル組織の会員により強制されるべきである。

  • Wyndham Vacation Rentals UK社におけるアジャイルとDevOpsの導入

    アジャイルとDevOpsの導入は、Wyndham社におけるQAの役割にプラスの影響を与えた。ライフサイクルの初期段階における取り組みにフォーカスすることで、バグやポストプロダクション問題の少ない、スムーズなリリースに繋がった。テストすることは共同責任となり、ビジネス部門と顧客はこれまで以上にデリバリーサイクルに関わるようになった。

  • Meetupでの技術的負債の取り組み

    継続的に製品の健全性を保つには定期的に一番影響のある技術的負債を優先順位付けして、それらを全体的に解消していくことだ。MeetupのCTOであるYvette Pasqua氏は、技術的負債に対する取り組み方を継続的に繰り返し適用することでより大きな成果を生み出すことを推奨している。最も影響の大きい負債から取り組み、その負債を解消したことで生まれる改善について伝える、というのが氏の主張だ。

  • クラウドソーシングテストを管理する

    クラウドソーシングテスト(Crowdsourced Testing)とは、クラウド — 実在のユーザとテスタ — が現実の条件下でテストに参加するという、ユニークなテスト手法だ。Swisscomにおいてそれは、開発プロセスの早い段階での欠陥発見と製品の品質向上に役立っている。

  • リーンプラクティスによるアジャイルプロセスの品質向上

    アジャイルマニフェストとリーンプラクティスは極めて相互補完的であり、強力なアジャイルプロセスの品質を向上する上でリーンは有効に作用する。実際のクライアントや代理人にインタビューして彼らの痛点を深く理解し、プロセスを部門間のハンドオーバに分割して視覚化することにより、問題点がより早く発見できると同時に、それらの問題を低コストでより効果的に解決することが可能になる。

  • IBMのEvan Leyboum氏が提唱する“アジャイル制約の理論”

    Evan Leybourn氏は、間もなく開催されるAgile Indonesiaカンファレンスで講演を行なう。氏はInfoQに、自身のアジャイル制約の理論(Theory of Agile Constraints)について、取り組みにおける価値の定義、アジャイル予算と#NoProhectrsなどについて話してくれた。

  • よりテクニカルなテスタになるには

    テストの実施において、テクニカルなテスト技法(test craft)のテクニックをうまく適用できるテスタは、チームの品質と生産性の向上を実現するという意味から、より価値の高い存在である。テスタがよりテクニカルになるためには、コードについて学ぶとともに、テキストファイルを操作し解析する方法、アプリケーションプラットフォームにおいて最も重要な分析ツールを扱う方法を知っておくことが必要だ。

  • 自動受け入れテストは継続的デリバリをサポートする

    自動受け入れテストは、継続的デリバリのスタイルを持つテスト戦略に欠くことのできないコンポーネントであり、システムの振る舞いに対して、異なった重要な洞察を与えるものだ。Dave Farley氏の主張によると、開発者は、受け入れテストが動作して通ることに責任を持たなければならない。開発チームとは別にQAチームを持つのは望ましいことではないだろう。

BT