そもそもソフトウェアの品質を数値で表すことはできないのですが、前稿:計測の説明で品質を計測する尺度として“テスト項目数”、“欠陥件数”、“欠陥検出率”があることを述べました。これらはソフトウェアの品質を測る便宜的な尺度であって、ソフトウェアの品質を表す尺度ではありません。人の白血球の数は1ミリ立方メートル当り3,000~9,000個が正常値で、あなたは 4,500だ から正常ですと、成人検診などで言われますが、血液中の白血球の分布が体中で均一であることを前提に、サンプリングして評価しています。ソフトウェアの場合、欠陥がソフトウェア全体に均一に存在することはありません。むしろ、偏在することの方が多いのです。また、欠陥が多数含まれている場合にはサンプリングという手法は意味がありますが、欠陥数が少なくなっても欠陥が存在しないことを保証しているわけではありません。白血球の場合、白血球が存在しなければ異常ですが、反対に、存在しないことが正常であると仮定すると、ソフトウェアの場合と同様に完全に存在しないことを検証する手段はないでしょう。実際、癌細胞が存在しないことを検証することはできません。ソフトウェアの欠陥であれ、人の癌細胞であれ、“存在しない”ことを検証することは大変難しい問題です。
Archives for : プロジェクト管理
今回はITプロジェクト管理考としては少々ずれた話になりますが、ソフトウェアが重要な基幹産業であることをはっきりとさせておくべきと考え、敢えてこのテーマを取り上げました。
現在、我国には都市部と地方との格差など、解決しなければならない問題があります。
私は、都市部と地方の格差やそれに起因するいろいろな問題解決にソフトウェアの役割は非常に大きいと考えています。
そのことを述べるために、先ず、具体的な状況の一端と、経済産業省の報告書について紹介します。
1.都市と地方の格差問題
都市部に人口が集中し、地方が疲弊してきた。
住民基本台帳を基にした調査が新聞に掲載された。記事のうろ覚えであるが、首都圏、中部、大阪の人口は増加傾向だが、その他は減り始めた。特に人口減率が高いのは秋田県、その他の県も減る一方。北海道を見ると、40年前も今も道の人口はおおよそ500万人だが、札幌の人口は約80万人から約190万人に増えている。その差分は道内の地方都市:小樽、旭川、釧路、函館、帯広などの人口減に相当。仕事がないので皆札幌に集まってきている。同じことが、首都圏、中部、大阪と他の府県との間に当てはまる。人がいなくなれば疲弊するのは当たり前。
少し大きなシステム構築のITプロジェクト、つまり数十人以上のITプロジェクトは顧客、元請け企業、その下請け企業など、複数の企業の社員から構成される混成プロジェクトとなるケースが殆どです。このようなITプロジェクトでは元請け企業の管理力不足が露呈することがよく見受けられます。
納期が守れなかった、費用がかかり過ぎた、品質が悪い、拡張性がない、性能不足などとなるケースは、失敗と言わざるを得ません。厳しいと言われるかもしれませんが、これらのいずれか1つでも顧客の満足が得られなければ“失敗”です。
混成プロジェクトでは元請け企業の力量が問われます。生半可なプロジェクト管理はできません。プロジェクトの規模が大きくなるほど徹底した管理を行わなければなりません。混成プロジェクトを成功させる最低の条件として、プロジェクトメンバが共通のコミュニケーション基盤(技術知識および管理知識)の上で仕事をする必要があります。構成メンバが異なる企業文化を持ち込んでくるとちょっとしたコミュニケーションさえうまく行かなくなります。
構成メンバが技術文書(要求仕様、機能仕様、構造仕様、詳細仕様、コード化標準、レビュー方式、テスト基準、品質評価基準、各種帳票、設計用語、etc.)やその作成手順、会議の種類・進め方などの知識を共有していなければ、コミュニケーションは躓きます。元請け企業は、こうしたコミュニケーション基盤を文書化し(これを「作業標準」と呼びます)、混成プロジェクトの構成メンバが作業標準に従うことを義務づけなければなりません。
前回、日経新聞の記事に対して「記者はプロでしょ!」を書きましたが、今度はもっとまともな、しかも大切な記事を日経新聞が載せているので、この記事を受けて将来に向けた経済産業省への期待を書きたいと思います。
2007年6月29日の日経新聞に「システム開発の手順統一 富士通・日立など情報大手8社 顧客企業と障害防止へ基準」というヘッドラインで、「富士通、日立製作所など情報システム大手8社は東京電力など顧客企業と共同で、システムの障害を防ぐための統一基準を作る。開発や運用の手順・用語を細かく定めてミスを防止し、顧客との相互チェックも容易にする。9月下旬にも文書にまとめて業界に配布し、中小企業の採用も促す。企業経営や社会生活に影響するようなシステムトラブルが多発する中、国内シェアの8割を占める8社が事実上の国内標準をまとめて対策を急ぐ。
システムを開発する際の手順を決める仕様書や、仕様書で使う用語に明確な業界標準はなく、情報システム各社が独自で定めている。ところが、大規模なシステムを開発する際に複数の大手企業や下請け企業がかかわるケースが増え、手順などの不統一で意思疎通を欠く結果、設計ミスが起こりやすいと指摘されていた。顧客側も工程を管理することが難しかった。」とあります。記事の最後には、経済産業省や東京国際大学などとも連携すると書いています。
最近の日経新聞を読んでいて気になった記事がありました。システムの自動生成についての記事です。
「 システム開発の自動化に本格着手:NTTデータは11日、情報システム開発作業の自動化に本格的に取り組むと発表した。コンピューターを動かすプログラムを設計図から自動作成する支援ソフトを自社で導入、不具合を半減させる計画。全日本空輸やNTT東西地域会社など産業界で大規模システムの障害が頻発する中、人手をかけないことでシステムの品質を高める。NECや富士通なども開発の自動化に着手しており、今後は他のシステム大手にも広がりそうだ。
支援ソフトを使って開発したシステムは、人間によるプログラム作成では不可避の間違いや見落としを減らせるという。NTTデータは独ベンチャー企業アイケイブイ・プラスプラス社(ベルリン市)に8.9%出資し、同社の開発支援ソフトを本格導入する。開発するシステムの機能や画面の流れを設計図に記述すると、支援ソフトが解釈し、プログラムを自動生成する仕組み。(00:37) 」
というものです。