検索キーワード: 「ロードマップ」


【ソフトウェアテスト】CFD法

CFD法はCause Flow Diagram(原因流れ図)を略したもので、原因の集合と結果をそれぞれの関係のつながりにフォーカスして図式化し、そこからデシジョンテーブルを想定してテストケースを作成する技法です。システム設計において、正常な動作の仕様を基本として異常系の仕様もエラー動作実装のため明確に定義されているべきですが、テスト実施の際には、仕様想定上の正常系・異常系動作確認はもとより、考え得る限りの準正常系テストケース網羅も必要です。そうしたケースの考慮が足りていないと、リリース後にユーザーが想定外の操作を実行して重篤な不具合につながったり、あるいは仕様の穴を付いた不正処理などを実行されたりして、プロジェクトやサービスに損失が発生したりします。原因・結果・各関係を図示して明確に関係を洗い出すことで、実装段階では考慮が漏れているような挙動についても抜けや漏れをカバーするようにテストすることができます。また、エラーに関するもののみではなく、同値分割が可能な原因が複数関連して複数の結果が想定されるというシステムで、その関係性を図にして流れを見ることで、テストケース作成がグラフィカルに把握しやすくなります。インターネットでクレジットカードを利用して決済処理を実行する際に、完了までには以下の様な結果パターンが想定されます。・カード情報入力エラー(入力したカード利用情報に問題がある)・決済処理不能エラー(登録しているカード情報の照会時にエラーが発生)・通信不良による接続タイムアウトエラー(決済実行から完了までの通信時間が規定の時間内に処理されないことによるエラー)・決済完了上記4パターンの結果を返すまでの原因は、細部まで書き出すと煩雑になります。・複数の入力フォームに入力した情報のどこがエラーになったか・カード情報照会時にどのような理由でエラーになったか・どのページからどのページに遷移するときにエラーになったか・何秒以上の通信待機時間を過ぎたら通信エラーで処理するか等これらを一つの枠に収めてそれぞれを線でつなぐことで関係性を整理できるのが、このCFD法の利点だと思います。

テスト(運用・保守・サポート)

【ソフトウェアテスト】直交表/ペアワイズ法 ①

本記事では直交表について記載します。さまざまな資料を調べて情報をまとめているうちに、直交表、ペアワイズ、HAYST法はそれぞれ直交表を元に関連しているようだと思ったので、直交表から順を追って記載していこうと思います。しかし、それぞれが個別の手法として確立しており、その手法を使用するシーンも違うことから、記事としては独立させたほうが適切かと思ったので、まずは直交表についてまとめたのち、続いて別の記事でペアワイズ法をまとめていきます。

テスト(運用・保守・サポート)

【ソフトウェアテスト】ユースケーステスト

ユースケース(use case)テストとは、システム開発要件や機能仕様などのテスト対象に対して利用者サイドから想定しうるテスト対象の使用状況や相互の作用をユースケースとしてシナリオを想定することで、対象の利用に際して問題がないかを主軸にしてテストを行う手法です。シナリオを想定してテストを行うため、シナリオテストと混同されやすいですが、シナリオテストと比較してテスト対象や目的やテストの粒度など違う部分があるので、ユースケーステストとシナリオテストはそれぞれ別の手法として、実施するテストケースに応じて使い分けが必要です。シナリオテストは主に特定の機能や操作の流れを一連のシナリオとしてテストするもので、対象となる仕様や要件のみならず、ストーリーとして関連が想定される動作や異常系処理などもテストスコープに含むため、ユーザーサイドの視点で対象に対して詳細なテストを実施しますが、ユースケーステストは、あくまで対象となる仕様や要件から想定されうるユーザーストーリーをテスト対象とする前提で、シナリオテストよりもテストスコープは狭くなると想定されます。また、記事内にて後述しますが、ユースケース図を用いていることもユースケーステストの特徴であり、シナリオを順序立てる記述形式はシナリオテストもユースケーステストも同様ですが、テストケースの整理や共有の方法によってテストケース自体をレビューできるため、静的テストのアプローチがしやすいテスト技法です。

テスト(運用・保守・サポート)

【初心者用】Swingについて勉強したのでまとめてみた 第二回

前回はSwingとはどういうものか、そしてボタンを押下したら小文字英字が大文字に変換される簡単な処理の作成を行いました。今回はSwingに図形を描画する方法をまとめ、次の章でこれまでの応用としてボタンを押下するとSwingに図形を描画して最終的に絵を完成させる処理を作成していきます。

【ゼロから始めるAI】巷で噂のAIを触ってみたい 第1回

よく話題に挙がる「AI」というものAI(人工知能)は、ChatGPTの登場以来、「会話ができるAIが誕生した!」とSNSやメディアで大きな注目を集めてきました。今では企業が業務に取り入れ始めており、社内チャットに導入したり、テスト工程で画像認識を活用したりと、すでにAIは社会に欠かせない存在となりつつあります。私のエンジニアの友人の中には、「このままではAIに仕事を奪われるかもしれない……」と危機感を抱く人も出てきています。さらに、ゲーム開発の分野でもAIを活用した取り組みが話題になるなど、AIの可能性はどんどん広がっています。とはいえ、世間でこれだけ話題になっていても、「AIって何となく分かるけど、実際の使い方までは分からない……」という人も多いのではないでしょうか。実は、私自身もその一人です。だったらいっそ、自分で触って、理解を深めてみよう! そう思い立ったのがこの企画の始まりです。AIを趣味や仕事に活かすヒントを探しながら、ゼロからAIについて学んでいきたいと思います。このシリーズでは、「とにかく簡単に始めてみる」をテーマに、AIの基礎から実際の使い方まで、やさしく解説していきます。

マークアップ言語でなにができる?その種類と活用法を紹介!

マークアップ言語とは、文書の構造や見た目を表現するための言語のことで、HTMLやXMLなどが有名です。マークアップ言語は、プログラミング言語とは異なり、命令や計算を行うことはできませんが、文書の意味やレイアウトを定義することができます。この記事では、マークアップ言語の特徴やできること、プログラミング言語との違いなどを紹介しながら、マークアップ言語の種類や用途についても説明していきます。

決済サービスStripe+Laravelで決済フォームを作る

決済サービスとして人気なStripeを使用して決済フォームを作成してみます。以前GMO Paymentサービスを利用した際の導入コストや使用感などの比較検討を行い、要件にあったサービス選択を行う判断基準と学習を目的とします。・環境Laravel 10.3PHP 8.1nginxMySQLStripe

その他(PG/バックエンド)

Gitの使い方

ツールのアップデートが頻繁に行われているWEB業界では、Gitを活用して業務を効率化させることが一般的になってきています。しかし、初心者の方や業界に馴染みのない方は、Gitが何のことかわからない方もきっといらっしゃるでしょう。多くの開発者に利用されている印象のあるGitですが、実はエンジニアだけではなく、WEBデザイナーやライターにとっても便利なツールのひとつです。Gitを活用することで、チームでの作業効率を高めたり、多くのファイルを管理することが簡単になります。というわけで本記事では、Gitについて基本的な用語について解説いたします。

【Java】アクセス修飾子についてまとめてみた

今回はアクセス修飾子についてまとめてみます。Javaには4つのアクセス修飾子があり、クラス・メンバフィールド・メソッドの他クラスへの公開範囲を決める修飾子を意味するものです。修飾子とはプログラム言語で、変数、関数、クラスなどの要素を振る舞いや性質を変更するキーワードのことです。修飾子は、その要素がどのように動作し、他の部分とどのように関連するかを制御するために使用されます。下記で示した4つのアクセス修飾子は、プログラムのセキュリティ、カプセル化、情報隠蔽などの様々な目的で使用されます。

【初心者向け】情報セキュリティーについて

情報セキュリティーについて聞いたことがあると思いますが、本記事で改めて学んでいきたいと思います。

【選び方ガイド】おすすめのスマホアプリ開発言語とその将来性

スマートフォンアプリの開発に取り組む際、適切なプログラミング言語を選ぶことが重要です。しかし、初めてのプロジェクトや多くの選択肢がある中で、どの言語を選ぶべきか悩むこともあるでしょう。本記事では、スマホアプリ開発における言語選びのポイントを解説します。

【PHP】配列と繰り返し処理について

PHPの配列と、繰り返し処理についてまとめました。プログラミングを行ううえで、かかせない知識となっています。ぜひ最後までお読みください!

製造・コーディング(PG/バックエンド)

関連タグ

カテゴリ別人気記事

もっと見る
テレワーク関連人気記事

週間人気記事

もっと見る