InfoQ ホームページ 品質 に関するすべてのコンテンツ
-
ゼロバグポリシを使ってバグを解決する
ゼロバグポリシ(zero bug policy)を採用すると、バグの優先順位付けが容易になり、チームの可視性とバグへの対応性を向上することができる。ただし、過激な変革なので、意思決定とバグの修正時間に関して、自分自身の状況に合わせることが必要だ。
-
モブプログラミングの集団的習慣は技術品質を高めるための土壌になり得る
モブ(mob)プログラミングは、プロダクトをアジャイル手法で開発する上で、古い習慣を新しく効果的な習慣に変えるための有効な手段だ。周りを人に囲まれた環境において集団で培われた習慣は、簡単に忘れることはない。モブプログラミングは各メンバに対して、新たな習慣を定常的に実践させることによって、それらを取り入れやすくする。チームは同じ作業の繰り返しを容認しない。仕事を行うためのよりよい方法を探しているのだ。
-
eBayでのソフトウェア品質認定の自動化
eBayアプリケーションプラットフォームチームは、組織のソフトウェア品質を確保するために、Kubernetesオペレーター、Helm Charts、Jenkinsの使用を開始した。関連するコンテナと環境内で安全な変更を実行するために、チームはセルフサービスの「認証」ソリューションを開発した。
-
開発者がE2Eテストを書くことで得たもの
開発者がe2eテストを書くことによって、テスト可能なコードの記述、迅速なフィードバックの提供、バグの回避が可能になる。Wixでは、同社のプロジェクトマネージャ、開発者、QAエンジニアを対象に、QAのみによるテストから開発者によるe2eテストに移行することによって、QAの左シフト(上流への移行)とデリバリ速度の向上を実現した。
-
継続的セキュリティテストを有効にしてテストにセキュリティを追加する
チームは、テストプロセスにセキュリティテストを追加し、機能テストの自動化の一部としてセキュリティチェックを追加して領域の特定ができるようになるためにセキュリティの専門家によってトレーニングをうけることが可能だ。これにより、継続的なセキュリティテストが可能になり、すべてのリリースでセキュリティテストの対象範囲が広がり、セキュリティの欠陥を早期に発見できる。
-
テストピラミッドを使って品質を左シフトする
品質の左シフト(前倒し)とは、開発終了後に品質テストを行うのではなく、ソフトウェア開発サイクルの早期に品質を作り込む、という意味である。テストピラミッドモデルを使うことで、テストをより早いステージに移動させることが可能になり、統合時に問題となる欠陥を開発早期に発見することが可能になる。
-
品質の造り込みのためのアジャイル的アプローチ
品質の造り込み(Built-in Quality)はアジャイルの重要な柱のひとつだ。しかしながら、これを大規模に実践するには、開発ライフサイクル全体を見る必要がある。組織のさまざまな層で、品質意識を向上させることが必要だ。アジャイルコーチは、アジャイル的作業方法を活用し、品質思考を推進することによって、これを支援することができる。
-
zero-bugポリシを実践する - Redgateの例
zero-bugポリシは単純だが効果的なバグ管理システムだ。数か月、時には数年前のバグに埋もれてしまう事態を回避する上で、有効に機能する。修正の必要があると合意した重要なバグは即座に修正し、そうでないバグは修正せずにクローズするのだ。Tom Walsh氏はLean Agile Exchange 2020で、氏の属するRedgate Softwareにおいてzero-bugポリシを適用した方法について講演した。
-
“規律あるアプローチ”で変化に対応する
企業がアジャイルを採用しようという時、最初に考えるべきなのは、"アジャイルの実践にはどのフレームワークがよいのか"ではなく、"我々の目標は何か"ということだ。変革に対する規律あるアプローチ(disciplined approach)は、アジャイルに移行する上での"デザインパターンブック"のように、実行可能なプラクティスから方法を選択し、そのプラクティスが有望かどうか、現在の状況がそのプラクティスにとって望ましいものかどうか把握する上で有用なものとなる。
-
テスト欄を止めればデリバリは早くなる
タスクボードに"テスト中(In test)"のような欄があると、進行中の作業の数が多く、実際に完了した作業の数が少なくなることがよくある。このような欄は取り払ってしまった方が、テスタと開発者のコラボレーシ��ンが増え、デリバリが早くなる。
-
eBay Denmarkにおけるソフトウェア品質保証の取り組み
品質とは、単に運用環境へバグを流出させないということだけではない。その他にも多くのことがある。品質とは、プロダクトがユーザフレンドリで、アクセスや利用が容易で、高いパフォーマンスと短いロード時間を実現していることだ。コードが安定していて、メンテナンスが容易なことも必要だ。Jette Pedersen氏はSwiss Testing Day 2020で、優れた品質のプロダクトを実現する方法について講演した。
-
OverOpsが第2回の年次DevOps調査結果をリリース
継続的信頼性(continuous reliability)プラットフォームベンダのOverOpsは、先日実施した調査の結果から、DevOps向け投資活動の中において、企業が最も多くの投資を行っているのが、ソフトウェア開発の定常的フローの実現を目的としたものであることを確認した。調査では、エンジニアリングチームが最先端のテクノロジやプラクティスを支持する中で、特に自動コード分析の採用が増えていることも明らかになっている。
-
AWSがAmazon CodeGuruの一般提供発表
最近AWSは、機械学習を利用した開発者向けツールであるAmazon CodeGuruの一般提供を発表した。 コードの品質を改善し、アプリケーションの最も高価なコード行を識別するためのインテリジェントなリコメンドを提供する。
-
壊れたコードがマージされることを防ぐGitHub Super Linter
GitHub Super Linterは、GitHubリポジトリの設定プロセスを自動化して、プルリクエストが作成されるたびに適切な静的解析ツール(lint)を使用することを目的としている。
-
組織トポロジと品質への影響
August Lilleaas氏は先頃、Microsoftの論文を引用して、組織の複雑性とソフトウェア品質との相関関係に関する記事を書いた。Rapid Software Testing Methotologyを開発したJames Bach氏も先頃、品質のメトリクスの解釈方法について記事を書いている。さらにTeam Topologiesの著者たちは、組織構造がソフトウェアプロダクトの健全性に及ぼす好影響について意見を述べている。