【テストの種類】結合テスト
結合テストとは、システム開発におけるテスト手法の1つです。システム開発では、結合テストの他に単体、機能、システムテストなどがあり、開発工程によって実施するテストが異なります。結合テストは複数のプログラムやモジュールを同時に稼働して行う動作テストで、モジュール同士を結合した際に意図した通りに動作するかの検証を行います。結合テストは、事前にテスト仕様書を作成し、テスト項目を決めてからテストを行います。結合テストの項目は前段階の単体テストが全て完了していることが前提となります。結合テスト前に行う単体テストは、個々の機能やモジュールが単体で動作するかを検証するテストになります。単体テストで行ったテスト項目は結合テストでは殆ど行わないか、簡易的に確認することが一般的です。結合テストでは、ただ動作するかのテストを行うのではなく操作と機能動作の組み合わせが正しいか、仕様書通りに機能しているかについても検証します。単体テストによって個々で正しく動作することが確認された機能やモジュールを対象とし、機能間の連携や一連の機能が仕様書通りに正しく動作するのかを確認します。
初心者
【まだ現役?】COBOLの現在と将来性
COBOL(Common Business-Oriented Language)は、主にビジネスアプリケーションの開発に使用されるプログラミング言語です。1959年に開発され、それ以来、経済、財務、および行政の分野で幅広く利用されてきました。COBOLは、大規模なデータ処理やトランザクション処理に特化しており、特に企業のバックエンドシステムで使用されることが一般的です。
【ソフトウェアテスト】不具合報告のインシデントレポートについて
開発プロジェクトで発生した問題はインシデントとして、管理・分析・対応が必要です。プロジェクト全体を通しての問題となるとかなり範囲は広く、人的トラブルやステークホルダー間での問題など、開発しているプロダクト以外の問題も含んでしまうので、本記事では主にプロダクトのテストに関して検出された動作の不具合(バグ)に焦点を絞って記載します。プロダクトのテストに際して検出した不具合は、報告・対応したあとは蓄積データとして、引き続きプロジェクトで参照・活用されます。実際の開発現場によっては、早期レビューでのやりとりに関するものや、開発とテスターが口頭で連携できるような状況で報告即時対応できる程度の不具合対応など、状況により必ずしも定められたドキュメントの形式で報告されるものとは限りませんが、可能な限り検出対応した不具合は履歴を残しておくことで、プロダクトの品質向上を目指すことができます。ほとんどの場合は不具合管理に別途外部のbug tracking system(BTS)を使用しています。BTSはインシデントレポート1件をチケットという1単位で扱います。チケットの形式や内容が必ずしも同一の形式に沿っているというものではありませんが、不具合の報告管理をするチケットの内容は、管理運用の観点から記載が必要となる項目はある程度決まっています。余談ですが、BTSは不具合報告のみならず、チケット駆動開発 (TiDD) を実施するプロジェクトでは開発作業自体の管理進行目的で使用される場合もあります。
テスト(運用・保守・サポート)
【ソフトウェアテスト】ソフトウェア開発とテスト活動について②
「【ソフトウェアテスト】テストレベルについて ①」記事に記載のとおり、開発ライフサイクルモデルには形式や期間によってさまざまなモデルがあり、テストを実施するタイミングもモデルによってさまざまです。先に挙げた開発工程の例である要件定義→設計→開発→テスト→リリース/保守を一連の流れとする開発ライフサイクルも、このフローを開発期間の流れとして実施するのはあくまでウォーターフォール型モデルのようなシーケンシャルな開発ライフサイクルであり、イテレーティブ開発モデルやインクリメンタル開発モデルでは、各工程とテストが同時に進行したり、無駄をなくすことを目的としてあえて一部工程を省くこともあります。V字モデルは各工程とテストが同時進行する例です。要件定義の段階で要件定義に対するテストを実施、システム設計の時点で設計された内容に対してテストを実施といったかたちで、開発完了後にようやくテストではなく、常に工程の早期段階でテストを実施します。開発完了後のテストで不具合が検出されると工程の手戻りが発生してしまい、工数に無駄が生じますが、早期にテストを実施することにより、上流工程の段階で不具合や懸念を可能な限り取り去って開発作業の手戻りを少なくし、無駄な工数の増加を防いだり、最終的な品質の向上を目指すことができます。このようにV字モデルの左側で行う開発活動に対して早期にテストを実施して効率的な開発活動を目指す手法をシフトレフトと呼びます。イテレーティブ開発モデルやインクリメンタル開発モデルとなると、さらに各工程とテストが早期段階で実施されていきます。全体的な流れをより細かく迅速に行い、それを細かく繰り返していくサイクルが、現在のソフトウェア開発形式の主流になってきています。
テスト(運用・保守・サポート)
【初心者向け】ORMとは
ORMとは英語でObject-Relational Mappingといい、オブジェクト指向プログラミング言語とリレーショナルデータベースとのマッピングを行うものになります。またそれぞれの互換性を向上させるために設計されたプログラミング技術でもあります。ORMの基本的な構造として、プログラミング言語のクラスとデータベースのテーブルを関連付けや対応付けを行うことから始まります。これにより、エンジニアは直接SQLクエリを作成することなく、ORMを通じてデータベースとやりとりを行うことができます。そもそもオブジェクト指向プログラミング言語と、リレーショナルデータベースとはなにかを簡単に説明します。オブジェクト指向言語:データ(オブジェクト)とそれに関連する操作(メソッド)を組み合わせてプログラムを構築するプログラム言語のことです。リレーショナルデータベース:データを表形式で管理するデータベースの一種です。リレーショナルデータベースでは、データが複数のテーブルに分割され、それらの表の間に関係性が定義されています。ではなぜORMという技術が出てきたのでしょうか。
初心者
自宅のWindowsでSpring Framework~sts4の導入~
Spring Frameworkは、JavaでWebアプリケーションや企業向けアプリケーションを構築する際に広く使われているフレームワークです。Spring Frameworkを学習することによって、以下のようなメリットがあります。
開発環境関連(インフラ)
【初心者用】AWS基礎③
AWSの基礎レベルの知識を身につけるために、範囲に沿って学んでいきましょう。前回は、クラウドの概念、セキュリティのAWSの責任共有モデルについて学習してきました。続きからはじめていきたいと思います。
その他(インフラ)
キッティングの基礎【GIGAスクール端末編】
学校現場で使用される1人1台端末の導入・整備に関わる場合、児童生徒が安心して端末を利用する事ができるようキッティングを行うことになります。今回はキッティングの基礎を中心に、児童生徒が使用する端末に関するポイントをまとめてみました。
学習・スキル
【初心者用】Angularについて
いままでReactのみ調べて開発に使用していたのですが、改めて他のフレームワークについて知りたいと思いまとめたいと思いました。後ほど改めて確認する際に、初心者でも理解できるようにまとめれるようにします。
その他(PG/フロントエンド)
Flutterを使ってみよう その9(レイアウト方法③)
前回の続きで複数の子ウィジェットをレイアウトする場合の説明とそれらを使った例などに触れていきたい思います。以前までに触れてきた下記のウィジェットも複数の子ウィジェットをレイアウトするウィジェットです。 ・Row :水平整列時に使うウィジェット ・Column :垂直整列時に使うウィジェット ・ListView :リスト表示時に使うウィジェット ・GridView :グリッド表示時に使うウィジェット以降は、その他でも有用なレイアウトウィジェットについて触れておきたいと思います。
製造・コーディング(PG/フロントエンド)
関連タグ
カテゴリ別人気記事
もっと見るテレワーク関連人気記事
2023年10月02日
製造・コーディング(PG/フロントエンド)2023年07月18日
アーキテクト・技術選定(PG/バックエンド)2023年10月26日
テスト(運用・保守・サポート)2023年11月17日
学習・スキル2023年01月09日
詳細設計(内部設計)(インフラ)
週間人気記事
もっと見る【初心者向け】Packet Tracerでネットワークを学ぶ(NAT)
NATとはNetwork Address Translationの略称でIPアドレスを変換する技術です。 インターネットに接続する際にプライベートIPアドレスをグローバルIPアドレスに変換します。
詳細設計(内部設計)(インフラ)
ECUとはなにか、まとめてみた
ECUとは、車載ECUにおける「ECU」とは、Electronic Control Unit(エレクトロニックコントロールユニット)の略称で、車両のあらゆるシステムを制御する装置の総称です。主にライトやドア、キーレスエントリーシステムなどの車両のボディに関する分野からブレーキ、エンジン、ステアリングなどの制御、オーディオやナビ、GPSなどの情報に関わる分野などもECUが用いられています。現在市販されている自動車には、およそ100個以上ものECUが搭載されており、さらにはハイブリッド車や電気自動車などの環境に対応した最新の自動車にもECUがなくてはならないものとなっています。自動車に関連するECUという用語は、Engine Control Unit(エンジンコントロールユニット)として捉えられることもあります。エンジンコントロールユニットとは、エンジンにおける運転制御を電子的に行うためのマイクロコンピューターのことです。現在ではエンジン制御だけでなく、自動車のあらゆる分野で役割を担っていることから、総称としてElectronic Control Unit(エレクトロニックコントロールユニット)として扱われています。なお、エンジンコントロールユニットの呼び名であり、自動車技術者協会(SAE)および国際標準化機構(ISO)で定義されているものは、ECM(Engine Control Module)と呼ばれます。車載ECUは、自動車に装備されているあらゆる機器やシステムを制御します。この働きによって、エンジン性能の向上や燃費の低減、排出ガスのクリーン化、運転性(ドライバビリティ)の向上などを目指すのが、ECU搭載の目的です。自動車業界の大きな変革期である今、世界中の各自動車メーカーは自社が誇る最新技術を用いて自動車の環境性能や快適性能、安全性能の向上に力を注いでいます。自動運転技術など、これからの自動車においてさまざまな最新機能の司令塔を担うECUは今後の技術発展において必要不可欠なものになっています。
開発環境関連(PG/フロントエンド)
【これからJP1に触れる人向け】JP1とは
開発プロジェクトに携わる際にJP1というツールに触れたことはあるだろうか。JP1は開発工程、特にテスト作業においては非常に利便性の高いツールである。この記事ではまだJP1に触れたことがない人向けにJP1の概要やJP1を合う買う際に知っておくべき用語を取り上げる。
テスト(運用・保守・サポート)
【初心者向け】不具合報告書の書き方
テストエンジニアは業務内で不具合を見つけた際に不具合報告書を起票することになります。不具合報告書とは、発生した不具合の原因と対策について記載した文書です。社内の関係者への共有はもちろん、取引先に提出することもあるため、正確かつわかりやすく記載する必要があります。
初心者
【初心者向け】Packet Tracerでネットワークを学ぶ(CLI操作の基本編①)
ルータ初期設定編ではPacket Tracerを使ってルータを直接操作し色々な設定を試してみたいと思います。 まずCisco製品のルータにはPCと同様にOSがインストールされています。 それが「Cisco IOS(Internetwork Operating System)」です。 スイッチでもこのOSを利用しています。 Cisco IOSはWindowsのようなグラフィカルなインターフェースではなくコマンド入力のみで様々な操作を行うインターフェースになります。 コマンドで操作するインターフェースのことを「CLI(Command Line Interface)」と言います。
詳細設計(内部設計)(インフラ)
【初心者】MySQLの開発環境をつくろう(Windows)
世界中で利用されているデータベースに、MySQLというものがあります。MySQLは利用者も多く重要なデータベースですが、「MySQLって何?」という人もいると思います。本記事では初心者に向けて、MySQLの特徴・インストール方法を説明します。
初心者
【初心者向け】Packet Tracerでネットワークを学ぶ(インストール編)
ネットワークエンジニアとしてCisco社のルータやスイッチの運用業務を遂行するには、 コマンドの知識やどのように機器が通信させているかよく理解しておく必要があります。 またCCNAといったネットワークのベンダー資格でも実際にコマンドを記述するシミュレーション問題が出題されることもあるので、自身のネットワークスキル向上には日頃からコマンド操作に慣れておく必要があります。 知識を定着や操作の慣れには座学だけでなく実際に機器に触れコマンドを入力し結果を確認することが一番なのですが、ルータやスイッチ等のネットワーク機器はいずれも高額であり、中古でもそれなりの値段となるので初心者が自宅に環境を作成することは簡単ではありません。 そこでCisco社のルータやスイッチに簡単に機器の設定、環境の構築、コマンドの投入練習といったことができるアプリケーションが「Packet Tracer」となります。
詳細設計(内部設計)(インフラ)
【初心者用】Linuxファイルシステムとは何か
【図解】初心者向けファイルシステムの基礎知識〜仕組み, OSとの関係, アクセス権との連携〜Linuxファイルシステムとは、コンピュータ上でデータを格納し、組織化するための仕組みです。ファイルやディレクトリ(フォルダ)などのデータを管理し、アクセスするための基盤となります。異なる種類のファイルシステムが存在し、それぞれ異なる特徴を持っています。
その他(インフラ)
