ソフトウェア開発環境でシックスシグマを適用するにはどうすればよいですか?


14

私はJava開発者ですが、私たちの組織の利益を増やす目的でSix Sigmaを適用することを学ぶように頼まれました。Six Sigmaはすべての環境に適用できることを読んだことがありますが、ソフトウェア開発に適用することのニュアンスに興味があります。

Six Sigmaのどの概念をソフトウェア開発環境に適用でき、どのようにそれらを効果的に適用できますか?

私の理解では、シックスシグマは次のことに焦点を当てています。

  • 欠陥の根本原因の特定と除去
  • 製造プロセスまたはビジネスプロセスの適用におけるばらつきを最小限に抑える

これらの概念はソフトウェア開発に適用できると思われますが、ソフトウェア開発ライフサイクル(SDLC)に効果的に適用できますか?


11
6シグマは「すべての環境に適している」とどこで知りましたか?ソフトウェアではなく、物理オブジェクトの大量生産用に特別に開発されました。
アンジェロ

5
移動する必要がないため、この質問を再開します。ソフトウェアプロジェクトの管理はここで話題になっていますが、シックスシグマは品質とプロセスの改善により密接に関連しています。さらに、ソフトウェアプロジェクトへのシックスシグマの適用とソフトウェアプロセスの改善(シックスシグマとCMMIおよびシックスシグマとアジャイルメソッドの組み合わせを含む)を議論する多くの仕事があります。ソフトウェアへのシックスシグマの適用は、製造環境への適用とは異なり、この質問を行うにはソフトウェア開発者の専門知識が必要です。
トーマスオーエンズ

5
@Angeloシックスシグマはもともと製造環境向けに設計されていましたが、ソフトウェア開発への適用には多くの作業がありました。「アジャイルシックスシグマ」や「cmmiシックスシグマ」などのフレーズを検索すると、この分野で多くの仕事が見つかります。
トーマスオーエンズ

5
最初の6シグマトレーニングを受講しなければなりませんでしたが、会社がそれを支払いながら、時間を取り戻せたらと思います。インストラクターは無知で、練習は楽しい小さなゲームでしたが、最終的には無意味でした。シックスシグマは統計に関するものであり、それは、ロボットに外注されることが多い種類の、愚かで反復的な、明確に定義されたタスクに適用できます。良いソフトウェアを書くことは創造的なプロセスです。Six sigmaは、Calculusの講義がTom Cruiseの行動を支援するのと同じくらい優れたソフトウェアエンジニアを支援します。あなたがこの質問をしたという事実だけで、あなたは私や同僚と仕事をする資格を失います。
ジョブ

4
@ThomasOwensこれはNARQであり、トピック外ではありません。それは半分ポール/半分LMGTFU
ジミーホッファ

回答:


15

基本的なシックスシグマアクティビティは、定義、測定、分析、改善、制御を表す頭字語DMAICによってキャプチャされます。これらを改善したいプロセスに適用します。プロセスを定義し、それを測定し、測定値を使用して問題の原因に関する仮説を立て、改善を実装し、プロセスが統計的に「管理」されていることを確認します。

ソフトウェアに関連するプロセスは、ソフトウェア開発ライフサイクル(SDLC)またはその一部です。おそらく、シックスシグマの原則をSDLC全体に適用しようとは思わないでしょう(少なくとも、最初はそうではありません)。代わりに、問題があると思われる領域を探します(たとえば、欠陥率が高すぎる、回帰が多すぎる、スケジュールが頻繁にずれる、開発者と顧客の間の誤解が多すぎるなど)。今のところ、問題は毎週あまりにも多くのバグが生成されている(または少なくとも報告されている)ということです。したがって、ソフトウェア開発/バグ作成プロセスを定義します。次に、毎日書かれているコードの行数、要件の変更頻度、各エンジニアが会議に費やす時間数などのメトリックの収集を開始します。

次に、データを見て、パターンを識別しようとします。エンジニアリングチームAが与えられたすべての締め切りに達し、タスクを早期に完了することさえあることに気づくかもしれません!当初、チームBはボール上ではそれほどそうではないようです。少なくとも半時間は1日か2日遅れており、1週間以上遅れることもあります。経営陣は、チームBを何か問題と見なし、物事を揺さぶろうとしています。ただし、データをよく見ると、チームBのバグ率はチームAのバグ率よりもはるかに低く、さらに、チームBはチームAに起因するバグを修正するように求められることがよくあります。メンテナンスの時間。

それで、あなたは何をしますか?収集したデータと実行した分析を使用して、変更を提案します。チームAとチームBはそれぞれ独自のバグを修正します。経営陣の祝福(そしてチームAの激しい反対に反対)で、あなたはその変化を実行します。その後、メトリックの収集を続け、データの分析を続けて、変更が違いを生むかどうかを確認します。バグ率が許容可能とみなされるまで、この測定/分析/実装サイクルを繰り返します。しかし、まだ完了していません。実際、これで終わりではありません ...バグ率を測定し、バグ率が許容範囲内にあること、つまり統計的に「管理されている」ことを確認する必要があります。

ここには、改善するプロセスの詳細、収集するメトリックの種類など以外に、ソフトウェア開発に固有のものはないことに注意してください。ソフトウェア開発プロセスを改善するために使用するアクティビティは、あなたと同じです。 dソフトウェア開発はウィジェットの製造とはかなり異なりますが、ウィジェットの製造プロセスに使用します。つまり、プロセスに設定する種類の目標に常識を適用する必要があるということです。


1
実際、ソフトウェア開発に関連するシックスシグマ手法はDMADI(定義、測定、分析、設計、実装)です。ただし、ソフトウェア開発でMADIを繰り返します。これらの「ベルト」を持っている人は、Lean Six Sigma DMADIと呼びますが、私はAgileと呼びます。
泰-宋新

開発プロセス自体の改善と開発中のソフトウェアの改善を区別することが重要です。前者について説明し、SDLCにシックスシグマを適用することについて言及しました。OPが求めていたのはそれだと思います。@ Tae-SungShinのコメントは後者に向けられているようで、ソフトウェア自体を改善するプロセスが少し異なることに同意します。ソフトウェア開発方法についてはたくさん書かれているので、ここではそれをしようとはしません。
カレブ

-3

@Peterが述べたように

ソフトウェア開発に6シグマを適用すると、ソフトウェア開発の持続的な改善がもたらされます。ソフトウェア開発にシックスシグマを適用すると、ソフトウェアの迅速な統合とテストが可能になり、バグのないソフトウェアの作成に役立ち、プログラム管理がより効率的になります。

簡単なシナリオを紹介します。航空宇宙会社で働いていました。航空機用の回路を設計するチームがあります。彼らは、複雑な航空機の回路設計において多くの困難に直面していました。そのため、彼らはデザイナーを経験したにもかかわらず、締め切りを逃していました。私は彼らの仕事を分析し、毎回ゼロから回路を開発していることに気づきました。そこで、以前に設計した回路を追跡するソフトウェアを設計し、新しい航空機を購入するたびに私のソフトウェアを使用し、同様の回路を持つ以前に設計した航空機を選び、ほとんど変更せずに使用します。これらの回路は、実際の航空機で以前に設計およびテストされているため、新しい回路により重点を置くことができます。

これは、SIX Sigmaプロセスに従ってエラーに関するすべてのデータを収集し、その理由を分析した単なるシナリオです。その後、私のソフトウェアで改善してください。


4
6シグマが素晴らしいというわけではありません。従業員に最初から回路を設計させるマネージャーは解雇されたはずです。
ジョブ

2
笑..しかし、このソフトウェアを提案したとき、同じマネージャーがシックスシグマ手順に従うように頼みました..
rajkumarts

-4

ソフトウェア開発でシックスシグマを適用することは、ソフトウェアシックスシグマと呼ばれます。シックスシグマは基本的に製造業向けに開発されており、製造プロセスにおいて、企業が低コストで納品、製品の品質を向上させるのに役立ちます。一方、同じことがソフトウェア開発にも当てはまります。

ソフトウェア開発に6シグマを適用すると、ソフトウェア開発の持続的な改善がもたらされます。ソフトウェア開発にシックスシグマを適用すると、ソフトウェアの迅速な統合とテストが可能になり、バグのないソフトウェアの作成に役立ち、プログラム管理がより効率的になります。

ただし、ソフトウェアシックスシグマは新しいコンセプトなので、適切な人からのトレーニングが必要です。効率的な6シグマトレーニングプログラムがここで役立ちます。ソフトウェア開発環境に関するオンラインシックスシグマトレーニングについては、http://www.6sigma.us / をお勧めします。別の会社から受け取った推奨事項に基づいて提案します。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.