【ソフトウェアテスト】CFD法
CFD法はCause Flow Diagram(原因流れ図)を略したもので、原因の集合と結果をそれぞれの関係のつながりにフォーカスして図式化し、そこからデシジョンテーブルを想定してテストケースを作成する技法です。システム設計において、正常な動作の仕様を基本として異常系の仕様もエラー動作実装のため明確に定義されているべきですが、テスト実施の際には、仕様想定上の正常系・異常系動作確認はもとより、考え得る限りの準正常系テストケース網羅も必要です。そうしたケースの考慮が足りていないと、リリース後にユーザーが想定外の操作を実行して重篤な不具合につながったり、あるいは仕様の穴を付いた不正処理などを実行されたりして、プロジェクトやサービスに損失が発生したりします。原因・結果・各関係を図示して明確に関係を洗い出すことで、実装段階では考慮が漏れているような挙動についても抜けや漏れをカバーするようにテストすることができます。また、エラーに関するもののみではなく、同値分割が可能な原因が複数関連して複数の結果が想定されるというシステムで、その関係性を図にして流れを見ることで、テストケース作成がグラフィカルに把握しやすくなります。インターネットでクレジットカードを利用して決済処理を実行する際に、完了までには以下の様な結果パターンが想定されます。・カード情報入力エラー(入力したカード利用情報に問題がある)・決済処理不能エラー(登録しているカード情報の照会時にエラーが発生)・通信不良による接続タイムアウトエラー(決済実行から完了までの通信時間が規定の時間内に処理されないことによるエラー)・決済完了上記4パターンの結果を返すまでの原因は、細部まで書き出すと煩雑になります。・複数の入力フォームに入力した情報のどこがエラーになったか・カード情報照会時にどのような理由でエラーになったか・どのページからどのページに遷移するときにエラーになったか・何秒以上の通信待機時間を過ぎたら通信エラーで処理するか等これらを一つの枠に収めてそれぞれを線でつなぐことで関係性を整理できるのが、このCFD法の利点だと思います。
テスト(運用・保守・サポート)
【ソフトウェアテスト】直交表/ペアワイズ法 ①
本記事では直交表について記載します。さまざまな資料を調べて情報をまとめているうちに、直交表、ペアワイズ、HAYST法はそれぞれ直交表を元に関連しているようだと思ったので、直交表から順を追って記載していこうと思います。しかし、それぞれが個別の手法として確立しており、その手法を使用するシーンも違うことから、記事としては独立させたほうが適切かと思ったので、まずは直交表についてまとめたのち、続いて別の記事でペアワイズ法をまとめていきます。
テスト(運用・保守・サポート)
【初心者向け】Packet Tracerでネットワークを学ぶ(STP)
STP(Spanning Tree Protocol)はブロードキャストストームを防止するためにポートの通信を行わない状態に遷移させるプロトコルです。 ブロードキャストストームとはスイッチがループになったネットワークでずっとブロードキャスト通信であるARP要求を送り続ける状態のことをいいます。
詳細設計(内部設計)(インフラ)
Ndde.jsの構文まとめ|中級者向け
Node.jsは、JavaScriptの実行環境として、Webアプリケーションの開発に欠かせない存在となっています。今回は、Node.jsの構文についてまとめてみました。Node.jsの基礎を既に知っている人向けの内容になっています。
製造・コーディング(PG/バックエンド)
Flutterを使ってみよう その8(レイアウト方法②)
前回の続きで他のレイアウトについて、触れていきたいと思います。環境 ・MacOS Ventura 13.6.3 ・Xcode 15.1 ・VSCode 1.85.1 ・Flutter 3.16.5 ・Dart 3.2.3
製造・コーディング(PG/フロントエンド)
イチから学ぶデータベース・SQL(11)
イチから学ぶデータベース・SQL(10)では、CASE式について学習していきました。 今回も、これまでと同様paizaラーニングを参考に、オンラインRPGを題材としてSQLについて学習していきます。
製造・コーディング(インフラ)
【ソフトウェアテスト】デシジョンテーブルテスト
さまざまな入力値が想定されており、それぞれの入力値を統合した結果として複数の状態を返すようなシステム仕様に対しては、デシジョンテーブルテスト技法を用いることで、複雑な条件を整理することができます。サービス利用時に新規アカウントを作成するような場面で、ユーザー情報を入力して登録する機能を想定した場合、[名前(ローマ字)][よみがな][任意のパスワード][パスワード確認入力][年齢][住所]などを入力し、それらの入力値が全て正常であれば登録処理を進めて、入力値のうち1つでも正常ではない値が入力されている場合は、エラーメッセージを表示して再度入力を促すようなシステムがあります。対象のステータスによって期間限定のサービス適用有無を判定するようなシステムでも、サービス対象となるかどうかを複数条件から判定するような仕様が想定されます。5年以上サービスを利用していて、アカウントの利用者ランクがゴールド以上の場合、商品購入時の金額から5%をサービス固有ポイントとして還元するというイベントを、n年n月n日~n年n月n日まで開催するといった追加開発システムのテストをする際に、デシジョンテーブルによってテスト対象を適切に抽出できます。
テスト(運用・保守・サポート)
【初心者用】SQLのクエリ操作基礎2
タイトル通りですが、SQL初心者がクエリ操作に関して学んだことまとめていきます。操作方法について忘れていることが分からないことが多いので、クエリ操作について基礎を学んでいきます。
その他(PG/バックエンド)
Microsoft Azureについてまとめてみた
・Microsoft Azureは聞いた事あるけど、実際どんなものなのか使ったこと無い・プログラミングに興味がある人じゃないと使うことが無いと、機会がないと触れることが無いので、Azureとはどんなものかをまとめてみました。
開発環境関連(インフラ)
関連タグ
カテゴリ別人気記事
もっと見るテレワーク関連人気記事
2023年10月02日
製造・コーディング(PG/フロントエンド)2023年07月18日
アーキテクト・技術選定(PG/バックエンド)2023年10月26日
テスト(運用・保守・サポート)2023年11月17日
学習・スキル2023年01月09日
詳細設計(内部設計)(インフラ)
週間人気記事
もっと見る【これからJP1に触れる人向け】JP1とは
開発プロジェクトに携わる際にJP1というツールに触れたことはあるだろうか。JP1は開発工程、特にテスト作業においては非常に利便性の高いツールである。この記事ではまだJP1に触れたことがない人向けにJP1の概要やJP1を合う買う際に知っておくべき用語を取り上げる。
テスト(運用・保守・サポート)
【ソフトウェアテスト】直交表/ペアワイズ法 ①
本記事では直交表について記載します。さまざまな資料を調べて情報をまとめているうちに、直交表、ペアワイズ、HAYST法はそれぞれ直交表を元に関連しているようだと思ったので、直交表から順を追って記載していこうと思います。しかし、それぞれが個別の手法として確立しており、その手法を使用するシーンも違うことから、記事としては独立させたほうが適切かと思ったので、まずは直交表についてまとめたのち、続いて別の記事でペアワイズ法をまとめていきます。
テスト(運用・保守・サポート)
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/フロントエンド)
【IT転職】JavaのスキルアップにはJava Silverがおすすめ!資格の概要や取得のメリットを解説します!!
Javaプログラマへの転職やJavaのスキルアップを考え、Java学習に励む方が多いと思いますが、中には具体的に何を目標にするのか悩む方も多いかと思います。そんな方に向けて、本記事ではJavaのスキルを証明することができる資格「Java Silver」を紹介し、Javaスキルアップの目標としてJava Silverがおすすめな理由を解説していきます。ぜひ参考にしてくださいね。
学習・スキル
【初心者必見】Mac環境でEclipseをインストールしてみた
今回現場で想定されるJavaの開発をするにあたり、自身のPC(Mac book Air)にJavaの開発環境を構築したいため、MacでEclipseをインストールしようと思う。 参考サイト Java環境構築(Mac版)Eclipseのインストール https://www.techfun.co.jp/service/magazine/java/mac-eclipse-install.html Mac環境でEclipseのダウンロードからプロジェクト立ち上げまでの手順を徹底解説! https://wk-partners.co.jp/homepage/blog/webservices/eclipse/
開発環境関連(SE)
【初心者向け】Packet Tracerでネットワークを学ぶ(NAT)
NATとはNetwork Address Translationの略称でIPアドレスを変換する技術です。 インターネットに接続する際にプライベートIPアドレスをグローバルIPアドレスに変換します。
詳細設計(内部設計)(インフラ)
【初心者】MySQLの開発環境をつくろう(Windows)
世界中で利用されているデータベースに、MySQLというものがあります。MySQLは利用者も多く重要なデータベースですが、「MySQLって何?」という人もいると思います。本記事では初心者に向けて、MySQLの特徴・インストール方法を説明します。
初心者
【初心者用】Prismaについて
Prismaは、データベース操作するためのORMです。Prismaを使用することで、データベースのスキーマを定義し、型安全なクエリを実行できます。また、Prismaは、Prisma Migrateと呼ばれるマイグレーションツールなどを提供しています。データベースのスキーマ変更に伴うマイグレーションを簡単に行うことができます。具体的には、prismaを使用することで、以下のようなことが可能です。 ・データベースのスキーマ定義 ・データのクエリ ・データの作成、更新、削除 ・データの関連付けPrismaは、Prisma Clientと呼ばれる型安全なクライアントライブラリも提供しています。これにより、SQLクエリを直接記述する必要がなくなります。
初心者
