【ソフトウェアテスト】不具合報告のインシデントレポートについて
開発プロジェクトで発生した問題はインシデントとして、管理・分析・対応が必要です。プロジェクト全体を通しての問題となるとかなり範囲は広く、人的トラブルやステークホルダー間での問題など、開発しているプロダクト以外の問題も含んでしまうので、本記事では主にプロダクトのテストに関して検出された動作の不具合(バグ)に焦点を絞って記載します。プロダクトのテストに際して検出した不具合は、報告・対応したあとは蓄積データとして、引き続きプロジェクトで参照・活用されます。実際の開発現場によっては、早期レビューでのやりとりに関するものや、開発とテスターが口頭で連携できるような状況で報告即時対応できる程度の不具合対応など、状況により必ずしも定められたドキュメントの形式で報告されるものとは限りませんが、可能な限り検出対応した不具合は履歴を残しておくことで、プロダクトの品質向上を目指すことができます。ほとんどの場合は不具合管理に別途外部のbug tracking system(BTS)を使用しています。BTSはインシデントレポート1件をチケットという1単位で扱います。チケットの形式や内容が必ずしも同一の形式に沿っているというものではありませんが、不具合の報告管理をするチケットの内容は、管理運用の観点から記載が必要となる項目はある程度決まっています。余談ですが、BTSは不具合報告のみならず、チケット駆動開発 (TiDD) を実施するプロジェクトでは開発作業自体の管理進行目的で使用される場合もあります。
テスト(運用・保守・サポート)
【初心者用】Pythonでスクレイピングをしてみよう
前回の記事で、Pythonのプログラムを実行するための環境構築について解説しました。 今回の記事では、Pythonで出来る作業の代表格でもあるスクレイピングを実際に行い、プログラミングのイメージを可視化していければと思います。 前回の記事で構築した、Jupyter Notebookを使っていきます。
製造・コーディング(PG/バックエンド)
C言語とC++の違い
C言語とは、1972年にアメリカで開発、リリースされたコンパイル型のプログラミング言語です。コンパイルとは、プログラマーが作成したソースコードを機械が読み取れる言葉に変換することを指します。C言語は50年以上の歴史があり汎用性も高いため、現在世界中で使用されています。B言語の後継版であることから、C言語と命名されました。
製造・コーディング(PG/フロントエンド)
【完全ガイド】初心者必見!プログラミング言語の選び方と人気ランキング
初心者向けのプログラミング言語の選択は、IT業界でのキャリア形成において重要なポイントです。特に、人気のある言語や将来性のある言語を選ぶことに迷っている方にとっては、適切な選択が難しいかもしれません。本記事では、プログラミング言語の選び方や人気ランキング、初心者でも学びやすい言語について紹介し、プログラミング言語の選択に迷っている方の悩みを解決します。さあ、IT業界でのスキルアップを見据えたプログラミング言語の選び方を見ていきましょう。
初心者
エンジニアの開発工程一覧 | 各工程の仕事内容と必要スキルを解説
ソフトウェアやシステム開発における工程とは、開発プロジェクトを段階的に進めるための一連のプロセスです。開発工程を理解することは、開発プロジェクトの全体像や目的を把握するための重要な知識となります。しかし、各工程において、エンジニアはどのような仕事を行い、どのようなスキルを必要とするのでしょうか?この記事では、開発工程それぞれの仕事内容と必要なスキルについて解説します。
初心者
【初心者用】Swingについて勉強したのでまとめてみた 第二回
前回はSwingとはどういうものか、そしてボタンを押下したら小文字英字が大文字に変換される簡単な処理の作成を行いました。今回はSwingに図形を描画する方法をまとめ、次の章でこれまでの応用としてボタンを押下するとSwingに図形を描画して最終的に絵を完成させる処理を作成していきます。
初心者
【ソフトウェアテスト】ソフトウェア開発とテスト活動について②
「【ソフトウェアテスト】テストレベルについて ①」記事に記載のとおり、開発ライフサイクルモデルには形式や期間によってさまざまなモデルがあり、テストを実施するタイミングもモデルによってさまざまです。先に挙げた開発工程の例である要件定義→設計→開発→テスト→リリース/保守を一連の流れとする開発ライフサイクルも、このフローを開発期間の流れとして実施するのはあくまでウォーターフォール型モデルのようなシーケンシャルな開発ライフサイクルであり、イテレーティブ開発モデルやインクリメンタル開発モデルでは、各工程とテストが同時に進行したり、無駄をなくすことを目的としてあえて一部工程を省くこともあります。V字モデルは各工程とテストが同時進行する例です。要件定義の段階で要件定義に対するテストを実施、システム設計の時点で設計された内容に対してテストを実施といったかたちで、開発完了後にようやくテストではなく、常に工程の早期段階でテストを実施します。開発完了後のテストで不具合が検出されると工程の手戻りが発生してしまい、工数に無駄が生じますが、早期にテストを実施することにより、上流工程の段階で不具合や懸念を可能な限り取り去って開発作業の手戻りを少なくし、無駄な工数の増加を防いだり、最終的な品質の向上を目指すことができます。このようにV字モデルの左側で行う開発活動に対して早期にテストを実施して効率的な開発活動を目指す手法をシフトレフトと呼びます。イテレーティブ開発モデルやインクリメンタル開発モデルとなると、さらに各工程とテストが早期段階で実施されていきます。全体的な流れをより細かく迅速に行い、それを細かく繰り返していくサイクルが、現在のソフトウェア開発形式の主流になってきています。
テスト(運用・保守・サポート)
マニュアル作成で心がけることとは
皆さんはシステム開発現場のマニュアルや仕様書などのドキュメントに対して、どのようなイメージをお持ちでしょうか。 実際にシステム開発の現場で整備されていたマニュアルが、めちゃくちゃ役に立ったと考えているかたは、ごく少数なのではないでしょうか。 各プロジェクトで、エンジニアの入れ替わりが当たり前になった昨今では、業務マニュアルやシステムの操作マニュアルがない会社はないと言っても過言ではありません。 ・分厚くて読む気がしない ・どこに何が書いてあるのか分かりにくい ・そもそも読んでも理解できない ・プロセスやトラブルの解決策が抜けがち ・書いてある内容が古い(アップデートされていない) 上記の内容はいずれも、マニュアルが風化する原因の1つです。 裏を返せば、マニュアルを作る側が、上記のような状態にならないように気をつけるべき項目とも考えることが出来ます。 実際、多くのシステム開発の現場で、マニュアルと実際に稼働しているシステムとの情報が乖離しており、マニュアルはストレージを圧迫する邪魔な存在。だと認識されているケースが多いです。 今回の記事では、システムの操作マニュアルに関して、みなさんが実際にマニュアルを作成する場合に、分かりやすく使いやすいマニュアルを作るために心がけるべき5つのポイントについて解説していこうと思います。
製造・コーディング(PG/バックエンド)
システム開発のテスト工程で重要な事とは?
システム開発では、不具合やバグが無いかを検証するテスト工程と呼ばれる期間が存在します。 テスト工程には大きく分けて下記4つのテスト内容が存在します。 ・単体テスト・・画面や機能ごとに、動作の検証をする ・結合テスト・・他の機能やシステムと連携させて、動作の検証をする ・総合テスト・・本運用を想定して、システム全体の動作を検証する・ 受入れテスト・・納品前に仕様書の通り完成しているか確認する システム開発におけるテストの役割は、開発したシステム、記述したプログラムが不具合なく動作するか、バグなどがないかをチェックして修正する工程のことを指します。 どれだけ優秀なエンジニアが開発していようと、人の手が介在するシステム開発では、バグがないということは絶対にあり得ません。 たとえば、システム開発の現場でもっともポピュラーな開発の流れの「ウォーターフォール型」を採用している場合、「単体テスト」「結合テスト」「システムテスト(総合テスト)」「受け入れテスト(ユーザーテスト)」の、大きく4つのテスト工程が実施されます。
製造・コーディング(PG/バックエンド)
【初心者用】Javaの例外処理についてまとめてみた
Javaで記述したプログラムで発生するエラーは、大別して3つに分けられます。 コンパイル時に発生するコンパイルエラーと、プログラム実行時に発生する実行エラー、問題なく実行できるものの、期待できる結果になっていない論理エラーです。 今回は、その中の「実行エラー」に着目してみます。して、ただ「エラーが発生しました」というだけで終わらせるのではなく、発生したエラーに対して別途記述した処理を行わせるのが、例外処理となります。 今回は、その例外について、具体例を交えた解説とともに、例外処理の方法について解説していきます。
製造・コーディング(PG/バックエンド)
関連タグ
カテゴリ別人気記事
もっと見るテレワーク関連人気記事
2023年10月02日
製造・コーディング(PG/フロントエンド)2023年07月18日
アーキテクト・技術選定(PG/バックエンド)2023年11月17日
学習・スキル2023年10月26日
テスト(運用・保守・サポート)2023年01月09日
詳細設計(内部設計)(インフラ)
週間人気記事
もっと見るGit GUIツールの使い方:初心者向けチュートリアル
Gitとは、分散型バージョン管理システムの1つで、コードやファイルなどの変更履歴を記録し、複数の人で同時に開発を進めるために使われます。Linuxの開発者であるLinus Torvaldsによって開発され、現在は世界中の多くの企業やオープンソースプロジェクトで使用されています。Gitは、ファイルの変更履歴を保存するための「リポジトリ」と呼ばれるデータベースを持ち、このリポジトリに対してコミットと呼ばれる操作で変更履歴を追加していきます。また、ブランチと呼ばれる分岐を作成して、異なるバージョンのコードを管理します。Gitの主な特徴としては、以下のようなものが挙げられます。・ローカルでの高速な動作・分散型であるため、オフラインでも開発ができる・変更履歴を管理しやすく、コードの品質を高めることができる・大規模なプロジェクトでもスケーラブルに対応可能Gitは、コマンドラインツールを使って操作することもできますが、GUIツールを使って操作することもできます。
アーキテクト・技術選定(PG/バックエンド)
【これからJP1に触れる人向け】JP1とは
開発プロジェクトに携わる際にJP1というツールに触れたことはあるだろうか。JP1は開発工程、特にテスト作業においては非常に利便性の高いツールである。この記事ではまだJP1に触れたことがない人向けにJP1の概要やJP1を合う買う際に知っておくべき用語を取り上げる。
テスト(運用・保守・サポート)
DBのビューとは?メリットデメリットや使用方法についても紹介!
アプリケーション開発にとってデータベースは必須スキルとなっております。データベースの知識がないと、アプリケーション開発に難航することでしょう。しかしデータベースの知識を身に付けるとなると、かなりの勉強量を要します。というのもデータベースオブジェクトには様々な種類があり、一朝一夕では身に付くものではありません。今回は、データベースのビューについてご説明いたします。ビューそのものは必ず覚えてなくてはならないと言うものではありませんが、よく使われます。まずは本記事でビューの基礎知識を身に付けてください。本記事ではメリットデメリットや具体的な使用方法について紹介しております。
学習・スキル
GitHubのReadmeをMarkdown記法で書く
Markdown記法は、プレーンテキストに特定の書式を付けることで、簡単にWebページやドキュメントを作成するための記法です。Markdown記法は、文書の見た目を整えるためのHTMLタグを記述する必要がなく、テキストファイルとしても読み書きが容易であるため、多くの人々によって広く使用されています。
プロジェクト推進・管理(PG/バックエンド)
インデックスとは?メリットデメリットやインデックスの種類も交えてご紹介
インデックスとは、データベースを扱う際には欠かすことのできない概念となります。インデックスの取り扱いによって、データのアクセス速度が大きく変わります。特に大規模なデータを扱う場合には、取り扱いに気をつけなくてはなりません。インデックスを設定した結果、処理速度が遅くなってしまうことやそもそもインデックスを使用するような実行計画が選択されないこともあるのです。インデックスは、DBMSの種類(例えば、OracleやMySQL、Postgreなど)によっても異なります。インデックスの仕様を知らないと、開発者にとって意図しない処理をしてしまう可能性もあります。そこで今回はインデックスについてメリットデメリットや具体的にどのような種類があるのかを説明していきます。
学習・スキル
【初心者用】ifconfigの出力結果の見方
Linuxシステムでネットワーク設定や情報を確認するための基本的なコマンドの1つがifconfigです。この記事では、初心者向けにifconfigコマンドの使用方法、オプション、出力結果の解釈について詳しく説明します。また、具体的な使用シーンや例、関連するコマンドや技術についても紹介します。
その他(インフラ)
【初心者向け】Packet Tracerでネットワークを学ぶ(CLI操作の基本編①)
ルータ初期設定編ではPacket Tracerを使ってルータを直接操作し色々な設定を試してみたいと思います。 まずCisco製品のルータにはPCと同様にOSがインストールされています。 それが「Cisco IOS(Internetwork Operating System)」です。 スイッチでもこのOSを利用しています。 Cisco IOSはWindowsのようなグラフィカルなインターフェースではなくコマンド入力のみで様々な操作を行うインターフェースになります。 コマンドで操作するインターフェースのことを「CLI(Command Line Interface)」と言います。
詳細設計(内部設計)(インフラ)
【初心者向け】Packet Tracerでネットワークを学ぶ(DHCP)
DHCP(Dynamic Host Configuration Protocol)は自動的にIPアドレスやサブネットマスク等をPCやルータに配布してくれるプロトコルです。
詳細設計(内部設計)(インフラ)