クリティカルパスの解説(ITパスポートシラバス用語)
クリティカルパスとは クリティカルパスとは、プロジェクト管理において、全体のスケジュールを完了させるために「絶対に遅らせることができない、最も時間のかかる一連の作業経路(パス)」のことです。この経路上の作業が1日でも遅れると、プロジェクト全体の完了予定日もそのまま遅れてしまいます。 カレーライス作りを例に説明します。「ご飯を炊く(50分)」と「カレーの具材を切って煮込む(30分)」という2つの作業...
Django、Python、AWS、Linux、セキュリティ、CVE、基本情報技術者、応用情報技術者、ITパスポートの用語を、図解と実務手順で解説します。個人開発kurutann.comの検証記録や障害対応事例も公開しています。
クリティカルパスとは クリティカルパスとは、プロジェクト管理において、全体のスケジュールを完了させるために「絶対に遅らせることができない、最も時間のかかる一連の作業経路(パス)」のことです。この経路上の作業が1日でも遅れると、プロジェクト全体の完了予定日もそのまま遅れてしまいます。 カレーライス作りを例に説明します。「ご飯を炊く(50分)」と「カレーの具材を切って煮込む(30分)」という2つの作業...
計算量とは 計算量(けいさんりょう)とは、コンピュータがあるプログラムを実行する際に、どれだけの「時間」や「メモリの量」を必要とするかを表す指標です。プログラムの性能や効率の良さを測るために使われます。データ数が多くなったときに、処理にどれくらい時間がかかるかを示すものを「時間計算量」、どれくらいメモリを消費するかを示すものを「領域計算量」と呼びます。計算量は一般的に「O記法(オー記法)」を用いて...
ステークホルダーとは ステークホルダー(すてーくほるだー)とは、企業の活動や特定のプロジェクトを進めるにあたって、直接的または間接的に影響を受けたり与えたりする「すべての利害関係者」を指す言葉です。プロジェクトを成功させるためには、誰がステークホルダーであるかを正しく把握し、彼らの意見や要望に配慮することが欠かせません。 英語の「stake(利益、賭け金)」と「holder(持っている人)」が語源...
貪欲法とは 貪欲法(どんよくほう)とは、問題を解決するアルゴリズムの設計手法の一つです。「グリーディ法」とも呼ばれます。この手法の特徴は、問題を解決していく各段階において、将来の影響を一切考えず、その時点で最も有利に見える選択(局所的な最適解)を繰り返し選んでいくことです。全体にとっての最終的な正解(全体最適解)が必ず得られるとは限りませんが、処理が非常にシンプルであり、計算速度が極めて速いという...
ITILとは ITIL(アイティル:Information Technology Infrastructure Library)とは、ITサービスを効率的かつ高品質に管理・提供するための仕組み(ITサービスマネジメント)について、世界中の企業の成功事例(ベストプラクティス)を体系的にまとめた書籍群、あるいはガイドブックのことです。 レストランの経営に例えると、美味しい料理を提供するだけでなく、「接...
動的計画法とは 動的計画法(どうてきけいかくほう)とは、複雑な問題を解くためのアルゴリズム設計手法の一つです。英語では「Dynamic Programming(DP)」と呼ばれます。この手法では、大きな問題をいくつかの小さな問題に分割し、それぞれの小さな問題の答えを一度だけ計算して、その結果をメモリなどに記録しておきます。そして、より大きな問題を解く際に、すでに記録してある計算結果を再利用すること...
SLAとは SLA(Service Level Agreement:サービスレベル合意書)とは、ITサービスを提供する事業者(プロバイダ)と、それを利用する顧客との間で、提供されるサービスの品質や保証範囲についてあらかじめ合意した契約や基準を定めた文書のことです。 日常の買い物に例えると、宅配便の契約で「荷物は必ず翌日の午前中にお届けします。もし遅れた場合は配送料金を全額返金します」という約束を取...
幅優先探索とは 幅優先探索(はばゆうせんたんさく)とは、グラフや木構造といったデータ構造のすべての要素を調べる(探索する)ための代表的なアルゴリズムの一つです。英語の「Breadth-First Search」の頭文字をとって「BFS」とも呼ばれます。この探索法の特徴は、出発地点に近い階層から順番に、横方向(同じ深さの要素)をすべて調べ尽くしてから、次の深い階層へと進んでいくことです。スタート地点...
インシデント管理とは インシデント管理(いんしでんとかんり)とは、ITサービスにおいて、ユーザーがシステムを通常通りに使えなくなるようなトラブル(インシデント)が発生した際、その根本的な原因の調査よりも、まずは「サービスを可能な限り迅速に正常な状態に復旧させること」を最優先に行う管理プロセスのことです。 オフィスで使っているプリンターが紙詰まりを起こしたときの対応に例えられます。このとき、インシデ...
深さ優先探索とは 深さ優先探索(ふかさゆうせんたんさく)とは、グラフや木構造などのデータ構造を探索するための代表的なアルゴリズムの一つです。英語の「Depth-First Search」の頭文字をとって「DFS」とも呼ばれます。この探索法の特徴は、ある経路を選んだら、突き当たり(葉ノード)に達するまでひたすら深く進み、行き止まりになったら一歩戻って(バックトラック)別のルートを探索する、という手順...
ヘルプデスクとは ヘルプデスク(へるぷですく)とは、企業の社員やシステムの利用者(顧客)からの、IT機器やソフトウェアの使い方、技術的なトラブル、要望などの問い合わせを総合的に受け付ける「専門の相談窓口」のことです。 デパートの入り口にある「総合案内所」のような存在です。何か困ったことやわからないことがあれば、まずヘルプデスクに相談すれば、簡単な疑問はその場で解決してもらい、より高度で専門的なトラ...
疑似言語とは 疑似言語(ぎじげんご)とは、プログラムの処理手順(アルゴリズム)を人間にとって分かりやすく表現するために作られた、架空のプログラミング言語のことです。実際のコンピュータ上でそのまま実行することはできませんが、特定のプログラミング言語(JavaやPython、C言語など)の細かな書き方のルールにとらわれず、アルゴリズムの論理的な構造や流れだけを整理して伝えるために用いられます。日本のI...
UPSとは UPS(Uninterruptible Power Supply:無停電電源装置)とは、雷や地震などの原因で突発的な停電や電圧の低下が発生した際に、内蔵された大容量バッテリーからコンピュータに一時的に電力を供給し続けるための装置です。 スマートフォンを充電しながら使う「モバイルバッテリー」の巨大版のようなイメージです。デスクトップパソコンやサーバーは、使用中にコンセントが抜けるなどして...
変数とは 変数(へんすう)とは、プログラムの中でデータ(数値や文字など)を一時的に記憶しておくために用意する、名前のついた「箱」のようなものです。プログラムは、この箱に値を入れたり(代入)、入っている値を取り出したり(参照)、あるいは値を書き換えたりしながら様々な計算や処理を行います。変数を使うことで、同じ値を何度も使い回すことができ、プログラムの記述をすっきりと整理できます。また、値の中身が途中...
システム監査とは システム監査(しすてむかんさ)とは、企業のITシステムやその運用体制が、安全性、信頼性、効率性などの観点から見て適切にコントロールされているかどうかを、独立した客観的な第三者(システム監査人)が評価・検証し、改善すべき点について企業に助言や勧告を行う活動のことです。 学校で行われる「健康診断」や、消防署による「ビルの防火避難訓練の点検」に似ています。システムを自分たちで作って動か...
大域変数とは 大域変数(たいいきへんすう)とは、プログラムのどこからでも読み書きができる変数のことです。「グローバル変数」とも呼ばれます。これに対して、特定の関数や処理ブロックの内部だけでしか使えない変数を「局所変数(ローカル変数)」と呼びます。大域変数はプログラム全体の共通データ(アプリの設定やログイン中のユーザー情報など)を管理するのに便利ですが、どこからでも書き換えられてしまうため、意図しな...
内部統制とは 内部統制(ないぶとうせい)とは、企業が健全かつ効率的に事業を運営し、社会的な信頼を保ち続けるために、組織のすべてのメンバー(経営者から一般社員まで)が守るべきルールや仕組みを会社自らが構築し、正しく運用していく活動のことです。 学校の「校則」や、不正を防ぐための「ダブルチェックの仕組み」の会社版です。誰も見ていないと、ついサボってしまったり、お金の計算を間違えたり、最悪の場合は会社の...
引数とは 引数(ひきすう)とは、プログラムの中で関数(特定の処理をまとめた命令セット)を呼び出す際に、呼び出し元から関数へと渡すデータ(値や変数)のことです。関数に処理を依頼する際、「このデータを使って処理してください」と指示するための情報と言えます。関数を定義するときに受け取り側として用意する変数を「仮引数(かりひきすう)」、実引数(じつひきすう)と呼びます。引数を使うことで、一つの関数を様々な...
2進数とは 2進数(にしんすう)とは、数値を表すときに「0」と「1」の2つの数字だけを使い、2に達するごとに桁(けた)を上げていく記数法のことです。英語では「バイナリ(binary)」と呼ばれます。 人間が普段使っているのは、0から9までの10個の数字を使い、10で桁が上がる「10進数」です。しかし、コンピュータの心臓部である電子回路は、電気の「流れていない状態(OFF=0)」と「流れている状態(...
関数とは 関数(かんすう)とは、特定の目的を持った一連の処理(計算や操作など)をひとまとめにして、名前をつけたプログラムの部品のことです。別の言葉で「手続」や「プロシージャ」とも呼ばれます。同じような処理を何度も行う場合、毎回同じコードを書く代わりに、その処理を関数として定義しておくことで、必要なときにいつでも名前を呼び出すだけで実行できるようになります。関数には、外部からデータを受け取る「引数(...
論理演算とは 論理演算(ろんりえんざん)とは、「真(True、1)」と「偽(False、0)」の2つの値だけを使って行う、コンピュータの基本的な計算(判断)方法です。コンピュータの頭脳であるCPUは、すべての複雑な計算を、この論理演算の組み合わせによって超高速で行っています。代表的な演算には「AND(論理積)」「OR(論理和)」「NOT(否定)」の3つがあります。 日常の会話で言う「もし〜かつ〜な...
オブジェクト指向とは オブジェクト指向(オブジェクトしこう)とは、ソフトウェア開発における設計思想(考え方)の一つです。プログラムを単なる命令の並びとして捉えるのではなく、データとそれを操作する処理をひとまとめにした「オブジェクト(モノ)」として定義し、そのオブジェクト同士が互いにメッセージをやり取りしながら全体を動かしていくというアプローチです。現実世界に存在する「車」や「人間」「注文」といった...
確率とは 確率(かくりつ)とは、ある出来事(イベント)が偶然に起こる確からしさ(起こりやすさ)の度合いを、0から1(または0%から100%)の間の数値で表したものです。0%は「絶対に起こらないこと」、100%は「絶対に起こること」を意味します。 日常でも天気予報の「降水確率」や、スマホゲームの「ガチャの排出率」などで非常によく使われています。ITの分野においても、データ分析、AI(機械学習)の予測...
クラスとは クラスとは、オブジェクト指向プログラミングにおいて、オブジェクト(モノ)を作り出すための「設計図」や「型」にあたるものです。この設計図に基づいて実際にメモリ上に作成された具体的なモノを「インスタンス」または「オブジェクト」と呼びます。クラスには、そのモノが持つべき情報である「属性(データ・変数)」と、そのモノができる操作である「メソッド(処理・関数)」を定義しておきます。設計図であるク...