【ソフトウェアテスト】ソフトウェア開発とテスト活動について②
「【ソフトウェアテスト】テストレベルについて ①」記事に記載のとおり、開発ライフサイクルモデルには形式や期間によってさまざまなモデルがあり、テストを実施するタイミングもモデルによってさまざまです。先に挙げた開発工程の例である要件定義→設計→開発→テスト→リリース/保守を一連の流れとする開発ライフサイクルも、このフローを開発期間の流れとして実施するのはあくまでウォーターフォール型モデルのようなシーケンシャルな開発ライフサイクルであり、イテレーティブ開発モデルやインクリメンタル開発モデルでは、各工程とテストが同時に進行したり、無駄をなくすことを目的としてあえて一部工程を省くこともあります。V字モデルは各工程とテストが同時進行する例です。要件定義の段階で要件定義に対するテストを実施、システム設計の時点で設計された内容に対してテストを実施といったかたちで、開発完了後にようやくテストではなく、常に工程の早期段階でテストを実施します。開発完了後のテストで不具合が検出されると工程の手戻りが発生してしまい、工数に無駄が生じますが、早期にテストを実施することにより、上流工程の段階で不具合や懸念を可能な限り取り去って開発作業の手戻りを少なくし、無駄な工数の増加を防いだり、最終的な品質の向上を目指すことができます。このようにV字モデルの左側で行う開発活動に対して早期にテストを実施して効率的な開発活動を目指す手法をシフトレフトと呼びます。イテレーティブ開発モデルやインクリメンタル開発モデルとなると、さらに各工程とテストが早期段階で実施されていきます。全体的な流れをより細かく迅速に行い、それを細かく繰り返していくサイクルが、現在のソフトウェア開発形式の主流になってきています。
テスト(運用・保守・サポート)
【JavaScript】便利なVue.jsについて学ぼう
皆さんはVue.jsについてご存じでしょうか。Vue.jsは、JavaScriptを使ったアプリケーション開発を行うエンジニアから注目を集めている技術の一つです。Vue.jsとはなにか、メリット・デメリットはなにかをこの記事作成を通して調査しながら学んでいこうと考えています。
マニュアル作成で心がけることとは
皆さんはシステム開発現場のマニュアルや仕様書などのドキュメントに対して、どのようなイメージをお持ちでしょうか。 実際にシステム開発の現場で整備されていたマニュアルが、めちゃくちゃ役に立ったと考えているかたは、ごく少数なのではないでしょうか。 各プロジェクトで、エンジニアの入れ替わりが当たり前になった昨今では、業務マニュアルやシステムの操作マニュアルがない会社はないと言っても過言ではありません。 ・分厚くて読む気がしない ・どこに何が書いてあるのか分かりにくい ・そもそも読んでも理解できない ・プロセスやトラブルの解決策が抜けがち ・書いてある内容が古い(アップデートされていない) 上記の内容はいずれも、マニュアルが風化する原因の1つです。 裏を返せば、マニュアルを作る側が、上記のような状態にならないように気をつけるべき項目とも考えることが出来ます。 実際、多くのシステム開発の現場で、マニュアルと実際に稼働しているシステムとの情報が乖離しており、マニュアルはストレージを圧迫する邪魔な存在。だと認識されているケースが多いです。 今回の記事では、システムの操作マニュアルに関して、みなさんが実際にマニュアルを作成する場合に、分かりやすく使いやすいマニュアルを作るために心がけるべき5つのポイントについて解説していこうと思います。
製造・コーディング(PG/バックエンド)
仕事の流れを可視化する業務フローの作り方
システム開発の現場に参画して一番最初に学ぶ内容が、今回紹介する業務フローです。 前回紹介したマニュアルと近しいドキュメントにはなってしまいますが、マニュアルと業務フローは全く別の観点から作り上げるドキュメントです。 マニュアルは、システムの操作方法などを記したドキュメントなのに対して、業務フローは【仕事の内容や手順を図で表したもの】です。 業務を視覚化することで、見落としを行うリスクが軽減し、文章で手順を読むよりもわかりやすく、全体像を掴みやすくするというメリットがあります。 各現場によっては非常に読みづらい業務フローが整備されていますが、適切に書かれたフローであれば業務の流れを直観的に理解しやすく、業務マニュアルや新人研修としても活用できるため、非常に効果的です。 担当者が業務を改善したり、他部署の業務について相互理解を深めたりするツールとしても有効です。 小規模・中規模のシステムにも活用できますが、大規模なシステムにおいては、全体の機能を業務フローで表すことができるので、保守性の向上にもつなげることができます。 障害が発生して調査をおこなう場合などでも、ソースコードのみを調べると時間がかかりますが、業務フローがあれば、機能ごとのきりわけができるので問題を早く特定しやすくなります。 もちろん、システムの機能拡張や業務内容の変更の際も、業務フローがあれば検討資料としても活用されるシーンが多いです。 業務フロー作成の目的をまとめると、 ・業務の視覚化、標準化 ・業務の問題の発見 ・担当者および他部署間の業務の把握、相互理解 ・業務の保守性、拡張性の向上
製造・コーディング(PG/バックエンド)
テストエンジニアについて
IT業界で働く際には、できる限り自分に合った職種で働くことが大切です。そこには多種多様な職種があり、その仕事内容や求められるスキルも様々です。なので、実際に仕事を探す際には、個々の職種の違いが何であるかをしっかりと理解しておくことが必要になります。そこで本記事では、「テストエンジニア」という他のエンジニア職とは少し毛色の変わった職種を紹介したいと思います。
iOSエンジニアとは?仕事内容・必要なスキル・おすすめな資格をご紹介
現在、多くの方がスマートフォンで日常生活の連絡や情報収集、ゲームを楽しんでいます。そして、そこからスマートフォンアプリを作れるエンジニアの需要は高まっています。とくに、日本で利用者が多いiPhoneのアプリケーションを作ることができるiOSエンジニアは需要が非常に高いです。しかし、iOSエンジニアの具体的な仕事内容や活躍するために必要なスキルはなかなか分からないですよね。そこで、ここではiOSエンジニアの仕事内容と必要なスキルにくわえ、おすすめな資格についてもご紹介します。これからエンジニアとして活躍を目指そうとお考えの方は、ぜひご確認ください。
時間と場所に縛られない!リモート勤務に必要なエンジニアのスキルを公開!
コロナ禍でシステム業界以外でもリモート勤務が導入され、新しい働き方のかたちが定着しつつある昨今ですね。しかし客先常駐が基本のSES企業では、セキュリティや仕事の生産性の低下が理由でリモート勤務ができない案件もあります。一方で、大手のSIer企業では、オフィスを解約してフルリモートを導入している企業もあり、一軒家を購入して地方移住したり、自然豊かな場所に移り住んで趣味の時間を楽しむ人がいるのも事実です。SESの働き方に不安を覚えて転職を考えられている方も多いでしょう。本記事ではそのような方に向けて、システム業界で2年以上のリモート勤務を経験する筆者が、リモート勤務のメリット・デメリット、リモート勤務に必要なスキルをご紹介します。
自宅のwindowsでRuby on Rails(導入編)
私はこれまで、C言語、Perl、Javaを習得してきました。これらの言語は、それぞれ特定の分野で活躍している優れた言語ですが、私は今、新たにRuby on Railsを習得しようとしています。その理由について、以下に述べたいと思います。
開発計画(インフラ)
【Git】基礎まとめ | 初心者向け
今回はバージョン管理システムのGitについてまとめました。Gitを使用すると、より効率的にシステムを開発することができます。ぜひ最後までお読みください!
【初心者目線】Webアプリケーションの開発 第12回
【初心者目線】Webアプリケーションの開発 第12回を書きます。
【Java】Lombokという便利なライブラリについて学ぼう
皆さんはJavaのライブラリであるLombokについてご存じでしょうか。私は開発業務で使用した経験がありますが、恥ずかしながらどういったライブラリなのか、あまり知らずに使用していました。Lombokとはなにか、メリット・デメリットはなにかをこの記事作成を通して調査し、まとめました。
【CSS】基本のまとめ | プロパティ編
今回は、Webページの見た目を設定するCSSのセレクターについてまとめました。CSSは、Web開発をするにあたって欠かせない知識となっています。ぜひ最後までお読みください!
製造・コーディング(PG/フロントエンド)
関連タグ
カテゴリ別人気記事
もっと見るテレワーク関連人気記事
2023年10月02日
製造・コーディング(PG/フロントエンド)2023年07月18日
アーキテクト・技術選定(PG/バックエンド)2023年10月26日
テスト(運用・保守・サポート)2023年11月17日
2023年01月09日
詳細設計(内部設計)(インフラ)
週間人気記事
もっと見る【これからJP1に触れる人向け】JP1とは
開発プロジェクトに携わる際にJP1というツールに触れたことはあるだろうか。JP1は開発工程、特にテスト作業においては非常に利便性の高いツールである。この記事ではまだJP1に触れたことがない人向けにJP1の概要やJP1を合う買う際に知っておくべき用語を取り上げる。
テスト(運用・保守・サポート)
インデックスとは?メリットデメリットやインデックスの種類も交えてご紹介
インデックスとは、データベースを扱う際には欠かすことのできない概念となります。インデックスの取り扱いによって、データのアクセス速度が大きく変わります。特に大規模なデータを扱う場合には、取り扱いに気をつけなくてはなりません。インデックスを設定した結果、処理速度が遅くなってしまうことやそもそもインデックスを使用するような実行計画が選択されないこともあるのです。インデックスは、DBMSの種類(例えば、OracleやMySQL、Postgreなど)によっても異なります。インデックスの仕様を知らないと、開発者にとって意図しない処理をしてしまう可能性もあります。そこで今回はインデックスについてメリットデメリットや具体的にどのような種類があるのかを説明していきます。
【初心者向け】Packet Tracerでネットワークを学ぶ(CLI操作の基本編①)
ルータ初期設定編ではPacket Tracerを使ってルータを直接操作し色々な設定を試してみたいと思います。 まずCisco製品のルータにはPCと同様にOSがインストールされています。 それが「Cisco IOS(Internetwork Operating System)」です。 スイッチでもこのOSを利用しています。 Cisco IOSはWindowsのようなグラフィカルなインターフェースではなくコマンド入力のみで様々な操作を行うインターフェースになります。 コマンドで操作するインターフェースのことを「CLI(Command Line Interface)」と言います。
詳細設計(内部設計)(インフラ)
【初心者向け】Packet Tracerでネットワークを学ぶ(インストール編)
ネットワークエンジニアとしてCisco社のルータやスイッチの運用業務を遂行するには、 コマンドの知識やどのように機器が通信させているかよく理解しておく必要があります。 またCCNAといったネットワークのベンダー資格でも実際にコマンドを記述するシミュレーション問題が出題されることもあるので、自身のネットワークスキル向上には日頃からコマンド操作に慣れておく必要があります。 知識を定着や操作の慣れには座学だけでなく実際に機器に触れコマンドを入力し結果を確認することが一番なのですが、ルータやスイッチ等のネットワーク機器はいずれも高額であり、中古でもそれなりの値段となるので初心者が自宅に環境を作成することは簡単ではありません。 そこでCisco社のルータやスイッチに簡単に機器の設定、環境の構築、コマンドの投入練習といったことができるアプリケーションが「Packet Tracer」となります。
詳細設計(内部設計)(インフラ)
【初心者向け】Packet Tracerでネットワークを学ぶ(DHCP)
DHCP(Dynamic Host Configuration Protocol)は自動的にIPアドレスやサブネットマスク等をPCやルータに配布してくれるプロトコルです。
詳細設計(内部設計)(インフラ)
GitHubのReadmeをMarkdown記法で書く
Markdown記法は、プレーンテキストに特定の書式を付けることで、簡単にWebページやドキュメントを作成するための記法です。Markdown記法は、文書の見た目を整えるためのHTMLタグを記述する必要がなく、テキストファイルとしても読み書きが容易であるため、多くの人々によって広く使用されています。
プロジェクト推進・管理(PG/バックエンド)
#10営業インタビュー【エンジニアの価値を高める仕事とは?】
― 単価10万円アップを実現したリアルな話 ―こんにちは!採用担当です😊今回は、当社で活躍する営業メンバーにインタビュー🎤 エンジニアと企業をつなぐ“営業のリアル”について、ちょっと深掘りしてみました!
