InfoQ ホームページ Software_Craftsmanship に関するすべてのコンテンツ
-
時代に左右されないテストツールを使う意義
Benjamin Bischoff氏は、開発者にとって、新しいツールは古いツールよりずっと興味深いという。新たなテクノロジーやアプローチが学べ、仕事道具の幅が広がる機会が得られるからだそうだ。しかし、何十年も前からあるツールを使えば、時間と予算を節約できる。ツールを評価する際には、ツールにいきなり飛びつくよりも、解決すべき問題を理解することが重要である。
-
QCon London:Meta社、モノリシック・アーキテクチャを用いわずか5ヶ月でThreadsをリリース
Zahan Malkani氏はQCon London2024で、Meta社の道のりについて、すなわち市場で機会を見出し、わずか5ヶ月後にThreadsアプリケーションをリリースするまでについて語った。同社は、Instagramの既存のモノリシックなアーキテクチャを活用し、記録的な速さで新しいテキストファーストのマイクロブログサービスを作成するために迅速に反復した。
-
ソフトウェアチームにおけるテストの影響
テスターがソフトウェアチームに貢献する方法として、品質ギャップを伝えること、良いテストのために場を整えること、自動化コードを書くことが挙げられる。Maaret Pyhäjärvi氏によれば、私たちはテスターではなく、テスト自体について考える必要があるという。チームメンバー間のコラボレーションやコミュニケーションは、製品やユーザー体験に有益な影響をもたらす。
-
技術的負債を防ぎ、返済する方法:チームと技術リーダー、マネージャーができること
技術リーダー、プロジェクトマネージャー、管理職は、ソフトウェア開発者に多くの時間を与えることで技術的負債を防ぐことができる。さらに、チームがコードを改善できるように、余剰時間やリファクタリングスプリントを計画することができるとNedelcho Nikolov氏は主張する。技術的負債に優先順位をつけるために、開発チームは、今投資すればどれだけの時間を節約できるか、今技術的負債を返済しなければ将来ソフトウェアがどれだけ複雑になるかを示すことができる。
-
Booking.comがDORAメトリックスとマイクロ・フロントエンドを使用して配信パフォーマンスを倍増させる
Booking.comのフィンテック事業部のチームは、プラットフォームのバックエンドとフロントエンドにわたって一連の改善を実施し、DORAメトリクスで測定されるデリバリー・パフォーマンスを2倍にできた。さらに、マイクロフロントエンド(MFE)パターンを使用して、モノリシックなFEアプリケーションを複数の分解アプリに分割し、別々にデプロイできるようにした。
-
DevOpsのレンズを通してオープンソース統合をナビゲートする
オープンソースに対するDevOpsの視点を持つことは、OSSプロジェクトを環境に組み込むのに役立つ。DevOpsエンジニアは、サードパーティとの統合に抵抗がなく、異なるグループ間の壁を取り払い、チームワークを促進するというオープンソースの考え方に合致している。
-
安定性とユーザーフレンドリーを両立したUIを作るには
UI構築における重要な課題は、使いやすさと保守性、そして規模や複雑さのバランスを取ることだ。安定し、かつユーザーフレンドリーなUIを作るには、思慮深いコンポーネント設計と一般的な使用経路の理解が必要だ。自動化は、コードベースの効率と一貫性を改善する上で、画期的な変化となりうる。
-
SpotifyはいかにしてSpotify Homeための実験を大規模に実施しているか
SpotifyはSpotify Homeプラットフォームで年間250件以上のオンラインでの実験を実施しており、数十の異なるチームがそれを活用している。このような規模で実験を行うために、Spotifyは様々なツールを使用していると、SpotifyのプロダクトマネージャーであるNik Goyle氏は説明する。
-
ソフトウェア品質の評価方法
QPAM(Quality Practices Assessment Model)を用いて、チームの発揮する行動を「開始」「統合」「実践」「革新」といったを4つの次元に分類できる。QPAMはフィードバックループ、文化、コード品質と技術的負債、デプロイメントパイプラインといった社会的・技術的な品質側面を調査するのだ。
-
システムの品質を向上させるためにデータをどう活用するか
システムがどのように利用されているのかを知るためには、メトリクスを収集することで時系列に傾向を把握できる。得られたデータとインサイトは、ソフトウェア設計やテストパターンを改善することでシステムの品質向上に寄与するのである。Craig Risi氏は、Agile Testing Days2022で、システム品質向上のためのデータ活用について講演した。
-
ノルウェー最大の官僚機構がファストフローをどのように最適化したか
ファストフロー(業務・手続きの高速化)を最適化するために、ノルウェー労働福祉局はチームファーストのアプローチを採用している。パフォーマンスの高いチームには自律性が必要であり、方向性と団結も必要である。ソリューションは、チームの状況、能力、認知能力に基づいてチームが採用すべきである。
-
すべての質問には答えがある - 開発者にとって不可能とは
すべての質問には答がある、と我々は思いがちだ。しかしながら、現在時刻を知りたい時のように、必ずしもそれは真実ではない。開発者は、想定外の障害モードに対する認識を高め、障害の可能性を広く告知し、戻ることのない返答待ちからの復帰にタイムアウトを用いる必要がある。
-
ゲーミフィケーションによるソフトウェア品質の向上
バグハンティングやリスクストーミングゲームをプレイするBingo Bongoセッションにより、品質を向上させることができる。ゲーミフィケーションは学習を支援し、日常業務を面白くし、チームスピリットを強化することができる。ゲームをプレイすることはオフィスでの日常業務の一部であり、効果的な作業時間と見られるべきである。ゲーミフィケーションでは、創造的なプロセスによって真の価値が生み出される。
-
ディフェクト・マスの測定が重要な製品領域のテストにどのように役立つか
「ディフェクト・マス」と呼ばれる測定を導入することで、プロジェクトは開発によって最も影響を受けた領域を見つけることができ、影響を受けた領域ごとに実行するテストの数を決定するのに役に立った。この測定値を他のKPIと一緒に使用することで、テストに集中する役に立った。顧客のインシデントの数を減らすことができた。
-
モデル化可能開発: カスタムツールがシステムを説明可能にする方法
モデル化可能開発は、すべてのソフトウェア開発の問題に対してカスタムツールを構築するためのプログラミング方法だ。Glamorous Toolkit は、カスタムツールのモデル化に使用できるモデル化可能開発環境だ。