Updates

新着情報

コラム

システム/ソフトウェア開発に品質保証活動は必要なのか?

はじめにAutomotive SPICEのSUP.1やCMMIのPPQAでは、システム開発/ソフトウェア開発の品質保証活動に対する要求事項をまとめています。しかしながら、そもそもなぜシステム開発/ソフトウェア開発に品質保証活動が必要なのかを考えたことがありますか?今回は、SUP.1やPPQAの元となっている規格や書籍を参考に、「品質保証活動の必要性」について考えていきます。  品質保証の規格MIL規格(Military Standard)最初に品質保証が規格として体系化されたのは、MIL-STD-109で、1960年代後半に初版が制定されました。この中で「品質保証(Quality Assurance)」を以下のように定義しています。A planned and systematics pattern of all actions necessary to provide adequate confidence that management and technical planning and controls are adequate to: Established correct technical requirements for design and manufacturing. Create products and services that confirm to the established technical requirements.管理および技術計画と制御が次の事項に適切であるという十分な確信を与えるために必要なすべてのアクションの計画的かつ体系的なパターン。 設計および製造に関する正しい技術要件を確立する。 確立された技術要件に準拠する製品およびサービスを作成する。つまり「適切に正しい技術要件を定義して、適切にそれに準じた製品やサービスを作っている確信を得るための活動」が品質保証であるとしています。さらにその技術要件の重要な要素である品質要件についても以下のように定義しています。The technical requirements relating to the quality of the product (supply or service) and contract clauses prescribing quality standards, inspection, and other quality controls incumbent on the contractor, to assure that the product or service confirms to the contractual requirements.製品 (供給またはサービス) の品質に関する技術要件、および契約者に課せられた品質基準、検査、およびその他の品質管理を規定する契約条項で、製品またはサービスが契約要件に準拠していることを保証する。契約者(≒供給者)が、要件通りのモノを作ったことを保証するための契約事項(≒約束事)を品質要件と定めています。言い換えると、要件通りにモノを作ったことを対外的に保証する行為が品質保証活動だと言えるでしょう。ISO規格(国際標準規格)品質に関する国際標準は、皆さんもご存知のISO 9000シリーズです。1980年代に制定されましたが、その中のISO 9003が、特に「最終検査および試験における品質保証モデル」に焦点を当てた規格です。ISO 9003は、製品の最終検査と試験を通じて品質を保証するためのガイドラインを提供していました。ISO 9003は、長期間にわたって製造、設計、その他の使用方法が確立されている製品に対して、最終検査のみで品質を保証するための規格でしたが、2000年の改訂により、ISO 9001に統合され、より柔軟で包括的な品質マネジメントシステムの規格となりました。IEEE規格(電気・電子工学分野における国際標準規格)電気・電子工学分野における国際的な標準を策定するための組織であるIEEE(Institute of Electrical and Electronics Engineers)も、前述のMIL-STDをベースに1970年代後半に品質保証の国際標準を制定しました。IEEE Std 730IEEE Standard for Software Quality Assurance Processesがその規格であり、今もなお改版を続けています。この中で、Automotive SPICEやCMMI以上に詳細説明があるので、この規格を参考に必要性を整理していきます。この国際標準では、SQAプロセスの目的と以下のように定義しています。 「ソフトウェア開発プロジェクトが SQA プロセスを使用して、ソフトウェア製品が確立された要件に準拠していることを正当に証明するための根拠となる証拠を作成および収集できるようにすること」 やはり、品質保証を要件通りにモノを作ったことを対外的に保証する行為と位置付けています。  QAが準拠保証しなくてはならない要件とは Automotive SPICEのSUP.1でも定義されているように、成果物とプロセスの品質保証をする必要があるため、QAが遵守保証しなくてはならない要件は、プロダクト要件とプロセス要件になります。IEEE std 730では、契約事項である利害関係者要件から導出されたプロダクト要件とプロセス要件に対し、図にあるような適合関係の推移性に基づいて、1つ前の情報と比較し適合していることを確認することで、プロジェクト全体を通じて、「要件通りにモノを作ったことを保証する」こととしています。 契約事項と導出されたプロセス要件の適合を確認する プロセス要件と導出された計画やプロセス、標準や手順の適合を確認する 計画やプロセス、標準や手順と実際の活動結果の適合を確認するこのように、1つ前の情報との適合を確認することが、品質保証活動の基本的な考え方となります。  プロジェクト内のレビューやチェックだけでは品質保証は十分なのか?契約事項に基づいた「要件通りにモノを作ったことを対外的に保証する」必要性は、開発に携わった人であれば理解できることかと思います。それでは、その対外的な保証はプロジェクト内の活動だけで十分であると考えることはできないのでしょうか?先のコラムAutomotive SPICE SUP.1 本当に品質は良くなるの?でも引用した「プロセス成熟度の改善」(Watts S. Humphrey著日本語訳:日科技連出版社発行)には、客観的な品質保証の必要性を以下のように説明しています。監査者に対し客観的になることは、誰にとっても難しい。一般に、我々はかなり注意深く仕事をやっており、そうでないように言われると不愉快に感ずる。しかし、「外側から」のレビューを行うのは、釣り合いのとれた見方が必要だからである。たとえば、あなたがこれからパラシュートを包み終えて跳ぼうとしているとする。有能な検査者があなたの1つ1つの動作を監視して本当に正しく行ったということを保証してくれるならば、あなたの幸せになれる勝算は大きくなる。品質が決定的に重要な場合は、なんらかの独立したチェックが必要である。それはその人たちが信頼できないからではなくて、その人たちが人間だからである。ソフトウェアにおける問題は、チェックが必要かどうかではなく、誰がどうやるかである。小規後な組織では、しばしば管理者自身が作業を直接に監視できるので、SQAの活動は必要がない。部下の数が多くなるにつれて管理者は他の業務に巻き込まれ、次第に日常の技術的作業ができなくなってしまう。このような時には、管理者は次の事項の1つを行うことが必要である。 余分な負荷をうまく扱うなんらかの方法を見つけ、部下の仕事をより密接に監視できるようにする。 監視する人を雇う。 部下同士が互いに監視するように動機づける。技術的、経済的、そしてモラル上の観点から、最後の選択が一般には最も望ましい。残念ながら、歴史的にもソフトウェアの組織が数十人を越えてくると、この「ニ人一組方式」は崩壊してしまう。このような場合には、SQAによって解決しなければならないのである。 規模が膨らみ、複雑なシステム/ソフトウェア開発を行っているからこそ、管理者に代わって、「要件通りにモノを作ったことを対外的に保証する」客観的な視点が必要になるのです。当然ながら、管理者のサポートが、効果的な品質保証活動を行う大前提となります。  さいごに いかがだったでしょうか。今回は、改めて品質保証活動の必要性について考察してみました。皆さんの効果的な品質保証活動を行う動機付けになれば幸いです。 内山哲三 

コラム

Automotive SPICE GP 徹底解説 その3 ~ そもそも能力レベル2とは?

これまで2回にわたって Automotive SPICE の GP(General Practice)について解説しましたが、今回は「能力レベル2って、どういう状態なの?」というテーマでお届けいたします。 本題に入る前に、「プロセス」って何でしょうか?と聞かれても、皆さん明確には答えにくいのではないでしょうか?最近流行りの生成AI君に尋ねてみると:  プロセスとは、物事がある結果に達するまでの道筋や手順、方法を意味します 類義語には、「過程」、「経過」、「手順」、「工程」などがあります と答えてくれました。そもそもカタカナで書いてあることから「プロセス」は日本語由来のものではなく、類義語ででてくるように人によってそれぞれの解釈で日本語に当てはめているものと思います。アセスメントのインタビューで、「私達にはプロセスはありません」という発言を聞くことがありますが、この言い回しは正しくありません。アセスメントの場では、発言者は「プロセス」=「手順を文書化したもの」と勘違いしてしまっているのです。何らかの成果物が生成されている限り、そこに至った過程、経過や手順は存在するはずです。 次のような2つのグループがある場合、あなたならどちらのグループに仕事を依頼したいですか?グループA 計画書を作成して、作業状況を計画に照らしてチェックしている あらかじめ作成すべき作業成果物を決めて、ドキュメントを管理している 作成したドキュメントは、必ずレビューを実施して誤りを訂正しているグループB 計画書はなく、グループ員にヒアリングしないと状況はわからない 作業成果物は担当者の申告ベースで、何があるか、何処にあるかはわからない レビューは実施せず、担当者の力量に任せている これだけでは、どちらのグループが良い成果物を納入する可能性があるか判断できませんが、グループBの方は、よっぽど優秀なメンバーが揃っていないと任せるのは怖い感じがしませんか?この2つのグループの違い、つまり仕事の仕方の違いがプロセス能力の違いなのです。アセスメントでは、プロジェクトにおける仕事の仕方および作成された成果物の十分性を判断して、プロセス能力を判定しています。 ではプロセス能力レベル2とは、どんな状態なのでしょうか?次の2つがポイントとなります 作業が計画的に実施できているか? 作業成果物が管理され、成果物の品質がチェックされているか?つまり、この2つの仕組みができていれば、プロジェクトに携わる人が変わったとしても、繰り返し一定レベルの成果が期待できるということなのです。このようなプロセスの状態になっているプロジェクトを「能力レベル2」と呼ぶというのが、アセスメントの評価基準になります。 アセッサーによっては重箱の隅をつつくように細かいことを指摘する人がいますが、極めて基本的なことだと思いませんか?Automotive SPICEでは、PA(Process Attribute)とGP(General Practice)を能力レベル2の判定基準として定めています。事例も含めて表にまとめてみました。それほど高い壁ではないと思いますので解釈の参考にしてください。     また、GPとプロセスには上図に示すような密接な関係があります。GPを十分に実現するためには、対応するプロセスで定義されるBP(Base Practice)の内容を実施しておく必要があると読み替えてください。 文書だけでは、わかりにくい領域だと思います。弊社ではAutomotive SPICEに関する無料相談会(ミニコンサル)も実施していますので、お気軽にご相談ください。日吉昭彦

コラム

Automotive SPICE SUP.1 本当に品質は良くなるの?

今回は、品質保証に関する話題をご提供いたします。プロセス改善モデルには、品質保証というプロセスが定義されています。Automotive SPICE では、SUP.1(品質保証)、CMMI v1.3では、PPQA(プロセスと成果物の品質保証)というプロセスが該当します。(CMMI v2.0/3.0では、品質保証の考え方が多少変わってきていますので、後述いたします) さて、これらのプロセスを実装することで、良い品質の製品をリリースできるでしょうか? 筆者は、本件については甚だ懐疑的です。というのも、これまで自身の担当するプロジェクトで、単純にAutomotive SPICEのSUP.1プラクティスに記載されている内容を実施してきましたが、効果を感じられませんでした。また、多くの組織やプロジェクトを見ても、状況はあまり変わりません。はじめてSW-CMM(CMMIの前身モデルです)というモデルの導入を検討していたとき、SQA(ソフトウェア品質保証)プロセスとは、「プロジェクトが、決められた方法(約束事)に従って活動していることを評価する」ということだと知り、これで品質が担保できるのかと不思議に思ったものでした。 これらの原因は、品質保証活動=プロセス監査という考え方になってしまっていることにあると考えています。確かに Automotive SPICE SUP.1の各プラクティスを見ても、監査すれば十分であると読めてしまうところがあると思います。また、プロセスモデルでは「品質管理」というプロセスが別に定義されていることもあり、このような実装になってしまうことも仕方ないかもしれません。 しかしながら、せっかく品質を保証する活動を導入するのであれば、もう少し実際の品質に寄与できる活動にしたいとは思いませんか?重箱の隅をつつくような作業や、不遵守が発見されない監査項目に多くの時間をかけて作業するのは勿体ないですよね。ここからは、こういった現象に気付いた私たちが実践してきた、品質保証活動の刷新についてご紹介いたします。 まずは、本当の意味での品質保証活動について考え直すことから始めました。一番参考になったのは、「プロセス成熟度の改善」(Watts S. Humphrey著日本語訳:日科技連出版社発行)です。この本は、私たちが赤本と呼び、プロセス改善のバイブルとして長年使っているものです。品質保証として評価すべき観点を列挙し、それぞれの開発工程で確認すべき点をまとめました。下記に概略を記載しますので、参考にしてください。 構成管理:計画とその遵守、設計書・ソースコード・テスト仕様、構成監査 レビュー:レビュー計画と運営状況の確認、各工程のレビューへの参加と品質確認 監査:プロセスの遵守性 要求仕様:顧客要求の合意形成、要求のテスト可能性、要求毎の進捗状況 設計:開発進捗、レビュー摘出率、コードメトリクス、トレーサビリティ テスト:テスト計画、不具合発生と解決データのトレース、テスト報告書 ツール:使用ツールの妥当性、ツール使用状況 修正処置:変更依頼の状況、修正手順、各工程の修正の開始から完了までの状況、問題原因の傾向 外注先:外注先の品質保証プロセス、設計標準の確認、品質データの把握 計画:計画の妥当性、計画変更の妥当性、計画に対する進捗状況 出荷:レビュー・テスト指摘解決状況、テスト報告書、出荷審査こうしてみると、かなり実施すべきことがあると思いませんか? 次に品質保証活動の役割分担について考えました。本来の意味での品質保証活動を実施するにあたり、品質保証活動の役割を次のように細分化しました。 品質システム担当:品質システムの構築・運用 品質分析担当:各プロジェクト品質データの取りまとめ・分析・報告 内部レビュー担当:プロジェクト内部のレビュー実施者(開発者) 外部レビュー担当:プロジェクト外の開発者、品質保証グループによるレビュー実施者 プロセス監査担当:プロジェクトの監査実施者 品質保証活動プロセスの(再)定義品質保証活動の観点と役割から、品質保証グループとして実施すべき活動とプロジェクトの品質保証活動の2つに分けて、品質保証活動のプロセスを定義しました。プロセスの概要は、導入事例(品質保証活動の刷新)を参照してください。  気が付いている人も多いようですが、監査だけでは品質は良くなりません。品質保証に携わる組織としては、プロジェクトの品質データを収集し、そのデータをもとに品質課題を解決する活動が重要です。長年の開発経験からわかることは、重大な不具合はソフトウェア全体が悪いわけではなく、ある特定のコンポーネントの不出来が起因して起こるということです。これらを如何に開発途中で見つけるかが品質保証活動のキーポイントとなるはずです。いつまでも設計が終わらない機能、規模が膨大になっているソフトウェアコンポーネント、コードメトリクスが例外値を示しているソフトウェアユニット、多くの不具合が発生している機能など、これらを調査することで未然に予防できることがあるはずです。 Automotive SPICE SUP.1や、CMMIを取り巻く環境も近年変化が見られるようです。欧州の自動車メーカーからは、プロジェクトの品質データを毎月提出することが求められるようになりました。CMMI v2.0/3.0では、「品質の確保」という属性の中に4つのプラクティス領域(ピアレビュー、プロセス品質保証、要件の開発と管理、検証と妥当性)を設け、従来のPPQAプロセスだけでなく他のプロセスを品質に結び付けています。皆さんも、監査だけの品質保証から、本質的な活動に移行してみませんか? 日吉昭彦

コラム

見える化する要求仕様 〜 EARS(Easy Approach to Requirements Syntax)を活用したシステム要求の書き方 〜

Automotive SPICE 4.0 に関するコラム、今回は「EARSを活用した要求文の書き方」についてお届けいたします。 はじめに システム開発において、明確で一貫性のある要求仕様を書くことは極めて重要です。しかし、要求の記述が曖昧であったり、解釈の余地が大きいと、後の開発フェーズで認識のズレや仕様変更が発生し、コストや工数の増加につながります。そこで、本コラムでは「EARS(Easy Approach to Requirements Syntax)」という手法を紹介します。EARSは要求を定義するためのテンプレートで、要求をシンプルかつ明確に記述するための構文を提供し、解釈のブレを防ぐことができます。 EARSの基本構造  EARSは要求の表現方法を体系化し、以下の6つの基本パターンを定義しています。 1.Ubiquitous(一般的な要求): 常に適用される要求に使用します 形式: 「The [システム] shall [動作]」 例: 「システムは、車両の衝突が検知された場合、適切なエアバッグを30ミリ秒以内に展開しなければならない」2.Event-driven(イベント駆動要求): あるイベントが発生した場合に適用される要求に使用します 形式: 「When [イベント], the [システム] shall [動作]」 例: 「正面衝突を検知した場合、システムは30ミリ秒以内にフロントエアバッグを展開しなければならない」3.State-driven(状態駆動要求): システムが特定の状態にある場合に適用される要求に使用します 形式: 「While [状態], the [システム] shall [動作]」 例: 「車両が走行中である間、システムは衝突を検知するために衝撃センサーを監視しなければならない」4.Optional(オプション要求): 追加機能やオプションの機能に関する要求に使用します 形式: 「Where [条件], the [システム] shall [動作]」 例: 「車両が助手席用エアバッグを搭載している場合、システムは助手席の占有センサーを監視しなければならない」5.Unwanted Behavior(望ましくない動作の要求): 望ましくない状況を回避するための要求に使用します 形式: 「If [条件], the [システム] shall not [動作]」 例:「助手席に乗員がいない場合、システムは助手席エアバッグは展開してはならない。」6.Complex(複雑な要求): 複数の条件やイベントを組み合わせて記述する要求に使用します 形式: 「When [イベント], if [条件], then the [システム] shall [動作]」 例: 「正面衝突が検知され、かつ助手席が占有されている場合、システムは助手席のエアバッグを展開しなければならない。」   EARSの適用時に注意すべきポイント EARSを活用すると、要求の曖昧さを減らし、明確な仕様を記述できます。しかし、EARSの形式に従っているだけでは、必ずしも適切な仕様になるとは限りません。 要求の内容そのものが不適切だと、意図しない動作を引き起こす可能性があります。例えば、Unwanted Behavior(望ましくない動作の要求)として以下のような仕様を考えてみます。「車両が静止している間, システムはエアバッグを展開してはならない。」この要求の意図が「エアバッグ誤展開の防止」だとしても、そのままでは 停車中に衝突された場合でもエアバッグが展開しない可能性 があります。本来ならエアバッグが展開すべき状況でも、要求の誤解によって安全性が損なわれる恐れがあります。こうした問題を防ぐためには、要求の意図を明確にし、条件を具体的に記述すること が重要です。例えば、以下のように修正すると、誤展開を防ぎながら、必要な場合には展開できる仕様になります。「車両が静止中かつ衝突の加速度が 1.0g 未満の場合, システムはエアバッグを展開してはならない。」このように、EARSの形式を活用しつつも、要求の意味や影響を慎重に検討することが求められます。 EARSを活用する際の留意点 EARSを適用する際には、以下の点に注意することで、より適切な要求仕様を記述できます。 簡潔かつ明確に: 余計な修飾を避け、短く分かりやすい表現を心がける。 一貫性の確保: SHALL(〜しなければならない)の使い方を統一し、主語を明確にする。 必要十分な情報を含める: 曖昧な表現を避け、要求に不足がないようにする。 トレーサビリティを意識: システム仕様や上位要件との整合性を確保する。 まとめ EARSは、シンプルな構文によって要求の曖昧さを排除し、仕様の誤解や抜け漏れを防ぐのに有効な手法です。ただし、形式に従うだけでは不十分であり、意図や条件を明確に記述することが重要 です。特に、エアバッグのような安全性が求められるシステムでは、適切な要求仕様が欠かせません。皆さんのプロジェクトでは、要求仕様をどのように記述していますか?EARSの活用を検討してみてはいかがでしょうか?  おわりに 今回のコラムはいかがでしたでしょうか?今後も数回にわたってAutomotive SPICE 4.0に関するコラムをお届けいたしますので、ご期待ください。(安部宏典)

コラム

Automotive SPICE 4.0 トレーサビリティと一貫性に関する変更点(SYS/SWE/VAL)

Automotive SPICE 4.0 に関するコラム、過去のコラムで諸々の変更点を解説してきましたが、今回はエンジニアリング系プロセス全般(SYS、SWE、VAL)のトレーサビリティと一貫性に関する括りで整理してみました。また、関連するこれまでのコラム解説へのリンクも掲載していますので、合わせてご確認ください。◆妥当性確認プロセス 一貫性の確保及び双方向トレーサビリティの確立:VAL.1v4.0で新たに追加されたVAL.1(妥当性確認)プロセスにより、これまで水平方向のトレーサビリティがなかったSYS.1(要求抽出)に対しても、妥当性確認手段との一貫性の確保と双方向トレーサビリティの確立が求められるようになりました。これにより、SYS.1に対応した評価が必要となり、プロジェクト全体のトレーサビリティが強化されました。v4.0でVAL.1(妥当性確認)プロセスが追加された背景の考察は、以下のコラムを参照してください。「Automotive 4.0のVAL.1プロセス:検証との違いとその重要性」(2024.09.20)トレーサビリティ図 ・v3.1とv4.0の差分_VAL.1:◆ソフトウェア要件とソフトウェアユニット間のトレーサビリティの廃止:SWE.3v3.1では、ソフトウェア要件とソフトウェアユニット間のトレーサビリティの確立の要求が存在していましたが、v4.0では、この記述が削除され、ソフトウェア要求とソフトウェア詳細設計の間のトレーサビリティの確立に変更になりました。「ソフトウェアユニット」とは、実装レベルの用語ではなく、論理的モデリングレベルの用語であり、ソフトウェア要件とのトレーサビリティとは何を意味するかが、わかりにくかった問題を解消しています。この変更の詳細に関しては、以下のコラムを参照してください。「ソフトウェア要件とソフトウェアユニット間のトレーサビリティの廃止」(2024.04.09)トレーサビリティ図・v3.1とv4.0の差分_SWE.3:◆ソフトウェア詳細設計とソフトウェアコンポーネント/統合検証手段の間のトレーサビリティの追加:SWE.5v4.0のSWE.5 BP6で、SWE.5の検証手段とSWE.3のソフトウェア詳細設計の静的および動的な側面との間の一貫性を確保し、双方向トレーサビリティを確立する要求が追加となっています。なお、SWE.5の検証手段、またSWE.2、SWE.3のソフトウェア設計工程の作業の詳細に関しては、それぞれ以下のコラムで解説しています。「Automotive SPICE 4.0 SWE.5 ソフトウェア統合テストの考え方」(2024.06.13)「ソフトウェアエレメント、ソフトウェアコンポーネント、ソフトウエアユニットの関係について」(2024.07.19)トレーサビリティ図・v3.1とv4.0の差分_SWE.5:◆トレーサビリティの対象外となる事例:SYS.2/3,SWE.1/2v4.0のSYS2 BP5の 備考8では、例えば「XXXプロセス標準への準拠」というプロセス要求のような利害関係者の非機能要求については、システム要求からはトレースできないが、検証の対象であるとしています。つまり、トレーサビリティは対象外ですが、例えば「監査報告書」によって、証拠付けされる必要があります。Automotive SPICE v4.0 SYS.2から引用:以下はSWE.1の例ですが、このほかにSYS.3、SWE.2にも、同じような備考が追加されていますので、ご確認ください。Automotive SPICE v4.0 SWE.1から引用:非機能要求でも、その内容によっては、トレーサビリティの対象なる場有もあります。以下のコラムで解説しています。「Automotive SPICE 4.0における非機能要件の考え方」(2024.01.30) ◆「検証手段」と「検証結果」の双方向トレーサビリティの確立:SYS.4~5,SWE.4~6v3.1のテスト系プロセスで要求されていた「テストケース」と「テスト結果」の間の双方向トレーサビリティの確立は、v4.0では「検証手段」と「検証結果」という用語に変更されています。単に用語の変更だけで、トレーサビリティの図的には差分はありません。用語が変更された背景などに関しては、以下のコラムを参照してください。「『テスト』から『検証』へ-Automotive SPICE 4.0の『検証』プロセス-」(2024.06.19) ◆双方向トレーサビリティと一貫性の概念の再統合:SYS.2~5、SWE1~6v3.1ではトレーサビリティと一貫性の要求は、2つBPに分離されていましたが、v4.0では1つのBPに再統合されました。具体的には、v3.0で1つのBPから2つのBPに分離されたものが、v4.0で再度1つのBPに統合されただけであり、トレーサビリティの図的には差分はありません。この変更により、トレーサビリティと一貫性の管理がよりシンプルかつ効率的になりました。最後に、Automotive SPICE 4.0のエンジニアリング系プロセスの一貫性とトレーサビリティの図を引用しておきます。佐藤崇

コラム

RPAツールを使って業務効率化しよう!

弊社では2024年4月よりロボットプロセス技術部を新設し、RPA(Robotic Process Automation)を使いお客様の業務効率化の支援をさせていただいております。今回は、RPAとはどういったものか、どういう効果があるのか、といったお話をしたいと思います。RPAとは何か?RPAは、人間が行っている定型業務のタスクを自動化する技術です。これにより、企業は生産性を向上させ、エラーを減らし、従業員がより価値の高い業務に集中できるようになります。RPAはソフトウェア「ロボット」を使用して、データ入力、トランザクション処理、レポート作成などのタスクを自動化します。主にバックオフィス業務の自動化に活用されることが多く、生産性の向上や人材不足の解消に向けて導入する企業が増加しています。 RPAの導入メリットRPAツールの導入には以下のようなメリットがあります。・業務効率化とコスト削減・ミス防止や業務品質の均一化を実現・企業全体の生産性向上・従業員のモチベーション向上・労働環境の改善・業務スピードの向上により顧客満足度が向上 RPAツールを導入しやすい業務の例以下にRPAツールを導入して効果が得られやすい業務をあげてみました。・手順の決まっている定型業務・大量のデータを扱う業務・アプリケーションを横断する業務 導入のステップRPAツールの導入は手順に沿って進めるとよいでしょう。以下、一般的な導入手順をご紹介いたします。1. 社内の業務を可視化する2. RPA化できそうな業務をピックアップする3. RPAツールの導入目標を立てる4. 業務内容に合ったRPAツールを選定する5. 気になるRPAツールを無料トライアルで試す6. 簡単な業務から小規模でRPA化していく7. 改善事例を横展開してRPAを本格導入する8. RPAの効果測定をする9. RPAの運用と保守を継続して行う RPA導入の成功のポイントは、まず自身の業務を可視化することです。その中に必ず定型業務があるはずです。RPAツールは種類がいくつもあり、業務によって向き不向きがあります。まずは、Windows11に標準で搭載されているPAD(Power Automate Desktop)を使って自らの業務を効率化するところから始めてみてはいかがでしょうか。園田幸治

コラム

Automotive SPICE GP 徹底解説 その2 ~ GP2.1.3(責任と権限)

今回は、GP 徹底解説の第2段として、「責任と権限」についてお届けいたします。実は、この「責任と権限」に関するプラクティスは、Automotive SPICE 3.1 と4.0で GP の番号や記述内容が多少変わっています。アセスメントを実施していると、特に「権限」に関する考え方や、インタビューにおける受け答えが適切にできていないことが多い領域です。 当初、責任と権限に焦点を当ててコラムを書く予定でしたが、Automotive SPICE 4.0 で多少ニュアンスが変わっているようなので、まずは v3.1 と v4.0での記述の差分を確認してみることにします。   GP のタイトルは変わっているものの、「責任と権限」については意図の変更はありません。v4.0 では、プロセスの実行に関与する「人」だけでなく、「物理的・物質的」なリソースも含めてプロセスを実施するために必要な「リソース」に拡張されました。人的リソースに関しては、備考6にあるように「責任と権限」の定義については必ずしも正式な記述である必要はなく、決定されていれば良いと読み取れます。 人的リソースに課せられる要件;本コラムでは、「人的リソース」に焦点をあてて、何を決定しておけば良いかを考察していきます。ここで重要なのは、能力レベル2で求められる「繰り返し同様の成果を出す」ために必要なことは何かということです。つまり、人が作業を遂行するにあたり(同様の成果を確保するために)必要なことを決めておくこということになります。 その作業を実施するために必要な「経験」・「知識」・「スキル」 その作業に関する「責任」と「権限」 その作業を実施した際に作成される作業成果物を管理するたの「責任」と「権限」これらが、より良い作業成果を発揮するためには、重要な要素だと考えられています。 では、責任と権限では何が異なるのでしょうか?意外と説明しにくいのではないでしょうか? 責任と権限の違いとは?以下のように整理するとわかりやすいと思います。(権限とは) 意思決定を行い、命令を下す(権力・権利) 権限は委譲できる 職制や組織構造に基づいて付与される 意思決定の結果について責任を負う (責任とは) タスクや職務を遂行し、その結果について責任を負う(義務) 責任は委譲できず、責任を負う個人にある 割り当てられた仕事や役割に付与される 割り当てられた仕事を成功裏に完了する責任を負う 責任は、プロセスとして考える!プロセス定義の観点からは、責任は(そのタスクを実施する)役割(ロール)に基づいて定義することが一般的です。  しかしながら日本においては、タスクをこなす役割というより、組織の職制の観点から実施できる範囲を定義していることが多いようです。今後、作業をプロセスという側面から定義していくことを考えると、タスクごとに「役割」を定義していくことは有意義だと思われます。   権限は、職制に基づいて定義する!一方で、「権限」については職位毎に定義した方が現実的ではないでしょうか?もし、部門規定などで既に定義されていれば、それを参照すれば良いでしょう。   日本と欧米の文化や習慣の違いを理解することが重要!役割と権限は、日本と欧米の仕事の仕方の違いを色濃く反映しているものだと理解しています。日本では、役割、責任、権限、スキルは組織論として取り上げられており、これらは職制に紐づいていることが多いのです。一方、欧米ではプロセスや Job Description の中で明確に文書化されています。 日本にある外資系企業で、コピーした際に用紙がなくなったので用紙を補充したら、「それはあたなたの役割ではなく私の作業だ!」と怒られた、という話を聞いたことがあります。文化的な違いは、プロジェクト発足時のプロセスにも表れています。日本ではプロジェクトは組織に紐づいていることが多く、新しいプロジェクトが発生した場合、その組織の中でメンバーを構築していきます。欧米では、プロジェクト発足時にプロジェクトマネージャが選任され、予算と権限が与えられます。マネージャは、プロジェクトに必要な技術やスキル要件を予算内で整理して、必要な人材を組織のヒューマンリソースグループに依頼し、プロジェクトメンバーを獲得していくのです。 欧米発の Automotive SPICE を上手く活用していくためには、日本文化における違いを明確にして、その違いに応じた対応をしていく必要があります。問題がなければ必ずしも Automotive SPICE の記述通りに現状の方法を変える必要はありません。ただし、相違点を明確にして自分達のプロセスで問題がないことをアセッサーに正しく伝えることが重要となります。日吉昭彦

コラム

見えない相互作用を探る ~ システムコンテキストへの影響分析 ~

Automotive SPICE 4.0 に関するコラム、今回は「システムコンテキスト」についてお届けいたします。 はじめに Automotive SPICE 4.0 でのシステム要求分析(SYS.2)プロセスにおけるポイントの一つとして、「システムコンテキスト」があります。その内容とシステムコンテキストへの影響を分析することの重要性について探ります。 Automotive 4.0におけるシステムコンテキスト システムコンテキストとは、検討中のシステムの「境界」を越えた外部のものを指す技術用語です。これが、システムコンテキストのイメージ図になりますが、システムの境界を越えた、システムとの相互作用、システムとの直接的または間接的なインタフェースをもつものがシステムコンテキストとなります。この図では、中央に示されたシステムと外部要素(ユーザー、規制、ハードウェアシステムなど)の相互作用が可視化されています。それぞれの要素がシステムに与える影響や、システムがそれらに与える影響を考慮することが重要です。 (V3.1)BP4:運用環境における影響の分析・ 運用環境における明記したシステムと他のエレメントとの間のインタフェースを識別する・ システム要件がこれらのインタフェースおよび運用環境に及ぼす影響を分析する (V4.0)BP4:システムコンテキストへの影響の分析・ システム要求が関連するシステムコンテキストのエレメントに与える影響を分析する V3.1では、BP4:運用環境における影響の分析、というのがシステムコンテキストを指していました。これがV4.0では、「システムコンテキストへの影響の分析」となり、V3.1よりも、「システムコンテキストのエレメントに、与える影響」を分析する、つまり、外部に与える影響を分析、というのをより明確にした表現になっています。例えば、車載電動モーターシステムのシステムコンテキストでは、車両のバッテリーシステム、制御ユニット、冷却システム等との相互作用が重要となります。 システムコンテキストに与える影響 では、具体的に、外部に対してどのような影響があるかというと、VDAガイドラインでは、次のような影響が考えられる、とあります。ユーザへの影響としては、HMI としてストレス、不快感や疲労など。他のメカトロニクスシステムへの影響としては、振動、音響、静電気、摩耗部品の断片など。他のコントロールデバイスへの影響としては、信号の品質、設計された取り付けスペースと矛盾するサイズなど、があります。そして、このような影響は、それぞれのエレメントの所有者にインプットする必要があります。 システムコンテキストはなぜ重要か システムコンテキストへの影響を分析する際は、まずシステム境界を明確にし、次に外部要素を洗い出し、各要素がシステムに与える影響(またはその逆)を定量的・定性的に評価します。その結果をもとに、システム要件の調整を行います。このシステムコンテキストの特定と、その影響分析が十分でないと、次のようなリスクが高くなります。・システム境界や相互作用の漏れによる問題発生リスク・設計段階での不具合検出遅延・修正コスト増大の可能性 そのため、この影響分析結果は、それぞれのエレメントの所有者にインプットする必要があります。その結果、その外部エレメントへの影響を考慮した場合に、システム要求そのものを変更する必要が出てくることもあるでしょう。例えば、電動モーターシステムの動作温度が、冷却システムの能力を超える熱を発生させる場合があると、モーター設計の発熱制限要件を見直し、冷却システムへの過剰な負荷を防ぐように調整する必要があります。 システムコンテキストの特定と影響分析の重要性は理解いただけたでしょうか?みなさんは、自分たちのプロジェクトでシステムコンテキストをどのように定義していますか? おわりに 今回のコラムはいかがでしたでしょうか?今後も数回にわたってAutomotive SPICE 4.0に関するコラムをお届けいたしますので、ご期待ください。(安部宏典)