高校情報Ⅰ・Ⅱ動画教科書/情報処理技術者試験対策

高校情報Ⅰ・Ⅱ動画教科書/情報処理技術者試験対策 勉強方法などを紹介 これから受験するにあたっての勉強工程を紹介

スパニングツリープロトコル(STP)とは?【CCNA ネットワークスペシャリスト】

スパニングツリープロトコル(STP)とは?

スパニングツリープロトコルはL2スイッチを冗長化してネットワークの信頼性を高める技術の1つになります。

そのため、環状にL2スイッチをつなぐことになります。

 

なぜ、環状につなぐ必要があるかという点についてみていきましょう。

例えば、総務部⇔経理部⇔営業部がそれぞれのスイッチで1本の線でつながっていた場合のことを考えてみましょう。

経理部と営業部のケーブルが何らかの理由で断線した場合、営業部から通信、および総務部・経理部から営業部への通信ができなくなります。

単純に考えると以下の様に営業部と総務部の間をつないでおけば、経理部・営業部間の通信をつかって経理部⇒総務部→営業部という通信が可能になります。

しかし、一般的にはL2スイッチを環状につなぐと、正常に通信できなくなります。

それは、ブロードキャストフレームがグルグル永遠に回り続けることになるからです。

ブロードキャスト⇒受け取ったポート以外 全部のポートからフレームを出力(フラッディングという)

なので、いつまでたっても収束しないことになります。(例:ARP)

このようなことを「ブロードキャストストーム」といいます。

これを阻止するために、スパニングツリープロトコルを使います。

スパニングツリー はその名の通り 木構造を表します。

いつか必ず行き止まりになるのが木構造の原則になります。※ぐるっと回る経路のない構造

スパニングツリープロトコルは物理的には環状になっていても、論理的に行き止まりになっているようなイメージになります。

上記のように論理的に行き止まりにしているポートのことを「ブロッキングポート」といいます。

つまり通信をブロックして環状にならないようにしています(論理的に)

あくまでブロックなので仮に総務部と営業部の経路が断線等して通信できなくなった場合、ブロックされていた営業部⇔経理部の経路のブロックが外れ通信ができるようになります。

スパニングツリープロトコルでは、スイッチ間で情報をやり取りしてどれをブロッキングポートにするかを決めてくれます。

そのやりとりする情報フレームのことを「BPDU」といいます。

このスパニングツリープロトコルの規格は「IEE802.1D」です。

木構造の一番上になるものを「ルートブリッジ」といいます。

※ルートスイッチではなく、ルートブリッジといっているのが気になるかもしれませんが、昔からのなごりということでブリッジという言葉で覚えておきましょう。

障害が起きてから、ブロッキングポートが開放されて通信ができるようになるまでに最大で50秒かかります。

50秒は微妙に長いですよね・・これを早くしたものがRSTP(R⇒ラピット⇒早い)というSTPがあります。

スパニングツリープロトコルの動作

ルートブリッジを決める

ルートブリッジを決めるうえで必要になるのが「ブリッジID」になります。

ブリッジIDの最も小さいものがルートブリッジになります。

ですので、上記の図だとスイッチAがルートブリッジになります。

コストを確認する

次に各ポート間経路のコストを確認します。コストは通信速度が速いほど小さい値になります。


練習の為にコストに適当な値を入れてみました。
(本来は回線速度ごとにデフォルト値があるのですが後ほど)

これでベースとなるネタができたのでBPDUをやり取りしながらブロッキングポートなどを決めていきます。

大まかな流れは以下となります。

①ルートブリッジの決定
 優先度は(ブリッジID+MACアドレス)が最も小さいもの。ブリッジIDが同じ場合はMACアドレスが小さいものがルートブリッジになります。

②ポート(接続口)を以下のポートに分類する

R ルートポート

  ルートブリッジに最も近いポート

 D 指定ポート(代表ポート)

  通常時使うもの(ルートポートでもブロッキングポートでもないも)

 B ブロッキングポート ※非指定ポートとも言います

  BPDUは行き来する 通常のデータフレームは通さない 行き止まり  通常時は使わないポート

ただし、BPDUは行き来します。

演習

ルートブリッジにはルートポートはありません。ルートポートにな代表ポートのみなります。

ルートポートを決めかた

①ルートポートを決める

 ※ルートブリッジにはルートポートはない

 ブリッジ毎のポート単位

 ルートブリッジ以外のブリッジごとに

 ルートブリッジへ到着する経路のコストが最小となるポートを探す

例えばスイッチBの上側はコスト15

 

右は5+20+85=110なので上側がルートポート

コストに差がない場合は、送信元ブリッジIDを比較し最も小さいBPDUを受け取ったポートがルートポートとなります。それでも同じ場合は、送信音のポートIDも比較対象となり、ポートIDが小さいものがルートポートとなります。

②指定ポート(代表ポート)を決める

  リンク(接続している回線)に着目すること!

  接続単位でルートブリッジに近い方

  ※ルートブリッジに直接つながってるものは必ず代表ポートとなる

ブロッキングポート

ルートポート 、指定ポートでもないもの

 

纏めると以下の様な感じになります。

画像に alt 属性が指定されていません。ファイル名: image-28.png

スパニングツリープロトコルの状態遷移

先ほど、使えなくなってから経路の再計算(ブロッキングポートが使えるようになる)まで50秒かかるといいましたが、具体的には以下の状態遷移となります。

 

ブロッキング(Blocking)
↓ ※最大20秒
リスニング(Listening)
↓ ※最大15秒
ラーニング(Larning)
↓ ※最大15秒        ↓
フォワーディング(Fowarding)  ブロッキング(Blocking)

※合計50秒

ブロッキング(Blocking)

・データ送受信不可能(MACアドレスの学習も無し)
 ・電源投入時の初期状態
 ・BPDUの受信のみ許可
 ・デフォルトで 20秒経過するかBPDUを受信するとリスニング(Listening)状態へ移行する
  ※20秒のタイマーを最大エージタイマーという

リスニング(Listening)

  ・データ送受信不可能(MACアドレスの学習も無し)
 ・BPDUの送受信を行う
 ・リスニング(Listening)状態からデフォルトで15秒待ってからラーニング(Larning)状態へ移行する
  ※この15秒間のタイマを転送遅延タイマという。

ラーニング(Larning)

 ・データ送受信不可能(MACアドレスの学習は可能)
 ・ラーニング(Larning)状態からデフォルトで15秒待ってフォワーディング(Fowarding)へ移行する

フォワーディング(Fowarding)

 ・データ送受信可能
 ・上記より全部で最大50秒間通信が不可となる。

 

ディセーブル(Disabled)

機器がシャットダウンしている(障害含む)状態をいいます。
シャットダウン状態なのでBPDUの送受信、MACアドレス学習共に行えません。

 

STPのブロッキングフォワーディングになるのが50秒かかる問題解決したのが
ラピッドスパニングツリープロトコル(RSTP:Rapid Spanning Tree Protocol) で最大でも5秒以内に通信可能となります。

IEEE802.1wとして規格されています。

 

BPDUの一連のやり取りで機器の役割が決まった状態をコンバージェンス(収束)といいます。

BPDUの送信間隔(Helloタイマー)

BPDUの送信間隔はデフォルトで2秒となっています。このタイマーのことをHello Timeといいます。

BPDUの主な情報

主に以下の情報がやり取りされます。
プロトコルID、バージョン
・ルートブリッジのブリッジID
・自分自身のブリッジID
・パスコスト(ルートブリッジに至るまでのパスコスト)
・自身のポートID
・Helloタイマーの値(BPDUの送信間隔)

マルチキャストで送信される。その時のアドレスは

0180.C200.0000 になります。

スパニングツリープロトコルの種類

先ほどRSTPについて少し触れましたが、スパニングツリープロトコルは大きく3種類あり。IEEE標準のものとCISCO独自のものがあります。IEEEのものはCISCO機器にも対応しています。

プロトコル IEEE規格 CISCO独自
STP IEEE802.1d PVST+
RSTP IEEE802.1w Rapid PVST+
MSTP IEEE802.1s

RSTPについて

RSTPでは状態が3種類しかありません。
 ・ディスカーディング(Discarding)
  ↓
 ・ラーニング
  ↓
 ・フォワーディング

STPとの違いはディスカーディング(Discarding)になります。 
STPのディセーブル、ブロッキング、リスニングが一つにまとまったイメージです。

ディスカーディングではMACアドレス学習・データ転送共に行いません。

 

 

ブリッジIDについての詳細

IEEE標準のブリッジIDは以下となります。
 ブリッジプライオリティ(16bit)+MACアドレス(48bit)

 ※ブリッジプライオリティのデフォルト値は32768

Cisco独自のSTPのブリッジIDは 拡張システムIDが上記に追加になります。
 ブリッジプライオリティ(4bit)+拡張システムID(12bit)+MACアドレス(48bit)
  ※ブリッジプライオリティはプライオリティは4096の倍数で指定する必要があります。

 

インスタンスについて

スパニングツリーでは、VLAN設定等のインスタンス(トポロジ)により以下の3種類に分類されます。
 ・CST (IEEE標準のSTP,RSTPで適用)
   VLANにかかわらず全体で1つ
 ・PVST+ (CISCO独自規格で適用)
   VLANごとに1つ
 ・MST (IEEE標準のMSTPで適用)
   複数のVLANで一つ ※VLANをグルーピング化

ルートガード機能

例えば現在 スイッチA(ブリッジID10)がルートブリッジだった場合、BPDUのやりとりで他のスイッチのブリッジIDが5が来た場合、ブリッジIDが小さい方がルートブリッジになりますが、不整合がしょうじているので、そのポートを不整合という状態にして送受信をできないようにする機能になります。

PortFastとは

PCやサーバを接続しているアクセスポートをPortFastといいます。
上記図の赤枠の部分に該当します。

通常のスパニングツリー遷移状態をブロッキングから直接フォワーディング(使える状態)にする機能です。
PCやサーバは直接スパニングツリーに参加しないデバイスなので上記の対応をすることですぐに利用することが可能になります。

パスコストのデフォルト値について

以下の値がデフォルト値として設定されています。

帯域幅 コスト
10Gbps 2
1Gbps 4
100Mbps 19
10Mbps 100


RSTPについて

ブロッキングポートではなくバックアップポート ※要追記

Ciscoルータを初期セットアップしてみた【CCNA、ネットワークスペシャリスト対策】

はじめに

CCNA対策の為にCisco IOSルータを中古で購入しました!

といいつつも、接続方法もセットアップ方法も何もわからない状態・・・
CCNAの教本やググったらいろいろセットアップ方法がでてきたので、自分自身で設定してみた方法を記録として残します。

はじめからルータを購入するつもりはなかったのですが
ヤフオク!でCCNAの本を調べていると以下の商品が!

本もほぼ新品で本だけでも16000円以上する。
ルーターCisco892ってのが2台!

13800円での出品だが、値下げ交渉で11,000円で落札!
メチャメチャお得に落札できました。(ルータ自体は無料?)

接続方法について

まず、迷うのがどこの穴(ポート)に何をつなげばいいかということです。

動画でも解説してみました~

コンソール接続

コンソールポート(RJ-45)

まずは、ルータの初期セットアップの為には、パソコンとルータをケーブルで接続する必要があります。

パソコンとルータを接続するにはコンソール接続という接続方式を利用する必要がります。

コンソール接続用のケーブル(ロールオーバーケーブル)が必要になります。
このケーブルはコネクタがRJ-45とDsub 9pin(メス)になっています。

コンソール接続の入出力端子は
ルータ側はRJ-45

PC側は DB9ピン(オス) である必要があり・・・

って、、うちのノートPCにはそのポートが存在しない!!

でも、同じ悩みのある方はいる様で変換ケーブルが販売されています。

上記でUSB⇒RJ-45の接続が可能となります。

接続してみた

パケットトレーサーでの作図

シスコが提供している無料シミュレータツールで作図すると上記のイメージ(ルータ名は違うのは気にせずに)

ルータ側のコンソールポートに接続
PC側USB接続

簡単に言うとロールオーバーケーブルを使ってPCのRS232ポート(今回はUSB変換)とルータ側のコンソールポート(RJ-45)とを接続しているイメージ

Teratermインストール

ルータの初期セットアップの為には、PC側にTeratermをインストールしておく必要があります。

シリアルを選択し コンソールケーブルを接続しているUSBポートを指定します。

※はじめはこのUSBポートが出なかったのですが、ドライバをインストールしたら表示されるようになりました
以下サイトを参考(ありがとうございます!)
https://synapse.kyoto/tips/FTDI_driver/page001.html

IPアドレスの設定をしてみる

目標は 

gigabitethernet 0番 ポートにIPアドレス 192.168.1.1(サブネット255.255.255.0)を設定
PC側⇔ルータ側がコンソールケーブルではなく普通のRJ-45ケーブルで接続しPINGが通ることです。

WAN GE 0がgigabitethernet 0番 ポート

まずは初期セットアップ

ルータ側の電源がOFFになっているとTeraTerm上何も表示されませんがONにすると以下の様な画面になります。

Would you like to enter the initial configuration dialog? [yes/no]:
yesなら対話モードで色々設定ができる
noなら手動で設定する。
今回はCCNAの勉強が目的なので手動モードで設定することにしますのでnoを入力

モードの遷移

設定を始める前にモードについて簡単に説明します。
CiscoIOS(シスコの機器のOS)には いくつかの操作モードがあってモードによってできることが異なります。

■ユーザEXECモード

プロンプトの表示は >
初期モードで主に機器のステータスを確認できるモード(制限あり)

enable と入力すれば↓のモードに移行

■特権EXECモード

プロンプト表示は #
 先ほどのユーザEXECモードでは制限があったものがほぼ無制限で確認可能

configure terminal と入力すれば↓のモードに移行(前モードに戻るにはdisable)

■グローバルコンフィギュレーションモード 

 プロンプト表示は (config)#
機器全体にかかわる設定を行うモードで
以下のモードに遷移できます。(前モードに戻るにはexit)

  • インタフェースコンフィグレーションモード
    プロンプト表示はrouter(config-if)#
  • ラインコンフィグレーションモード
    プロンプト表示はrouter(config-line)#
  • ルータコンフィグレーションモード
    プロンプト表示はrouter(config-router)#

今回のIPアドレスの設定はインタフェースコンフィグレーションモードを使います。

実機に設定してみる

はじめに、結論から投入したコマンドは以下になります。

■ユーザEXECモード⇒特権EXECモードに移動
enable

■各ポートの状態を確認
show ip interface brief

IPアドレスが設定されていないことの確認
× show running-config interface fastethernet0
〇 show running-config interface gigabitethernet0

■特権EXECモードからグローバルコンフィギュレーションモードに移動
configure terminal

IPアドレスを設定するポートに対してのインタフェースコンフィグレーションモードに移動
× interface fastethernet0
〇 interface gigabitethernet0

IPアドレスを設定
ip address 192.168.1.1 255.255.255.0

■インタフェースを有効にする
no shutdown

■インタフェースコンフィグレーションモード終了 グローバルコンフィギュレーションモードに移動
exit

■特権EXECモードに戻る
 exit

■各ポートの状態を確認(特権EXECモード)
show ip interface brief

IPアドレスが設定されたか確認(特権EXECモード)
show running-config interface GigabitEthernet0

で、上記で fastethernetのポートを×と書いているのは以下のエラーとなったためです。
Router(config-if)#ip address 192.168.1.1 255.255.255.0
% IP addresses may not be configured on L2 links FastEthernet0.
ルータ(L3層)と言いながらスイッチ(L2)ポートとして働いているってことらしい
VLAN設定などすることによってIP割振りは可能ですが

今回はルータとしてのポートにIPアドレスを割り振ることが目的なので
gigabitethernet0 にたいしてIPアドレスを割り振りました。参考
https://oshiete.goo.ne.jp/qa/2017542.html

 

show ip interface brief

インターフェイスの状態をシンプル(brief)に表示するコマンドです

Interface IP-Address OK? Method Status Protocol
BRI0 unassigned YES unset administratively down down
BRI0:1 unassigned YES unset administratively down down
BRI0:2 unassigned YES unset administratively down down
FastEthernet0 unassigned YES unset up down
FastEthernet1 unassigned YES unset up down
FastEthernet2 unassigned YES unset up down
FastEthernet3 unassigned YES unset up down
FastEthernet4 unassigned YES unset up down
FastEthernet5 unassigned YES unset up down
FastEthernet6 unassigned YES unset up down
FastEthernet7 unassigned YES unset up down
FastEthernet8 unassigned YES unset administratively down down
GigabitEthernet0 192.168.1.1 YES manual up up
Vlan1 unassigned YES unset up down

各ポートの状態が分かります


Interface
 →インターフェース名

IP-Address
 →割りてIPアドレス 割り当てがなければunassignedと表示


Method
 →IPの設定方法
  unset 設定されていない
  manual 手動設定されている
NVRAM 設定後メモリに保存されている状態

Status
 ⇒物理層(1層)の状態を表す
  administratively down インターフェースがシャットダウンしている状態
  up 正常動作
  down 正常に動作していない(シャットダウンではない)

Protocol
 →データリンク層(2層)の状態を表す
   up 正常動作
   down 正常に動作していない(シャットダウンではない) 

 



Status Protocol

 

 

PC側の設定

イーサネット設定画面で先ほど設定したルータと同じセグメントとなるように(ネットワーク部が192.168.1) IPアドレスを192.168.1.2(サブネット255.255.255.0)と設定

PC⇒ルータのPING疎通

コマンドプロンプトping 192.168.1.1と入力!

通った!

ルータ側からPCの疎通

ルータ側でping 192.168.1.2とPCのIPを指定

!⇒PING成功ということで !!!!!は5回成功

ちなみに線を抜いたら

. ピリオド PING失敗です。(あたりまえだけど)
ちゃんと設定ができました!

 

■永続化(電源OFFにしても保存した内容が消えないように)

copy running-config startup-config

running-configをNVRAMにあるstartup-configにコピー

 

無料eラーニング動画 サイト(LMS)を自分自身で構築してみた【eラーニングを選定している方へ必見!】

 

動画で学べるeラーニングサイト(LMS)を自分自身で構築してみましたので、eラーニングを選定している方に参考にして頂ければ幸いです。

f:id:riki12342000:20200510063637j:plain

 

 

■先に完成形披露(動画)

 

以下の様なe-ラーニングサイトを作成しました。(情報処理技術者試験対策講座)


eラーニングシステム(動画サイト)を自分で構築してみた【情報処理安全確保支援士】

 

■サンプルサイト

 

サンプル講座としてログインできるようにしましたので、実際にログインして使ってみてください。

toppakou.com

 

 

■追記 実際に使ってみたい方 構築してみたい方へ

 

この記事投稿時に有料でのソースコード提供依頼(データベース定義dll含む)、

構築提供依頼を頂いています。

 

ご希望の方はココナラで出品しましたので

以下で確認頂けると幸いです。

 

coconala.com

 

 ・ソースコードの提供(要望があれば、設計逆おこしはこれから行います) 

 ・ロリポップ(250円/月~)への初期セットアップ

 ・数人日以内の小さめの改修要望 等々 

 お気軽にご相談ください

 

 

■eラーニングを導入しようとした理由

 

 以前から、情報処理技術者試験の対策講座をDVDで提供していましたが、以下の理由よりオンライン講座(eラーニング)への乗り換えを考えました。

  • 年々解説するコンテンツ量が増えて、DVD焼くのがかなり大
  • 動画の管理がかなり大変
  • 動画に誤りがあった場合、受講生への訂正に都度都度ダウンロードサイト作成し周知している
  • 商品発送に関する手間、郵送代・物品などの経費が掛かる
  • DVDの特性上いつでもどこでも学べない
  • 一応MP4で提供しているが、携帯端末に移し替えるの大変らしい

 

 ■構築しようとしたきっかけ

 

一言でいうと、外部でe-ラーニングシステムを提供している業者は多々ありますが・・・お値段「高すぎる!」

 

「e-ラーニングシステム 格安」でググってみると

・格安で・・7万円・・・一か月あたり!!!

・360円・・・1名1か月 年間一人3600円でも受講生1000人になったら

 年間360万円!!

 

う~ん、そんなに売れてません 大赤字でございます(涙

 

仮にUdemy等の動画教育サイトに登録すれば、eラーニングシステムは提供されていますが、、、

 

ほとんどの利益を持っていかれる上に自由度がない。

 

元々、飲食業で経営をしてた時に、家賃やらの中間コストをいかに減らせることが大切と感じている。

 

だから、コンテンツ提供する場合、自分の土地で売る つまり 自分自身でeラーニングサイトを持つのが最も儲かるという結論である。

 

オープンソースは?

 

オープンソースmoodleというのがありますが、設定が難しそう・・

やりたいことに対してオーバースペックで受講生からしてみたらどういう風に操作していいかわかりずらい。

 

■実現したいこと

  • 受講生情報の管理(ログイン管理)
  • 受講生の講座区分に応じた動画の閲覧
  • メニューで動画をカテゴリで分けて詳細画面へ遷移
  • 見た目かっこよくしたい
  • 閲覧実績がある動画を受講生ごとに管理したい
  • 動画を時短再生(最大3倍速)にしたい
  • タブレットスマートフォンの画面にも対応したい
  • すきま時間有効利用できるようにしたい!!

 

多分これだけの要件でも、外部発注すると3人月(300万円)以上はとられるでしょうね、、

 

でも、システム業界は大半が「人件費」

JAVAPHP、HTMLなどは無料でそれをどうコーデングするかの費用

 

なので、、、、勉強もかねて自分でやってみることにした。

 

 ■制約事項

 

システムができた後にどこのサーバーに乗せるかでランニングコストが大きく違ってくる。

JAVAで開発してしまうと、AWSなどでサーバー領域もあわせて構築することになる。

クラウドサービスはたくさんあるが、サーバーから構築となるとこれもお高い!

 

現状のホームページは、ロリポップを用いており

月額たったの250円!!(固定)

※受講生に快適な環境を提供するため今は1,000円(月)のプランに切り替えていますが、それでも安い。

 

ただ、動的コンテンツを載せるために以下の言語を使う必要がある。

 ・PHP

 ・MySQL

 

最近はやりのPysonとかJAVAとか考えたが色々制約があるため、あまり経験のないPHPを使うことにした。

 

で、デザイン面も重要になってくるので

 HTML、CSSの知識も習得要

 

■構築前勉強方法

 

 必要な言語知識は以下

  • PHP
  • HTML
  • CSS
  • SQL(MySQL)
  • JavaScript

ありきたりな言語ではあるが、当方長年(10年以上)上流工程(システム設計)がメインであるため、PHP、CSS(デザイン)に関してはほぼ未知の領域。

 

なので、以下の講座を受講して基礎学習した(全部で5日程度)

prog-8.com

月額たったの980円で学びたい放題!めちゃめちゃわかりやすい

 

ドットインストール

https://dotinstall.com/

 

こちらも月額1000円くらいで動画で学びたい放題

 

昔は書籍何千円も出して買っていたのに、便利な時代ですね。

 

書籍が売れない時代・・・eラーニング時代!!

 

やばい!急がねばと基礎学習を終えて実践に入る。

 

●構築技術編

休みの片手間で構築を行うため、可能な限り早く作業できるようにした。

 

本来は基本設計・詳細設計があるべきだが、(自分自身の要件的に)小規模であることから設計はデータベース設計レベルの最小限に抑えて、コーディングしながら構築することにした。(会社ではNG発言。でも、この業界後付け設計よくありますよね!)

 

■画面遷移

 ログイン画面

 ↓

 ↓⇒⇒ユーザー情報変更画面

 ↓

 講座一覧画面

 ↓

 詳細画面(動画閲覧)

 

※各画面ではセッション管理を行う

 

■講座・動画登録に関して

 

 動画の登録に関しては、ロリポップで無料でPHPadminのGUIデータベース変更ツールが提供されている(使いやすい)ので、動画はFTPでアップロードし、パスや講座名をデータベースに直接設定する方法とした。

f:id:riki12342000:20200510083913p:plain


 

CSVでの流し込みなどもできるので、エクセルでデータ作って流し込みも可能(初期のDVDデータ移行はそれを利用)

 

 

■データベース設計

 ここは長年経験はあるができるだけシンプルにするようにした。

  • ユーザー情報
ユーザ情報    
     
日本語 英語
購入者ID kounyuusya_id VARCHAR
メールアドレス mail VARCHAR
パスワード password VARCHAR
講座ID kouza_id VARCHAR
受講年度 zyukou_year VARCHAR
  • 講座一覧(大分類
講座情報      
       
日本語 英語
講座ID kouza_id VARCHAR PM、SC、
講座名称 kouza_name   プロジェクトマネージャ試験7つの突破口、
並び順 sort NUMBER  

 

  • 講座概要(中分類
講座分類    
     
日本語 英語
講座ID kouza_id VARCHAR
講座分類ID kouza_bunrui_id VARCHAR
講座分類名称 kouza_bunrui_name VARCHAR
講座分類詳細 kouza_bunrui_syousai VARCHAR
講座分類説明 kouza_bunrui_setumei VARCHAR
並び順 sort NUMBER

 

  • 講座詳細(小分類⇒これに動画情報を設定
講座詳細    

 

   
日本語 英語
講座ID kouza_id VARCHAR
講座分類ID kouza_bunrui_id VARCHAR
講座詳細ID kouza_syousai_id VARCHAR
講座詳細名 kouza_syousai_name VARCHAR
講座詳細説明 kouza_syousai_setumei VARCHAR
追加年度 add_year VARCHAR
時間 time VARCHAR
ファイル種類 file_syurui VARCHAR
ファイルパス file_path VARCHAR
ファイル名 file_name VARCHAR
並び順 sort NUMBER

 

  • 受講情報 →ユーザーごとの進捗を記録

  省略(受講詳細とユーザーと日時の組み合わせ)

 

  • ログイン情報 →いつだれがアクセスしたかの記録

  省略

 

これだけ!シンプルだけど将来拡張性は高い!

 

■選ばれた動画とスクリーンへの連動

 

講座の動画の数分、for分回して、JavaScriptで差別化できるようにした。

 

PHP

<a href="JavaScript:message('<?=escape1($row['file_path'])?><?=escape1($row['file_name'])?>','ch<?php echo($check_no -1); ?>','<?=escape1($row['kouza_syousai_id'])?>')"><?=escape1($row['kouza_syousai_name'])?></a> <font size="-1">(<?=escape1($row['time'])?>)</font>

出力HTML

<a href="JavaScript:message('.ファイルパス','ch1','40')">設問1</a> <font size="-1">(3分41秒(56MB))</font> <a href="JavaScript:message('.ファイルパス,'ch1','40')">設問1</a> <font size="-1">(3分41秒(56MB))</font>

 

受取側javasccript

    //動画選択時の処理
    function message(me,check_no,kouza_syousai_id) {

     gr_check_no = check_no;
     gr_kouza_syousai_id = kouza_syousai_id;

     window.scrollTo(0,0);//親ウィンドウ内なら
     parent.scrollTo(0,0);//フレーム内とか子ウィンドウなら親ウィンドウを指定
     
     document.querySelector("#videopreview source").src =me;
     document.querySelector("#videopreview").load();

 

■速度変換

 

VIDEOタグのデフォルト機能で速度変換ができるので、

以下の様にJavaScriptと組み合わせでスクリーンに連動した

    <div class="wrapper">
        <video id="videopreview" controls controlsList="nodownload"    autoplay        oncontextmenu="return false;"   playsinline>
        <source src="XXXXXXXXXX" >
        </video>
        
        <br>
                    再生後にボタンをクリックしてください。<br>
                <button onclick="speed(1.00)">標準速度</button>
                <button onclick="speed(1.25)">1.25倍速</button>
                <button onclick="speed(1.50)">1.50倍速</button>
                <button onclick="speed(1.75)">1.75倍速</button>
                <button onclick="speed(2.00)">2.00倍速</button>
                <button onclick="speed(2.50)">2.50倍速</button>
                <button onclick="speed(3.00)">3.00倍速</button>
        
    </div>

     function speed(n){
        var v = document.getElementById("videopreview");
        v.playbackRate = n;
    }

 

 ■受講情報管理

 

動画再生しながらチェックボックスクリック時(又は動画再生30秒後)に、

受講情報テーブルを非同期で更新するようにした。Ajaxを利用

 

逆にチェックを外した時に削除情報を流す。

 

 function checkbox_action(check_no,kouza_syousai_id,bool) {
     //alert(bool + check_no + kouza_syousai_id);
     
  if (bool) {
    //alert("チェックボックスがonに変更されました。");  
            var postData =  {"kounyuusya_id":"<?php echo($kounyuusya_id); ?>",
"kouza_id":"<?php echo($kouza_id); ?>""kouza_bunrui_id":
"<?php echo($kouza_bunrui_id);?>"};
 
            //Javascriptの変数は切り出さないとオブジェクトに格納できない
            postData['kouza_syousai_id'] = kouza_syousai_id;
            
            $.post(
                 "受講情報更新の.php",
                 postData,
                 function(data){
                     //alert(data); //結果をアラートで表示
                 }
            );  
    
    
  } else {
    //alert("チェックボックスがoffに変更されました。");
            var postData =  {"kounyuusya_id":"<?php echo($kounyuusya_id); ?>"
"kouza_id":"<?php echo($kouza_id); ?>""kouza_bunrui_id":
"<?php echo($kouza_bunrui_id);?>"};
            //Javascriptの変数は切り出さないとオブジェクトに格納できない??
            postData['kouza_syousai_id'] = kouza_syousai_id;
            
            $.post(
                 "削除の.php",
                 postData,
                 function(data){
                    // alert(data); //結果をアラートで表示
                 }
            );  
    
    
  }
}

 

■デザインの工夫

当方、デザインセンスはないが、今回CSSを学ぶ中で見た目に可能な限りこだわってみた。

f:id:riki12342000:20200510075414p:plain


例を以下にあげる

 

マウスカーソルをあてた時に行の色を変えるのと同時に徐々に色を変化させる

  .douga {
    max-width700px;
    width100%;
    padding5px 10px;
    margin0 auto;
    background-colorrgb(191919);
    floatleft;
    border-bottomdotted rgb(122122121);
    colorwhite;
    transitionall 0.5s;
  }

  .douga:hover {
    background-colorrgba(2552552550.3);
  }

 transitionall 0.5s; ってのが0.5秒かけて   .douga:hover に定義された色に変更していくテクニック

スタイルシートってすごい!!!

 

あとは境目を薄い黒の点線にする

  border-bottomdotted rgb(122122121);

 

■かかった工数

 ドットインストールやProgateの勉強時間は30時間

 構築にかかった時間 6日(土日利用)×8時間≒50時間

 

 合計80時間 1人月150時間として0.5人月位

 

 当方の客先との契約単価が当時130万円くらいだったはずなので、

 原価ベースでは65万くらいかな

 

 会社で発注すると設計・数人レベルでの打合せ・テスト・各種ドキュメントの作成で

 多分6倍の工数3人月(300万)は取られるはず

 

■運用費用(年間)

 一般のEラーニングの平均月額10万として

 外部サービス利用:10万×12か月=120万!

 

 自作:1,000円(ロリポップサーバ)×12か月=1万2千円!

 

 100分の1に抑えることできました!

 

■追記 実際に使ってみたい方 構築してみたい方へ

 

この記事投稿時に有料でのソースコード提供依頼、構築提供依頼を頂いています。

ご希望の方は以下までご一報頂けると幸いです。(ココナラで提供予定)

 

info@toppakou.com

 

 まずは、トラブル防ぐため、目的など認識齟齬がないか やり取りさせてください。

■感想

 

 自作して正解でした。

 デザインはココナラ(個人スキル)で発注しようと思ったのですが、以前デザインお願いした人が体調不良とのことで辞退・・

 

結果、自身でCSSも学んで基礎は身についたので自作して正解でした。

 

情報処理技術者試験対策講座について

 

 最後に宣伝させてください。

 

 IT業界では知らない人のいない情報処理技術者試験について

 私個人で以下の講座を企画・作成しています。

 

 今まで述べたように、必要経費を最小限に抑える(全部自分でやる)ことで

大手予備校と同レベルの内容を格安で提供することを目標としています。

 

toppakou.com

 

 

toppakou.com

 

toppakou.com

 

f:id:riki12342000:20200503215244j:plain

 合格の喜びの声も頂いているので興味のある方は是非受講お願いします。

 

■追記 実際に使ってみたい方 構築してみたい方へ

 

この記事投稿時に有料でのソースコード提供依頼(データベース定義dll含む)、

構築提供依頼を頂いています。

 

ご希望の方はココナラで出品しましたので

以下で確認頂けると幸いです。

 

coconala.com

 

 ・ソースコードの提供(要望があれば、設計逆おこしはこれから行います) 

 ・ロリポップ(250円/月~)への初期セットアップ

 ・数人日以内の小さめの改修要望 等々 

 お気軽にご相談ください

 

以上

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

※現在、

 

 

 

 

 

あああああああああああああ

 

いいいいいいいいいいいい

 

おおおおおおおおおおおおお

 

<div class="login">
 <h1>突破口ドットコム <br>オンライン講座</h1>
 <br><font color="FFFFFF">ログインボタンを押してください</FONT>
 <div><font color="FFFFFF"><?php echo $errorMessage ?></FONT></div>
    <form method="POST" id="loginForm" name="loginForm" action=""  >
     <input type="text" name="kounyuusya_id" value="demoPM" required="required" />
        <input type="text" name="password" value="demoPM" required="required" />
        <button type="submit" id="login" name="login"  class="btn btn-primary btn-block btn-large">ログイン</button>
    </form>

 

 

【一発合格】システムアーキテクト試験勉強法 令和2年試験に向けての~過去問動画解説~

 システムアーキテクト試験一発合格しました。

これから受けられる方へ勉強法について共有できたらいいなと思って投稿しますおねがい

f:id:riki12342000:20200503214408j:plain

 

 

しかも合格率12.7%!!(例年15%以下)全区分の中で最も低いびっくり

 

システムアーキテクト試験は例年全区分の中でも低い合格率であることが言われています。

 

さらに応用情報まで合格している人が受ける試験なので

ですので取得したら

めちゃめちゃ優秀として見られる!

まぁ私はさておき、

周りで高度区分を二つ以上持っている人は、例外なく頭いい(自頭が切れるというか)のが私のシステム業界での経験で入れえることです。

 

 

 

次受験される方の為 

試験・論文対策、おすすめテキスト問題集を情報共有します。

 

f:id:riki12342000:20200503215244j:plain

システムアーキテクト試験ドットコム〜午後の突破口 論文/記述対策〜

 

【今回合格率】

※2017年ですが2020年現在の合格率も記載しますー
 12.7%(合格者/受験者(応募者) 703人/5539人(8678人))

  ※情報処理試験の中で最も合格率の低い試験の様です。
 

 参考 直近合格率

 2013年 14.1%

 2014年 15.0%

 2015年 13.2%

 2016年 13.9%

 2017年 12.7%

 2018年 12.6%

 2019年 15.3%

 

【得点分布詳細】
 
 

 

今回、午前Ⅱが難しかったと思っていましたが、

突破率は8割近くで思ったより高かったです。

 

単純に私自身、応用情報技術者の復習を怠ったのが64点とギリギリになった

原因だと思っていますえーん

 

午前Ⅱでも応用情報から問題が何問も出るので

受験される方は応用情報技術者の午前問題を復習を忘れずに!しょんぼり

 

 

午後Ⅰもギリギリでしたが、突破率の高さで救われた感じです。

 

例年午後1の突破率は6割程度なので、ちゃんと対策をしていれば突破できる感じです。

 

 

論文はプロジェクトマネージャ試験でかなり勉強していたので

テクニック的なものは全区分で共通的に使えると実感しました。


【受験対象者像】


 一言で言えば、アプリケーション要件定義・設計をメインで行う
 「システムエンジニア」の最上級資格になります。

 旧名称が「アプリケーションエンジニア」で
 要件定義、基本設計、総合試験フェーズのアプリケーション業務設計に対する考え方が問われます。
 
 前回のプロジェクトマネージャ試験と違い
 私自身10年近く要件定義~基本設計、総合テストを中心に携わっているので
 今の自分自身に最もマッチした資格であるため受験しました。

 論文・長文読解もあるため、文系的要素が濃いです。

 本来の流れは
 応用情報⇒システムアーキテクトorスペシャリスト系⇒プロジェクトマネージャですが
 年1回しか行われないため、タイミングの関係でプロマネが先になりました。

システムアーキテクト概要(IPAサイト)
  https://www.jitec.ipa.go.jp/1_11seido/sa.html

 


【勉強するにあたって】


 勉強の基礎ベースとなるのが、応用情報技術者試験の知識となります。
 
  前回のプロジェクトマネージャ試験時は250時間勉強時間確保できましたが
 今回は業務が多忙(毎週日曜日出社、21-22時まで業務の日々)だったため、
 トータル50時間程度しか勉強時間が取れませんでした。

  来年取得目標にしていたところもあり、午前敗退にならないように午前Ⅱを中心に勉強しました。
 
  午後は業務経験重視の傾向があり、覚えることは情報処理試験の中で最も少ない感じです。

【出題形式・合格基準・概略】


 すべて基準点以上で合格となる(60点以上、論文はA評価)
  「午前」は応用情報技術者レベルの基礎知識問題(足切り試験)
  「午後」は専門分野の長文読解、論文(難関)

 

 

  午前Ⅰ 午前Ⅱ 午後Ⅰ 午後Ⅱ
試験時間 9:30~10:20
(50分)
10:50~11:30
(40分)
12:30~14:00
(90分)
14:30~16:30
(120分)
出題形式 多肢選択式
(四肢択一)
多肢選択式
(四肢択一)
記述式 論述式
出題数
解答数
出題数:30問
解答数:30問
出題数:25問
解答数:25問
出題数:4問
解答数:2問
出題数:3問
解答数:1問

    ※IPAホームページより抜粋

 

 ・午前Ⅰ(50分 30問(四肢択一)
   応用情報技術者午前の問題から抜粋して出題される
   応用情報合格者・過去高度区分で午前Ⅰに合格している人は2年間免除
   
 ・午前Ⅱ(40分 25問 (四肢択一)
   システムアーキテクト基礎知識
   応用情報午前問題過去3年分(500問程度)+過去問の答え(200問程度)さえ暗記していれば、
   楽に突破できる(今回も7割以上の方が突破)

 ・午後Ⅰ(90分 3問の内2問を選択)
   1題目当たりに設問が6~9題あり、記述式で解答する。
   「現行システムの現状⇒問題点⇒新システムの要件⇒設計」という流れで文書構成されている

   出題数が少ないので設問1つ当たりの配点が非常に高い
   問題の本文が長文で時間内に解くには訓練が必要です。

     応用情報 午後 システムアーキテクチャーの更なる応用版?

  ・午後Ⅱ(120分 2問の内1問を選択し論述)
   出題されている論旨に即した文書を手書きで2,500字~3,000字(原稿用紙7枚程度)で論述する
   論述内容を頭の中で考える時間は15分に抑えないと、時間切れになる可能性が高い

   今回はシステムアーキテクトとしての論文なので
   プロジェクトリーダ、チームリーダ観点でプロジェクトマネージャの指示を受けて
   実際の作業(顧客調整、設計)を行う立場で論述しなければいけない。
 
 □実際の問題
   https://www.jitec.ipa.go.jp/1_04hanni_sukiru/mondai_kaitou_2017h29.html#29aki

【勉強方法・感想】

 システムエンジニアの上級資格にもかかわらず、
 インターネット上の対策サイトは非常に少ないのが実情です。
 (午後Ⅱ論文に苦手意識がある方が多いようです)

 ◆午前Ⅰ(択一)


  プロジェクトマネージャ試験合格の為、2年間免除

 

  プロジェクトマネージャに合格しているので今回も免除だけど、

  免除資格を取得したときの勉強方法について展開します。

 

   -応用情報技術者ドットコム

  詳細解説まで網羅しています

http://www.ap-siken.com/

   -youtubeでの動画学習(無料)

   わくわくスタディワールド関係がおすすめ

 

わくわくスタディワールド動画

 

  -応用情報技術者過去問スマホアプリ(無料)

  昔と違って今は、youtubeで無料で応用情報技術者(基本情報含む)の動画解説を掲載している会社があります。
  ※たぶん、午前を無料(広告代わり)にして、午後対策講座で受講生を集める戦略だとは思いますが。

 

かなりのクオリティなので午前対策としては、本を読んで理解するより、この動画解説の方が分かりやすいし効率的です。
応用情報技術者午前過去5年分(400問程度)を電車の中など空き時間を見つけて学習しました。

 

後は応用情報の午前対策問題集

 

 

 

 高度試験専用の午前対策問題集もあります。

情報処理教科書 高度試験午前Ⅰ、Ⅱ2017年版

 

 ◆午前Ⅱ(択一)
  -システムアーキテクト午前過去問スマホアプリ(無料)
  午前Ⅱ過去5年分の答え覚えておけば、突破できるはずが
  今回は応用情報の過去問の割合が多かったため、64点でぎりぎりでした。
  (システムアーキテクトとしての過去問題は全問正解)
 
  応用情報の過去3年分の午前問題(500問)の確認はしておくべきだったと思ってます(時間がとれなかったので今回まったく復習せず)

 

プロジェクトマネージャ試験に合格したこともあり(一年前に午前免除資格を取得済みというのもありますが) 今回はここからの勉強です。

プロジェクトマネージャ試験は2回目で合格しましたが、(プロジェクトマネージャの)午前Ⅱは1回目80点⇒2回目64点と下がってしまいました。

これは、1年目は応用情報の勉強もしてたこともあり、応用情報処理の試験からも難題も出題されたからです。2年目は1年目で午前免除資格を取得したこともあり、午前1の勉強をしなかったこともあります。

 

ということで、範囲がかぶっている部分も合わせて午前1の勉強もしておくことをおすすめします。

 

まずは無料スマートフォンアプリ

f:id:riki12342000:20170730141948p:plain

10年前からは考えられませんでしたが、今はスマートフォンアプリが無料で提供されてますので、電車など通勤時間の空き時間を使って、勉強できます。

 

午前Ⅱは暗記科目でシステムアーキテクトもプロジェクトマネージャ試験同様に過去問のオンパレードなので、まずはスマートフォンアプリで答えを暗記するということが大切です。

 

 システムアーキテクト専用の午前問題集も発売されていますが、ちょっと古いです。。

プロジェクトマネージャの時も以下の問題集を買いましたが、なくてもよかったかな(上記に挙げた方法で必要十分だった)

 

 


 ◆午後Ⅰ(記述式)
  現行システムの問題点⇒新システムの要件⇒設計作業 の文書を一通り読んで
  問題に答えていく感じです。

    主に「平成29年度 システムアーキテクト合格教本」を使用

  過去4年分の過去問を1回ずつといた程度です。
  (プロジェクトマネージャは過去20年分を4回やりましたが、、)

  初学の状態でも5~6割(ボーダライン近く)の正答率でした。
  長年業務設計ばっかりやっているので、何気に普段の業務で応用力がついたのかと思っています。

  言い換えれば、設計業務と直結している(業務に役に立つ)資格試験だと感じています。

  過去、私と同じプロジェクトで、お客様からのサービス仕様書を元に
  要件定義やデータモデリングを一緒にやっていた方は、
  初学でもボーダに近い点数が取れると思います。
  (実際に50~70点の間に全体の7割が固まっています)

  今回は問1(保険会社のマイナンバーシステム構築)、
  問3(役所の勤怠管理システムの構築)の問題を選択。

  業務知識が無くても、国語力(本文中から答えを探す)で何とかなる問題も多々ありました。

 

システムアーキテクトの午後Ⅰにおいても国語的な要素が強く

短時間で要点を把握する能力(45分で1問解き終わるスピード)

が大切になってきます。

 

短時間で確実に正答を導ける訓練の為に有効と思われる問題集・テキストについて紹介します。

 

★おすすめ動画対策講座

システムアーキテクト試験午後の突破口(突破口ドットコム)

 

toppakou.com

 

売上No1ということもあり、テキスト的な部分と問題集的な部分とがバランスよく配置されています。

午後Ⅰ、午後Ⅱ両方に対応していて、午後対策をするうえではなくてはならないテキストの1つであるといえます。

 

 システムアーキテクト試験ドットコム〜午後の突破口 論文/記述対策〜

 

 

 

 

 上記のシステムアーキテクトの教科書と並ぶテキストになります。

上記のテキストと見比べて自分に合った方を選ぶ方がいいでしょう

時間がある方は両方やるとライバルに差をつけられると思います。

 

 

 

 

 今まで紹介したものはテキストを兼ねていましたが、純粋に過去問を解きたい(詳細な解説が知りたい)という方には以下の問題集がおすすめです。

 

 ◆午後Ⅱ(論述)
  プロジェクトマネージャ試験で論文のイロハは100時間以上勉強していたので
  論文サンプルを10本読んだ程度。

  論文試験はコツさえつかめば実は簡単
   ・実際の要件定義・設計作業を行うシステムアーキテクト目線で書くこと
   ・求められていることから、逸脱していないこと
   ・字数不足でないこと(今回も2時間常に書き続けてました⇒手が馬鹿になるほど辛い)  
   ・経験したことのアピールが大切なので、具体的な数値を使って、リアル感を出すこと

  を守ればA判定になります。

  今回は、
 『非機能要件についてどのように顧客と要件定義工程でつめていったのか?』
  という設問でしたので、過去に経験した案件の内容をベースに論述しました。
   
  使っている数値はその場で思いついた適当なそれっぽい数値で
  半分はその場で思いついた(論旨に従った)想像の世界です。

  【論述内容の概略】
   以下のような内容を10分位で頭の中で整理して
   2500字に膨らませて論述

     ◇背景と現状の問題点
   ・情報通信機器販売会社 顧客管理システム再構築
   ・窓口の待ち時間が2時間になる場合がある
   ・料金プラン変更レベルでも2時間待たされ、顧客から苦情が来ている
       ・度重なる開発で保守性が著しく低下している(商用故障が多発)
   ・顧客流出につながるため、顧客管理システムを再構築
   
   ◇新システムの内容・目的(非機能要件)
   ・タブレット端末を導入し簡単な料金プラン変更などはオペレータ待ちしなくても
    お客様自身でタブレットを操作できるシステムを構築
   ・オペレータの通常業務の効率化
   ・保守性の高い構造設計を行い、現行の20%経費削減
   ・登録ボタンを押したあとの処理が現状1分⇒10秒に短縮させる
    
   ◇非機能要件の詳細(最も重要)
    ※非機能要件はこれ以外にも沢山ありますが、書きやすい内容で記載

    ■操作性
     窓口に来たお客様自身で操作するので、直感的にわかるビジュアル
     ⇒プロトタイピングモデルを行い操作性を確認
      予算の都合で全132画面中10画面に絞る(数値は適当)
     ⇒一般ユーザのモニタ試験を行い意見を集める(お年寄りでも操作可能であること)

    ■保守性
     データモデリング(構造化)
     複雑な業務判定をエクセルの2次元マトリクスで設計し
     それをXMLの別コンテンツとして切り出す
    (複雑な判定論理をロジックに持たず、設計マトリクスをそのまま実装資産として流用)

    ■性能
     ハードウェア増強⇒要件を満たすには2000万かかるが
     30秒短縮でお客様と合意(予算と要件のトレードオフ

    ■セキュリティ
     もし、個人情報が見られたら経営問題になる
     CRUD図でアクセスコントロールについて顧客と綿密に意識合わせする
     ※APサーバ、DBサーバは窓口オペレータと同じものを使うため

    ◇結果
    プロジェクトは成功し、
    2015年顧客満足度1位に輝き、経営層からも高い評価を受けた。

 

 

 

高度区分で「論文」があるからと当試験区分を避ける方が多いと思いますが、

論文は論文のイロハと引き出しを増やせれば、得意分野になる可能性の高いものです。

 

私自身、はじめ論文例を見たときは、「こんなの自分にかけない」と思いましたが、

実はいかに論文を作成するうえでの「部品」(モジュール)をたくさん集めるかということにあります。

つまり、暗記科目の一つだとおもっても過言ではないといえます。

 

モジュールを増やす方法は、以下の方法になります。

・午後Ⅰ問題から論文に使えそうなネタを集める

・過去の午後Ⅱの論文で問われている内容を把握して、サンプル論文で自分自身のモジュールにできそうな部分を集めていく

 

モジュール集めで使えるテキストはいかになります。

論文対策の専用の本になります。

合う論文合わない論文があると思うので、自分に合ったものを抜粋してください。

また、文書をそのまま覚えるのではなく、部品として使えるようにモジュール化して自分自身の「モジュールノート」を作成するといいでしょう。  

システムアーキテクト 合格論文事例集 第4版 (論文事例集シリーズ)

システムアーキテクト 合格論文事例集 第4版 (論文事例集シリーズ)

 

 

 こちらは、先程紹介した本ですが、論文についても詳細解説があります。 

情報処理教科書 システムアーキテクト 2017年版

情報処理教科書 システムアーキテクト 2017年版



【まとめ】
 今回は、業務が多忙の為、勉強時間はかなり少なかったですが、
 これまで携わったプロジェクトの経験自体が実践的な勉強時間になったと感じています。

 要件定義(お客様調整)~基本設計工程をメインで行っている方にはお勧めできる資格です。

 

toppakou.com

 

f:id:riki12342000:20200503215244j:plain

 

 

 

2020年(令和2年度)向け プロジェクトマネージャ試験 過去問 論文サンプル 2019年春 午後2問2

 

プロジェクトマネージャ試験の令和2年度向けに

2019年春 午後2問2の過去問解説をしたいと思います爆  笑

 

 

以下が今回の問題になります。

 

 

■骨子作成


まず、設問に対する骨子作成をしていきましょう!

 

 

 


上記の赤線部分が骨子作成時の題目になります。

人によって誤差はあると思いますが、上記の赤文字部分の論旨を逃した時点でOUTになると思ってください。

 


私が作成した章立てはいかになります。

 


◆骨子 章立て

 

 

設問ア

 1-1 プロジェクトの特徴

 1-2 プロジェクト内の取り組みだけでは解決できなかった品質、納期、コストに影響し得る問題

 


設問イ

 2-1 解決に役に立つ観点や手段の分析

 2-2 問題解決の観点や手段の活用方法と取り組み

 

 

 

設問ウ

 3-1 問題解決の取組について有効性の評価

 3-2 今後の改善点

 

 

 
プロジェクトマネージャ試験 論文サンプル 2019年春_午後2問2_骨子作成【その2】

では、この章立てに本文に記載がある、例を当てはめていきましょう。

 

 

http://toppakou.com

◆骨子 本文対応付け

 

 

設問ア

 1-1 プロジェクトの特徴

  ※納期、品質、コストにつながる観点であなたの言葉で書く

 

 


 1-2 プロジェクト内の取り組みだけでは解決できなかった品質、納期、コストに影響し得る問題

 ・(納期・品質・コストに影響し得る)問題発生時には、

  ステークホルダへの事実関係の確認などを行ったうえで、プロジェクト内の取組によって解決を図る

  ↓(しかし)

 ・プロジェクト内の取組だけでは問題を迅速に解決できず、プロジェクトが計画通りに進まないと懸念される場合

  PMはプロジェクト内の取組とは異なる観点や手段などを見いだし、原因の究明や解決策の立案を行うことも必要である。

 


 


設問イ

 2-1 解決に役に立つ観点や手段の分析

 2-2 問題解決の観点や手段の活用方法と取り組み

 


 ・プロジェクト内の取組だけでは問題を迅速に解決できず、プロジェクトが計画通りに進まないと懸念される場合

  PMはプロジェクト内の取組とは異なる観点や手段などを見いだし、原因の究明や解決策の立案を行うことも必要である。

  ↓(このような場合)

 ・プロジェクト外の有識者に助言を求めたり、他のプロジェクトから得た教訓やプロジェクト完了報告書などの知見を参考にしたりすることがある。

  ↓(こうした助言、知見を活用する場合)

 ・プロジェクトの特徴のほか、品質、納期、コストに影響し得る問題の内容、問題発生時の背景や状況の類似性などから

  有識者や参考とするプロジェクトを特定する。

  ↓

 ・有識者と会話して得た助言やプロジェクト完了報告書を調べて得た知見などに、プロジェクト内の取組では考慮していなかった観点や

 手段などが見いだせれば、これらを活用して、問題の迅速な解決に取り組む

 


  ※複数の知見、助言があって良い →絞る!

 

 

 

設問ウ

 3-1 問題解決の取組について有効性の評価

   ※本文、具体例無し

 


 3-2 今後の改善点

   ※本文、具体例無し

 


http://toppakou.com

 

 

■本文の分析


納期、品質、コストに影響する内容


というのが何なのかということが迷うと思われる。

 


・兆候をテーマにする(レビュー指摘件数、勤怠など)

 


 PMのレベルとしては高いことをアピールしたいので

 基本的な部分で、書いてしまうと、PMとしての資質を疑われるかもしれない

 


なので、顧客に非があるパターンで書いた方がいいと思われる。

 


1つの例として

「スコープ変更」というキーワードが思いつけるかが

合否の分かれ目となると思われる。

 


スコープ変更については過去の論文例で沢山例がある

こちらに非があるよりも、顧客都合にして

過去に同様にスコープ変更があったプロジェクトがあったかを

完了報告書を調べる、その時のプロマネに直接話を聞くというながれが

スムーズ

 


具体的に顧客との意識合わせなど、いつ、どこで、だれが、何をということを明確にして全体として整合性のある論文を書ければ合格レベルになると思われる。

 


------------------------------------

自分自身のプロジェクトの知見では解決できない為

他プロジェクトを参考にするネタを何にするかが制限時間内で

思いつくかが重要である。

 


突破口の論文例はすべて要点を暗記しておくことが前提。

 


その他の過去の例

・要員同士の対立

・キーマンの離脱

・顧客間の対立

・要件がユーザー内で決まらない状態での基本設計開始

 

 

 

 

◆骨子 詳細化(自身の体験と紐づけて具体化・定量化)

 

 

設問ア

 1-1 プロジェクトの特徴

  ・プロジェクトの概要(内容)プロジェクト期間 自身の役割(PM!)は必ず書くこと

   ・納期/品質/コストの観点で後続につなげるために、プロジェクトの概要・体制(登場人物)はしっかり記載する必要がある

 

 ※突破口の例文がそのまま使えるため省略

 

 

 

1-2 プロジェクト内の取り組みだけでは解決できなかった品質、納期、コストに影響し得る問題

 ・(納期・品質・コストに影響し得る)問題発生時には、

  ステークホルダへの事実関係の確認などを行ったうえで、プロジェクト内の取組によって解決を図る

  ↓(しかし)

 ・プロジェクト内の取組だけでは問題を迅速に解決できず、プロジェクトが計画通りに進まないと懸念される場合

  PMはプロジェクト内の取組とは異なる観点や手段などを見いだし、原因の究明や解決策の立案を行うことも必要である。

 


 いつどの工程で問題が起こったのかを具体的に記載する

  ・プロジェクトが開始されて4か月が経過した2017年4月(基本設計工程中盤)において

  納期・品質・コストに大きく影響する問題が発覚した。

 


  ・ライバル社B社が新規のサービスを発表した、そのサービスに対応するため、新たな要件が追加になった。

  要件追加に対する追加費用は出るが、新規に要員追加したとしても立ち上げ期間(既存メンバが教育)加味したら

  納期が厳しく品質が保てなくなる。最悪手戻りが発生し、コストを圧迫する。 

 

 

 

 

 

設問イ

 2-1 解決に役に立つ観点や手段の分析

  観点の洗い出し※1-2の問題点と対応づけること!(類似性)

  観点は以下である。

   ・基本設計途中での要件追加

   ・本来の機能のリリース時期と同じ時期にリリースすること

 


   ↓

  上記を基に過去のプロジェクト完了報告書をベースにスコープ変更にが起こった事例を探す

   ↓

  類似の事象が見つかる

   ↓

  当時のPMが社内に存在

   ↓

  プロジェクト完了報告書とともにアドバイスをもらう

 

 

 


 2-2 問題解決の観点や手段の活用方法と取り組み

 


   解決の観点、手段(過去の午後1や午後2例)

    ・段階的リリースを行う

    ・機能ごとに優先度を決める

    ※顧客を巻き込みながら臨場感を出す

 

 

 

設問ウ

 3-1 問題解決の取組について有効性の評価

   ※本文、具体例無し


    2-2で書いた内容の延長戦(今回のプロジェクトで有効性の評価)

 

 

 3-2 今後の改善点

   ※本文、具体例無し

    反省点書かないといけないので、90点とれたけどのこり10点の改善点のイメージ

   ほかのプロジェクトの情報を集めなくても今後は大丈夫という風に書きたい。

 

 

 

 


では、私が書いたサンプル論文です。

 

 

◆論文サンプル(読みやすいように、改行を多用してますが、本番時は基本は詰めて書いてください。)

 


設問ア

 1-1 プロジェクトの特徴

 私は大手SI企業(Z社)に勤めて15年になる。

 今回論述するのは情報通信機器販売会社(A社)の顧客管理システム再構築のプロジェクトである。

 私がA社の現行システムに携わったことから、再構築プロジェクトのプロジェクトマネージャに任命された。

 


 A社の現行システムは稼動開始されて10年が経過しており、度重なる要件追加の影響で保守性が著しく低下している。

 


 また、そのことに起因する商用故障も発生している。

 そこで、システムの構造を見直し、保守性を高め現行と同等の案件を取り込む際にも

 10%の経費削減を目標としてプロジェクトが開始された。

 


 プロジェクトの特徴としては、納期と品質である。  

 納期については、2017年3月から開始される春の商戦に間に合わせることが

 経営者会議での決定事項であり2017年2月末に稼動開始することが強く求められている。

 


 品質に関しては、「稼動開始後の6ヶ月間の商用故障0件」が掲げられている。高い信頼性が求められている。

 

 

 

1-2 プロジェクト内の取り組みだけでは解決できなかった品質、納期、コストに影響し得る問題

 要件定義工程が完了し、基本設計工程が中盤に差し掛かった2016年6月、

 客先A社のライバル会社であるB社から新規サービスが2017年3月から開始されると発表された。

 


 A社においても、当サービスに対抗する施策を取り込まなくては、大幅な顧客流出が懸念された。

 A社で緊急経営会議が開かれ、対抗するサービスをB社サービス開始までにリリースすることが必達とされ

 顧客管理システム再構築のプロジェクトリリース時期に合わせることを依頼された。

 


 要件追加に対する追加費用は出るが、新規に要員追加したとしても立ち上げ期間(既存メンバが教育)加味したら

  再構築プロジェクトの納期が厳しく、プロジェクトの特徴である商用故障0件という品質が保てなくなる。

  最悪手戻りが発生し、コストを圧迫する可能性も高い。

 


 要件追加に伴う工数は15人月で同時リリースの為には再構築プロジェクトを2か月延伸しなければならない状況である。

 

 

 

 


設問イ

 


 2-1 解決に役に立つ観点や手段の分析

  要件追加(スコープ変更)に伴う、品質、納期、コストに影響し得る問題について

  私自身が過去に経験したプロジェクトでは例がないため、プロジェクト内の取組だけでは解決が困難な状況であった。

 


  私の所属するSI企業B社では過去のプロジェクト完了報告書をデータベース化し、社内でナレッジ共有を行っている。

  プロジェクトの概要(スケジュール、規模)だけではなく、プロジェクト期間中に起きた問題点やその解決策の概要からも検索できるようになっている。

 


  そこで、その社内システムを利用し以下の観点で類似プロジェクトを検索した。

   ・プロジェクト規模が今回のプロジェクト規模(100人月)と同等(+ー20人月)であること。

   ・プロジェクト開始後の要件定義~基本設計工程において急なスコープ変更

 


 そうしたところ、以下、2件の類似プロジェクトがヒットした。

 ①大手小売りシステムの再構築プロジェクト(以下、Kプロジェクト)

  ・プロジェクトの基本設計段階で顧客の急な依頼によりスコープ変更

 ②医療システム再構築プロジェクト(以下、Iプロジェクト)

  ・プロジェクトの基本設計段階で企業合併が発生し、大幅なスコープ変更

 


 それそれのスコープ変更の概要はシステム上からも検索できるが、

 幸い①②のプロジェクトともに社内に現在も在籍しているプロジェクトマネージャの為、プロジェクト完了報告書の内容をベースに直接話を伺うことにした。

 

 

 

 


 2-2 問題解決の観点や手段の活用方法と取り組み

 


 スコープ変更が起こった類似プロジェクトのPMへのヒアリングの結果

 問題解決方法はそれぞれ以下であることが、あることが分かった。

 


 ①クラッシング(Kプロジェクト)

  要件追加自体の費用が出ることは同じだが、追加要件についてクラッシング(人員追加)を行い納期を守ることができた。

 


 ②段階リリース(Iプロジェクト)

  クラッシングも視野に入れたが、システムの何度が高いため、クラッシングを行っても既存システムの教育に時間がかかり

  既存メンバの稼働も教育にとられることからクラッシングを行うことは断念。

  納期までに必ずリリースしなければいけない機能に優先度を決めて、納期必達機能とそれ以外の機能に分けて段階的にリリースした。

 

 

 

今回のプロジェクトと照らし合わせてみると、クラッシングを行う場合、人員教育にかかる時間を加味すると納期遅延と品質低下を招く可能性が高い。

そのため、Iプロジェクトで行った「段階リリース」の方向で、有効性を確認し顧客と調整することとした。

 

 

 

 

 

 


設問ウ

 


 3-1 問題解決の取組について有効性の評価

   

参考にしたIプロジェクトにおいて「段階リリース」行った際に、優先度の確認を行ったとのことで

今回のプロジェクトにおいても優先度の確認と段階リリースのスケジュール確認を行った。

 

 

 

2017年2月に必ずリリースしなければならない機能とリリース時期が遅れても大丈夫な機能にわけた。

観点は、リリースすることを公に周知しているか否かになる。

 


公に周知しているものはフロントエンド機能が中心で、バックエンド機能については周知はしていない為、

フロントエンド機能に直接関係するバックエンド機能以外はリリース時期を後にずらせる可能性がある。

 


全220機能のうち

 2017年2月にリリースすべき機能は150機能であった。

 


上記の検討結果を元にスケジュールを決定した。

具体的には、2017年2月に150機能とB社サービス対抗機能をリリースし

上記の機能開発が終わり次第、リソースを残りの機能の開発に割り当てる計画だ。

 


今回のスコープ変更に伴うリリース第一弾は予定通り2017年2月にリリースし、

残りの機能は2017年6月にリリースする段階リリース案を顧客側に提示し、承認を得られた。

 

 

 

 

 

 

3-2 今後の改善点

 

今回のプロジェクトで予定通り2017年2月と5月に無事にリリースすることができた。

段階リリースのおかげで、品質・コストともに目標値に収めることができた。

B社対向サービスも2月に同時リリースできたことから、A社経営層からは高い評価が得られた。

 


今回のスコープ変更に関して過去のプロジェクト実績のおかげでリスクを回避できた。

 


今後は、プロジェクトの計画段階でもこのようなスコープ変更のリスクを加味した対応策を顧客側と意識を合わせておく必要があると考える。

 


今回のプロジェクトで得た知見をプロジェクト完了報告書(社内データベース)に詳細にまとめて、今後同様のプロジェクトを行うプロジェクトマネージャへナレッジとして引き継ぎたい。


ーーーーーーーーーーーーーーーーー

 

 

上記のような感じです。

 


内容を思い浮かべるのが若干難しい問題なので、

最後まで整合性の取れた内容で書ければA判定になると思います。

 


更に詳しい解説は以下にアクセスお願いします。

 

突破口ドットコム

http://toppakou.com