理論の章、「ソフトウェアテスト」ソフトウェアテストの概要

1.ソフトウェア

コンピュータソフトウェアは、データおよび命令の特定のシーケンス団体の集まりです。一般的には、ソフトウェアは次のものが含まれていると考えられる:
(1)の実行、必要な性能と機能を提供するために、命令のか、コンピュータプログラムセットを
(2)プログラムは、より適切なデータ構造の情報を扱うこと。
(3)は、プログラムやプログラムの動作の機能要件を記述しての使用方法の文書

私たちは、単にとして理解することができますソフトウェア= +プログラムのマニュアル

ソフトウェア開発の1.1歴史

ソフトウェア開発は、次の4つの段階に分けることができます:

  • 知られている第一段階(1960年代半ばに1950年代初頭)、プログラミング段階この時点で、ソフトウェアの小さな、単一の機能、およびプログラムのみ、何のドキュメントはありません
  • 知られている第二段階(1970年代後半に1960年代半ば)、プログラム相系この段階で、その結果、比較的後方マルチチャンネルプログラミング技術、マルチユーザシステム、人間とコンピュータの相互作用技術、アプリケーションソフトウェアの広い範囲が、ソフトウェア技術と管理レベルがされている「ソフトウェア危機」
  • 第三段階(1980年代半ばに1970年代後半)、として知られているソフトウェアエンジニアリング段階ソフトウェア製品、シリアライズ、エンジニアリング、ソフトウェア業界の標準化のこの段階は、ソフトウェアエンジニアリング設計従うことができる基準、方法及び基準に開発されたソフトウェアの開発者によって特徴付けられます。
  • 第四段階(今1980年代半ば)、この位相C / Sアーキテクチャ、特にWeb技術及びネットワーク分散オブジェクト技術より柔軟な多層分散アーキテクチャにソフトウェアアーキテクチャの進化をもたらす法の急速な発展、 CORBA、EJB、COM / DCOM、他の3つの分散オブジェクトモデル技術が浮上しています。

ソフトウェア工学の研究の主な内容は次のとおりです。どのように科学的な理論上の技術の応用は、ソフトウェア開発とエンジニアリングを導くために、これより少ない投資で高品質のソフトウェアを取得する究極の目標を達成します。
(:私は少しでも理解を持たせ、これを参照してくださいプログラマがコーディング埋めることができない、または良い製品の思考のポイントを理解するために

1.2ソフトウェアのライフサイクル

ソフトウェアのライフサイクルは、次の6つの段階があります:
(1)の定義と計画問題
(2)要件分析
(3)ソフトウェア設計
(4)手続きのコード
(5)ソフトウェアテスト
(6)運用・保守

このうち、ソフトウェア保守ソフトウェアのライフサイクルは、時間の最も長い持続期間です。

1.3ソフトウェアの欠陥

ソフトウェアの欠陥は、ソフトウェア・システムまたはシステム構成要素であるシステムコンポーネントまたは実現できない機能やエラーを妨げています一般的に考えられて、ソフトウェアの欠陥に沿って、以下の4つの規則のいずれかです。

  1. ソフトウェアは、ソフトウェア仕様書の所定の機能を達しありません。
  2. エラーが発生していない説明で指定されたソフトウェア製品を発生しています。
  3. ソフトウェアの機能は、製品仕様書で指定された範囲を超えています。
  4. ソフトウェアテスターが遅い実行している、使いやすい、理解するソフトウェアは難しいと思った、またはエンドユーザーは、エフェクトソフトウェアの活用はないと思います。

1.4誤り訂正技術の3種類

私たちは、誤り訂正前に確認する必要があり、およびトラブルシューティング作業は、典型的には以下の3は、一般的なツールのトラブルシューティングに使用され、エラー訂正の90%以上を占めています。

  1. print文を挿入し
    、これによって、我々は、エラーの原因を突き止めるために、実行中のプロセスの値の量を見ることができます。私たちは、最も一般的に使用される手段を学ぶためのプログラムを書くことを始めるときです。
  2. ブレークポイントを設定し
    たブレークポイントは、ブレークポイントで実行中のプログラムを一時停止することができ、我々はできるようになります見ている変数の値を実行することによって、状況を分析し、その後すぐに間違いを見つけること
  3. プログラムの一部をマスキング
    一般にコメントアウトコード、あるいはまた、が間違っているので、誤差の範囲を狭める可能性が残る可能間違った操作部とを別々に取り出しました

2.ソフトウェアプロセス

2.1 RUP

ラショナル統一プロセスとして翻訳RUP(ラショナル統一プロセス)、統一モデリング言語(UML)は、ソフトウェア開発プロセスを説明します。

2.1.1 RUP様々な段階

RUPソフトウェアのライフサイクルは、時間的に連続した4つのフェーズ、すなわち分割された初期段階精製段階ビルドフェーズ配信フェーズ

1

2.1.2 RUPのコアワークフロー

9つのコアワークフローのRUPの合計6つのコア・プロセス・ワークフローと3つのコア支持ワークフローです。
1)ビジネスモデリング
2)必要
3)分析及び設計
4)実装
5)試験
6)展開
7)の構成および変更管理
8)プロジェクト管理
9)環境

PS:最初の6つのコアプロセス・ワークフロー、3つのコア支持ワークフロー後。

2.2アジャイル開発

従来の開発アプローチは複雑で非効率的な開発プロセス管理で、その結果、コードは本当に少しの時間を書いて、書かれた文書の開発に多くの時間を過ごすために、プログラマを可能にし、プロセス制御に依存しすぎているため。だから、アジャイルプロセスは、(2001年時点)されて入ってきました。

アジャイル開発への2.2.1の紹介

次のようにコンテンツ「アジャイルマニフェストは、」以下のとおりです。

「ソフトウェア開発、ソフトウェアとヘルプ他人を開発することで、私たちはこの仕事を通じてソフトウェアを開発するためにいくつかのより良い方法を見つけ、我々はこれらの値になってきました。

  • 個人との相互作用プロセスやツールより
  • ワーキングソフトウェア包括的なドキュメントを超えます
  • カスタマーコラボレーション契約交渉を超えます
  • 対応する変更案を次オーバー

右の用語はまた、非常に貴重なものですが、が、他の言葉では、我々は上の項目は、より多くの貴重な左と信じています。」

開発プロセスなど、XP(エクストリームプログラミング)、FDD(機能駆動開発)の誕生など、これらの値、の指導の下。

アジャイル開発の2.2.2特性

:アジャイル開発は、主に2つの主な特徴持つ
(1)適応方法を使用して開発し役割を管理および監督として、弱化された通信ツールと文書として、実際の需要に小さな反復逐次一連の、コアとして、コード開発プロセスを機能が解除されます。

(2)人志向体内に開発されたプログラマは、指定した戦略のすべての主要な課題の方法を開発することを選択し、それはプログラマが決めるの需要のレベルによって決定されます。

3.ソフトウェア品質

3.1はじめに

定義にANSI / IEEE STD 729--1983:「ソフトウェア製品は、全体の機能や特徴について暗黙の指定要件や能力を満たしています。」

CMMは、品質の定義:「①度の特定の要件に合わせてシステムコンポーネント又はプロセス;②システム、コンポーネントまたはプロセス顧客又はユーザ要求の度に沿ってまたは所望の。」

定義にMJFisher:「すべての特性の組み合わせは、コンピュータ・ソフトウェアの優れたレベルを説明しました。」

ソフトウェア品質フレームは3層モデルで構成されている「 -品質特性-サブメトリックの品質係数特性」以降の裁量係数を用いメートル単位、書込み図品質特性とサブ機能の品質:
2

3.2 CMM / CMMI

3.2.1 CMM

CMMはソフトウェアプロセス改善と評価モデルであり、カーネギー - メロン大学ソフトウェア工学研究所はまた、SEI-CMMとしても知られ、指定されました。

進化ラダーフレームCMMのプロセス能力は、次の表のソフトウェア会社によって提供される:
3
(CMM評価方法が停止されているが、このモデルはまだ存在しています。)

3.2.2 CMMI

SEI CMMIは、2000年にCMMの新バージョンをリリースしますされているのと同じフレームワークにさまざまな能力成熟度モデル統合。次のように基本的な考え方は次のとおりです。
(1)ソフトウェアプロセス改善プロジェクトより困難な問題を解決します。
(2)を達成コンカレントソフトウェア工学学際的な組み合わせを
(3)最高のプロセス改善のメリットを実現しています。

CMMIは、2つの機能があります。

  • ソフトウェアの調達方法の改革;
  • ビューの統合された製品およびプロセスポイントの観点から、原則の開発のプロセスは、サウンドシステムの改善を含んでいました。

テストと開発の関係

テストと開発の間の関係の独自の研究と理解を探すための3つの図を置きます:

  • ソフトウェアのテストと開発プロセスとの関係
    1

  • 並列ソフトウェアのテストとソフトウェア開発
    2

  • 完全なソフトウェア開発プロセス3

以上のことから、我々は、知ることができ、ソフトウェアのテストは、書き込まれたばかりのプロセスをテストする文書ソフトウェアにも、書き込みに私たちをテストしていません同時に、テストプロセスや開発プロセスが同時に行われ、テストプロセスは、製品のマイルストーンと、最終的な開発プロセスであるプロセスの検証を、彼らは相互依存の関係があります。


、の内容は基本的にしているこの記事の教室や教科書に自分のノートを読んで、「ソフトウェアテスト」Zhouyuan浙江省帳から撮影した利便性のためには、唯一、検討し、共有していない任意の商業的な目的のために

(なぜバットから言えばそんなにトラブル?......)

公開された81元の記事 ウォンの賞賛162 ・は 50000 +を見て

おすすめ

転載: blog.csdn.net/weixin_42292229/article/details/104612241