クエリ: 英語で「基準」という意味がある、コンピューターのハードウェアやソフトウェアの性能を比較するために行われるテストを何という?
文章: ベンチマーク その他、ハードウェアの3D機能を高度に駆使し、十分な動作速度を確保するための要求スペックが高いパソコン用のゲームソフトやオンラインゲームでは、動作の確認と宣伝を主目的として、メーカーがゲーム素材を利用したベンチマークソフトや体験版を制作し、配布することもみられている。ベンチマークは、異なる部品構成やアーキテクチャを持ちスペックなどによる直接的な性能比較ができないシステムの間において、様々な観点で性能を比較する手段を提供する。またベンチマーク結果を集計しグラフ化や比較が可能なウェブサイトも多数存在している。レタッチソフトなどビデオカードのGPUに依存した機能があるソフトウェアではインストール前に自身のハードウェアで利用できる機能を把握したり、適切な機材へ変更する際の指針となる。
文章: ソフトウェア品質 ソフトウェアの信頼性(reliability)は、ソフトウェア品質を測る重要な尺度であり観点である。品質(quality)という用語には主観的(定性的)要素が含まれるが、ソフトウェアの信頼性は客観的な基準で測定可能である。このような測定基準を一般にソフトウェアメトリックと呼ぶ。ソフトウェアの信頼性改善の実際の作業は、ソフトウェア開発を扱いやすく理解可能なものにするという圧力によってなされてきたもので、収益を求めてのものではない。しかし、ソフトウェア産業の成熟と共に、ユーザーがソフトウェア製品に期待する品質レベルは高くなり、信頼性の確保が収益に繋がるという状況ができつつある。 組み込みシステムでは、ソフトウェアの問題は単なる不便以上の問題を生じる。場合によっては人命にも関わる。その原因はユーザインタフェースの貧弱さから直接的なバグまで様々である。多くの人命に関わったプログラムのバグについては、Levenson の論文 Medical Devices: The Therac-25 に詳しい。結果として、ソフトウェアの信頼性に関する要求仕様が生まれた。アメリカ合衆国では、アメリカ食品医薬品局 (FDA) と連邦航空局 (FAA) がソフトウェア開発についてその種の要求仕様を策定している。 現代の工学分野の技術をソフトウェア開発に適用するため、ソフトウェアの品質を客観的に判断する方法が必要とされる。これは、誰が見てもコンピュータソフトウェアは予定通りの動作をしないという一般的観測結果に基づいた動機である。言い換えれば、ソフトウェアは何らかの問題を抱えていると不適当な動作を見せる。その原因は処理中のデータの問題だったり、ソフトウェアが動作するハードウェアの問題だったり、操作者などがそのマシンに悪影響を及ぼしたためだったりする。経済活動や生産プロセス、生命維持に直接関わるシステムなどのより重要なソフトウェアでは、ソフトウェアの信頼性を評価する必要性も大きくなる。 文章: テストパターン テストパターンとは、電子部品や装置(ハードウェア)、ソフトウェアが要求仕様にしたがって動作することを検証するためにこれらに入力し、得られた出力を観測するための電気信号やデータ(テストデータとも)のことである。 検証の対象物の動作仕様に応じて適切なテストパターンが決められるが、異なった性質の仕様検証のためには各々の性質に適した複数パターンを用いる。また、ソフトウェアや集積回路の検証などにおいてテストパターンにより検証できる性質の割合を網羅率(あるいはテスト網羅率、コード網羅率)と呼ぶ。網羅率の高い検証のためには用意するテストパターンを慎重に設計する必要がある。また、テストパターン作成を効率よく扱うために自動的にパターンを生成する場合があり、自動テストパターン生成などと呼ぶ。 また、製造した個々の製品の出荷検査用だけでなく、出荷後の運用・保守時に用いられるテストパターンもある。 文章: 実用最小限の製品 MVPは「最小限の手間」で「価値ある機能か否か」を「ユーザーの製品利用・購入」を介して検証するための手段である。MVPを構築する様々な手法が存在する。Minimum の定義にある通り、それぞれのMVPで求められる最小限の機能は異なり、採用可能な手法も異なる。 文章: ソフトウェア品質 言語はソフトウェア設計の意図していることをなるべく簡単に記述できるよう進化してきた。文、サブルーチン、ファイル、クラス、テンプレート、ライブラリ、コンポーネントといった概念の導入により、プログラムの記述が抽象化・階層化・モジュール化され、コードの理解が容易になってきた。 さらに言語の進化によってデータの構造や利用に関しても正確な制御が可能となってきた。 プログラムが要求仕様などの通りに動作するかを判定するのがソフトウェアテストである。単体テストは、プログラムのごく一部(多くの場合1つのサブルーチン毎)を対象に仕様通りに動作することを確認する。結合テストは、より大きなモジュール単位での動作を確認する。 文章: ソフトウェアテスト ソフトウェアが複雑になり、機能、関数の数が千以上になってくると、性能試験、機能試験の結果を統計的に処理し、どういう試験を実施するとよいかを統計的に検討することがある。また、テストでは、欠陥が存在することを示すことはできるが、欠陥が存在しないことは証明できないため、いつソフトウェアテストを終了すればよいかを決定するための基準として統計的手法として信頼度成長曲線等を利用する場合がある。信頼度成長曲線を利用する場合には、条件の変化を統計的にうまく扱わないと見落としが発生するか、無駄な作業を続けることがある。 文章: チューリング・テスト ここで問題だが、「このゲームにおけるAの役を、機械がやったらどうなるだろうか」質問者は、男性と女性でゲームを行ったときと同じくらいの頻度で、間違った判断をするだろうか。この問題が、元々の「機械は思考できるか」という問題を代替するのである。論文の後部で、チューリングは、二者間で行う「同じ」図式を提案しており、ここでは質問者はコンピュータか人間の、どちらかとだけ会話する。このどちらの図式も、現在一般に知られているチューリングテストと正確には一致しない。チューリングは1952年に3つめの図式を提唱している。この、チューリングがBBCのラジオ放送で語ったバージョンでは、審査員はコンピューターにいくつか質問をする。コンピューターの役割は、審査員たちの多くを本物の人間(man) と信じ込ませることである。 文章: 基準 基準(きじゅん)とは、行動や判断の根拠となる物や数値である。何かを比較する時に用いる。 文章: ITスキル標準 スキルレベル3以下は試験の合格によって判定される。スキルレベル4に関しては試験合格だけでなく実務経験も考慮される。スキルレベル5以上は試験では判定できないとされている。 文章: システムソフトウェア システムソフトウェア(英: system(s) software)は、電子機器類(コンピュータも含む)の基本的な制御や管理を行うためのソフトウェア。 コンピュータのハードウェア管理や制御などを行うソフトウェア全般をまとめて指すための用語(総称)。システムプログラムとも。対比される用語・概念はアプリケーションソフトウェア(応用ソフトウェア)。類似の用語には「基本ソフトウェア」「システム制御ソフトウェア」などもある。 1960年代から使われるようになった用語であり、何を「システムソフトウェア」と呼ぶかは、電子機器の種類やそのメーカーによって異なっており、また時代によっても変化してきており、その境界は明確ではないが、一般論として言えば、ファームウェアやオペレーティングシステム(OS)、ミドルウェアなどの総称として使われており、機器によってはそれらを組み合わせたものもそう呼ばれる。たとえばデバイスドライバ、またプログラミング言語の処理系(つまりコンパイラやインタプリタなど)もそう分類されることは一般的である。とはいえ、PCなど汎用コンピュータ製品では「OS」や「ファームウェア」などとひとつひとつ区別をはっきり付けることが多いため(多くなってきたため)、PCに関してはこれらをまとめてシステムソフトウェアと呼ぶ機会は少なくなっている。(その結果、近年では)テレビ、家庭用ゲーム機など、コンピュータを応用したデジタル機器でよく用いられる用語となっている。 文章: 機能テスト 機能テスト (英: functional testing)は、品質保証(QA)プロセスであり、テスト対象のソフトウェアの構成要素の仕様に基づいてテストケースを作成する一種のブラックボックステストである。機能は、入力を行って得られる出力を調べることでテストされ、内部プログラム構造は考慮されない(そのためホワイトボックステストとは異なる)。 機能テストは、システムや構成要素の指定された機能要件への準拠を評価するために実施される。 機能テストはブラックボックステストの一種であるため、ソフトウェアの内部動作を知らなくても、ソフトウェアの機能をテストできる。これは、テスターがプログラミング言語やソフトウェアの実装方法を知る必要がないことを意味する。テスターはソフトウェアの開発には関与していないため、テストにおける開発者のバイアス(または確証バイアス)が減少するのは良い点である。 機能テストは、モジュールまたはクラスの関数(メソッド)をテストすることを意味するわけではない。機能テストは、システム全体の機能の一部をテストするものである。 文章: ソフトウェア ソフトウェア は、コンピューター分野でハードウェア(物理的な機械)と対比される用語で、何らかの処理を行うコンピュータ・プログラムや、さらには関連する文書などを指す。 文章: ソフトウェア要件 検証には、プロジェクトのビジネス目標を満たすソリューションを構築するための正しい要件のセットが指定されていることを確認するための手法が含まれる。 文章: ERP5 販売価格や割引率、請求書のまとめ方など、様々な機能がユーザが入力したデータに従って動作するため、ユーザが入力したデータがある実運用環境の動作をテストするためには実運用環境のデータが全て必要になる。そのため、ERP5はライブテスト機能を持っている。ライブテストは実運用環境上でユニットテストやファンクショナルテストを実行する機能である。ライブテストを使うと実運用環境が想定通りの動作を行うことを確認することができる。 文章: ソフトウェア特許 初めて認可された特許はおそらく、1962年、英国石油によって申請された、線形計画法の解法に関する特許であろう。この特許は、低速な記憶装置と高速な記憶装置を用いて、反復法によって線形計画法を解くようにプログラムされたコンピュータの特許である。これは、多数の制約条件を有する最適化問題を連立一次方程式によって解く方法であったが、この時代には、コンピュータを使うことが、直接「機械」を用いることを意味していたため、産業上の利用可能性を充足すると捉えられていたものである。 このように、かつては、ソフトウェアはハードウェアに極めて近い機械語・低級言語であったことから、ソフトウェアはある意味、具体的で生々しいものであり、ハードウェア等の技術的な構成と密接に関連していたものであった。しかしながら、コンピュータのソフトウェアは、ハードウェアから離れ、徐々に抽象化・概念化が進み、ソフトウェアが必ずしも従来のストアードプログラム方式に基づいて動作することを直接的に意味するものではなくなりつつある。 文章: ヴィルトの法則 ヴィルトの法則は、ニクラウス・ヴィルトによる1995年に発表された記事A Plea for Lean Softwareにおける議論に由来する警句で、コンピュータのプログラム(ソフトウェア)とハードウェアの成長(growth)と性能のバランスに関して「ソフトウェアは、ハードウェアが高速化するより急速に低速化する」とするものである。 ヴィルトはこの言葉をOberonについての彼の著書 (1991) の序文で Martin Reiser が書いた「その希望とは、ハードウェアの進歩がソフトウェアの病気を全て癒すだろうことである。しかし注意深く見れば、ソフトウェアの巨大化と緩慢化はハードウェアの進歩を超えていると気付く」という文章が元だとしている。このような傾向は1987年ごろには早くも明らかになりつつあり、同様のことを先に言及した者も少なくない。 多くの分野でハードウェアが時と共に高速化している現象が見られる。特にCMOSロジックが使われるマイクロコンピュータ革命以降のコンピュータは、ムーアの法則に従ったプロセスルールの微細化によって、デナード則により、縮小されたこと以外はそのままであっても、その縮小率に応じて高速化している(2016年現在では、消費電力の低下が法則通りにならなくなっていることから、必ずしもそうではないが)。ヴィルトの法則は、現実社会においてポピュラーなプロダクトが、その高速化以上に膨れ上がって(bloat)いるために(ソフトウェアの肥大化)、ユーザから見れば以前と同じだけの仕事をさせるのに、かえって遅くなってはいまいか、という問題提起と言える。 似たことを2009年、Google創業者ラリー・ペイジも述べている。そちらをペイジの法則と呼ぶ。名付け親はセルゲイ・ブリンで、Google I/O Conference 2009 でのことである。