-- Table structure for table `section_1`
--

CREATE TABLE `section_1` (
  `id` int NOT NULL AUTO_INCREMENT,
  `advice` text,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;

--
-- Dumping data for table `section_1`
--


--
-- Table structure for table `section_10`
--

CREATE TABLE `section_10` (
  `id` int NOT NULL AUTO_INCREMENT,
  `advice` text,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;

--
-- Dumping data for table `section_10`
--


--
-- Table structure for table `section_11`
--

CREATE TABLE `section_11` (
  `id` int NOT NULL AUTO_INCREMENT,
  `advice` text,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;

--
-- Dumping data for table `section_11`
--


--
-- Table structure for table `section_12`
--

CREATE TABLE `section_12` (
  `id` int NOT NULL AUTO_INCREMENT,
  `advice` text,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;

--
-- Dumping data for table `section_12`
--


--
-- Table structure for table `section_13`
--

CREATE TABLE `section_13` (
  `id` int NOT NULL AUTO_INCREMENT,
  `advice` text,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;

--
-- Dumping data for table `section_13`
--


--
-- Table structure for table `section_14`
--

CREATE TABLE `section_14` (
  `id` int NOT NULL AUTO_INCREMENT,
  `advice` text,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;

--
-- Dumping data for table `section_14`
--


--
-- Table structure for table `section_15`
--

CREATE TABLE `section_15` (
  `id` int NOT NULL AUTO_INCREMENT,
  `advice` text,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;

--
-- Dumping data for table `section_15`
--


--
-- Table structure for table `section_16`
--

CREATE TABLE `section_16` (
  `id` int NOT NULL AUTO_INCREMENT,
  `advice` text,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;

--
-- Dumping data for table `section_16`
--


--
-- Table structure for table `section_17`
--

CREATE TABLE `section_17` (
  `id` int NOT NULL AUTO_INCREMENT,
  `advice` text,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;

--
-- Dumping data for table `section_17`
--


--
-- Table structure for table `section_18`
--

CREATE TABLE `section_18` (
  `id` int NOT NULL AUTO_INCREMENT,
  `advice` text,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;

--
-- Dumping data for table `section_18`
--


--
-- Table structure for table `section_19`
--

CREATE TABLE `section_19` (
  `id` int NOT NULL AUTO_INCREMENT,
  `advice` text,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;

--
-- Dumping data for table `section_19`
--


--
-- Table structure for table `section_2`
--

CREATE TABLE `section_2` (
  `id` int NOT NULL AUTO_INCREMENT,
  `advice` text,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;

--
-- Dumping data for table `section_2`
--


--
-- Table structure for table `section_20`
--

CREATE TABLE `section_20` (
  `id` int NOT NULL AUTO_INCREMENT,
  `advice` text,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;

--
-- Dumping data for table `section_20`
--


--
-- Table structure for table `section_21`
--

CREATE TABLE `section_21` (
  `id` int NOT NULL AUTO_INCREMENT,
  `advice` text,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;

--
-- Dumping data for table `section_21`
--


--
-- Table structure for table `section_22`
--

CREATE TABLE `section_22` (
  `id` int NOT NULL AUTO_INCREMENT,
  `advice` text,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;

--
-- Dumping data for table `section_22`
--


--
-- Table structure for table `section_3`
--

CREATE TABLE `section_3` (
  `id` int NOT NULL AUTO_INCREMENT,
  `advice` text,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;

--
-- Dumping data for table `section_3`
--


--
-- Table structure for table `section_4`
--

CREATE TABLE `section_4` (
  `id` int NOT NULL AUTO_INCREMENT,
  `advice` text,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;

--
-- Dumping data for table `section_4`
--


--
-- Table structure for table `section_5`
--

CREATE TABLE `section_5` (
  `id` int NOT NULL AUTO_INCREMENT,
  `advice` text,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;

--
-- Dumping data for table `section_5`
--


--
-- Table structure for table `section_6`
--

CREATE TABLE `section_6` (
  `id` int NOT NULL AUTO_INCREMENT,
  `advice` text,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;

--
-- Dumping data for table `section_6`
--


--
-- Table structure for table `section_7`
--

CREATE TABLE `section_7` (
  `id` int NOT NULL AUTO_INCREMENT,
  `advice` text,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;

--
-- Dumping data for table `section_7`
--


--
-- Table structure for table `section_8`
--

CREATE TABLE `section_8` (
  `id` int NOT NULL AUTO_INCREMENT,
  `advice` text,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;

--
-- Dumping data for table `section_8`
--


--
-- Table structure for table `section_9`
--

CREATE TABLE `section_9` (
  `id` int NOT NULL AUTO_INCREMENT,
  `advice` text,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;

--
-- Dumping data for table `section_9`
--



CREATE DATABASE  IF NOT EXISTS `B_DB` /*!40100 DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci */ /*!80016 DEFAULT ENCRYPTION='N' */;
USE `B_DB`;
--
-- Host: 127.0.0.1    Database: B_DB
-- ------------------------------------------------------



CREATE DATABASE  IF NOT EXISTS `Theory_DB` /*!40100 DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci */ /*!80016 DEFAULT ENCRYPTION='N' */;
USE `Theory_DB`;
--
-- Host: 127.0.0.1    Database: Theory_DB
-- ------------------------------------------------------


--
-- Table structure for table `section_1`
--

CREATE TABLE `section_1` (
  `id` int NOT NULL AUTO_INCREMENT,
  `chapter` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci,
  `main_title` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci,
  `sub_title` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci,
  `theory_description` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci,
  `tip` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci,
  `img` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci,
  `img_description` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=41 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

--
-- Dumping data for table `section_1`
--

INSERT INTO `section_1` VALUES (6,'01','データの単位','本章を読み進める前に知っておいてほしいこと','本章は、この本の最初の章（第１章）であるにも関わらず、計算問題が多いため、数学が苦手な人にとっては少し難易度が高い内容になっています。しかし、本書全体がこのような小難しい内容というわけではないので安心してください。\n\nこれから本章を読み進めていく中で、もし「第１章からこんなに難しいのなら、私はもう、ついていけないかもしれない」と感じたら、迷わず第１章と第２章をスキップして、第３章から読みはじめてください。\n\n本章の内容は確かに大切ではありますが、基本情報技術者試験の全体からすれば、わずか１〜３問にすぎません（科目Ａは全部で60問あります）。計算問題が苦手だからという理由だけで、基本情報技術者試験を断念するのは非常にもったいないです。ですので「この本の１章と２章の内容は計算問題が多い」ということを念頭に、難しいと感じたら「いったん読み飛ばす」「後で読み返す」の精神で読み進めてください。',NULL,'/home/air/goalskill_t/back/img/section1/3.png','「10進数」や「2進数」など何やら難しそうな言葉が並んでいますが、まだ何も解説していないので、現時点では解けなくても問題ありません。これから、上記の問題を難なくスラスラと解くために必要なノウハウを、１つずつ丁寧に解説していきます。'),(7,'01','データの単位','本章を読み進める前に知っておいてほしいこと','本章は、この本の最初の章（第1章）であるにも関わらず、計算問題が多いため、数学が苦手な人にとっては少し難易度が高い内容になっています。しかし、本書全体がこのような小難しい内容というわけではないので安心してください。 これから本章を読み進めていく中で、もし「第1章からこんなに難しいのなら、私はもう、ついていけないかもしれない」と感じたら、迷わず第1章と第2章をスキップして、第3章から読みはじめてください。 本章の内容は確かに大切ではありますが、基本情報技術者試験の全体からすれば、わずか1〜3問にすぎません（科目Aは全部で60問あります）。計算問題が苦手だからという理由だけで、基本情報技術者試験を断念するのは非常にもったいないです。ですので「この本の1章と2章の内容は計算問題が多い」ということを念頭に、難しいと感じたら「いったん読み飛ばす」「後で読み返す」の精神で読み進めてください。','● 効果的な学習方法 学習のポイント 今後、本書を読み進めていく中で「この章の内容、苦手だなぁ」と感じた場合は、「後で読み返せばいいや」くらいの気持ちで、別の章へ進んでください。苦手な章に多くの時間を使うよりもまずは全体を確認することのほうが大切です。なお、本書の冒頭に、基本情報技術者試験の「効果的な学習方法」(p.9) を紹介しているので、試験勉強を開始する際は改めて確認しておくことをお勧めします。',NULL,NULL),(8,'01','データの単位','本章の「ゴール」を把握しておこう','本章では新しい用語がたくさん出てきます。これらの用語をただやみくもに暗記していくことは得策ではありません。あらかじめ学習する意味や目的を把握しておいたほうが、効率よく学習を進めることができます。 そこで、最初に「本章のゴール」をお伝えします。本章のゴールは、次の過去問題を解けるようになることです。',NULL,'/home/air/goalskill_t/back/img/section1/4.png','「10進数」や「2進数」など何やら難しそうな言葉が並んでいますが、まだ何も解説していないので、現時点では解けなくても問題ありません。これから、上記の問題を難なくスラスラと解くために必要なノウハウを、1つずつ丁寧に解説していきます。'),(9,'01','データの単位','ビットとバイト','それでは、基礎理論の解説をはじめていきます。まずは、ビットやバイトといった「データの単位」を解説します。これらの用語が基本情報技術者試験に直接出題されることはありませんが、テクノロジ系分野全体の前提知識として、さまざまなところに登場するので、しっかり理解しておくことが大切です。',NULL,'/home/air/goalskill_t/back/img/section1/6.png','基本情報技術者試験では「10010011」のように「0」と「1」の並びで表された数値のことを「ビット列」、もしくは「ビットパターン」と呼びます'),(10,'01','データの単位','さまざまなデータの単位','コンピュータの世界では、非常に大きな値や、非常に小さな値を扱うことがあるため、それぞれのデータを簡潔に表すために次の単位が用意されています。','もう少し詳しく！ 今後は計算問題が増えるかもしれない 基本情報技術者試験の主催団体である独立行政法人 情報処理推進機構 (IPA) が「今後、数学に関する問題の出題比率を高くする」と公式に発表しています。そのため、今後は本章で解説している内容からの出題数が増える可能性があります。','/home/air/goalskill_t/back/img/section1/7.png','例えば、携帯電話のデータ通信量の表記でおなじみの「1ギガバイト (1GB)」は、バイトに直すと「10億バイト」になり、ビットに直すと「80億ビット」になります。'),(12,'02','数値の数え方','10進数と2進数と16進数','10進数とは、値が10になるときに桁が1つ上がる表記法です。10進数は、私たちが日常で使っている表記法なので、簡単に理解できると思います。',NULL,'/home/air/goalskill_t/back/img/section1/8.png','実は、世の中には10進数以外の表記法があります。コンピュータの世界でよく利用されているのが2進数です。'),(13,'02','数値の数え方','2進数','2進数とは、値が2になるときに桁が上がる表記法です。0、1までは10進数の場合と同じですが、2進数では「2」のときに桁上がりするので、10進数の「2」は、2進数では「10」となります。その後、11、100、101と増加します。',NULL,'/home/air/goalskill_t/back/img/section1/9.png',NULL),(14,'02','数値の数え方','16進数','10進数と2進数の他に、コンピュータではよく16進数（じゅうろくしんすう）という表記法が使われます。16進数は基本情報技術者試験でも必修の表記法です。 16進数とは、値が16になるときに桁が上がる表記法です。なお、私たちが普段使っているアラビア数字には0～9までの10種類しか数字記号が存在しません。そのため、16進数では、10～15までの値を、A～Fまでのアルファベットを使って表します。例えば、10進数の「10」は、16進数では「A」となります。また、10進数の「15」は、16進数では「F」となります。','数字の読み方 10進数の「10」は「じゅう」と読みますが、2進数の「10」は「いちぜろ」と読みます。ただし表記はまったく同じなので、何進数表記なのかを記載する必要があります。2進数の値は (10)₂ のように表記します。同様に10進数の値は (10)₁₀ と表記します。','/home/air/goalskill_t/back/img/section1/10.png','10進数、2進数、16進数の数値の対応関係。16進数では「F」の次に桁が上がり「10」になる様子が示されています。'),(15,'02','数値の数え方','小数','本章の冒頭で紹介した過去問題では、すべての選択肢が小数（しょうすう）でした（p.17）。このことから、2進数の計算問題を確実に解くためには、小数の基本を理解しておく必要があることがわかります。',NULL,NULL,NULL),(16,'02','数値の数え方','整数部と小数部','小数は、小数点を境にして2つの部分に分かれます。小数点より左にある数を「整数部」といい、小数点より右にある数を「小数部」といいます。',NULL,'/home/air/goalskill_t/back/img/section1/11.png','数値「38.45」を例に、小数点を境界として整数部と小数部に分かれる構造を示した図。'),(17,'02','数値の数え方','小数の種類','一口に「小数」といっても、有限小数（ゆうげんしょうすう）、無限小数（むげんしょうすう）、循環小数（じゅんかんしょうすう）など、いろいろな種類があります。基本情報技術者試験ではこれらの違いを理解している前提で問題が出題されるので、きちんと覚えておいてください。有限小数とは、小数部の桁数に限りがある小数です。例えば「0.5」や「1.1」などです。一方で、無限小数とは、小数部の桁数に限りがない小数です。例えば、円周率（3.1415...）は無限小数の代表例です。また、無限小数の中でも、ある桁から同じ数字の列が無限に繰り返される小数のことを循環小数といいます。例えば $1 \\div 7$ を計算すると、「0.142857142857142857...」のように、小数第1位から「142857」が無限に繰り返されます。なお、私たちが普段使う10進数に小数があるように、2進数や16進数にも小数があります。基本情報技術者試験では小数部を含むこれらの数のことを2進小数（にしんしょうすう）や16進小数（じゅうろくしんしょうすう）と呼びます。','基本情報技術者試験では、有限小数か無限小数かを区別する問題が出題される（p.32 の章末問題を参照）',NULL,NULL),(18,'03','基数変換と桁の重み','基数','基数（きすう）とは、桁上がりの基準となる数です。10進数は10になるときに桁が上がるので、10進数の基数は「10」です。同様に、2進数の基数は「2」、16進数の基数は「16」です。 なお、どの表記法であっても、表記が異なるだけで本質的に表している値は同じです。そのため、右の表のように相互に変換できます。',NULL,'/home/air/goalskill_t/back/img/section1/13.png','2進数と10進数の間で相互に変換することを基数変換と呼ぶことを示した図と、2進数・10進数・16進数の数値の対応表です。'),(19,'03','基数変換と桁の重み','桁の重み','基数変換を行うには「桁の重み」を理解しておく必要があります。 桁の重みとは、位（くらい）のことです。10進数では小数点の左から順に、一の位、十の位、百の位と呼びます。10進数の「7297」は左端の桁と右端の桁の数字がともに「7」です。同じ数字でありながら、左端の「7」は右端の「7」よりも1000倍大きいです。これは、桁ごとに重みが異なるためです。数の大きさは「桁ごとの重みをかけたうえで、それらを合計する」ことで表現されます。\n\n桁の重みは、数が大きくなればなるほど桁数が多くなるため、読みづらくなります。例えば「億の位」の桁の重みは「100000000」です。桁数が多くて読みづらいことがわかります。この問題を解決するために「指数」が存在します。',NULL,'/home/air/goalskill_t/back/img/section1/14.png','10進数の桁（千、百、十、一、十分の一、百分の一）とそれに対応する重み（1000, 100, 10, 1, $\\frac{1}{10}$, $\\frac{1}{100}$）を示した表です。'),(20,'03','基数変換と桁の重み','指数','指数（しすう）とは、数をかけ合わせる回数を表す数です。指数はかけ合わせる対象となる数字の右肩に付けます。例えば、「1000」は「10×10×10」（10を3回かけた数）なので「$10^{3}$」と表記します。','もう少し詳しく！ 指数に関する2つのルール 指数が「0」の場合、基数の値にかかわらず計算結果はすべて「1」になります。例えば、10⁰、2⁰や16⁰はすべて「1」です。また、指数が負（マイナス）の場合は、右図のように定義されます。例えば、「2⁻³」は 1/2³ になります。','/home/air/goalskill_t/back/img/section1/15.png','同様に「10000」は「$10^{4}$」、「100000」は「$10^{5}$」と表記できます。このように、指数を使うと、大きい桁も簡潔に表現できます。'),(21,'03','基数変換と桁の重み','2進数の桁の重みと10進数への変換','「桁の重み」と「指数」がわかったところで、2進数の桁の重みを見てみましょう。2進数の桁の重みは、2進数の基数である「2の累乗」（2を繰り返しかけ合わせた数）です。10進数とは桁の重みが異なるので注意してください。',NULL,'/home/air/goalskill_t/back/img/section1/17.png','2進数から10進数へ基数変換する際は、下図のように各桁の重みをかけてから、各桁の積を合計します。このため、2進数の「1001.001」を10進数で表現すると「9.125」になります。'),(22,'04','さまざまな基数変換','①16進数 → 10進数','16進数を10進数に変換する場合も、基本的な考え方は「2進数→10進数」の場合（p.24）と同じです。各桁に重みをかけてから、各桁の積を合計します。ただし、16進数の場合は、事前に16進数のアルファベットを10進数に変換してから計算する必要があります。この点は必ず覚えておいてください。例えば、16進数の「2BD.C8」を10進数に変換するには、次の図のように計算します。',NULL,'/home/air/goalskill_t/back/img/section1/18.png','このようにして、16進数の「2BD.C8」を10進数に変換すると「701.78125」になることがわかります。'),(23,'04','さまざまな基数変換','②10進数→2進数','10進数を2進数に変換する場合は、整数部と小数部を分けて計算します。例えば、10進数の「4.625」を2進数に変換するには、次のように計算します。',NULL,NULL,NULL),(24,'04','さまざまな基数変換','整数部の計算','まず整数部から変換します。10進数を2進数に変換するには、まず、10進数の数を、2進数の基数「2」でわり算して、商が「0」になるまで計算を行います。そして、余りを逆に並べ替えます。',NULL,'/home/air/goalskill_t/back/img/section1/19.png','つまり、10進数の「4」は、2進数では「100」になります。'),(25,'04','さまざまな基数変換','小数部の計算','次に小数部を変換します。10進小数の「0.625」を2進小数に変換するには、 （1）10進小数の数に、2進数の基数「2」をかける （2）積のうち、整数部だけを取り出す （3）残った小数部に、さらに「2」をかける これを小数部が「0」になるまで繰り返し、取り出した整数部を順に並べます。\n\n最後に整数部と小数部を合わせます。よって、10進数の「4.625」は、2進数では「100.101」になります。 このように、小数部のある10進数を2進数に変換するにはひと手間かかります。基本情報技術者試験ではこういった問題が出題されるので、ここでしっかりと計算できるようになっておいてください。','学習のポイント 無限小数 上記の計算では、10進小数→2進小数の変換において、最終的に小数部が「0」になったため、計算が完了しました。しかし、10進小数→2進小数の変換では、ほとんどの場合、小数部が「0」になりません。そのために、10進数を2進数に変換すると、たいてい無限小数になります。基本情報技術者試験において無限小数になる値は、ほとんどが循環小数なので、同じ数字の列が繰り返される場合は、そこで計算を終了して、無限小数であると判断しましょう。','/home/air/goalskill_t/back/img/section1/20.png','つまり、10進数の「0.625」は、2進数では「0.101」になります。'),(26,'04','さまざまな基数変換','③ 10進数→16進数','10進数を16進数に変換する際の基本的な手順は、10進数→2進数の場合と同じです。 整数部と小数部を分けて計算します。 例えば、10進数の「701.78125」を16進数に変換するには、次のように計算します。',NULL,NULL,NULL),(27,'04','さまざまな基数変換','整数部の計算','まず整数部から変換します。 10進数を16進数に変換するには、まず、10進数の数を、16進数の基数「16」でわり算して、商が「0」になるまで計算を行います。 そして、余りを16進数に変換してから、逆に並べ替えます。 例えば、10進数の「701」を16進数に変換するには次のように計算します。\n\nなお、10進数の「2」は16進数でも「2」です。 しかし、10進数の「13」は16進数では「D」、10進数の「11」は16進数では「B」です（p.22）。 そのため、余りを逆に並べ替える際に、10〜15の数をアルファベットのA〜Fに置き換える必要があるので注意してください。 10進数の「701」は16進数では「2BD」になります。',NULL,'/home/air/goalskill_t/back/img/section1/21.png',NULL),(28,'04','さまざまな基数変換','小数部の計算','次に小数部を変換します。 10進小数の「0.78125」を16進小数に変換するには、（1）10進小数の数に、16進数の基数「16」をかける（2）積のうち、整数部だけを取り出す（3）残った小数部に、さらに「16」をかける、という手順を踏みます。 これを小数部が「0」になるまで繰り返し、取り出した整数部を順に並べます。',NULL,'/home/air/goalskill_t/back/img/section1/22.png','このようにして、10進数の「0.78125」は、16進数では「0.C8」であることがわかります。 最後に整数部と小数部を合わせます。 よって、10進数の「701.78125」は、16進数では「2BD.C8」になります。'),(29,'04','さまざまな基数変換','n進数→10進数','基本情報技術者試験では、これまでに解説してきた2進数、10進数、16進数の他に、稀に8進数や11進数などが登場することがあります。 そのため、すべての変換方法を暗記するのではなく、どの表記法が出題されても対応できるように、基本的な考え方をきちんと習得しておくことが重要です。 基本を押さえておけば、どのような基数変換にも簡単に対応できます。 nを基数とする数の表し方を一般的にn進数（エヌしんすう）といいます。 n進数は、n種類の数字や文字で数を表します（0、1、2……n-1）。 数を見るとわかるように、n進数では桁が左に1つ上がるごとに桁の重みの指数が1つ増えます。 反対に、桁が右に1つ下がるごとに桁の重みの指数が1つ減ります。\n\n例えば、n進数の「3725.104」を10進数に変換すると、$$3n^3 + 7n^2 + 2n^1 + 5n^0 + 1n^{-1} + 4n^{-3}$$になります。もし、n進数が8進数であるならば、nに「8」を代入します。つまり、8進数の「3725.104」を10進数に変換すると、$=3 \\times 8^3 + 7 \\times 8^2 + 2 \\times 8^1 + 5 \\times 8^0 + 1 \\times 8^{-1} + 4 \\times 8^{-3}$$=1536 + 448 + 16 + 5 + 0.125 + 0.0078125$$=2005.1328125$になります。以上が基本情報技術者試験で必要となる、2進数や16進数、基数変換の知識です。お疲れさまでした！ 最後に、本章の冒頭で示した過去問題(p.17)にチャレンジしてみてください。ここまでの解説を読み進めてきたみなさんであれば必ず解答できます。',NULL,'/home/air/goalskill_t/back/img/section1/25.png','計算結果は「0.00111」となります。よって、ウが正解です。'),(30,'04','さまざまな基数変換','基数変換の問題は頻出だがコスパは悪い','いかがでしょうか。基数変換の過去問題を無事クリアできたでしょうか。このように、本章で解説してきた基数変換は、計算量が多く、時間がかかるため、コストパフォーマンスが悪い問題であるといえます。そのため、計算が苦手な人はあまり固執せず、次の章へ進んでください。これは試験本番でも同じです。「時間がかかりそうだな」と感じたら、解答を後回しにしてください。','学習のポイント 基数変換のやり方を忘れたら 基数変換では、数をわったり、かけたり、余りを並べ替えたりと、覚えることがたくさんあります。もし試験当日に基数変換のやり方を忘れてしまったら、10進数を10でわってみましょう。これは10進数を10進数に変換する方法です。この方法なら、変換前の数字と変換後の数字が同じになるので、基数変換のやり方を確認できます。','/home/air/goalskill_t/back/img/section1/26.png',NULL),(31,'05','負の2進数','2進数の負の表現','2進数で負の整数を表す方法には、以下の3種類があります。 ・絶対値表現 ・1の補数表現 ・2の補数表現',NULL,NULL,NULL),(32,'05','負の2進数','絶対値表現','絶対値表現とは、ビット列の先頭の1ビットで「正負」を表し、残りのビットで「値」を表す方法です。 先頭の1ビットが「0」の場合は「正」になり、「1」の場合は「負」になります。 なお、絶対値表現における先頭1ビットのような「正負を表すためにつけられるビット」のことを符号ビットといいます。 以下は10進数の「2」の正負を8ビットの2進数で表した例です。',NULL,'/home/air/goalskill_t/back/img/section1/27.png',NULL),(33,'05','負の2進数','1の補数表現','1の補数表現とは、すべてのビットを反転することで正負を表す方法です。ここで、反転とは、0を1に、1を0に入れ替えることです。例えば、10進数の「-2」を表す場合、10進数の「2」の2進数表現である「00000010」を反転させて「11111101」にします。',NULL,'/home/air/goalskill_t/back/img/section1/28.png',NULL),(34,'05','負の2進数','2の補数表現','2の補数表現とは、すべてのビットを反転した後に1を足して正負を表す方法です。例えば10進数の「-2」を表す場合は、10進数の「2」の2進数表現である「00000010」を反転させて「11111101」にした後、1を足して「11111110」にします。なお、「1の補数表現」や「2の補数表現」でも、先頭1ビットを符号ビットといい、「0」の場合は正の数を、「1」の場合は負の数を表します。','コラム 集中学習よりも、分散学習 勉強の方法は人それぞれです。毎日コツコツやるタイプの人もいれば、週末に十数時間、まとめてするタイプの人もいます。前者の学習方法を「分散学習」、後者の学習方法を「集中学習」といいます。みなさんにとって、どちらの学習方法のほうが適しているかは一概にはいえないのですが、ある実験によると、分散学習よりも、集中学習のほうが「覚えたことを忘れやすい」という結果があります。つまり、同じ20時間勉強する場合でも、「平日はまったく勉強せず、土日に10時間ずつ勉強する」という集中学習よりも、「平日は毎日2時間、週末は5時間勉強する」という分散学習のほうが効果的である可能性が高いのです。このため、基本情報技術者試験のように、数週間〜数カ月にわたって学習を続けるような資格試験の勉強をする場合は、集中学習よりも、分散学習のほうをおすすめします。一度、検討してみてください。','/home/air/goalskill_t/back/img/section1/29.png',NULL),(35,'06','2進数の四則演算','2進数のたし算・ひき算','まずは、2進数のたし算とひき算を解説します。2進数のたし算やひき算を行う場合は、10進数と同じように筆算します。2進数の筆算でも桁を揃えて、一番右側の桁から計算します。',NULL,'/home/air/goalskill_t/back/img/section1/30.png',NULL),(36,'06','2進数の四則演算','2進数のかけ算・わり算','2進数のかけ算やわり算は、それぞれの値をいったん10進数に変換して計算し、計算結果を再び2進数に戻す方法でも算出できますが、ここで解説する「シフト演算」を使うことで、2進数のまま、かけ算やわり算を行うことが可能です。そのほうが短時間で計算できるので便利です。','学習のポイント 2進数のかけ算・わり算とシフト演算 基本情報技術者試験では、シフト演算を使ったほうがすばやく解けるように問題が組み立てられています。ですので、ぜひシフト演算を習得して、すばやく問題を解けるようになってください。',NULL,NULL),(37,'06','2進数の四則演算','シフト演算','シフト演算とは、ビットを左右にずらして、かけ算やわり算を行う計算手法です。シフト（Shift）とは「ずらす」という意味です。シフト演算には大きく、次の2種類があります。 \n・論理シフト：正負を考慮しない（符号ビットを考慮しない） \n・算術シフト：正負を考慮する（符号ビットを考慮する）',NULL,NULL,NULL),(38,'06','2進数の四則演算','論理シフト','論理シフトとは、正負を考慮しないシフト演算（符号ビットを考慮しないシフト演算）です。ビット列を左右にずらしたうえで、次の処理を行います。\n・ビット列からはみ出たビットを捨てる\n・空いたビットに「0」を入れる\n具体例を見てみましょう。ビット列を左方向に1つずらすと、次ページの図のようになります。値が2倍（2→4）になっていることがわかります。このことから、ビット列をn個分だけ左にずらすと、元の数の $2^n$ 倍になることがわかります。そのため、2つずらすと4倍（$2^2$ 倍）、3つずらすと8倍（$2^3$ 倍）になります。','学習のポイント 論理シフトは必ず習得しよう！ 基本情報技術者試験では、シフト演算に関する問題の多くは、論理シフトのみで解答できます。正負を考慮する算術シフト（次項で解説）が必要になるケースはほとんどありません。問題文にも、正負を考慮する必要がないことを示すために、「正の整数」や「非負」（マイナスでないという意味）という文章が明記されることがほとんどです。そのため、次項の解説を読んで「算術シフトは難しい！」と感じる場合は、読み飛ばしても大丈夫です。','/home/air/goalskill_t/back/img/section1/32.png','このことから、ビット列をn個分だけ右にずらすと、元の数の $2^{-n}$ 倍になることがわかります。そのため、2つずらすと 1/4 倍（$2^2$ 倍）、3つずらすと 1/8 倍（$2^3$ 倍）になります。\n'),(39,'06','2進数の四則演算','算術シフト','算術シフト（さんじゅつシフト）とは、正負を考慮するシフト演算（符号ビットを考慮するシフト演算）です。正負のあるビット列 (p.35) に対して、論理シフトを行うと、正しい結果を得られません。これは、論理シフトがビット列の先頭にある符号ビットを特別扱いしないためです。 一方、算術シフトでは、正負を正しく計算するために符号ビットを特別扱いします。符号ビットを固定したまま、ビット列を左右にずらします。そのうえで、次の処理を行います。\n・ビット列からはみ出たビットを捨てる \n・左方向にずらした場合は、空いたビットに「0」を入れる \n・右方向にずらした場合は、符号ビットと同じ数を入れる\n\n具体例を見てみましょう。符号ビットを固定したまま、ビット列を左方向に2つずらすと、下図のようになります。\n\nそれでは、本章の冒頭で示した以下の過去問題(p.17)を、ここではシフト演算（論理シフト）を使って解いてみましょう。\n\nこれらのことから、次のことがわかります。\n・「7÷32」は2進数「111」に「$2^{-5}$」をかけた数\n・「$2^{-5}$」はビット列を右方向に5つシフト演算すること\n・「7」は正の数なので、符号ビットを考慮しなくてよい（論理シフト）\n上記を踏まえ、シフト演算を行うと以下のようになります。','試験にはコレが出る！ シフト演算では「基数変換」と「シフト演算」の両方の知識が問われる','/home/air/goalskill_t/back/img/section1/37.png','計算結果は「0.00111」になります。よって「ウ」が正解です。\n以上のことから、この問題は「基数変換」と「シフト演算」の両方の知識が問われている複合問題であることがわかります。出題者からすれば、この1問で本章全体の理解度を試せる良問なので、実際の試験でも頻出します。一方で、受験者からすると、たくさんの知識が必要となる難易度の高い問題であるといえます。'),(40,'06','2進数の四則演算','「シフト演算とたし算を組み合わせた問題」も出題される','これまでの解説からもわかるように、シフト演算では$2^n$倍（2倍、4倍、8倍など）と、$2^{-n}$倍（1/2倍、1/4倍、1/8倍など）のかけ算やわり算しかできません。しかし、基本情報技術者試験では意地悪く「2進数を9倍にする問題」などが出題されます。シフト演算では「9倍」を行うことはできません。このような場合は「シフト演算」と「たし算」を組み合わせます。\n例えば、2進数の「11」を9倍にする場合は、以下のように左方向へ3ビット論理シフト（$2^3$倍）したうえで、その数に元の値である2進数「11」をたし算します。','試験にはコレが出る！ シフト演算では「かけ算」と「たし算」を合わせる問題が出題される','/home/air/goalskill_t/back/img/section1/39.png','こうすることで、結果は「８倍＋１倍＝９倍」になります。\nただし、基本情報技術者試験では、2進数「11」のような具体的な数値ではなく、より抽象的な値を用いて「整数 $x$ を9倍せよ」といった形式の問題が頻繁に出題されます。 そういった抽象的な問題に対応できるようになるために、ここでは、10進数「x」を9倍にすることを考えましょう。\n次の図では、10進数「x」を2進数に変換した値を文字aとbを使って「ab」としています。 正負を考慮しない10進数「$x$」を9倍にする場合は、次の図のように、左方向へ3ビット論理シフト（$2^3$倍）したうえで、その数に $x$ をたし算します。');

--
-- Table structure for table `section_10`
--

CREATE TABLE `section_10` (
  `id` int NOT NULL AUTO_INCREMENT,
  `chapter` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci,
  `main_title` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci,
  `sub_title` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci,
  `theory_description` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci,
  `tip` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci,
  `img` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci,
  `img_description` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=51 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

--
-- Dumping data for table `section_10`
--

INSERT INTO `section_10` VALUES (1,'01','回線','回線とは','回線（または伝送路）とは、データが通る線です。基本情報技術者試験では「回線を通るデータの速さ」に関する計算問題が出題されます。 計算問題は解くのに時間がかかるので、できれば避けて通りたいところですが、回線に関する問題はよく出題されるので無視できません。ここでは実際の過去問を使って解き方を丁寧に解説していくので、計算が苦手な人も一度はチャレンジしてみてください。',NULL,'/home/air/goalskill_t/back/img/section10/2.png','この問題を解くには、以下の６つの用語について理解しておくことが必要です。'),(2,'01','回線','伝送効率','伝送効率とは、回線速度に対する伝送速度の割合です。「回線利用率」とも呼ばれます。伝送効率は、次の式で求めます。\n\n$$\\text{伝送効率}(\\%) = \\frac{\\text{伝送速度}}{\\text{回線速度}} \\times 100$$\n\n上記の過去問では、設問内に「伝送効率を50％」と記載されているので、計算は不要ですが、場合によっては計算しなければならないケースもあります。',NULL,NULL,NULL),(3,'01','回線','伝送時間','理論説明：伝送時間とは、その回線で指定のデータ量を伝送するのに必要な時間です。「転送時間」とも呼ばれます。伝送時間は、次の式で求めます。\n\n$$\\text{伝送時間} = \\frac{\\text{データ量}}{\\text{伝送速度}}$$\n\np.338の過去問ではこの伝送時間が問われています。設問には「転送時間」とありますが、これは伝送時間のことです。\n\n$$\\text{伝送時間} = \\frac{10M\\text{バイト}}{50,000\\text{ビット/秒}}$$$$= \\frac{10 \\times 10^6 \\times 8 \\text{ビット}}{50,000\\text{ビット/秒}}$$$$= 1,600 \\text{秒}$$\n\nよって上記の過去問の答えは「1,600秒」になります。','学習のポイント 基本情報技術者試験での表記 \np.338で紹介した過去問において「伝送時間」のことが「転送時間」と記載されていて戸惑った人もいるかもしれませんが、基本情報技術者試験ではこういった表記の違いが割と多くあります。そのため、１つの用語にこだわってしまうと、試験本番で「こんな用語、聞いたことがない！」と慌ててしまう可能性があるので注意してください。基本情報技術者試験では以下の用語は同じことを意味します。 \n・回線、伝送路、通信回線 \n・伝送、転送 \n・伝送時間、転送時間 \n・伝送効率、回線利用率',NULL,NULL),(4,'01','回線','伝送方式','通信回線を使ってデータを送る方式には、「回線交換方式」と「パケット交換方式」の２種類があります。 なお、ここでは２つの方式について説明しますが、基本情報技術者試験に出題されるのは「パケットとは何か」です。回線交換方式やパケット交換方式の具体的な内容が出題されることは極めて稀です。この点に注意して読み進めてください。',NULL,NULL,NULL),(5,'01','回線','回線交換方式','回線交換方式とは、通信回線を占有して情報をやり取りする方法です。通信回線を占有するので、輻輳（ふくそう：データの渋滞）がなく、伝送時間が遅れることがありません。そのため、通信速度を保証しなければならないインターネットサービスなどではこの方式が主に使われています。',NULL,NULL,NULL),(6,'01','回線','パケット交換方式','パケット交換方式とは、データをパケット単位に分割して、複数の回線を使って情報をやり取りする方法です。パケットとは、データを小分けにして、それぞれにヘッダー（制御情報）をつけた単位です。','試験にはコレが出る！ \nパケットとは、データを小分けにして、それぞれにヘッダーを付けた単位','/home/air/goalskill_t/back/img/section10/3.png',NULL),(7,'01','回線','アナログ信号をデジタル信号に変換する仕組み','ネットワークを使ってデータを相手に送るには、以下の仕組みが必要です。 \n・アナログ信号をデジタル信号に変換する仕組み \n・データの転送途中の誤りを見つける仕組み',NULL,NULL,NULL),(8,'01','回線','回線と信号','回線には、アナログ回線とデジタル回線の２種類があります。\n\n■ アナログ回線とアナログ信号 アナログ回線とは、アナログ信号を送るための線です。アナログ信号とは、時間の変化と共に、信号の値が連続的に変化する信号です。例えば、音波はアナログ信号です。\n\n■ デジタル回線とデジタル信号 一方、デジタル回線とは、デジタル信号を送るための線です。デジタル信号とは、時間の変化と共に、信号の値が非連続（飛び飛び）に変化する信号です。例えば、コンピュータが扱う信号はデジタル信号です。',NULL,'/home/air/goalskill_t/back/img/section10/4.png',NULL),(9,'01','回線','D/A変換器','アナログ回線を使ってデータを送る場合は、データをアナログ信号に変換する必要があります。同様に、デジタル回線を使ってデータを送る場合は、データをデジタル信号に変換する必要があります。\n\nD/A変換器とは、デジタル信号をアナログ信号に変える装置です。「D」はデジタル、「A」はアナログを意味します。D/A変換器は「D/Aコンバータ」とも呼ばれます。\n\nなお、アナログ信号をデジタル信号に変える装置をA/D変換器といいます。',NULL,NULL,NULL),(10,'01','回線','データの転送途中の誤りを見つける仕組み','転送途中のデータは、身近な電化製品から発せられるさまざまな電磁波の影響を受けて、値が変化することがあります。値が変化してしまっては、送り先に正しいデータを届けることができません。そこで、こうした事態を防ぐために、データの誤りを見つけて、正しいデータに直す必要があります。',NULL,NULL,NULL),(11,'01','回線','ビット誤り','通常、ビットは電圧の違いで「0」か「1」かが決まります。データの転送中に電圧が変化して、ビットの「0」と「1」が入れ替わってしまうことを「ビット誤り」といいます。ビット誤りを見つける方法はいくつかあるのですが、基本情報技術者試験では「パリティチェック方式」と「CRC方式」が出題されます。',NULL,NULL,NULL),(12,'01','回線','パリティチェック方式','パリティチェック方式（奇偶検査方式）とは、送信するビット列に検査用のビットを付け加えて送る方式です（下図を参照）。\n\n受信側は、送られてきたビット列と、検査用のビットを比べることでビット誤りを見つけます。ビット列の末尾に付け加える検査用のビットのことを「パリティビット」といいます。パリティチェックには、２種類の方式があります。',NULL,'/home/air/goalskill_t/back/img/section10/6.png','例えば、奇数パリティであれば、送信者はビット列中の「1」の総数が奇数になるように、パリティビットを付け加えて送ります。受信者は「1」の総数を数えて、偶数になっていたら、ビット誤りが起きているとわかります。'),(13,'01','回線','パリティチェック方式の欠点','パリティチェック方式では、すべてのビット誤りを見つけることはできません。例えば、ビット誤りが２箇所で発生すると、奇数・偶数は正しくなるため、ビット誤りに気づくことはできません。このような理由から現在では、ビット誤りの検出性に優れた「CRC方式」が主流になっています。',NULL,NULL,NULL),(14,'01','回線','CRC方式','CRC方式（Cyclic Redundancy Check）とは、データをあらかじめ決められた多項式でわり算し、その余りをチェックデータとしてデータに付け加えて送る方式です。受信側でも同じ計算をして、計算結果がチェックデータと同じになれば誤りがないことになります。 なお、このように説明されても難解で意味がよくわからないと思いますが、安心してください。基本情報技術者試験では上記の「多項式でわり算し、その余りをチェックデータとして付け加える」という、CRC方式の特徴しか出題されません。具体的な計算方法は出題されません。','学習のポイント 生成多項式 \n基本情報技術者試験では、CRC方式の用語定義にある「あらかじめ決められた多項式」のことが「生成多項式」という表現で出題されることがあります。「多項式」や「生成多項式」というキーワードが出たら「CRC方式の可能性が高い！」ということを覚えておいてください。',NULL,NULL),(15,'02','LANとWAN','ネットワークの種類','LAN（Local Area Network）とは、その名前のとおり、社内や学校内といった、狭い範囲のコンピュータで構成される小規模なネットワークのことです。 一方、WAN（Wide Area Network）とは、大規模な（広範囲の）ネットワークのことです。\n\nこのように聞くと、「LANとWANの境目はどこにあるのだろうか」と思った人もいると思いますが、実は、LANとWANの違いは「ネットワークの規模」ではなく、「電気通信事業者が設置した通信回線を使うか否か」にあります。 東京と大阪にオフィスがある会社を例に考えてみましょう。この遠く離れた２つのオフィスをネットワークでつなぐには、電気通信事業者が設置した通信回線を使う必要があります。なぜなら、免許のない企業が電柱や地中送電線を勝手に敷設することはできないからです。 この場合は、オフィスの大きさや利用者数に関わらず、このネットワークは「WAN」に分類されます。つまり、電気通信事業者が設置した通信回線を使ったネットワークのことをWANといいます。','学習のポイント　インターネット接続サービス事業者と携帯電話会社 \n家にインターネット回線を引く際に「プロバイダ」という言葉を聞いたことがある人もいるかもしれません。 プロバイダの日本語の名称は「インターネット接続サービス事業者（ISP：Internet Service Provider）」です。このプロバイダも電気通信事業者に含まれます。また、携帯電話会社も電気通信事業者です。これらの企業が提供している通信回線を利用したネットワーク環境はすべて「WAN」に分類されます。','/home/air/goalskill_t/back/img/section10/7.png',NULL),(16,'02','LANとWAN','無線LAN','無線LANとは、ケーブルではなく、無線でコンピュータ同士をつなぐLANです。Wi-Fi（Wireless Fidelity）とほぼ同じ意味ですが、厳密には、Wi-Fiは無線LANの規格の１つです。 無線LANには「コンピュータ同士が直接通信する方法」と「アクセスポイントを経由して通信する方法」の２種類があります。このうち、コンピュータ同士が直接通信する方法のことを「アドホック」といいます。','学習のポイント　アクセスポイント \nアクセスポイントとは、コンピュータを無線LANに接続するための機器です。みなさんの家庭では、ルーターがアクセスポイントの役割をしていることが多いです。',NULL,NULL),(17,'03','IPアドレス','インターネットとIPアドレス','IPアドレス（Internet Protocol Address）とは、ネットワークに接続している「コンピュータ」を識別するための番号です。名称に「アドレス＝住所」という言葉が含まれていることからも、IPアドレスがネットワーク上の住所（コンピュータの場所）を示す値であることがわかります。 IPアドレスは、具体的には「13.112.248.159」や「192.168.1.1」のように、数値とピリオドで構成されます。',NULL,'/home/air/goalskill_t/back/img/section10/8.png','上記のように、IPアドレスは現実の世界の「住所」に相当するものなので、重複する値があっては困ります。重複する値があると、そのIPアドレスがどのコンピュータを指しているのか判別できなくなります。 なお、ネットワークの世界には国境がないため、IPアドレスは世界中で重複のない、唯一の値であることが必要です。そのため、IPアドレスが全世界で重複しないように、アメリカにある「ICANN」という管理団体が管理しています。'),(18,'03','IPアドレス','ポート番号とMACアドレス','IPアドレスが世界で唯一の値であるならば、その値を使って通信できそうですが、実はIPアドレスだけでは通信相手を特定することはできません。 IPアドレスを使うと、インターネット上で１台のコンピュータを特定できますが、実際に通信するには「ポート番号」と「MACアドレス」が必要になります。',NULL,NULL,NULL),(19,'03','IPアドレス','ポート番号','ポート番号とは、アプリケーションソフトウェアごとに割り当てられる「情報の出入口を示す値」です。アプリケーションソフトウェアとは、具体的には「ブラウザ」や「メールソフト」などです。',NULL,'/home/air/goalskill_t/back/img/section10/9.png','先述したように、IPアドレスとは「コンピュータを識別するための番号」です。このため、IPアドレスがわかれば、世界中にある膨大な数のコンピュータの中から、１台のコンピュータを特定できます。 しかし、コンピュータを特定しただけでは、コンピュータ上で動いているどのアプリケーションソフトウェアと通信すればよいかわかりません。例えば、ブラウザとメールソフトを同時に起動している場合、IPアドレスだけではどちらのアプリケーションソフトウェアと通信したらよいか判断できません。\nそこで必要になるのがポート番号です。それぞれのアプリケーションソフトウェアに個別に割り当てられているポート番号を使って、通信相手となるアプリケーションソフトウェアを特定します。'),(20,'03','IPアドレス','MACアドレス','MACアドレス（マックアドレス）とは、ネットワーク機器ごとに割り当てられている固有の宛先です。MACアドレスは、IPアドレスと同じく、コンピュータ（ルーターやサーバを含む）を識別する番号です。 なお、IPアドレスが最終的な通信相手を特定する番号なのに対して、MACアドレスは次の通信相手を特定する番号です。データがIPアドレスの指す最終的なコンピュータにたどり着くまでには、ルーターなどのたくさんのネットワーク機器を経由します。これらの中継点となるネットワーク機器を識別するための番号がMACアドレスです。仮にネットワークを電車の路線と考えるならば、MACアドレスは乗り換え駅の名前、IPアドレスは最終目的地の駅の名前です。',NULL,'/home/air/goalskill_t/back/img/section10/10.png',NULL),(21,'03','IPアドレス','MACアドレスを構成するコード','基本情報技術者試験では、「MACアドレスを構成するコード」が出題されます。MACアドレスは「ベンダーID」と「固有製造番号」の２つのコードで構成されます。','コラム\nわからなくなったら絵に描いてみる \n「図解」や「イラスト」は、物事を理解するのにとても有効な手法です。そのため、世の中には「図解でわかる～」や「マンガで学ぶ～」といった類の実用書がたくさんあります。これらの実用書が人気なのは、多くの人が、この手法が有効であることを知っているからです。 このため、本書でもできるだけ多くの概念図や解説図を載せています。ただし、すべての用語を図解しているわけではないので、もし本書の内容だけでは足りない場合は、読んで学んだことを、みなさん自身で絵に描いてみたり、またはインターネットを検索して適切な解説図を探したりしてみてください。文字を読むだけではなかなか理解できないことも、解説図を見ればすんなり理解できることがたくさんあります。','/home/air/goalskill_t/back/img/section10/13.png','なお、上記ではMACアドレスを2進数で表記していますが、通常は16進数で表現されることのほうが多いです。'),(22,'04','サブネットマスク','ネットワーク部とホスト部','IPアドレスは、ネットワーク部とホスト部という２つのパートで構成されています。IPアドレスを２進数で表すと下図のように32桁になります。',NULL,'/home/air/goalskill_t/back/img/section10/15.png','ホスト部の「ホスト」とは、IPアドレスが割り振られたコンピュータのことです。'),(23,'04','サブネットマスク','サブネットマスク','サブネットマスクとは、ネットワーク部とホスト部を区別するための番号です。別の言い方をすると、32桁のIPアドレス全体のうち、どこからどこまでがネットワーク部で、どこからどこまでがホスト部なのかは、サブネットマスクによって決まる、ということです。 IPアドレスとサブネットマスクの関係は下図のとおりです。サブネットマスクでは、ネットワーク部を「1」、ホスト部を「0」で表します。',NULL,'/home/air/goalskill_t/back/img/section10/16.png','上記の例では、サブネットマスクの上位28桁が「1」で、残りの下位4桁が「0」です。したがって、IPアドレスのうち、上位28桁がネットワーク部、下位4桁がホスト部となります。'),(24,'04','サブネットマスク','サブネットマスクとコンピュータの数','上図の例の場合、ホスト部は4ビットです。4ビット（4桁の2進数）で表せる数は $$2^4$$ 個（0～15までの16個）です。このことから、このネットワークに接続できるコンピュータは、理論上は最大で16台であることがわかります（実際は、2つ少ない14台までしか接続できません。その理由は後述します）。理論説明：ネットワーク部の桁数が少ないほど、ホスト部の桁数が多くなるので、たくさんのコンピュータをネットワーク内に接続できることがわかります。図の説明：下図は上位8桁が「1」、下位24桁が「0」のサブネットマスクの例です。この例では、ホスト部が24ビットなので、理論上はネットワーク内に $$2^{24}$$ 台（16,777,216台）のコンピュータを接続できます（実際は、2つ少ない16,777,214台）。','学習のポイント \nサブネットマスクの10進数表記 \nサブネットマスクも、IPアドレスと同様に、2進数表記では人間が読みづらいので、以下のように2進数を8桁ごとに区切って10進数で表記することもあります。','/home/air/goalskill_t/back/img/section10/18.png',NULL),(25,'04','サブネットマスク','アドレスプレフィックス表記法','アドレスプレフィックス表記法とは、IPアドレスに含まれるネットワーク部の桁数を表す方法です。 先述したように、IPアドレスとサブネットマスクを一緒に表記しないと、ネットワーク部とホスト部を区別することはできません。しかし、IPアドレスに毎回サブネットマスクを併記するのは煩雑です。そこで、アドレスプレフィックス表記法が採用されました。この表記法では、IPアドレスの末尾に「/」（スラッシュ）を追加して、以下のようにネットワーク部の桁数（サブネットマスク）を表記します。 10.170.70.19/28 上記の場合、上位28ビットがネットワーク部になり、残りの4ビットがホスト部になります。つまり、IPアドレスが「10.170.70.19」に対して、サブネットマスクが「255.255.255.240」であることを示しています。 プレフィックス（prefix）とは「接頭辞」という意味です。IPアドレスの「先頭から」何桁がネットワーク部であるかを表す、と覚えるとよいでしょう。',NULL,NULL,NULL),(26,'04','サブネットマスク','ネットワークアドレスとブロードキャストアドレス','p.357で、実際にネットワークに接続できるコンピュータの数が、理論値よりも2台分少ないことをお伝えしました。ここではその理由を解説します。 実際にネットワークに接続できるコンピュータの数（利用できるIPアドレスの数）が、理論値よりも2台少ないのは、IPアドレスの中に特別な働きをする2つのアドレスがあるためです。','試験にはコレが出る！ \n・サブネットマスクに関する計算問題が頻出なので、p.360の過去問を解いて出題形式に慣れておく \n・ネットワークアドレスとは、ホスト部がすべて「0」のIPアドレス \n・ブロードキャストアドレスとは、ホスト部がすべて「1」のIPアドレス \n・ネットワークアドレスとブロードキャストアドレスは、ホストに割り当てることができない','/home/air/goalskill_t/back/img/section10/20.png','このように、上記の2つのIPアドレスは事前に用途が決められているため、みなさんが個別のホストに割り当てることはできません。そのため、実際に使えるIPアドレスは理論値より2つ少ないのです。'),(27,'05','グローバルIPアドレスとプライベートIPアドレス','IPv6','前項までに学習してきたIPアドレスは、実は「IPv4（アイピーブイフォー）」と呼ばれるIPアドレスに関する知識です。 このIPアドレスは32桁の2進数（32ビット）で構成されているので、アドレスの総数は約43億個（2の32乗）になります。','もう少し詳しく！ IPv5はどこへ？ \nIPにはいくつかのバージョンがあり、現在、主に使われているIPアドレスはIPv4、つまりIPバージョン4です。 IPv6はIPバージョン6です。 ちなみに「IPv5」はどこへ行ったのかというと、実在したのですが、実験用のもので一般に使われることはありませんでした。','/home/air/goalskill_t/back/img/section10/21.png','インターネットが登場した当時は「アドレスは43億個もあれば十分だろう」と考えられていました。 しかし、インターネットが爆発的に普及し、現在では43億個では足りません。 この「IPアドレスの枯渇問題」を解決するために登場したのが、「IPv6」です。 IPv6は、IPv4に代わる次世代のIPアドレス（インターネットプロトコル）です。'),(28,'05','グローバルIPアドレスとプライベートIPアドレス','IPv6のアドレス総数の表記法','IPv6は、128桁の2進数（128ビット）で構成されているので、IPアドレスの総数はおおよそ340兆の1兆倍の1兆倍（$2^{128}$）になります。 この数は、地球上に転がっている石よりも多いといわれています。 ほぼ無限大といってもよいでしょう。 なお、IPv4とIPv6ではIPアドレスの表記法が異なります。\n【IPv4】8ビットごとに「.」（ピリオド）で区切って10進数で表す。例）13.112.248.159\n【IPv6】16ビットごとに「:」（コロン）で区切って16進数で表す。例）2001:0DB8:013D:2002:48FF:FE9A:A2C7:385C\nなお、IPv4からIPv6へ移行するのは大変なので、実際にはまだIPv4も広く使われています。','試験にはコレが出る！\n・IPv4は、32ビットで構成される\n・IPv6は、128ビットで構成される\n・IPv6は、16ビットごとに「:」（コロン）で区切って16進数で表す\n・IPv6を使うと、IPアドレスの枯渇（不足）を回避できる',NULL,NULL),(29,'05','グローバルIPアドレスとプライベートIPアドレス','グローバルIPアドレスとプライベートIPアドレス','さて、IPv4に話を戻しましょう。IPv4のIPアドレスは大きく、次の２つに分類できます。\n\n社内や自宅（つまり、LAN内）に複数台のコンピュータがあり、その中だけでデータをやり取りする際はプライベートIPアドレスを使います。 プライベートIPアドレスは同じLAN内にあるコンピュータを特定する番号なので、そのLAN内では一意である必要がありますが、他のLANにあるコンピュータに同じプライベートIPアドレスが使われていても何も問題はありません。 ただし、プライベートIPアドレスだけではインターネットに接続できないため、事前にグローバルIPアドレスを取得する必要があります。',NULL,'/home/air/goalskill_t/back/img/section10/22.png',NULL),(30,'05','グローバルIPアドレスとプライベートIPアドレス','グローバルIPアドレスを取得する方法','プライベートIPアドレスを持つコンピュータがどのようにしてグローバルIPアドレスを取得するのかというと、「ルーター」に割り当てられているグローバルIPアドレスを一時的に借りて、インターネットに接続します。 この、プライベートIPアドレスをグローバルIPアドレスへ変換する技術のことを「NAT（Network Address Translation）」といいます。 NATの技術を使って、インターネットへの接続が必要ないときはプライベートIPアドレスを使い、必要になったときのみ、グローバルIPアドレスに変換することでIPv4の不足問題を解決しています。',NULL,NULL,NULL),(31,'05','グローバルIPアドレスとプライベートIPアドレス','NAPT','NAPT (Network Address Port Translation) とは、複数のプライベートIPアドレスを、１つのグローバルIPアドレスに変換する技術です。 NAPTを利用すると、プライベートIPアドレスを持つ複数のコンピュータが、同時にインターネットにアクセスできます。\n\n先述したNATも、プライベートIPアドレスをグローバルIPアドレスに変換するという点ではNAPTと似た技術ですが、NATは１つのプライベートIPアドレスを１つのグローバルIPアドレスに変換することしかできません。 この点がNAPTと大きく異なるので注意してください。',NULL,'/home/air/goalskill_t/back/img/section10/23.png',NULL),(32,'05','グローバルIPアドレスとプライベートIPアドレス','DHCP','DHCP (Dynamic Host Configuration Protocol) とは、IPアドレスを各コンピュータに自動的に割り当てるプロトコルです。 基本情報技術者試験では「IPアドレスを動的に割り当てるプロトコル」という文章で出題されることがあります。',NULL,NULL,NULL),(33,'05','グローバルIPアドレスとプライベートIPアドレス','DHCPの役割','１つのLAN内に複数のコンピュータがある場合、各コンピュータにIPアドレス（プライベートIPアドレス）を割り当てる必要があるのですが、この作業をネットワーク管理者が１つひとつ行っていては大変です。 コンピュータが２～３台ならまだしも、数十台、数百台になると、IPアドレスを管理するだけでひと苦労です。 こういった機械的な作業は人間よりもコンピュータのほうが得意なので、コンピュータに任せたほうが正確かつ効率的です。 この役割を担っているのがDHCPです。 DHCPは、LAN内にある他のコンピュータのIPアドレスを自動的に調査し、値が重複しないようにIPアドレスを管理してくれます。','試験にはコレが出る！\n・NATとは、プライベートIPアドレスとグローバルIPアドレスを相互に変換する機能\n・NAPTとは、プライベートIPアドレスを持つ複数の端末が、１つのグローバルIPアドレスを使ってインターネットに接続する技術\n・DHCPとは、IPアドレスを動的に割り当てるプロトコル','/home/air/goalskill_t/back/img/section10/24.png',NULL),(34,'06','ドメイン名','IPアドレスとドメイン名','先述したように、IPアドレスは「13.112.248.159」や「192.168.1.1」のように、規則性のない数字の羅列であるため、人間にとっては覚えにくく、扱いづらいという難点があります。 この難点を解決するのが「ドメイン名」です。ドメイン名とは、IPアドレスに対応付けることができる、コンピュータを区別するための名前です。IPアドレスをドメイン名に置き換えると、人間にとっては覚えやすく、扱いやすくなります。',NULL,'/home/air/goalskill_t/back/img/section10/25.png','ドメイン名はIPアドレスと１対１の関係になるので、ドメイン名も世界中で重複しない文字列にする必要があります。このため、ドメイン名もICANN (p.353) が管理しています。'),(35,'06','ドメイン名','DNS','ドメイン名は、あくまでも人間が扱うために用意されている文字列です。コンピュータの効率を上げるために用意されているわけではありません。コンピュータにとってはドメイン名よりも、IPアドレスのほうがはるかに扱いやすいのです。 このため、みなさんがブラウザのアドレスバーにドメイン名を入力すると、その値は「DNS」と呼ばれる仕組みによって、IPアドレスに変換されます。','学習のポイント　DNSは電話帳 \nDNSは、現実世界における「電話帳」です。 人間は数字の羅列である電話番号を覚えにくいので、名前と電話番号が対応付けられている電話帳を使って、必要な電話番号を調べます。 このような使い方はスマートフォンの電話帳機能も同じです。','/home/air/goalskill_t/back/img/section10/26.png','DNS (Domain Name System) とは、ドメイン名をIPアドレスに変換するシステムです（IPアドレスをドメイン名に変換することもあります）。基本情報技術者試験では「ドメイン名とIPアドレスを対応させる仕組み」という文章で出題されることがあります。'),(36,'06','ドメイン名','URL','URL（Uniform Resource Locator）とは、ドメイン名（またはIPアドレス）によって特定されたコンピュータの、さらに内部のデータ（フォルダやファイル）までを直接指定するための記法です。 ドメイン名の後に「/」（スラッシュ）を記述してフォルダやファイルを指定します。\nドメイン名とURLの関係はした図のとおりです。','試験にはコレが出る！\n・ドメイン名とは、IPアドレスに対応付けることができる、コンピュータを区別するための名前\n・DNSとは、ドメイン名をIPアドレスに変換するシステム\n・URLとは、ドメイン名によって特定されたコンピュータの、さらに内部のデータまでを直接指定するための記法','/home/air/goalskill_t/back/img/section10/27.png',NULL),(37,'07','通信プロトコル','通信プロトコルとは','通信プロトコルとは、コンピュータとコンピュータが通信をする際に、両方のコンピュータが守るべき約束事です。 簡単にいえば「ルール」です。 以前は、各メーカーが独自の規格でネットワーク機器を作っていたため、他社の製品との互換性がありませんでした。 そのため、ネットワーク内の機器を同じメーカーの製品で揃える必要がありました。 このような状況はとても不便なので、どのメーカーの製品であっても相互に通信できるように統一されたルールが考え出されました。 それが通信プロトコルです。 なお、通信プロトコルは１種類だけではありません。 用途ごとに複数の通信プロトコルが用意されています。 それぞれの通信プロトコルの特徴を理解することが、本項の目標です。',NULL,NULL,NULL),(38,'07','通信プロトコル','OSI基本参照モデルとTCP/IP','OSI基本参照モデル (Open Systems Interconnection Basic Reference Model) とは、通信プロトコルやネットワーク機器が持つべき機能を７つに分類して階層化したモデルです。 コンピュータ同士が通信する際に必要なネットワーク機器は、さまざまなメーカーが作っています。 そのような状況で、メーカー各社が独自のルールで製品を作ると、異なるメーカーの製品を組み合わせた際に、正しく通信できなくなります。 そこで、ISO (International Organization for Standardization：国際標準化機構) が「OSI基本参照モデル」というルールを決めました。 メーカーは、このルールに従って製品を作ることで、別のメーカーの製品とも問題なく通信できるようになります。\n\nなお、実際のインターネットでは、OSI基本参照モデルをさらにシンプルにした「TCP/IP」というモデルが使われています。 TCP/IP (Transmission Control Protocol/Internet Protocol) は通信に必要な機能を４つに分類して階層化したモデルです。 ちなみに、上図の一番右側の列にある「ネットワーク機器」は、それぞれの層の通信を中継する代表的なネットワーク機器です。 基本情報技術者試験では、どのネットワーク機器がどの層の通信を中継するのかが頻出です。 併せて覚えておいてください。 これら４つのネットワーク機器の詳細についてはこれから解説します。',NULL,'/home/air/goalskill_t/back/img/section10/28.png',NULL),(39,'07','通信プロトコル','4つのネットワーク機器','これから解説する４つのネットワーク機器はどれも「LANとLANを接続する機器」ですが、役割や対応する層（OSI基本参照モデルやTCP/IPにおける層）が異なります。 基本情報技術者試験では、各ネットワーク機器の役割とその機器がどの階層に対応するのかの２つがよく出題されます。',NULL,NULL,NULL),(40,'07','通信プロトコル','(1)リピータ','リピータは、OSI基本参照モデルの物理層でデータの中継をする装置です。 リピータの役割は、長いケーブルを通って弱くなってしまった信号を増幅・整形することです。\n\nリピータは、データを単なる電気信号としてしか認識しません。 つまり、リピータは、データの内容に関わらず、信号を物理的に中継するだけです。 このことから、リピータが「物理層」をつなぐ装置であると考えると、覚えやすいでしょう。',NULL,'/home/air/goalskill_t/back/img/section10/29.png',NULL),(41,'07','通信プロトコル','リピータハブ','一般的に、リピータは１対１のLANをつなぐ装置です。 一方、複数のLANをつなぐ装置を「リピータハブ」といいます。',NULL,NULL,NULL),(42,'07','通信プロトコル','(2)ブリッジ','ブリッジは、OSI基本参照モデルのデータリンク層でデータの中継をする装置です。 ブリッジの役割は、データのMACアドレスを見て、データを別のLANに渡すべきかを判断することです。 リピータとブリッジの共通点は、どちらもLANとLANをつなぐ装置であることです。 相違点は、リピータがデータを単なる電気信号としてしか見ない一方で、ブリッジはデータのMACアドレスを見ることです。\n\n・リピータは、流れてきたすべてのデータを中継する\n・ブリッジは、流れてきたデータによって中継の可否を判断する',NULL,'/home/air/goalskill_t/back/img/section10/30.png','上図を見てください。この図では２つのLANがブリッジで接続されています。また、それぞれのLANには２台ずつ、コンピュータがつながっています。 データは電気信号なので、回線でつながれたすべての経路を流れようとします。しかし、ブリッジは流れてきたデータのMACアドレスを見て、異なるLANへ送られるデータのみを中継します。\n 一方、ブリッジは同じLAN内へ送られるデータは中継しません。'),(43,'07','通信プロトコル','ブリッジとレイヤー 2スイッチ','一般的に、ブリッジは１対１のLANをつなぐ装置です。 一方、複数のLANをつないで、OSI基本参照モデルの第2層でデータを中継する装置を「レイヤー 2スイッチ」、もしくは「スイッチングハブ」といいます。',NULL,'/home/air/goalskill_t/back/img/section10/31.png',NULL),(44,'07','通信プロトコル','(3)ルーター','ルーターとは、OSI基本参照モデルのネットワーク層でデータの中継をする装置です。 ルーターの役割は、データのIPアドレスを見てルーティングを行うことです。',NULL,'/home/air/goalskill_t/back/img/section10/33.png','このように、ルーターを用いることで、余計な回線に負担をかけることなく、効率的にメッセージを送ることができます。'),(45,'07','通信プロトコル','レイヤー 3スイッチ','先述したレイヤー 2スイッチにルーティング機能を追加したネットワーク機器を「レイヤー 3スイッチ」といいます。 レイヤー 3スイッチの「レイヤー 3」とは、OSI基本参照モデルの第2層に加え、第3層のデータも中継することを意味します。',NULL,NULL,NULL),(46,'07','通信プロトコル','(4)ゲートウェイ','ゲートウェイとは、OSI基本参照モデルの**トランスポート層以上（第4～7層）**でデータの中継をする装置です。 ゲートウェイの役割は、プロトコルの異なるネットワークを接続することです。 例えば、「OSI基本参照モデルのLAN」と「メーカー固有のプロトコルで構成されているLAN」を接続します。','試験にはコレが出る！\n\n・リピータは、OSI基本参照モデルの物理層でLANをつなぐ装置\n・リピータの役割は、信号を増幅・整形すること\n・リピータのうち、複数のLANをつなぐ装置をリピータハブという\n・ブリッジは、OSI基本参照モデルのデータリンク層でLANをつなぐ装置\n・ブリッジの役割は、データのMACアドレスを見て中継可否を判断すること\n・レイヤー 2スイッチ（スイッチングハブ）とは、OSI基本参照モデルのデータリンク層で複数のLANをつなぐ装置\n・ルーターは、OSI基本参照モデルのネットワーク層でLANをつなぐ装置\n・ルーターの役割は、データのIPアドレスを見て経路選択を行うこと\n・レイヤー 3スイッチとは、レイヤー 2スイッチにルーティング機能を加えた装置','/home/air/goalskill_t/back/img/section10/34.png','なお、ゲートウェイは、先述の３つのネットワーク機器に比べると、出題頻度は低いいです。'),(47,'07','通信プロトコル','NTP','通信プロトコルにはさまざまな種類があるのですが、基本情報技術者試験で頻出するのは「NTP」です。NTPについては、必ず覚えておいてください。 NTP (Network Time Protocol) とは、コンピュータの時刻を合わせるためのプロトコルです。コンピュータにおいて、時刻はとても重要です。パソコン同士で時間が異なると、メールの受信や送信の時間がずれるなど、不具合を起こす可能性があります。 パソコンには２つの時計があります。１つはOSが管理する時計、もう１つはパソコン内部の時計です。OSが管理する時計はメモリ上にあるので、パソコンの電源をオフにすると消えてしまいます。一方、パソコン内部の時計はバックアップのバッテリーで動いているので、電源をオフにしても動き続けています。 しかし、パソコン内部の時計も、徐々にではありますが、時刻がずれます。そこで、パソコンはNTPを使って、正確な時刻を保持している「NTPサーバ」と呼ばれるサーバにアクセスして、パソコン内部の時刻を同期して修正します。','試験にはコレが出る！\n\nNTPとは、TCP/IPのネットワークにおいて、サーバとクライアント間で時刻を合わせるためのプロトコル',NULL,NULL),(48,'08','インターネット応用','電子メール','電子メールはとても便利なサービスであるため、現在では仕事とプライベートの両方で広く利用されています。電子メールの宛先を記入する欄は次の３つに分かれています。それぞれの役割を理解したうえで使い分けることが大切です。',NULL,'/home/air/goalskill_t/back/img/section10/36.png','例えば、取引先に見積もりを送信する場合、To (宛先) に取引先の担当者を記入し、Ccに自分の上司を記入します。Ccは「Carbon Copy」（複写された文章）の略です。\nまた、Bccの役割は、基本的にはCcと同じなのですが、Bccに記入されたメールアドレスは非公開になるため、メールの送信者以外は確認できません。Bccは「Blind Carbon Copy」（隠されたCc）の略です。'),(49,'08','インターネット応用','MIME','MIME（Multipurpose Internet Mail Extensions）とは、電子メールで文字以外の画像や音声、動画といった、さまざまな形式のデータを転送するための規格です。 電子メールはアメリカで生まれた技術です。 英語圏で生まれた技術であるため、電子メールは半角英数字のテキストしか送ることができません。 通常は電子メールで日本語は送れないのです。 そこで、日本語の電子メールを送るために、わざわざ日本語を英語の文字コードに変換して送信しています。 このときに使われる規格がMIMEです。 電子メールではテキストしか送れないので、静止画、音声、動画などのマルチメディアも一度、英語の文字コードに変換してから送っています。 このMIMEがあるおかげで、画像データなどのテキスト形式でないファイルでも電子メールで転送することができます。',NULL,NULL,NULL),(50,'08','インターネット応用','S/MIMEとは','MIMEを拡張した規格にS/MIMEがあります。 S/MIME（Secure/Multipurpose Internet Mail Extensions）とは、電子メールを暗号化する規格です。 S/MIMEでは電子メールを公開鍵暗号方式で暗号化し、それにデジタル署名を付加して送信します。 このようにS/MIMEを使って電子メールを暗号化することで、盗聴やなりすましの防止、改ざんの検知などができます。','試験にはコレが出る！\n\n・MIMEとは、電子メールでさまざまな形式のデータを転送できる規格\n・S/MIMEとは、電子メールを暗号化する規格',NULL,NULL);

--
-- Table structure for table `section_11`
--

CREATE TABLE `section_11` (
  `id` int NOT NULL AUTO_INCREMENT,
  `chapter` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci,
  `main_title` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci,
  `sub_title` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci,
  `theory_description` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci,
  `tip` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci,
  `img` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci,
  `img_description` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=85 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

--
-- Dumping data for table `section_11`
--

INSERT INTO `section_11` VALUES (1,'01','情報セキュリティの脅威','情報セキュリティとは','情報セキュリティとは、情報資産を守ることです。また、この情報セキュリティを脅かすリスク要因のことを「脅威」といいます。 情報セキュリティに関する脅威は、大きく次の３つに分類できます。 \n（１）人的脅威 \n（２）技術的脅威 \n（３）物理的脅威','学習のポイント 語源を知る \nこれから、各脅威について具体的な用語を説明しますが、情報セキュリティの脅威の具体例は非常に多いため、そのすべての用語を１つずつ丸暗記する方法は得策ではありません。 そこで本書では「語源で覚える」ことを提案します。情報セキュリティ関連の用語の中には、一見しただけでは何を意味しているのかわかりづらい用語もあります。その場合でも、語源を知ると納得できることが多いと思います。一度試してみてください。',NULL,NULL),(2,'01','情報セキュリティの脅威','(1) 人的脅威','人的脅威とは、人によって引き起こされる脅威です。例えば、社員が誤操作でデータを消してしまうことや、悪意を持った人がコンピュータに不正アクセス（p.723）することです。これらはすべて人的脅威となります。',NULL,NULL,NULL),(3,'01','情報セキュリティの脅威','ソーシャルエンジニアリング','ソーシャルエンジニアリングとは、特別なツールや技術は使わず、人間の心理的な隙を利用して機密情報を手に入れることです。基本情報技術者試験では、過去に次のような具体例が出題されています。 \n・システム管理者などを装い、利用者に問い合わせてパスワードを取得する \n・緊急事態を装って組織内部の人間からパスワードや機密情報を入手する\n\n[語源] ソーシャルエンジニアリングには「社会工学」という意味もあります。社会工学とは、社会問題を理工学的なアプローチ（数学や物理など）で解決しようとする学問です。これに対して、人的脅威の１つであるソーシャルエンジニアリングは、まったく理工学的ではありません。社会工学という真逆の意味の言葉を、皮肉的に使用した用語だといわれています。',NULL,NULL,NULL),(4,'01','情報セキュリティの脅威','不正のトライアングル','人的脅威に関連して「不正のトライアングル」という理論があります。不正のトライアングルとは、人が不正を働くのは「機会」「動機」「正当化」の３つの条件が揃ったときであるという理論です。',NULL,'/home/air/goalskill_t/back/img/section11/1.png','試験にはコレが出る！ \n・情報セキュリティに関する脅威は「人的脅威」「技術的脅威」「物理的脅威」の３つに分類できる \n・ソーシャルエンジニアリングとは、特別なツールや技術は使わず、人間の心理的な隙を利用して機密情報を手に入れること。具体例は、システム管理者などを装い、利用者に問い合わせてパスワードを取得すること \n・不正のトライアングルの条件は以下の３つ \n　・機会（不正行為ができる環境）\n　・動機（不正行為をしたい理由） \n　・正当化（不正行為も仕方ないと考え事由）'),(5,'01','情報セキュリティの脅威','(2) 技術的脅威','技術的脅威とは、技術的な手段によって引き起こされる脅威です。技術的脅威も元をたどれば人間が原因なので、人的脅威ともいえそうですが、明確な違いがあります。それは「最終的な手段が人によるものか、技術によるものか」です。最終的な手段が技術によるものは、技術的脅威に分類されます。',NULL,NULL,NULL),(6,'01','情報セキュリティの脅威','攻撃の準備','技術的脅威は数が多いので、脅威の種類ごとにグループ分けして解説します。まずは、攻撃の準備に関連する脅威から説明します。',NULL,NULL,NULL),(7,'01','情報セキュリティの脅威','ポートスキャン','ポートスキャン（Port Scan）とは、サーバ上で動いているサービス（アプリケーションソフトウェア）を調査するための技術です。 サーバ上で動作しているサービスには、それらを識別するために、Webサービスには80番、メール送信には587番などのようなポート番号（p.353）が割り振られています。ポートスキャンの目的は、サーバが持つこのポート番号に、順番にアクセスし、攻撃できそうなサービスがあるかどうかの事前調査をすることです。\n [語源] ポートスキャン（Port Scan）は「ポート番号を走査（スキャン）する」という意味です。',NULL,NULL,NULL),(8,'01','情報セキュリティの脅威','セキュリティホール','セキュリティホール（Security Hole）とは、不正アクセスなどに利用される、システムに存在する欠陥のことです。「脆弱性」とも呼ばれます。悪意のある人は、このセキュリティホールを見つけて、攻撃を仕掛けます。\n [語源] Security Holeは「セキュリティ上」（Security）の「抜け穴」（Hole）という意味です。','試験にはコレが出る！ \n・ポートスキャンの目的は、攻撃できそうなサービスがあるかどうかの事前調査 \n・セキュリティホールは、システムに存在する欠陥',NULL,NULL),(9,'01','情報セキュリティの脅威','パスワードを割り出す攻撃','ユーザー認証に必要なIDやパスワードなどを割り出す攻撃には、「ブルートフォース攻撃」「辞書攻撃」「パスワードリスト攻撃」などがあります。',NULL,NULL,NULL),(10,'01','情報セキュリティの脅威','ブルートフォース攻撃','ブルートフォース攻撃（Brute Force Attack：別名、総当たり攻撃）とは、パスワードとして考えられる文字列のすべての組合せを実行することで、パスワードを割り出す攻撃です。 \n[語源] Brute Forceは「力ずくの」という意味です。特別な工夫をせずに、単にすべての組合せを試すことから命名されました。',NULL,NULL,NULL),(11,'01','情報セキュリティの脅威','辞書攻撃','辞書攻撃（Dictionary Attack）とは、辞書や人名録などに載っているすべての単語を使って、ユーザー認証のパスワードを割り出す攻撃です。 [語源] パスワードを割り出すために「辞書に掲載されている単語」などを使うことから命名されました。',NULL,NULL,NULL),(12,'01','情報セキュリティの脅威','パスワードリスト攻撃','パスワードリスト攻撃（List Based Attack）とは、他のサービスから不正に入手したIDとパスワードの一覧を使って、ユーザー認証を試みる攻撃です。\n [語源] 不正アクセスにIDとパスワードの一覧（パスワードリスト）を使うことから命名されました。','試験にはこれが出る！ \n・ブルートフォース攻撃は、文字列のすべての組合せを試す \n・辞書攻撃は、辞書に載っているすべての単語を試す \n・パスワードリスト攻撃は、他のサービスから不正に入手したIDとパスワードの一覧を試す',NULL,NULL),(13,'01','情報セキュリティの脅威','マルウェアによる攻撃','マルウェア（Malware）とは、悪意のあるソフトウェアの総称です。これから解説する「ボット」「スパイウェア」「ランサムウェア」「キーロガー」「バックドア」などはすべて、マルウェアの一種です。また「コンピュータウイルス」もマルウェアの一種です。マルウェアは簡単に複製できるので、世界規模で攻撃が発生した事例もあります。 \n[語源] Malwareとは、「Malicious」（悪意ある）と「Software」（ソフトウェア）をつなげた造語です。',NULL,NULL,NULL),(14,'01','情報セキュリティの脅威','ボット','ボット（Bot）とは、攻撃者から遠隔で指令を受けて動作するプログラムです。通常、攻撃者はボットを感染させたPCを遠隔から操作します。 \n[語源] Botは「Robot」の略称です。感染させたコンピュータをロボットのように操ることから、このように呼ばれるようになりました。',NULL,NULL,NULL),(15,'01','情報セキュリティの脅威','スパイウェア','スパイウェア（Spyware）とは、利用者に気づかれないように個人情報などを収集するプログラムです。\n [語源] Spywareは「Spy」（諜報員）と「Software」をつなげた造語です。',NULL,NULL,NULL),(16,'01','情報セキュリティの脅威','ランサムウェア','ランサムウェア（Ransomware）とは、PCやファイルを使用不能にしたうえで、回復のための金銭（身代金）を要求するプログラムです。 ランサムウェアに感染すると勝手にファイルやデータが暗号化され、正常にアクセスできなくなります。 \n[語源] Ransomwareは「Ransom」（身代金）と「Software」をつなげた造語です。',NULL,NULL,NULL),(17,'01','情報セキュリティの脅威','キーロガー','キーロガー（Keylogger）とは、キーボード入力を記録するプログラムです。本来、キーロガーはソフトウェアの動作確認などに使われます。 一方、キーロガーが悪用されるケースもあります。具体例としては、ネットバンキングで利用者が入力したパスワードを収集することなどです。 \n[語源] Keyloggerは、キーボードの「Key」と「Log」（利用記録）をつなげた造語です。',NULL,NULL,NULL),(18,'01','情報セキュリティの脅威','バックドア','バックドア（Backdoor）とは、システムに不正アクセスするための裏口です。 例えば、悪意のある人が、ユーザー認証が必要なWebサイトにバックドアとなるURLを設置したとします。すると、ユーザー認証をせずに、このURLから不正アクセスができてしまいます。\n [語源] Backdoorは「裏口」という意味です。','試験にはこれが出る！ \n・マルウェアは、悪意のあるソフトウェアの総称 \n・ボットは、攻撃者から遠隔で指令を受けて動作するプログラム \n・スパイウェアは、利用者に気づかれないように個人情報などを収集するプログラム \n・ランサムウェアは、身代金を要求するプログラム \n・キーロガーは、キーボード入力を記録するプログラム \n・バックドアの悪用例は、ユーザー認証を回避できるURLからの不正アクセス',NULL,NULL),(19,'01','情報セキュリティの脅威','Webサイトに仕掛けられる攻撃','私たちが普段利用しているWebサイトにも、何らかの攻撃が仕掛けられる可能性があります。ここでは基本情報技術者試験に出題される可能性の高い６つの攻撃を解説します。',NULL,NULL,NULL),(20,'01','情報セキュリティの脅威','フィッシング','フィッシング（Phishing）とは、利用者を偽サイトに誘導し、個人情報を入力させて、それらを不正に取得することです。 フィッシングの具体的な手法としては、銀行を装った偽のWebサイトの開設があります。悪意のある人は偽のWebサイトのリンクがついた電子メールを利用者に送ります。利用者はリンクの飛び先が本物の銀行のWebサイトだと信じ込み、暗証番号やクレジットカード番号などを入力してしまいます。こうすることで、悪意のある人が個人情報を盗み取ることができます。\n [語源] Phishingは「Phreaking」（電話回線の不正使用）と「Fishing」（釣り）をつなげた造語です（諸説あります）。「被害者を騙して釣る」というニュアンスです。',NULL,NULL,NULL),(21,'01','情報セキュリティの脅威','ドライブバイダウンロード','ドライブバイダウンロード（Drive-by Download）とは、利用者が悪意のあるWebサイトを閲覧するだけで、マルウェアがダウンロードされる攻撃です。 [語源] Drive-byは、「車で立ち寄る」ことを意味します。Webサイト上のボタンをクリックしたわけでなく、単にWebサイトを閲覧しただけ（立ち寄っただけ）でマルウェアがダウンロードされることに由来します。',NULL,NULL,NULL),(22,'01','情報セキュリティの脅威','SEOポイズニング','SEOポイズニング（Search Engine Optimization Poisoning）とは、悪意のあるサイトを検索サイトの検索結果の上位に表示させ、より多くの利用者に閲覧させることです。SEOとは、検索エンジンの検索結果の上位にサイトが表示されるために行うさまざまな工夫です。このSEOを不正な手法で行うのがSEOポイズニングです。 \n[語源] Poisoningは「毒を盛る」という意味です。「検索サイトの検索結果に毒を盛る」ということを表しています。',NULL,NULL,NULL),(23,'01','情報セキュリティの脅威','DNSキャッシュポイズニング','DNSキャッシュポイズニング（Domain Name System Cache Poisoning）とは、DNSサーバにキャッシュされているドメイン名とIPアドレスの対応を書き換える手法です。こうすることで、ユーザーを偽サイトに誘導することができます。 \n[語源] Poisoningは「毒を盛る」という意味です。「DNSサーバに毒を盛る」ということを表しています。',NULL,NULL,NULL),(24,'01','情報セキュリティの脅威','SQLインジェクション','SQLインジェクション（Structured Query Language Injection）とは、Webアプリケーション上で、不正なSQL文を実行することで、データベースを改ざんしたり、不正にデータを取得したりする攻撃です。この攻撃によってデータベースに保存されているクレジットカードなどの情報が盗まれてしまうことがあります。\n [語源] SQL Injectionは、SQL文の中に不正なSQL文が注入（Injection）されるので、このように呼ばれます。',NULL,NULL,NULL),(25,'01','情報セキュリティの脅威','クロスサイトスクリプティング','クロスサイトスクリプティング（Cross Site Scripting）とは、Webページにユーザーの入力データをそのまま表示するフォームがあるときに、第三者が悪意あるスクリプトをそのフォームに埋め込むことで、cookieなどのデータを盗み出す攻撃です。\n [語源] Cross Site Scriptingは「サイトを横断した」（Cross Site）、「スクリプト処理」（Scripting）という意味の造語です。',NULL,NULL,NULL),(26,'01','情報セキュリティの脅威','その他の攻撃','技術的脅威には他にもたくさんの種類がありますが、ここでは基本情報技術者試験に出題される可能性の高い、その他の３つの攻撃を解説します。',NULL,NULL,NULL),(27,'01','情報セキュリティの脅威','スパム','スパム（Spam）とは、受信者の承諾なしに無差別に送付される電子メールのことです。 \n[語源] スパム（Spam）は肉の缶詰のことです。イギリスのコメディ番組の中で、レストランにいた客が、他の客からスパムという言葉を連呼されて迷惑を受けたことから「たくさんの迷惑もの＝スパム」と呼ぶようになり、迷惑メールをスパムと呼ぶようになりました。',NULL,NULL,NULL),(28,'01','情報セキュリティの脅威','DoS攻撃','DoS攻撃（Denial of Service Attack）とは、電子メールやWebサーバへの要求（Webリクエスト）などを大量に送りつけて、ネットワーク上のサービスを提供不能にすることです。 また、１つのコンピュータからではなく、複数のコンピュータから一斉にDoS攻撃を行うことをDDoS攻撃（Distributed Denial of Service Attack：分散DoS攻撃）といいます。DDoS攻撃ではボットネットと呼ばれる、多数の感染したボット（p.392）を使って攻撃を行います。これらのボットはC&Cサーバと呼ばれる中央サーバからの指示を受けて、ターゲットを一斉に攻撃します。C&Cサーバの役割は「どの対象を、いつ攻撃するか」といった具体的な命令をボットに送ることです。 \n[語源]「Denial of Service」とは「サービス妨害」という意味です。',NULL,NULL,NULL),(29,'01','情報セキュリティの脅威','ディレクトリトラバーサル攻撃','ディレクトリトラバーサル攻撃（Directory Traversal Attack）とは、攻撃者がパス名を使ってファイルを指定し、管理者の意図していないファイルを不正に閲覧する手法です。 親ディレクトリを表す「..」などをつけてパスを指定することで、本来公開されていないディレクトリへのアクセスを試みます。\n [語源] Directory Traversalは、「ディレクトリ」（Directory）を「横断する」（Traversal）という意味です。','試験にはこれが出る！ \n・スパムは、受信者の承諾なしに無差別に送付される電子メール \n・DoS攻撃は、ネットワーク上のサービスを提供不能にすること \n・ディレクトリトラバーサル攻撃は、管理者の意図していないファイルを不正に閲覧する手法',NULL,NULL),(30,'01','情報セキュリティの脅威','(3) 物理的脅威','物理的脅威とは、ネットワークなどを使わない直接的な手段によって引き起こされる脅威です。 例としては、水害、落雷、地震、大気汚染、爆発、火災、侵入、盗難などがあります。なお、物理的脅威の事例はあまり出題されません。そのため、本書でも具体例は割愛します。',NULL,NULL,NULL),(31,'02','暗号技術の基本','暗号技術とは','前節では「情報セキュリティの脅威」を解説しました。ここからは、それらの脅威への対応策を解説します。 　まずは「暗号技術」です。暗号技術は情報セキュリティ対策において最も重要であり、かつ基本的な技術です。基本情報技術者試験でも必ずといっていいほど出題される技術なので、基本的な仕組みをきちんと理解するようにしてください。頻出の用語は「公開鍵暗号方式」と「共通鍵暗号方式」です。これらの概要や特徴は必ず押さえておいてください。','学習のポイント \n暗号化と復号 基本情報技術者試験では、暗号文を平文に戻すことを「復号化」とはいわず、単に「復号」といいます。','/home/air/goalskill_t/back/img/section11/2.png',NULL),(32,'02','暗号技術の基本','共通鍵暗号方式','共通鍵暗号方式とは、暗号化と復号で同じ鍵を使う暗号化方式です。共通鍵暗号方式は、みなさんの家の玄関の鍵と同じ鍵方式です。鍵を閉めるときと開けるときで同じ鍵を使います。','試験にはこれが出る！ \n共通鍵暗号方式では、暗号化と復号で同じ鍵を使う','/home/air/goalskill_t/back/img/section11/3.png','共通鍵を用いて暗号化すると、暗号化された文章を他者（上図では次郎くん）は読むことができません。一方で、暗号化で使ったものと同じ鍵を持っている花子さんは文章を復号できるので、文章を読むことができます。 このように、暗号化と復号で同じ鍵を使って文章を暗号化したり、復号したりする技術を「共通鍵暗号方式」といいます。'),(33,'02','暗号技術の基本','共通鍵暗号方式の欠点','共通鍵暗号方式の欠点は「相手に確実・安全に共通鍵を送る方法がない」ということです。先述したように、共通鍵暗号方式では「暗号化に使用した鍵があれば、誰でも文章を復号できる」ため、鍵が第三者に奪われてしまうと暗号化した意味がありません。文章を読ませたい人にだけ、共通鍵を渡す必要があります。 しかし、実はこの「鍵を送る作業」が大変なのです。情報セキュリティ上のさまざまな脅威がある中で、共通鍵を確実・安全に送る方法はありません。逆説的ではありますが、そもそも、共通鍵を安全に送ることができるのであれば、わざわざ文章を暗号化する必要もありません。その方法（共通鍵を安全に送る方法）で、平文のままの手紙を送ればよいのです。これが共通鍵暗号方式の決定的な欠点です。',NULL,NULL,NULL),(34,'02','暗号技術の基本','公開鍵暗号方式','共通鍵暗号方式の欠点を補うべく登場したのが、公開鍵暗号方式です。公開鍵暗号方式とは、公開鍵と秘密鍵の２つの鍵を使う暗号化方式です。',NULL,'/home/air/goalskill_t/back/img/section11/4.png','公開鍵暗号方式の最大の特徴は、共通鍵暗号方式では必死に隠していた「鍵」を公開してしまう点にあります。では、公開した鍵でいったいどのようにして文章を読めなくするのでしょうか。'),(35,'02','暗号技術の基本','公開鍵暗号方式の仕組み','公開鍵暗号方式では、公開鍵を使って平文を暗号化します。一方で、暗号文は秘密鍵を使って復号します。ここで重要なのが、公開鍵暗号方式における暗号化と復号は「ペアとなった鍵」でしか行えない、ということです。これは公開鍵暗号方式の大原則となる仕組みなので、しっかりと覚えておいてください。',NULL,'/home/air/goalskill_t/back/img/section11/7.png','花子さんが作った公開鍵は公開されているので誰でも入手できます。そのため、誰でも文章を暗号化できます。太郎くんも、次郎くんも暗号化できます。 一方、秘密鍵は花子さんしか持っていません。そのため、暗号化された文章を復号できるのは花子だけです。この「暗号化は誰でもできるが、復号は特定の人しかできない」というのが、公開鍵暗号方式の最も重要な仕組みです。この仕組みによって、共通鍵暗号方式の欠点であった「誰にも知られてはいけない鍵を送る」作業を行うことなく、平文を暗号化し、相手に届けることができます。'),(36,'02','暗号技術の基本','公開鍵暗号方式の欠点','公開鍵暗号方式にも欠点があります。それは「誰でも暗号化できる」ことによるなりすましです。例えば、上図において、次郎くんが太郎くんになりすまして、花子さんに「花子なんか大嫌い。太郎より」という手紙を送ることが可能です。このような「なりすまし」を防ぐための技術が次節で解説する「デジタル署名」です。また公開鍵暗号方式は共通鍵暗号方式に比べ、暗号化と復号に時間がかかることも欠点です。',NULL,NULL,NULL),(37,'02','暗号技術の基本','ハイブリッド暗号方式','共通鍵暗号方式に欠点があるならば、そもそも共通鍵暗号方式を学ぶ必要などないように思います。しかし実際は、共通鍵暗号方式のほうが公開鍵暗号方式より処理が高速なので、現在でも広く使われています。特にデータ量の大きい平文の暗号化・復号では、高速な共通鍵暗号方式を使うことで処理にかかる時間を短縮することができます。 では、どのように使われているかというと、まず太郎くんが平文を「共通鍵」で暗号化します（①）。次に太郎くんは花子さんの「公開鍵」を使って「共通鍵」を暗号化します（②）。そして暗号文と暗号化した共通鍵を花子さんに渡します。花子さんは花子さんの「秘密鍵」を使って「共通鍵」を復号します（③）。最後に「共通鍵」で暗号文を復号します（④）。これで、安全に共通鍵を相手に渡すことができます。 このように、共通鍵暗号方式と公開鍵暗号方式を組み合わせた暗号化方式のことを「ハイブリッド暗号方式」といいます。','試験にはこれが出る！ \n・公開鍵暗号方式では、受信者の公開鍵で暗号化する \n・公開鍵暗号方式では、受信者の秘密鍵で復号する \n・共通鍵暗号方式は、暗号化や復号に必要な時間が短い \n・ハイブリッド暗号方式では、共通鍵を公開鍵暗号方式で暗号化して相手に送り、データの暗号化・復号を共通鍵暗号方式で行う','/home/air/goalskill_t/back/img/section11/8.png',NULL),(38,'02','暗号技術の基本','暗号化アルゴリズム','暗号化に使われるアルゴリズム（解法）のことを「暗号化アルゴリズム」といいます。一口に「共通鍵暗号方式」といった場合でも、それを実現しているアルゴリズムは複数種類あるので注意してください。',NULL,'/home/air/goalskill_t/back/img/section11/9.png','なお、複数種類ある暗号化アルゴリズムのうち、基本情報技術者試験に出題されるのは「AES」と「RSA」です。この２つについては確実に習得しておいてください。'),(39,'02','暗号技術の基本','AES','AES（Advanced Encryption Standard）は、アメリカで規格化された、現在主流の共通鍵暗号方式の暗号化アルゴリズムです。AES以前に使われていたDESに安全性の問題があったので、それに代わる暗号化アルゴリズムとして誕生しました。基本情報技術者試験では「AESは共通鍵暗号方式に分類される」という点がよく出題されます。',NULL,NULL,NULL),(40,'02','暗号技術の基本','RSA','RSA（Rivest Shamir Adleman）は、現在主流の公開鍵暗号方式の暗号化アルゴリズムの１つです。RSAという名称は、この暗号化アルゴリズムを発明した３人の名前（Rivest, Shamir, Edelman）の頭文字です。RSAは、巨大な数の素因数分解が難しいことを利用した暗号化アルゴリズムです。 なお、素因数分解のことが基本情報技術者試験で問われることはありませんが、RSAを説明する際のキーワードとして記載されることがあるので、「素因数分解といえば、RSA」という点は押さえておいてください。','学習のポイント もう少し詳しく！ \n暗号の危殆化 危殆化（きたいか）とは、危険な状態になることです。聞き慣れないこの言葉は、情報セキュリティ分野では特に暗号技術の安全性に関して使われます。 「暗号の危殆化」とは、暗号技術や暗号化アルゴリズムが、技術の進歩や脆弱性の発見によって、安全性を失う状況を示す言葉です。例えば、以前は解読するのに何年もかかった暗号が、コンピュータの性能が上がったことで、短時間で解読できるようになることがあります。他にも、ある暗号化アルゴリズムに計算上の弱点（脆弱性）が見つかり、理論的に破られる方法が発見されることもあります。こうした場合は、その暗号はもはや安心して使えないため、「その暗号は危殆化した」とされて、より安全な暗号への切り替えが求められます。',NULL,NULL),(41,'03','デジタル署名と認証局','ハッシュ関数とダイジェスト','デジタル署名を理解するには、前提知識として「ハッシュ関数」と「ダイジェスト」のことを知っておく必要があるので、まずはこれらについて説明します。',NULL,NULL,NULL),(42,'03','デジタル署名と認証局','ハッシュ関数','ハッシュ関数については「ハッシュ探索法」(p.117)でも解説しましたが、ここで改めて復習します。ハッシュ関数とは、文字列を入力すると、一定の長さの値を出力する関数です。同じ文字列を入力する限り、必ず同じ値が出力されます。一方、入力する文字列が少しでも異なると、出力される値は大きく異なります。また、ハッシュ関数によって出力される値を「ダイジェスト」といいます。','もう少し詳しく！\n「ハッシュ」の意味 ハッシュ（Hash）という言葉には「切り刻んでごちゃ混ぜにする」という意味があります。','/home/air/goalskill_t/back/img/section11/10.png',NULL),(43,'03','デジタル署名と認証局','ダイジェスト','ダイジェストとは、メッセージを短くまとめた値です。データサイズは一般的に256桁などの固定長のビット列です。メッセージをハッシュ関数に入力すると、ダイジェストを出力されます。 なお、メッセージからダイジェストを生成することはできますが、ダイジェストを元のメッセージに戻すことはできません。','もう少し詳しく！\nダイジェストの他の呼び名 ダイジェストは、基本情報技術者試験では「メッセージダイジェスト」や「ハッシュ値」と呼ばれることもあります。',NULL,NULL),(44,'03','デジタル署名と認証局','SHA','ハッシュ関数のアルゴリズムにはさまざまな種類があります。その中でもSHA（Secure Hash Algorithm）がよく使われます。SHAにはSHA-1、SHA-2…などのバージョンがありますが、現在はSHA-2が一般的です。 なおSHA-2のうち、256ビットの長さのダイジェストを出力するハッシュ関数のアルゴリズムをSHA-256といいます。 基本情報技術者試験ではSHA-256の定義が問われるので、覚えておいてください。\n\n以上が、デジタル署名を理解する際に必要となる「ハッシュ関数」と「ダイジェスト」の基礎知識です。それでは、デジタル署名について解説していきます。','試験にはこれが出る！ \nSHA-256は、256ビットの長さのダイジェストを出力するハッシュ関数のアルゴリズム',NULL,NULL),(45,'03','デジタル署名と認証局','デジタル署名','デジタル署名とは、公開鍵暗号方式を使って、データに電子的に署名を行うことです。 デジタル署名は、企業がインターネットを使って文書を送る際に使われます。従来の紙の契約書の場合は、印鑑やサインによって、それらの書類が本物であることを証明しますが、データには印鑑を押したり、サインを書いたりすることができないため、デジタル署名を使います。 \nデジタル署名の大原則は次のとおりです。\n\n「秘密鍵で暗号化した文章は、ペアとなる公開鍵でしか復号できない。」 公開鍵暗号方式の大原則（p.406）と比べ、秘密鍵と公開鍵の位置が入れ替わっている点に注目してください。 公開鍵暗号方式の特徴は「誰もが暗号化でき、特定の人しか復号できない」でしたが、デジタル署名の特徴は「特定の人のみ暗号化でき、誰でも復号できる」となります。',NULL,'/home/air/goalskill_t/back/img/section11/11.png',NULL),(46,'03','デジタル署名と認証局','デジタル署名の利用の流れ','デジタル署名の利用の流れは次ページの図のとおりです。このようにしてデジタル署名を利用すれば、第三者が署名を偽造しても（なりすまし）、検証の際に検知できます。なぜなら、適当な署名を作成しても、復号したダイジェストが同じにならないからです。また、データの送信途中で「好き」というメッセージを「嫌い」に書き換えると、別のダイジェストになるため、検証の際に「改ざん」を検知できます。\n\nこのようにデジタル署名の技術を利用すると、文章の作成者（文章を暗号化した人）を特定できるため、公開鍵暗号方式の欠点であった「なりすまし」を検知できます。 また同時に「内容の改ざん」も検知できます。 そのため、デジタル署名はインターネットを使った文書のやり取りで広く利用されています。 なお、お気づきの人も多いと思いますが、デジタル署名にはメッセージそのものを暗号化する機能はないため、メッセージが漏えいした場合、その内容は第三者も閲覧できます。 この点には注意が必要です。 このため通常は、公開鍵暗号方式と組み合わせることで、第三者が読めないようにして文書を送信します。','試験にはこれが出る！ \n・デジタル署名では、メッセージダイジェストを送信者の秘密鍵で暗号化する \n・デジタル署名では、デジタル署名を送信者の公開鍵で復号する \n・デジタル署名を使うと、なりすましやデータの改ざんを検知できる','/home/air/goalskill_t/back/img/section11/12.png','①まず太郎くんが「好き」と書いたメッセージを、ハッシュ関数を使ってダイジェストにする\n②このダイジェストを「太郎の秘密鍵」を使って暗号化し、「署名」を作る\n③太郎くんが、「好き」というメッセージに署名を付けて花子さんに送信する \n④花子さんは、「好き」と書かれたメッセージを、ハッシュ関数を使ってダイジェストにする \n⑤また、メッセージについてきた署名を「太郎の公開鍵」を使って復号し、ダイジェストにする \n⑥最後に、２つのダイジェストを比較して同じであれば太郎くんが送ったメッセージであると証明される'),(47,'03','デジタル署名と認証局','認証局とデジタル証明書','認証局とは、データに付与されているデジタル署名が、署名者本人のものであることを証明する第三者機関です。 認証局は、現実世界における役所と似ています。 例えば、印鑑は誰でも買うことができるので、田中さんが「高橋」と書かれた印鑑を購入して捺印することも可能です。 これは一種の「なりすまし」です。 このような「なりすまし」を防ぐために、現実世界には「印鑑登録」という仕組みがあり、印鑑登録を行うことで、第三者機関である役所が、その印鑑が本人のものであることを証明してくれます。 インターネットの世界での印鑑登録証明書に相当するのが「デジタル証明書（電子証明書）」です。 デジタル証明書は、公開鍵の所有者が本人であることを証明するデータであり、認証局はこのデジタル証明書を発行する第三者機関です。 なお、基本情報技術者試験では、認証局のことを「CA（Certification Authority）」と表記する場合もあります。',NULL,NULL,NULL),(48,'03','デジタル署名と認証局','認証局とデジタル証明書の仕組み','デジタル証明書を使ったやり取りを解説します。 次ページの図を見ながら読み進めてください。',NULL,'/home/air/goalskill_t/back/img/section11/13.png','①まず、太郎くんが認証局に公開鍵を送る \n②認証局は、太郎くんが送った情報を元にデジタル証明書を発行する \n③デジタル証明書には太郎くんの公開鍵と認証局のデジタル署名が含まれる \n④太郎くんは、デジタル証明書を花子さんに送る \n⑤花子さんは、デジタル証明書から公開鍵を取り出す。また、デジタル証明書についている認証局のデジタル署名から、その公開鍵が太郎くんのものであると信用できる（次郎くんはデジタル証明書を持っていない）'),(49,'03','デジタル署名と認証局','PKI','上図のように、認証局を使って「なりすまし」を防ぐ仕組みのことを「PKI」といいます。 PKI（Public Key Infrastructure：公開鍵基盤）とは、公開鍵暗号方式やデジタル署名で使用する「公開鍵」の持ち主を保証するためのインフラ（基盤）です。 別のいい方をすると「PKIとは、公開鍵の正当性を認証局に保証してもらう仕組みのこと」です。','試験にはこれが出る！\n認証局の役割は、利用者やサーバの公開鍵を証明するデジタル証明書の発行',NULL,NULL),(50,'04','リスクマネジメント','リスクマネジメントとは','リスクマネジメント（Risk Management）とは、会社の活動に伴って発生するあらゆるリスクを管理し、そのリスクによる損失を最小の費用で食い止めるためのプロセスです。',NULL,NULL,NULL),(51,'04','リスクマネジメント','リスクマネジメントの必要性','企業はさまざまなリスクから会社の資産を守るために、いろいろな対策を行います。本来であれば、考えうるすべてのリスクに対して、適切な対策を実行すべきです。しかし、実際に対策するにはヒト、モノ、カネ、情報などの経営資源が必要になるため、すべてのリスクに対応していては費用がいくらあっても足りません。 そこで必要になるのが、リスクマネジメントです。リスクマネジメントでは、リスク対策の費用対効果を最大化するために、さまざまなプロセスを実施します。',NULL,NULL,NULL),(52,'04','リスクマネジメント','リスクマネジメントのプロセス','リスクマネジメントでは、次の順番で各プロセスを実施します。',NULL,'/home/air/goalskill_t/back/img/section11/14.png','なお、上図の４つのプロセスのうち、前半３つのプロセス（リスク特定、リスク分析、リスク評価）を合わせて「リスクアセスメント」といいます。アセスメント（assessment）とは「評価」という意味です。'),(53,'04','リスクマネジメント','4つのリスク対応策','リスクマネジメントの最後のプロセスであるリスク対応では、明確になったリスクに対して、どんな対策を行うかを決めます。 リスク対応策には次の４種類があります。','試験にはコレが出る！ \n・リスクマネジメントの４つのプロセスが出題される 　\nリスク特定→リスク分析→リスク評価→リスク対応 \n・リスク回避は、リスクに関わる作業をしないこと\n・リスク低減は、リスクの発生確率を下げること \n・リスク共有は、リスクを自社から他社へ移すこと \n・リスク保有は、リスクをそのまま受け入れること','/home/air/goalskill_t/back/img/section11/15.png',NULL),(54,'04','リスクマネジメント','BCMとBCP','リスクマネジメントに関連する用語に「BCM」と「BCP」があります。これらは基本情報技術者試験によく出題されるので、セットで覚えておいてください。','試験にはコレが出る！ \n・BCMとは、不測の事態でも企業活動を継続するための経営手法 \n・BCPとは、事業をいかに継続するかをまとめた計画','/home/air/goalskill_t/back/img/section11/16.png','BCM（Business Continuity Management：事業継続管理）と、BCP（Business Continuity Plan：事業継続計画）は、企業活動を継続するため（止めないため）のとても重要な管理手法です。 具体的には、システムの二重化や分散配置、および停電に備えた自家発電装置の調達などが挙げられます。'),(55,'05','情報セキュリティマネジメント','ISMS','ISMS（Information Security Management System：情報セキュリティマネジメントシステム）とは、組織の情報資産について、機密性、完全性、可用性の３つをバランスよく維持・改善するための仕組みです。簡単にいうと「ISMSとは、情報セキュリティマネジメントをバランスよく行う仕組み（システム）である」といえます。 「バランスよく」というのは「コストパフォーマンスを考えて」ということです。 先述したように、経営資源は有限なので、考えうるすべてのリスク対策を取ることは不可能です（p.422）。そのため、ISMSにおいてはコストパフォーマンスを考慮することが重要になります。',NULL,NULL,NULL),(56,'05','情報セキュリティマネジメント','ISMS適合性評価制度','ISMSが重要だとわかっても、企業としては具体的に何を行えばいいかわからないこともあります。この問題を解決するために、ISMSは「JIS Q 27001」という規格によって標準化されています。 JIS Q 27001には、適切にISMSを構築するために必要な項目が記載されています。そして、このJIS Q 27001に基づいて、第三者が企業を審査する制度がISMS適合性評価制度です。 ISMS適合性評価制度とは、情報セキュリティマネジメントシステムが適切に構築、運用され、ISMS認証基準の要求事項に適合していることを特定の第三者機関が審査して認証する制度です。','もう少し詳しく！ \n各JIS規格が誕生した時代背景 \nJIS規格は「数字が違うだけ」なので、試験当日まで覚えておくのは大変です。覚える際は「その規格が誕生した時代背景」も一緒に考える方法が有効です。 \nJISは、番号が小さいほど古い規格です。そして上記の３つの規格は約10年ごとに誕生しています。それぞれの時代背景を考えてみましょう。 \nJIS Q 9001（品質マネジメントシステム）が誕生した1980年代は、大量生産で製品を作っていました。そのため、この時代は製品の品質を上げることに力が注がれていました。 \nJIS Q 14001（環境マネジメントシステム）が誕生した1990年代は、大量生産による環境汚染が深刻になっていました。そのため、この時代は環境への影響を改善することに注力していました。 \nJIS Q 27001（情報セキュリティマネジメントシステム）が誕生した2000年代は、コンピュータが普及し始めました。そのため、この時代は情報セキュリティへの関心が高まっていきました。',NULL,NULL),(57,'05','情報セキュリティマネジメント','情報セキュリティマネジメントの三大特性','ISMSは、組織の情報資産について「維持・管理すべき特性」として、主に次の３つを定めています。','試験にはコレが出る！ \n・機密性：認められた人だけが情報にアクセスできること \n・完全性：データが改ざんされていないこと \n・可用性：必要なときにサービスを利用できること','/home/air/goalskill_t/back/img/section11/17.png','なお、基本情報技術者試験では、完全性と可用性の具体例がよく出題されます。ただし、具体例は千差万別なので、上記の過去事例を暗記することは効率的ではありません。本来の意味をしっかりと理解し、そこから正解選択肢を見つけられるようになることが大切です。'),(58,'06','脅威への対策','人的セキュリティ対策','人的セキュリティ対策とは、人によって引き起こされる脅威への対策です。基本情報技術者試験では主に「アクセス権」に関する問題が出題されます。',NULL,NULL,NULL),(59,'06','脅威への対策','アクセス権とは','アクセス権とは、ユーザーごとに与えられる、ファイルへの読み書きの権限です。アクセス権をユーザーごとに設定することで、社員が誤って重要なファイルを削除するなどの人的脅威を防ぐことができます。 アクセス権を割り当てる「ユーザー」の例としては、システム管理者やシステム利用部門などがあります。 一般的に、アクセス権には次の３種類があります。',NULL,'/home/air/goalskill_t/back/img/section11/18.png',NULL),(60,'06','脅威への対策','アクセス権の表し方','アクセス権は通常、８進数で表されます。これは読取り、書込み、実行の３つの権限の組み合わせが８通り（$2^3$通り）あるからです。\n各権限の有無を２進数で表し、読取りを３桁目、書込みを２桁目、実行を１桁目で表します。このとき、「0」が権限なし、「1」が権限ありを意味します。','学習のポイント 表し方が異なる？\n 一般的に、アクセス権は３桁目を「読取り」、２桁目を「書込み」、１桁目を「実行」として表現しますが、基本情報技術者試験では稀に、権限を表す桁が異なる場合があります。p.442の過去問を見て、実際の出題傾向を確認しておいてください。','/home/air/goalskill_t/back/img/section11/19.png','例えば、読取り権限は付与されているが、書込み権限や実行権限が付与されていない場合、2進数表現では「100」になります（上表の下から4行目を参照）。2進数の「100」は、8進数では「4」になります。そのため、あるユーザーにファイルの読取りだけ許可したい場合は、そのユーザーに8進数表記で「4」を設定します。'),(61,'06','脅威への対策','技術的セキュリティ対策','技術的セキュリティ対策とは、技術的な手段によって引き起こされる脅威への対策です。基本情報技術者試験では、攻撃者からサーバを守るための「３つの壁」がよく出題されます。３つの壁とは「ファイアウォール」「IDS/IPS」「WAF」です。',NULL,'/home/air/goalskill_t/back/img/section11/20.png',NULL),(62,'06','脅威への対策','【１つめの壁】ファイアウォール','１つめの壁はファイアウォールです。ファイアウォールとは、インターネットを通じた不正アクセスから社内ネットワークを守るための仕組みです。 ファイアウォールは下図のように、外部ネットワーク（インターネットなど）と内部ネットワーク（社内ネットワークなど）の間に設置されます。通常、ファイアウォールは、ルーターの機能の１つとして搭載されています。',NULL,'/home/air/goalskill_t/back/img/section11/21.png',NULL),(63,'06','脅威への対策','パケットフィルタリング型ファイアウォール','ファイアウォールのうち、パケットのヘッダー情報（ポート番号やIPアドレス）を見て、不正アクセスを判断するファイアウォールのことを「パケットフィルタリング型ファイアウォール」といいます。不正アクセスとみなされたパケットはファイアウォールを通ることができません。',NULL,NULL,NULL),(64,'06','脅威への対策','【２つめの壁】IDSとIPS','２つめの壁は「IDS」と「IPS」です。いずれかを、２つめの壁として使用します。 IDS（Intrusion Detection System：侵入検知システム）とは、サーバに対して外部から不正アクセスがあった際に、システム管理者に通知を行うシステムです。一方、IPS（Intrusion Prevention System：侵入防止システム）とは、サーバに対して外部から不正アクセスがあった際に、システム管理者に通知を行うと同時に、そのアクセスを遮断するシステムです。 つまり、IDSがシステム管理者に通知を行うだけなのに対し、IPSは通知とアクセス遮断までを行います。',NULL,NULL,NULL),(65,'06','脅威への対策','【３つめの壁】WAF','３つめの壁は「WAF」です。WAF（Web Application Firewall）とは、Webアプリケーションの脆弱性を狙った攻撃からシステムを守るための仕組みです。WAFが守るのは社内システムの中の「Webアプリケーション部分」です。 WAFでは、さまざまな「不正アクセスに特徴」をリスト化してパターンファイルにまとめておきます。そして、Webアプリケーションに対するアクセスを監視して、攻撃とみられるパターンを検知したときにそのアクセスを遮断します。','試験にはコレが出る！ \n・ファイアウォールは、インターネットを通じた不正アクセスから社内ネットワークを守るための仕組み \n・IDSは、サーバに対して外部から不正アクセスがあった際に、システム管理者に通知を行うシステム \n・IPSは、サーバに対して外部から不正アクセスがあった際に、システム管理者に通知を行うと同時に、そのアクセスを遮断するシステム \n・WAFは、Webアプリケーションの脆弱性を狙った攻撃からシステムを守るための仕組み',NULL,NULL),(66,'06','脅威への対策','その他のネットワークに関する対策','上記で解説した「３つの壁」は、いずれもネットワークのセキュリティに関する対策です。 基本情報技術者試験では、この他にもネットワークのセキュリティに関する対策として「DMZ」「SSL/TLS」「HTTPS」「WPA3」なども出題されます。',NULL,NULL,NULL),(67,'06','脅威への対策','DMZ','DMZ（DeMilitarized Zone：非武装地帯）とは、外部ネットワークと社内ネットワークの両方から隔離されたネットワーク領域です。 DMZには社内ネットワークからも、外部ネットワークからもアクセスできます。 一方、DMZから社内ネットワークにアクセスすることは基本的にできません。 このため通常は、DMZにはWebサーバやメールサーバといった「社外に公開するサーバ」を配置します。 DMZに配置することで、それらのサーバが仮に乗っ取られたとしても、社内ネットワークに被害が及ぶのを防ぐことができます。',NULL,'/home/air/goalskill_t/back/img/section11/22.png',NULL),(68,'06','脅威への対策','SSL/TLS','SSL/TLS（Secure Sockets Layer / Transport Layer Security）とは、パソコンとサーバ間のやり取りを暗号化する通信プロトコルです。 SSL/TLSを使用すると、インターネットを介した情報のやり取りを安全に行うことができます。 なお、SSLとTLSは別々の通信プロトコルです。 SSLには脆弱性があるので使わないほうがよいとされています。 そこでSSLを元にして、TLSという通信プロトコルが作られました。 ただし、すでにSSLという名称が広く世間に知られていることもあり、SSL/TLSと併記される場合が多いです。 基本情報技術者試験では、過去に「SSL」という表記で出題されたこともあります。',NULL,'/home/air/goalskill_t/back/img/section11/23.png',NULL),(69,'06','脅威への対策','HTTPS','HTTPS（HyperText Transfer Protocol over SSL/TLS）とは、SSL/TLSを用いて、HTTPによる通信を暗号化するためのプロトコルです。 従来のHTTPは通信を暗号化しません。 そのため通信が盗聴されてしまう恐れがありますが、HTTPSではSSL/TLSを用いて安全な方法で共通鍵を共有し、その鍵を使用して双方向の暗号化通信を行います。 また、HTTPSでは認証局から発行された「サーバ証明書」と呼ばれるデジタル証明書を用います。 サーバ証明書とは、通信先のサーバが本物であることを証明するデジタル証明書です。 これによって、ユーザーは通信先がなりすましなどではなく、本物のサーバであることを確認したうえで、安全に通信を行うことができます。 なお、HTTPSが暗号化する範囲はWebブラウザからWebサーバの間です。',NULL,NULL,NULL),(70,'06','脅威への対策','WPA3','WPA3（Wi-Fi Protected Access 3）とは、無線LAN上の通信を暗号化する規格です。 基本情報技術者試験では、HTTPSとWPA3が暗号化する範囲の違いが出題されます。 HTTPSはWebサーバとWebブラウザの間を暗号化します。 一方、WPA3は無線LAN（PCとアクセスポイントの間）を暗号化します。',NULL,'/home/air/goalskill_t/back/img/section11/24.png',NULL),(71,'06','脅威への対策','マルウェアの検出','社内のシステムがマルウェアに感染しているかをチェックする方法には主に、以下の３種類があります。','学習のポイント \n主流の方法が出題される\n現在主流のマルウェア対策ソフトの多くは「パターンマッチング法」を採用しています。そのため、基本情報技術者試験でもパターンマッチング法がよく出題されます。 また、最近は「ビヘイビア法」の研究も活発に行われているので、今後は出題機会が増える可能性があります。','/home/air/goalskill_t/back/img/section11/25.png',NULL),(72,'06','脅威への対策','携帯端末に関する対策','スマートフォンなどの携帯端末に関する対策を解説します。基本情報技術者試験では「BYOD」と「MDM」がよく出題されます。',NULL,NULL,NULL),(73,'06','脅威への対策','BYOD','BYOD（Bring Your Own Device）とは、従業員が私物の情報端末を、業務に使うことです。 なお、従業員のプライベート用のコンピュータには、会社の情報セキュリティ管理が届きにくいため、マルウェア感染などのリスクは高まります。',NULL,NULL,NULL),(74,'06','脅威への対策','MDM','MDM（Mobile Device Management）とは、業務に使うスマートフォンをセキュリティポリシーに従って一元管理することです。 具体的には、業務用のスマートフォンに専用のアプリをインストールすることで、スマートフォンの利用状況（いつ、どこで使ったか）を一元管理します。また、MDMを導入しておけば、万が一スマートフォンを紛失した場合に、スマートフォンを遠隔操作することで、機密データを削除することも可能です。 なお、MDMの対象はあくまでも会社が従業員に貸与している会社のスマートフォンです。BYODによる個人デバイスは、個人情報の観点からも対象外であることが一般的です。','試験にはコレが出る！ \n・BYODは、従業員が私的に保有する情報端末を業務に利用すること \n・MDMは、業務に使うスマートフォンをセキュリティポリシーに従って一元管理すること',NULL,NULL),(75,'06','脅威への対策','その他の技術的セキュリティ対策','最後に、その他の技術的セキュリティ対策を解説します。',NULL,NULL,NULL),(76,'06','脅威への対策','ペネトレーションテスト','ペネトレーションテスト（Penetration Test）とは、実際にシステムを攻撃することで、セキュリティ上の弱点を発見するテスト手法です。 基本情報技術者試験では「コンピュータやネットワークのセキュリティ上の脆弱性を発見するために、システムを実際に攻撃して侵入を試みる手法」という文章で出題されることがあります。',NULL,NULL,NULL),(77,'06','脅威への対策','ファジング','ペネトレーションテストに似たテスト手法に「ファジング」があります。 ファジング（Fuzzing）とは、ソフトウェアに「ファズ（Fuzz）」と呼ばれる問題を起こしそうな多様なデータを入力し、脆弱性を見つけ出すテスト手法です。 ペネトレーションテストが主にネットワークを対象としたテスト手法であるのに対して、ファジングは主にソフトウェアを対象としたテスト手法です。',NULL,NULL,NULL),(78,'06','脅威への対策','セキュアブート','セキュアブート（Secure Boot）とは、PCの起動時にOSのデジタル署名を検証し、許可されていないOSの実行を防ぐ技術です。セキュアブートを使うことで、マルウェアに感染した恐れのあるOSの実行を未然に防ぐことができます。 セキュアは「安全」、ブートは「起動」という意味です。セキュアブートを直訳すると「安全なコンピュータの起動」という意味になります。',NULL,'/home/air/goalskill_t/back/img/section11/26.png','悪意を持った攻撃者は、アプリケーションソフトウェア（応用ソフトウェア）のみならず、OS（基本ソフトウェア）にも、マルウェアを仕込むことがあります。仮に、マルウェアに感染したOSを実行するとPCが攻撃を受けてしまいます。 セキュアブートでは、デジタル署名を使ってOSが偽物でないかをチェックし、OSが偽物の場合は、OSを実行せずエラーメッセージなどを表示してマルウェアの実行を防ぎます。'),(79,'06','脅威への対策','CAPTCHA','CAPTCHA（Completely Automated Public Turing test to tell Computers and Humans Apart）とは、画像判別などをさせて、コンピュータでなく人間が操作していることを確かめるテストです。 CAPTCHAによって、コンピュータによる操作を見分けることができれば、ボット（p.392）などによる攻撃を防ぐことができます。 CAPTCHAの具体例としては、歪んだ文字を答えさせるテストや、複数の写真から正しい写真を選ばせるテストなどがあります。',NULL,'/home/air/goalskill_t/back/img/section11/27.png',NULL),(80,'06','脅威への対策','データの完全消去','PCの記憶装置（ハードディスクやSSDなど）に保存されているデータは、画面上の操作で削除しても、割と簡単に復元できます。そのため、記憶装置を廃棄する際には、次のような方法で適切に処理することが必要です。\n\n・専用ソフトウェアを用いて、ハードディスク全体をランダムなデータで複数回上書きする\n\n・記憶装置を物理的に破壊する','試験にはコレが出る！\n\n・ペネトレーションテストは、システムを実際に攻撃して侵入を試みる手法\n・ファジングとは、ソフトウェアに「問題を起こしそうな多様なデータ」を入力することで、脆弱性を見つけ出すテスト手法\n・セキュアブートは、PCの起動時にOSのデジタル署名を検証し、許可されていないOSの実行を防ぐ技術\n・CAPTCHAは、コンピュータでなく人間が操作していることを確かめるテスト\n・ハードディスク（磁気ディスク）を廃棄する際は、ランダムなデータで、ハードディスクの全領域を複数回上書きする',NULL,NULL),(81,'06','脅威への対策','物理的セキュリティ対策','物理的セキュリティ対策とは、災害や、破壊、妨害行為への対策です。基本情報技術者試験では、サーバ室などへの入退館管理のための「バイオメトリクス認証」がよく出題されています。',NULL,NULL,NULL),(82,'06','脅威への対策','バイオメトリクス認証','バイオメトリクス認証とは、身体的特徴や行動的特徴による認証です。Bioは「生物」、Metricsは「測定」という意味です。 身体的特徴の例としては、指紋や虹彩（目の瞳孔よりも外側の丸い部分）、網膜、静脈パターン、声紋、顔などがあります。また、行動的特徴の例としては、筆跡や歩き方などがあります。\n ■ 筆跡 筆跡とは、ペンなどで紙に直接書かれた文字ですが、注意したいのは、筆跡の画像を使って認証するわけではない点です。文字を書くときの速度や筆圧から特徴を抽出して認証を行います。',NULL,'/home/air/goalskill_t/back/img/section11/28.png',NULL),(83,'06','脅威への対策','バイオメトリクス認証とパスワード認証','最新のスマートフォンの中には、指紋認証や顔認証といった、バイオメトリクス認証機能を搭載した機種もありますが、現時点では認証機能の精度が100%ではないため、現在市販されている多くの機種では、バイオメトリクス認証と従来のパスワード（パスコード）認証を組み合わせています。パスワード認証も用意しておけば、万が一、本人のバイオメトリクス認証に失敗した場合でも、パスワードを入力することで、認証を行うことができます。 \n\n■ 便利さと安全さのバランスが大事 バイオメトリクス認証において、システムが間違って本人を拒否する確率のことを「本人拒否率」といいます。この確率が低いほど便利なシステムであるといえます。反対に、間違って他人を受け入れる確率のことを「他人受入率」といいます。この確率が低いほど安全なシステムであるといえます。 これらの２つはトレードオフの関係にあります。便利なシステムを目指して本人拒否率を低く設定すると、他人受入率は高くなってしまいます。一方、安全なシステムを目指して他人受入率を低く設定すると、本人拒否率が高くなります。 つまり、便利さと安全さのバランスを考えて設定を行う必要があります。',NULL,NULL,NULL),(84,'06','脅威への対策','２要素認証','２要素認証とは「記憶」「所有物」「生体情報」の３つの要素のうちの２つを使って本人確認をする認証方式です。 ','学習のポイント \n２要素認証と２段階認証の違い \n２要素認証に似た用語に２段階認証があります。紛らわしい用語なので、きちんと区別しておいてください。２要素認証では「別々の要素から１つずつ、併せて２つの証拠」を使って本人確認をします。一方、２段階認証では「２つの証拠」を使って本人確認をします。つまり、２段階認証では同じ要素にある２つの証拠を使って認証しても構いません。','/home/air/goalskill_t/back/img/section11/29.png','例えば、銀行のATMでは、キャッシュカード（所有物）と暗証番号（記憶）を用いた２要素認証が使われています。');

--
-- Table structure for table `section_12`
--

CREATE TABLE `section_12` (
  `id` int NOT NULL AUTO_INCREMENT,
  `chapter` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci,
  `main_title` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci,
  `sub_title` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci,
  `theory_description` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci,
  `tip` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci,
  `img` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci,
  `img_description` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=53 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

--
-- Dumping data for table `section_12`
--

INSERT INTO `section_12` VALUES (1,'01','システム開発技術','システムとソフトウェア','システムは、ハードウェアとソフトウェアから構成されます。ソフトウェアはシステムの一部です。上図はシステムの概念図です。ここで、システムとソフトウェアの関係性をきちんと把握しておいてください。今後はこの関係性を前提に「システム」や「ソフトウェア」といった用語を使います。\n一例として、顧客からの問い合わせに対応する「サービスデスク（ヘルプデスク）」の業務を思い浮かべてみてください。\nサービスデスク業務を行うには、電話機や電話回線、パソコンなどのハードウェアが必要です。そして、パソコン上ではさまざまなソフトウェア（メールソフトやオンラインチャットなど）が動作しています。これら２つを合わせてシステムと呼びます。',NULL,NULL,NULL),(2,'01','システム開発技術','ソフトウェアライフサイクルプロセス','ソフトウェアライフサイクルプロセス (Software Life Cycle Process：SLCP) とは、ソフトウェアの企画、要件定義、開発、運用、保守までの一連の活動であり、それらの活動内容を定義した国際規格です。ソフトウェアライフサイクルプロセスはISO/IECで標準化されています (ISO/IEC 12207)。\nこの他にも、システムのライフサイクルプロセスを規定した「システムライフサイクルプロセス」という国際規格もあります (ISO/IEC 15288)。','学習のポイント　SLCPはどっち？\n「ソフトウェアライフサイクルプロセス」と「システムライフサイクルプロセス」(System Life Cycle Process) はともに、略すと「SLCP」になります。しかし、基本情報技術者試験でSLCPといった場合は、ほぼ例外なく「ソフトウェアライフサイクルプロセス」のことを指します。',NULL,NULL),(3,'01','システム開発技術','共通フレーム','共通フレームとは、システム開発とその取引を適正化するために、それらのベースとなる作業項目を１つひとつ定義した本です。\nもう少しくだけたいい方をすると「システム開発に関わる人たちが、同じ言語で話ができるように、用語などの定義を統一した本」であるといえます。\nシステム開発には、さまざまな作業や技術、手法があります。これらの用語の定義（意味や内容）が統一されていないと、関係者（経営者、ユーザー、情報システム部、ベンダー）の間で誤解が生じたり、意思疎通ができず、後々トラブルが起こる原因になったりします。これは誰にとってもよいことではありません。\nそこで、こういった誤解を未然に防ぐために、独立行政法人 情報処理推進機構 (IPA) が主体となって「共通フレーム」という本を作成しています。',NULL,'/home/air/goalskill_t/back/img/section12/1.png',NULL),(4,'01','システム開発技術','共通フレームと２つのSLCPの関係','先述したソフトウェアライフサイクルプロセス (ISO/IEC 12207) と、システムライフサイクルプロセス (ISO/IEC 15288) は、それぞれ、「ソフトウェア」と「システム」に関する規格ですが、システムはソフトウェアを含む概念です。そのため、この２つの規格は重なり合う部分も多いです。\nそこで、この２つの規格をまとめて、さらに日本独自のアレンジを加えたガイドラインを作ることになりました。それが「共通フレーム」です。',NULL,'/home/air/goalskill_t/back/img/section12/2.png',NULL),(5,'01','システム開発技術','５つのプロセス','基本情報技術者試験で取り上げられるソフトウェアライフサイクルは、主に次の５つのプロセスに分類されます。',NULL,'/home/air/goalskill_t/back/img/section12/4.png',NULL),(6,'01','システム開発技術','開発プロセス','システム開発とは、必要なハードウェアを調達し、必要な機能を持ったソフトウェアを新たに作ることです。現在、手作業で行っている業務をシステムに置き換えることができれば、業務を大幅に改善できます。',NULL,NULL,NULL),(7,'01','システム開発技術','開発プロセスの概要','開発プロセスは家づくりと似ているので、家づくりを例に挙げながら、各工程の概要を紹介します。なお、先述したソフトウェアライフサイクルプロセスの「要件定義」と、これから説明する開発プロセス中の「システム要件定義」は別物なので注意してください。',NULL,'/home/air/goalskill_t/back/img/section12/5.png','なお、上記で解説しているのは「ウォーターフォールモデル」と呼ばれる開発モデルを用いた場合の一例です。詳しくは「13-1ソフトウェアの開発モデル」（p.492）で解説しますが、世の中には他にもさまざまな開発モデルがあります。\nでは、なぜここでウォーターフォールモデルを紹介しているのかというと、基本情報技術者試験ではウォーターフォールモデルを前提としたシステム開発の手順が問われるためです。まずはこの開発モデルの各工程を理解することが重要です。'),(8,'01','システム開発技術','開発プロセスの詳細','開発プロセスをより詳細な工程に分解すると、以下のようになります。','学習のポイント　２つの「方式設計」\nシステム設計のプロセスには「システム方式設計」「ソフトウェア方式設計」という、とても似た名前の工程があります。接頭辞に「システム」という単語が付いている用語は、システムに関係するプロセスです。接頭辞に「ソフトウェア」という単語が付いている用語は、ソフトウェアに関係するプロセスです。つまり、システム方式設計とソフトウェア方式設計は、まったく別のプロセスです。作業内容も完全に異なります。','/home/air/goalskill_t/back/img/section12/6.png','各用語については次節以降で1つずつ解説していくので、まずは上の表を見て全体像をつかんでください。\nまた、もし以降の各項目の内容を読んでいる時に、その項目の位置付けがわからなくなったら、この表を見返して、現在地を確認しながら読み進めてください。全体の中での位置付けを意識しながら読み進めると、理解度が大幅に向上しますし、記憶にも定着しやすくなります。'),(9,'02','システム要件定義','システム要件定義とは','システム要件定義とは、システムに必要な条件（システム要件）を決める工程です。簡単にいえば「どのようなシステムを作るのかを、開発会社と明確にするプロセス」です。システム要件定義は、システム開発で最初の工程です。\nこの工程はとても重要です。なぜなら、この工程でシステムに必要な条件をきちんと書類に残し、お互いに共有することで、責任の所在を明確にでき、また、後々の「言った、言わない」の争いを未然に防ぐことができるからです。',NULL,NULL,NULL),(10,'02','システム要件定義','システム要件とは','システム要件定義では「システム要件」を決めます。システム要件とは、業務要件（日々の仕事を行うために必要な条件：p.593）のうちのシステムで実現する要件であり、具体的には、システムに必要な「機能」や「性能」です。\n例えば、証券取引所の株式を売買するシステムならば、「株式が売買できること」が機能であり、「システムの応答時間が0.001秒」が性能です。仮に、この応答時間が１時間もかかるようでは、その株式売買システムはまったく役に立ちません。',NULL,NULL,NULL),(11,'02','システム要件定義','システムには求められる機能や性能がある','このように、世の中のあらゆるシステムには、そのシステムに求められる機能や性能があります。これから作るシステムも同じです。\nこのため、開発プロセスの最初にシステム要件定義を行い、そのシステムに必要な条件を明確に決める必要があるのです。','コラム\n効果的な「朝学習」\n本書の巻頭 (xvi) で「用語の暗記は寝る前が効果的」と解説しましたが、理解力や論理的思考力が必要な項目の学習や、計算問題の学習は、断然、夜よりも朝のほうが適しています。なぜなら、しっかりと睡眠をとった後の朝の時間は、脳もすっかり回復して元気な状態になっており、集中力も一日のなかで最も高い時間だからです。ぜひこの「勉強に最適な時間」を活用してください。可能であれば、起床後に軽くストレッチをして体を起こした後、朝食よりも前に、30分でもよいので、勉強する時間を作ってみてください。朝が苦手な人は、体が慣れるまでは大変だとおもいますが、一度やってみると「驚くほど頭が冴えている自分」に会えると思います。',NULL,NULL),(12,'03','システム設計','(1) システム方式設計','システム方式設計とは、システム要件定義プロセスで洗い出したシステム要件を「ハードウェア」「ソフトウェア」「手作業」のいずれかに振り分けるプロセスです。\nこれらのうち、ハードウェアとソフトウェアに振り分けられたシステム要件のみをシステムで実現します。 システム方式設計を行うと、システムに「何が」「いくつ」必要なのかが明確になります。\nなお、手作業に振り分けられたシステム要件は、手作業で実現します（システムには実装しない）。',NULL,'/home/air/goalskill_t/back/img/section12/7.png',NULL),(13,'03','システム設計','(2) ソフトウェア要件定義','ソフトウェア要件定義とは、ソフトウェアの要件（機能や性能）を決める工程です。 前ページの（１）システム方式設計で「ソフトウェア」に割り振られたシステム要件（つまり、ソフトウェアで実現しなければならない要件）を、この工程ではより具体化していきます。 代表的なソフトウェア要件には次のものがあります。\n\n・インタフェースの要件（画面、帳票、ファイルなど）\n\n・データの要件（データの種類、データベースの要件など）\n\nなお、実際のシステム開発の現場では、ソフトウェア以外（ハードウェアや手作業）の要件定義も考慮する必要があるのですが、基本情報技術者試験ではソフトウェアに関することだけが対象として扱われます。',NULL,NULL,NULL),(14,'03','システム設計','業務モデル','ソフトウェア要件定義では「業務モデル」を作成して、ソフトウェアに求められる機能と性能を定義します。\n業務モデルとは、業務プロセスをモデリング（単純化）して表した図や表のことです。 業務モデルは、システム化を行う業務の仕組みや手順をわかりやすく表現するために作成します。\n業務モデルを記述する方法には多くの種類がありますが、ここではよく出題される「DFD（データフロー図）」について解説します。',NULL,NULL,NULL),(15,'03','システム設計','DFD（データフロー図）','DFD (Data Flow Diagram：データフロー図) とは、データの流れを表す図です。 以下の４種類の記号を使って図を描きます。 DFDを使うと、業務プロセスの中のデータの流れに関係する問題を見つけることができます。\n\nDFDでは、業務プロセスの中で、データが「どこから入力」されて、「どのように処理」されて、「どこへ出力」されるのかを図示します。 そのため必ず、以下が必要になります。\n\n・２つ以上の［外部］（入力と出力）\n\n・１つ以上の［プロセス］（プロセスがないと何もしていないことになるため）','試験にはコレが出る！\nDFD（データフロー図）では、「◯」がプロセスを表す','/home/air/goalskill_t/back/img/section12/9.png','なお、DFDは、アローダイアグラム(p.513)や流れ図(p.103)とは異なり、時間の流れや処理の順序は表しません。 あくまでも「データの流れ」のみを表します。\n上図のDFDでは、１つの［プロセス］（受注）から、２つの［データフロー］（出荷指示と売上報告）が出ていますが、順序は明確にしません。'),(16,'03','システム設計','(3) ソフトウェア方式設計','ソフトウェア方式設計とは、（２）ソフトウェア要件定義で決めたソフトウェア要件（機能や性能）をプログラムの単位まで分割する工程です。 ソフトウェア要件をどのようにプログラムで実現するかを決めます。\nソフトウェアは「データ」と「処理（プロセス）」の２つの要素で構成されています。 みなさんが持っているスマホの電卓アプリを想像してください。 みなさんが入力する数字が「データ」で、たし算などの四則演算が「処理（プロセス）」です。 これらの２つがソフトウェアを構成する要素です。',NULL,NULL,NULL),(17,'03','システム設計','プロセス中心アプローチ','従来、ソフトウェアはプロセス中心アプローチで設計されていました。 プロセス中心アプローチとは、処理（プロセス）に着目してソフトウェアを設計する手法です。\nこの手法ではソフトウェアの保守が大変になるという大きなデメリットがあります。 なぜなら、業務の中で「何を処理（プロセス）とするか」は開発者の主観に左右されやすく、また、ユーザーの要求を満たす処理を追求すると、重複する処理が多くなります。 そのため、プロセス中心アプローチでソフトウェアを設計すると、保守が複雑になります。\nプロセス中心アプローチの弱点を改善したのが「データ中心アプローチ」です。',NULL,NULL,NULL),(18,'03','システム設計','データ中心アプローチ','データ中心アプローチとは、データ構造に着目してソフトウェアを設計する手法です。\nデータは実世界に存在するものであり、ユーザーの要求で変化するものではないので、ユーザーの要求と切り離して設計することができます。 データ中心アプローチでは、E-R図(p.285)やDFD(p.456)を使います。\nE-R図はデータの関連を、DFDはデータの流れを表す図です。 どちらの図も「処理」ではなく「データ構造」に着目して業務をモデル化(p.72)します。','試験にはコレが出る！\n\n・ソフトウェア方式設計とは、すでに決定しているソフトウェア要件を、どのように実現させるかを決める工程\n\n・データ中心アプローチでは、データ構造に着目する',NULL,NULL),(19,'03','システム設計','(4) ソフトウェア詳細設計','ソフトウェア詳細設計とは、（３）ソフトウェア方式設計で「プログラムの単位まで分割された要件」をさらに「コーディングができる単位」まで分割する工程です。\n具体的には、動作ロジックを検討し、その結果を流れ図（フローチャート）にして表します。\nまた、この工程で分割されたプログラムのことを「モジュール」といいます。 モジュールとは、プログラムを機能で分けた単位です。 モジュールは、別の見方をすると、その部分だけでコンパイルできる単位ともいえます。 たくさんのモジュール（部品）を組み合わせることでプログラムを作成します。\nなお、モジュールは一度作ってしまえば、別のプログラムに再利用することもできます。','学習のポイント モジュールとその他の用語\n本書ではこれまでに、システムにまつわる用語がたくさん出てきました。 ここでそれらの関係を整理しておきましょう。\nまず、システムは「ソフトウェア」と「ハードウェア」の２つで構成されます。 そして、ソフトウェアは複数の「プログラム」で構成されます。 プログラムは複数の「モジュール」で構成され、モジュールは複数の「関数」で構成されます。 関数は複数の「命令」で構成されます。\n※モジュールのことを「ソフトウェアユニット」や「ソフトウェア単体」と呼ぶこともあります。','/home/air/goalskill_t/back/img/section12/11.png',NULL),(20,'03','システム設計','モジュール結合度','モジュール結合度とは、モジュール間の結び付きの強さです。 モジュール結合度が弱いほど、各モジュールの保守性は高くなります。 反対に、モジュール結合度が強いほど、各モジュールの保守性は低くなります。 なぜなら、あるモジュールに変更が生じた際に、他のモジュールに対する影響範囲が大きくなるからです。\nこのため、モジュールを作成する場合は、モジュール結合度が弱くなるように作る必要があります。\n以下はモジュール結合度を６つのレベルに分類した表です。 なお、これらの６つのレベルのうち、基本情報技術者試験に出題されるのは、モジュール結合度が最も弱い「データ結合」です。 この「モジュール結合度が最も弱いのは、データ結合」ということだけは必ず覚えておいてください。','試験にはコレが出る！\nモジュール結合度が最も弱いのは、データ結合','/home/air/goalskill_t/back/img/section12/12.png',NULL),(21,'03','システム設計','外部設計と内部設計','システム設計には４つの下位工程がありますが、この工程にはもう１つ、別の分類方法があります。 それが「外部設計」と「内部設計」です。',NULL,NULL,NULL),(22,'03','システム設計','外部設計','外部設計とは、ユーザーから見える箇所の設計です。 コンピュータの制約は考慮せず、ユーザーの立場から見た業務機能を中心に設計します。',NULL,NULL,NULL),(23,'03','システム設計','内部設計','内部設計とは、ユーザーから見えない箇所の設計です。','試験にはコレが出る！\n\n・外部設計とは、ユーザーから見える箇所の設計\n\n・内部設計とは、ユーザーから見えない箇所の設計',NULL,NULL),(24,'04','プログラミングとオブジェクト指向','オブジェクト指向','前項で解説したソフトウェアを設計する手法の１つ「データ中心アプローチ」(p.458)の概念をさらに進めたものが「オブジェクト指向」です。 オブジェクト指向は現在主流の開発手法であるため、基本情報技術者試験でもよく出題されます。\nオブジェクト指向とは、クラスや継承という概念を使って、ソフトウェアを部品化することで、ソフトウェア開発の生産性を上げる手法です。\n先述したプロセス中心アプローチ(p.458)は、「処理（プロセス）」に着目したソフトウェア設計手法でした。 また、データ中心アプローチは「データ」に着目したソフトウェア設計手法でした。\n本項で学習するオブジェクト指向では「処理」と「データ」を分けて考えるのではなく、１つにまとめて考えます。\nなお、プロセス中心アプローチやデータ中心アプローチにおける「処理」のことを、オブジェクト指向では「メソッド」と呼びます。 呼び方が異なるので注意してください。',NULL,NULL,NULL),(25,'04','プログラミングとオブジェクト指向','クラスとオブジェクト','オブジェクト指向の用語を、車を例にして解説します。\nまず、クラスとは、ひな型です。 車でいえば、設計図にあたります。 また、オブジェクト（インスタンス）とは、実体です。 車でいえば、設計図をもとに製造された車です。',NULL,'/home/air/goalskill_t/back/img/section12/13.png',NULL),(26,'04','プログラミングとオブジェクト指向','データとメソッド','続いて、データとは、オブジェクトの状態です。 車でいえば、車体の色や走行距離などです。 また、メソッドとは、オブジェクトの操作です。 車でいえば、車を動かしたり、止めたりすることです。',NULL,'/home/air/goalskill_t/back/img/section12/14.png',NULL),(27,'04','プログラミングとオブジェクト指向','オブジェクト指向のメリット','車は通常、オーダーメードではなく、大量生産で作られます。 これは、同じ規格の製品をたくさん作るほうが、効率よく作れるからです。\nなお、同じ設計図から作られる車がすべて同じかというと、そういうわけではありません。 車体の色など、一定の範囲内でカスタマイズした車を注文できます。 このような考え方をソフトウェア開発に応用したのがオブジェクト指向です。',NULL,NULL,NULL),(28,'04','プログラミングとオブジェクト指向','クラスとオブジェクトの関係','オブジェクト指向では、まずはクラス（ひな型）を定義し、その定義に基づいてオブジェクト（実体）を生成します。 クラスさえ作ってしまえば、いくつでもオブジェクトを作り出すことができます。\n例えば、ソフトウェア開発において、スマートフォンのアプリケーションソフトウェア上で動作するボタンが必要になったとしましょう。 このようなケースでは、「ボタン」を「オブジェクト」として考えます。\nまず、ボタンのクラスを定義します。 一度ボタンを定義してしまえば、画面上にたくさんのボタンが必要になったとしても、以降は簡単に作ることができます。 また、ボタンの色や、ボタン上に表示する文字列は「データ」として持つことができるので、ボタンごとに異なる見た目のボタンをカスタマイズして作ることができます。 これらがオブジェクト指向でソフトウェア開発を行うメリットです。',NULL,'/home/air/goalskill_t/back/img/section12/15.png',NULL),(29,'04','プログラミングとオブジェクト指向','オブジェクト指向の特徴','オブジェクト指向にはさまざまな特徴がありますが、基本情報技術者試験では「カプセル化」と「継承」、「多相性」に関する設問がよく出題されます。',NULL,NULL,NULL),(30,'04','プログラミングとオブジェクト指向','カプセル化','カプセル化とは、データとメソッドを１つにまとめて、外部から直接データにアクセスさせないようにすることです。 外部からオブジェクトの詳細を隠すことを「情報隠蔽」といいます。 カプセル化は、データをメソッドで包み込むイメージです。\n\n車を例にしてカプセル化について説明します。\n車では「走行距離」というデータを直接変更することはできません。 走行距離メータを勝手に改ざんしたら違法になってしまうからです。 一方で、車には「走る」というメソッドがあるので、このメソッドを呼び出して車を走らせれば、走行距離は自動的に増えていきます。 このように、カプセル化ではメソッド（走る）を呼び出して、データ（走行距離）を変更します。',NULL,'/home/air/goalskill_t/back/img/section12/16.png',NULL),(31,'04','プログラミングとオブジェクト指向','カプセル化のメリット','カプセル化のメリットは、オブジェクトの内部構造を隠蔽できることです。 内部構造を隠蔽すれば、オブジェクトを利用するソフトウェア開発者はその内部構造を知る必要がなくなります。\nこれは、車の運転手が運転の仕方を知る必要があるけれど、走行距離メータが増える仕組みを知る必要がないのと同じことです。',NULL,NULL,NULL),(32,'04','プログラミングとオブジェクト指向','継承','継承とは、親クラスのデータやメソッドを子クラスが引き継ぐことです。\nあるクラスの上位にあるクラスを親クラス（基底クラス、スーパークラス）といいます。 一方、あるクラスの下位のクラスを子クラス（派生クラス、サブクラス）といいます。\n親クラスが持つデータやメソッドが、子クラスに引き継がれます。 子クラスはそのデータやメソッドを利用できます。 こうすることで、親クラスに実装されているデータやメソッドを、子クラスで再度実装する手間を省くことができます。\n\nなお、子クラスの共通の性質を取り出して、親クラスを作ることを「汎用化」といいます。 反対に、親クラスの性質をより細かく分けて、子クラスを作ることを「特化」といいます。',NULL,'/home/air/goalskill_t/back/img/section12/18.png',NULL),(33,'04','プログラミングとオブジェクト指向','多相性','多相性とは、異なるオブジェクトに対して同一の操作を実行したときに、対象のオブジェクトごとに異なる動作を可能にすることです。\n例えば、車オブジェクトと飛行機オブジェクトの両方に「移動する (move)」メソッドがあったとします。 このメソッドを呼び出すと、車オブジェクトが「道路を走る」という動作をするのに対して、飛行機オブジェクトは「空を飛ぶ」という動作をします。\nこのように、同一の操作に対して、対象のオブジェクトごとに異なる動作を可能にすることを多相性といいます。','試験にはコレが出る！\n\n・オブジェクト指向では、クラスの定義に基づいて**オブジェクト（インスタンス）**が生成される\n\n・継承とは、親クラスのデータやメソッドを子クラスが引き継ぐこと\n\n・カプセル化のポイントは２つ\n　①データとメソッドを１つにすること\n　②データを外部から隠蔽すること\n\n・多相性とは、同じ操作でも、オブジェクトごとに異なる動作を可能にすること','/home/air/goalskill_t/back/img/section12/19.png',NULL),(34,'04','プログラミングとオブジェクト指向','UML','UML (Unified Modeling Language) とは、オブジェクト指向のソフトウェア開発において、ソフトウェアの設計を図示するための表記法です。\n以前は、オブジェクト指向のソフトウェア開発の設計の表記法がバラバラで統一されていませんでした。 UMLはそれらを標準化するために生まれました。 下記がUMLで定義されている主な図です。 中でもクラス図は特に重要です。',NULL,'/home/air/goalskill_t/back/img/section12/20.png',NULL),(35,'04','プログラミングとオブジェクト指向','クラス図','クラス図は、クラス間の関係を表す図です。 クラス図では、長方形の枠の中に、**クラス名、データ（属性）、メソッド（手続）**の３つを記入します。 例えば車のクラスであれば下図のようになります。 また、クラス図では、この枠を線でつないで、クラス間の関係を表現します（下図の右側）。','学習のポイント　データやメソッドの省略\nクラス図では、データやメソッドを省略したり、クラス名のみを書いたりする場合があります。 基本情報技術者試験でも以下の形式でクラス図が記載されることがあります。','/home/air/goalskill_t/back/img/section12/24.png','図『クラス間の関係』で使っている白抜きの三角形が付いた矢印は、「汎化」を表します。 つまりこの図では、スポーツカーの親クラスは車であることを表します。\nこの他にも、次ページの表の表記でクラス間の関係を表すことができます。 ただし、ここですべて覚える必要はありません。 汎化だけ覚えておいてください。'),(36,'05','テスト','テストとは','テストとは、システムが仕様どおりに動くかを確認する工程です。 不具合が残ったままでは、システムは正しく動作しません。 事前にテストを行い、不具合がないことを確認し、不具合があった場合は修正します。\nまた、それと同時に、要件定義プロセス(p.592)で明確にした「業務に必要な条件（業務要件）」がきちんと実現されているかも確認します。',NULL,NULL,NULL),(37,'05','テスト','設計・開発工程とテスト工程は１対１の関係にある','テスト工程と、これまでに行ってきた設計・開発工程は１対１の関係にあり、それぞれを図にすると、次ページの図のようにＶ字の形になります。 この図も基本情報技術者試験によく出題されるので、ぜひ覚えておいてください。\nこの図のポイントは、最下部（単体テスト）から最上部（運用テスト）へ向かって徐々にシステムの範囲が広くなっている点です。 最初に行う単体テストのテスト対象は各プログラムですが、最後に行う運用テストのテスト対象は業務要件です。',NULL,'/home/air/goalskill_t/back/img/section12/26.png',NULL),(38,'05','テスト','インタフェースとは','上記の結合テストの説明に「プログラム同士のインタフェースが合うか（きちんと接続できるか）を確認する」とあります。 インタフェースとは何でしょうか。\nインタフェースとは、あるモノとあるモノをつなぐ部分のことです。 最もイメージしやすいのはハードウェアインタフェースです。 ハードウェアインタフェースとはその名のとおり、あるハードウェアと別のハードウェアをつなぐ部品（接続部分）のことを指します。\n例えば、パソコンと周辺機器（プリンターなど）を接続する部分です。 他にも、コンピュータと利用者をつなぐ部分（操作画面など）を、ユーザーインタフェース(p.258)といいます。\nこれらと同様に、プログラムとプログラムをつなぐインタフェースもあります。 それが「ソフトウェアインタフェース」です。 結合テストでは、単体テストが完了したプログラム間のインタフェースをテストします。','試験にはコレが出る！\n\n・単体テスト：プログラムに誤りがないことを検証する\n\n・結合テスト：プログラム同士のインタフェースが合うかを検証する\n\n\n・システムテスト：システム要件（応答時間や稼働時間なども含む）が仕様どおりに動作するかを検証する\n\n・運用テスト：本番環境でシステムを運用し、業務要件どおりにシステムが動作することを検証する\n\n・リグレッションテスト：ソフトウェア保守のための変更が、別の箇所に影響を及ぼしていないか確認する','/home/air/goalskill_t/back/img/section12/27.png',NULL),(39,'05','テスト','ホワイトボックステスト','単体テストでは通常「ホワイトボックステスト」を行います。\nホワイトボックステストとは、入力したデータが、意図どおりに処理されているかを、プログラムの内部構造を分析して確認するテスト手法です。 箱の中身（具体的な処理の内容）を見ながらテストするイメージに近いことからこの名称で呼ばれています。 ホワイトボックステストでは、プログラムに記述されているすべての処理を実行し、動作を確認します。\nホワイトボックステストは**開発者（プログラマ）**が行います。 プログラムの内容を理解するには専門的な知識が必要なので、発注者側（実際のユーザー）はこのテストを行うことはできません。',NULL,NULL,NULL),(40,'05','テスト','テストケース','テストケースとは、ソフトウェアをテストする際に用意する「入力」と「期待される出力」の組み合わせです。 ホワイトボックステストでは、流れ図（フローチャート：p.103）に記載されているすべての経路を網羅できるテストケースを用意するのが理想です。\nただし、大きなプロジェクトでは、経路数が膨大になるため、すべての経路を網羅するテストケースを用意するのは現実的ではありません。 そこで重要になるのが**網羅性（網羅の程度）**です。 ホワイトボックステストでは、以下の５つの網羅性のレベルに基づいてテストケースを設計します。\n（１）命令網羅\n（２）判定条件網羅（分岐網羅）\n（３）条件網羅\n（４）判定条件／条件網羅\n（５）複数条件網羅\n漢字ばかりで嫌になってしまうかもしれませんが、少しだけお付き合いください。 基本情報技術者試験では、上記の５つの用語の定義が出題されることはありませんが、各網羅性のレベルで設計されるテストケースが合計でいくつになるのかが出題されます。 そのため、各網羅性のレベルについて理解しておく必要があります。',NULL,NULL,NULL),(41,'05','テスト','流れ図の記号の読み方','テストケースの数を算出するには、設問掲載される流れ図を正しく読める必要があります。 そのため、各網羅性のレベルの解説をはじめる前に、流れ図の読み方を解説します。 下図を見ながら確認してください。\n\nそれでは５つの網羅性のレベルについてそれぞれ解説します。',NULL,'/home/air/goalskill_t/back/img/section12/29.png',NULL),(42,'05','テスト','(1) 命令網羅','命令網羅とは、すべての「命令」を少なくとも一回は実行するテストです。 一方、「判定条件」は考慮しません。 ５つの網羅性のレベルの中で、最も網羅性が低いテストです。\n判定条件と命令が１つずつある流れ図を例に考えてみましょう（下図を参照）。 この例では、判定条件が真になれば命令を通ることになります。 つまり、条件Ａと条件Ｂの両方が真の場合（ＡかつＢが真の場合）をテストすれば、命令網羅となります。\n\nなお、今回の例では判定条件が偽の場合の経路をテストできません。 偽の経路もテストするには、次の**判定条件網羅（分岐網羅）**を使います。',NULL,'/home/air/goalskill_t/back/img/section12/31.png',NULL),(43,'05','テスト','(2) 判定条件網羅（分岐網羅）','判定条件網羅（分岐網羅）とは、プログラム中のすべての「判定条件」で真と偽の両方を少なくとも一回は実行するテストです。 この例では、判定条件の真と偽の両方の経路を通る必要があります。 テストケースは２つです（下表を参照）。',NULL,'/home/air/goalskill_t/back/img/section12/33.png','なお、今回の例では、条件Ｂについては「真」と「偽」の２つのパターンをテストしていますが、条件Ａについては「真」のパターンしかテストしていません。 条件Ａが偽になるパターンもテストするには、次の条件網羅を使います。'),(44,'05','テスト','(3) 条件網羅','条件網羅とは、判定条件が複数の条件からなる場合に、個々の条件の真と偽の両方を少なくとも１回は実行するテストです。\nこの例では、テストケースは２つです（下表を参照）。',NULL,'/home/air/goalskill_t/back/img/section12/35.png','なお、今回の例では、判定条件（ＡかつＢ）が「偽」の場合しかテストできていません。 判定条件が「真」になる場合もテストするには、条件網羅に判定条件網羅を加えた、次の判定条件／条件網羅を使います。'),(45,'05','テスト','(4) 判定条件／条件網羅','判定条件／条件網羅は、条件網羅と判定条件網羅を組み合わせたテストです。 この例では、テストケースは３つです（下表を参照）。',NULL,'/home/air/goalskill_t/back/img/section12/37.png','なお、今回の例では、条件Ａが「偽」で、条件Ｂが「偽」の経路がテストできていません。 すべての経路をテストするには、次の複数条件網羅を使います。'),(46,'05','テスト','(5) 複数条件網羅','複数条件網羅とは、すべての条件の真と偽の組み合わせを少なくとも１回は実行するテストです。 この例では、テストケースは４つです（下表を参照）。','試験にはコレが出る！\nホワイトボックステストの問題では、流れ図が提示され、各網羅性のレベルのテストケース数を問う問題が出題されます。 章末の過去問題で練習しておいてください。','/home/air/goalskill_t/back/img/section12/39.png',NULL),(47,'05','テスト','ブラックボックステスト','結合テストとシステムテストでは「ブラックボックステスト」を行います。\nブラックボックステストとは、入力と出力だけに着目し、ある入力に対して仕様書どおりの出力が得られるかどうかを確認するテスト手法です。\nブラックボックステストでは、システムが実際にどのような処理を行っているのかは問題ではありません。 結果が正しければよしとします。 このように、箱の中身（具体的な処理の内容）をまったく気にしないことから、この名称で呼ばれています。\nブラックボックステストはシステムの内部を見ないため、運用テストなどで発注者側（実際のユーザー）が行うこともあります。',NULL,'/home/air/goalskill_t/back/img/section12/40.png',NULL),(48,'05','テスト','各テストのメリットとデメリット','ホワイトボックステストとブラックボックステストには、それぞれにメリットとデメリットがあります。 このため、システム開発においては双方のメリット、デメリットを理解したうえで、２つのテスト手法の両方を行うことが重要です。\n\n上記のように、ホワイトボックステストでは、プログラムを書いた開発者がテストを行うため、そもそも開発者がシステムの仕様を誤解していた場合、それは「不具合」として扱われないため、その不具合（バグ）は見つけられません。\nその点、ブラックボックステストであれば、中身を考慮することなく、「システム要件定義書どおりに動作するか」を検証するため、仕様に起因する不具合は見つけられます。 反面、中身を考慮しないため、すべてのケースを検証したかどうかは保証できません。','試験にはコレが出る！\n\n・ホワイトボックステストは、内部構造に着目する\n\n・ブラックボックステストは、内部構造に着目しない','/home/air/goalskill_t/back/img/section12/41.png',NULL),(49,'05','テスト','トップダウンテストとボトムアップテスト','結合テストには、ブラックボックステストの他にも、トップダウンテストとボトムアップテストがあります。 基本情報技術者試験のトップダウンテストやボトムアップテストの設問では、問題文の中に「モジュール」という用語が登場します。',NULL,NULL,NULL),(50,'05','テスト','モジュール','モジュールとは、プログラムを機能で分けた単位です。 モジュールは、上位モジュールと下位モジュールに分類されます。',NULL,'/home/air/goalskill_t/back/img/section12/42.png','上記のように、各モジュールは、そのコードの中で別のモジュールを呼び出します。 このような場合において、呼び出し元のモジュールを「上位モジュール」といい、呼び出し先のモジュールを「下位モジュール」といいます。 また、プログラムの開始時に最初に呼び出されるモジュールのことを「最上位モジュール」といいます。'),(51,'05','テスト','トップダウンテスト','トップダウンテストとは、上位モジュールから下位モジュールへと、順番にテストをしていく方法です。 トップダウンテストでは、テスト対象となるモジュールはそのコードの中で、下位モジュールを呼び出します。 そして、１つのモジュールのテストが完了したら、次の下位モジュールのテストに移ります。\n\n・スタブ\nトップダウンテストでは、下位モジュールが未完成の場合はテストができません。 また、下位モジュールがあったとしても、そのモジュールのテストが完了していない場合、上位と下位のどちらのモジュールに不具合があるのかを切り分けることができません。\nそこで、トップダウンテストでは「スタブ」と呼ばれるダミーの下位モジュールを用意します。 スタブには、テスト対象のモジュールがスタブを呼び出しても正しく動作が進むように、前もって単純な戻り値などを設定しておきます。',NULL,'/home/air/goalskill_t/back/img/section12/43.png',NULL),(52,'05','テスト','ボトムアップテスト','ボトムアップテストとは、下位モジュールから上位モジュールへと、順番にテストをしていく方法です。 ボトムアップテストでは、テスト対象となるモジュールはそのコードの中で、上位モジュールから呼び出されます。 そして、１つのモジュールのテストが完了したら、次の上位モジュールのテストに移ります。\n\n・ドライバ\nボトムアップテストでは、上位モジュールが未完成の場合、下位モジュールの呼び出し元がないので、テストができません。 また、トップダウンテストの場合と同様に、上位モジュールがあったとしても、そのモジュールのテストが完了していない場合、上位と下位のどちらのモジュールに不具合があるのかを切り分けることができません。\nそこで、ボトムアップテストでは「ドライバ」と呼ばれるダミーの上位モジュールを用意します。 ドライバからテスト対象のモジュールを呼び出すことで、下位モジュールをテストします。','試験にはコレが出る！\n\n・スタブとは、下位モジュールの代替となるテスト用のモジュール。トップダウンテストを行う際に必要\n\n・ドライバとは、上位モジュールの代替となるテスト用のモジュール。ボトムアップテストを行う際に必要','/home/air/goalskill_t/back/img/section12/44.png',NULL);

--
-- Table structure for table `section_13`
--

CREATE TABLE `section_13` (
  `id` int NOT NULL AUTO_INCREMENT,
  `chapter` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci,
  `main_title` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci,
  `sub_title` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci,
  `theory_description` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci,
  `tip` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci,
  `img` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci,
  `img_description` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=16 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

--
-- Dumping data for table `section_13`
--

INSERT INTO `section_13` VALUES (1,'01','ソフトウェアの開発モデル','ウォーターフォールモデル','ウォーターフォールモデルとは、ソフトウェアの開発プロセス (p.451) を上流工程から下流工程へ向かって一直線に順番に進める手法です。滝のように、上から下へ作業が進むことからこの名前が付けられました。 ウォーターフォールモデルのメリットは、なんといっても計画が立てやすい点にあります。各工程が明確に分けられているうえに、前工程の完了後に次の工程をはじめるという、一直線の進み方なので、開発のスケジュールが非常に立てやすく、全体の計画も容易に立てることができます。\n一方で、修正作業がとても大変というデメリットがあります。この手法では基本的に、いったん作業が完了した後は、元の上流工程に作業が戻ることを想定していません。このため、何らかの理由でシステムに手直しが生じた場合、不具合のあった工程まで戻って、再度下流の工程をやり直さなければなりません。 上記のような、ウォーターフォールモデルのデメリットを解決するために誕生したのが「アジャイル開発」です。',NULL,'/home/air/goalskill_t/back/img/section13/1.png',NULL),(2,'01','ソフトウェアの開発モデル','アジャイル開発','アジャイル開発とは、短期間にソフトウェアの開発とリリースを繰り返すことで、ビジネス環境の変化やユーザーのニーズに柔軟に対応する開発モデルです。アジャイル (Agile) は「素早い」という意味です。\n\n顧客ニーズの多様化やグローバルな競争、ITの発展などによって、現代のソフトウェア開発には、これまでにないスピードと品質が求められています。そのため、ウォーターフォールモデルのような「最後にならないと製品が完成しない方法」ではスピード感に欠け、現代のニーズに合いません。 一方、アジャイル開発では、品質は高くなくとも素早く市場に製品をリリースできます。製品をリリースすることで市場のニーズを把握することができ、その市場の反応を取り入れて仕様を変更し、改善した製品を改めてリリースできます。このように、仕様変更を柔軟に行いながら小刻みに製品をリリースすることで、製品に求められるスピードと品質に対応しようという手法がアジャイル開発です。',NULL,'/home/air/goalskill_t/back/img/section13/2.png',NULL),(3,'01','ソフトウェアの開発モデル','スクラム','アジャイル開発手法の1つに「スクラム」があります。 スクラムとは、開発作業を一定の期間（スプリント）に区切って、その期間中に実現すべき機能を明確にし、チーム全体で開発に取り組む手法です。スプリントは複数回繰り返され、その都度、製品の改善や機能追加が行われます。',NULL,NULL,NULL),(4,'01','ソフトウェアの開発モデル','スクラムチーム','スクラムでは、開発を進めるチームのことを「スクラムチーム」と呼びます。スクラムチームは次の3つの役割で構成されます。 ',NULL,'/home/air/goalskill_t/back/img/section13/3.png',NULL),(5,'01','ソフトウェアの開発モデル','バックログとは','スクラムにおける「バックログ」とは、開発すべき機能のリストです。バックログにはプロダクトバックログとスプリントバックログの2種類があります。',NULL,'/home/air/goalskill_t/back/img/section13/4.png',NULL),(6,'01','ソフトウェアの開発モデル','スクラムのイベント','スクラムには次の4つのイベントがあります。スクラムでは、これらのイベントを通じて、チームのコミュニケーションを強化することで、柔軟かつ迅速な開発を実現します。','試験にはこれが出る！ \n・スプリントプランニング：スプリントの開始時に行われるミーティング \n・デイリースクラム：スプリントの期間中に毎日行われるミーティング \n・スプリントレビュー：スプリントの終了時に行われるミーティング \n・レトロスペクティブ：スプリントレビューの後に行われるミーティング','/home/air/goalskill_t/back/img/section13/5.png',NULL),(7,'01','ソフトウェアの開発モデル','ローコード開発とノーコード開発','最近は、ソースコードをほとんど書くことなくソフトウェアを作る手法である「ローコード開発」や「ノーコード開発」が注目されています。 ローコード開発 (Low-Code Development) とは、ソースコードをほとんど書かず、専用のツールを使って、GUIを用いた操作で部品を組み合わせて、ソフトウェアを開発することです。 また、ノーコード開発 (No-Code Development) は、ソースコードを一切書かずに、専用のツールを使って、GUIを用いた操作だけで部品を組み合わせて、ソフトウェアを開発することです。 これらの手法は、プログラミングの知識を必要とせず、かつ短期間でソフトウェアを開発できるため、業務アプリやプロトタイプの開発などで広く利用されています。','試験にはこれが出る！ \n・ローコード開発では、ソースコードをほとんど書かない \n・ノーコード開発では、ソースコードを一切書かない',NULL,NULL),(8,'01','ソフトウェアの開発モデル','リバースエンジニアリング','リバースエンジニアリングとは、すでに存在しているソフトウェアを解析して、その仕様や設計を取り出す技術です。 ソフトウェアを修正する際は、設計書などの文書も更新されるべきですが、なかには設計書が更新されないケースや、そもそも設計書がないケースもあります。すると、ソフトウェアのソースコードと書類に差異ができてしまい、設計書を見てもプログラムを把握できません。これでは困るので、そのようなケースでは、リバースエンジニアリングを行って、古いプログラムから新しい設計書を作成します。',NULL,'/home/air/goalskill_t/back/img/section13/6.png','リバースエンジニアリングでは、既存のプログラムからUMLのクラス図 (p.469) を作ったり、本番環境で稼働しているデータベースを分析してE-R図 (p.285) を作ったりします。リバースとは「逆にする」という意味です。'),(9,'01','ソフトウェアの開発モデル','フォワードエンジニアリングとリエンジニアリング','通常の工程（設計書からプログラムを作る）のことを「フォワードエンジニアリング」といいます。また、リバースエンジニアリングとフォワードエンジニアリングを組み合わせることを「リエンジニアリング」といいます。 リエンジニアリングとは、すでにあるプログラムを解析して新たにプログラムを作る技術です。つまり、リバースエンジニアリングを行ってから、フォワードエンジニアリングを行います。',NULL,NULL,NULL),(10,'01','ソフトウェアの開発モデル','マッシュアップ','マッシュアップとは、複数のWebサービスを組み合わせて新しいサービスを作る手法です。マッシュアップには、以下の3種類があります。',NULL,'/home/air/goalskill_t/back/img/section13/7.png',NULL),(11,'01','ソフトウェアの開発モデル','XP','XP (eXtreme Programming) とは、アジャイル開発を行うための19のプラクティス (実践) が定義された開発手法です。 なお、19のプラクティスのうち、基本情報技術者試験に出題されるのは「ペアプログラミング」と「リファクタリング」です。その他のプラクティスについては「こんなのがあるんだ」くらいの感じで、一読しておくだけで十分です。',NULL,'/home/air/goalskill_t/back/img/section13/8.png',NULL),(12,'01','ソフトウェアの開発モデル','ペアプログラミング','ペアプログラミングとは、2人のプログラマが1つのパソコンを使ってソフトウェアを開発する手法です。1人がプログラムを書いているとき、もう1人はそれをチェックします。2人が同じプログラムの内容を理解しながら作業を進めるので、1人が仕事を休んでも、もう1人が作業を続けることができます。',NULL,NULL,NULL),(13,'01','ソフトウェアの開発モデル','リファクタリング','リファクタリングとは、プログラムの外部仕様は変えずに内部構造を変えることです。 簡単にいえば、外部から見たプログラムの動作は変えずに、プログラム内部（ソースコード）を改善することです。 プログラムが整理されることで、不具合が減ったり、開発者の保守が簡単になったりします。',NULL,NULL,NULL),(14,'01','ソフトウェアの開発モデル','ソフトウェア構成管理','リバースエンジニアリング (p.496) の項で学んだように、設計書とプログラムに違いがあると、設計書を見てもプログラムの全容を把握できないので、困ることになります。 そういった問題を解決する方法の１つに、「ソフトウェア構成管理」という手法があります。 ソフトウェア構成管理 (Software Configuration Management : SCM) とは、ソフトウェアに関連する文書やプログラムへの変更を管理して、トラブルを未然に防ぐことです。 ソフトウェア構成管理を簡単にいうと、ソフトウェアのバージョンを管理することです。 ソフトウェアを変更するときには、バージョン１、バージョン２、というように変更の履歴（版数）を管理します。 こうすることで、もし新しいバージョンのリリース時に不具合があっても、一旦古いバージョンに戻すことができます。',NULL,NULL,NULL),(15,'01','ソフトウェアの開発モデル','構成品目','ソフトウェア構成管理の管理対象はさまざまです。 管理の対象となるものを構成品目といいます。 構成品目の具体例は、以下のとおりです。','試験にはこれが出る！ \n・リバースエンジニアリングとは、既存のソフトウェアを解析し、その仕様や構造を明らかにすること \n・ペアプログラミングとは、2人のプログラマが、1つのパソコンを使ってソフトウェアを開発すること \n・リファクタリングとは、プログラムの外部仕様を変更することなく、プログラムの内部構造を変更すること \n・ソフトウェア構成管理の主な対象項目は、文書とプログラムのバージョン','/home/air/goalskill_t/back/img/section13/9.png','ソフトウェア構成管理では、上記の構成品目に対して、文書であれば、文書の名前、作成日時、文書の版などを管理します。 また、プログラムであれば、プログラム名、プログラムID、作成日時、バージョン番号などを管理します。');

--
-- Table structure for table `section_14`
--

CREATE TABLE `section_14` (
  `id` int NOT NULL AUTO_INCREMENT,
  `chapter` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci,
  `main_title` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci,
  `sub_title` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci,
  `theory_description` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci,
  `tip` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci,
  `img` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci,
  `img_description` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=26 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

--
-- Dumping data for table `section_14`
--

INSERT INTO `section_14` VALUES (1,'01','プロジェクトマネジメント','プロジェクトマネジメントとは','プロジェクトマネジメントとは、プロジェクトを成功させるために、**経営資源（ヒト、モノ、カネ、情報）**をバランスよく管理する手法です。\nそもそも「プロジェクト」とは何でしょうか。プロジェクトとは、期限内に独自の商品やサービスを作るための業務です。プロジェクトには次の２つの特徴があります。\n\n・期限が決められている（有期性）\n\n・成果物が唯一無二の商品やサービスである（独自性）\n\nこの２つの特徴がある業務のことを「プロジェクト」といいます。身近な例では、受験勉強や就職活動もプロジェクトといえます。規模の大きい例では、リニアモーターカーの建設や、月面着陸計画などもプロジェクトの一例です。\n基本情報技術者試験で「プロジェクト」といった場合は主に「システム開発」のことを指します。通常、システム開発では期限内（有期性）に、毎回異なるシステム（独自性）を作ります。','もう少し詳しく！ プロジェクトと定常業務\n「プロジェクト」の対義語は「定常業務（オペレーション）」です。定常業務とは期限を設定せずに、同じやり方で、毎回同じ成果物を生み出す業務です。定常業務の例は車の生産部門です。車の生産部門は、毎回同じ車を作り出します（むしろ品質がバラバラな車を作り出すことのほうが問題です）。',NULL,NULL),(2,'01','プロジェクトマネジメント','プロジェクトに関わる人々','プロジェクトには、以下の人物が関わります。','試験にはコレが出る！\n\n・プロジェクトには「有期性」と「独自性」の２つの特徴がある\n\n・ステークホルダとは、プロジェクトと利害関係にある人','/home/air/goalskill_t/back/img/section14/1.png',NULL),(3,'01','プロジェクトマネジメント','PMBOK','PMBOK (Project Management Body of Knowledge) とは、プロジェクトマネジメントの体系化された知識です。くだけた言い方をすると、プロジェクトマネージャのための教科書です。\n従来は、各企業のプロジェクトマネージャが自身の経験や勘に頼って独自のマネジメントを行っていました。しかし、これではとても効率がよいとはいえません。\nそこで、プロジェクトマネジメントの知識を体系化しようという動きが生まれました。その結果として、アメリカのプロジェクトマネジメント協会が制作したのがPMBOKです。',NULL,NULL,NULL),(4,'01','プロジェクトマネジメント','PMBOKの10の知識エリア','PMBOKの内容は10種類に分類されます。これらを「10の知識エリア」と呼びます。基本情報技術者試験においては、（下表を参照）エリア名の前に「★」印を付けている５つが特によく出題されます。これらについては確実に習得しておいてください。次の項からはこの５つのエリアについて詳しく解説していきます。',NULL,'/home/air/goalskill_t/back/img/section14/2.png',NULL),(5,'02','プロジェクトスコープマネジメント','WBS','WBS (Work Breakdown Structure) とは、プロジェクトという１つの大きな作業を細かい作業単位に分割した図です。大きな作業 (Work) を分割 (Breakdown) することからこのような名前が付いています。\n\nプロジェクトに取りかかる際に、プロジェクトが１つの大きな塊のままでは、どのくらいの時間がかかり、どのくらいの費用がかかるのかを正しく見積もることができません。 そこで、WBSを用いて、プロジェクトの作業を「時間やコストを見積もることができる大きさ」になるまで細かく分割します。通常は、グループごとに階層状になるように、３〜４階層程度まで分割します。',NULL,'/home/air/goalskill_t/back/img/section14/3.png',NULL),(6,'02','プロジェクトスコープマネジメント','WBSの最も小さい作業単位','WBSの最も小さい作業単位のことを「ワークパッケージ」といいます。 このパッケージは、一般的には８〜80時間程度で作業が完了するくらいの大きさにします。 これ以上大きいと見積もりが曖昧になり、反対に、これより小さいと管理に時間がかかってしまいます。\n例えば、「１つが５分で終わる」ような小さいワークパッケージが１万個もあったら、１つひとに遅れがないかを調べるのは現実的ではありません。 作業を適度な大きさに分割することが重要です。','試験にはコレが出る！\n\n・プロジェクトスコープマネジメントとは、プロジェクトの目的や範囲を明確にすること\n\n・WBSの目的は、作業を管理可能な大きさに細分化すること',NULL,NULL),(7,'03','プロジェクト資源マネジメント','開発工数の求め方','ここでは、開発工数の求め方を解説します。 まずは下記の例題を見てください。',NULL,'/home/air/goalskill_t/back/img/section14/5.png','上記の問題を解くには、設問文の中に記載されている「開発規模」「生産性」「開発工数」の３つの用語の意味を把握しておく必要があります。'),(8,'03','プロジェクト資源マネジメント','開発工数の公式','開発工数は、以下の計算式で求めます。$$\\text{開発工数} = \\frac{\\text{開発規模}}{\\text{生産性}}$$理論説明：例題では、開発規模が1000行のソースコードで構成されるシステムを、生産性が100行／人日の要員で開発するので、開発工数は10人日が必要です。$$10\\text{人日} = \\frac{1000\\text{行}}{100\\text{行}/\\text{人日}}$$',NULL,NULL,NULL),(9,'03','プロジェクト資源マネジメント','開発期間の求め方','次に、開発期間の求め方を解説します。 下記の例題を見てください。',NULL,'/home/air/goalskill_t/back/img/section14/6.png','上記の設問文にある要員とは、プロジェクトに参加する開発要員です。 また、開発期間とは、システム開発が完了するまでの期間です。'),(10,'03','プロジェクト資源マネジメント','開発期間の公式','開発期間は、以下の計算式で求めます。 例題では、開発工数が10人日のプロジェクトを要員２人で開発するので、開発期間は５日になります。$$\\text{開発期間} = \\frac{\\text{開発工数}}{\\text{要員数}} \\longrightarrow 5\\text{日} = \\frac{10\\text{人日}}{2\\text{人}}$$',NULL,NULL,NULL),(11,'03','プロジェクト資源マネジメント','工数配分比率','工数配分比率とは、各開発工程を完了するのに必要な工数の割合です。 基本情報技術者試験では、工数配分比率が書かれた表が出題されることが多いです。 実際の過去問を通して、工数配分比率の問題に慣れておきましょう。\n\n上表の２行目に書かれた５つの数（0.08、0.16……など）が工数配分比率です。 ５つの数を足し合わせると「１」(100%)になります。\n基本設計からプログラム設計までの工数配分比率は合計44％ ($0.08 + 0.16 + 0.20$) です。 また、プログラミングは工数配分比率が25％割り当てられています。\nプログラミングは現在、3,000本中1,200本が完了しているので、完了した工数配分比率は10％ ($25\\% \\times 1,200 \\div 3,000$) です。 したがって、プロジェクト全体の進捗度は54％ ($44\\% + 10\\%$) になります。 よって、ウが正解です。','試験にはコレが出る！\n\n・開発工数 ＝ 開発規模 ÷ 生産性\n\n・開発期間 ＝ 開発工数 ÷ 要員数\n\n・工数配分比率とは、各開発工程を完了するのに必要な工数の割合','/home/air/goalskill_t/back/img/section14/8.png',NULL),(12,'04','プロジェクトスケジュールマネジメント','プロジェクトスケジュールマネジメントで使う３つの図','プロジェクトスケジュールマネジメントでは、主に以下の３つの図を使います。\n（１）トレンドチャート\n（２）アローダイアグラム\n（３）プレシデンスダイアグラム法',NULL,NULL,NULL),(13,'04','プロジェクトスケジュールマネジメント','(1) トレンドチャート','トレンドチャートとは、作業の進捗状況と予算の消費状況を関連付けた折れ線グラフです。 予定と実績の２つの折れ線グラフを描きます。\nまず、予定となるマイルストーン（進捗の節目）をつないで、予定の折れ線グラフを記入します。 その後、開発がスタートしたらマイルストーンに達するたびに実績の折れ線グラフを記入していきます。 予定と実績のマイルストーンの位置を比較することで、作業の進捗状況と予算の消費状況を同時に確認できます。 マイルストーンの予定と実績で、横軸の位置が同じであれば進捗が予定どおりだとわかります。 また、マイルストーンの予定と実績で縦軸の位置が同じであれば費用と予算が同じだとわかります。\n例えば、下図の中央のマイルストーンに注目してください。 マイルストーンの実績は予定の真下に位置します。 これは、進捗は予定どおりで、費用が予算を下回っていることを表します。','試験にはコレが出る！\nトレンドチャートとは、作業の進捗状況と、予算の消費状況を関連付けて折れ線グラフで示したもの','/home/air/goalskill_t/back/img/section14/9.png',NULL),(14,'04','プロジェクトスケジュールマネジメント','(2) アローダイアグラム','プロジェクトスケジュールマネジメントでは、個々の作業の順序関係などを明確に表すために「アローダイアグラム」という図を使います。\nアローダイアグラム (Arrow Diagram) とは、作業の流れを矢印 (Arrow) で表した図です。 矢印の上部に作業名を記述し、下部に所要日数を記述します。 アローダイアグラムを使うと、作業項目の順序関係や依存関係を表すことができるため、プロジェクトの完了までに最も時間のかかる経路を発見できます。','試験にはコレが出る！\n\n・アローダイアグラムとは、作業の流れを矢印で表した図\n\n・PERTとは、アローダイアグラムを使ったプロジェクトの分析手法','/home/air/goalskill_t/back/img/section14/11.png','上表にあるダミー作業とは、所要日数が０日の作業です。 作業としては何もしませんが、依存関係を表すために記載します。 上図にはダミー作業が１つだけ含まれていますが、この記号によって「作業Ｅは作業Ｂと作業Ａが完了しないと開始できない」という意味になります。\nなお、アローダイアグラムを使ったプロジェクトの分析手法のことを「PERT (Program Evaluation and Review Technique)」と呼びます。'),(15,'04','プロジェクトスケジュールマネジメント','(3) プレシデンスダイアグラム法','プレシデンスダイアグラム法 (Precedence Diagramming Method) とは、アクティビティ（作業）間の依存関係を図示する手法です。 上記で解説したアローダイアグラムよりもさらに精密に作業日程を分析できます。\nプレシデンスダイアグラムとアローダイアグラムの違いは以下の３つです。\n\n(1) 作業を「アクティビティ」と呼ぶ\nアローダイアグラムにおける「作業」を、プレシデンスダイアグラム法では「アクティビティ」と呼びます。アクティビティとは、プロジェクトで実施される個々の作業です。アクティビティという用語は設問中に登場するので覚えておきましょう。\n\n(2) 作業項目を四角で表す\nアローダイアグラムでは作業を矢印で表しましたが、プレシデンスダイアグラム法ではアクティビティ（作業）を四角形で表します。\n\n(3) 依存関係が４種類ある\nアローダイアグラムでは先行作業が終了すれば後続作業を開始できます。 このような依存関係を「終了ー開始関係（FS関係：Finish-to-Start）」といいます。 アローダイアグラムには、この関係しかありませんが、プレシデンスダイアグラム法では全部で４種類の依存関係を表現できます。','試験にはコレが出る！\n\n・終了ー開始関係とは、Aが終了すれば、Bが開始できる関係\n\n・終了ー終了関係とは、Aが終了すれば、Bが終了できる関係\n\n・開始ー開始関係とは、Aが開始すれば、Bが開始できる関係\n\n・開始ー終了関係とは、Aが開始すれば、Bが終了できる関係','/home/air/goalskill_t/back/img/section14/13.png',NULL),(16,'04','プロジェクトスケジュールマネジメント','最短日数とクリティカルパス','ここまでで、プロジェクトスケジュールマネジメントで使う３つの図（トレンドチャート、アローダイアグラム、プレシデンスダイアグラム法）を紹介しました。 これらはいずれも非常に重要な図なので、ぜひ概要は押さえておいてください。\n中でも、基本情報技術者試験ではこれらのうち、アローダイアグラムを用いて作業の「最短日数」や「クリティカルパス」を求める問題が頻繁に出題されます。 これは必ず習得するようにしてください。',NULL,NULL,NULL),(17,'04','プロジェクトスケジュールマネジメント','最短日数','問題文に「最短日数」と書かれている場合は注意が必要です。 最短日数とは、すべての作業が遅延なく完了した場合の日数です。 これはみなさん勘違いしやすいので注意しましょう。\n例えば、以下のようなアローダイアグラムを持つプロジェクトを考えます。 A→Bの経路の作業日数は２日 ($1+1=2$)、C→Dの経路の作業日数は６日 ($3+3=6$) です。 A→Bの経路が先に完了しても、C→Dの経路が完了するまでプロジェクトは終わりません。 よって、このプロジェクトが終了するまでに必要な最短日数は６日となります。\n\nつまり、ここでいう「最短」とは、**プロジェクト内の作業がすべて予定どおりに終わった場合（最短で終わった場合）**という意味になります。 もしＣの作業が１日遅れると最短日数は７日 ($4+3=7$) になります。',NULL,'/home/air/goalskill_t/back/img/section14/14.png',NULL),(18,'04','プロジェクトスケジュールマネジメント','クリティカルパス','クリティカルパスとは、プロジェクトの作業経路において最も時間のかかる経路です。 この経路の日数が、プロジェクトを終了させるのに必要な最短日数となります。 この経路上の作業が遅れると、プロジェクト全体が遅れます。 クリティカルは「重大な」、パスは「経路」という意味です。\n下図においては、A→B→Eの経路（赤い経路）がクリティカルパスです。','試験にはコレが出る！\n\n・クリティカルパスとは、プロジェクトにおいて最も時間のかかる経路\n\n・アローダイアグラムのクリティカルパスと最短日数を求めるにはすべての経路を計算する','/home/air/goalskill_t/back/img/section14/15.png','すべての経路の作業日数を計算すると次のようになります。①A→B→C：$1 + 2 + 2 = 5\\text{日}$②A→B→E：$1 + 2 + 3 = 6\\text{日}$③D→E　 ：$2 + 3 \\quad = 5\\text{日}$上記３つの経路の中で、最も時間のかかる経路は②です。 よって、②の経路がクリティカルパスになります。 このクリティカルパスでは全作業を完了するまで（プロジェクトが終了するのに必要な最短日数）に６日間必要です。仮に、別の経路、例えば上図ではＤの作業が２日遅延した場合、③の作業日数が７日 ($4+3$) となり、クリティカルパスがD→Eに変更されます。基本情報技術者試験では、クリティカルパスを見つける問題が頻出します。クリティカルパスを探す方法は上記のように「すべての経路を計算」する方法が最も確実です。'),(19,'04','プロジェクトスケジュールマネジメント','スケジュールを短縮する技法','基本情報技術者試験では、以下のスケジュールを短縮する技法が出題されます。',NULL,'/home/air/goalskill_t/back/img/section14/16.png',NULL),(20,'04','プロジェクトスケジュールマネジメント','クラッシング','クラッシングとは、投入する資源を増やしてスケジュールを短縮する技法です。 具体的には、新しい要員を増やしたり、既存の要員の時間外作業時間を増やしたりして、プロジェクトのスケジュールを短縮します。\n新たに増やした要員や、要員の時間外作業時間は、アローダイアグラム上のクリティカルパス上にあるアクティビティに投入します。 なぜなら、クリティカルパスが最も時間のかかる作業経路だからです。クリティカルパスを短縮しないことにはプロジェクト全体の作業時間を短縮できません。\nなお、クラッシュ (Crash) には「急激な変化」というニュアンスがあり、ここからクラッシング (Crashing) は「スケジュールを急激に短縮する」という意味になります。',NULL,NULL,NULL),(21,'04','プロジェクトスケジュールマネジメント','ファストトラッキング','ファストトラッキングとは、作業を並列に実行してスケジュールを短縮する技法です。 下図はファストトラッキングを使う前と後のアローダイアグラムの例です。',NULL,'/home/air/goalskill_t/back/img/section14/17.png','上図ではファストトラッキングを使って、作業Ａを、作業A1、A2、A3の３つに分けています。 作業Ａの作業日数は６日、また、作業A1、A2、A3の作業日数の合計も６日で同じです。 このような場合に、A1とA2が並列に実行できる作業ならば、このアローダイアグラムのクリティカルパスは「A1→ダミー作業→A3」となり、全体の作業日数は４日 ($3+1$) になります。\nこのように、ファストトラッキングでは、大きな作業を「並列に実行できる小さな作業」に分割することで、スケジュール全体の作業日数を短縮します。'),(22,'04','プロジェクトスケジュールマネジメント','不正解選択肢を覚えよう','クリティカルパスには「作業員などの資源が足りていない状況を想定していない」という欠点があります。 この欠点を補う方法である「クリティカルチェーン法」は、基本情報技術者試験では不正解選択肢としてよく出題されます。 また、「モンテカルロ法」も不正解選択肢としてよく出題されるので併せて紹介します。','試験にはコレが出る！\n\n・クラッシングとは、アクティビティに割り当てる資源を増やして、アクティビティの所要期間を短縮する技法\n\n・ファストトラッキングを使って、スケジュールを何日短縮できるかを問う計算問題が出題される','/home/air/goalskill_t/back/img/section14/18.png',NULL),(23,'05','プロジェクトコストマネジメント','見積もり手法','見積もり手法とは、システムの開発工数などを見積もるための方法です。見積もり対象は他に、開発期間、開発規模、開発要員数などがあります。\n車などの商品は、実物が目に見えるので見積もりは比較的簡単です。一方、ソフトウェアは目に見えないので見積もりが困難です。しかし、それでも見積もりを行わないとシステム開発の受発注ができません。そこで、目に見えないソフトウェア開発をなんとかして見積もるための手法がいくつか考案されました。\n主な見積もり手法の中でも、基本情報技術者試験では「ファンクションポイント法」が最もよく出題されます。また、他の見積もり手法は不正解選択肢として出題されることが多いので、誤って選択してしまわないように、概要を把握しておいてください（ただし、内容を暗記する必要はありません）。',NULL,'/home/air/goalskill_t/back/img/section14/19.png',NULL),(24,'05','プロジェクトコストマネジメント','ファンクションポイント法','ファンクションポイント法とは、システムが提供する機能（ファンクション）に点数（ポイント）を付けて見積もる方法です。他の見積もり方法が開発者視点なのに対して、ファンクションポイント法は利用者（ユーザー）視点です。\nユーザーにとって理解しやすい「入力」「出力」などの機能単位で見積もりをするので、ユーザーにとって、見積もりの根拠がわかりやすいというメリットがあります。ファンクションポイント法はISOでも規格化されていて、システム開発で最も普及しているので、基本情報技術者試験でも頻繁に出題されます。\nファンクションポイント法では、システムの機能を以下の５種類に分類します。\n\n具体的なファンクションポイント法の見積もり手順を、基本情報技術者試験の過去問題を用いて解説します。\n\nシステム全体のファンクションポイントは、以下の手順で計算します。\n\n（１）各機能の個数と重み付け係数をかけ算して、仮の合計点を出す\n\n（２）「複雑さの補正係数」をかけ算して、最終的な見積もりを算出する\n\n上記の例では、複雑さの補正係数（調整係数ともいう）は「0.75」です。そのため、次の図のように計算します。この問題のファンクションポイントは「18」となります。','試験にはコレが出る！\n\n・ファンクションポイント法は、外部入出力や内部論理ファイル、照会、インタフェースなどの個数や特性などから開発規模を見積もる\n\n・ファンクションポイント法の計算方法が試験に出る','/home/air/goalskill_t/back/img/section14/22.png',NULL),(25,'06','プロジェクトリスクマネジメント','４つの対応策','プロジェクトリスクマネジメントでは、事前に「リスクによる損害の大きさ」や「発生確率」などを計算することで、対処すべきリスクの優先順位を決めておきます。 そして、実際に問題が発生した場合はその優先順位にしたがって対応します。\nリスクの対応策は大きく次の４つに分類できます。\n\n(1) リスク回避\n理論説明：リスク回避とは、リスクに関わる作業をしないことで、リスクをなくします。 例えば、リスクのある作業を作業範囲（スコープ）から外すことなどが考えられます。\n\n(2) リスク移転\n理論説明：リスク移転とは、リスクを自社から他社へ移すことです。 例えば、リスクのある作業を外部委託したり、保険を掛けたりすることなどが考えられます。 なお、リスク移転は「リスク転嫁」とも呼ばれます。\n\n(3) リスク低減\n理論説明：リスク低減とは、リスクの発生確率を下げたり、被害額を小さくすることです。 例えば、より多くのテストを実施して、不具合が起こる可能性を減らしたり、安定した技術を使って製品を開発し、不具合が起こる可能性を減らすことなどが、リスク低減の方法として考えられます。 なお、リスク低減は「リスク軽減」とも呼ばれます。\n\n(4) リスク保有\n理論説明：リスク保有とは、リスクをそのまま受け入れることです。 被害額よりも、リスク対策の費用のほうが高い場合は、リスクをそのまま受け入れるほうが合理的です。 つまり「何もしない」という対応策です。 なお、リスク保有は「リスク受容」とも呼ばれます。','試験にはコレが出る！\n\n・リスク回避：リスクを取らない\n\n・リスク移転：他人にリスクを取ってもらう\n\n・リスク低減：リスクを減らす\n\n・リスク保有：リスクを受け入れる','/home/air/goalskill_t/back/img/section14/23.png',NULL);

--
-- Table structure for table `section_15`
--

CREATE TABLE `section_15` (
  `id` int NOT NULL AUTO_INCREMENT,
  `chapter` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci,
  `main_title` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci,
  `sub_title` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci,
  `theory_description` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci,
  `tip` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci,
  `img` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci,
  `img_description` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=29 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

--
-- Dumping data for table `section_15`
--

INSERT INTO `section_15` VALUES (1,'01','サービスマネジメントとシステム移行','サービスマネジメントとは','サービスマネジメントとは、利用者に対するサービスを維持・改善する活動です。 前章で解説した「プロジェクトマネジメント」は１回限りの期間限定の活動ですが(p.504)、サービスマネジメントは定常的な活動です。 多くの場合において、システム開発は「システムを納品して終わり」にはなりません。 納品後も、サービスマネジメントを行い、サービスレベルを維持・改善する必要があります。',NULL,NULL,NULL),(2,'01','サービスマネジメントとシステム移行','サービスマネジメントシステムとITサービスマネジメント','サービスマネジメントシステムとは、サービスマネジメントを効率的に管理するための仕組みです。 SMS (Service Management System)と略されることもあります。\nITサービスマネジメントとは、ITサービスを維持・改善していくことです。 サービスマネジメントの一部です。 ここでいう「ITサービス」とは、全サービスのうちの、インターネットや携帯電話などのITを用いたサービスです。 アナログなサービス(接客など)は含まれません。',NULL,NULL,NULL),(3,'01','サービスマネジメントとシステム移行','サービスレベル','サービスレベルとは、ユーザーに対するサービスの品質です。 サービス提供者はサービスマネジメントを行い、できるだけ高いサービスレベルを提供します。\nどれほどすばらしいシステムを開発し、納品したとしても、運用の段階でサービスレベルが低くなってしまうと、そのシステムの評価は下がってしまいます。\nなぜなら、ユーザーが最終的に求めているものは「システム」ではなく、「そのシステムから得られるサービス」だからです。 例えば、財務会計システムの場合、ユーザーが求めているのは財務会計システムそのものではなく、「財務諸表を作る」というサービスです。 そのため、システム開発は作って終わりではなく、次のステップとして、そのシステムを元に、いかに品質のよいサービス、つまりサービスレベルの高いサービスをユーザーに提供できるかが重要になります。',NULL,NULL,NULL),(4,'01','サービスマネジメントとシステム移行','ITIL','ITIL (Information Technology Infrastructure Library) とは、ITサービスマネジメントの**ベストプラクティス（最良の事例）**が書かれた本です。 ITILには、実際に使われ、そして効果のあったITサービスマネジメントの事例がまとめられています。\nITILの考え方を取り込んだ「ISO/IEC 20000」という規格があります。 この規格はITサービスマネジメントに関する国際規格です。 組織が提供するITサービスの内容やリスクを明確にし、サービスの継続的な管理、高い効率性、継続的改善を実現するための枠組みを示しています。 この規格を日本語に翻訳したものが「JIS Q 20000」です。',NULL,'/home/air/goalskill_t/back/img/section15/1.png',NULL),(5,'01','サービスマネジメントとシステム移行','サービスマネジメントシステムにおけるPDCA','サービスマネジメントシステム(SMS)では、PDCAという手法を取り入れています。 PDCAとは、Plan(計画)→Do(実行)→Check(評価)→Act(改善)の４つのプロセスを繰り返すことによって、継続的に業務を改善していく手法です。 以下はJIS Q 20000に記載されているPDCAの説明です。',NULL,'/home/air/goalskill_t/back/img/section15/2.png',NULL),(6,'01','サービスマネジメントとシステム移行','システム移行方式','長くサービスを提供していると、維持・改善のために運用途中でシステムを入れ替えるケースがあります。 その場合は、システムの移行を行います。 システムの移行とは、現在運用しているシステムを、新しいシステムに切り替える作業です。\nシステムの移行方式は大きく３種類あります。 このうち、基本情報技術者試験では「一斉移行方式」が特によく出題されます。 必ず覚えておいてください。','試験にはコレが出る！\n\n・PDCAは、Pが計画、Dが実行、Cは評価、Aが改善\n\n・一斉移行方式のデメリットは、トラブルの影響が大きいこと','/home/air/goalskill_t/back/img/section15/4.png',NULL),(7,'02','サービスレベル管理','SLA','SLA (Service Level Agreement : サービスレベル合意書) とは、サービス提供者とサービス利用者との間で取り決めたサービスレベル（サービスの品質や範囲）を明文化した書類です。\nサービスを維持していくには、サービスサポートや定期点検、設備の維持などの費用がかかります。 しかし、サービスは目に見える物理的な「実体」がないため、どの程度のサービスレベルが適切であるのかが曖昧になりがちです。\nそこで、事前に話し合ってSLAを作成して文書を残しておくことで、サービスの提供者と利用者の間でサービスレベルについて合意をしておくことが重要になります。\n\nサービス利用者側がSLAを作るメリットは、求めるサービスレベルを保証してもらえることです。 万が一サービスレベルがSLAの内容を満たしていない場合、契約を解除できます。\n一方、サービス提供者側がSLAを作るメリットは、サービスの範囲と品質が明確になることです。 サービスの範囲と品質が明確になることではじめて、サービスの価格を決めることができます。 サービスは無形の商品なので、範囲や品質を決めておかないとキリがありません。 もし、サービスレベルを無制限に高めようとすると、それを実現するためのコストも無制限に高くなります。\n次の一文はSLAの一例です。契約書なので少し堅い文章で書かれています。','学習のポイント　略語を覚える\n基本情報技術者試験では、「サービスレベル合意書」という日本語よりも、「SLA」という英略語のほうがよく出ます。 英語の略語は非常に多くて覚えるのが面倒ですが、SLAは頻出用語なのでぜひ覚えておいてください。','/home/air/goalskill_t/back/img/section15/6.png',NULL),(8,'02','サービスレベル管理','可用性管理','可用性管理とは、ユーザーが求めるサービスレベルのうちの「可用性を確保するための活動」です。 可用性とは「サービスを使いたいときに、使えること」です。 具体例としては、サービスの提供時間や稼働率などが挙げられます。\n可用性という言葉は普段の生活ではあまり使うことがないので覚えにくいと思いますが、「使用することが可能である」＝「使いたいときに使える」と覚えてください。','試験にはコレが出る！\n\n・可用性とは、使いたいときに使えること\n\n・可用性の問題では稼働率を計算する問題が出題される (p.547を参照)',NULL,NULL),(9,'03','サービスデスク','インシデント管理','インシデント管理とは、サービスを迅速に復旧させる活動です。 基本情報技術者試験におけるインシデントとは「正常に業務を遂行できない状況」です。 具体的には「PCが起動しない」「電子メールが送信できない」といった状況をインシデントといいます。 インシデント管理では、こういった状況を迅速に復旧させるための作業を行います。\n「インシデント管理」と聞くと、トラブルや障害の根本原因を解決するような作業をイメージする人が多いのですが、インシデント管理では問題の根本解決は行いません。 サービスの継続を優先し、問題を回避する手段があるならば（それが根本解決ではなかったとしても）、それを実行します（PCの再起動など）。\nなお、トラブルや障害の根本原因は次項の「問題管理」プロセスで解決します。',NULL,NULL,NULL),(10,'03','サービスデスク','既知の誤り','既知の誤りとは、根本原因がすでに特定されているか、もしくは回避策がすでにあるが、まだ解決されていない問題です。\nすでに回避策がある問題ならば、サービスの利用者から障害報告があった場合にすぐに対応できます。 そこで、インシデント管理では、障害報告があった場合に、その問題が「既知の誤り」に該当するかどうかを確認します。',NULL,NULL,NULL),(11,'03','サービスデスク','問題管理','問題管理とは、インシデント（正常に業務を遂行できない状況）の根本原因を究明し、再発を防止する活動です。 前項の「インシデント管理」では障害の根本原因の究明よりも、迅速な復旧が求められますが、問題管理では、障害の根本原因の究明が主たる作業になります。',NULL,NULL,NULL),(12,'03','サービスデスク','インシデント ≠ 問題','基本情報技術者試験では「インシデント」と「問題」が明確に区別されています。\n繰り返しになりますが、インシデントとは「通常の業務を遂行できない状況」です。 風邪で例えるならば、インシデントは発熱や咳などの症状です。\n一方、問題とは「インシデントを引き起こしている根本原因」です。 風邪で例えるならば、ウイルスや細菌などです。 「PCが起動しない状況」がインシデントであり、「電源プラグがコンセントから抜けていた」が問題です。','試験にはコレが出る！\n\n・既知の誤りとは、根本原因が特定されている、または、回避策が存在している問題\n\n・インシデント管理では、その問題が既知の誤りに該当するかどうかを確認する',NULL,NULL),(13,'03','サービスデスク','サービスデスク','サービスデスクとは、トラブルなどの問い合わせを受け付ける単一の窓口です。 「単一の」とは、窓口が１つしかないということです。 問い合わせ窓口がたくさんあると、ユーザーはどこに問い合わせるべきか混乱するので窓口は一本化します。 ただし、窓口が１つしかないといっても、物理的に従業員が１人で対応していたり、机が１つであったりするわけではありません。 ここでいう「単一」というのは、ユーザーから見た問い合わせ先が１つしかないという意味です。\n\nサービスデスクの目的は、サービスレベルを低下させないことです。 そのため、サービスデスクは、問題管理に基づいた「根本原因の究明」よりも、インシデント管理に基づいた「迅速な回答や復旧」を優先して行います (p.541)。\n具体的な作業内容としては、利用者のトラブル対応や、問い合わせの記録と管理、適切な部署への引継ぎ、対応結果の記録などを行います。\n基本情報技術者試験では「サービスデスクの目的は（問題管理ではなく）インシデント管理である」ことが問われます。 インシデント管理であるということは、原因究明はせず、サービスの迅速な復旧を第一の目的にするということです。 このことは必ず覚えておいてください。',NULL,'/home/air/goalskill_t/back/img/section15/7.png',NULL),(14,'03','サービスデスク','サービスデスクの４つの種類','サービスデスクには、４つの種類があります。 このうち、基本情報技術者試験では「ローカルサービスデスク」が頻出です。','試験にはコレが出る！\nローカルサービスデスクとは、ユーザーが住んでいる地域ごとに設置されるサービスデスク','/home/air/goalskill_t/back/img/section15/8.png',NULL),(15,'04','ファシリティマネジメント','ファシリティマネジメント','ファシリティマネジメントとは、建物や設備の保有や運用、維持などを最適化する手法です。 ファシリティとは「設備」という意味です。',NULL,NULL,NULL),(16,'04','ファシリティマネジメント','さまざまな「マネジメント」','本書ではこれまでに「プロジェクト」や「サービス」を対象にしたマネジメントについて解説してきました。 この項で学ぶ「ファシリティマネジメント」を含めた３種類のマネジメントの違いを、次ページの表で確認しておいてください。',NULL,'/home/air/goalskill_t/back/img/section15/9.png',NULL),(17,'04','ファシリティマネジメント','サージ防護','サージ防護とは、落雷などで瞬間的に発生する高い電圧からシステムを守ることです。 落雷によって起きる過電圧のことを「雷サージ」といいます。\nサージ防護を行っていない環境で雷サージが発生すると、電源ケーブルやLANケーブルに大きな電圧がかかり、コンピュータなどの電子機器が壊れてしまいます。 このような事態に備えるために、ファシリティマネジメントでは「サージ保護デバイス」の導入を検討します。 サージ保護デバイスとは、瞬間的に発生する高い電圧からシステムを守るための機器です。',NULL,'/home/air/goalskill_t/back/img/section15/10.png',NULL),(18,'04','ファシリティマネジメント','UPS','UPS (Uninterruptible Power Supply : 無停電電源装置) とは、停電時にコンピュータに一時的に電力を供給する装置です。 UPSには「停電時に、すぐに電力を供給できる」というメリットがあります。\n一方、UPSには「一時的にしか電力を供給できない」というデメリットもあります。 UPSが始動した際は、早急にコンピュータをシャットダウンするなどして、作業中のデータを守ることが重要です。','試験にはコレが出る！\n\n・サージ保護デバイスとは、落雷によって発生する過電圧の被害から情報システムを守るための手段\n\n・UPS（無停電電源装置）とは、一時的に電力を供給する装置',NULL,NULL),(19,'05','システム監査','監査とは','監査とは、企業活動が正しく行われているかを調査することです。監査を例えるなら、探偵の仕事です。探偵は依頼人からの要請を受け、尾行などをして調査対象となる情報を集めます。最終的に集めた情報と、それを裏付ける証拠写真などを、依頼人に結果として報告します。\n探偵の調査対象となるのは人間ですが、監査の対象は業務、会計、情報システム、情報セキュリティなどです。それぞれに対する監査を、業務監査、会計監査、システム監査、情報セキュリティ監査といいます。基本情報技術者試験では、「システム監査」と「情報セキュリティ監査」が頻出です。これら以外の監査が出題されることは稀です。',NULL,NULL,NULL),(20,'05','システム監査','システム監査とは','システム監査とは、企業が情報システムにまつわるリスクに適切に対処しているかどうかを、独立した立場のシステム監査人が評価することです。企業における情報システムの重要性が年々高まるなかで、不正アクセスなどが起こるリスクをきちんとコントロールすることが企業の経営課題になっており、それにきちんと対処するためにも、システム監査を行うことが必須になっています。',NULL,NULL,NULL),(21,'05','システム監査','システム監査のための２つの基準','システム監査の内容が、監査する人によって甘かったり、厳しかったりすると、正しい監査を行うことができません。そこで、システムを正しく評価するための統一的な基準が定められています。それが「システム管理基準」です。これは企業が従うルールです。\nまた、監査人が守るべきルールも定められています。それが「システム監査基準」です。これは監査人が従うルールです。どちらの文書もインターネット上に公開されています。試験までに一度くらいは眺めておくことをお勧めします。\n\nプロジェクトマネジメントには「PMBOK」、ITサービスマネジメントには「ITIL」という本がありました。システム監査では上記の２つが評価の基準となる文書です。',NULL,'/home/air/goalskill_t/back/img/section15/11.png',NULL),(22,'05','システム監査','システム監査の３つのポイント','システム監査を行う際に気をつけるべきポイントとして、次の３つがあります。\n\n中でも安全性の「不正アクセス」への対策となる「アクセス管理が適切か否か」が重要です。アクセス管理とは、許可されたユーザーだけがシステムにアクセスできるように制御することです。アクセス管理が正しく行われていないと、誤ってデータを消してしまったり、悪意のある人がシステムに不正アクセスしたりする可能性が生じます。',NULL,'/home/air/goalskill_t/back/img/section15/12.png',NULL),(23,'05','システム監査','情報セキュリティ監査とは','業務監査、会計監査、システム監査、情報セキュリティ監査という４つの監査のうち、「情報セキュリティ監査」はシステム監査のうちの情報セキュリティに特化した監査です。\nシステム監査と情報セキュリティ監査の違いは「監査の対象」です。システム監査の対象は「システム」であり、情報セキュリティ監査の対象は「情報資産」です。情報資産とは紙やコンピュータに保存された価値のある情報です。',NULL,NULL,NULL),(24,'05','システム監査','情報セキュリティ監査の３つのポイント','基本情報技術者試験では、情報セキュリティ監査で気をつけるべき３つのポイントが設問の中に頻繁に登場します。その３つとは、情報セキュリティマネジメントの三大特性です (p.427)。','試験にはコレが出る！\n\n・安全性の検証項目は、アクセス管理機能\n\n・機密性とは、認められた人だけが情報にアクセスできること\n\n・完全性とは、情報が正確であり、改ざんや破壊が行われていないこと\n\n・可用性とは、必要なときに情報にアクセスできること','/home/air/goalskill_t/back/img/section15/13.png','ただし、これらの用語の定義が直接出題されることは稀です。実際の試験では、事例が出題されます。事例は千差万別で暗記することができないので、章末の過去問を見て、出題形式に慣れておいてください。'),(25,'05','システム監査','監査の流れ','監査に関する問題では、設問中に次の３人の人物が登場します。これらの用語の意味がわからないと、正答できないことがあるので、まずは下図を見て、それぞれの役割を把握しておいてください。\n\n・①依頼\n理論説明：監査は依頼人が監査人に依頼をするところからスタートします。依頼人は通常、経営者です。経営者が社内の情報システムが安全か、効率的か、不正がないかなどを調べるために監査を依頼します。\n\n・②調査\n理論説明：依頼を受けた監査人は被監査部門を調査します。監査人は通常、公認会計士やコンサルタント会社、社内の監査部門などが務めます。\n監査を受ける部門を被監査部門といいます。システム監査の被監査部門は、通常、そのシステムを使っている部門です。社内には営業部門、会計部門、情報システム部門など、さまざまな部門があります。例えば、営業部門がシステムから顧客リストを出力している場合は「個人情報の取り扱い方法が正しいかどうか」が監査の対象になったりします。\n監査人は、ヒアリング、現地調査、レビューなどの調査を行います。ヒアリングとは、聞き取り調査です。面談やインタビューなどで、被監査部門から情報収集します。ヒアリングで大事なことは、聞いたことの裏付けを取ることです。この裏付けを「監査証拠」といいます。ヒアリングで相手が嘘をつくこともあります。ですからヒアリングで得た情報が事実であることの監査証拠となる文書や記録を手に入れる必要があります。\n\n・③報告\n理論説明：調査が終わると、監査人は依頼人に監査報告書を提出します。\n\n・④改善命令\n理論説明：依頼人は監査報告書を元に、被監査部門に対して改善命令をします。\n\n・⑤改善\n理論説明：被監査部門は改善命令に基づいて、改善活動を行います。被監査部門の役割は、監査人から不備を指摘された場合に、改善計画を立て、改善活動を行うことです。\nなお、監査人は改善指導をするだけで、主体的に改善活動を行うことはありません。この点はとても重要なので、確実に覚えておいてください。システム監査はあくまで、検証や評価だけを行います。監査で見つかった弱点や不具合を改善するのは、被監査部門の仕事です。探偵の例でいえば、探偵は不正を見つけるまでが仕事で、不正を改善することはないのと一緒です。','試験にはコレが出る！\n\n・ヒアリングでは、得た情報の裏付けとなる文書や記録を入手する\n\n・報告とは、監査結果を依頼人に報告すること\n\n・監査人は自ら改善しない','/home/air/goalskill_t/back/img/section15/14.png',NULL),(26,'05','システム監査','監査人の独立性','基本情報技術者試験では、システム監査人の「独立性」に関する知識が問われます。監査人は独立した第三者であることが必要です。より具体的には、被監査部門と利害関係がない者です。利害関係があると監査対象を正しく評価できない可能性があります。\n右図は内部監査の場合の監査部門の位置づけです。経理部や営業部、情報システム部などとは異なる、独立した組織になっており、独立性を保っていることがわかります。','試験にはコレが出る！\n監査人は、独立した第三者','/home/air/goalskill_t/back/img/section15/15.png',NULL),(27,'06','内部統制','コーポレートガバナンス','コーポレートガバナンス（企業統治）とは、株主を中心としたステークホルダが、企業活動を監視することです。 一般的には、会社を健全に経営するのは経営者の役割です。 しかし実際には、経営者が会社を私物化したことによって起こる不祥事が後を絶ちません。 そのため、コーポレートガバナンスでは、トップマネジメント（経営陣）の構造や経営を監視します。 また、コーポレートガバナンスでは、組織の内部に自浄能力があるかなども監視します。',NULL,'/home/air/goalskill_t/back/img/section15/16.png',NULL),(28,'06','内部統制','内部統制','組織内部の自浄能力を高めるのに必要なのが内部統制です。 内部統制とは、社内のすべての人が業務を健全化することです。 内部統制の一例としては、職務分掌があります。 職務分掌とは、担当者の役割や仕事の権限を明確にすることです。 例えば、経費の申請・精算処理において、申請者と承認者を分けることなどが挙げられます。 仮に申請者と承認者が同一人物の場合は、不正や間違いを防ぐことはできません。 一方で、職務分掌によって申請者と承認者を分ければ、不正申請や申請ミスなどを防ぐことができます。\n内部統制の運用においては、会社に属する全員に一定の役割があります。 ただ、内部統制の整備と運用の責任を持つのは経営者です。\n内部統制はコーポレートガバナンスを実現するための手段であるともいえます。 なぜなら、コーポレートガバナンスで経営を監視したとしても、業務が正しく行われなければ健全な経営は実現できないからです。 つまり、コーポレートガバナンスを実現するには、内部統制を整備することが必要不可欠です。','試験にはコレが出る！\n\n・コーポレートガバナンスとは、ステークホルダが企業活動を監視すること\n\n・職務分掌とは、担当者の役割や仕事の権限を明確にすること\n\n・内部統制の責任者は経営者',NULL,NULL);

--
-- Table structure for table `section_16`
--

CREATE TABLE `section_16` (
  `id` int NOT NULL AUTO_INCREMENT,
  `chapter` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci,
  `main_title` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci,
  `sub_title` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci,
  `theory_description` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci,
  `tip` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci,
  `img` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci,
  `img_description` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=34 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

--
-- Dumping data for table `section_16`
--

INSERT INTO `section_16` VALUES (2,'01','情報システム戦略','情報システム戦略とは','そもそも「情報システム戦略」とは何でしょうか。情報システム戦略とは、情報システムを活用した機能別戦略です。 企業をピラミッド型の組織として考えると、最も上位に経営理念があり、その下に、ビジョン、企業戦略、事業戦略、機能別戦略が続きます。このうち、情報システム戦略は情報システム部門の機能別戦略です。','学習のポイント 情報システム戦略と情報戦略 \n基本情報技術者試験では「情報システム戦略」のことを「情報戦略」と表記する場合があります。','/home/air/goalskill_t/back/img/section16/1.png',NULL),(3,'01','情報システム戦略','全体最適化','上記の情報システム戦略を立てるうえで必須となる考え方に「全体最適化」があります。 全体最適化とは、組織全体の効率化を図ることです。全体最適化の反対の言葉は「部分最適化」です。部分最適化とは、現場からの不満を吸い上げて、部門ごとにシステムを導入して効率化を図ることです。部分最適化を進めると、その部門の効率は改善しますが、企業全体としては、効率化とは反対に、非効率化が進むことがあります。なぜなら、その部門にとって都合のよいシステムが別の部署にとっても都合がよいとは限らないからです。 このため、情報システム戦略を立案する際は、部分最適化ではなく、常に全体最適化を考えることが重要になります。',NULL,NULL,NULL),(4,'01','情報システム戦略','エンタープライズアーキテクチャ','具体的にどうやって全体最適化を行うのかを解説します。全体最適化の具体的な手法の1つに「エンタープライズアーキテクチャ」があります。 エンタープライズアーキテクチャ（Enterprise Architecture：EA）とは、大企業や政府など、比較的大きな組織のシステムを全体最適化するための手法です。 エンタープライズアーキテクチャは、基本情報技術者試験に頻出する非常に重要な用語ですが、覚えることは以下の2つだけです。 \n（1）エンタープライズアーキテクチャの定義 \n（2）エンタープライズアーキテクチャの4つの分類 \n\nこの2つを覚えておけば確実に得点につなげることができるので、ぜひ覚えておいてください。 エンタープライズアーキテクチャの定義とは、先述した「エンタープライズアーキテクチャとは、大企業や政府など、比較的大きな組織のシステムを全体最適化するための手法」です。これが定義です。 エンタープライズアーキテクチャの4つの分類は以下です。 ',NULL,'/home/air/goalskill_t/back/img/section16/2.png','エンタープライズアーキテクチャは、日常生活ではあまり縁がないので、イメージしにくいかもしれません。エンタープライズアーキテクチャは、簡単にいえば、部分最適化してしまった個々のシステムを全体最適化する方法です。'),(5,'01','情報システム戦略','エンタープライズアーキテクチャは横断的','エンタープライズアーキテクチャ導入前後の違いを下図で確認してください。 部分最適化が進んだ組織（下図左側）では、システムが縦割りになっていて、横とのつながりがありません。つまりシステムを個別にしか見ていません。 一方、エンタープライズアーキテクチャ（下図右側）では、システムを個別に分析するのではなく、4つの体系を使って複数のシステムを横断的に分析します。','試験にはコレが出る！ \n・エンタープライズアーキテクチャとは、各業務と情報システムを「ビジネス」「データ」「アプリケーション」「テクノロジ」の4つの体系で分析し、全体最適化の観点からシステムを見直すための手法である \n・ビジネスアーキテクチャとは、業務のこと \n・データアーキテクチャとは、業務に必要なデータのこと \n・アプリケーションアーキテクチャとは、データを処理するための機能のこと \n・テクノロジアーキテクチャとは、機能を実現するための技術のこと','/home/air/goalskill_t/back/img/section16/3.png','エンタープライズアーキテクチャでは、まず、ビジネスアーキテクチャで各システムの「業務」を横断的に分析します。 \n続いて、データアーキテクチャでその業務に必要となる「データ」を分析します。同じデータが別々のシステムで個別に管理されているのは非効率だからです。 \n次に、アプリケーションアーキテクチャで、前出のデータを処理するための「機能」を分析します。同じ機能が別々のシステムに実装されていた場合、その保守が非効率になるからです。 \n最後に、テクノロジアーキテクチャで前出の機能を実現するための「技術」を分析します。OSやコンピュータ、ネットワーク機器などを部門ごとに採用すると、余計な保守費用（ランニングコスト）がかかるからです。'),(6,'02','業務プロセス','業務プロセスとは','業務プロセスとは、一言でいうと「仕事の手順」です。業務は手作業とシステムから構成されます。さらに、システムはハードウェアとソフトウェアから構成されます。このことから、業務とは、手作業とハードウェア、ソフトウェアを合わせたものといえます。',NULL,'/home/air/goalskill_t/back/img/section16/4.png',NULL),(7,'02','業務プロセス','BPR','BPR（Business Process Re-engineering：業務プロセスリエンジニアリング）とは、企業全体の業務プロセスを「抜本的」に再設計する手法です。BPRで最も重要なポイントは、情報システム戦略（p.562）と同様に、考え方の根底に部分最適ではなく全体最適をおいているところにあります。',NULL,NULL,NULL),(8,'02','業務プロセス','分業に対する反省','BPRは分業に対する反省から生まれた手法です。分業体制では、各部門が自分たちの生産性を上げることのみに注力します。その結果、部分最適が進み、企業全体の生産性が悪化することがしばしばありました。 BPRの肝となるのは部分最適ではなく全体最適です。例えば、部分最適においては、販売部門が在庫をたくさん抱えるなどの問題があります。販売部門の一般的な目標は売上ですが、売上を最大にするために、顧客からの注文に常に応えられるように在庫をたくさん持つようにします。もし市場環境が変わって実際には注文が入らなかったら会社は大量の在庫を抱えてしまいます。このように部分最適を行うことでかえって全体として非効率になってしまうことがあります。','もう少し詳しく！ BPRとリストラの違い\n 組織を再構築する方法の1つに「リストラ（Restructuring）」という有名な方法があります。リストラとは、儲からない部門を切り捨てて、儲かる部門に経営資源を集中させることです。これに対し、BPRは非効率な業務プロセスを全体最適で改善する手法です。',NULL,NULL),(9,'02','業務プロセス','BPM','BPM（Business Process Management：業務プロセス管理）とは、業務プロセスを見直して「継続的」に改善する手法です。 上記のBPRで業務プロセスを抜本的に再設計した後、BPMを用いて継続的な改善を行います。経営環境や技術は刻々と変わるので、BPRで抜本的に変更を行ったとしても、業務プロセスはだんだんと陳腐化していきます。そこで、業務プロセスの効率を維持するためにBPMで継続的に改善をして、効率性を保ます。',NULL,NULL,NULL),(10,'02','業務プロセス','BPRとBPMの違いを理解しておくことが重要','基本情報技術者試験では、BPRとBPMの用語の定義がよく出題されます。それぞれの違いを見抜くポイントは、BPRは「抜本的」であり、BPMは「継続的」であるという点です。\n基本情報技術者試験では、BPMを説明する文章には必ずといっていいほど「継続的に」という言葉が入ります。なぜなら、「継続的に」を省略してしまうと、BPRとの区別が曖昧になってしまうからです。この点は必ず覚えておいてください。イメージとしては、BPRは大掃除、BPMは毎日の掃除です。','試験にはコレが出る！ \n・BPRとは、業務プロセスを抜本的に再設計する手法 \n・BPMとは、業務プロセスを継続的に改善する手法',NULL,NULL),(11,'02','業務プロセス','RPA','業務プロセスを改善する手法として最近注目されているのがRPAです。 RPA (Robotic Process Automation) とは、ソフトウェアロボットを用いて事務作業を自動化することです。RPAを使うことで、人間が行っている単純な事務作業を自動化できるので、深刻な人手不足や人件費高騰などの問題を改善できます。 RPAに関しては、以下の２つの特徴を必ず覚えておいてください。非常に重要です。 \n・RPAは工場のロボットではない \n・RPAは定型的な業務しか実行できない',NULL,NULL,NULL),(12,'02','業務プロセス','RPAは工場のロボットではない','RPAの「R」が「Robotic」の頭文字であることから、車を組み立てるロボットアームのような機械を想像する人もいるのですが、RPAはソフトウェアロボットです。工場の機械のような実体のある機械ではありません。',NULL,'/home/air/goalskill_t/back/img/section16/5.png',NULL),(13,'02','業務プロセス','RPAは定型的な作業しか実行できない','RPAは「定型的な作業」（同じ作業の繰返し）しか実行できません。そのため、途中で作業ルールが変更されるような業務や、高度な意思決定が必要となる業務には向いていません。基本情報技術者試験ではRPAの説明文において、この「定型的」という言葉が含まれることが多いです。','試験にはコレが出る！ \nRPAは「定型的」な事務作業を「ソフトウェア」で自動化する',NULL,NULL),(14,'02','業務プロセス','BPO','これまでに解説してきたBPRやBPM、RPAはいずれも「業務を改善する手法」でした。一方、BPO (Business Process Outsourcing) は、業務プロセス自体を他社に外部委託してしまうという手法です。BPOは特に、経理、人事、総務などの管理部門（直接顧客に商品を販売しない部門）の業務プロセスをアウトソーシングする意味で使われることが多いです。 例えば、経理システムの開発を開発会社に外部委託するのはアウトソーシングです。この場合、完成した経理システムを利用するのは自社の経理部門です。 一方、BPOでは、経理システムの利用も含め、経理の業務プロセス全体を外部委託します。企業はBPOを行うことで、経営資源を自社の核となる業務に集中投資できるようになります。',NULL,NULL,NULL),(15,'02','業務プロセス','ワークフローシステム','ワークフローシステムとは、紙の書類を電子化して、社内の決裁申請手続きを効率化することです。これも業務プロセスの改善方法の１つのです。例えば、交通費の精算を電子的に行うシステムなどがワークフローシステムに該当します。','試験にはコレが出る！ \n・BPOとは、業務プロセス自体を他社に外部委託すること \n・ワークフローシステムとは、紙の書類を電子化して、社内の決裁申請手続きを効率化すること',NULL,NULL),(16,'03','ソリューションビジネス','ソリューションの形態','ソリューションとは、業務上の問題を解決する手段、もしくは解決するために導入される情報システムです。「ITソリューション」と呼ばれることもあります。 ソリューションは、サーバをどこに置くかによって、次のいずれかの形態に分類されます。 \n（1）オンプレミス \n（2）ハウジングサービス \n（3）ホスティングサービス \n（4）クラウドコンピューティング',NULL,NULL,NULL),(17,'03','ソリューションビジネス','(1) オンプレミス','オンプレミスとは、自社の敷地に自社のサーバを置くことです。サーバを自社で買って、自社の敷地内に設置します。昨今急速に普及しているクラウドコンピューティング（クラウド）が登場するまでは、多くの企業が自社の情報システムをオンプレミスで利用していました。 オンプレミスでは情報システムを自社内で完全に管理できるため、機密保全の面で非常に高い安全性を維持できるというメリットがあります。このため、現在でも金融業界など、高い機密性を要する業界では広く利用されています。 反面、すべての情報システムを自社で調達・管理しなければならないため、多くの費用がかかるというデメリットがあります。この費用面のデメリットがあるために、昨今は多くの企業が自社の情報システムを、オンプレミスからクラウドコンピューティングへ移行しています。',NULL,NULL,NULL),(18,'03','ソリューションビジネス','(2) ハウジングサービス','ハウジングサービスとは、他社の敷地に自社のサーバを置くサービスです。オンプレミスとの違いは、自社のサーバの設置場所です。なお、サーバの調達・管理は自社で行う必要があります。この点はオンプレミスと同じです。',NULL,NULL,NULL),(19,'03','ソリューションビジネス','(3) ホスティングサービス','ホスティングサービスとは、他社の敷地に置かれた、他社が所有しているサーバを借りるサービスです。ハウジングサービスとの違いは、設置されているサーバが他社のものであるという点です。サーバの調達・管理はサービス事業者が行ってくれます。',NULL,NULL,NULL),(20,'03','ソリューションビジネス','(4) クラウドコンピューティング','クラウドコンピューティングとは、他社の敷地に置かれた、他社が所有しているサーバを借りるサービスです。この部分はホスティングサービスの解説とまったく同じです。 ホスティングサービスとの違いは、契約しているサーバの所在です。\n\n・ホスティングサービスでは、契約しているサーバの所在が明確 \n・クラウドコンピューティングでは、契約しているサーバの所在が不明確','もう少し詳しく！ ハイブリッドクラウド \nクラウドコンピューティングのうち、誰でもアクセスして利用できるサービスのことを「パブリッククラウド」といいます。一方、限られた関係者のみがアクセスして利用できるサービスのことを「プライベートクラウド」といいます。そして、パブリッククラウドとプライベートクラウドを組み合わせたサービスのことを「ハイブリッドクラウド」といいます。','/home/air/goalskill_t/back/img/section16/6.png',NULL),(21,'03','ソリューションビジネス','クラウドコンピューティングの種類','ここからは、クラウドコンピューティングのことをもう少し詳しく解説していきます。クラウドコンピューティングは、提供するサービスの種類によって、いくつかの種類に分類できます。基本情報技術者試験では「SaaS」がよく出題される傾向にあります。',NULL,NULL,NULL),(22,'03','ソリューションビジネス','IaaS','IaaS (Infrastructure as a Service) とは、ハードウェアなどの基盤（インフラストラクチャ）をインターネット上で提供するサービスです。先述のホスティングサービス (p.575) と似ていますが、ホスティングサービスの場合は契約した製品（ハードウェアなど）を簡単に変更することはできません。 一方、IaaSは、クラウドコンピューティングで提供されるので、ネットワーク構成やサーバの追加もインターネット経由で簡単に変更できます。',NULL,NULL,NULL),(23,'03','ソリューションビジネス','PaaS','PaaS (Platform as a Service) とは、プラットフォーム（アプリケーションソフトウェアを動かすために必要な土台）をインターネット上で提供するサービスです。「IaaSにOSを加えたサービス」ということもできます。',NULL,NULL,NULL),(24,'03','ソリューションビジネス','SaaS','SaaS (Software as a Service) とは、ソフトウェアをインターネット上で提供するサービスです。「PaaSにアプリケーションソフトウェアを加えたサービス」ということもできます。 \nSaaSは、ソフトウェアパッケージのような商品ではありません。商品を売る代わりに、そのソフトウェアの機能をサービスとして提供します。','試験にはコレが出る！ \n・IaaSとは、ハードウェアなどの基盤をインターネット上で提供するサービス \n・PaaSとは、プラットフォームをインターネット上で提供するサービス \n・SaaSとは、ソフトウェアをインターネット上で提供するサービス','/home/air/goalskill_t/back/img/section16/7.png','ここまで、クラウドコンピューティングで提供されている3つの「◯aaS」を解説してきました。ここまで読み進めてきた人は気づいていると思いますが、どの◯aaSも「aaS」の部分はすべて「as a Service」（「サービスとしての」という意味）で同じです。 このことから、クラウドコンピューティングが提供しているものがすべて「サービス」であることがわかると思います。企業が販売するものは大きく2種類に分類できます。1つは商品 (Product)、そしてもう1つはサービス (Service) です。 従来のソフトウェアやハードウェアはまさに「商品」として販売されてきました。クラウドコンピューティングはその概念を覆し、多くの商品を「サービス」として顧客に提供します。このため、3つの略語にはすべて「aaS」が付いているのです。'),(25,'03','ソリューションビジネス','クラウドコンピューティングの出現前夜','クラウドコンピューティングは、突如出現したわけではありません。長い歴史の中から必然的に生じた技術です。歴史を紐解くと、クラウドコンピューティングのもとになっている技術的な考え方があります。それが「SOA」です。',NULL,NULL,NULL),(26,'03','ソリューションビジネス','SOAとは','SOA (Service Oriented Architecture：サービス指向アーキテクチャ) とは、ソフトウェアの機能をサービスという部品とみなし、そのサービスを組み合わせることでシステムを構築する手法です。\n SOA以前は、利用者側はシステム会社が提供する業務パッケージ（既製品）を購入して業務システムを構築する必要がありましたが、SOAでは必要な機能のみをサービスとして自由に選択して購入できるようになりました。\n 具体的には、以前は「受発注・決済システム」全体を一括購入しなければならなかった状況が、SOAの登場によって「受注」「発注」「決済」などのように、小さく分けられた業務プロセスを個別に購入できるようになったのです。この考え方が現在のクラウドコンピューティングへつながっています。 \nユーザーには、ベンダーが提供する業務パッケージに頼らずにゼロからシステムを構築するという選択肢もあります。しかし、ゼロからのシステム構築は、フルオーダーメードの服と同じように、お金と時間がたくさん必要になります。一方、SOAでは必要な機能だけをサービスとして購入できるため、余計なコストをかけずにシステムを構築できます。','試験にはコレが出る！\n SOAとは、サービスを組み合わせることでシステムを構築する手法','/home/air/goalskill_t/back/img/section16/8.png',NULL),(27,'04','システムの活用促進と評価','BI とデータウェアハウス','BI (Business Intelligence) とは、社内外に蓄積されているデータを分析して、経営の意思決定に役立てようとする手法や技術です。 \n以前は、BI を行うには専門的な知識が必要でしたが、現在では、経営者や一般従業員といった、アナリスト（データ分析の専門家）以外の人でも簡単にデータ分析が行える「BIツール」が多数用意されています。',NULL,NULL,NULL),(28,'04','システムの活用促進と評価','データウェアハウス','データウェアハウスとは、意思決定に役立てるためのデータベースです。直訳すると「データの倉庫」です。具体的には、ERP (p.632) や CRM (p.633) などのシステム内にあるデータを取り出して、データウェアハウスに蓄積します。BI ではデータウェアハウスに集約されているデータを用いて分析を行います。 通常、ERPシステムやCRMシステムに蓄積されているデータは、データ量の肥大化や処理パフォーマンスの低下を防ぐために、不要になったデータから順次削除するなどして最適化しています。\n 一方、データウェアハウスに蓄積されたデータは、基本的に更新したり、削除したりしません。なぜなら、古いデータから有益な情報が得られる可能性があるからです。データウェアハウスではあらゆるデータが時系列で格納されています。この点が、ERPシステムやCRMシステムに蓄積されているデータと、データウェアハウスに蓄積されているデータの最大の違いです。',NULL,'/home/air/goalskill_t/back/img/section16/9.png',NULL),(29,'04','システムの活用促進と評価','ビッグデータとデータマイニング','ビッグデータとは、大量かつ多種多様で、更新頻度が高いデータの集まりです。ビッグデータの特徴は、Volume（量：量が多い）、Variety（多様性：多種多様）、Velocity（速度：更新が速い）の3つで、これらの頭文字を取って3Vと表されます。ビッグデータには、文字、音声、画像、動画などが含まれます。膨大かつ多種多様で更新頻度が高いデータを分析することで、従来の分析方法では見つけることのできなかったデータの傾向や関連性を見つけられるようになります。',NULL,NULL,NULL),(30,'04','システムの活用促進と評価','データレイク','データレイクとは、あらゆるデータをそのままの形式で格納するデータベースです。ビッグデータは多種多様なデータ（非構造化データ）の集まりであるため、あらかじめ決められた形式のデータ（構造化データ）しか格納できないデータウェアハウスには格納することができません。そのため、ビッグデータはデータレイクに格納します。データレイクでは、さまざまなデータソースからのデータを一元的に保存し、後から必要に応じて分析や処理を行います。',NULL,NULL,NULL),(31,'04','システムの活用促進と評価','データマイニング','データマイニングとは、データレイクなどに蓄積されている膨大なデータから、有益な情報を取り出すための手法の総称です。「マイニング」とは、本来は「掘る」という意味であり、ここでは大量のデータの中から価値のあるパターンや法則を「掘り出す」ことを指します。','もう少し詳しく！ マーケットバスケット分析 \nデータマイニングの代表的な手法の１つに「マーケットバスケット分析」があります。マーケットバスケット分析とは、POS (p.642) などに蓄積された購買履歴データをもとに、「一緒に買われる商品」の組合せを発見する分析手法です。例えば「パンを買った人はバターも買う傾向がある」といったように、顧客の購買パターンを明らかにすることで、商品の陳列配置や販売促進などに活用されます。',NULL,NULL),(32,'04','システムの活用促進と評価','デジタルリテラシーの習得の重要性','デジタルリテラシーとは、情報を活用する能力です。「リテラシー」の本来の意味は「読み書きする能力」ですが、「デジタル」と組み合わせることで「情報を集めたり、発信したりする能力」や「コンピュータやインターネットなどのITを使う能力」という意味になります。',NULL,NULL,NULL),(33,'04','システムの活用促進と評価','デジタルディバイド','デジタルディバイドとは、デジタルリテラシーの違いによって生じる、経済的・社会的な格差のことです。「ディバイド」は「格差」という意味です。デジタルディバイドを解決するには、デジタルリテラシーを向上させる必要があります。 デジタルディバイドは、英語が和訳できれば解答できてしまうとても簡単な問題なうえに、基本情報技術者試験に頻出する用語でもあるので必ず覚えておいてください。','試験にはコレが出る！ \n・BIとは、社内外のデータを分析して、経営の意思決定に役立てる手法 \n・ビッグデータの特徴は「量が多い」「多種多様」「更新が速い」の３つ \n・データマイニングとは、膨大なデータから有益な情報を見つけ出すこと \n・デジタルディバイドとは、デジタルリテラシーの違いによって生じる、経済的・社会的な格差のこと','/home/air/goalskill_t/back/img/section16/10.png',NULL);

--
-- Table structure for table `section_17`
--

CREATE TABLE `section_17` (
  `id` int NOT NULL AUTO_INCREMENT,
  `chapter` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci,
  `main_title` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci,
  `sub_title` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci,
  `theory_description` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci,
  `tip` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci,
  `img` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci,
  `img_description` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=18 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

--
-- Dumping data for table `section_17`
--

INSERT INTO `section_17` VALUES (1,'01','企画と要件定義','登場人物は４人','まず、企画プロセスと要件定義プロセスを行う際に登場する４人の登場人物について説明します。これらの４人の登場人物のことが基本情報技術者試験で直接問われることは稀ですが、本章以降で説明する内容を理解するための基礎知識になるので、それぞれの概要と関係性を把握しておくことが重要です。\n４人の登場人物とは「経営者」「情報システム部」「ユーザー」「ベンダー」の４人（４つの役割）です。\n通常、システム開発は、経営者の命令を受けて、情報システム部が中心となって開発業務を行います。情報システム部が自社開発することもありますが、多くの場合はベンダー (SI : p.574) と呼ばれるシステム開発会社に開発を委託します。また、完成したシステムを利用する部署（または人）のことをユーザーといいます。\n\n本項で学ぶ「企画プロセス」の主な作業は、情報システム部が経営者に対して、経営上のニーズを聞くことです (①)。また、「要件定義プロセス」の主な作業は、情報システム部がユーザーに対して、ユーザーのニーズを聞くことです (②)。\nそして、次項で解説する「調達」では、情報システム部がベンダーに対して、システムを発注します (③)。',NULL,'/home/air/goalskill_t/back/img/section17/1.png',NULL),(2,'01','企画と要件定義','企画プロセス','企画プロセスとは、経営の目標を達成するために、システムに必要な要件を集め、計画を立てるプロセスです。\n基本情報技術者試験では、企画プロセスの目的を問う問題がよく出題されます。企画プロセスの目的は「経営上のニーズを聞くこと」です。このことは必ず覚えておいてください。\nまた、企画プロセスは、さらに次の２つのプロセスに分かれます。',NULL,'/home/air/goalskill_t/back/img/section17/2.png','この２つのプロセスの名前は「構想」と「計画」が異なるだけですが、試験ではきちんと区別されて出題されるので、それぞれの違いを必ず覚えておいてください。'),(3,'01','企画と要件定義','経営上のニーズと課題の確認','システム構想の立案プロセスのタスクには「経営上のニーズと課題の確認」があります。これは、全体最適化 (p.563) を実現するシステムを開発するために必要なタスクです。\n経営戦略を無視して、現場のニーズだけを聞いてシステムを企画すると部分最適化 (p.563) になる恐れがあります。経営戦略に基づいていない部分最適のシステムは企業にとって害になる可能性があります。\nそのため、そういった状況に陥らないためにも、最初のプロセスできちんと経営上のニーズや課題を確認することが重要です。',NULL,NULL,NULL),(4,'01','企画と要件定義','費用とシステム投資効果の予測','システム計画の立案プロセスのタスクには「費用とシステム投資効果の予測」があります。開発するシステムの内容が決まったら、開発にいくらかかるのかを計算し、その費用とそのシステムによって得られる効果を比較します。ROI (Return On Investment : 投資利益率) とは、情報システムの費用対効果（コストパフォーマンス）を評価するための指標です。投資した金額に対して得られる利益の割合から求めます。ROIの値が高いほど、費用対効果がよい投資であるといえます。$$\\text{ROI} = \\frac{\\text{利益額}}{\\text{投資額}}$$',NULL,NULL,NULL),(5,'01','企画と要件定義','ITポートフォリオ','システム計画の立案プロセスでは、「ITポートフォリオ」という手法を用いることがあります。\nITポートフォリオとは、企業が情報化投資をする際に、投資対象をリスクと投資価値を用いて分類し、投資額の配分を最適化する手法です。ここで、情報化投資とは、システムを作り、維持・改善するのに必要な費用です。また、投資価値とは費用対効果（コストパフォーマンス）のことで、先述のROIで表されます。',NULL,NULL,NULL),(6,'01','企画と要件定義','プライバシーバイデザイン','企画プロセスでは「経営者のニーズ」や「投資効果」の他にも考えなければいけない重要な点があります。それは「個人情報」 (p.724) です。個人情報が漏えいするリスクを減らす考え方に「プライバシーバイデザイン」 (Privacy by Design) というものがあります。\nプライバシーバイデザインとは、システムに予防的に個人情報漏えい対策を組み込んでおくことです。\n\n従来のシステムでは、個人情報漏えいに対する機能を最初から組み込むことはせず、実際に問題が起こってから対策機能を追加するのが一般的でした。\nしかし、ITが発展して個人情報の重要度が増してくると、問題が発生してからの対処では、被害と対策費用が大きくなるようになりました。\nそこで、プライバシーバイデザインによって、企画プロセスの段階から、個人情報漏えい対策を組み込んだシステムを設計することで、問題に対して予防的に対処します。こうすることで、問題が起きるリスクや、起きた後の被害と対策費用を減らすことができます。','試験にはコレが出る！\n\n・システム化構想の立案プロセスでは、経営上のニーズを確認する\n\n・システム化計画の立案プロセスでは、投資効果を明確にする\n\n・ROIとは、投資利益率。利益額を投資額でわり算したもの\n\n・ITポートフォリオとは、投資対象をリスクと投資価値によって分類する\n\n・プライバシーバイデザインとは、個人情報漏えい対策を予防的にシステムに組み込んでおくこと','/home/air/goalskill_t/back/img/section17/3.png',NULL),(7,'01','企画と要件定義','要件定義プロセス','企画プロセス (p.589) の次は要件定義プロセスです。要件定義プロセスとは、システム化する範囲（システムが持つべき機能や性能）を決めるプロセスです。要件定義プロセスの主な目的は「ユーザーのニーズを知ること」です。',NULL,NULL,NULL),(8,'01','企画と要件定義','要件定義プロセスの進め方','要件定義プロセスでは、システムに必要な機能を明らかにするために、現在のシステムを利用しているユーザーや、業務を手作業で行っているユーザーから「どんなシステムが必要なのか（ニーズ）」をヒアリングします。\nなお、「ニーズを確認する」というタスクは、企画プロセスにもありました。 (p.589)、企画プロセスで確認するのは「経営上のニーズ」であり、要件定義プロセスで確認するのは「ユーザーのニーズ」です。同じ言葉でも内容や目的はまったく異なるので注意してください。',NULL,NULL,NULL),(9,'01','企画と要件定義','利害関係者のニーズを知る','要件定義プロセスでは、ユーザーのニーズを知ることに加え、利害関係者のニーズの把握も行います。利害関係者とは、ベンダーや社員、他社、地域社会など、システムを作ることで利害を受けるすべての人のことです。システムを作ることで、すべての人が得をすればよいのですが、場合によっては損害を受ける人もいます。そのため、利害関係者の利害が一致せず対立することがよくあります。そこで、要件定義プロセスでは、利害関係者となる人を特定して、どんなニーズがあるかを把握して、対立を解決する必要があります。\n要件定義プロセスにおける利害関係者のニーズは、共通フレーム (p.449) で以下のように記載されています。基本情報技術者試験でも、この定義文がそのまま出題されることがあります。\n\n要件定義プロセスでは、システムに関わり合いをもつ利害関係者又は利害関係者の種類を識別し、そのニーズ及び要望を識別する','試験にはコレが出る！\n要件定義プロセスでは、利害関係者のニーズを識別する',NULL,NULL),(10,'01','企画と要件定義','業務要件の洗い出し','ユーザーからのヒアリングが終わったら、その結果をもとにして「業務要件」を洗い出します。業務要件とは、日々の仕事を行うために必要となる条件です。\n例えば、回転寿司屋さんの業務要件を例にすると、注文を受ける、寿司を作る、寿司を提供する、会計をする、などが業務要件になります。これらの業務要件が１つでも欠けると、業務は行えなくなります。',NULL,NULL,NULL),(11,'01','企画と要件定義','機能要件と非機能要件','業務要件はさらに３つの要件に分類できます。\n\n基本情報技術者試験では、共通フレームに記載された非機能要件の項目が出題されます。なお、共通フレームに記載されている非機能要件の項目は、全部で33個あるのですが（下表を参照）、基本情報技術者試験に出題されるのは「技術要件の開発基準、標準」がほとんどです。これら以外から出題されることは稀なので、まずはこのことをしっかりと覚えておいてください。\n「開発基準、標準」とは、事前に決めた開発手法、ルール、枠組みなどをまとめた文書です。例えば、プログラムのコーディング規則などが該当します。「開発基準、標準」を作っておくことで、開発を効率化でき、品質の向上や運用がしやすくなるなどのメリットがあります。','試験にはコレが出る！\n非機能要件の定義で行う作業の１つは、システム開発で用いるプログラム言語に合わせた開発基準、標準を作成すること','/home/air/goalskill_t/back/img/section17/7.png',NULL),(12,'02','調達計画・実施','RFI','RFI (Request For Information : 情報提供依頼書) とは、ベンダーに対して、ベンダーの実績や技術、経験などの情報を送るように要求する文書です。RFIをベンダーに送付する目的は主に次の２つです。','学習のポイント 英語略記で出題される\n基本情報技術者試験では、日本語の「情報提供依頼書」よりも、英語略記の「RFI」と表記されることのほうが多くいのです。日本語で「情報提供依頼書」と書くと、問題が簡単になりすぎるからでしょう。ですから、「RFI」という言葉を必ず覚えておいてください。','/home/air/goalskill_t/back/img/section17/8.png',NULL),(13,'02','調達計画・実施','RFP','RFP (Request For Proposal : 提案依頼書) とは、発注候補のベンダーに対して、具体的なシステム設計や機器構成、受注条件などを記載した提案書の提出を依頼する文書です。RFPは実際の発注よりも前にやり取りされます。\n全体の流れとしては、①情報システムを開発したい企業は、前ステップのRFIで得た情報をもとにして発注候補を数社に絞り、②そのうえで、RFPを発注候補へ送ります。RFPを受け取ったベンダーは、RFPに応える形で、システムの設計案を記載した「提案書」を返送します。\nお金を支払う発注者側がわざわざ時間をかけてRFPのような文書を作成するのは、後々のトラブルを防ぐためです。口約束だけで話を進めてしまうと、後でベンダーと「言った、言わない」のトラブルになる可能性があります。そこで、要件定義プロセスで決めた要件をRFPに記載して、ベンダーに明確に伝えます。','試験にはコレが出る！\n\n・「RFIやRFPを発行する順序」が出題される\n\n・調達の順序：RFIの発行 → RFPの発行 → 調達先の選定 → 契約締結','/home/air/goalskill_t/back/img/section17/10.png',NULL),(14,'02','調達計画・実施','さまざまな調達','一口に「調達」といっても、その特徴によっていろいろな調達の形式があります。ここでは、基本情報技術者試験に出題される「CSR調達」と「グリーン調達」を解説します。',NULL,NULL,NULL),(15,'02','調達計画・実施','CSR調達','企業活動の目的の１つは「利益の追求」ですが、一方で、企業が利益のみを追求すると、公害や偽装など、社会に悪影響を及ぼすこともあります。そのため企業には、お金儲けのことだけでなく、社会貢献や環境保護などの「社会的責任」を考え、それを実行していくことが求められます。\nこのような、企業における社会的責任のことを「CSR (Corporate Social Responsibility : 企業の社会的責任)」といいます。\nCSR調達とは、部品などを届けてくれる調達先に対して、社会的責任の取り組みを求めることです。CSR調達では調達先に対して、特に法令遵守（条約、法律、知的財産権などを守る）、人権尊重（人種、性別、国籍などで差別しない）や環境保護（省エネ、温室効果ガス削減、汚染防止に取り組む）などへの配慮を求めます。例えば、調達先となる工場で働く人の労働環境をより良いものにしてもらうなどです。',NULL,NULL,NULL),(16,'02','調達計画・実施','グリーン調達','グリーン調達とは、調達先から製品を買うときに、単に安さや品質で選ぶのではなく、環境にやさしい製品を優先して買うことです。グリーン調達は「グリーン購入法」（環境にやさしい製品を優先して買うことについて定めた法律）をきっかけにして普及しました。\n環境にやさしい製品を作っているという証明になる規格がISO14001です。この規格は環境マネジメントシステムの規格です。外部からは「どの調達先が環境にやさしい製品を作っているのか」がわかりづらいこともあります。このような場合に、ISO14001を取得することで、自社がグリーン調達に適した会社であることを外部に知らせることができます。\nなお、グリーン調達の他に「グリーン購入」という言い方もあります。この２つの用語はほぼ同じ意味ですが、国や地方公共団体がグリーン調達を行う場合に「グリーン購入」という表現が使われることが多いです。',NULL,NULL,NULL),(17,'02','調達計画・実施','カーボンフットプリント','環境への配慮を「見える化」する取り組みの１つにカーボンフットプリントもあります。\nカーボンフットプリントとは、原材料の調達から廃棄、リサイクルに至るまでの商品やサービスのライフサイクル全体で排出される温室効果ガスの量を、二酸化炭素（CO2）に換算して表示する仕組みです。これにより、購入者は環境負荷の小さい製品を選びやすくなり、企業も環境配慮をアピールすることができます。','試験にはコレが出る！\n\n・CSR調達とは、自然環境、人種などへの配慮を調達基準として示し、調達先に遵守を求めること\n\n・グリーン調達とは、環境負荷の小さい製品やサービスを、環境負荷の低減に努める事業者から優先して購入すること\n\n・グリーン購入とは、国や地方公共団体などが、環境への配慮を積極的に行っていると評価されている製品・サービスを選ぶこと\n\n・カーボンフットプリントとは、商品やサービスのライフサイクル全体を通して排出される温室効果ガスの量を二酸化炭素排出量に換算して表示する仕組み',NULL,NULL);

--
-- Table structure for table `section_18`
--

CREATE TABLE `section_18` (
  `id` int NOT NULL AUTO_INCREMENT,
  `chapter` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci,
  `main_title` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci,
  `sub_title` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci,
  `theory_description` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci,
  `tip` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci,
  `img` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci,
  `img_description` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=27 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

--
-- Dumping data for table `section_18`
--

INSERT INTO `section_18` VALUES (1,'01','経営戦略','経営戦略とは','経営戦略（ストラテジ）とは、ライバル会社に勝つための戦い方です。なお、基本情報技術者試験では経営戦略のことを単に「戦略」と呼ぶこともあるので注意してください。\n「戦略」という言葉はもともとは軍事用語の１つです。それを経営に持ち込んだのがはじまりといわれています。武将たちが戦国時代を生き抜くために軍事戦略を立てたように、現代の企業も激しい市場競争を生き抜くためにさまざまな経営戦略を立てています。',NULL,NULL,NULL),(2,'01','経営戦略','３つの経営戦略','経営戦略は大きく「全社戦略」「事業戦略」「機能別戦略」の３つに分類されます。\n下図は事業Ａ、事業Ｂ、事業Ｃの３つの事業を持つ事業部制組織 (p.672) の経営戦略の概念図です。頂点に経営理念、次いでビジョンがあり、その下に３つの経営戦略があることがわかります。','学習のポイント　機能別戦略は職能ごとに存在する\n事業戦略が事業部ごとに存在するのと同様に、機能別戦略は機能別（職能別）に存在します。そして当然、その機能ごとに名称が異なります。例えば、法務部であれば「知的財産戦略」、情報システム部であれば「情報システム戦略」(p.562) などがあります。他にも、マーケティング戦略、技術開発戦略などがあります。','/home/air/goalskill_t/back/img/section18/1.png',NULL),(3,'01','経営戦略','SWOT分析','基本情報技術者試験では、経営戦略の代表的な手法である「SWOT分析」と「ベンチマーキング」が頻繁に出題されます。まずはこの２つの手法をしっかりと覚えておいてください。\nSWOT分析とは、経営戦略を立てるために、会社が置かれている経営環境を「強み (Strengths)」「弱み (Weaknesses)」「機会 (Opportunities)」「脅威 (Threats)」の４つに分類する手法です。各用語の頭文字をつなげると「SWOT」になります。SWOT分析を行うと自社を取り巻く経営環境を把握できます。',NULL,NULL,NULL),(4,'01','経営戦略','SWOT分析のやり方','SWOT分析では最初に、各項目を内部環境によるものなのか、外部環境によるものなのかに分類します。\n\n・内部環境：自社の努力で変えられる項目\n\n・外部環境：自社ではコントロールできない項目\n\n例えば、「特許の取得」は自社の努力によるものなので内部環境に分類します。一方、「円安」は自社ではコントロールできないので外部環境に分類します。\n次に、それらの項目が会社にとって「良い影響を及ぼすのか」、または「悪い影響を及ぼすのか」を判断したうえで、次のように分類します。\n\n・内部環境であり、かつ良い影響を及ぼすもの：強み (Strengths)\n\n・内部環境であり、かつ悪い影響を及ぼすもの：弱み (Weaknesses)\n\n・外部環境であり、かつ良い影響を及ぼすもの：機会 (Opportunities)\n\n・外部環境であり、かつ悪い影響を及ぼすもの：脅威 (Threats)\n\n例えば、「特許の取得」は内部環境であり、かつ自社にとって良い影響を及ぼすものなので「強み (Strengths)」に分類します。また、外部環境である「円安」は、輸出企業であれば良い影響を及ぼすので「機会 (Opportunities)」に分類し、輸入企業であれば悪い影響を及ぼすので「脅威 (Threats)」に分類します。',NULL,'/home/air/goalskill_t/back/img/section18/2.png',NULL),(5,'01','経営戦略','ベンチマーキング','ベンチマーキングとは、自社のやり方と、業界で最も成功している企業のやり方を比較する手法です。つまり、自社と成功企業の「差」を見つける手法です。','試験にはコレが出る！\n\n・SWOT分析とは、会社が置かれている経営環境を「強み (Strengths)」「弱み (Weaknesses)」「機会 (Opportunities)」「脅威 (Threats)」の４つに分類する手法\n\n・ベンチマーキングとは、先進企業と比較して、自社の製品やサービスを定性的・定量的に把握すること',NULL,NULL),(6,'02','全社戦略','PPM','PPM (Product Portfolio Management) とは、自社の資源を投下する事業や、反対に、撤退すべき事業を分析するための手法です。詳しくは後述しますが、PPMでは、自社の事業（もしくは製品）を「問題児」「花形」「金のなる木」「負け犬」の４つに分類して分析を行います。',NULL,NULL,NULL),(7,'02','全社戦略','PPMの使い方','次ページの図はPPMの概念図です。縦軸は「市場成長率」、横軸は「市場占有率（相対市場シェア）」です。右上から反時計回りで、問題児、花形、金のなる木、負け犬となります。この順序が基本的な事業（もしくは製品）のライフサイクルとなります。\n\n・問題児\n問題児とは、市場成長率が高く、かつ市場占有率（シェア）が低い製品です。ここに分類された製品は市場成長率が高いため、競合に勝つためにたくさんの投資が必要ですが、その割に、市場占有率が低いため収益をあまり生み出しません。\nここでの競争に勝つと「花形」になります。つまり、現時点では問題児である（お金ばかりかかって、収益は少ない）けれど、将来的に成長する可能性がある製品の場合は、投資を継続します。製品の育成期間とも考えられます。\n\n・花形\n花形とは、市場成長率が高く、かつ市場占有率（シェア）が高い製品です。ここに分類された製品は市場成長率が高いため、競合に勝つためにたくさんの投資が必要ですが、一方で、市場占有率が高いため大きな収益を生みます。\n花形は英語で「スター」です。映画スターのように、人気（収益）も高いけれど、ギャラ（投資）も高い製品といえます。ここでの競争に勝つと「金のなる木」になります。\n\n・金のなる木\n金のなる木とは、市場成長率が低く、かつ市場占有率（シェア）が高い製品です。ここに分類された製品は市場成長率が低いので追加の投資は必要ありません。また、市場占有率が高いため大きな収益を生みます。会社にとって最も手に入れたい製品といえます。\n問題児を花形に育て、花形を金のなる木に育てることで、収益を獲得できるようになります。金のなる木で得た利益を資金として、問題児や花形のために投資を行います。\nなお、金のなる木もすべての消費者に製品が行き渡ると需要が減るため、最終的には衰退し、負け犬になります。\n\n・負け犬\n負け犬とは、市場成長率が低く、かつ市場占有率（シェア）の低い製品です。ここに分類された製品は市場成長率が低いので投資の必要はありません。また、市場占有率が低いため収益が少ないです。そのため、今後にも期待ができません。\n会社は負け犬となった製品から撤退する必要があります。花形や問題児が競争に負けると負け犬になる、と覚えましょう。','試験にはコレが出る！\nPPM（プロダクトポートフォリオマネジメント）の縦軸は「市場成長率」、横軸は「市場占有率（相対市場シェア）」','/home/air/goalskill_t/back/img/section18/5.png',NULL),(8,'02','全社戦略','PPMをより深く理解するための「３つのキーワード」','PPMをより深く理解するには以下の３つのキーワードについて、理解しておくことが必要です。これらの知識は基本情報技術者試験にも出題されるのでしっかりと押さえておいてください。\n\n・規模の経済\n\n・経験曲線\n\n・プロダクトライフサイクル',NULL,NULL,NULL),(9,'02','全社戦略','規模の経済','規模の経済とは、製品の生産量が増えるほど、１個あたりの生産コストが減ることです。別名「スケールメリット」とも呼ばれます。生産にかかるコストのうち、「固定費」は生産量をいくら増やしても一定です (p.694)。そのため、生産量を増やせば増やすほど、１個あたりの固定費は安くなります。','もう少し詳しく！ 範囲の経済とシナジー効果\n規模の経済は、製品の「生産規模」を増やすことで、１個あたりのコストを下げます。これに対し、製品の「種類」を増やすことで、１個あたりのコストを下げることを「範囲の経済」といいます。\nなお、複数の製品をまとめて生産することによって、コスト面に限らず、生産設備や流通経路、ノウハウなど、さまざまな面で効果が出ることを「シナジー効果」といいます。','/home/air/goalskill_t/back/img/section18/6.png',NULL),(10,'02','全社戦略','経験曲線','経験曲線とは、特定の製品をたくさん生産すると、単位あたりのコストが下がっていく現象です。別名「ラーニングカーブ（学習曲線）」とも呼ばれます。\n名前に「経験」が含まれていることからもわかるように、作業する人がたくさんの製品を作るとコツをつかむなどして経験を積むことができます。すると、短い時間により多くの製品を作れるようになります。上記の「規模の経済」と同様に、製品を作れば作るほど１個あたりのコストが安くなります。',NULL,NULL,NULL),(11,'02','全社戦略','プロダクトライフサイクル','プロダクトライフサイクルとは、製品が発売されてから成長し、そして衰退して消えるまでの過程を「導入期」「成長期」「成熟期」「衰退期」の４段階で表した理論です。現在、製品がどの段階にあるかによって、企業の取るべき戦略は変わります。',NULL,'/home/air/goalskill_t/back/img/section18/8.png',NULL),(12,'02','全社戦略','３つのキーワードと「市場占有率」','上記３つのキーワードを理解したところで、これらのキーワードとPPMの関係性について解説します。まずはPPMの横軸である「市場占有率（相対市場シェア）」との関係性について解説します。\n市場占有率が高い状態というのは、他社よりも生産量が多いということを意味します。生産量が多ければ、規模の経済や経験曲線の効果から、製品を生産する費用が低くなります。そのため、他社よりも安く製品を作ることができます。\n利益は「売上ー費用」なので (p.694)、費用が小さくなれば、利益は大きくなります。つまり「市場占有率が高いほど儲かる事業である」といえます。',NULL,NULL,NULL),(13,'02','全社戦略','３つのキーワードと「市場成長率」','PPMの縦軸である「市場成長率」は、プロダクトライフサイクルが元となっています。プロダクトライフサイクルの導入期と成長期は市場成長率が高く、成熟期と衰退期は市場成長率が低くなります。\n市場成長率が高い時期は、製品の認知度を高めるために、また、激しい競争に勝つために、たくさんの投資が必要となります。一方で、市場成長率が低い時期は、これ以上生産能力を上げても売上アップを見込めないので、たくさんの投資は必要ありません。これらをまとめると下表のようになります。\n\n基本情報技術者試験では、PPMとプロダクトライフサイクルが頻出です。上表を見てわかるように、PPMとプロダクトライフサイクルには関連があります。２つの用語を別々に覚えるのではなく、セットで覚えると効率的です。','試験にはコレが出る！\n\n・規模の経済とは、製品の生産量が増えるほど１個あたりの生産コストが減ること\n\n・シナジー効果とは、複数の製品をまとめて生産することで、コストや生産設備、流通経路、ノウハウなどのさまざまな面で効果が出ること\n\n・導入期とは、需要は部分的で、製品の認知度を高める時期\n\n・成長期とは、売上が増加して、競合が増える時期\n\n・成熟期とは、需要の伸びが鈍化し、コストダウンが重要な時期\n\n・衰退期とは、需要が減ってきて、撤退を考える時期','/home/air/goalskill_t/back/img/section18/9.png',NULL),(14,'02','全社戦略','コアコンピタンス','他社との競争で優位に立つには「自社の強み」を認識する必要があります。その強みのことを「コアコンピタンス」といいます。\nコアコンピタンスとは、会社の核となる強みであり、競合他社が簡単に真似できないノウハウや技術です。コアコンピタンスの実例としては「特許」が挙げられます。特許は一定期間、他社が真似できない発明なので、コアコンピタンスといえます。\nなお、他社には真似のできない、企業独自のノウハウや技術などの強みを核とした経営をコアコンピタンス経営といいます。','試験にはコレが出る！\n\n・コアコンピタンスとは、競合他社が簡単に真似できないノウハウや技術\n\n・コアコンピタンス経営とは、他社には真似のできない、企業独自のノウハウや技術などの強みを核とした経営',NULL,NULL),(15,'03','事業戦略','コトラーの競争戦略','コトラーの競争戦略とは、各企業を市場シェアの大きさに応じて、「リーダー」「チャレンジャー」「フォロワー」「ニッチャー」の４つに分類する理論です。','もう少し詳しく！ ブルーオーシャン戦略\n上記のコトラーの競争戦略は、競争の激しい市場（レッドオーシャン）でどのように戦うかの理論です。一方で、ブルーオーシャン戦略とは、既存の激しい競争を避け、未開拓の新しい市場（ブルーオーシャン）を創出する戦略です。','/home/air/goalskill_t/back/img/section18/10.png',NULL),(16,'03','事業戦略','イノベーター理論','イノベーター理論とは、消費者を「商品を買う時期」によって次の５つのタイプに分類する理論です。',NULL,'/home/air/goalskill_t/back/img/section18/11.png','上記の分類のうち、特にアーリーアダプターが試験に出題されます。これは、このタイプの消費者が他の消費者に大きな影響を与えるため、企業が新商品を発売する際に重要視するためです。\nなお、前ページで解説したコトラーの競争理論が「企業」を分類する理論であるのに対して、イノベーター理論では「消費者」を分類します。この点にも注意してください。'),(17,'03','事業戦略','バリューチェーン分析','バリューチェーン分析とは、企業の活動を大きく５つの主活動（購買物流、製造、出荷物流、販売・マーケティング、サービス）と、４つの支援活動（全般管理、人事・労務管理、技術開発、調達活動）に分割して考えることで、製品やサービスの付加価値が事業活動のどの部分で生み出されているかを分析する考え方です。\n例えば、主活動の「出荷物流」がボトルネック（利益を出す妨げ）となっているとします。その場合、この出荷物流に多くの投資を行うことで事業を改善できます。','試験にはコレが出る！\n\n・リーダーは、全方位戦略\n\n・チャレンジャーは、差別化戦略\n\n・フォロワーは、模倣戦略\n\n・ニッチャーは、特定化戦略\n\n・アーリーアダプターとは、他の消費者に大きな影響を与える層\n\n・バリューチェーン分析では、企業の事業活動を機能ごとに「主活動」と「支援活動」に分ける','/home/air/goalskill_t/back/img/section18/12.png',NULL),(18,'04','事業戦略の目標と評価','バランススコアカード','バランススコアカード (Balanced Scorecard : BSC) とは、業務評価を「財務」「顧客」「内部ビジネスプロセス」「学習と成長」の４つの視点を用いて行う手法です。 バランススコアカードの最大の特徴は、経営状況の評価基準に「財務以外の視点」を取り入れている点にあります。\n\n会社の収支状況は財務諸表で確認できますが (p.698)、永続的に経営を続けていくためには、財務だけでなく、その他の状態も重要です。\n例えば、社員のモチベーションです。社員のモチベーションは財務諸表には記載されませんが、長期的に見れば、会社にとってとても重要な要素の１つです。\nバランススコアカードでは、ボウリングのスコアカードのように、項目別に点数を付けていきます。\n次の図は、バランススコアカードで業績を飛躍的に伸ばしたサウスウエスト航空を参考にして作成した架空の航空会社のバランススコアカードの例です。\n\n・CSF\nCSF (Critical Success Factors : 重要成功要因) とは、戦略目標を達成するために必要となる具体的な要因です。\nなお、CSFに設定される項目は往々にして「定性的」なものになります。 定性的とは数字で表すことのできないものです。 例えば、社員のモチベーションはCSFになります。\n\n・KPI\nKPI (Key Performance Indicator : 重要業績評価指標) とは、戦略目標の達成状況を表す指標です。 定性的なCSFを評価するために、「定量的」なKPIを設定します。 定量的とは数字で表すことのできるものです。 例えば、離職率はKPIになります。','試験にはコレが出る！\n\n・バランススコアカードの４つの視点とは「財務」「顧客」「内部ビジネスプロセス」「学習と成長」である\n\n・財務の視点では、財務諸表などの視点から評価する\n\n・顧客の視点では、お客様の視点から評価する\n\n・内部ビジネスプロセスの視点では、業務プロセスから評価する\n\n・学習と成長の視点では、従業員と会社の能力から評価する','/home/air/goalskill_t/back/img/section18/14.png',NULL),(19,'05','マーケティングの基本','マーケティングミックスと4P','マーケティングミックスとは、マーケティングの目標を達成する際に用いる、自社がコントロール可能な４つの手段です。 この４つの手段は「4P」とも呼ばれます。\n4Pとは「Product（製品）」「Price（価格）」「Place（場所）」「Promotion（販売促進）」です。 一例ですが、オートバイメーカーのホンダは、アメリカに進出する際、次の表のように4Pを設定してマーケティングを実行しました。',NULL,'/home/air/goalskill_t/back/img/section18/15.png',NULL),(20,'05','マーケティングの基本','4C','4Cとは「Customer Value（顧客にとっての価値）」「Cost（顧客の負担）」「Convenience（利便性）」「Communication（コミュニケーション）」の４つの英語の頭文字をとった造語です。 これまで4Pを使って考えられてきた「売り手の視点」を「買い手の視点」に転換させた概念です。',NULL,'/home/air/goalskill_t/back/img/section18/16.png',NULL),(21,'05','マーケティングの基本','コストプラス価格決定法','世の中には、商品の販売価格を決める方法がたくさんあります。その中でも、基本情報技術者試験では「コストプラス価格決定法」が頻繁に出題されます。\nコストプラス価格決定法は、製造原価にマージンを加えた金額を販売価格にする方法です。以下の式で商品の販売価格を決定します。\n\n販売価格 ＝ 製造原価 ＋ マージン\n\n理論説明：製造原価とは、売上原価(p.701)です。つまり、製品を作るのにかかった費用です。製造原価のことを流通業界では「仕入原価」ともいいます。\nまた、マージンとは、売上総利益です。売上総利益は、販売費及び一般管理費と営業利益を合わせた金額です(p.701)。','試験にはコレが出る！\n\n・マーケティングミックス（4P）とは、「Product（製品）」「Price（価格）」「Place（場所）」「Promotion（販売促進）」\n\n・4Cは「Customer Value（顧客にとっての価値）」「Cost（顧客の負担）」「Convenience（利便性）」「Communication（コミュニケーション）」の４つ\n\n・コストプラス価格決定法は、「製造原価＋マージン」で販売価格を決める',NULL,NULL),(22,'06','経営管理システム','ERP','ERP (Enterprise Resource Planning : 企業資源計画) とは、経営資源（ヒト、モノ、カネ、情報）を総合的に管理する手法です。 下図を見てください。 左はERPを導入していない状態の組織、右はERPを導入している組織です。',NULL,'/home/air/goalskill_t/back/img/section18/17.png','左の組織では、各部署が個別に情報を持っているため、経営者がある情報を知ろうとした場合に、どの部署に聞けばよいのかわかりません。\n一方、ERPでは、各部署が個別に持っていた情報を一元管理します。 こうすることで、右の組織のように、どの部署でも同じ情報を参照・活用することができます。 経営者も正しい情報を常に同じところから手に入れられるようになります。\nERPの目的は経営資源を総合的に管理することです。 ERPを導入して情報を一元化すれば、縦割りになっていた業務を統合管理できます。'),(23,'06','経営管理システム','CRM','多数の新規顧客から得られる一時的な利益よりも、既存顧客が生涯にわたってもたらしてくれる利益のほうが大きくなることがあります。 なぜなら、新規顧客を獲得するには膨大なコストがかかるためです。 このような考えのもとで、既存顧客と良好な関係を築くための手法が考案されました。 それが「CRM」です。\nCRM (Customer Relationship Management : 顧客関係管理) とは、顧客との良好な関係を築くことで長期的な利益を得る手法です。 CRMの目的は、顧客ロイヤリティの獲得と顧客生涯価値の最大化です。\nCRMでは顧客の個人情報や購買履歴などの情報を一元管理します。 こうすることで、営業、マーケティング、カスタマーサポート（サービスデスクなど）といった顧客と接点のある部門で顧客情報を共有することができます。 その結果、顧客ごとに最適なサービスやアフターケアを行うことが可能になります。\n例えば、製品の販売時に顧客情報を取得できたとしましょう。 そうすれば、その顧客がサービスデスクに電話をかけてきた際には、その顧客の名前や買った商品、購入時期などをすぐに確認できるため、迅速に対応することができます。','学習のポイント　顧客ロイヤリティ\n理論説明：顧客ロイヤリティとは、顧客が企業に対して抱く愛着です。企業にとって、一人でも多くの顧客に愛着を抱いてもらうことが大切です。',NULL,NULL),(24,'06','経営管理システム','SFA','SFA (Sales Force Automation : 営業支援システム) とは、営業ノウハウを共有するためのシステムです。 主に営業部門で使われます。 SFAを使うと、各営業担当者が持っていた営業情報を一元化できるので、より効率的に営業活動を行うことができます。\n先述したCRMが顧客情報を一元化するのに対して、SFAでは見込み客を顧客に変えることを目的として、営業情報を一元化します。',NULL,'/home/air/goalskill_t/back/img/section18/18.png',NULL),(25,'06','経営管理システム','SCM','SCM (Supply Chain Management : 供給連鎖管理) とは、社内だけでなく、社外も含めた調達・生産・販売などのプロセス全体の最適化を行う手法です。\n自動車産業のように１台の車を製造するのに多くの部品が必要となるような産業では、１つの会社だけで製品を完成させることができません。 部品を作る下請け会社や、製品を運ぶ物流業者など、複数の企業が協力して製品を完成させます。\n従来は、関連する各企業が個別に生産管理をしていましたが、SCMを使うと、企業同士を鎖のようにつなげて、供給プロセス全体を最適化できます。 その結果、在庫数を最適な状態に保つことができたり、より効率的に企業同士が連携できるようになったりします。','学習のポイント　ERPとSCM\nERPとSCMは似ていますが、大きく異なる点があります。ERPが「社内の最適化」を目的としているのに対して、SCMは「社外も含めたプロセス全体の最適化」を目的としている点です。','/home/air/goalskill_t/back/img/section18/19.png',NULL),(26,'06','経営管理システム','ナレッジマネジメント','ナレッジマネジメントとは、個人の知識や情報を組織全体で共有することです。 企業にはヒト、モノ、カネ、情報（チエ）の４つの経営資源があります (p.670)。 このうちの「情報」を、ナレッジマネジメントでは「暗黙知」と「形式知」の２種類に分類します。\n暗黙知は、文書化されていない、個々の社員の経験やノウハウなどです。 一方、形式知は、文書化されている、社内で共有できる知識です。 暗黙知はその知識を持っている社員が辞めると、会社からなくなってしまいます。 また、暗黙知は文書化されていないので、企業内で共有化しづらいという欠点があります。\nそこで、ナレッジマネジメントでは、暗黙知を形式知に変えることで、知識を企業内で共有し、作業を効率化します。','試験にはコレが出る！\nナレッジマネジメントとは、知識を共有化し、企業全体の問題解決力を高めること',NULL,NULL);

--
-- Table structure for table `section_19`
--

CREATE TABLE `section_19` (
  `id` int NOT NULL AUTO_INCREMENT,
  `chapter` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci,
  `main_title` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci,
  `sub_title` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci,
  `theory_description` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci,
  `tip` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci,
  `img` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci,
  `img_description` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=33 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

--
-- Dumping data for table `section_19`
--

INSERT INTO `section_19` VALUES (1,'01','ビジネスシステム','スマートグリッド','スマートグリッドとは、ITを使って電力の需給量の最適化を図る次世代電力網です。スマートは「賢い」、グリッドは「送電網」という意味です。 現状の電力網は発電所から家庭や企業への一方向ですが、スマートグリッドでは電力を双方向にやり取りします。例えば、家庭が太陽光パネルを使って発電し、余った電力を不足している地域に供給することができます。',NULL,NULL,NULL),(2,'01','ビジネスシステム','スマートメーター','スマートメーターは、通信機能を備えた電力計です。スマートメーターはスマートグリッドを実現するための中核となる機器であり、スマートメーターを家庭やオフィスに設置することで、電力消費量を可視化できるようになります。可視化することで、消費者は節電意識が高まりますし、電力会社は電力需要をより正確に予測できるようになります。 また、スマートメーターは通信機能を使って自動検針を行うため、検針員が現地に行って検針する必要がありません。さらに、家電製品と接続することで、電力の使用を制御することもできます。 従来は、電力の需要量と供給量が一致しない場合、電力会社が供給量を増やすことで対処していたのですが、供給量を増やすには過剰な発電設備を維持する必要があるため余計な費用がかかります。 一方、スマートメーターの導入が進めば、供給量を増やすのではなく、消費者に節電の協力をしてもらい、需要量を減らすことで対処できるようになります。',NULL,'/home/air/goalskill_t/back/img/section19/1.png',NULL),(3,'01','ビジネスシステム','HEMS','家庭用のスマートメーターで可視化できるようになった電力量は、HEMSと呼ばれるシステムで見ることができます。 HEMS（Home Energy Management System：家庭用エネルギー管理システム）とは、家電製品をネットワークにつないで、電力の可視化と制御を行うシステムです。 HEMSのポイントは「可視化（見える化）」と「制御（コントロール）」の2つです。まず、HEMSにおける電力の「可視化」とは、家庭内の電力の使用量、電気料金、太陽光の発電量などの情報を、タブレット端末などで見える化することです。家電製品ごとの電力の使用量が確認できるので、節電につながるといわれています。 また、HEMSにおける電力の「制御」とは、家電製品の消費電力を自動でコントロールすることです。例えば、電力需要のピーク時に、エアコンを省エネモードに自動で切り替えて節電するなど、HEMSは快適さを保ちつつ、消費電力の最適な制御を行います。','試験にはこれが出る！ \n・スマートグリッドは、電力の需給量の最適化を図る次世代電力網 \n・スマートメーターの目的は、電力消費量の可視化、自動検針、電力需要制御の3つ \n・HEMSとは、電力の可視化と電力消費の制御を行うシステム',NULL,NULL),(4,'01','ビジネスシステム','POSシステム','POSシステム（Point of Sales System：販売時点情報管理システム）とは、商品が売れた際に、その商品の情報をネットワークを通じて管理し、経営に役立てる仕組みです。 POSシステムでは、コンビニエンスストアなどのレジで、商品に付いているバーコードを読み取ることで、消費者が「いつ」「どこで」「何を」「いくらで」「いくつ」買ったかという情報を取得できます。POSシステムで得られる情報のことをPOSデータといいます。',NULL,'/home/air/goalskill_t/back/img/section19/2.png',NULL),(5,'01','ビジネスシステム','ID-POSデータ','最近では、POSデータに個人情報（ID）が付加された「ID-POSデータ」が使われています。従来のPOSデータは「誰が」という情報を取得できませんでしたが、ID-POSデータでは、レジで客にポイントカードなどを提示してもらうことで「誰が」買ったのかまでを把握できます。 これによって、POSシステムでは、購入履歴（最終購買日、購買頻度、累計購買総額など）が確認できます。','試験にはコレが出る！ \nID-POSデータを用いると、購入履歴（最終購買日、購買頻度、累計購買総額など）を確認できる',NULL,NULL),(6,'02','エンジニアリングシステム','生産方式','具体的なエンジニアリングシステムを説明する前に、生産方式について解説します。製造業において、製品を作る手法のことを「生産方式」といいます。',NULL,NULL,NULL),(7,'02','エンジニアリングシステム','受注生産方式と見込生産方式','受注生産方式とは、顧客からの注文を受けてから生産を開始する生産方式です。 一方、見込生産方式とは、顧客からの注文は待たず、生産開始時の計画に基づいて見込み数量を生産する生産方法です。受注生産方式と見込生産方式のメリットとデメリットは次のとおりです。どちらにも一長一短があることがわかります。',NULL,'/home/air/goalskill_t/back/img/section19/3.png',NULL),(8,'02','エンジニアリングシステム','かんばん方式（JIT生産方式）','かんばん方式とは、必要な物を、必要なときに、必要な量だけ生産する生産方式です。かんばん方式はトヨタの生産方式の1つであり、別名「JIT生産方式（ジャストインタイム生産方式）」とも呼ばれます。かんばん方式では、無駄をなくすために「かんばん」という道具を使います。この「かんばん」は部品が入っている部品箱に付いていて、部品の数などが書かれています。「かんばん」を利用して組み立て工場から指示された数やタイミングで部品を作ることで、部品を作り過ぎる無駄をなくすことができ、使わない部品を置くスペースも節約できます。',NULL,'/home/air/goalskill_t/back/img/section19/4.png',NULL),(9,'02','エンジニアリングシステム','ライン生産方式とセル生産方式','ライン生産方式とは、作業員を生産ラインに配置し、ベルトコンベアなどで流れてくる製品を組み立てる生産方式です。「流れ作業」ともいいます。 セル生産方式とは、1人または数人の作業員が、生産の全工程を担当する生産方式です。セル（cell）は「小さな部屋」という意味で、作業員の周りを作業台や部品が囲んでいることからこのように呼ばれます。','試験にはコレが出る！ \n・かんばん方式とは、必要な物を、必要なときに、必要な量だけ生産する生産方式 \n・セル生産方式に向いている製品は、多種類かつフレキシブルな生産が求められるもの','/home/air/goalskill_t/back/img/section19/6.png',NULL),(10,'02','エンジニアリングシステム','MRP','MRP（Material Requirements Planning：資材所要量計画）とは、製品の生産計画に合わせて必要な資材の量を求め、資材の手配を行う手法です。資材とは、材料、部品、中間製品（仕掛品）などです。 製品はたくさんの資材から作られるため、どの資材をいつまでに、いくつ手配するのかを計算する必要があります。この計算は非常に複雑になるため、通常はMRPシステム（MRPを自動化するシステム）を使って計算します。MRPシステムを使えば、簡単な操作で、製造に必要な資材の在庫量を最適化できます。','試験にはコレが出る！ \nMRP（資材所要量計画）は、製品の生産計画に合わせて必要な資材の量を求め、資材の手配を行う手法','/home/air/goalskill_t/back/img/section19/7.png',NULL),(11,'03','19-03 e-ビジネス','EC','EC（Electronic Commerce：電子商取引）とは、インターネット上で商品を売買すること（取引すること）です。ECには、企業側、利用者側の双方にメリットがあるため、現在では広く利用されています。 \n\n・企業側のメリット：店舗の家賃や販売員の給与などを削減できる ：初期投資が少ない \n\n・利用者側のメリット：自宅で商品を購入できる（店舗へ行かなくてもよい）',NULL,NULL,NULL),(12,'03','19-03 e-ビジネス','ECの分類','EC（電子商取引）は大きく次の5つに分類されます。基本情報技術者試験ではGtoBとOtoOが最頻出です。これら2つの用語については確実に覚えておいてください。','試験にはコレが出る！\n ・GtoBの一例は、自治体の利用する物品や資材の電子調達や電子入札を行うこと \n・OtoOは、仮想店舗から実店舗、または、実店舗から仮想店舗への販売促進','/home/air/goalskill_t/back/img/section19/8.png',NULL),(13,'03','19-03 e-ビジネス','電子オークション','CtoCの具体例の1つに「電子オークション」があります。電子オークションとは、インターネットを使った競売（オークション）です。電子オークションでは、売る人が希望価格を提示して、最も高い価格で入札した買い手が商品を買うことができます。電子オークションの具体的なサービスとしては「ヤフオク！」が有名です。',NULL,NULL,NULL),(14,'03','19-03 e-ビジネス','逆オークション','逆オークションとは、買う人が希望価格を提示して、最も安い価格で入札した売り手が商品を売ることができる取引です。電子オークションにおける売り手と買い手が逆になるところがポイントです。 逆オークションは現在、CtoCやBtoCで使われることが多いのですが、GtoBでも使われるようになってきています。例えば、自治体が買い手となり、行政で使う品物の価格を提示します。その価格を見た企業が売り手となり、入札をして、最も安い価格を提示した企業が、その商品を自治体に売ることができます。 これまでの入札は一回の入札で発送先が決まっていましたが、逆オークションは何度も入札できるので、価格が限界まで下がるといわれています。','試験にはこれが出る！ \n逆オークションとは、買う人が希望価格を提示して、最も安い価格で入札した売り手が商品を売ることができる取引',NULL,NULL),(15,'03','19-03 e-ビジネス','EC（電子商取引）での決済','EC（電子商取引）の決済に関する用語を解説します。ECの決済に関する用語の中では「エスクローサービス」が圧倒的によく出題されます。今年受験を考えている人は確実に覚えておいてください。',NULL,NULL,NULL),(16,'03','19-03 e-ビジネス','エスクローサービス','エスクローサービスとは、インターネット上の取引を安全に行うために、売り手と買い手の間に入って決済を仲介するサービスです。\n\n インターネットショッピングが一般に広く浸透したことによって、顔の見えない相手と取引することが多くなりました。そして「お金を払ったのに商品が届かない」「商品を送ったのに代金が支払われない」などのトラブルも増加しています。そのようなトラブルに対応するために誕生したのがエスクローサービスです。エスクローサービスでは、買い手と売り手の間に仲介会社（エスクローサービス会社）が入ります。ちなみに、あまり聞き慣れない「エスクロー（Escrow）」とは、「第三者預託」という意味です。エスクローサービスの取引の順序は下図のとおりです。','試験にはこれが出る！ \nエスクローサービスの取引の順序が出題される','/home/air/goalskill_t/back/img/section19/9.png','このようにすることで、買い手側の「お金を払ったのに商品が届かない」といったリスクや、売り手側の「商品を送ったのに代金が支払われない」といったリスクをなくすことができます。基本情報技術者試験では上図がそのまま出題されるので、取引の順序を確認しておいてください。'),(17,'03','19-03 e-ビジネス','RFID','ECでの決済をはじめ、物流や小売など、さまざまなビジネスで利用されているのがRFIDです。RFID（Radio Frequency Identification）とは、電波や電磁波を用いることで、非接触で情報をやり取りできる技術です。「Radio Frequency」は「無線周波数」という意味です。RFIDで情報を読み取れる距離は数cmから数mです。RFIDを利用した装置の代表例はICタグです。',NULL,NULL,NULL),(18,'03','19-03 e-ビジネス','ICタグ','　ICタグとは、RFIDを利用した電子的な荷札です。ICタグは「RFIDタグ」とも呼ばれます。ICタグは「ICチップ」と呼ばれる極小の集積回路（Integrated Circuit：IC）と、アンテナで構成される装置です。ICチップはデータ処理や保存を行うことができます。\n　また、ICチップをカードに搭載したものを「ICカード」と呼びます。代表例は、SuicaやPASMO、ICOCA、PiTapaなどの鉄道各社が発行するICカードやクレジットカード、社員証、電子マネーなどです。 ICタグは今後、JANコードやQRコードに代わる装置であるといわれており、基本情報技術者試験ではその理由が出題されます。理由は次の2つです。 \n\n（1）汚れに強い \n（2）梱包の外から読める\n\n(1) 汚れに強い \nバーコードは光学的に情報を読み取るので、印字面が汚れてしまうと情報を識別することができません。一方で、ICタグは無線通信を使って情報をやり取りするので、ICタグの周りが汚れても情報を取り出すことができます。\n\n(2) 梱包の外から読める バーコードは光学的に情報を読み取るので、バーコードとバーコードリーダーの間に障害物があると読み取りができません。一方、ICタグは無線通信なので、箱を開けなくてもICタグの情報を読み取ることができます。','試験にはこれが出る！\n ICタグ（RFIDタグ）の特徴は、（1）汚れに強い、（2）梱包の外から読める','/home/air/goalskill_t/back/img/section19/11.png',NULL),(19,'03','19-03 e-ビジネス','ロングテール','　ECには販売する品揃えに関して、実店舗ではなかなか実現できない大きな特徴があります。それが「ロングテール」です。 ロングテールとは「あまり売れない商品でも、その種類が多くなると、大きな売上になる」という法則です。一般的な店舗には「お店の面積」という物理的な制約があるため、陳列できる（販売できる）商品の数が少ないです。\n　一方、ECでは商品を店舗に陳列する必要がなく、倉庫に置いておくことができます。その結果、実店舗よりも多くの商品を取り扱うことが可能となり、売れ筋商品だけでなく、あまり売れない商品も取り扱えるようになります。あまり売れない商品であっても、そのアイテム数が膨大になると大きな売上になります。','試験にはこれが出る！ \nロングテールとは、あまり売れない商品でも、その種類が多くなると、大きな売上になること','/home/air/goalskill_t/back/img/section19/12.png',NULL),(20,'03','19-03 e-ビジネス','EDI','EDI（Electronic Data Interchange：電子データ交換）とは、ネットワークを使って、商取引のためのデータをコンピュータ間で規約に基づいて交換することです。これまで紙やFaxで行ってきた発注書、納品書、請求書などを電子データ化することで、処理コストや郵送コストを削減できます。\n\n経済産業省は、EDIを次のように定義しています。','試験にはコレが出る！ \nEDIとは、商取引のためのデータをコンピュータ間で規約に基づいて交換すること','/home/air/goalskill_t/back/img/section19/14.png','文章中の「規約」とは、メッセージの形式やエラーの処理方法などを定めたルールです。EDIでは会社間や業界間でできるだけ規約を統一します。なぜなら、会社間や業界間で規約（ルール）が統一されていないと非効率だからです。例えば、せっかく紙を使わなくてもやり取りできるようにしたにも関わらず、会社間でやり取りするデータ形式が統一されていないと、複数の会社から送られてくるデータを正しい形に直すのにこれまで以上にコストがかかってしまうかもしれません。一方、規約（ルール）が統一されていれば、すべての取引先とスムーズにデータをやり取りできます。'),(21,'03','19-03 e-ビジネス','ソーシャルメディア','ITを使ったビジネスにおいて、近年盛り上がっているのがソーシャルメディアです。ソーシャルメディアは、従来の新聞やテレビなどのマスメディアとは異なり、ITを使ってユーザー同士が双方向に情報交換をするメディアです。ソーシャルメディアの例としては、ブログやSNSがあります。ここでは、ソーシャルメディアに関連する用語である「CGM」と「シェアリングエコノミー」を解説します。',NULL,NULL,NULL),(22,'03','19-03 e-ビジネス','CGM','CGM（Consumer Generated Media：消費者生成メディア）とは、一般の消費者がインターネットを通じて自らの情報を発信するメディアの総称です。CGMの例としては、ブログやSNS、口コミサイトなどがあります。 従来は、商品に関する情報はその商品を作った企業が発信したものがほとんどでした。しかし、インターネットが普及したことで、商品を使った感想などを一般消費者が発信できるようになりました。企業からの情報は商品の良いことばかりであったのに対して、口コミサイトなどで発信される消費者の情報は企業の思惑に左右されないので、役に立つことがあります。',NULL,NULL,NULL),(23,'03','19-03 e-ビジネス','シェアリングエコノミー','シェアリングエコノミーとは、インターネットを使って、物やサービスを他の人と貸し借りすることです。シェアリングエコノミーで貸し借りする物やサービスの代表例としては、民泊（家）、ライドシェア（運転）、クラウドソーシング（スキル）などがあります。基本情報技術者試験では、シェアリングエコノミーで貸し借りする物やサービスが「遊休資産」と表現されることが多いです。','試験にはコレが出る！ \n・CGMとは、一般の消費者がインターネットを通じて自らの情報を発信するメディアの総称（ブログやSNSなど） \n・シェアリングエコノミーとは、遊休資産の共有',NULL,NULL),(24,'04','組込みシステム・IoTシステム','組込みシステム','組込みシステムとは、特定の機能を実行するシステムです。組込みシステムといった場合、通常は「マイクロコンピュータ」のことを指します。 ここで使われている「特定」という言葉は、「汎用」と対比される言葉です。組込みシステムは「ご飯を炊く」「モノを温める」など、あらかじめ決められた用途のみに使われます。一方で「汎用」は広くいろいろな用途に使われることを意味します。',NULL,NULL,NULL),(25,'04','組込みシステム・IoTシステム','民生機器と産業機器','民生機器とは、一般家庭で使われる電化製品です（いわゆる家電）。具体例としては、電子レンジ、炊飯器、エアコンなどです。組込みシステムは、現在販売されている民生機器のほとんどに内蔵されています。 \nまた、産業機器とは、産業用に使われる機器です。具体例としては、産業用ロボット、自動倉庫、自動販売機などです。',NULL,NULL,NULL),(26,'04','組込みシステム・IoTシステム','組込みソフトウェア','組込みシステム（マイクロコンピュータ）の中の、読み出し専用の記憶装置（ROM）にインストールされたソフトウェアのことを「組込みソフトウェア（ファームウェア）」と呼びます。 なぜ読み出し専用（書き換えができない）の記憶装置に書き込んで出荷するのかというと、ユーザーが誤ってソフトウェアを上書きしてしまうのを防ぐためです。',NULL,NULL,NULL),(27,'04','組込みシステム・IoTシステム','IoT','IoT（Internet of Things：モノのインターネット）とは、自動車や家電などの「モノ」が直接インターネットにつながって、お互いに情報をやり取りすることです。 基本情報技術者試験では、IoTの具体例が問われます。例えば「外出先からスマートフォンを操作して、自宅のエアコンの電源を入れることができるシステム」などがIoTの例です。IoTは、IoTデバイス（モノ）とIoTサーバ（IoTデバイスを管理する機器）で構成されます。',NULL,'/home/air/goalskill_t/back/img/section19/15.png',NULL),(28,'04','組込みシステム・IoTシステム','閉域網','IoTの対象はインターネットにつながっているモノだけではありません。閉域網と呼ばれるネットワークにつながっているモノも対象となります。 閉域網とは、インターネットに接続していないネットワークです。インターネットは開かれたネットワークであり、不特定多数がアクセスできる分、セキュリティが低いです。一方で、閉域網は閉じたネットワークであるため、許可された人しか利用できません。そのため、セキュリティが高くなります。',NULL,NULL,NULL),(29,'04','組込みシステム・IoTシステム','IoTとネットワーク','基本情報技術者試験の試験範囲には、IoT関連の用語が多数含まれています。ここではネットワークと関連性の深いIoT関連用語を解説します。',NULL,NULL,NULL),(30,'04','組込みシステム・IoTシステム','BLE','BLE (Bluetooth Low Energy) とは、Bluetoothの仕様の１つで、省電力の通信規格です。従来のBluetoothよりも通信速度が遅い分、省電力であるため、IoT機器での利用に適しています。BLEはボタン電池１つで数年稼働するといわれています。一方で、BLEはLTE (4G) よりも通信距離が短いです。',NULL,NULL,NULL),(31,'04','組込みシステム・IoTシステム','LPWA','LPWA (Low Power Wide Area) とは、省電力で広範囲の通信ができる無線通信です。数十kmの通信距離を持ちます。LTE (4G) よりも省電力であり、BLEよりも通信距離が長いという特徴があります。',NULL,'/home/air/goalskill_t/back/img/section19/16.png','上図のとおり、LPWAはBLEよりも通信距離が長く、LTEよりも省電力です。一方で、LPWAはWi-FiやLTEよりも通信速度が遅いです。'),(32,'04','組込みシステム・IoTシステム','エッジコンピューティング','エッジコンピューティングとは、IoT機器の近くにサーバを配置することで応答速度を高める技術です。この技術は主に工場に設置されたセンサーなどのIoT機器との通信で使われます。\n従来のクラウドコンピューティングでは、サーバはユーザーから離れた場所にあるので通信に時間がかかっていました。 一方で、エッジコンピューティングではサーバを工場の近くに配置するので、センサーとの通信を高速に行うことができ、処理のリアルタイム性を高めることができます。そして、必要なデータだけをクラウドコンピューティングと通信します。','試験にはこれが出る！ \n・IoTの構成要素はIoTデバイスとIoTサーバ \n・IoTでは、インターネットまたは閉域網に接続できるすべてのモノが対象 \n・BLEは消費電力が小さく、通信距離が短い \n・エッジコンピューティングとは、IoT機器の近くにサーバを配置することで処理のリアルタイム性を高める技術','/home/air/goalskill_t/back/img/section19/17.png',NULL);

--
-- Table structure for table `section_2`
--

CREATE TABLE `section_2` (
  `id` int NOT NULL AUTO_INCREMENT,
  `chapter` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci,
  `main_title` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci,
  `sub_title` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci,
  `theory_description` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci,
  `tip` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci,
  `img` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci,
  `img_description` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=96 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

--
-- Dumping data for table `section_2`
--

INSERT INTO `section_2` VALUES (1,'01','集合と論理演算','集合とベン図','集合とは、はっきりと区別できる条件でグループ分けされたものの集まりです。また、その集合を構成する個々のものを「要素」といいます。 ベン図とは、集合の関係を視覚的に表した図です。イギリス人の数学者ジョン・ベンが考えた図なので「ベン図」と呼ばれます。ベン図を使うと、集合や要素の関係をわかりやすく表現できます。 複数の集合がある場合は、∩や∪の記号を使って集合や要素の関係を表します。「∩」は「かつ」、「∪」は「または」、「―」は「ではない」を表す記号です。',NULL,'/home/air/goalskill_t/back/img/section2/1.png',NULL),(2,'01','集合と論理演算','論理演算','私たちが小学校で学び、普段利用している「たし算」「ひき算」「かけ算」「わり算」は四則演算と呼ばれる演算です。演算の記号には＋、－、×、÷を使います。例えば「3+7」の計算結果は「10」になります。 一方、ここで学ぶ論理演算とは、四則演算とは別の演算方式です。先述したように、コンピュータの世界は「0」（電圧が低い）と「1」（電圧が高い）の2進数の世界なので、コンピュータは直接、四則演算を行うことはできません。 そこで、コンピュータに計算をさせるために応用されたのが論理演算です。コンピュータは、論理演算を組み合わせることで、四則演算をはじめ、さまざまな計算を行います。',NULL,NULL,NULL),(3,'01','集合と論理演算','論理演算の基本','論理演算とは、2進数の1桁のみを対象にした演算方式です。つまり、論理演算が扱う数字は「0」と「1」の2種類であり、その計算結果も常に「0」か「1」のいずれかになります。このように聞くと非常に簡単そうに聞こえると思いますが、きちんと理屈を理解しておかないと計算結果を誤ってしまうことがあるので注意が必要です。 四則演算の演算子は＋、－、×、÷の4種類です。一方、論理演算の主な演算子はAND、OR、XOR、NOTの4種類です。四則演算の計算結果は無限にあるので1つの表にまとめることはできませんが、論理演算の計算結果は数が限られているので次表のようにまとめることができます（この表のことを「真理値表」といいます）。',NULL,'/home/air/goalskill_t/back/img/section2/4.png',NULL),(4,'01','集合と論理演算','NANDとNOR','上記で解説した4つの演算子が論理演算の基本的な演算子ですが、基本情報技術者試験ではこれらの他に「NAND」（否定論理積）と「NOR」（否定論理和）が出題されることもあります。 NANDとは、論理積と否定を組み合わせた演算です。計算方法は簡単です。AND演算の答えをすべて反転するだけです（0は1、1は0）。 また、NORとは、論理和と否定を組み合わせた演算です。NORではOR演算の答えをすべて反転させます。 なお、NANDは「NOT AND」、NORは「NOT OR」という意味です。','学習のポイント \n「論理演算子の意味」が出題される 基本情報技術者試験では、論理演算子の意味が問われます。ですので、受験日までに上記の真理値表とベン図を覚えておいてください。なお、真理値表を覚えるのが面倒な人は、ベン図だけでも構いません。ベン図が描ければ、すぐに真理値表を算出できます。','/home/air/goalskill_t/back/img/section2/6.png',NULL),(5,'01','集合と論理演算','論理演算子の優先順位','四則演算と同様に、論理演算にも演算の優先順位があります。優先順位には細かいルールがありますが、基本情報技術者試験で覚えておく必要がある優先順位は以下のルールのみです。 括弧 > NOT > AND > OR 特に「論理積（AND）は論理和（OR）よりも優先順位が高い（先に演算する）」ことは必ず覚えておいてください。例えば「A OR B AND C」という式があった場合、先に「B AND C」が処理されます。AND演算では両方が「1」（真）の場合に計算結果が「1」（真）になります。 次に「B AND C」の計算結果と左のAをOR演算します。計算結果をベン図で表すと以下になります。',NULL,NULL,NULL),(6,'02','論理回路','論理回路','論理回路とは、論理演算（p.51）を行う電子部品です。コンピュータの頭脳であるCPU（中央処理装置）は無数の論理回路を使って演算をしています。',NULL,NULL,NULL),(7,'02','論理回路','MIL記号','実物の論理回路は電子部品ですが、論理回路を紙面上に表す際は論理演算を表す記号を使います。論理演算を表す記号はJISでも標準化していますが、基本情報技術者試験では「MIL記号」（MIL論理記号）と呼ばれる記号を使います。 ただし、みなさんがMIL記号を覚える必要はありません。基本情報技術者試験では、試験中にコンピュータ上で記号の意味を閲覧できます。\n\nMIL記号に入力と出力を示す場合は、以下のように表記します。ここでは、論理積（AND）の演算結果例を紹介します。','もう少し詳しく！ \nMIL記号 MIL記号はアメリカ軍の物資調達に関するMIL規格（Military Standard）で規定されている記号です。ただし「MIL記号」という名称が基本情報技術者試験で問われることはありません。','/home/air/goalskill_t/back/img/section2/9.png',NULL),(8,'02','論理回路','論理回路の出題傾向と解き方','論理回路の問題では、以下のような少し複雑な論理回路が、最終的にどのような論理演算を行っているのかが出題されます。',NULL,'/home/air/goalskill_t/back/img/section2/10.png','解答形式としては、設問の論理回路と同じ意味を持つ「MIL記号」「論理式」「真理値表」のいずれかを選択するような問題として出題されます（上記の過去問題ではMIL記号を選択します）。 実際にこの論理回路を読み解いていきます。みなさんも１つずつ理解しながら読み進めてください。'),(9,'02','論理回路','論理回路の問題ではベン図を描く','論理回路の問題では、すべての論理回路（MIL記号）に、ベン図を描いていきます。そうすると、一見複雑そうに見える論理回路の演算内容を確認することができます。\n\n【手順1】入力値であるAとBのベン図を描く\n\n最初に、入力値であるAとBのベン図を描きます。これらは論理演算上は「1」として扱われます。',NULL,'/home/air/goalskill_t/back/img/section2/12.png','白地の部分が「0」、色付きの部分が「1」を表します。'),(10,'02','論理回路','【手順2】AやBを入力値として、論理回路の演算を行う','次に、AやBを入力値として、その先にある論理回路の出力をベン図で描き出します。今回の例では、3つの経路があります。中央の経路では、入力値AとBに対して、否定論理積（NAND）を行っています。そのため、ベン図は以下のようになります。',NULL,'/home/air/goalskill_t/back/img/section2/13.png',NULL),(11,'02','論理回路','【手順3】出力結果を入力値として、再度演算を行う','続いて、③の経路では、入力値Aと先ほど述べた論理演算の出力結果を用いて、再度否定論理積（NAND）を行っています。④の経路も同様です。\n\n基本情報技術者試験では、上記のような複数の論理回路が組み合わさった問題が出題されます。そのため、それぞれの論理演算がきちんと行えるように準備しておくことが大切です。また、章末に頻出の過去問題を掲載しているので、事前に掲載の過去問題を解いて、実際の試験の感覚を養っておいてください。','もう少し詳しく！ \nド・モルガンの法則 論理回路の問題は、問題内容によってはベン図を描くよりも、「ド・モルガンの法則」を適用するほうが簡単に解ける場合があります。余力のある人は覚えてもよいでしょう。ただし、覚えることが増えるので、余力のない人は覚える必要はありません。多少時間はかかりますが、ベン図を使った解法で解くことをお勧めします。','/home/air/goalskill_t/back/img/section2/18.png','演算結果のベン図を見ると、今回の論理回路によって、入力値Aと入力値Bの排他的論理和（XOR）（p.52）になっていることが確認できます。 後は、解答選択肢の中から、排他的論理和（XOR）を表す「MIL記号」や「真理値表」、「論理式」を選択すれば正答となります。今回の例題ではMIL記号を答える選択肢でしたので、ウが正解となります。'),(12,'02','論理回路','加算回路','ここまでに学習した論理回路を組み合わせることで、CPUはようやく、たし算ができるようになります。 2進数のたし算を行う論理回路を「加算回路」といいます。 加算回路も論理回路の1つとして試験に出題されるので、押さえておきましょう。 加算回路には「半加算器」と「全加算器」の2種類があります。',NULL,NULL,NULL),(13,'02','論理回路','半加算器','半加算器とは、2進数のたし算において、下の位からの桁上がりを考慮しない加算回路です。 言葉で表すとわかりづらいので、具体的な値で考えましょう。 2進数は「0」と「1」の2つしかないので、2つの2進数のたし算は下図の4パターンのみです。',NULL,'/home/air/goalskill_t/back/img/section2/21.png','上記の半加算器の真理値表は、論理積（AND回路）と排他的論理和（XOR回路）の組み合わせで作ることができます。 以下は半加算器の論理回路です。'),(14,'02','論理回路','全加算器','全加算器とは、2進数のたし算において、下の位からの桁上がりを考慮する加算回路です。 こちらも言葉で表すとわかりづらいので、具体的な値で考えましょう。 半加算器の入力は2つでしたが、全加算器では下の位からの桁上がりをたし算に含めるので、入力は3つになります。 3つの2進数のたし算は下図の8パターンです。',NULL,'/home/air/goalskill_t/back/img/section2/24.png','上記の全加算器の真理値表は、2つの半加算器と1つの論理和（OR回路）の組み合わせで作ることができます。以下が全加算器の論理回路です。'),(15,'02','論理回路','半加算器と全加算器の使い分け','ビット列のたし算において、1桁目の位では、それより下の位がないため、桁上がりを考慮する必要がありません。そのため、半加算器が使われます。一方、2桁目以上の位では、下の位からの桁上がりを考慮する必要があります。そのため、全加算器が使われます。','試験にはこれが出る！ \n・半加算器は「論理積」と「排他的論理和」で実現する \n・全加算器は2つの入力の他に、下位からの桁上がりを加算する','/home/air/goalskill_t/back/img/section2/25.png',NULL),(16,'02','論理回路','素子とゲート','最後に論理回路の問題で登場する「素子」という用語について解説します。素子とは、装置を構成する基本単位です。電気回路で素子といった場合は「回路を構成する電子部品」のことを指します。素子の代表例に、抵抗やコンデンサ、トランジスタ、ダイオードなどがあります。また、論理演算を行う仕組みを構成する素子を「論理素子」といいます。 なお、素子のことを「ゲート」と表現する場合もあります。基本情報技術者試験では「論理回路」「論理素子」「論理ゲート」はすべて同じ意味になります。',NULL,NULL,NULL),(17,'03','計算式の表し方','中置記法','中置記法とは、数字の間に「＋」や「－」などの演算子を置く表記法です。',NULL,'/home/air/goalskill_t/back/img/section2/26.png','中置記法は、私たちが普段利用している表記法です。 演算子を値と値の「中」に「置」くので、中置記法です。'),(18,'03','計算式の表し方','前置記法','前置記法とは、数字の前に「＋」や「－」などの演算子を置く表記法です。',NULL,'/home/air/goalskill_t/back/img/section2/28.png','中置記法を前置記法に変換するには、計算の優先順位が高い演算子から順に前に出し、最後に括弧を取ります。優先順位は、括弧 ＞ かけ算・わり算 ＞ たし算・ひき算の順です。これは通常の四則演算と同じです。'),(19,'03','計算式の表し方','後置記法','後置記法とは、数字の後ろに「＋」や「－」などの演算子を置く表記法です。表記ルールは、演算子を後ろに置くこと以外、前置記法と同じです。後置記法は逆ポーランド表記法とも呼ばれます。','もう少し詳しく！ \n逆ポーランド表記法とコンピュータ 基本情報技術者試験で「逆ポーランド表記法」が出題される理由は、この記法がコンピュータ内部で使われている表記法だからです。コンピュータは、下図のように「逆ポーランド表記法」と「スタックの仕組み」（p.91）を組み合わせて計算を行っています。','/home/air/goalskill_t/back/img/section2/31.png',NULL),(20,'03','計算式の表し方','中置記法','中置記法とは、数字の間に「＋」や「－」などの演算子を置く表記法です。',NULL,'/home/air/goalskill_t/back/img/section2/32.png','中置記法は、私たちが普段利用している表記法です。 演算子を値と値の「中」に「置」くので、中置記法です。'),(21,'03','計算式の表し方','前置記法','前置記法とは、数字の前に「＋」や「－」などの演算子を置く表記法です。',NULL,'/home/air/goalskill_t/back/img/section2/34.png','中置記法を前置記法に変換するには、計算の優先順位が高い演算子から順に前に出し、最後に括弧を取ります。優先順位は、括弧 ＞ かけ算・わり算 ＞ たし算・ひき算の順です。これは通常の四則演算と同じです。'),(22,'03','計算式の表し方','後置記法','後置記法とは、数字の後ろに「＋」や「－」などの演算子を置く表記法です。表記ルールは、演算子を後ろに置くこと以外、前置記法と同じです。後置記法は逆ポーランド表記法とも呼ばれます。','もう少し詳しく！ \n逆ポーランド表記法とコンピュータ 基本情報技術者試験で「逆ポーランド表記法」が出題される理由は、この記法がコンピュータ内部で使われている表記法だからです。コンピュータは、下図のように「逆ポーランド表記法」と「スタックの仕組み」（p.91）を組み合わせて計算を行っています。','/home/air/goalskill_t/back/img/section2/37.png',NULL),(23,'03','計算式の表し方','中置記法','中置記法とは、数字の間に「＋」や「－」などの演算子を置く表記法です。',NULL,'/home/air/goalskill_t/back/img/section2/38.png','中置記法は、私たちが普段利用している表記法です。 演算子を値と値の「中」に「置」くので、中置記法です。'),(24,'03','計算式の表し方','前置記法','前置記法とは、数字の前に「＋」や「－」などの演算子を置く表記法です。',NULL,'/home/air/goalskill_t/back/img/section2/40.png','中置記法を前置記法に変換するには、計算の優先順位が高い演算子から順に前に出し、最後に括弧を取ります。優先順位は、括弧 ＞ かけ算・わり算 ＞ たし算・ひき算の順です。これは通常の四則演算と同じです。'),(25,'03','計算式の表し方','後置記法','後置記法とは、数字の後ろに「＋」や「－」などの演算子を置く表記法です。表記ルールは、演算子を後ろに置くこと以外、前置記法と同じです。後置記法は逆ポーランド表記法とも呼ばれます。','もう少し詳しく！ \n逆ポーランド表記法とコンピュータ 基本情報技術者試験で「逆ポーランド表記法」が出題される理由は、この記法がコンピュータ内部で使われている表記法だからです。コンピュータは、下図のように「逆ポーランド表記法」と「スタックの仕組み」（p.91）を組み合わせて計算を行っています。','/home/air/goalskill_t/back/img/section2/43.png',NULL),(26,'03','計算式の表し方','中置記法','中置記法とは、数字の間に「＋」や「－」などの演算子を置く表記法です。',NULL,'/home/air/goalskill_t/back/img/section2/44.png','中置記法は、私たちが普段利用している表記法です。 演算子を値と値の「中」に「置」くので、中置記法です。'),(27,'03','計算式の表し方','前置記法','前置記法とは、数字の前に「＋」や「－」などの演算子を置く表記法です。',NULL,'/home/air/goalskill_t/back/img/section2/46.png','中置記法を前置記法に変換するには、計算の優先順位が高い演算子から順に前に出し、最後に括弧を取ります。優先順位は、括弧 ＞ かけ算・わり算 ＞ たし算・ひき算の順です。これは通常の四則演算と同じです。'),(28,'03','計算式の表し方','後置記法','後置記法とは、数字の後ろに「＋」や「－」などの演算子を置く表記法です。表記ルールは、演算子を後ろに置くこと以外、前置記法と同じです。後置記法は逆ポーランド表記法とも呼ばれます。','もう少し詳しく！ \n逆ポーランド表記法とコンピュータ 基本情報技術者試験で「逆ポーランド表記法」が出題される理由は、この記法がコンピュータ内部で使われている表記法だからです。コンピュータは、下図のように「逆ポーランド表記法」と「スタックの仕組み」（p.91）を組み合わせて計算を行っています。','/home/air/goalskill_t/back/img/section2/49.png',NULL),(29,'03','計算式の表し方','中置記法','中置記法とは、数字の間に「＋」や「－」などの演算子を置く表記法です。',NULL,'/home/air/goalskill_t/back/img/section2/50.png','中置記法は、私たちが普段利用している表記法です。 演算子を値と値の「中」に「置」くので、中置記法です。'),(30,'03','計算式の表し方','前置記法','前置記法とは、数字の前に「＋」や「－」などの演算子を置く表記法です。',NULL,'/home/air/goalskill_t/back/img/section2/52.png','中置記法を前置記法に変換するには、計算の優先順位が高い演算子から順に前に出し、最後に括弧を取ります。優先順位は、括弧 ＞ かけ算・わり算 ＞ たし算・ひき算の順です。これは通常の四則演算と同じです。'),(31,'03','計算式の表し方','後置記法','後置記法とは、数字の後ろに「＋」や「－」などの演算子を置く表記法です。表記ルールは、演算子を後ろに置くこと以外、前置記法と同じです。後置記法は逆ポーランド表記法とも呼ばれます。','もう少し詳しく！ \n逆ポーランド表記法とコンピュータ 基本情報技術者試験で「逆ポーランド表記法」が出題される理由は、この記法がコンピュータ内部で使われている表記法だからです。コンピュータは、下図のように「逆ポーランド表記法」と「スタックの仕組み」（p.91）を組み合わせて計算を行っています。','/home/air/goalskill_t/back/img/section2/55.png',NULL),(32,'03','計算式の表し方','中置記法','中置記法とは、数字の間に「＋」や「－」などの演算子を置く表記法です。',NULL,'/home/air/goalskill_t/back/img/section2/56.png','中置記法は、私たちが普段利用している表記法です。 演算子を値と値の「中」に「置」くので、中置記法です。'),(33,'03','計算式の表し方','前置記法','前置記法とは、数字の前に「＋」や「－」などの演算子を置く表記法です。',NULL,'/home/air/goalskill_t/back/img/section2/58.png','中置記法を前置記法に変換するには、計算の優先順位が高い演算子から順に前に出し、最後に括弧を取ります。優先順位は、括弧 ＞ かけ算・わり算 ＞ たし算・ひき算の順です。これは通常の四則演算と同じです。'),(34,'03','計算式の表し方','後置記法','後置記法とは、数字の後ろに「＋」や「－」などの演算子を置く表記法です。表記ルールは、演算子を後ろに置くこと以外、前置記法と同じです。後置記法は逆ポーランド表記法とも呼ばれます。','もう少し詳しく！ \n逆ポーランド表記法とコンピュータ 基本情報技術者試験で「逆ポーランド表記法」が出題される理由は、この記法がコンピュータ内部で使われている表記法だからです。コンピュータは、下図のように「逆ポーランド表記法」と「スタックの仕組み」（p.91）を組み合わせて計算を行っています。','/home/air/goalskill_t/back/img/section2/61.png',NULL),(35,'03','計算式の表し方','中置記法','中置記法とは、数字の間に「＋」や「－」などの演算子を置く表記法です。',NULL,'/home/air/goalskill_t/back/img/section2/62.png','中置記法は、私たちが普段利用している表記法です。 演算子を値と値の「中」に「置」くので、中置記法です。'),(36,'03','計算式の表し方','前置記法','前置記法とは、数字の前に「＋」や「－」などの演算子を置く表記法です。',NULL,'/home/air/goalskill_t/back/img/section2/64.png','中置記法を前置記法に変換するには、計算の優先順位が高い演算子から順に前に出し、最後に括弧を取ります。優先順位は、括弧 ＞ かけ算・わり算 ＞ たし算・ひき算の順です。これは通常の四則演算と同じです。'),(37,'03','計算式の表し方','後置記法','後置記法とは、数字の後ろに「＋」や「－」などの演算子を置く表記法です。表記ルールは、演算子を後ろに置くこと以外、前置記法と同じです。後置記法は逆ポーランド表記法とも呼ばれます。','もう少し詳しく！ \n逆ポーランド表記法とコンピュータ 基本情報技術者試験で「逆ポーランド表記法」が出題される理由は、この記法がコンピュータ内部で使われている表記法だからです。コンピュータは、下図のように「逆ポーランド表記法」と「スタックの仕組み」（p.91）を組み合わせて計算を行っています。','/home/air/goalskill_t/back/img/section2/67.png',NULL),(38,'03','計算式の表し方','中置記法','中置記法とは、数字の間に「＋」や「－」などの演算子を置く表記法です。',NULL,'/home/air/goalskill_t/back/img/section2/68.png','中置記法は、私たちが普段利用している表記法です。 演算子を値と値の「中」に「置」くので、中置記法です。'),(39,'03','計算式の表し方','前置記法','前置記法とは、数字の前に「＋」や「－」などの演算子を置く表記法です。',NULL,'/home/air/goalskill_t/back/img/section2/70.png','中置記法を前置記法に変換するには、計算の優先順位が高い演算子から順に前に出し、最後に括弧を取ります。優先順位は、括弧 ＞ かけ算・わり算 ＞ たし算・ひき算の順です。これは通常の四則演算と同じです。'),(40,'03','計算式の表し方','後置記法','後置記法とは、数字の後ろに「＋」や「－」などの演算子を置く表記法です。表記ルールは、演算子を後ろに置くこと以外、前置記法と同じです。後置記法は逆ポーランド表記法とも呼ばれます。','もう少し詳しく！ \n逆ポーランド表記法とコンピュータ 基本情報技術者試験で「逆ポーランド表記法」が出題される理由は、この記法がコンピュータ内部で使われている表記法だからです。コンピュータは、下図のように「逆ポーランド表記法」と「スタックの仕組み」（p.91）を組み合わせて計算を行っています。','/home/air/goalskill_t/back/img/section2/73.png',NULL),(41,'03','計算式の表し方','中置記法','中置記法とは、数字の間に「＋」や「－」などの演算子を置く表記法です。',NULL,'/home/air/goalskill_t/back/img/section2/74.png','中置記法は、私たちが普段利用している表記法です。 演算子を値と値の「中」に「置」くので、中置記法です。'),(42,'03','計算式の表し方','前置記法','前置記法とは、数字の前に「＋」や「－」などの演算子を置く表記法です。',NULL,'/home/air/goalskill_t/back/img/section2/76.png','中置記法を前置記法に変換するには、計算の優先順位が高い演算子から順に前に出し、最後に括弧を取ります。優先順位は、括弧 ＞ かけ算・わり算 ＞ たし算・ひき算の順です。これは通常の四則演算と同じです。'),(43,'03','計算式の表し方','後置記法','後置記法とは、数字の後ろに「＋」や「－」などの演算子を置く表記法です。表記ルールは、演算子を後ろに置くこと以外、前置記法と同じです。後置記法は逆ポーランド表記法とも呼ばれます。','もう少し詳しく！ \n逆ポーランド表記法とコンピュータ 基本情報技術者試験で「逆ポーランド表記法」が出題される理由は、この記法がコンピュータ内部で使われている表記法だからです。コンピュータは、下図のように「逆ポーランド表記法」と「スタックの仕組み」（p.91）を組み合わせて計算を行っています。','/home/air/goalskill_t/back/img/section2/79.png',NULL),(44,'03','計算式の表し方','中置記法','中置記法とは、数字の間に「＋」や「－」などの演算子を置く表記法です。',NULL,'/home/air/goalskill_t/back/img/section2/80.png','中置記法は、私たちが普段利用している表記法です。 演算子を値と値の「中」に「置」くので、中置記法です。'),(45,'03','計算式の表し方','前置記法','前置記法とは、数字の前に「＋」や「－」などの演算子を置く表記法です。',NULL,'/home/air/goalskill_t/back/img/section2/82.png','中置記法を前置記法に変換するには、計算の優先順位が高い演算子から順に前に出し、最後に括弧を取ります。優先順位は、括弧 ＞ かけ算・わり算 ＞ たし算・ひき算の順です。これは通常の四則演算と同じです。'),(46,'03','計算式の表し方','後置記法','後置記法とは、数字の後ろに「＋」や「－」などの演算子を置く表記法です。表記ルールは、演算子を後ろに置くこと以外、前置記法と同じです。後置記法は逆ポーランド表記法とも呼ばれます。','もう少し詳しく！ \n逆ポーランド表記法とコンピュータ 基本情報技術者試験で「逆ポーランド表記法」が出題される理由は、この記法がコンピュータ内部で使われている表記法だからです。コンピュータは、下図のように「逆ポーランド表記法」と「スタックの仕組み」（p.91）を組み合わせて計算を行っています。','/home/air/goalskill_t/back/img/section2/85.png',NULL),(47,'03','計算式の表し方','中置記法','中置記法とは、数字の間に「＋」や「－」などの演算子を置く表記法です。',NULL,'/home/air/goalskill_t/back/img/section2/86.png','中置記法は、私たちが普段利用している表記法です。 演算子を値と値の「中」に「置」くので、中置記法です。'),(48,'03','計算式の表し方','前置記法','前置記法とは、数字の前に「＋」や「－」などの演算子を置く表記法です。',NULL,'/home/air/goalskill_t/back/img/section2/88.png','中置記法を前置記法に変換するには、計算の優先順位が高い演算子から順に前に出し、最後に括弧を取ります。優先順位は、括弧 ＞ かけ算・わり算 ＞ たし算・ひき算の順です。これは通常の四則演算と同じです。'),(49,'03','計算式の表し方','後置記法','後置記法とは、数字の後ろに「＋」や「－」などの演算子を置く表記法です。表記ルールは、演算子を後ろに置くこと以外、前置記法と同じです。後置記法は逆ポーランド表記法とも呼ばれます。','もう少し詳しく！ \n逆ポーランド表記法とコンピュータ 基本情報技術者試験で「逆ポーランド表記法」が出題される理由は、この記法がコンピュータ内部で使われている表記法だからです。コンピュータは、下図のように「逆ポーランド表記法」と「スタックの仕組み」（p.91）を組み合わせて計算を行っています。','/home/air/goalskill_t/back/img/section2/91.png',NULL),(50,'03','計算式の表し方','中置記法','中置記法とは、数字の間に「＋」や「－」などの演算子を置く表記法です。',NULL,'/home/air/goalskill_t/back/img/section2/92.png','中置記法は、私たちが普段利用している表記法です。 演算子を値と値の「中」に「置」くので、中置記法です。'),(51,'03','計算式の表し方','前置記法','前置記法とは、数字の前に「＋」や「－」などの演算子を置く表記法です。',NULL,'/home/air/goalskill_t/back/img/section2/94.png','中置記法を前置記法に変換するには、計算の優先順位が高い演算子から順に前に出し、最後に括弧を取ります。優先順位は、括弧 ＞ かけ算・わり算 ＞ たし算・ひき算の順です。これは通常の四則演算と同じです。'),(52,'03','計算式の表し方','後置記法','後置記法とは、数字の後ろに「＋」や「－」などの演算子を置く表記法です。表記ルールは、演算子を後ろに置くこと以外、前置記法と同じです。後置記法は逆ポーランド表記法とも呼ばれます。','もう少し詳しく！ \n逆ポーランド表記法とコンピュータ 基本情報技術者試験で「逆ポーランド表記法」が出題される理由は、この記法がコンピュータ内部で使われている表記法だからです。コンピュータは、下図のように「逆ポーランド表記法」と「スタックの仕組み」（p.91）を組み合わせて計算を行っています。','/home/air/goalskill_t/back/img/section2/97.png',NULL),(53,'03','計算式の表し方','中置記法','中置記法とは、数字の間に「＋」や「－」などの演算子を置く表記法です。',NULL,'/home/air/goalskill_t/back/img/section2/98.png','中置記法は、私たちが普段利用している表記法です。 演算子を値と値の「中」に「置」くので、中置記法です。'),(54,'03','計算式の表し方','前置記法','前置記法とは、数字の前に「＋」や「－」などの演算子を置く表記法です。',NULL,'/home/air/goalskill_t/back/img/section2/100.png','中置記法を前置記法に変換するには、計算の優先順位が高い演算子から順に前に出し、最後に括弧を取ります。優先順位は、括弧 ＞ かけ算・わり算 ＞ たし算・ひき算の順です。これは通常の四則演算と同じです。'),(55,'03','計算式の表し方','後置記法','後置記法とは、数字の後ろに「＋」や「－」などの演算子を置く表記法です。表記ルールは、演算子を後ろに置くこと以外、前置記法と同じです。後置記法は逆ポーランド表記法とも呼ばれます。','もう少し詳しく！ \n逆ポーランド表記法とコンピュータ 基本情報技術者試験で「逆ポーランド表記法」が出題される理由は、この記法がコンピュータ内部で使われている表記法だからです。コンピュータは、下図のように「逆ポーランド表記法」と「スタックの仕組み」（p.91）を組み合わせて計算を行っています。','/home/air/goalskill_t/back/img/section2/103.png',NULL),(56,'03','計算式の表し方','中置記法','中置記法とは、数字の間に「＋」や「－」などの演算子を置く表記法です。',NULL,'/home/air/goalskill_t/back/img/section2/104.png','中置記法は、私たちが普段利用している表記法です。 演算子を値と値の「中」に「置」くので、中置記法です。'),(57,'03','計算式の表し方','前置記法','前置記法とは、数字の前に「＋」や「－」などの演算子を置く表記法です。',NULL,'/home/air/goalskill_t/back/img/section2/106.png','中置記法を前置記法に変換するには、計算の優先順位が高い演算子から順に前に出し、最後に括弧を取ります。優先順位は、括弧 ＞ かけ算・わり算 ＞ たし算・ひき算の順です。これは通常の四則演算と同じです。'),(58,'03','計算式の表し方','後置記法','後置記法とは、数字の後ろに「＋」や「－」などの演算子を置く表記法です。表記ルールは、演算子を後ろに置くこと以外、前置記法と同じです。後置記法は逆ポーランド表記法とも呼ばれます。','もう少し詳しく！ \n逆ポーランド表記法とコンピュータ 基本情報技術者試験で「逆ポーランド表記法」が出題される理由は、この記法がコンピュータ内部で使われている表記法だからです。コンピュータは、下図のように「逆ポーランド表記法」と「スタックの仕組み」（p.91）を組み合わせて計算を行っています。','/home/air/goalskill_t/back/img/section2/109.png',NULL),(59,'03','計算式の表し方','中置記法','中置記法とは、数字の間に「＋」や「－」などの演算子を置く表記法です。',NULL,'/home/air/goalskill_t/back/img/section2/110.png','中置記法は、私たちが普段利用している表記法です。 演算子を値と値の「中」に「置」くので、中置記法です。'),(60,'03','計算式の表し方','前置記法','前置記法とは、数字の前に「＋」や「－」などの演算子を置く表記法です。',NULL,'/home/air/goalskill_t/back/img/section2/112.png','中置記法を前置記法に変換するには、計算の優先順位が高い演算子から順に前に出し、最後に括弧を取ります。優先順位は、括弧 ＞ かけ算・わり算 ＞ たし算・ひき算の順です。これは通常の四則演算と同じです。'),(61,'03','計算式の表し方','後置記法','後置記法とは、数字の後ろに「＋」や「－」などの演算子を置く表記法です。表記ルールは、演算子を後ろに置くこと以外、前置記法と同じです。後置記法は逆ポーランド表記法とも呼ばれます。','もう少し詳しく！ \n逆ポーランド表記法とコンピュータ 基本情報技術者試験で「逆ポーランド表記法」が出題される理由は、この記法がコンピュータ内部で使われている表記法だからです。コンピュータは、下図のように「逆ポーランド表記法」と「スタックの仕組み」（p.91）を組み合わせて計算を行っています。','/home/air/goalskill_t/back/img/section2/115.png',NULL),(62,'03','計算式の表し方','中置記法','中置記法とは、数字の間に「＋」や「－」などの演算子を置く表記法です。',NULL,'/home/air/goalskill_t/back/img/section2/116.png','中置記法は、私たちが普段利用している表記法です。 演算子を値と値の「中」に「置」くので、中置記法です。'),(63,'03','計算式の表し方','前置記法','前置記法とは、数字の前に「＋」や「－」などの演算子を置く表記法です。',NULL,'/home/air/goalskill_t/back/img/section2/118.png','中置記法を前置記法に変換するには、計算の優先順位が高い演算子から順に前に出し、最後に括弧を取ります。優先順位は、括弧 ＞ かけ算・わり算 ＞ たし算・ひき算の順です。これは通常の四則演算と同じです。'),(64,'03','計算式の表し方','後置記法','後置記法とは、数字の後ろに「＋」や「－」などの演算子を置く表記法です。表記ルールは、演算子を後ろに置くこと以外、前置記法と同じです。後置記法は逆ポーランド表記法とも呼ばれます。','もう少し詳しく！ \n逆ポーランド表記法とコンピュータ 基本情報技術者試験で「逆ポーランド表記法」が出題される理由は、この記法がコンピュータ内部で使われている表記法だからです。コンピュータは、下図のように「逆ポーランド表記法」と「スタックの仕組み」（p.91）を組み合わせて計算を行っています。','/home/air/goalskill_t/back/img/section2/121.png',NULL),(65,'03','計算式の表し方','中置記法','中置記法とは、数字の間に「＋」や「－」などの演算子を置く表記法です。',NULL,'/home/air/goalskill_t/back/img/section2/122.png','中置記法は、私たちが普段利用している表記法です。 演算子を値と値の「中」に「置」くので、中置記法です。'),(66,'03','計算式の表し方','前置記法','前置記法とは、数字の前に「＋」や「－」などの演算子を置く表記法です。',NULL,'/home/air/goalskill_t/back/img/section2/124.png','中置記法を前置記法に変換するには、計算の優先順位が高い演算子から順に前に出し、最後に括弧を取ります。優先順位は、括弧 ＞ かけ算・わり算 ＞ たし算・ひき算の順です。これは通常の四則演算と同じです。'),(67,'03','計算式の表し方','後置記法','後置記法とは、数字の後ろに「＋」や「－」などの演算子を置く表記法です。表記ルールは、演算子を後ろに置くこと以外、前置記法と同じです。後置記法は逆ポーランド表記法とも呼ばれます。','もう少し詳しく！ \n逆ポーランド表記法とコンピュータ 基本情報技術者試験で「逆ポーランド表記法」が出題される理由は、この記法がコンピュータ内部で使われている表記法だからです。コンピュータは、下図のように「逆ポーランド表記法」と「スタックの仕組み」（p.91）を組み合わせて計算を行っています。','/home/air/goalskill_t/back/img/section2/127.png',NULL),(68,'03','計算式の表し方','中置記法','中置記法とは、数字の間に「＋」や「－」などの演算子を置く表記法です。',NULL,'/home/air/goalskill_t/back/img/section2/128.png','中置記法は、私たちが普段利用している表記法です。 演算子を値と値の「中」に「置」くので、中置記法です。'),(69,'03','計算式の表し方','前置記法','前置記法とは、数字の前に「＋」や「－」などの演算子を置く表記法です。',NULL,'/home/air/goalskill_t/back/img/section2/130.png','中置記法を前置記法に変換するには、計算の優先順位が高い演算子から順に前に出し、最後に括弧を取ります。優先順位は、括弧 ＞ かけ算・わり算 ＞ たし算・ひき算の順です。これは通常の四則演算と同じです。'),(70,'03','計算式の表し方','後置記法','後置記法とは、数字の後ろに「＋」や「－」などの演算子を置く表記法です。表記ルールは、演算子を後ろに置くこと以外、前置記法と同じです。後置記法は逆ポーランド表記法とも呼ばれます。','もう少し詳しく！ \n逆ポーランド表記法とコンピュータ 基本情報技術者試験で「逆ポーランド表記法」が出題される理由は、この記法がコンピュータ内部で使われている表記法だからです。コンピュータは、下図のように「逆ポーランド表記法」と「スタックの仕組み」（p.91）を組み合わせて計算を行っています。','/home/air/goalskill_t/back/img/section2/133.png',NULL),(71,'03','計算式の表し方','中置記法','中置記法とは、数字の間に「＋」や「－」などの演算子を置く表記法です。',NULL,'/home/air/goalskill_t/back/img/section2/134.png','中置記法は、私たちが普段利用している表記法です。 演算子を値と値の「中」に「置」くので、中置記法です。'),(72,'03','計算式の表し方','前置記法','前置記法とは、数字の前に「＋」や「－」などの演算子を置く表記法です。',NULL,'/home/air/goalskill_t/back/img/section2/136.png','中置記法を前置記法に変換するには、計算の優先順位が高い演算子から順に前に出し、最後に括弧を取ります。優先順位は、括弧 ＞ かけ算・わり算 ＞ たし算・ひき算の順です。これは通常の四則演算と同じです。'),(73,'03','計算式の表し方','後置記法','後置記法とは、数字の後ろに「＋」や「－」などの演算子を置く表記法です。表記ルールは、演算子を後ろに置くこと以外、前置記法と同じです。後置記法は逆ポーランド表記法とも呼ばれます。','もう少し詳しく！ \n逆ポーランド表記法とコンピュータ 基本情報技術者試験で「逆ポーランド表記法」が出題される理由は、この記法がコンピュータ内部で使われている表記法だからです。コンピュータは、下図のように「逆ポーランド表記法」と「スタックの仕組み」（p.91）を組み合わせて計算を行っています。','/home/air/goalskill_t/back/img/section2/139.png',NULL),(74,'03','計算式の表し方','中置記法','中置記法とは、数字の間に「＋」や「－」などの演算子を置く表記法です。',NULL,'/home/air/goalskill_t/back/img/section2/140.png','中置記法は、私たちが普段利用している表記法です。 演算子を値と値の「中」に「置」くので、中置記法です。'),(75,'03','計算式の表し方','前置記法','前置記法とは、数字の前に「＋」や「－」などの演算子を置く表記法です。',NULL,'/home/air/goalskill_t/back/img/section2/142.png','中置記法を前置記法に変換するには、計算の優先順位が高い演算子から順に前に出し、最後に括弧を取ります。優先順位は、括弧 ＞ かけ算・わり算 ＞ たし算・ひき算の順です。これは通常の四則演算と同じです。'),(76,'03','計算式の表し方','後置記法','後置記法とは、数字の後ろに「＋」や「－」などの演算子を置く表記法です。表記ルールは、演算子を後ろに置くこと以外、前置記法と同じです。後置記法は逆ポーランド表記法とも呼ばれます。','もう少し詳しく！\n 逆ポーランド表記法とコンピュータ 基本情報技術者試験で「逆ポーランド表記法」が出題される理由は、この記法がコンピュータ内部で使われている表記法だからです。コンピュータは、下図のように「逆ポーランド表記法」と「スタックの仕組み」（p.91）を組み合わせて計算を行っています。','/home/air/goalskill_t/back/img/section2/145.png',NULL),(77,'04','オートマトン','モデル化','モデル化とは、現実世界にある複雑なモノを単純化しわかりやすくすることです。単純化したものを「モデル」といいます。例えば、地球儀は地球の表面だけを単純化したものなので、「地球儀は地球をモデル化したもの」といえます。','学習のポイント 「モデル化」は重要用語の１つ 基本情報技術者試験では、全体を通して「モデル」と「モデル化」の2つの用語が頻繁に登場します。ですから、用語の意味は必ず覚えておいてください。','/home/air/goalskill_t/back/img/section2/146.png',NULL),(78,'04','オートマトン','オートマトン','オートマトンとは、機能を「入力」「状態」「出力」の3つで表すシステムのモデルです。この用語定義だけでは少しわかりづらいので、自動販売機のオートマトンを例に詳しく説明します（基本情報技術者試験でも過去に、自動販売機のオートマトンが出題されたことがあります）。 自動販売機のオートマトンの「入力」「状態」「出力」は以下のとおりです。 ・入力 → 自動販売機に入れるお金 ・状態 → 入れたお金の合計金額 ・出力 → 自動販売機から出てくる商品 このように、システムの本質的な機能を「入力」「状態」「出力」に分けて考えて、オートマトンとしてモデル化すると、複雑なシステムを単純化して表すことができます。','もう少し詳しく！ \nオートマトンの本来の意味 オートマトンとは、ギリシャ語で「自らの意思で動くもの」という意味です。',NULL,NULL),(79,'04','オートマトン','状態遷移表','オートマトンにおける「状態」は、時間や動作によって、初期状態からいくつかの状態を遷移して、最終的な状態に行き着きます。この最終的な状態を「受理状態」と呼びます。また、このような状態の遷移を表で表したものを状態遷移表、図で表したものを状態遷移図といいます。 状態遷移表とは、状態の変化を示す表です。例えば「0」か「1」を入力値に取り、合計が奇数であるか、偶数であるかを表すシステムを考えてみましょう。このシステムは以下の状態遷移表で表現できます。',NULL,'/home/air/goalskill_t/back/img/section2/147.png','上表を見ると、入力値によって合計が偶数になるか、奇数になるかが決まることがわかります。例えば、偶数に「0」をたせば偶数になり、偶数に「1」をたせば奇数になります。'),(80,'04','オートマトン','状態遷移図','状態遷移図とは、状態の変化を示す図です。上記の状態遷移表を状態遷移図で表すと、次の図のようになります。','コラム：基本情報技術者試験では「5分の積み重ね」がとても大切 分散学習と集中学習の効果の違いについてはp.37で解説しましたが、ここでは「さらなる分散学習」を紹介します。それが「細切れ時間を使った勉強」です。日常生活を振り返ると、3～5分の空き時間が一日のなかにいくつもあることに気づきます。通勤・通学の電車のなか、駅での待ち時間、食事後の昼休憩の残り時間、お風呂、トイレ、待ち合わせの待ち時間などです。これらの時間を「スマホで暇つぶし」に費やすのではなく、試験勉強のために使ってみてください。これは、とても効果的な学習方法の1つです。','/home/air/goalskill_t/back/img/section2/149.png','状態遷移図では、以下の記号を用いて「状態」や「遷移」を表します。'),(81,'05','AI（人工知能）','AI（人工知能）','AI（Artificial Intelligence：人工知能）とは、人間の知的な振る舞いをコンピュータ上に再現する技術です。 AIの主な用途を下表に示します。',NULL,'/home/air/goalskill_t/back/img/section2/150.png',NULL),(82,'05','AI（人工知能）','AI関連の用語','基本情報技術者試験では最近、AIに関連する用語の出題率が増えています。 次ページの4つの用語はAIと関連性が高いのでセットで覚えると効率よく習得できます。 各用語の詳細については後述しますが、先に各用語の定義を確認しておいてください。',NULL,'/home/air/goalskill_t/back/img/section2/152.png',NULL),(83,'05','AI（人工知能）','機械学習','機械学習とは、人間が持つ学習能力をコンピュータ上に再現する技術であり、AI（人工知能）技術の1つです。機械学習は大きく「教師あり学習」「教師なし学習」「強化学習」の3つに分類されます。',NULL,NULL,NULL),(84,'05','AI（人工知能）','教師あり学習','教師あり学習とは、入力データと正解データをセットにしてコンピュータに与える手法です。例えば、「5」と書かれた「手書き数字の写真」が入力データの場合、その写真に写っているものが「5」という「数字」であるという情報を正解データとして、入力データとセットでコンピュータに与えます。この作業を何度か繰り返すことで、最終的にコンピュータは、与えられた手書き数字の画像に書かれている数字を判別できるようになります。',NULL,'/home/air/goalskill_t/back/img/section2/153.png',NULL),(85,'05','AI（人工知能）','教師なし学習','教師なし学習とは、入力データのみをコンピュータに与える手法です。教師なし学習が用いられる理由は、人間にも正解がわからない物事の予測をしてもらいたいからです。そのような正解データがないケースでもコンピュータが自動で学習できる仕組みが教師なし学習です。 例えば入力データとして「○」「△」「□」の3つの形の写真をコンピュータに与えます。正解データは与えません。この作業を何度か繰り返すことで、コンピュータは3つの形の特徴を区別し、別々のグループに分けられるようになります。',NULL,'/home/air/goalskill_t/back/img/section2/154.png',NULL),(86,'05','AI（人工知能）','強化学習','強化学習とは、正解データの代わりに報酬をコンピュータに与える手法です。強化学習では、コンピュータが試行錯誤しながら行動し、その行動によってもたらされる報酬が最大になるように学習を進めます。 強化学習は、人間が最終的な正解はわかっているけれども、その正解を導くまでの「最適な過程」がわからない場合に使われます。例えば、強化学習は、将棋を指すコンピュータで使われています。将棋の最終的な正解は「勝つこと」です。ただ、その過程である一手一手に関しては、人間は正解を知りません。そこで、コンピュータに駒を指すという行動をさせて、勝ったときに多くの報酬を与えます。こうすることで、コンピュータはできるだけ報酬が多くなるような（勝つような）駒の指し方を学習していきます。','試験にはコレが出る！ \n・機械学習とは、「人間が持つ学習能力」をコンピュータ上に再現する技術 \n・教師あり学習では、入力データと正解データの両方をコンピュータに与える \n・教師なし学習では、入力データのみをコンピュータに与える\n・強化学習とは、正解データの代わりに報酬をコンピュータに与える手法','/home/air/goalskill_t/back/img/section2/155.png',NULL),(87,'05','AI（人工知能）','ニューラルネットワーク','ニューラルネットワークとは、人間の脳の中にある「神経細胞（ニューロン）が信号をやり取りする仕組み」をコンピュータ上に再現する技術です。神経細胞（ニューロン）が網状につながる（ネットワーク）ので、ニューラルネットワークといいます。',NULL,'/home/air/goalskill_t/back/img/section2/156.png',NULL),(88,'05','AI（人工知能）','モデル','現実世界にある複雑なモノを、単純化してわかりやすくしたものを「モデル」といいます（p.72）。例えば、プラモデルは、プラスチックで乗り物やロボットなどを模したモデルです。ニューラルネットワークは複雑な脳の仕組みをプログラムで再現したモデルです。 なぜ、脳の仕組みをプログラムで模すのかというと、そのモデルをコンピュータ上で動かしたいからです。',NULL,NULL,NULL),(89,'05','AI（人工知能）','ニューロンと活性化関数','ニューラルネットワークの基本的な計算単位は「ニューロン」です。ニューロンは、値を受け取り、その値を処理して出力します。出力された値は、隣り合った次のニューロンの入力になります。 このようなニューロンの処理はプログラム上では関数として実装されます。次のニューロンに渡す値を出力する関数のことを「活性化関数」といいます。 ニューラルネットワークについてまとめると、次のようにいうことができます。\n\nニューラルネットワークとは、多数のニューロンが組み合わさって作られたモデルであり、これらのニューロンは、活性化関数を用いて入力を処理し、値を出力していくプログラムである',NULL,NULL,NULL),(90,'05','AI（人工知能）','ディープラーニング','ディープラーニングとは、ニューラルネットワークを多層化したモデルです。 ディープラーニングでは、コンピュータ自身がニューラルネットワークを使って大量のデータを分析することで、データの規則性を見つけ出します。 ニューラルネットワークを何重にも重ねることで、より高度な学習が可能になります。','試験にはこれが出る！ \n・ニューラルネットワークとは、人間の神経細胞が信号をやり取りする仕組みを模したモデル ・活性化関数は、次のニューロンに渡す値を出力する \n・ディープラーニングとは、ニューラルネットワークを何重にも重ねた機械学習 \n・ディープラーニングでは、コンピュータ自身がニューラルネットワークを使って大量のデータを分析することで、データの規則性を見つけ出す','/home/air/goalskill_t/back/img/section2/157.png',NULL),(91,'05','AI（人工知能）','生成AI','生成AI（Generative AI）とは、特定の指示を受けて、事前の学習データを元にオリジナルのコンテンツを自動的に生成するAIです。 生成AIの構築にはディープラーニングが用いられます。 生成AIは、特定の指示を受け取ると、その指示に従って、テキスト、音声、画像、動画などの新しいコンテンツを自動的に生成します。 生成AIが出力するコンテンツの具体例としては、プログラム、アート作品、楽曲、アニメーションなどがあります。',NULL,NULL,NULL),(92,'05','AI（人工知能）','プロンプト','プロンプトとは、生成AIに対して与える指示です。 例えば、生成AIに「基本情報技術者試験の合格方法を教えて」という指示を出すと、それに基づいて、合格方法について説明する文章が生成されます。 生成AIでは、プロンプトの与え方によって、生成されるコンテンツの品質が変わることがあります。 そのため、コンテンツの生成においてプロンプトは非常に重要です。 プロンプトを最適化することを「プロンプトエンジニアリング」といいます。',NULL,'/home/air/goalskill_t/back/img/section2/158.png',NULL),(93,'05','AI（人工知能）','ディープフェイクとハルシネーション','生成AIの進化と共にディープフェイクのような問題点も浮上してきました。 ディープフェイク（Deepfake）とは、本物と見分けがつかないような偽物の音声や動画などを作成する手法です。 ディープフェイクは、ディープラーニングとフェイク（偽物）を合わせた造語です。 実際にこの技術を用いて、著名人が実際には言ってもいないことを、あたかも言っているかのように見せる動画などが作られています。 ディープフェイクの登場によって、情報の信頼性やプライバシーの侵害に関する問題が引き起こされています。 また、意図的でなくても、生成AIがウソをつくことがあります。 これを示す現象として「ハルシネーション」があります。 ハルシネーション（Hallucination：幻覚）とは、生成AIが「誤った情報」を「もっともらしい情報」として生成する現象です。 例えば、「基本情報技術者試験の合格点は？」というプロンプトを入力して、「700点です。」などのように誤った出力を生成することです（正しくは科目A・Bとも600点）。 このような現象は、モデルの学習データが不足していたり、学習データが誤っていたりすることによって引き起こされます。',NULL,NULL,NULL),(94,'05','AI（人工知能）','基盤モデル','基盤モデルとは、膨大なデータで事前学習した汎用的なモデルです。 生成AIはこの基盤モデルを土台にして作られます。 基盤モデルはすでに幅広い知識を持っているため、少し微調整するだけで、文章生成AIや画像生成AIなど、特定の用途に合わせて活用できるようになります。',NULL,NULL,NULL),(95,'05','AI（人工知能）','ファインチューニング','ファインチューニング（Fine Tuning）とは、特定のデータを使って基盤モデルに追加学習を行うことで、特定の分野や用途でより高い性能を発揮できるように調整することです。 これにより、ゼロからAIを作るよりも効率的に開発できます。 例えば、ChatGPTも基盤モデルをファインチューニングして作られています。','試験にはこれが出る！\n\n・生成AIは、テキスト、音声、静止画、動画などのオリジナルコンテンツを自動的に生成するAI\n\n・プロンプトエンジニアリングとは、生成AIに対して与えられる指示（プロンプト）を最適化すること\n\n・ディープフェイクとは、本物と見分けがつかないような偽物の音声や動画などを作成する手法\n\n・ハルシネーションとは、誤った情報をもっともらしい情報として生成する現象\n\n・基盤モデルとは、膨大なデータで事前学習した汎用的なモデル\n\n・ファインチューニングとは、基盤モデルに追加学習を行うこと',NULL,NULL);

--
-- Table structure for table `section_20`
--

CREATE TABLE `section_20` (
  `id` int NOT NULL AUTO_INCREMENT,
  `chapter` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci,
  `main_title` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci,
  `sub_title` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci,
  `theory_description` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci,
  `tip` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci,
  `img` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci,
  `img_description` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=49 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

--
-- Dumping data for table `section_20`
--

INSERT INTO `section_20` VALUES (1,'01','','経営や業務を学ぶ理由','単にシステムを作るだけなら、コンピュータ（テクノロジ）の知識だけで作ることができますが、「会社の役に立つシステム」を作るには、会社の仕組みを理解しておく必要があります。 そのため、基本情報技術者試験ではコンピュータ技術のことを重要視しながらも、ストラテジ（社長の仕事）とマネジメント（管理職の仕事）の知識が多く出題されるのです。 このことはぜひ覚えておいてください。\nそれでは本題の解説をはじめていきます。',NULL,NULL,NULL),(2,'01','','経営理念','経営理念とは、会社の運営方針を決定するための「最も基本的、かつ大切な指針」です。 経営者は経営理念に従って企業を運営し、会社に関するあらゆることは、経営理念に沿って決められます。',NULL,'/home/air/goalskill_t/back/img/section20/1.png',NULL),(3,'01','','ビジョンと経営戦略','経営理念はとても大切ですが、それだけでは企業は運営できません。 経営理念を指針としたビジョンと経営戦略が必要です。\nビジョンとは、会社が目指す将来の姿です。 また、経営戦略とは、ビジョンを実現するための具体的な行動計画です。 実務の多くは経営戦略に従って行われます。',NULL,NULL,NULL),(4,'02','経営組織','4つの経営資源','経営資源とは、企業がライバル会社との激しい競争に勝ち抜くために使う資源です。 一般的に「ヒト」「モノ」「カネ」「情報（チエ）」を４大経営資源といいます。 企業はこれら４つの経営資源を活用して、競争を勝ち抜いていく必要があります。','もう少し詳しく！ 一昔前の経営資源\n実は、一昔前までは経営資源は「カネ」と「モノ」の２つだけでした。 ヒトは資源ではなく、コストと考えられていました。 それが、現在では「ヒト」と、そして「情報」も経営資源として考えられるようになりました。',NULL,NULL),(5,'02','経営組織','4つの組織形態','4つある経営資源のうちの１つであるヒトの集まりを「経営組織」といいます。 現代社会には、企業の大きさや業種ごとに、さまざまな形態の経営組織があります。 経営組織の形態を「組織形態」といいます。 ここでは、基本情報技術者試験によく出題される５つの組織形態と、それらを束ねる経営陣の役職名を解説します。','学習のポイント　組織形態と経営陣の役職名\n本項で解説する組織形態と経営陣の役職名は、試験で本当によく出題されます。 ぜひここで一息つき、気持ちをリフレッシュしてから読み進めてください。 そうすることで記憶への定着率も向上します。','/home/air/goalskill_t/back/img/section20/2.png',NULL),(6,'02','経営組織','(1) 職能別組織','職能別組織とは、業務を専門的な機能に分けて、各機能を単位として構成する組織です。\n会社には物を作ったり（開発・製造）、物を売ったり（営業）、その売上を計算したり（経理・総務）する機能が必要ですが、そういったすべての機能を社員一人ひとりが行うと非効率です。 そこで、仕事の種類で部門を分けて、社員を配置します。 社員は配属された部門の機能だけを専門的に行います。\n職能別組織のメリットは、社員の専門性を生かせることです。 人にはそれぞれ得意なことがあります。 そういった業務内容で組織を編成できるので、作業効率が上がります。\nなお、職能別組織のことを「機能別組織」と呼ぶ場合もあります。',NULL,'/home/air/goalskill_t/back/img/section20/3.png',NULL),(7,'02','経営組織','(2) 事業部制組織','事業部制組織とは、事業部を単位として構成する組織です。 中小企業の場合は１企業１事業であることが多いのですが、規模の大きい企業では複数の事業を持つ場合に、職能別組織の１つ上に「事業部」という階層を増やして事業部制組織にすることがあります。',NULL,'/home/air/goalskill_t/back/img/section20/4.png',NULL),(8,'02','経営組織','(3) マトリックス組織','マトリックス組織とは、社員が職能部門と事業部門の両方に所属する組織です。 職能別組織と事業部制組織を組み合わせたような組織形態といえます。\nマトリックス組織では職能別組織と事業部制組織の両方のメリットを享受できます。',NULL,'/home/air/goalskill_t/back/img/section20/5.png',NULL),(9,'02','経営組織','(4) プロジェクト組織','プロジェクト組織とは、ある問題を解決するために各部門から専門家を集めて結成する一時的な組織です。\nプロジェクト組織はサッカーの日本代表のイメージです。 各チームから、そのプロジェクトに適した人材を選抜してプロジェクトチームを作ります。',NULL,'/home/air/goalskill_t/back/img/section20/6.png',NULL),(10,'02','経営組織','(5) カンパニー制組織','カンパニー制組織とは、各事業部を独立した会社とみなして構成する組織です。 この「独立した会社とみなした事業部」のことを「カンパニー」または「仮想企業」といいます。 カンパニーには、事業部よりも大きな権限と責任が与えられます。\n一方で、カンパニーは完全に独立した子会社ではなく、あくまで社内組織の１つです。 つまり、各カンパニーは事業部と子会社の中間的な組織であるといえます。',NULL,'/home/air/goalskill_t/back/img/section20/7.png',NULL),(11,'02','経営組織','経営陣の役職名','基本情報技術者試験では、組織を束ねる経営陣の役職名もよく出題されます。 中でも「CIO」は頻出の用語です。',NULL,'/home/air/goalskill_t/back/img/section20/8.png',NULL),(12,'02','経営組織','OJTとOff-JT','OJT (On the Job Training) とは、実際の業務を通じた教育訓練です。 つまり、現場で行うトレーニングです。 多くの場合、指導者は上司や先輩社員です。\n一方、Off-JT (Off the Job Training) とは、仕事を離れて行われる教育訓練です。 セミナーへ参加してスキルを向上させることは、実務を通したトレーニングではないのでOff-JTです。 多くの企業はOJTとOff-JTの両方を行っています。',NULL,'/home/air/goalskill_t/back/img/section20/9.png',NULL),(13,'02','経営組織','ワークシェアリング','ワークシェアリングとは、仕事を分け合うことです。 つまり、ある人の仕事を別の人に譲ることで、みんなに仕事の機会を均等に振り分けることです。\n景気が悪くなると雇用が減り、失業者が増えます。 そのような場合に、仕事を持っている人が勤務時間を減らし、その分を失業している人に振り分けることで、社会全体として、雇用を増やすことができます。',NULL,NULL,NULL),(14,'02','経営組織','DE & I','DE & I (Diversity, Equity & Inclusion) とは、多様性 (Diversity) を尊重し、公平 (Equity) な機会を提供し、すべての人が平等に参加できる包括的 (Inclusion) な環境を作る取り組みです。\n例えば、「女性の活躍の場を広げる」などが挙げられます。 多様性を持つチームは、メンバーそれぞれに異なる視点や経験から豊富なアイディアを引き出すことができ、これがイノベーションの源泉になります。','試験にはコレが出る！\n\n・職能別組織：業務を専門的な機能に分けて、各機能を単位として構成する組織\n\n・事業部制組織：製品別、顧客別、地域別などを単位として、事業の利益責任を持つように構成する組織\n\n・マトリックス組織：社員が職能部門と事業部門の両方に所属する組織\n\n・プロジェクト組織：一定の期間に限って結成され、問題解決とともに解散する組織\n\n・カンパニー制組織：各事業部を独立した会社とみなして構成する組織\n\n・CEO：経営の最高責任者\n\n・CIO：情報システムを統括する最高責任者\n\n・OJTとは、実際の業務を通じた教育訓練\n\n・Off-JTとは、仕事を離れて行われる教育訓練\n\n・ワークシェアリングとは、仕事配分の見直しによる雇用確保の取組み\n\n・DE & Iとは、多様性 (Diversity) を尊重し、公平 (Equity) な機会を提供し、すべての人が平等に参加できる包括的 (Inclusion) な環境を作る取り組み',NULL,NULL),(15,'03','OR・IE','科学的に裏付けのある分析ツール','経営者は、数学的または科学的に裏付けのある分析ツール（道具）を使って、合理的に経営判断を行います。 基本情報技術者試験ではそれらのツールを使った計算問題が出題されます。 それでは、実際の過去問題を例として用いながら解説していきます。 まずは下記の問題を見てください。',NULL,'/home/air/goalskill_t/back/img/section20/10.png','この問題ではABC分析の方法が問われていますが、ABC分析を知るにはパレート図を理解する必要があります。 それぞれについて解説します。'),(16,'03','OR・IE','パレート図とABC分析','パレート図とは、棒グラフと折れ線グラフを組み合わせたグラフです。 棒グラフではデータを大きい順に左から並べ、かつ、折れ線グラフでは各データの累積比率 (％) を表します。 この図を使うことで、最も重要なデータ（件数が多いデータ）を一目で確認できます。\nまた、ABC分析とは、データをパレート図で表し、データの重要度に応じて、データを３つのグループにランク付けする分析手法です。 一般的には、個数に応じて製品をＡ、Ｂ、Ｃの３つのグループに分けます。\nＡ群は**０〜70％までを占める製品、Ｂ群は70〜90％を占める製品、Ｃ群は90〜100％**を占める製品といった形で分類します。 ただし、この割合に決まりはありません。各企業で適切な割合を決めることになります。\n\nでは、p.680の過去問題を解いてみましょう。 まずはパレート図を作成します。 パレート図は個数の大きい製品を左から順に並べます（下図の左側を参照）。続いて、個数に応じて製品をＡ、Ｂ、Ｃの３つのグループに分けます。 今回の問題では「Ａ群は70％以上とする」と記載されているので、70％の個数を算出します。 製品全体で875個あるので、そのうちの70％は612.5個 ($875 \\times 0.7$) です。 左端の製品から個数をたしていくと、製品Ｔを足した時点で612.5を超えます。182 (製品P) + 136 (製品Q) + 120 (製品R) + 98 (製品S) + 91 (製品T) = 627\nよって、選択肢ウが正解になります。 ABC分析に関する問題が出題された場合はこのようにして問題を解きます。',NULL,'/home/air/goalskill_t/back/img/section20/12.png','上図のように、不良品の原因をABC分析することで、優先的に改善すべき問題を洗い出すことができます。'),(17,'03','OR・IE','散布図と回帰分析','散布図とは、２種類のデータの関係性を表す図です。 散布図を使うと、２つのデータの間にどのような関係性があるか (相関関係) を確認できます。\n回帰分析とは、「回帰直線」（散布図内の点が多く集まっているところに引いた直線）を使って、過去のデータがどのような原因によって引き起こされているのか分析し、将来を予測する手法です。\n２種類のデータに相関関係があれば、将来、高い確率でその相関関係が当てはまるだろうと予測できます。','試験にはコレが出る！\n\n・ABC分析とは、データの重要度に応じて、データを３つのグループにランク付けする分析手法\n\n・散布図とは、２種類のデータの関係性（相関関係）を表す図\n\n・相関関係には「正の相関」「負の相関」「相関なし」の３種類がある\n\n・回帰分析とは、過去を分析して未来を予測する手法','/home/air/goalskill_t/back/img/section20/13.png','なお、相関関係には「正の相関」「負の相関」「相関なし」の３種類があります。'),(18,'03','OR・IE','特性要因図','特性要因図とは、問題を引き起こしている原因を分析するための図です。 図の形状が魚の骨に似ていることから「フィッシュボーンチャート」とも呼ばれます。 例えば以下のように、「不良品の増加」という問題（特性）を４つの原因（要因）に分けて分析します。 各要因はさらに小さい原因に分けて分析することができます。','試験にはコレが出る！\n特性要因図では、複数の原因から伸びる矢印が合流した先に問題を書く','/home/air/goalskill_t/back/img/section20/14.png','基本情報技術者試験では図中の問題と原因の位置関係が出題されます。 特性要因図では、複数の原因から伸びる矢印が合流した先に問題を書きます。'),(19,'03','OR・IE','線形計画法','線形計画法とは、与えられた条件から最大の効果を得るための解を求める手法です。 このような、最大の効果を得るための解を求める問題のことを「最適化問題」といいます。 ここでは、実際に出題された過去問を見ながら、解き方を丁寧に解説します。 以下の過去問を見てください。','学習のポイント　線形計画法の問題を解くタイミング\n線形計画法は、基本情報技術者試験に非常によく出題されます。そのため、ぜひ解法を身に付けておいてほしいのですが、一方で、線形計画法の問題は解くのに時間がかかるため、本番の試験で出題された場合は必ず後回しにしてください。 その他の問題を解いたうえで、余った時間を使って解答するようにしてください。','/home/air/goalskill_t/back/img/section20/15.png',NULL),(20,'03','OR・IE','線形計画法の手順','線形計画法では、次の手順で問題を解きます。\n（１）問題を数式で表す\n（２）数式をグラフにする\n（３）解を求める',NULL,NULL,NULL),(21,'03','OR・IE','(1) 問題を数式で表す','線形計画法の問題では、設問の内容を制限条件と目的関数の２つで表します。 制限条件とは、解が満たさなければならない条件です。 一方、目的関数とは最大化（もしくは最小化）したい関数です。この問題の制限条件を数式で表すと次のようになります。〔制限条件〕原料Ａ：$2X + Y \\le 100$原料Ｂ：$X + 2Y \\le 80$理論説明：この式では、製品Ｘの生産個数を文字Ｘ、製品Ｙの生産個数を文字Ｙで表しています。\n\n■原料Ａの不等式理論説明：原料Ａの不等式は、原料Ａの制限条件を表します。 製品Ｘを１個作るには原料Ａが「２」必要なので、製品ＸをＸ個作るのに必要な原料Ａの量は「$2X$」となります。また、製品Ｙを１個作るには原料Ａが「１」必要なので、製品ＹをＹ個作るのに必要な原料Ａの量は「$Y$」となります。よって、製品ＸをＸ個、製品ＹをＹ個生産する場合、原料Ａの量は「$2X + Y$」必要となります。原料Ａの量は調達可能量である「100」以下にならなければいけないので、原料Ａの制限条件は「$2X + Y \\le 100$」になります。\n\n■原料Ｂの不等式理論説明：同様に、原料Ｂの不等式は、原料Ｂの制限条件を表します。 製品Ｘを１個作るには原料Ｂが「１」必要なので、製品ＸをＸ個作るのに必要な原料Ｂの量は「$X$」となります。 また、製品Ｙを１個作るには原料Ｂが「２」必要なので、製品ＹをＹ個作るのに必要な原料Ｂの量は「$2Y$」となります。よって、製品ＸをＸ個、製品ＹをＹ個生産する場合、原料Ｂの量は「$X + 2Y$」必要となります。 原料Ｂの量は調達可能量である「80」以下にならなければいけないので、原料Ｂの制限条件は「$X + 2Y \\le 80$」になります。\n\n■目的関数理論説明：例題の目的関数は次のようになります。 この式では、合計利益を文字Ｚ、製品Ｘの生産個数を文字Ｘ、製品Ｙの生産個数を文字Ｙで表しています。〔目的関数〕$Z = 100X + 150Y \\rightarrow$ 最大化\n\n上記の式は、合計利益の目的関数を表します。 製品Ｘの１個当たりの販売利益は100円なので、製品ＸをＸ個作るときの販売利益は「$100X$」となります。 また、製品Ｙの１個当たりの販売利益は150円なので、製品ＹをＹ個作るときの販売利益は「$150Y$」となります。\nよって、製品ＸをＸ個、製品ＹをＹ個生産する場合、合計利益Ｚは「$100X + 150Y$」となります。この関数を最大化するＸとＹを見つけるのが線形計画法の目的です。',NULL,NULL,NULL),(22,'03','OR・IE','(2) 数式をグラフにする','続いて、各数式をグラフにします。 まずは制限条件からです。横軸に製品Ｘの生産個数、縦軸に製品Ｙの生産個数を取るグラフに、制限条件の２つの数式を記入すると、以下のようになります。\n\nＸやＹの値がマイナスになることはない（生産個数がマイナスになることはない）ので、Ｘ軸とＹ軸、そして制限条件を示す２本の直線で囲まれた範囲（網掛け部分）に解が存在することになります。次に目的関数をグラフにします。目的関数をＹに関する方程式に変形すると以下のようになります。$$Y = -\\frac{100}{150}X + \\frac{Z}{150}$$\n上記のＺに適当な値として3000、6000、9000の３つを代入して、それぞれのグラフを記入してみましょう。\n\n目的関数の傾き「$-100/150$」は常に一定なので、Ｚを変えることで直線は平行移動します。Ｙ切片（グラフとＹ軸の交点）の値は「$Z/150$」なので、Ｚが大きいほど、Ｙ切片も大きくなります。翻すと、Ｙ切片が最大のとき、Ｚが最大になるといえます。\n以上のことから、網掛け部分を通る傾き「$-100/150$」の直線のうち、最大の切片を持つ直線が、求める目的関数となります。',NULL,'/home/air/goalskill_t/back/img/section20/17.png',NULL),(23,'03','OR・IE','(3) 解を求める','最後に目的関数を平行移動することで、切片が最大となる目的関数を見つけます。 目的関数の直線の傾きは、制限条件の２本の直線の傾きの間にあるので、網掛け部分の右上の角を通るとき、切片が最大となります。','学習のポイント　頂点が解になる場合\n理論説明：解が網掛け部分の左上や右下などの「頂点」になることもあります。その場合は、それぞれ、「$X = 0$」、「$Y = 0$」を目的関数に代入することで、解を見つけることができます。','/home/air/goalskill_t/back/img/section20/18.png','上記の利益が最大となる座標は２本の制限条件の直線の交点です。 つまり、制限条件の連立方程式を解くことで解が求められます。$$\\begin{cases}\n2X + Y = 100 \\\\\nX + 2Y = 80\n\\end{cases}$$理論説明：上記の連立方程式を解くと「$X = 40$」「$Y = 20$」になります。これを目的関数に代入すると、「$Z = 7000$」となります。よって、選択肢ウの「7,000円」が正解になります。'),(24,'03','OR・IE','重み付け総合評価法','重み付け総合評価法とは、すべての評価項目を平等に扱うのではなく、あらかじめ個別に重要性を決めておく評価方法です。 私たちが商品を選ぶときは、価格や性能など、さまざまな評価項目を考えて、総合的に判断して買います。\nこのとき、多くの人には「複数ある評価項目の中でも、特に自分が重要視する項目」があると思います。重み付け総合評価法はそれと似ています。\nここでは、実際に出題された過去問を解きながら、重み付け総合評価法の解き方を解説します。以下の過去問を見てください。','試験にはコレが出る！\n重み付け総合評価法を使った計算問題が出題される','/home/air/goalskill_t/back/img/section20/19.png','重み付け総合評価法では、評価項目の「重み」と案の「点数」をかけ算して合計し、それを総合点とします。総合点が最も高い案が優先すべき案となります。上記の表について、それぞれの案（案１〜案４）の総合点を計算すると以下のようになります。案１：$(4 \\times 6) + (3 \\times 5) + (3 \\times 6) = 57$案２：$(4 \\times 8) + (3 \\times 5) + (3 \\times 4) = 59$案３：$(4 \\times 2) + (3 \\times 9) + (3 \\times 7) = 56$案４：$(4 \\times 5) + (3 \\times 5) + (3 \\times 6) = 53$\n案２の総合点が最も高いことがわかります。よって、案２が優先すべき改善案となります。'),(25,'03','OR・IE','期待値','期待値とは、文字どおり「期待される値」であり、確率的に決まる平均値です。 計算式はとてもシンプルなので、ぜひ習得しておいてください。 ここでは、サイコロを例に用いて期待値を計算する方法を説明します。サイコロには１から６までの数字が書かれており、どの面も $1/6$ の確率で出ます。\n\n期待値は「値」と「確率」をかけ算し、その後、すべての組み合わせを合計して求めます。 つまり、サイコロの場合は次のように計算できます。$(1 \\times 1/6) + (2 \\times 1/6) + (3 \\times 1/6) + (4 \\times 1/6) + (5 \\times 1/6) + (6 \\times 1/6) = 3.5$\n上記の計算式より、サイコロの目の期待値は「3.5」になります。','学習のポイント　分析ツールを使った計算問題は的を絞れない\n過去問を分析すると、本項で解説した６つの分析ツールのすべてがまんべんなく出題されていることがわかります。 そのため、本項の内容に関しては、どれか１つに的を絞るのではなく、できる限り、すべての計算問題に対応できるようになってください。 ６つの分析ツールとは、「パレート図とABC分析」「散布図と回帰分析」「特性要因図」「線形計画法」「重み付け総合評価法」「期待値」の６つです。','/home/air/goalskill_t/back/img/section20/20.png',NULL),(26,'04','損益分岐点','５つの会計用語','会社で働くようになると、「売上」や「利益」といった会計に関する用語をよく耳にするようになります。 基本情報技術者試験でもこれらの用語が問題文や選択肢の中で頻繁に登場します。 そのため、まずは以下の基本的な５つの用語をきちんと理解しておいてください。\n\nなお、上記の各用語の関係を数式で表すと、以下のようになります。利益 ＝ 売上 － 変動費 － 固定費理論説明：また、変動費率は以下の数式で求められます。$$\\text{変動費率} = \\frac{\\text{変動費}}{\\text{売上}}$$',NULL,'/home/air/goalskill_t/back/img/section20/21.png',NULL),(27,'04','損益分岐点','損益分岐点とは','会社にとっては、売上よりも利益のほうが重要です。 なぜなら、売上が１兆円あったとしても、費用がそれを上回れば、利益はマイナスとなり、赤字になってしまうからです。 そこで重要になるのが「損益分岐点」です。\n損益分岐点とは、**売上の額と費用の額が等しくなる売上高（販売個数）**です。 グラフで考えると「売上の線と費用の線が交わる点」といえます。',NULL,'/home/air/goalskill_t/back/img/section20/22.png',NULL),(28,'04','損益分岐点','損益分岐点の計算方法','ここでは、あるケーキ屋さんを例に、損益分岐点の計算方法を解説します。 １つずつ丁寧に解説していくので、「計算は苦手……」という人も、安心して読み進めてください。\nこのケーキ屋さんでは、ケーキが売れるごとに損失は小さくなり、ある点（販売個数）を境目にして、利益がプラスに転じます。 この点が損益分岐点です。 このため、別のいい方をすると「損益分岐点とは、利益が０円になる売上高（販売個数）」ということもできます。\nケーキ屋さんの前提条件は、次のとおりです。\n\nケーキの値段（１個当たり）：300円\n\n変動費（１個当たり）：100円\n\n固定費（ひと月当たり）：50万円',NULL,NULL,NULL),(29,'04','損益分岐点','売上の直線を求める','最初に「売上の直線」を表す方程式を求めます。 直線の方程式は、$y = ax + b$ で表されます ($a$ は傾き、$b$ は切片です)。 売上の直線の傾きはケーキの値段 (300円／個) です。 なぜなら、ケーキが１個売れるごとに300円の売上になるからです。また、切片は０円です。 なぜなら、ケーキの販売個数が０個のときは売上も０円だからです。 この傾きと切片を上記の方程式に当てはめると「売上の直線」は次の式になります。$y = 300x + 0$',NULL,'/home/air/goalskill_t/back/img/section20/23.png',NULL),(30,'04','損益分岐点','費用の直線','続いて「費用の直線」の式を考えます。 費用の直線の傾きは変動費 (100円／個) です。 なぜなら、ケーキを１個売るごとに100円の変動費がかかるからです。また、切片は固定費 (50万円) です。 なぜなら、ケーキの販売個数が０個であっても固定費は必要だからです。 この傾きと切片を上記の方程式に当てはめると「費用の直線」は次の式になります。$y = 100x + 500,000$',NULL,'/home/air/goalskill_t/back/img/section20/24.png',NULL),(31,'04','損益分岐点','連立方程式の解き方','最後に、これまでに求めた２つの式を連立方程式にして $x$ (販売個数) と $y$ (金額) を求めれば、損益分岐点を求めることができます。(1) $y = 300x$(2) $y = 100x + 500,000$よって、(3) $300x = 100x + 500,000$　　$200x = 500,000$　　$x = 2,500$これより、(4) $y = 300 \\times 2,500$　　$y = 750,000$\n上記の計算式より、このケーキ屋さんの損益分岐点は、販売個数が2,500個、売上高が750,000円であると判断できます。','試験にはコレが出る！\n・利益 ＝ 売上 － 変動費 － 固定費\n・変動費率 ＝ 変動費 $\\div$ 売上\n・損益分岐点とは、売上の額と費用の額が等しくなる売上高','/home/air/goalskill_t/back/img/section20/25.png',NULL),(32,'05','財務諸表と６つの利益','財務諸表と３つの書類','財務諸表とは、ステークホルダ（利害関係者：p.505）に対して、経営成績を報告するための書類です。 財務諸表を見れば、その会社の状態や、その会社が行っている経営活動の内容などを知ることができます。 つまり、「財務諸表を見れば、会社の健康状態がわかる」といえます。\nなお、「財務諸表」という名前の書類があるわけではありません。 財務諸表とは、次の３つの書類の総称です。\n\n・貸借対照表（会社の全財産が記載された表）\n\n・損益計算書（会社の利益が記載された書類）\n\n・キャッシュフロー計算書（会社の現金の出し入れが記録された書類）・','もう少し詳しく！ 財務諸表は全部で４つ\n日本の会計基準では、財務諸表には上記の３つの書類に加え、「株主資本等変動計算書」も含みますが、この書類は試験には出題されないので説明を割愛します。',NULL,NULL),(33,'05','財務諸表と６つの利益','貸借対照表とは','貸借対照表とは、簡単にいうと「ある時点の会社の全財産が記載された表」です。 貸借対照表を見ると、ある時点での会社の資産、負債、純資産がわかります。\n\n上図を見るとわかるように、貸借対照表では、左側の「資産」の金額と、右側の「負債」と「純資産」の合計金額が必ず同額になります。 このように、左右の値が釣り合う（バランスする）ことから、貸借対照表は英語では「バランスシート (Balance Sheet : B/S)」といいます。\n貸借対照表の左側の資産の部を「総資産」といいます。 また、右上の負債の部を「他人資本」といい、右下の純資産の部を「自己資本」といいます。',NULL,'/home/air/goalskill_t/back/img/section20/27.png',NULL),(34,'05','財務諸表と６つの利益','基本情報技術者試験では「資本金」の位置が問われる','基本情報技術者試験では「資本金が貸借対照表のどこに記載されるか」が出題されます。 資本金は、株主が会社に出資した金額です。純資産の部に分類されます。 なぜ資本金の位置が問われるのかというと、資本金（純資産）は「返済する必要のないお金」（自己資本）であり、企業の体力の目安となる重要な項目だからです。','試験にはコレが出る！\n\n・貸借対照表は、ある時点の企業の資産、負債および純資産が記載された表\n\n・資本金は、純資産の部に分類される',NULL,NULL),(35,'05','財務諸表と６つの利益','損益計算書とは','財務諸表の１つである損益計算書とは、会社の利益が書かれた書類です。 損益計算書の目的は「会社がどんな方法でお金を稼いだかを明らかにすること」です。 つまり、損益計算書を見ると、今年の利益が、本業で稼いだものなのか、副業で稼いだものなのか、などを確認できます。\n株主は大切なお金を会社に預けているので、経営者の実績や手腕をチェックする必要があります。 会社が本業で儲かっているならば、その経営者は有能だといえますが、自社ビルを売却して一時的に現金を手に入れただけでは、その経営者が有能だとはいえません。 重要なのは、「今現在、利益が出ているか否か」ではなく、「その利益がどのようにして生み出されたのか」なのです。',NULL,'/home/air/goalskill_t/back/img/section20/28.png',NULL),(36,'05','財務諸表と６つの利益','損益計算書の各項目','損益計算書は、前項で解説した「損益分岐点の計算問題」と同様に、基本情報技術者試験で最も頻繁に出題される用語の１つです。 このため、ここをきちんと押さえておくことで、確実に得点につなげることができます。\nただし、難易度が他の項目と比べてやや高めであることが難点です。 上図を見るとわかるとおり、損益計算書には13もの用語があります。 会計や経理に慣れていない人にとって、これらの用語を全部覚えるのは大変です。\nそこで、これまでの出題傾向や用語の重要度を考慮し、まずは「利益に関する項目」から覚えることをお勧めします。 一度にすべてを覚えようとするのではなく、出題頻度の高いものから順番に覚えていってください。','もう少し詳しく！ 損益計算書の５つの費用\np.694で、費用は「変動費」と「固定費」の２つに大別されると説明しましたが、損益計算書では費用を「売上原価」「販管費」「営業外費用」「特別損失」「法人税等」の５つに分けて記載します。これは、会社の成績を正確に分析するためには費用を５つに分類する必要があるからです。','/home/air/goalskill_t/back/img/section20/30.png',NULL),(37,'05','財務諸表と６つの利益','キャッシュフロー計算書','財務諸表の１つであるキャッシュフロー計算書とは、会社の一定期間の現金収支を明らかにした書類です。 キャッシュとは「現金」、フローは「流入、流出」という意味です。 キャッシュフロー計算書を見ると、損益計算書からは判断できない会社のリスクを見つけることができます。',NULL,NULL,NULL),(38,'05','財務諸表と６つの利益','黒字なのに倒産！？','世の中には、損益計算書では利益が出ているのに倒産してしまう会社があります。 これを「黒字倒産」といいます。\nなぜそのようなことが起こるのかというと、多くの会社は、企業活動において発生する金銭のやり取りをその場その場では行わず、後日（翌月末など）に授受する方式で運営しているからです（このような未回収の代金のことを「売掛金」といいます）。 つまり、商品は売れているので、損益計算書上は利益として計上されているのですが、実際にその代金を回収するまでの間に借金の返済が行えず、資金が不足してしまい、会社が倒産することがあるのです（黒字倒産）。',NULL,NULL,NULL),(39,'05','財務諸表と６つの利益','黒字倒産のリスクはキャッシュフロー計算書で見つける','黒字倒産のリスクは、損益計算書では発見できません。 なぜなら、実際に売上があれば、たとえそれが未回収（売掛金）であったとしても、損益計算書では利益として記載されるからです。\nそこで登場するのが「キャッシュフロー計算書」です。 キャッシュフロー計算書には、利益ではなく、「会社に現金がどのくらい残っているのか」を記載するので、黒字倒産のリスクを見つけられます。\n\nキャッシュフロー計算書では、現金の出入りを次の３つに分類して計算します。',NULL,'/home/air/goalskill_t/back/img/section20/32.png',NULL),(40,'05','財務諸表と６つの利益','キャッシュフロー計算書の読み方','キャッシュフロー計算書の使い方の一例としては、借入金（会社の借金）が増えた分から、株主への配当金の支払額を引いて、残る現金を計算することなどがあります。 借入金とは、銀行などから借り入れた金額です。 お金を借りると、会社には現金が入るのでプラスになります。 また、配当金は株主に還元するお金です。 お金を株主に渡すため（会社から現金が流出するため）、マイナスになります。 キャッシュフロー計算書を見れば、こういったお金の流れを確認できます。','試験にはコレが出る！\n\n・キャッシュフロー計算書では、現金の出入りを「営業活動」「投資活動」「財務活動」の３つに分類して計算する\n\n・営業活動によるキャッシュフローには、商品の販売による収入や、仕入れによる支出などがある',NULL,NULL),(41,'06','資産管理','流動資産と固定資産','資産は大きく、流動資産と固定資産の２つに分類できます。\n流動資産とは、１年以内に現金化する資産です。流動資産の例としては、現金、売掛金、商品などがあります。\n一方、固定資産とは、１年を超えて利用する資産です。固定資産の例としては、建物、土地、車両などがあります。',NULL,NULL,NULL),(42,'06','資産管理','棚卸資産','流動資産のうち、商品、製品、原材料、仕掛品などを、まとめて棚卸資産といいます。 棚卸資産とは、簡単にいうと在庫のことです。\n在庫を仕入れることを受入といい、在庫を売ることを払出といいます。また、在庫の数を数えることを、棚卸しといいます。',NULL,'/home/air/goalskill_t/back/img/section20/33.png',NULL),(43,'06','資産管理','棚卸しを行う理由','棚卸しは、定期的（月末や期末など）に行います。なぜ棚卸しを定期的に行うかというと、在庫の評価額を知るためです。\n損益計算書で売上総利益を算出するには、売上高と売上原価を計算する必要があります (p.701)。このうち、売上原価を計算するには「在庫の評価額」を知る必要があるのです。',NULL,'/home/air/goalskill_t/back/img/section20/34.png','在庫の評価方法には、先入先出法、個別法、総平均法など、さまざまな計算方法がありますが、基本情報技術者試験では「先入先出法」が出題されます。'),(44,'06','資産管理','先入先出法','先入先出法とは、先に仕入れた商品から、先に売る方法です。つまり、古い商品から売る方法です。 基本情報技術者試験では以下のように出題されます。\n\n払出単価を計算するために、受入と払出を計算しましょう。先入先出法では、先に仕入れた商品から売っていくので、まずは前月繰越分の商品2,000個を売ります。その後、払出の残りの1,000個は4月5日に仕入れた商品から売ったことにします。つまり、4月10日の払出金額は以下のようにして求めることができます。$$(2,000\\text{個} \\times 100\\text{円}) + (1,000\\text{個} \\times 130\\text{円}) = 330,000\\text{円} \\text{ (払出金額)}$$また、払出単価（商品１つあたりの払出金額）は以下のようにして求められます。$$330,000\\text{円} \\div 3,000\\text{個} = 110\\text{円}$$よって、選択肢イが正解となります。\n\n以上が、基本情報技術者試験に出題される「先入先出法の計算方法」です。',NULL,'/home/air/goalskill_t/back/img/section20/36.png',NULL),(45,'06','資産管理','減価償却','減価償却とは、固定資産を買った時点で全額を費用として計上するのではなく、その資産が使える期間で分割して費用を計上する方法です。分割した費用のことを「減価償却費」と呼びます。\n減価償却の対象となる資産は、パソコンや建物などのうち、10万円以上の固定資産です。これらの資産は時間が経つにつれて価値が減っていきます。反対に減価償却しない固定資産に「土地」があります。土地は時間が経っても価値が減らないからです。土地は減価償却しません。',NULL,NULL,NULL),(46,'06','資産管理','定額法と定率法','減価償却の計算方法には、定額法と定率法の２種類があります。なお、基本情報技術者試験では定額法がよく出題されるので、本書では定額法だけを説明します。',NULL,'/home/air/goalskill_t/back/img/section20/37.png',NULL),(47,'06','資産管理','定額法とは','定額法とは、毎年同じ額を減価償却する方法です。\n\n定額法では、減価償却費は以下の式で求めます。$$\\text{減価償却費} = \\frac{\\text{取得価額} - \\text{残存価額}}{\\text{耐用年数}}$$\n\n例えば、取得価額を100万円、残存価額20万円、耐用年数4年とすると、毎年の減価償却費は20万円になります。$$\\text{減価償却費} = \\frac{(100\\text{万円} - 20\\text{万円})}{4\\text{年}} = 20\\text{万円}/\\text{年}$$',NULL,'/home/air/goalskill_t/back/img/section20/39.png',NULL),(48,'06','資産管理','償却率','償却率とは、定額法において、取得価額に対する毎年の減価償却費の割合です。 基本情報技術者試験では、償却率を使って減価償却費を求める問題が出題されることもあります。$$\\text{減価償却費} = \\text{取得価額} \\times \\text{償却率}$$理論説明：例えば、取得価額を100万円、償却率0.25とすると、毎年の減価償却費は25万円になります。$$\\text{減価償却費} = 100\\text{万円} \\times 0.25 = 25\\text{万円}/\\text{年}$$','試験にはコレが出る！\n\n・先入先出法とは、先に仕入れた商品から、先に売る方法\n\n・減価償却費 ＝ (取得価額 － 残存価額) ÷ 耐用年数\n\n・減価償却費 ＝ 取得価額 × 償却率',NULL,NULL);

--
-- Table structure for table `section_21`
--

CREATE TABLE `section_21` (
  `id` int NOT NULL AUTO_INCREMENT,
  `chapter` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci,
  `main_title` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci,
  `sub_title` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci,
  `theory_description` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci,
  `tip` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci,
  `img` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci,
  `img_description` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=16 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

--
-- Dumping data for table `section_21`
--

INSERT INTO `section_21` VALUES (1,'01','3つの知的財産権','知的財産権','知的財産とは、**人の知恵から生み出された発明やデザインといった「形のない財産」**です。 このような形がなく、目に見えない知的財産を、形のあるものと同様に所有できる権利が「知的財産権」です。 知的財産権は経営資源(p.670)の１つである「情報（チエ）」に含まれる要素です。\n知的財産権は大きく「著作権」「産業財産権」「その他の権利」の３つに分類されます。',NULL,'/home/air/goalskill_t/back/img/section21/1.png',NULL),(2,'01','3つの知的財産権','著作権','著作権とは、創作物に対する権利です。 例えば、本や絵、音楽など、文化、芸術に対する権利です。 著作権を得るために何らかの申請を行う必要はありません。 著作権は著作物を創作した時点で自動的に発生します。 あなたが今、ノートに絵を描けば、その絵には著作権が発生し、その権利者はあなたになります。\n著作権の侵害は、悪意によって行われるものよりも、「知らず知らずのうちに侵害していた」というケースのほうが圧倒的に多いです。 これは怖いことです。 そのため、情報社会を生きる私たちは、一般教養として、著作権の基本を学んでおくことが必要です。 このため、基本情報技術者試験でも著作権が重要視されているのです。','試験にはコレが出る！\n著作権は、著作物を創作した時点で自動的に発生する（役所などへの申請は不要）',NULL,NULL),(3,'01','3つの知的財産権','著作権法によって保護されているもの','以下は著作権法によって保護されているものの例です。\n\n・本\n\n・音楽\n\n・写真・映像\n\n・取扱説明書\n\n・プログラム\n\n・美術作品（絵画・彫刻・建築物など）\n\n上記のうち、試験でよく出題されるのは「プログラム」です。 本や音楽、映画、美術作品に著作権があることはすでに多くの人が知っています。 一方、コンピュータの「プログラム」に著作権があることはあまり知られていません。 情報処理推進機構（基本情報技術者試験の実施団体）としては、プログラムにも著作権があることを広めたいと思っているため、試験では、本や音楽よりも、プログラムのことが出題される傾向にあります。\nなお、p.239で学んだように、一口に「プログラム」といっても、**ソースプログラム（ソースコード）やオブジェクトプログラム（オブジェクトコード）**など、さまざまな種類がありますが、どのようなものであっても、プログラムはすべて著作権法で保護されます。',NULL,NULL,NULL),(4,'01','3つの知的財産権','著作権法によって保護されないもの','一方で、次の３つは著作権法では保護されていません。\n\n・プログラム言語：コンピュータに命令を出すための言葉\n\n・アルゴリズム（解法）：問題を解決するときの手順\n\n・プロトコル（規約）：プログラム言語を使うときの特別な約束\n\nこれら３つを保護しない理由は、これらがプログラムを作る際に必要なものだからです。 これらを保護してしまうと誰もプログラムを作れなくなってしまいます。 基本情報技術者試験では、「プログラムは保護され、プログラム言語やアルゴリズム、プロトコルは保護されない」という点が出題されます。','学習のポイント　プロトコルは「規約」\n基本情報技術者試験では、「プロトコル」のことを「規約」と表記することもあるので注意してください。 「プロトコルは規約のこと」だと読み替えられるようにしておきましょう。',NULL,NULL),(5,'02','産業財産権とその他の権利','産業財産権','産業財産権とは、産業分野の財産に対する権利です。 「産業」というと少し堅い印象がありますが、要は主に（個人ではなく）会社が開発した発明やブランドに対する権利です。 産業財産権は、さらに次の４つの権利に分類されます。','試験にはコレが出る！\n\n・産業財産権の種類は、特許権、実用新案権、意匠権、商標権の４つ\n\n・特許権は、自然法則を利用した技術的思想の創作のうち高度なものに与えられる権利\n\n・商標権は、自社の商品と他社の商品とを区別するためのマークを保護する権利','/home/air/goalskill_t/back/img/section21/2.png',NULL),(6,'02','産業財産権とその他の権利','その他の権利','知的財産権には、上記で解説した著作権や産業財産権の他に、その他の権利として「営業秘密」も含まれます。 営業秘密とは次の３つの条件を満たす情報です。\n\nこの営業秘密を守る法律が不正競争防止法です。 この法律は、ライバル会社同士で不正な競争が行われないようにするための法律であり、営業秘密を保護する法律です。 不正競争とは「他社商品の不正コピー」や「他社を中傷する行為」などです。\n基本情報技術者試験では、営業秘密の条件の１つが「非公知性」であることが問われます。','試験にはコレが出る！\n\n・営業秘密の条件は秘密管理性、有用性、非公知性の３つ\n\n・基本情報技術者試験では特に「非公知性」が問われる','/home/air/goalskill_t/back/img/section21/3.png',NULL),(7,'03','セキュリティ関連法規','サイバーセキュリティ基本法','サイバーセキュリティ基本法は、サイバー攻撃から国全体を守るための基本理念を定めた法律です。「サイバー」とは「インターネット上の」という意味です。つまり、インターネット上の安全に関する基本的な法律といえます。\nサイバーセキュリティ基本法は基本情報技術者試験で頻出の用語です。この法律に関して、必ず押さえなければならないポイントは「この法律の対象者が国全体である」という点です。国、地方公共団体、企業、国民のすべてが対象になります。国民だけではないということに注意してください。','試験にはコレが出る！\nサイバーセキュリティ基本法は、すべての組織と全国民が守らなければいけない法律','/home/air/goalskill_t/back/img/section21/4.png',NULL),(8,'03','セキュリティ関連法規','刑法','刑法とは、犯罪人を罰する法律です。刑法はコンピュータのない時代からありますが、コンピュータの進展とともに改正され、コンピュータ犯罪に関しても罰することができるようになりました。\nコンピュータ犯罪に関する刑法の条文にはさまざまなものがありますが、試験対策として覚えておくべき用語は次の２つだけです。この２つがとにかく重要です。','試験にはコレが出る！\n刑法には、コンピュータウイルスを作成する行為を処罰の対象とする法律も含まれる','/home/air/goalskill_t/back/img/section21/5.png','上記の２つの罪を簡単にいうと「他人のコンピュータのデータを壊したり、コンピュータウイルスを使ったりすると刑法によって罰せられる」ということです。'),(9,'03','セキュリティ関連法規','不正アクセス禁止法','不正アクセス禁止法とは、その名のとおり、不正なアクセスを禁止する法律です。では、そもそも「不正アクセス」とは何でしょうか。\nまず、アクセスとは「コンピュータに接続すること」です。多くの人は日々の業務の中で、コンピュータに接続してさまざまなデータを取り扱っていると思います。みなさん自身のIDとパスワードを使ってサーバにログインすることがアクセスの代表例です。\nこのアクセスのうち、法律違反となるアクセスのことを「不正アクセス」といい、その行為を取り締まる法律が不正アクセス禁止法です。\nなお、不正アクセス禁止法の対象は「ネットワークを通じたアクセス」のみです。直接、他人のコンピュータの前まで歩いていって、そのコンピュータにログインすることは、ネットワークを通じたアクセスではないので、不正アクセス禁止法の対象にはなりません。この点はとても重要なので、しっかりと覚えておいてください。',NULL,NULL,NULL),(10,'03','セキュリティ関連法規','不正アクセス禁止法の対象となる４つの行為','不正アクセス禁止法では、次の４つの行為を処罰の対象事項として定義しています。','試験にはコレが出る！\nなりすましによるアクセスとは、他人のIDとパスワードを使って不正にアクセスすること','/home/air/goalskill_t/back/img/section21/6.png',NULL),(11,'03','セキュリティ関連法規','個人情報保護法','個人情報保護法とは、氏名、住所、電話番号など、個人を特定できる情報を、正しく取り扱うための法律です。テクノロジの発達によって膨大な量の個人情報がコンピュータに保存されるようになったため、それらが流出したときの被害も大きくなりました。そのため、個人情報を守るための法律である個人情報保護法が作られました。ただし、個人に関する情報がすべて個人情報保護法で守られているわけではありません。\nなお、個人情報保護法で守られている個人情報のうち、基本情報技術者試験で出題されるのは、主に次の３点です。\n\n・氏名と住所\n\n・社員名と役職\n\n・個人が識別できる映像や音声\n\n「個人が識別できる映像や音声」については意外に思う人もいるかもしれませんが、個人情報には身体的特徴なども含まれます。顔がはっきり映った防犯カメラの映像があれば個人を特定できるので、この映像も個人情報になります。\n個人情報保護法に関する問題は「氏名」と「身体的特徴」の２つのキーワードを覚えておいてください。この２つに当てはまる情報は個人情報になります。','試験にはコレが出る！\n個人情報保護法で守られている個人情報は主に次の３点\n\n・氏名と住所\n\n・社員名と役職\n\n・個人が識別できる身体的特徴（映像や音声）',NULL,NULL),(12,'03','セキュリティ関連法規','オプトインとオプトアウト','情報を取り扱う際には、本人の同意を得ることが重要です。その同意を得るための方法として代表的なものに「オプトイン」と「オプトアウト」があります。ここにある「オプト (opt)」とは英語で「選ぶ」という意味の動詞です。\nオプトイン (Opt-in) とは「自ら選んで中に入る」という意味です。オプトインでは「利用しない（できない）状態」が初期設定であり、ユーザーが自分の意思で許可した場合のみ「利用できる状態」になります。\nオプトインの具体例の１つに「個人情報の取り扱い」が挙げられます。個人情報は通常「使われない状態」が初期設定であり、ユーザーが許可した場合のみ情報の利用が開始されます。また、広告メールもオプトインの例です。会員登録時などに「広告メールを受け取る」にチェックを入れた人（オプトインした人）だけが、メールを受け取るようになります。\n\n一方、オプトアウト (Opt-out) とは、「自ら選んで外に出る」という意味です。オプトアウトでは「利用する（できる）状態」が初期設定であり、ユーザーが自分の意思で拒否した場合のみ「利用できない状態」になります。\nオプトアウトの具体例の１つに「生成AIサービス」が挙げられます。多くの生成AIサービス（例：ChatGPTなど）では、入力内容がAIの学習に使われるのですが、みなさんの入力内容をAIの学習に使われたくない場合は、設定画面などで「学習に利用しない」（拒否）に設定する必要があります。','試験にはコレが出る！\n\n・オプトインとは、情報の利用を許可すること\n\n・オプトアウトとは、情報の利用を拒否すること','/home/air/goalskill_t/back/img/section21/7.png',NULL),(13,'04','労働関連法規と取引関連法規','３つの契約','経営資源の１つである「ヒト」を、企業が活用する際の契約には、次の３種類があります。',NULL,'/home/air/goalskill_t/back/img/section21/11.png','請負契約と労働者派遣契約の違いは、指示者と雇用主です。 請負契約では、労働者と発注者との間に直接的なやり取りは一切ありません。'),(14,'04','労働関連法規と取引関連法規','請負契約の特徴','労働者派遣契約と請負契約には、次の点で大きな違いがあります。\n\n・労働者派遣契約では、派遣先の会社が労働者に指示を出せる\n\n・請負契約では、発注者の会社は労働者に指示を出せない\n\nこのことに起因して、請負契約には次の２つの特徴があります。',NULL,'/home/air/goalskill_t/back/img/section21/12.png',NULL),(15,'04','労働関連法規と取引関連法規','著作権の帰属先','前述のように、現在の日本ではさまざまな労働契約のもとで事業が行われています。 そして契約形態によって著作権の帰属先（著作権の権利者）が変わるため注意が必要です。 以下に、各労働契約において、著作権がどこに生じるのかをまとめたので、確認してください。','試験にはコレが出る！\n\n・労働者派遣契約では、派遣先の企業が労働者に指示を出せる\n\n・請負契約では、発注者は請負会社の社員（労働者）に指示を出せない\n\n・雇用契約で作成されたプログラムの著作権は雇用主に帰属する\n\n・労働者派遣契約で作成されたプログラムの著作権は派遣先に帰属する\n\n・請負契約で作成されたプログラムの著作権は請負会社に帰属する','/home/air/goalskill_t/back/img/section21/13.png',NULL);

--
-- Table structure for table `section_22`
--

CREATE TABLE `section_22` (
  `id` int NOT NULL AUTO_INCREMENT,
  `chapter` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci,
  `main_title` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci,
  `sub_title` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci,
  `theory_description` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci,
  `tip` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci,
  `img` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci,
  `img_description` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=10 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

--
-- Dumping data for table `section_22`
--

INSERT INTO `section_22` VALUES (1,'01','[科目B] の特徴','科目Bの概要','科目Bの概要については、本書の序章でも簡単に触れましたが、ここで改めて説明します。基本情報技術者試験の科目Bの概要は以下のとおりです。',NULL,'/home/air/goalskill_t/back/img/section22/2.png','上記の内容を見ると、(1)〜(4)は「アルゴリズムとプログラミング」に関する内容であり、(5)は「情報セキュリティ」に関することであることがわかります。つまり、科目Bでは、大きくは次の2つのことについて出題されます。 ・アルゴリズムとプログラミング（16問／20問中） ・情報セキュリティ（4問／20問中） まずは上記の全体像を把握しておいてください。そのうえで、それぞれについて試験対策していくことが重要です。本書では次項以降で「アルゴリズムとプログラミング」(p.738)と「情報セキュリティ」(p.742)について個別に、もう少し詳しく解説していきます。'),(2,'02','[科目B] 試験対策① アルゴリズムとプログラミング','「アルゴリズムとプログラミング」対策のポイント','アルゴリズムとプログラミングに関する知識や技能は、一朝一夕では習得できません。そのため、基本情報技術者試験の受験を決めたら、アルゴリズムやプログラミングの学習もスタートさせる必要があります。 とはいえ、こんなアドバイスでは何も得るものがないと思いますので、より具体的に「やるべきこと」を、ポイントを絞って解説します。',NULL,NULL,NULL),(3,'02','[科目B] 試験対策① アルゴリズムとプログラミング','ポイント1 特定のプログラム言語を習得する必要はない','科目Bに出題されるプログラム言語は「擬似言語」です。擬似言語とは、その言葉の通り「擬似的なプログラム言語」です。要は「人間が理解しやすい書き方で表現された架空のプログラム言語」といえます。 世の中に実在するプログラム言語には「Java」「C言語」「Python」など、さまざまな種類があります。そして、それぞれに特有の文法（書き方）が存在し、また機能的な特徴も異なります。つまり、JavaとPythonでは、プログラムの書き方が異なります。しかし、基本情報技術者試験では上記のような特定のプログラム言語の文法は出題されません。その代わりに、より抽象度の高い（特定の言語に依存しない）擬似言語が出題されます。まずはこの点をしっかりと覚えておいてください。 そのうえで、もう1つ特徴があります。それは、基本情報技術者試験では擬似言語の文法（書き方）は、すべて問題文に記載してある、という点です。そのため、みなさんは擬似言語の文法を覚える必要はありません。','試験にはこれが出る！ \n・科目Bでは、擬似言語が出題される \n・擬似言語の文法は問題文に記載されるので、事前に覚える必要はない',NULL,NULL),(4,'02','[科目B] 試験対策① アルゴリズムとプログラミング','ポイント2 プログラム言語の基本を身につける','上記のように、科目Bに出題される擬似言語の文法はすべて問題文に記載されます（次ページの図を参照）。では、科目Bでは何が問われるのかというと、以下のような「プログラム処理に関する基本的なこと」が問われます。\n ・「変数」「型」「配列」「比較演算」といった、プログラムの基本要素の意味と役割 \n・「繰り返し処理」「関数」といった、処理の流れや変数の値の変化 \n・「再帰」「スタック」「キュー」といった、データ構造やアルゴリズムの基本 上記のような基礎知識を前提とした具体的なプログラムが出題されて、「そのプログラムで何が行われているか」が出題されます。このため、科目Bの擬似言語の試験対策としては、市販のプログラミング入門書や学習動画などを用いて、「プログラム言語の基礎知識」を習得することが近道です。 なお、科目Bの擬似言語は「Java」「Python」に似ているので、教材を選ぶ際はどちらかの入門書にすることを聞くお勧めします。 また、教材を用いて学習する際は、基本情報技術者試験のシラバス（p.737）に載っている技術用語や、擬似言語の記述形式（p.740）を見ながら、記載内容が理解できることを確認してください。そうすることで、必要な知識を効率よく得ることができます。','もう少し詳しく！なぜ擬似言語なのか\n「世の中にはたくさんのプログラム言語があるのだから、基本情報技術者試験でも実在するプログラム言語を用いて出題すればいいのに」と感じた人も多いと思います。基本情報技術者試験で擬似言語が採用されているのには2つの理由があります。1つは「学ぶべきプログラム言語は、人それぞれ異なるから」、もう1つは「基本情報技術者試験では、各言語の特徴よりも、プログラム言語全般に共通の原理原則を重視しているから」です。基本情報技術者試験では「プログラム言語の原理原則が問われているのだな」ということをぜひ覚えておいてください。','/home/air/goalskill_t/back/img/section22/3.png',NULL),(5,'02','[科目B] 試験対策① アルゴリズムとプログラミング','ポイント3 一刻も早く過去問題を解く','基本情報技術者試験の実施団体であるIPA（独立行政法人 情報処理推進機構）は、公式サイト上に科目Bの過去問題を掲載しています。受験者がこの過去問題を見ないわけにはいきません。一刻も早く過去問題を見て、科目Bの出題形式やレベル感を確認してください。そうすれば、今後の学習計画も立てやすくなります。\n\n小タイトル：基本情報技術者試験 科目Bの過去問題\n\n理論説明：URL https://www.ipa.go.jp/shiken/mondai-kaiotu/sg_fe/koukai/index.html\n\n小タイトル：基本情報技術者試験 科目Bの過去問題演習アプリ\n\n理論説明：URL https://kihonjoho.jp/app また、本章の章末にもいくつかの過去問題の解答・解説を載せているので、試験までに必ず一度は目を通しておいてください。','試験にはこれが出る！ \n一刻も早く過去問題を見て、出題形式とレベル感を確認する',NULL,NULL),(6,'03','[科目B] 試験対策② 情報セキュリティ','ポイント1 本書の「テクノロジ分野」をよく読む','科目Bの「情報セキュリティ」で問われる内容は、科目Aの「テクノロジ分野」（特に本書の第3章〜第13章）の内容とかなり重複しています。そのため、該当ページの内容をよく読み、各章末に掲載している過去問題を丁寧に解いてください。「情報セキュリティのもっとも効率的な学習方法は、科目Aの過去問題をたくさん解くこと」といっても過言ではありません。',NULL,NULL,NULL),(7,'03','[科目B] 試験対策② 情報セキュリティ','学習時の注意点','「情報セキュリティ」の学習時に注意してほしいことが1つあります。それは、第11章の「情報セキュリティ」だけでなく、第3章〜第13章をまんべんなく学習することが重要という点です。 基本情報技術者試験のテクノロジ分野には「情報セキュリティ」（第11章）という項目があるため、「科目Bの情報セキュリティの対策としては、第11章だけを読んでおけば十分だろう」と感じる人も多いのですが、第11章だけでは不十分です。科目Bでは、ネットワークやクラウド、データベース関連の用語も登場します。この点はぜひ覚えておいてください。','試験にはこれが出る！ \n「情報セキュリティ」の試験対策として、科目Aのテクノロジ分野（特に本書の第3章〜第13章）の内容を重点的に学習する',NULL,NULL),(8,'03','[科目B] 試験対策② 情報セキュリティ','ポイント2 一刻も早く過去問題を解く','前項で解説した「アルゴリズムとプログラミング」と同様に、「情報セキュリティ」についても過去問題が公開されています（p.741）。こちらの分野についても、一刻も早く過去問題を見て、出題形式やレベル感を確認しておいてください。そうすれば、今後の学習計画も立てやすくなります。 また、本章の章末にも過去問題の解答・解説を載せているので、試験までに必ず一度は解いて、内容を理解しておいてください（p.750）。','試験にはこれが出る！\n 一刻も早く過去問題を見て、出題形式とレベル感を確認する',NULL,NULL),(9,'03','[科目B] 試験対策② 情報セキュリティ','ポイント3 長文に慣れる','「情報セキュリティ」の問題文は、基本情報技術者試験の他の問題と比べて長文です。1問につき、約1000文字〜2000文字の問題文が掲載されることもあります。この文章量に嫌気が差して学習意欲が低下する人もいるほどです。 しかし、この長文を理由に試験対策をおろそかにするのはもったいないです。なぜなら、長文の大半は重要ではないからです。問題を解くために必要な情報は「たった数行」であることが多いです。また、問題内容もあまり難しくありません。 長文に慣れるという意味では、IPAが公開している基本情報技術者試験の過去の「午後問題」の中から、情報セキュリティ分野の問題を選んで学習することも役に立つでしょう。','試験にはこれが出る！ \n過去（令和元年以前）の午後問題のうち、情報セキュリティ分野の問題を解く','/home/air/goalskill_t/back/img/section22/4.png',NULL);

--
-- Table structure for table `section_3`
--

CREATE TABLE `section_3` (
  `id` int NOT NULL AUTO_INCREMENT,
  `chapter` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci,
  `main_title` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci,
  `sub_title` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci,
  `theory_description` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci,
  `tip` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci,
  `img` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci,
  `img_description` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=61 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

--
-- Dumping data for table `section_3`
--

INSERT INTO `section_3` VALUES (1,'01','データ構造','●データ構造の種類','データ構造には、以下の5種類があります。基本情報技術者試験では「データ構造の種類」と「それぞれの特徴」が問われます。ここでしっかりと押さえておいてください。\n\n（1）スタック（2）キュー　（3）配列　（4）連結リスト　（5）木構造','基本情報技術者試験では、「スタック」が最頻出です。',NULL,NULL),(2,'01','データ構造','●(1)スタック','スタックとは、データを1列に並べて、最後に格納したデータを最初に取り出すデータ構造です。イメージとしては「積み上げられた本」です。 1冊の本がデータです。本を積み上げるときは上へ上へと重ねます。反対に、積み上げられた本の山の中から1冊を手に取る場合は、最上部にある本から順番に取ります。途中にある本を取り出すことはできません。 スタックというデータ構造を利用して、「行った処理」の過程を保存しておけば、コンピュータはいつでも元の処理に戻ることができます。なぜなら、保存されている処理履歴を1つずつ戻っていけば、元の処理にたどりつくからです。これがスタックというデータ構造の最大の特徴です。 「ヘンゼルとグレーテル」という童話の中で、ヘンゼルがパンくずを落としながら森の中を歩くシーンがあります。パンくずを目印にすれば、いつでも元の場所に戻ることができます。これと同じです。',NULL,NULL,NULL),(3,'01','データ構造','●●スタックへのデータの出し入れ','スタックにデータを格納することをpush（プッシュ）といいます。例えば「C」というデータをスタックに格納する場合は「push C」と記述します。 反対に、スタックからデータを取り出すことをpop（ポップ）といいます。データを入れたスタックから取り出す場合は「pop」とだけ記述します。スタックでは、最上部に格納されているデータ（最後に格納したデータ）しか取り出せないので、pushのようにデータ名を指定する必要はありません（「pop C」とは記述しません）。 なお、スタックのような、後に入れたデータを先に出すアルゴリズムのことを後入れ先出し（LIFO：Last In First Out）といいます。',NULL,NULL,NULL),(4,'01','データ構造','●(2)キュー','キューとは、データを1列に並べて、最初に格納したデータを最初に取り出すデータ構造です。キューは「待ち行列」とも呼ばれます。イメージとしては「レジ待ちの列」です。 お客さんがデータです。お客さんは列の最後に並びます。最初に並んだ人が、最初に会計をすませることができます。列の途中に割り込むことはできません。 キューというデータ構造を使うメリットは、命令を入力した順番どおりに処理できることです。',NULL,NULL,NULL),(5,'01','データ構造','●●キューへのデータの出し入れ','キューにデータを入れることをenqueue（エンキュー）といいます。例えば「D」というデータをキューに入れる場合は「enqueue D」と記述します。反対に、データをキューから取り出すことをdequeue（デキュー）といいます。データをキューから取り出す場合は「dequeue」とだけ記述します。キューでは、最初に格納したデータしか取り出せないので、enqueueのようにデータ名を指定する必要はありません（「dequeue D」とは記述しません）。 なお、キューのような、先に入れたデータを先に出すアルゴリズムのことを先入れ先出し（FIFO：First In First Out）といいます。','試験にはコレが出る！ ・スタックとは、最後に格納したデータを最初に取り出すデータ構造 ・キューとは、最初に格納したデータを最初に取り出すデータ構造','/home/air/goalskill_t/back/img/section3/1.png',NULL),(6,'01','データ構造','●(3)配列','配列とは、データを表の形に並べたデータ構造です。配列では、1つ1つのデータを「要素」といいます。また、要素の位置を表す数字を「要素番号」といいます。',NULL,NULL,NULL),(7,'01','データ構造','●●1次元配列','配列の中でも、要素が1列に並ぶ配列を1次元配列といいます。\n\n配列から1つの要素を取り出す場合は、配列名の後に [ ] を付けて、その中に要素番号を書きます。例えば、上図の配列Aの先頭から3番目の要素「鈴木」を取り出す場合は「A[3]」と書き出します。',NULL,'/home/air/goalskill_t/back/img/section3/3.png',NULL),(8,'01','データ構造','●●2次元配列','配列の中でも、要素が縦横に並ぶ配列を2次元配列といいます。\n\n2次元配列では要素の横の並びを「行」、縦の並びを「列」と呼びます。2次元配列から1つの要素を取り出す場合は、要素番号を「行番号, 列番号」の順で指定します。例えば、上図の2次元配列Aの「2行目4列目」の要素「東京都」を取り出す場合は、「A[2, 4]」と書き記します。','試験にはコレが出る！ 2次元配列の要素を取り出す場合は「配列名[行番号, 列番号]」と書く','/home/air/goalskill_t/back/img/section3/4.png',NULL),(9,'01','データ構造','●(4) 連結リスト','連結リストとは、データを数珠（じゅず）つなぎに並べたデータ構造です。連結リストでも、配列と同じように、個々のデータを「要素」と呼びます。ただし、連結リストの要素は配列の要素と異なり、データに「ポインタ」が付きます。 ポインタとは、次の要素のアドレス（主記憶装置上のデータの位置）を指し示すものです。連結リストでは、ポインタを用いて要素を数珠つなぎにします。コンピュータは、ポインタに格納されているアドレスをたどることで、目的のデータにアクセスします。','もう少し詳しく！ 要素とセル 基本情報技術者試験では稀に、連結リストの要素について、「セル」という表記で出題されることがあります。ただし、頻出なのは「要素」のほうなので、まずは「要素」という用語でしっかりと覚えておいてください。','/home/air/goalskill_t/back/img/section3/5.png','例えば、上図では「佐藤」というデータを持つ要素は、同時に「7番地」というポインタを持ちます。このことから、「佐藤」の次のデータは7番地にある「田中」というデータであることがわかります。'),(10,'01','データ構造','●●配列と連結リストの違い','配列と連結リストはともに「データが順番に並んでいる」という点は同じですが、データにアクセスする方法が異なります。 配列では、要素番号を使うことでデータに直接アクセスできます。一方で連結リストの場合は、連結リストの先頭から順番に要素をたどって目的のデータにアクセスする必要があります。そのため、連結リストの場合、要素数が多ければ多いほど、データへのアクセスに時間がかかります。\n\nこのように聞くと、連結リストよりも配列のほうが優れているように感じる人もいるかもしれませんが、そうとは限りません。それは、データを挿入、または削除する際です。 配列に要素を挿入・削除する際は、後ろの要素をすべて1つずつずらす必要があります。そのため、要素数が多ければ多いほど処理に時間がかかります。 一方、連結リストの場合は、ポインタを変更するだけでデータを挿入・削除できるので、迅速に処理を行うことができます。\n\n基本情報技術者試験では、上記の「配列と連結リストの違い」が出題されるので、ここできちんと押さえてください。','試験にはコレが出る！ ・配列は、参照・更新が速い ・連結リストは、挿入・削除が速い','/home/air/goalskill_t/back/img/section3/7.png',NULL),(11,'01','データ構造','●●連結リストの分類','連結リストには、以下のような分類があります。基本情報技術者試験でも「連結リスト」ではなく、「単方向リスト」や「線形リスト」などと記載されることがあるので、頭の片隅に留めておいてください。',NULL,'/home/air/goalskill_t/back/img/section3/9.png',NULL),(12,'01','データ構造','●(5) 木構造','最後のデータ構造は「木構造」です。木構造（きこうぞう）とは、階層構造を持つデータ構造です。木構造は植物の木を逆さにしたような形をしています。',NULL,NULL,NULL),(13,'01','データ構造','●●木構造の各部の名称','右図の〇で表された箇所（枝分かれする箇所）を「節（せつ）」といいます。木構造ではこの節がデータを保持します。節の中でも最上位の節を「根（ね）」と呼び、末端の節を「葉（は）」と呼びます。',NULL,'/home/air/goalskill_t/back/img/section3/10.png',NULL),(14,'01','データ構造','●● 木構造の親子関係','また、木構造の節同士には親子関係があります。分岐元を「親」、分岐先を「子」といいます。 親は子をいくつでも持つことができます。木構造の中でも、親が0～2個の子を持つ木構造を2分木（にぶんぎ）といい、親が0～3個の子を持つ木構造を3分木（さんぶんぎ）といいます。 さらにこの規則を一般化して、親が0～n個の子を持つ木構造を「n分木」といいます。つまり、分木とは、節が最大でいくつの子に分かれるのかを表しています。',NULL,'/home/air/goalskill_t/back/img/section3/11.png',NULL),(15,'01','データ構造','■ 2分探索木','2分木の中でも、親子の値が以下の関係になっているものを「2分探索木（にぶんたんさくぎ）」といいます。\n 左の子孫 ＜ 親 ＜ 右の子孫 \nここでいう「子孫」とは「親よりも下にあるデータ」という意味です。次ページの図を見てください。',NULL,'/home/air/goalskill_t/back/img/section3/12.png','上図左の良い例では、すべての親子の関係が「左の子孫 ＜ 親 ＜ 右の子孫」になっていることがわかります。これがまさに2分探索木です。一方、上図右のダメな例では、親よりも左の子孫のほうが大きかったり、右の子孫が親よりも小さかったりするため、2分探索木とはいなせません。'),(16,'01','データ構造','●● 2分探索木のメリット','木構造をわざわざ「左の子孫 ＜ 親 ＜ 右の子孫」の関係になるように並べるのは、データを見つけるのに便利だからです。2分探索木では、根から葉までの階層の数だけ値を調べれば、目的のデータを見つけ出すことができます。一方、親子が無関係につながった木構造では、節を1つずつ調べる必要があります。','試験にはコレが出る！ 2分探索木の条件は「左の子孫 ＜ 親 ＜ 右の子孫」',NULL,NULL),(17,'02','アルゴリズムの基本','● アルゴリズムの表現方法','アルゴリズムは、以下の４つの方法で表現することができます。 （１）文章（文字による表現） \n（２）流れ図（図による表現） \n（３）数式（関数による表現） \n（４）プログラム言語（コンピュータが理解できる言語による表現） \nここでは、過去に基本情報技術者試験に出題されたことのある「数値を絶対値に変換するアルゴリズム」を例に、上記の４つの表現方法について１つずつ丁寧に解説していきます。なお、絶対値とは「数値の符号を無視した数」です。例えば、「3」と「-3」の絶対値はともに「3」です。',NULL,NULL,NULL),(18,'02','アルゴリズムの基本','● (1) 文章','まずは文章によるアルゴリズムの表現を解説します。「数値を絶対値に変換するアルゴリズム」を文章で表すと、以下のようになります。',NULL,'/home/air/goalskill_t/back/img/section3/13.png','②の手順中にある「→」（矢印）は代入を表します。例えば、$x$が「-3」ならば、$x$に「-(-3)」つまり「3」を代入します。\nアルゴリズムを文章で表すメリットは、数学記号と文字が読めれば、その他の知識がなくてもアルゴリズムを理解できることです。'),(19,'02','アルゴリズムの基本','● (2) 流れ図','流れ図（フローチャート）とは、アルゴリズムを視覚的にわかりやすく表した図です。「数値を絶対値に変換するアルゴリズム」を流れ図で表すと、以下のようになります。',NULL,'/home/air/goalskill_t/back/img/section3/14.png',NULL),(20,'02','アルゴリズムの基本','● 流れ図で使用する記号','流れ図で使用する記号はJIS（日本産業規格）によって規格化されています。 基本情報技術者試験によく出題されるのは下の表の5種類です。 なお、記号の名前が問われることはあまりありません。 記号の形状と役割を覚えてください。','試験にはコレが出る！ 基本情報技術者試験では、アルゴリズムの問題で「流れ図」が最も頻繁に出題される','/home/air/goalskill_t/back/img/section3/15.png',NULL),(21,'02','アルゴリズムの基本','●● ループ端の表記法は暗記する必要はない','ループ端の中には、繰り返し処理の条件を記入するのですが、条件の記入方法は、問題文の中に必ず注記されるので、暗記しておく必要はありません。 例えば、前ページの表にある使用例では、ループ端の開始記号の中に「i : 1, 1, 100」と記載されていますが、これは「変数名 : 初期値, 増分, 終値」という意味になります。 つまり、以下のような意味になります。\n・変数iは「1」からはじまり（初期値）、 \n・ループ処理を繰り返すたびに「値は1ずつ増加」（増分）し、 \n・「iが100になったとき」（終値）にループ処理が終わる','コラム 流れ図の問題を確実に解答する方法 ここで紹介する「トレース表」を利用すると、流れ図の問題を確実に解答できるようになります。 トレース表とは、流れ図で示されている各処理を実行する際の「変数の値」を書き出した表です。 １つひとつの処理に番号を振り、処理後の値を記入します。 下図のトレース表と流れ図を見てください。','/home/air/goalskill_t/back/img/section3/17.png','このように、トレース表を使って処理の流れを追うことで、変数の状態を細かく把握できるため、流れ図やアルゴリズムの問題を確実に解答できるようになります。 ぜひ使えるようになっておいてください。 トレース表の実践的な使い方はp.111で紹介します。'),(22,'02','アルゴリズムの基本','● (3) 数式','「数値を絶対値に変換するアルゴリズム」を数式で表すと、以下のようになります。',NULL,'/home/air/goalskill_t/back/img/section3/18.png','上図にある「$f(x)$」は、関数を表す記号です。 まず関数について解説します。'),(23,'02','アルゴリズムの基本','●● 関数','関数とは、複数の処理をひとまとめにしたものです。 特定の処理を関数として定義しておけば、その処理を何度でも、すぐに再利用できるため、さまざまなプログラム内で同じ処理を繰り返し書く手間を省略できます。 例えば、世の中には以下のような関数があります。\n・数値の絶対値を求める関数 \n・数値を3倍にする関数 \n・現在の日付を表示する関数 \n「数値の絶対値を求める関数」を利用すれば、いつでも任意の数値の絶対値を求めることができます。 同様に「数値を3倍にする関数」を利用すれば、その関数を呼び出すことでいつでも、任意の数値を3倍にすることができます。関数を利用するうえでは、次の2つの用語を理解しておく必要があります。 \n・引数（ひきすう）：関数に渡す値 \n・戻り値（もどりち）：関数が返す結果 \n例えば、数値「-3」の絶対値を求める場合、関数に渡す「-3」が引数で、関数から戻される「3」（「-3」の絶対値）が戻り値です。',NULL,'/home/air/goalskill_t/back/img/section3/19.png',NULL),(24,'02','アルゴリズムの基本','●● 数式と関数','数式では、関数をアルファベットの「f」と「()」（丸括弧）を使って以下のように表します。',NULL,'/home/air/goalskill_t/back/img/section3/20.png','「f」は「function」（関数という意味）の頭文字です。 また丸括弧の中の「$x$」は引数を意味します。 上記の数式では、以下のことを表しています。\n・引数$x$が「$x < 0$のとき」は、正負を反転して戻す\n・引数$x$が「$x \\ge 0$のとき」は、そのまま戻す\nそのため、例えば引数$x$が「-3」のときは「3」を戻し、引数$x$が「3」のときも「3」を戻します。 このことから、上記の数式が「数値を絶対値に変換するアルゴリズム」を表していることがわかります。'),(25,'02','アルゴリズムの基本','● (4) プログラム言語','最後はプログラム言語による表現です。「数値を絶対値に変換するアルゴリズム」をプログラム言語で表すと、以下のようになります。\n\nこの処理内容を文章で書くと、以下のようになります。\n・もし、$x$ が 0 より小さい場合は …… 〈条件〉\n・「-x」を返す。 …… 〈条件が正しいときの処理〉\n・それ以外の場合は「$x$」を返す。 …… 〈条件が正しくないときの処理〉\nなお、基本情報技術者試験では、アルゴリズムをプログラム言語で表すときは、以下のように 1 行で表されることが多いです。',NULL,'/home/air/goalskill_t/back/img/section3/27.png','ちなみに、基本情報技術者試験では、C 言語や Java などの特定のプログラム言語の書式は問われません。そのため、上記にある「if」「then」「else」「return」の 4 つのキーワードの意味を把握しておくだけで、読み解くことができます。'),(26,'03','アルゴリズムの分類','● (1) 整列アルゴリズム','整列アルゴリズムとは、データを特定の順番に並べるアルゴリズムです。「ソートアルゴリズム」と呼ばれることもあります。',NULL,'/home/air/goalskill_t/back/img/section3/28.png','なお、上記のうち、基本情報技術者試験に出題されるのは「クイックソート」がほとんどです。他の整列アルゴリズムが出題されることは極めて稀です。'),(27,'03','アルゴリズムの分類','● ● クイックソート','クイックソートとは、データ全体を「基準値よりも小さいグループ」と「基準値よりも大きいグループ」の2つに分けるという作業を繰り返すことで、データの並べ替えを行うアルゴリズムです。 ここでは具体例として、バラバラに配置された1から9までの数字を昇順（小→大）に並べ替える手順を紹介します。','試験にはコレが出る！ クイックソートは、最初に基準値を選び、それよりも小さな値のグループと大きな値のグループにデータを分割する','/home/air/goalskill_t/back/img/section3/32.png','クイックソートは、もっとも高速な整列アルゴリズムです。出題者としても、遅いアルゴリズムよりも、高速なアルゴリズムのほうを学んでもらいたいので、クイックソートを試験に出題するのだと思います。'),(28,'03','アルゴリズムの分類','● (2) 探索アルゴリズム','次に探索アルゴリズムを解説します。探索アルゴリズムとは、特定のデータを見つけ出すアルゴリズムです。主な探索アルゴリズムは以下の3種類です。',NULL,'/home/air/goalskill_t/back/img/section3/33.png','なお、上記のうち、基本情報技術者試験では「ハッシュ法」と「2分探索法」が頻繁に出題されます。'),(29,'03','アルゴリズムの分類','●● ハッシュ法','ハッシュ法とは、探索対象のデータをハッシュ値に変換し、このハッシュ値を使って目的のデータを見つける探索アルゴリズムです。ハッシュ法はハッシュ表探索法とも呼ばれます。以下がハッシュ法のアルゴリズムのイメージです。',NULL,'/home/air/goalskill_t/back/img/section3/34.png','具体例として、ハッシュ法を用いて上図から「32」という値を探索する手順を紹介します。 ハッシュ法ではまず、ハッシュ関数を使って、探索対象となるデータをハッシュ値に変換します。ハッシュ値とは、ハッシュ関数の出力です。代表的なハッシュ関数の1つに「剰余」があります。剰余とは「わり算の余り」です。modで表します。仮にハッシュ関数が「入力された値を10でわった余りを出力する」関数ならば、このハッシュ関数に「32」を入力すると「2」が出力されます（32÷10の余りは2）。この場合のハッシュ値は「2」となります。 \n\n目的のデータはこのハッシュ値を要素番号とした、配列の要素に格納されます（上図の右側を参照）。このようにハッシュ値を要素番号に持つ配列を「ハッシュ表」といいます。 ハッシュ表では、ハッシュ値を指定することで、目的のデータの格納場所（要素番号）に一度の探索でアクセスできます。例えば、要素番号が「2」である格納場所を探索すれば、探索対象である「32」を1回で見つけることができます。これが、ハッシュ法によるデータ探索の仕組みです。'),(30,'03','アルゴリズムの分類','●● ハッシュ法の弱点','ハッシュ法には弱点があります。それは、入力値が異なるのにハッシュ値が同じ値になってしまうケースが存在することです。これを衝突（コリジョン）といいます。 例えば前ページの図のハッシュ関数で、「32」と「42」というデータがあった場合、どちらもハッシュ値が「2」となり、同じ格納場所を示すようになります。 このような衝突が起こった場合は、別の方法で衝突を解決しないといけないので、アルゴリズムの効率が落ちます。 基本情報技術者試験では「ハッシュ法のデメリットは衝突が起こる可能性があること」というポイントが出題されます。 ただし、衝突を回避するための具体的な方法が問われることはありません。','試験にはコレが出る！ \n・ハッシュ法では、ハッシュ値によって格納場所を決める \n・ハッシュ法のデメリットは衝突が起こる可能性があること',NULL,NULL),(31,'03','アルゴリズムの分類','●● 2分探索法','2分探索法（にぶんたんさくほう）とは、調べる範囲を半分に分割することで目的のデータを見つけるアルゴリズムです。 2分探索法には以下の2つの特徴があります。\n特徴1 データを、あらかじめ整列させておく必要がある\n特徴2 データを、2つに分けながら探索する\n2分探索法は非常に効率のよい探索アルゴリズムですが、データをあらかじめ昇順か降順で整列させておくことが必要です。\n次ページの図の例では、1から9までの数字が昇順に並んでいます。 この配列から「6」という値を2分探索法で見つけ出す方法を解説します。\n①まず、列の中から中央の要素を見つける。 中央の要素は先頭の要素番号と末尾の要素番号の合計を2でわることで見つけられる\n$(1+9) \\div 2 = 5$\n要素番号「5」を用いて、要素「5」を取り出し、探索対象の「6」と比較します。','試験にはこれが出る！ \n2分探索法の特徴は次の2つ \n【特徴1】データを、あらかじめ整列させておく必要がある \n【特徴2】データを、2つに分けながら探索する','/home/air/goalskill_t/back/img/section3/37.png','「6」は「7」よりも小さいので、探索の範囲を左半分のグループに絞ります。 この操作を繰り返すことで、目的のデータを見つけ出すことができます。'),(32,'03','アルゴリズムの分類','●(3) 再帰的アルゴリズム','再帰的アルゴリズムとは、処理の途中で自分自身を呼び出すアルゴリズムです。「再帰」とは「繰り返し」という意味です。また、処理の途中で自分自身を呼び出すことを再帰呼び出しといい、処理の途中で自分自身を呼び出す関数を再帰関数といいます。 基本情報技術者試験では、再帰的アルゴリズムは主に「総和」「剰余」「階乗」の3つを求める際に出題されます。',NULL,'/home/air/goalskill_t/back/img/section3/38.png',NULL),(33,'03','アルゴリズムの分類','●●再帰的アルゴリズムによる総和の求め方','ここでは例として、「総和」を求める再帰的アルゴリズムを紹介します。ここで紹介するアルゴリズムの4つの表現方法（文章、流れ図、数式、プログラム言語：p.102）は、基本情報技術者試験でも頻繁に出題されるので、ぜひ内容を理解しておいてください。 【例題】 1から5までの整数の総和を求めなさい。 この例題の答えは「15」です。 1 + 2 + 3 + 4 + 5 = 15 この例題の答えを再帰的アルゴリズムを使って求めます。',NULL,NULL,NULL),(34,'03','アルゴリズムの分類','●●文章での表現','例題を「文章」（p.103）で表現すると以下のようになります。なお、ここでは計算結果を「sum」、たし算を行う回数を「n」としています。',NULL,'/home/air/goalskill_t/back/img/section3/39.png','上記のアルゴリズムでは、1から5までの整数の総和を逆順（0 + 5 + 4 + 3 + 2 + 1の順）で求めています。②～④を繰り返すので再帰的アルゴリズムであるといえます。'),(35,'03','アルゴリズムの分類','●●流れ図での表現','例題を「流れ図」（p.103）で表現すると以下のようになります。',NULL,'/home/air/goalskill_t/back/img/section3/40.png',NULL),(36,'03','アルゴリズムの分類','●●数式での表現','例題を「数式」（p.106）で表現すると以下のようになります。',NULL,'/home/air/goalskill_t/back/img/section3/42.png','上記の数式を見ると「f(x - 1)」と書かれている箇所があります。これは、x > 1の場合に「自分自身の呼び出し」をしています。ただし、引数は当初の引数とは異なる値を渡しています。この、処理の中で自分自身を呼び出している箇所が再帰的アルゴリズムです。 この関数に引数「5」を入れると、以下の計算が行われます。'),(37,'03','アルゴリズムの分類','●●プログラム言語での表現','例題を「プログラム言語」（p.108）で表現すると以下のようになります。なお、計算過程は数式の場合と同じです。','試験にはこれが出る！ \n・再帰呼び出しとは、関数の中で自分自身を呼び出して処理を実行すること \n・再帰的アルゴリズムは「総和」「剰余」「階乗」を求めるアルゴリズムとして出題される \n・再帰性アルゴリズムの問題では、実際に再帰関数に引数を代入し、結果を算出する練習をしておくことが重要','/home/air/goalskill_t/back/img/section3/43.png',NULL),(38,'03','アルゴリズムの分類','●アルゴリズムの計算量を算出する問題','本項ではこれまでにさまざまな種類のアルゴリズムを紹介してきました。当然、各アルゴリズムには特徴があるのですが、異なるアルゴリズムであっても、結果が同じになるならば、実行時間が短く、メモリの使用量が少ないアルゴリズムのほうが優秀であるといえます。 そのため、それぞれのアルゴリズムの計算量を算出することで、最適なアルゴリズムが何であるかを調べることが必要になります。',NULL,NULL,NULL),(39,'03','アルゴリズムの分類','●●オーダー（計算量）','アルゴリズムを完了するために必要な計算量のことを「オーダー」といい、データ数と計算量の関係を表す記法を「オーダー記法」といいます。 オーダー記法では、アルゴリズムの計算量を以下の書式で表します。',NULL,'/home/air/goalskill_t/back/img/section3/44.png','例えば、データ数nが2倍、3倍になった際に計算量が2倍、3倍になる場合、そのアルゴリズムのオーダーは「O(n)」となります。一方で、データの数nが2倍、3倍になった際に計算量が4倍、9倍になる場合、そのアルゴリズムのオーダーは「O(n^2)」となります。また、1回の比較や探索で処理が完了する場合は「O(1)」となります。 なお、オーダーは「これ以上は大きくならない」という「最大の計算量」を表します。'),(40,'03','アルゴリズムの分類','●2分探索法のオーダーの求め方','基本情報技術者試験では、探索アルゴリズム（p.116）の1つである「2分探索法」のオーダー（計算量）を求める問題がよく出題されます。\n2分探索法のオーダーは次のとおりです。\nO($log_2n$)\n「log」という、普段はあまり見慣れない数式が突然出てきて面食らった人もいるかもしれませんが安心してください。難しく見えるかもしれませんが、計算方法はいたってシンプルです。すぐに習得できます。',NULL,NULL,NULL),(41,'03','アルゴリズムの分類','●●logの計算方法','「log」は対数を表すキーワードです。対数はこれまでに何度か解説してきた指数を表すための1つの方法です。例えば「$2^3$」と「$log_28$」は以下のような関係になります。','学習のポイント\n対数の2つの表記方法\n2分探索法のオーダーの表記は「$log_2n$」と記載される場合と、単に「$log n$」とだけ記載される場合（底が省略される場合）の2通りがあります。なぜなら、オーダー記法では底の違いは無視できるため、わざわざ表記しなくてもよいためです。','/home/air/goalskill_t/back/img/section3/45.png','2分探索法のオーダーは「O($log_2n$)」で求められるため、例えば、データが8個ある場合の計算量は次のように算出されます。$log_28 = log_22^3 = 3$このことから、データ数が8の場合の2分探索法のオーダー（計算量）は「3」となります（最大で3回の比較を行う）。'),(42,'03','アルゴリズムの分類','●●その他のアルゴリズムのオーダー','基本情報技術者試験では、先述したように2分探索法のオーダーを求める問題が頻出ですが、ハッシュ法や線形探索法、クイックソートのオーダーを求める問題が出題されることもあります。 なお、全部で4種類あるので覚えるのが大変そうですが、よく見るとハッシュ法と線形探索法のオーダーはとてもシンプルなので、すぐに覚えられると思います。','試験にはこれが出る！\n・ハッシュ法のオーダー（計算量）は、O(1)\n・2分探索法のオーダーは、O($log_2n$)、またはO($log n$)\n・線形探索法のオーダーは、O(n)\n・クイックソートのオーダーは、O($n log n$)','/home/air/goalskill_t/back/img/section3/46.png','ハッシュ法（p.117）のオーダーは「O(1)」です。つまり、n（データ数）にかかわらず、計算量は常に1回（一度の探索）であるということです。\n一方、線形探索法（p.116）のオーダーは「O(n)」です。つまり、線形探索法では最大ですべてのデータ（n個のデータ）を探索する必要があるということです。\nクイックソート（p.115）のオーダーは「O($n log n$)」です。これは覚えるのが大変そうです。2分探索法のオーダーをしっかり覚えたうえで、それをさらにn倍するのだなという風に覚えておいてください。'),(43,'04','プログラムの性質と種類','プログラムの性質','プログラムにはさまざまな性質があります。前項で紹介した「再帰」（p.120）も性質の1つです。本項では、基本情報技術者試験に出題される代表的な性質を4つ紹介します。 \n（1）再帰（リカーシブ） \n（2）再入可能（リエントラント） \n（3）再配置可能（リローケータブル） \n（4）再使用可能（リユーザブル）','学習のポイント プログラムの性質 上記の4つの性質のうち、基本情報技術者試験で内容が問われるのは「再帰（リカーシブ）」と「再入可能（リエントラント）」の2つだけです。まずはこの2つについてきちんと習得してください。カタカナ表記が出題されることもあります。',NULL,NULL),(44,'04','プログラムの性質と種類','(1) 再帰','再帰（リカーシブ）とは、プログラムの実行中に自分自身を呼び出すことができる性質です。再帰とは「繰り返し」という意味です。この性質を持つプログラムのことを「再帰プログラム」といいます。',NULL,'/home/air/goalskill_t/back/img/section3/47.png',NULL),(45,'04','プログラムの性質と種類','(2) 再入可能','再入可能（リエントラント）とは、複数のプログラムから同時に呼び出されても正しく動作する性質です。この性質を持つプログラムのことを「再入可能プログラム」といいます。 例えば、プログラムAとプログラムBが同時にプログラムCを呼び出したときに、プログラムCが正しく動作する場合、プログラムCは再入可能プログラムであるといえます。',NULL,'/home/air/goalskill_t/back/img/section3/48.png',NULL),(46,'04','プログラムの性質と種類','(3) 再配置可能','再配置可能（リローケータブル）とは、プログラムを主記憶装置のどこに配置しても実行できる性質です。この性質を持つプログラムのことを「再配置可能プログラム」といいます。通常のプログラムはほとんどが再配置可能プログラムです。',NULL,'/home/air/goalskill_t/back/img/section3/49.png',NULL),(47,'04','プログラムの性質と種類','(4) 再使用可能','再使用可能（リユーザブル）とは、一度プログラムを主記憶に格納すれば、後は主記憶装置から何度でも繰り返し実行できる性質です。この性質を持つプログラムを「再使用可能プログラム」といいます。\n\n通常のプログラムでは、処理の実行後に再度処理を実行したい場合は、補助記憶装置から主記憶装置にプログラムを再度格納する必要があります（これを「リロード」といいます）。再使用可能プログラムはリロードをする必要がありません。','試験にはこれが出る！ \n・再帰（リカーシブ）とは、プログラムの実行中に自分自身を呼び出すことができる性質 \n・再入可能（リエントラント）とは、複数のプログラムから同時に呼び出されても正しく動作する性質','/home/air/goalskill_t/back/img/section3/50.png',NULL),(48,'04','プログラムの性質と種類','名称に「Java」が含まれる用語','最も有名なプログラム言語の1つに「Java」があります。Javaは2000年代前半に普及し、今でもさまざまなシステムで使用されています。そのため、基本情報技術者試験でもよく出題されます。 また、実は名前に「Java」という単語が付く用語がいくつかあります。これらは、名前が似ていて混同しやすいため、試験にもよく出題されます。下表に整理しているので、何回か読み返して、それぞれの特徴を把握しておくようにしてください。','試験にはこれが出る！ \n・Javaアプレットとは、サーバからダウンロードして、クライアント側のWebブラウザ上で実行される、Javaで書かれたプログラム \n・Javaサーブレットとは、サーバ上で実行される、動的なWebページを作るためのJavaで書かれたプログラム','/home/air/goalskill_t/back/img/section3/51.png',NULL),(49,'05','その他の言語','HTML','HTML（HyperText Markup Language）とは、Webページを作成する際に利用されているマークアップ言語です。HTMLでは「タグ」と呼ばれる要素を使ってWebページの論理構造や文字要素を指定します。論理構造とは、そのWebページに、どのような要素があり、またそれがどのような関係性を持っているのかを示すものです。具体例を見てみましょう。','学習のポイント \nマークアップ言語とは マークアップ言語（Markup Language）とは、タグ（<>で囲まれた文字）を使って「コンピュータが扱う文書」を記述する言語です。マークアップとは「タグを付ける」という意味の英語です。','/home/air/goalskill_t/back/img/section3/53.png','<title>と</title>に囲まれている文字がブラウザのタイトル部分に表示されていることが確認できます①。同様に、<body>と</body>に囲まれている文字がブラウザの本文に表示されていることが確認できます②。このように、HTMLのタグを使えば、Webページに掲載するテキストや、その構造（論理構造）を指定できます。 なお、HTMLのタグは使い方が決まっているので、みなさんが独自に考えたタグを勝手に指定することはできません。'),(50,'05','その他の言語','XML','XML（eXtensible Markup Language）とは、HTMLとは異なり、みなさん自身が定義したタグを使ってデータを記述するマークアップ言語です。英語の「Extensible」は拡張可能という意味です。XMLの場合は「タグを自分で定義できる（拡張できる）」ということを表しています。 HTMLの用途が「Webページの作成」であるのに対し、XMLの用途は「Web上でデータを交換すること」です。具体例を見てみましょう。','もう少し詳しく！HTMLとXMLの親\n「HTML」と「XML」という2つの言語は、元は「SGML」という言語から生まれた兄弟言語です。この2つの言語が現代のWebサイトを支えています。SGMLも稀に、基本情報技術者試験に登場するので頭の片隅に入れておいてください。','/home/air/goalskill_t/back/img/section3/55.png','XMLの場合も、HTML同様、タグを使ってデータを記述します。こうすることで、Web上でデータをやり取りできるようになります。XMLのメリットは、人間とコンピュータの両方が読みやすい形式であることです。'),(51,'05','その他の言語','CSS','CSS（Cascading Style Sheets）とは、HTML文書の文字の大きさ、文字の色、行間などのデザイン（視覚表現）を指定する言語です。Webページは通常、先述したHTMLとCSSの2つの言語を使って制作します。 HTMLで、Webページにどのような文書や画像を表示するのかを指定し（論理構造）、CSSで掲載情報の色やサイズ、配置場所などのデザインを指定します（視覚表現の情報）。 HTMLとCSSを使い分けることで、「論理構造」と「視覚表現の情報」を切り分けることができます。以前はデザインもHTMLで指定していたのですが、両方の情報をHTMLだけで指定すると、内容が複雑になるため、現在ではCSSで行うことが一般的です。','試験にはこれが出る！ \nCSSは、HTML文書の文字の大きさ、文字の色、行間といったデザイン（視覚表現）を指定する言語','/home/air/goalskill_t/back/img/section3/56.png',NULL),(52,'05','その他の言語','Ajax','Ajax（Asynchronous JavaScript and XML）とは、Webページ上で画面を切り替えることなく、動的なユーザーインタフェースを実現する技術です。',NULL,NULL,NULL),(53,'05','その他の言語','画面遷移','Ajaxの技術を利用していない、従来のWebページでは、以下の2つの処理を行ってブラウザに表示する情報を更新していました。 \n（1）サーバと通信して、次のWebページを取得する \n（2）取得したWebページをブラウザ上に表示する 上記のように、ブラウザに表示するWebページを切り替えることを「画面遷移」といいます。',NULL,NULL,NULL),(54,'05','その他の言語','同期通信と非同期通信','画面遷移でWebページを切り替える方法では、ユーザーは画面遷移が完了するまで（サーバから次のWebページを取得し、ブラウザ上に表示するまで）、新しいWebページを閲覧することができません。こうした「サーバの処理が完了するまで次の処理に進まない方式」のことを「同期通信」といいます。同期通信では、ユーザーがWebページ上のボタンなどを押すたびに、Webページが切り替わるのを待つ必要があるので、使い勝手がよくありません。 そこで登場したのがAjaxです。AjaxはJavaScriptとXMLを使うことで、ユーザーからは見えないところでサーバとの通信を実現する技術です。この技術を使うと、サーバの処理が完了するのを待つことなく、新しいデータを受信できます。そのため、Webページが切り替わるのを待つ必要もなくなります。このように「サーバの処理が終わるのを待たずに次の処理に進む方式」のことを「非同期通信」といいます。Ajaxの先頭の「A」は「Asynchronous」（非同期）の頭文字です。この「非同期」というキーワードが試験でも頻繁に出題されます。','試験にはこれが出る！ \nAjaxとは、JavaScriptの非同期通信の機能を使うことで、動的なユーザーインタフェースを、画面遷移を伴わずに実現する技術','/home/air/goalskill_t/back/img/section3/57.png','Ajaxの技術を利用したWebアプリケーションの代表例の1つに「Googleマップ」があります。Googleマップでは、ブラウザに表示された地図をドラッグすると、同じWebページ上に新しい地図が表示されます。このとき、Webページの切り替えは行われません。'),(55,'05','その他の言語','HTML','HTML（HyperText Markup Language）とは、Webページを作成する際に利用されているマークアップ言語です。HTMLでは「タグ」と呼ばれる要素を使ってWebページの論理構造や文字要素を指定します。論理構造とは、そのWebページに、どのような要素があり、またそれがどのような関係性を持っているのかを示すものです。具体例を見てみましょう。','学習のポイント \nマークアップ言語とは マークアップ言語（Markup Language）とは、タグ（<>で囲まれた文字）を使って「コンピュータが扱う文書」を記述する言語です。マークアップとは「タグを付ける」という意味の英語です。','/home/air/goalskill_t/back/img/section3/59.png','<title>と</title>に囲まれている文字がブラウザのタイトル部分に表示されていることが確認できます①。同様に、<body>と</body>に囲まれている文字がブラウザの本文に表示されていることが確認できます②。このように、HTMLのタグを使えば、Webページに掲載するテキストや、その構造（論理構造）を指定できます。 なお、HTMLのタグは使い方が決まっているので、みなさんが独自に考えたタグを勝手に指定することはできません。'),(56,'05','その他の言語','XML','XML（eXtensible Markup Language）とは、HTMLとは異なり、みなさん自身が定義したタグを使ってデータを記述するマークアップ言語です。英語の「Extensible」は拡張可能という意味です。XMLの場合は「タグを自分で定義できる（拡張できる）」ということを表しています。 HTMLの用途が「Webページの作成」であるのに対し、XMLの用途は「Web上でデータを交換すること」です。具体例を見てみましょう。','もう少し詳しく！HTMLとXMLの親\n「HTML」と「XML」という2つの言語は、元は「SGML」という言語から生まれた兄弟言語です。この2つの言語が現代のWebサイトを支えています。SGMLも稀に、基本情報技術者試験に登場するので頭の片隅に入れておいてください。','/home/air/goalskill_t/back/img/section3/61.png','XMLの場合も、HTML同様、タグを使ってデータを記述します。こうすることで、Web上でデータをやり取りできるようになります。XMLのメリットは、人間とコンピュータの両方が読みやすい形式であることです。'),(57,'05','その他の言語','CSS','CSS（Cascading Style Sheets）とは、HTML文書の文字の大きさ、文字の色、行間などのデザイン（視覚表現）を指定する言語です。Webページは通常、先述したHTMLとCSSの2つの言語を使って制作します。 HTMLで、Webページにどのような文書や画像を表示するのかを指定し（論理構造）、CSSで掲載情報の色やサイズ、配置場所などのデザインを指定します（視覚表現の情報）。 HTMLとCSSを使い分けることで、「論理構造」と「視覚表現の情報」を切り分けることができます。以前はデザインもHTMLで指定していたのですが、両方の情報をHTMLだけで指定すると、内容が複雑になるため、現在ではCSSで行うことが一般的です。','試験にはこれが出る！ \nCSSは、HTML文書の文字の大きさ、文字の色、行間といったデザイン（視覚表現）を指定する言語','/home/air/goalskill_t/back/img/section3/62.png',NULL),(58,'05','その他の言語','Ajax','Ajax（Asynchronous JavaScript and XML）とは、Webページ上で画面を切り替えることなく、動的なユーザーインタフェースを実現する技術です。',NULL,NULL,NULL),(59,'05','その他の言語','画面遷移','Ajaxの技術を利用していない、従来のWebページでは、以下の2つの処理を行ってブラウザに表示する情報を更新していました。 \n（1）サーバと通信して、次のWebページを取得する \n（2）取得したWebページをブラウザ上に表示する 上記のように、ブラウザに表示するWebページを切り替えることを「画面遷移」といいます。',NULL,NULL,NULL),(60,'05','その他の言語','同期通信と非同期通信','画面遷移でWebページを切り替える方法では、ユーザーは画面遷移が完了するまで（サーバから次のWebページを取得し、ブラウザ上に表示するまで）、新しいWebページを閲覧することができません。こうした「サーバの処理が完了するまで次の処理に進まない方式」のことを「同期通信」といいます。同期通信では、ユーザーがWebページ上のボタンなどを押すたびに、Webページが切り替わるのを待つ必要があるので、使い勝手がよくありません。 そこで登場したのがAjaxです。AjaxはJavaScriptとXMLを使うことで、ユーザーからは見えないところでサーバとの通信を実現する技術です。この技術を使うと、サーバの処理が完了するのを待つことなく、新しいデータを受信できます。そのため、Webページが切り替わるのを待つ必要もなくなります。このように「サーバの処理が終わるのを待たずに次の処理に進む方式」のことを「非同期通信」といいます。Ajaxの先頭の「A」は「Asynchronous」（非同期）の頭文字です。この「非同期」というキーワードが試験でも頻繁に出題されます。','試験にはこれが出る！ \nAjaxとは、JavaScriptの非同期通信の機能を使うことで、動的なユーザーインタフェースを、画面遷移を伴わずに実現する技術','/home/air/goalskill_t/back/img/section3/63.png','Ajaxの技術を利用したWebアプリケーションの代表例の1つに「Googleマップ」があります。Googleマップでは、ブラウザに表示された地図をドラッグすると、同じWebページ上に新しい地図が表示されます。このとき、Webページの切り替えは行われません。');

--
-- Table structure for table `section_4`
--

CREATE TABLE `section_4` (
  `id` int NOT NULL AUTO_INCREMENT,
  `chapter` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci,
  `main_title` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci,
  `sub_title` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci,
  `theory_description` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci,
  `tip` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci,
  `img` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci,
  `img_description` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=45 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

--
-- Dumping data for table `section_4`
--

INSERT INTO `section_4` VALUES (1,'01','CPU（プロセッサ）','CPUとは','CPU (Central Processing Unit：中央処理装置) は、その名のとおり、「コンピュータの中心で仕事をする機械」です。 人間における脳にあたる装置です。 なお、基本情報技術者試験では、CPUが「プロセッサ」と記載されることもあるので、ここで覚えておいてください。\nCPUには、低性能のものから高性能のものまで、さまざまな種類があります。 CPUの性能は、主に以下の3つの指標で評価されます。\n（1）クロック周波数\n（2）MIPS\n（3）コア',NULL,NULL,NULL),(2,'01','CPU（プロセッサ）','(1) クロック周波数','クロック周波数とは、CPUの動作の速さを表す指標です。 コンピュータは内部に発振器を持っていて、CPUはこの発振器が発生するテンポに合わせて命令を処理します。 クロック周波数はこの発振器が1秒間に発生させる信号の回数です。 クロック周波数の単位は「Hz（ヘルツ）」です。 1秒間に1回の信号を発生させることを1Hzといいます。現実世界に例えるなら、発振器はメトロノームであり、CPUは演奏者です。 発振器が発生させるテンポに合わせて、CPUが命令の処理を行います。 処理の順番が前後しないようにテンポに合わせて計算します。\n\nこのため、より多くの命令を、より速く実行するには、より速いテンポに対応できるCPUが必要であることがわかります。 つまり、大きいクロック周波数に対応できるCPUほど、処理が速いといえます。以下は、1秒間に実行できる命令数を計算するための公式です。$$\\text{1秒間に実行できる命令数} = \\frac{\\text{クロック周波数}}{\\text{1つの命令を実行するのに必要なクロック数}}$$理論説明：例えば、クロック周波数2.5GHzのCPUが1秒間に処理できるクロック数は、最大で2.5ギガクロック、つまり、25億クロックとなります ($1\\text{ギガ}=10^9=10\\text{億}$)。 そのため、1つの命令にかかるクロック数が平均2クロックの場合は、1秒間に実行できる命令数は12.5億個になります。$$\\frac{\\text{クロック周波数}}{\\text{1つの命令を実行するのに必要なクロック数}} = \\frac{\\text{25億クロック}}{\\text{2クロック}}$$このことから、CPU of クロック周波数が大きければ大きいほど高性能だといえます。',NULL,'/home/air/goalskill_t/back/img/section4/2.png','コンピュータの世界では、命令の処理にかかるCPUの手間を「クロック数」で表します。 クロック数とは、発振器がテンポを刻む回数です。 発振器が1回分のテンポを刻むことを1クロックといいます。\nコンピュータが処理する命令の中には、1クロックで終わる命令もあれば、4クロックかかる命令もあります。 複雑な命令ほどクロック数も増えます。'),(3,'01','CPU（プロセッサ）','(2) MIPS','MIPS (Million Instructions Per Second：ミップス) とは、CPUが1秒間に何百万個の命令を実行できるかを表す単位です。 2MIPSは「1秒間に200万個の命令を実行する」という意味です。',NULL,'/home/air/goalskill_t/back/img/section4/3.png','MIPSは以下の公式で求めることができます。$$\\text{MIPS} = \\frac{\\text{1秒}}{\\text{平均命令実行時間}} \\times 10^{-6}$$理論説明：上の公式の分母にある「平均命令実行時間」とは、1つの命令を実行するのにかかる時間の平均値です。 先述のとおり、命令には、処理をするのに長い時間がかかる命令（クロック数がたくさん必要な命令）や、すぐに処理できる命令（クロック数をあまり必要としない命令）があります。 実行時間は命令によってバラバラなので、平均値を使って計算します。 また、公式の最後に「$10^{-6}$」をかけ算するのは、単位を100万 (Million) に合わせるためです。なお、基本情報技術者試験では、公式のMIPSを求める問題と平均命令実行時間を求める問題の両方が出題されます。 例えば、2MIPSの「平均命令実行時間」を求める場合は、次のように計算します。$$\\text{2MIPS} = \\frac{\\text{1秒}}{\\text{平均命令実行時間}} \\times 10^{-6}$$上記の式より、$$\\text{平均命令実行時間} = 0.5 \\times 10^{-6} = 0.5 (\\text{マイクロ秒}) = 500 (\\text{ナノ秒})$$'),(4,'01','CPU（プロセッサ）','(3) コア','基本情報技術者試験では「コア」の定義が直接出題されることはあまりありませんが設問文の中にはよく登場するので、ここで意味を確認しておいてください。\nコアとは、CPU内にある「演算を行う装置」です。 従来は、1つのCPUには1つのコアしか入っていなかったのですが、最近は1つのCPU内に複数のコアが搭載されているコンピュータが主流です。\nこのような、1つのCPU内に複数のコアを持つCPUのことを「マルチコアプロセッサ」といいます。 また、2つのコアを持つプロセッサを「デュアルコアプロセッサ」、4つのコアを持つプロセッサを「クアッドコアプロセッサ」といいます。 マルチコアプロセッサでは、それぞれのコアが別々の処理を実行できるため、多くのコアが搭載されているCPUのほうが、性能が高いといえます。','試験にはコレが出る！\nCPUの性能は、クロック周波数、MIPS、コアの3つの指標で評価される$$\\text{1秒間に実行できる命令数} = \\frac{\\text{クロック周波数}}{\\text{1つの命令を実行するのに必要なクロック数}}$$$$\\text{MIPS} = \\frac{\\text{1秒}}{\\text{平均命令実行時間}} \\times 10^{-6}$$',NULL,NULL),(5,'02','CPUが処理する流れ','主記憶装置の仕組み','CPUの処理手順を理解するには、事前に「主記憶装置」の仕組みを理解しておくことが重要です。そこで、先に主記憶装置の仕組みについて簡単に解説します（詳しくはp.160で解説します）。\n主記憶装置とは「命令やデータを格納しておく装置」です。主記憶装置の内部は細かく区分けされていて、各区画にアドレス（番地）が割り振られています。',NULL,'/home/air/goalskill_t/back/img/section4/4.png',NULL),(6,'02','CPUが処理する流れ','命令とデータ','CPUは、アドレスを指定して、主記憶装置から命令やデータを取り出します。主記憶装置に格納されている命令とは、プログラムに書かれた複数ある命令のうちの１つです。例えば「〇〇番地のデータを取り出せ」や「たし算せよ」といったCPUへの命令が書かれています。\nまた、主記憶装置に格納されているデータとは、「3」や「5」といった、計算の対象となるデータや、その計算結果のデータです。\nCPUは主記憶装置から「命令」と「データ」を取り出して計算を行い、計算が完了したらその結果（データ）を主記憶装置に格納します。',NULL,'/home/air/goalskill_t/back/img/section4/5.png',NULL),(7,'02','CPUが処理する流れ','命令の構成','主記憶装置からCPUに読み込まれる命令は、下図のように「命令部」と「アドレス部」で構成されています。','試験にはコレが出る！\nコンピュータの中には、主記憶装置という「命令」や「データ」を格納しておく装置がある','/home/air/goalskill_t/back/img/section4/6.png','命令部には「たし算せよ」や「データを取り出せ」などの命令が書かれています。一方、アドレス部には「処理対象のデータが格納されているアドレス」が記されています。'),(8,'02','CPUが処理する流れ','レジスタ','主記憶装置から読み込まれた命令やデータは、CPU内のレジスタと呼ばれる記憶装置に格納されます。レジスタとは、CPUの中にある、命令やデータを一時的に格納する記憶装置です。\nレジスタはいわば「小さな格納庫」のようなものです。レジスタには「格納対象」ごとに、いくつかの種類があります。基本情報技術者試験では、以下の３種類がよく出題されます。',NULL,'/home/air/goalskill_t/back/img/section4/8.png',NULL),(9,'02','CPUが処理する流れ','CPUが命令を処理する流れ','ここからは、具体的にCPUがどのように命令を処理しているか解説します。基本情報技術者試験では、各レジスタの「名前」やその「役割」が出題されます。CPUが命令を処理する流れを把握し、各レジスタの役割を理解しましょう。\n下図は、CPUが主記憶装置からデータを取り出す流れです。処理は図内の①〜⑥の順番で実行されます。','試験にはコレが出る！\n・プログラムカウンター（プログラムレジスタ）は「次の命令のアドレス」を格納するレジスタ\n\n・命令レジスタは「命令」を格納するレジスタ\n\n・汎用レジスタは「データ」を格納するレジスタ','/home/air/goalskill_t/back/img/section4/9.png','① コンピュータが起動すると、CPUはプログラムカウンターに格納されている「次の命令のアドレス」を見て主記憶装置に「命令」を取りに行く\n② プログラムカウンターは一度参照されると、自動的に番号を加算して、次の「命令」のアドレスを示すように更新される（上図では1番地→2番地）\n③ 主記憶装置から取り出された命令は「命令レジスタ」に格納される。なお、主記憶装置から命令を取り出して命令レジスタに格納することを「フェッチ」という\n④ 命令はCPUの中にある命令デコーダ（命令解読器）という装置で解読される\n⑤ 解読した結果、命令の内容が「4番地にあるデータを取り出せ」という指示ならば、主記憶装置の4番地にあるデータ「3」を取りに行く\n⑥ 取り出されたデータは「汎用レジスタ」に格納される'),(10,'02','CPUが処理する流れ','アドレス指定方式','前項で「主記憶装置の内部は細かく区分けされていて、それぞれの区画にアドレス（番地）が割り振られている」ということ、および「CPUが主記憶装置に格納されている命令やデータを取り出す際はこのアドレスを指定する」ということを解説しました。\nこのアドレスを指定する方法は「アドレス指定方式」と呼ばれ、大きく「直接アドレス指定」と「間接アドレス指定」の２種類があります。',NULL,NULL,NULL),(11,'02','CPUが処理する流れ','直接アドレス指定','直接アドレス指定とは、アドレス部に有効アドレスが入っている方式です。有効アドレスとは「CPUの処理対象となるデータが格納されているアドレス」です。\n下図を見てください。現在、命令のアドレス部は「20番地」を指定しています。主記憶装置の20番地を見にいくと、処理対象のデータを見つけることができます。つまり、20番地が有効アドレスです。',NULL,'/home/air/goalskill_t/back/img/section4/10.png',NULL),(12,'02','CPUが処理する流れ','間接アドレス指定','間接アドレス指定とは、アドレス部の値が主記憶装置上のアドレスを指し、そのアドレスに有効アドレスが入っている方式です。\n下図を見てください。現在、命令のアドレス部は「20番地」を指定しています。主記憶装置の20番地を見にいくと、そこには「25番地」という値が書かれています。そこで25番地を見にいくと、ようやく処理対象のデータを見つけることができます。つまり、25番地が有効アドレスです。','もう少し詳しく！ さまざまなアドレス指定方式\nアドレス指定方式には、これまでに解説した「直接アドレス指定」や「間接アドレス指定」以外にも、さまざまな方式があります。ただし、基本情報技術者試験で頻出なのは「間接アドレス指定」のみです。他の方式を覚える必要がありません。参考程度に掲載しておきます。','/home/air/goalskill_t/back/img/section4/12.png','上記のようにデータを間接的に指定するので、間接アドレス指定と呼ばれます。\n間接アドレス指定のメリットは、アドレス部に格納できないような「大きなサイズのアドレス」を主記憶装置に保存できることです。命令のアドレス部の容量には限りがあるので、あまり大きなサイズのアドレスは保存できません。一方、主記憶装置であれば、大きなサイズのアドレスも保存できます。このため、扱うアドレスのサイズが大きい場合は、間接アドレス指定を利用することになります。\n間接アドレス指定のデメリットは、主記憶装置へのアクセスが２回必要であるため、処理に時間がかかることです。'),(13,'02','CPUが処理する流れ','割込み','割込みとは、現在実行中のプログラムを中断して、別のプログラムに切り替えることです。割込みが起こると、CPUはプログラムカウンター（次に実行する命令のアドレスが格納されているレジスタ：p.148）にあるアドレスを別の場所に退避させ、そのうえで、割り込んできた命令のアドレスをプログラムカウンターにセットします。\nその後、割込みの命令が完了したら、CPUは退避させていたアドレスをプログラムカウンターに復帰させて処理を再開します。',NULL,'/home/air/goalskill_t/back/img/section4/13.png','割込みを行う主な目的は、優先度の高い命令があった場合に、CPUが他の命令を実行中であっても、優先度の高い命令を先に処理することです。こうすることで、CPUを効率よく利用できます。\nまた、プログラムエラーやハードウェアエラーなど、予測しない問題が起きた場合にも割込みが発生して、問題を解決するための命令が処理されます。'),(14,'02','CPUが処理する流れ','内部割込みと外部割込み','割込みは「内部割込み」と「外部割込み」に分類されます。',NULL,'/home/air/goalskill_t/back/img/section4/14.png','下表で内部割込みと外部割込みを細かく分類していますが、割込みの種類名や細かい内容が試験に出題されることはありません。そのため、種類名を覚える必要はありません。重要なのはあくまでも「それが内部割込みなのか、外部割込みなのか」です。この点に注目して表を確認してください。'),(15,'02','CPUが処理する流れ','内部割込みの種類','下表を見るとわかるように、内部割込みが発生する原因は、すべて実行中のプログラムです。',NULL,'/home/air/goalskill_t/back/img/section4/15.png',NULL),(16,'02','CPUが処理する流れ','外部割込みの種類','一方、外部割込みが発生する原因は、実行中のプログラム以外にあります。','試験にはコレが出る！\n\n・割込みが起こると、CPUはプログラムカウンターにあるアドレスを別の場所に退避させ、そのうえで、割り込んできた命令のアドレスをプログラムカウンターにセットする\n\n・割込みの命令が完了したら、CPUは退避させていたアドレスをプログラムカウンターに復帰させて処理を再開する\n\n・割込みの事例が示され、それが内部割込みなのか、外部割込みなのかを区別する問題が出題される\n\n・内部割込みの代表例は、ゼロ除算を実行したことによる割込み\n\n・外部割込みの代表例は、インターバルタイマによって指定時間経過時に生じる割込み','/home/air/goalskill_t/back/img/section4/16.png',NULL),(17,'03','さまざまな記憶装置','記憶装置の種類','記憶装置とは、その名のとおり、データを記憶する装置です。 身近にある記憶装置の具体例としては、持ち運びのできる「USBメモリ」や、スマートフォンに搭載されている「フラッシュメモリ」などがあります。\n記憶装置は必須の装置です。 もし記憶装置がない場合、スマートフォンで撮影した写真を保存することすらできません。\nコンピュータに搭載されている記憶装置は、大きく次の３つに分類できます。\n（１）主記憶装置\n（２）補助記憶装置\n（３）キャッシュメモリ',NULL,'/home/air/goalskill_t/back/img/section4/28.png',NULL),(18,'03','さまざまな記憶装置','(1) 主記憶装置','主記憶装置とは、CPUが直接読み書きをする記憶装置です。 主記憶装置は「主記憶」や「メインメモリ」と呼ばれることもあります。\n主記憶装置の仕組みについては前項で少し解説しました（p.146）。 主記憶装置の役割は、命令やデータを一時的に格納しておくことです。 CPUが処理できる命令の数には限界があり、プログラムが入力したすべての命令を一度に処理することはできません。 そのため、入力された命令はいったん主記憶装置に保存されます。 CPUはそこから命令を順次取り出して処理を実行します。',NULL,'/home/air/goalskill_t/back/img/section4/29.png','このように主記憶装置を使用することで、CPUは自身の処理能力を超える量の命令であっても、最終的には、すべて実行することができます。\n主記憶装置には次の２つの特徴があります。\n・主記憶装置は、データを高速に出し入れできる\n・主記憶装置に保存されたデータは、コンピュータの電源を切ると消滅する'),(19,'03','さまざまな記憶装置','(2) 補助記憶装置','補助記憶装置とは、主記憶装置を補助するための記憶装置です。 補助記憶装置の役割は、データを長期的に保存することです。 主記憶装置に保存されているデータは、コンピュータの電源が切れると消えてしまうため、必要なデータは電源を切る前に別の場所に保存しておく必要があります。 その際に利用されるのが補助記憶装置です。\n補助記憶装置には、OSやアプリケーションソフトウェア、各種データなどが保存されています。 代表的な補助記憶装置にはHDDやSSDなどがあります。',NULL,'/home/air/goalskill_t/back/img/section4/31.png',NULL),(20,'03','さまざまな記憶装置','(3) キャッシュメモリ','キャッシュメモリとは、CPUと主記憶装置の間にある超高速の記憶装置です。 CPUは、キャッシュメモリを使用して処理の待ち時間を短縮します。\n先ほど、主記憶装置の特徴の１つとして「データを高速に処理できる」と解説しましたが（p.160）、それはあくまでも補助記憶装置と比較した場合の話です。 主記憶装置の処理の速さは、超高速に処理を実行するCPUにとっては不十分です。 そのため、同じデータを何度も主記憶装置に取りに行くと、コンピュータ全体の処理速度が遅くなってしまいます。\nこの「CPUと主記憶装置の処理速度の差」を埋めるために使われるのがキャッシュメモリです。 キャッシュメモリはCPUと主記憶装置の間に置かれ、CPUから主記憶装置へのデータの読み書きはキャッシュメモリを介して行われます。 頻繁に使うデータを主記憶装置ではなく、キャッシュメモリに保存することで、CPUは速度の遅い主記憶装置に直接アクセスしなくて済むので、処理速度が上がります。','試験にはコレが出る！\nキャッシュメモリとは、CPUと主記憶装置の間にある超高速の記憶装置。頻繁に利用するデータをこの記憶装置に保存することで処理の待ち時間を短縮する','/home/air/goalskill_t/back/img/section4/33.png','コンピュータで使われている記憶装置。 左にいくほど「処理速度が速く、小容量」（CPU、キャッシュメモリ）、右にいくほど「処理速度が遅く、大容量」（主記憶装置、補助記憶装置）。'),(21,'03','さまざまな記憶装置','キャッシュメモリを使ったデータの読み込み方式','基本情報技術者試験では、キャッシュメモリに関する問題が頻出しているので、ここからはキャッシュメモリについてより詳しく解説していきます。 まずは「データの読み込み方式」から解説していきます。',NULL,NULL,NULL),(22,'03','さまざまな記憶装置','ヒット率','キャッシュメモリは通常「SRAM」（p.250）と呼ばれる非常に高価な半導体メモリで作られているため、主記憶装置よりも容量が小さいです。 一般的なPCでは、キャッシュメモリの容量は主記憶装置の１％にも満たないほどです。 そのため、キャッシュメモリのほうが主記憶装置よりも高性能であるとはいえ、CPUが利用するすべてのデータを、常にキャッシュメモリ上に配置しておくことは不可能です。 場合によっては、必要なデータがキャッシュメモリ上には存在せず、主記憶装置へ取りにいかなければならないこともあります。\nこのような場合に、必要なデータがキャッシュメモリ上に配置されている確率のことを「ヒット率」といいます。 一方、キャッシュメモリ上に必要なデータが配置されていない確率（必要なデータが主記憶装置上にある確率）は「１ − ヒット率」になります。',NULL,'/home/air/goalskill_t/back/img/section4/34.png','ヒット率が高いほうが、より高速に処理を実行できるため、CPUの処理効率も高くなります。'),(23,'03','さまざまな記憶装置','実効アクセス時間','CPUが主記憶装置とデータをやり取りする際にかかる時間のことをアクセス時間といいます。 アクセス時間は、先述したようにCPUと主記憶装置の間の橋渡し役にキャッシュメモリを利用することで短くできます。\nこの「キャッシュメモリを利用したときのアクセス時間」のことを実効アクセス時間といいます。 ここでいう「実効」とは、キャッシュメモリを用いたときの実際の効き目という意味です。',NULL,NULL,NULL),(24,'03','さまざまな記憶装置','実効アクセス時間の計算','基本情報技術者試験では、実効アクセス時間を計算する問題がとてもよく出題されます。 計算式は非常にシンプルなので、ぜひ覚えておいてください。実効アクセス時間は以下の式で計算します。$$\\text{実効アクセス時間} = \\text{キャッシュメモリへのアクセス時間} \\times \\text{ヒット率} + \\text{主記憶装置へのアクセス時間} \\times (1 - \\text{ヒット率})$$例えば、以下の条件の場合、実効アクセス時間は76ナノ秒となります。\n\n$$\\text{実効アクセス時間} = 20 \\times 0.9 + 580 \\times (1 - 0.9) = 76 \\text{ナノ秒}$$','試験にはコレが出る！\n実効アクセス時間やヒット率を計算する問題が出題される$$\\text{実効アクセス時間} = \\text{キャッシュメモリへのアクセス時間} \\times \\text{ヒット率} + \\text{主記憶装置へのアクセス時間} \\times (1 - \\text{ヒット率})$$','/home/air/goalskill_t/back/img/section4/35.png',NULL),(25,'03','さまざまな記憶装置','メモリインタリーブ','最後に記憶装置に関連して出題されるメモリインタリーブを紹介します。 メモリインタリーブとは、CPUから主記憶装置へのアクセスを高速化するために、主記憶装置内部を複数のバンクと呼ばれる単位に分割し、各バンクに並列にアクセスすることです。','試験にはコレが出る！\nメモリインタリーブとは、CPUから主記憶装置へのアクセスを高速化するために、主記憶装置内部を複数のバンクに分割し、各バンクに並列にアクセスすること','/home/air/goalskill_t/back/img/section4/36.png',NULL),(26,'03','さまざまな記憶装置','キャッシュメモリを使ったデータの書き込み方式','データの読み込み方式は、キャッシュメモリにデータがなければ、主記憶装置に見つけに行くだけなので、シンプルです。\n一方、データの書き込みでは、キャッシュメモリと主記憶装置という、２つの書き込み先があるため、どちらに書き込んだほうが効率的なのかを考えなければなりません。 そこで考え出されたのが「ライトスルー方式」と「ライトバック方式」という２つの方式です。',NULL,NULL,NULL),(27,'03','さまざまな記憶装置','ライトスルー方式','ライトスルー方式とは、CPUがキャッシュメモリにデータを書き込む際に、主記憶装置にも同じデータを書き込む方式です。 CPUはキャッシュメモリと主記憶装置の両方に同じデータを書き込みます。',NULL,'/home/air/goalskill_t/back/img/section4/37.png',NULL),(28,'03','さまざまな記憶装置','ライトバック方式','ライトバック方式とは、通常はキャッシュメモリのみにデータを書き込み、不要なデータをキャッシュメモリ上から追い出す際に、その追い出すデータを主記憶装置に書き込む方式です。','試験にはコレが出る！\n\nキャッシュメモリの書き込み方式には「ライトスルー方式」と「ライトバック方式」の２種類がある\n\nライトスルー方式：データ書き込み命令を実行したときに、キャッシュメモリと主記憶装置の両方に書き込む方式\n\nライトバック方式：キャッシュメモリだけに書き込んでおき、主記憶装置への書き込みはキャッシュメモリから当該データが追い出されるときに行う方式','/home/air/goalskill_t/back/img/section4/38.png','上記で解説した２つの方式の違いは「データを主記憶装置に書き込むタイミング」です。 ライトスルーは「即時」、ライトバックは「キャッシュメモリからデータを追い出すとき」です。\nライトスルー方式のメリットは、ライトバック方式のようにいらないデータを追い出す制御をしなくてよいので、仕組みがシンプルなことです。\n一方、ライトバック方式のメリットは、ライトスルー方式のように処理速度の遅い主記憶装置へのデータの書き込みを毎回行わなくてよいので、書き込み速度が速いことです。'),(29,'04','入出力インタフェース','入出力インタフェースとは','入出力インタフェースとは、簡単にいうと、ある機器と別の機器をつなぐ際に使用するケーブルの接続口の形状や、データをやり取りする方式のことです。 例えば、PC本体とマウスをつなぐケーブルの種類（USBなど）や、PCとディスプレイをつなぐケーブルの種類（HDMIなど）です。',NULL,NULL,NULL),(30,'04','入出力インタフェース','入出力インタフェースの分類','入出力インタフェースは有線または無線のいずれかに分類できます。 有線は信号線を通してデータをやり取りします。 一方、無線は信号線を使わずにデータをやり取りします。\n基本情報技術者試験に出題される主な入出力インタフェースは以下のとおりです。',NULL,'/home/air/goalskill_t/back/img/section4/39.png',NULL),(31,'04','入出力インタフェース','シリアルインタフェースとパラレルインタフェース','有線は「シリアルインタフェース」と「パラレルインタフェース」の２種類の伝送方法に分類できます。\nシリアルインタフェースとは、１本の信号線で１ビットずつ順次やり取りする規格です。\n一方、パラレルインタフェースとは、複数の信号線で複数のビットを並列（パラレル）にやり取りする規格です。','試験にはコレが出る！\n\n・入出力インタフェースは、有線または無線のいずれかに分類できる\n・有線のデータの伝送方式には、シリアルインタフェースとパラレルインタフェースの２種類がある。現在の主流はシリアルインタフェース','/home/air/goalskill_t/back/img/section4/40.png','上図を見ると、パラレルインタフェースでは同時に複数のデータを送信できることから、パラレルインタフェースのほうが伝送速度が速いように感じる人も多いと思いますが、実際は、パラレルインタフェースではデータの同期を取るのが難しいため、現在はシリアルインタフェースのほうが高速であり、主流です。'),(32,'04','入出力インタフェース','USB','USB (Universal Serial Bus) とは、キーボードやマウスなどの周辺機器を接続できる、現在最も普及している入出力インタフェースです。 「Universal（万能な）」という名前のとおり、他の入出力インタフェースよりも多くの周辺機器に対応しています。 また、「Serial（シリアル）」という単語が入っていることから、伝送方式がシリアルインタフェースであることがわかります。\nなお、「USB」と聞くと、USBメモリや、USBケーブルなどを思い浮かべる人も多いと思いますが、USBは機器の種類や記憶方式ではなく、入出力インタフェースの規格の１つです。 非常に優れた規格であるため、他の規格が廃れつつあります。 そのため、基本情報技術者試験においても、他の入出力インタフェースの出題が減り、USB関連の出題が増える傾向にあります。',NULL,'/home/air/goalskill_t/back/img/section4/41.png',NULL),(33,'04','入出力インタフェース','USB','USBは転送速度などを向上させるために、時代と共に発展してきました。 以下はUSBの主な規格です。',NULL,'/home/air/goalskill_t/back/img/section4/42.png','USB 2.0からUSB 3.0になった際に、最大転送速度が約10倍になっていることがわかります。'),(34,'04','入出力インタフェース','コネクタの形状','USBのコネクタ形状は、同じ規格内であっても複数種類があります。 下図は主なコネクタの形状です。\nただし、図中のすべての形状を覚える必要はありません。 「Type-C」の形状だけ覚えておいてください。 Type-Cは新しい形状であり、上下どちらの向きにしても接続できるという利点があります。','試験にはコレが出る！\n・USB 3.0の最大転送速度は、5Gbps\n・USBのType-Cのコネクタの形状が出題される','/home/air/goalskill_t/back/img/section4/43.png',NULL),(35,'04','入出力インタフェース','周辺機器との接続','ここでは「PCと周辺機器を接続する方法」を解説します。 基本情報技術者試験では「デイジーチェーン接続」が頻出です。 デイジーチェーン接続とその他の接続方法との違いを区別できるようになっておいてください。',NULL,NULL,NULL),(36,'04','入出力インタフェース','スター接続','スター接続とは、PCのコネクタに複数の周辺機器を接続する方法です。 機器同士をつなぐ箇所をコネクタといいます。\n下図では、PCの４つのコネクタにケーブルを接続して、４つの周辺機器をつないでいます。',NULL,'/home/air/goalskill_t/back/img/section4/44.png',NULL),(37,'04','入出力インタフェース','ツリー接続','ツリー接続とは、ハブを使って周辺機器を枝分かれさせて接続する方法です。 ハブとは、複数のケーブルを接続して相互に通信できるようにする集線装置です。\n下図では、２つのハブを使って、４つの周辺機器をPCに接続しています。',NULL,'/home/air/goalskill_t/back/img/section4/45.png',NULL),(38,'04','入出力インタフェース','デイジーチェーン接続','デイジーチェーン接続とは、周辺機器を数珠つなぎに接続する方法です。 デイジーチェーン接続に対応した周辺機器にはコネクタが２つあります。','試験にはコレが出る！\nデイジーチェーン接続とは、周辺機器を数珠つなぎに接続する方法','/home/air/goalskill_t/back/img/section4/46.png','デイジーチェーン接続では、PCと１台目の周辺機器をつなぎます。 次に、１台目の周辺機器と２台目の周辺機器をつなぎます。 これを繰り返すことで、PCと周辺機器が数珠つなぎになります。\nデイジーチェーン接続の利点は、ハブが不要で、配線がすっきりすることです。 机の上で複数のディスプレイを接続する際などによく利用されます。\n一方、デイジーチェーン接続の欠点は、１本のケーブルをすべての周辺機器が共有するので、周辺機器が多くなると伝送速度が落ちることです。'),(39,'04','入出力インタフェース','デバイスドライバ','ハードウェアではなく、ソフトウェアの話になってしまいますが、本項の最後に「デバイスドライバ」について解説します。\nデバイスドライバとは、PCに接続された周辺機器を制御するソフトウェアです。 デバイスドライバは、通常、周辺機器をPCに接続したときに自動的にインストールされます。 デバイスドライバのインストールが完了すれば、PCから周辺機器を操作できるようになります。','試験にはコレが出る！\nデバイスドライバは、PCに接続された周辺機器を制御するソフトウェア',NULL,NULL),(40,'05','入出力装置','入力装置と出力装置','入力装置とは、コンピュータにデータを入力するための装置です。 キーボードやマウスなどが入力装置の代表例です。\n一方、出力装置とは、コンピュータの処理結果を表示するための装置です。 ディスプレイやプリンターなどが出力装置の代表例です。',NULL,NULL,NULL),(41,'05','入出力装置','ディスプレイ','ディスプレイは、コンピュータが処理した結果（画像や動画なども含む）などを表示する装置です。\nディスプレイは人間の目では識別できないほど細かいマスで区切られており、そのマスを発色させることで、文字や画像などを表現します。 このマスのことをドット（もしくはピクセル）といいます。',NULL,'/home/air/goalskill_t/back/img/section4/47.png',NULL),(42,'05','入出力装置','dpi','dpi (dot per inch) とは、1インチあたりのドットの数を表す単位です。 1インチは2.54cmですから、dpiは2.54cmの長さの直線上にいくつドットがあるかを表します。 dpiはディスプレイやプリンターの性能を表す際に使われます。 dpiの数値が大きいほど、よりきれいな文字や写真、動画などを出力できます。\n例えば、通常のディスプレイで使われる96dpiであれば、1インチ (2.54cm) の直線上に96個のドットが並びます。\nなお、dpiは、1インチ四方に含まれる数を表すのではなく、1インチにいくつドットが並ぶのかを表すことに注意してください。',NULL,'/home/air/goalskill_t/back/img/section4/48.png',NULL),(43,'05','入出力装置','ポイント','ポイントとは、文字の大きさを表す単位です。 1ポイントは通常、1/72インチ（約0.35mm）です。 例えば、12ポイントの文字は12/72インチ（約4.2mm）です。 つまり12ポイントの文字が正方形ならば、縦と横の長さがそれぞれ約4.2mmになります。',NULL,'/home/air/goalskill_t/back/img/section4/49.png',NULL),(44,'05','入出力装置','3Dプリンター','3Dプリンターとは、3次元のデータをもとにして立体物を造形する機械です。 「プリンター」という名前が付いていますが、従来のプリンターのように、紙という平面（2次元）にインクをのせて印刷するわけではありません。 3Dプリンターは、実際に手を触れることができる立体物（3次元）を作ります。','試験にはコレが出る！\n・dpiは、1インチあたりのドットの数を表す単位\n・ポイントは、文字の大きさを表す単位\n・3Dプリンターは、熱溶解積層方式などによって、立体物を造形する','/home/air/goalskill_t/back/img/section4/51.png',NULL);

--
