ものづくり現場におけるSQA(ソフトウェア品質保証)の実態とは?
SQA(ソフトウエア品質保証)という言葉を耳にしたことはあるでしょうかりますか。
SQAはSoftwareQualityAssuanceの略称です。
工場で作られる製品と同じように、ソフトウエアも工程管理することができます。
ソフトウエア開発の品質をどうやって見極めるのか、不思議に思いませんか?
さっそくSQAの実態をひも解いていきましょう。
Contents [hide]
ソフトウエアの品質を管理することはできるのか
ソフトウエア開発プロジェクト管理者やソフトウエア品質保証担当者は、開発工程(プロセス)の一つひとつについて監視を行います。
ソフトウエア品質保証の業務内容は、まず顧客からの要求に対して、分析があっているか監視します。
次に、要求と分析に対して、要求仕様があっているかを監視し、要求仕様に対して詳細仕様があっているかを監視…このようにそれぞれの工程で監視を行います。
結局、人力じゃないか、内容・プログラムがわからないのに何を監視するんだと思われるかもしれませんが、ここではあくまで工程を機械的に監視することを指します。内容がわかっている必要はないのです。
もう一つ、SQAの大事な仕事は日々の開発・評価の進捗管理です。
このようにプロセス管理、進捗管理を繰り返すことで、各開発プロセス間のズレや、進捗の遅れを早期に発見し、早期でのリカバリーを可能にします。
結果として、開発しているソフトウエアの信頼性向上に期待できます。
SQAは品質保証部に在籍するの?
SQAチームが存在するポジションは会社によって異なります。
例えば、IT部門・開発チーム内に存在する場合や、品質保証部内にある場合もありますし、はたまた社外の第三者グループのサービスやツールを利用し品質保証を行うこともあります。
このポジションが開発部隊に近いほど、活動は受け入れられやすいでしょう。
逆に、社外の第三者グループであれば、より客観的な監視が可能になります。
社内にある品質保証部であれば、その中間と考えて良いでしょう。
それぞれ、メリットデメリットはありますが目的は同じです。
実態!現場でのソフトウエア品質保証担当者の悩み
ソフトウエアはPCの発展とともに爆発的に進歩してきました。その進歩により、急激に開発規模は増大してきています。
しかし、昨今の経済状況で単価は据え置きの状況となり、短納期・低価格を余儀なくされている現実があります。
これはどこの開発部門であれ、大なり小なり抱えている問題でしょう。
さらに、システム開発・ソフトウエア開発・ソフトウエアプラットホーム開発のアジャイル開発化(短期間化・スピード化)が進み、合わせて品質保証を行う場合、常に品質保証活動を行っている状態になります。
この苦しい現状が、SQAの最大の敵です。
というのは、コスト面からSQAの導入をしなかったり、SQAへの投資が理解されなかったりする要因となっているからです。
また、開発者・開発エンジニアに受け入れられにくいというのも、SQAの苦悩の一つです。
SQAにかける工数は、ソフトウエアの未来への投資
SQAに対する理解はがまだまだ不足しがちです。
しかし、増大するソフトウエアへの要求に対応するため、必要性は増してきています。
SQA活動に注力している会社は、品質に対して真摯にとらえ、スケジュールや工数管理も重要視しているため、技術者にとって働きやすいと考えて良いでしょう。
企業・会社を選ぶ際には、SQA活動の度合いを知るのも一つの方法です。