新人SE山本の学習履歴

2019/07~ 札幌市内でSEやってます。業務中にハマったことや、今後役立ちそうな知識を自分向けに記事に残していきます。

2020/05/10 プロジェクト管理

印象に残った部分は太字で記述している。

リンク部分はすべて引用。

↓主に参考にさせていただいたのはこちらの29問~55問。

https://www.youtube.com/watch?v=lhIYEgiajv4

理解できない部分はすっ飛ばしました。

 

CCM(変更調整マトリクス)の人間特性理論を考慮した管理
一つの作業に集中する
・積極的なスケジュール
完了確立50パーセントの工期で進める。
・リレー走者の労働倫理(金メッキを貼らない。☆これは自分よくやるので注意)
バトンを渡されて速やかにはじめ、終わらす。
・遅れてもペナルティーなし
最初から半分は遅れる予定。
・早く完了してもペナルティーなし
次回のスケジュール短縮などはしない。
・余裕を統合して、全体余裕で管理(個々のアクティビティでは管理しない)
バッファの消費具合で管理する。
 
●バーチャルチーム(共通目標を達成するため、相互に直接顔を合わせないまま作業を進めるチーム)
Q.効率的にPJを進めるには?
※コロケーション...一か所に集合して作業を行うこと。
・信頼関係の構築が重要。
 
●コンフリクト・マネージメント
プロジェクトという環境ではコンフリクト(意見の対立)は避けられない。
メンバーで解消し、初期のうちに対処すべき。非公式に解決することが望まれる。
混乱が続く場合には、強制的な処置を講じる。
・最も望ましい解決策は、WIN-WINの関係になる、”問題解決”
・緊急時には、PMが発生する、”強制”
 
文化への認識(海外との取引)
相手の国の文化や習慣を理解し、尊重する。
会社の規則に反している場合にも、考慮しなければならないケースがある。
自身の権限に合わない場合は、上層部に相談。
 
プロジェクトやフェーズの終結プロセス
・完了基準や終結基準を満たすために必要な活動
・次フェーズまたは他部門(運用・生産など)に引き渡すための活動
・記録を収集し、教訓を集め、情報を保管する活動
ステークホルダーの満足度を測定する活動
 
Q.プロジェクトが途中で中止となった場合は?
・スコープの妥当性確認
完成の度合いと範囲を確定し文書化し、相手側責任者の承認を受けるべき。
契約書の内容により、受け取り額を確定するために重要。
↓※この後で、プロジェクト終結プロセスに移行する。
 
●クレーム管理
クレーム
・合意されない変更
・解釈上の問題となる変更
・異議のある変更
Q.契約内容の解釈で顧客と意見が合わない場合にどうするか?
調達コントロールプロセスの一部。
解釈上の紛争は、不明点、不一致点は「まず確認」。交渉を通しての解決が望ましい。
コレスポンデンス
(相手が契約に対する解釈上の変更とみなすものがある。このようなものは、
個別に特定して文書として残しておく。)
 
●予備設定分析
・コンティンジェンシー予備
特定されたリスクが発生した場合の予算、費用
PJ総予算にも、コスト・ベースラインにも、スケジュール・ベースラインにも含む。
プロジェクトマネージャーの裁量で使用できる。
クリティカルチェーンのアクティビティの最後に設けるバッファである。
・マネジメント予備
見えていないリスクが発生した場合の予算、費用
PJ総予算には含まれるが、コスト・ベースラインには含まれない。
※スケジュール・ベースラインには含まれないので、予備設定分析では設定しない?
プロジェクトスポンサーの承認が必要。
 
●資源ブレークダウン・ストラクチャー(Resource Breakdown Structure:RBS
資源の見積もりプロセスのOUTPUT。
利用資源を区分と種別によって分類し、階層構造化(ブレークダウンストラクチャ)したもの。
(例
人的資源
エンジニア
上級設計要員
中級設計要員
マネジメント要員
加工員
機器設備
etc...
※その他のブレークダウンストラクチャーに、
・仕事(Work:WBS
・リスク(Risk:RBS
・組織(Organization:OBS)
・製品(Product:PBS
・費用(Cost:CBS
 
●権力の種類
・報奨 ・処罰 ・専門家
・公式(地位)    ・後ろ盾(影響力や魅力)
 
●ステークホルダ(利害関係者)マネジメント
・ステークホルダ分析
どのステークホルダーとの利害関係を考慮すべきか判断するための分析
利害、期待、影響度を特定し、プロジェクトの目的に関連付ける。
手順1:ステークホルダー特定
係わりを持つ可能性のある全てのステークホルダーを特定
手順2:潜在的な影響の特定
ステークホルダーからの影響や支援を特定する。
手順3:反応の評価
状況を仮定し、主要なステークホルダーの反応・対応を評価する。
 
※エンゲージメントのマネージメントプロセスにより、
ステークホルダーのニーズや期待を満足させ、プロジェクトの成功確率を引き上げる。...https://xtech.nikkei.com/atcl/nxt/column/18/00138/031100250/
 
●プロジェクトマネジメント・オフィス(PMO)
プロジェクトマネジメントの支援機能を提供する。
異なる度合いのコントロール力や影響力を持っている。※以下、下ほど強い。
・支援型:他のプロジェクトからの情報や教訓へのアクセスを供給、助言を与える。
・コントロール型:支援とともに、さまざまな手段でコンプライアンスを要求する。
・指揮型:プロジェクトを直接マネジメントし、掌握する。
 
●プロジェクトスポンサー
・目的を達成するためにプロジェクトに資金や資源の提供をする
プロジェクトマネージャは、常にプロジェクト情報や問題をプロジェクトスポンサーに知らせること。
 
●回収期間法(Pay Back Period:PBP)
投資額をどの程度の期間で回収できるかを示す。
回収期間 = 投資額 ÷ 投資額に追いつくまでのキャッシュインフロー
 
●正味現在価値法(Net Present Value:NPV)
1.プロジェクト成果としてのキャッシュフローの現在価値合計を求める。
2.それからプロジェクトへの投資額を引いた額が「正味現在価値」
 
●統合変更管理プロセス
プロジェクト仕様や納期の変更への対処。
プロセスにおける注意点
・承認済み変更だけが実施されるよう働きかける
・変更要求の速やかなレビュー、分析、承認
・承認済み変更のマネジメント
・ベースラインの一貫性の維持
・プロジェクト全体にわたる変更の調整
・変更要求に関するすべての影響の文書化
 
オーソライズとは?...公認する、承認される。正式な権利や認可を得る
コンセンサス...複数人からの合意(集団の総意、意見の一致など)
 
●変更要求の対応
統合変更管理プロセスか、リスクの定性的定量的分析プロセスで対策を考える。
統合変更管理プロセスにおいては、PMが最終的な責任を負う。
 
●プロジェクト計画
プロジェクトマネジメント計画書は、すべての部門に承認され、
現実的で、実現可能だと皆が信じていることが必要である。
計画は非常に重要で、すべてのプロジェクトは計画されねばならぬ。
 
●事象リスクと非事象リスク
不確かさを「見積もる」。精度レベルに相当するのが、「非事象リスク」
・変動リスク
目標のずれ
・曖昧さリスク
あいまいな知識
例)運転でいうと信号や交通量による誤差
不確実な事象の発生が「事象リスク」←リスクマネジメントではまずこれを優先してターゲット
例)車の故障など。
 
●個別リスクと全体リスク
個別リスク
発生が不確実な事象。一つ以上のプロジェクト目標にプラスまたはマイナスの影響を及ぼす。
リスク登録簿に登録される。
全体リスク
不確実性の影響。個別リスクを含む。成果の変動の影響に、ステークホルダがさらされる。
リスク報告書にまとめられる。
 
●デザイン・フォー・エックス
信頼性、サービス、使い勝手、安全性、品質などを、設計段階から想定しておくこと。
 
以上。
 
 
 
 
 
 
 
 
 
 
 
 
 

2020/04/07 VB.net②

今日の学習内容。テキストのみで基本的な内容だが、ちゃんと理解できていなかったり、知ったかしていたこともあったので。

 

●ダイナミックヘルプ

F1押下でフォームデザイン画面でコントロールに対するヘルプをオンラインで表示できる。
 

●アッパーキャメルケース(パスカルケース)

vbではだいたいこれ。クラス名とかフォームとか、最初も大文字からで、後々の単語の区切りも大文字から。MainWindow,PriceSearch
 

プレフィックス(接頭辞)

変数の用途やコントロールの種類がわかるように先頭につける。以下、見慣れないもの。
変数名の先頭にこれを付ける記法を【ハンガリアン記法】という。
▼データ型
boolean...bln Enum...enm Long...lng byte...byt
▼コントロール
RichTextBox...rtb StatusBar...stb CheckListBox...clb CommonDialog...dlg ContextMenu...cmn
DataTimePicker...dtp GroupBox...grp,gbx ListView...lvw Panel...pnl ProgressBar...prb RadioButton...rbt
 

●スコープ

ブロックスコープ...For~NextやIf~Thenなどのブロック内で宣言され、ブロックの実行中のみ有効。
プロシージャスコープ...特定のメソッド内で宣言。メソッドの実行中のみ有効。ローカル変数とも呼ぶ。
モジュールスコープ...メソッド外で宣言。内部のすべてのメソッドから利用可能。メソッドが終了するまで有効。
プロジェクトスコープ...Publicキーワードを使い宣言。同一のプロジェクト内のすべてのモジュールから利用可能。
グローバル変数、パブリック変数と呼ぶ。
 

アクセシビリティ

Public...無条件であらゆる場所からアクセス可能。
Friend...同じプロジェクト内からアクセス可能。
Protected Friend...クラス内部、またはクラスから派生したクラス、同じプロジェクト内からアクセス可能。
Protected...クラス内部、またはクラスから派生したクラスからのみアクセス可。
Private...同じクラスや構造体、標準モジュール内部だけ。
 

●算術演算子

【\】 もしくは円マーク...除算結果の整数部分だけ。
【Mod】...除算結果のあまり。
【^】...べき乗。
【&】もしくは【+】...文字列結合。
 

●論理演算子

【Xor】...排他的論理和を求める。2つの式のどちらかがTrueの場合にのみTrueの結果を返す。
 

●Like演算子

result = string Like pattern
 

●String型とStringBuilderクラス

String型はサイズが固定長で、書き換えが起こるたび新たにインスタンスが生成され、これを参照するためのアドレスが変数に格納される。
これまでに参照していたデータはガベージコレクタによって回収されるまでメモリ上に残る。
何度も書き換えを行う場合、パフォーマンスを鑑みてStringBuilderにすべき。

2020/04/01

最近サブで使っていたノートPCを使う頻度が増え、画面が小さく首も痛くなってきたため、メインPCとこれとでディスプレイを共用することに。一々コンパネからマルチディスプレイ設定変えるの面倒だったので、バッチファイルを作成したのでその経過。

 

f:id:YAMATOMA:20200402005911p:plain

バッチ作成は何だかんだで未経験だったので、軽くまとめる。

①【@echo off】 

echoコマンドは対話させるための文字列出力。これがデフォでONになっていので、最初にoffにして余計なソースコード見せないように。

offにする方法は二通りで、コマンド前に@つけるか、echo offとするか。後者だとそれ以降はechoされなくなるが、echo offコマンド自体がechoされてしまうので、それを防ぐための【@echo off】

②【set オプション】

/P:ユーザーが入力した値を代入

/A:右側の数式の評価結果を代入

③【変数】

変数設定: set INPUT_MODE= で初期化。=との間にスペースあると空白含みの値が代入されるので注意。

参照:変数名の前後に%が必要。 set %INPUT_MODE%==e

④【IF】

これは他の言語とほぼ同じ構文。switch文は無かった。GOTOラベルも同じ。

⑤【clsコマンド】

画面の出力表示内容のクリア。

⑥【pauseコマンド】

何かしらキーが押されるまで一時停止。

ちなみに、【>nul】とコマンドの後ろにつけると、そのコマンドの出力を表示しない。

f:id:YAMATOMA:20200402012241p:plain

>nulがないとこうなる

⑦【exit】

終了。

 

以下実行結果↓めちゃシンプル。

f:id:YAMATOMA:20200402011955p:plain

f:id:YAMATOMA:20200402012121p:plain

 

他にも気になる内容があったので、時間見つけて勉強する。

以下参考にさせていただきました↓

https://qiita.com/plcherrim/items/4432263ef34418175fa9

https://qwerty.work/blog/2018/11/multidisplay-mode-change-command.php

https://web-creators-hub.com/windows/bat-set-s/

https://www.adminweb.jp/command/bat/index2.html

https://so-zou.jp/software/tool/system/command-prompt/command/set.htm

http://capm-network.com/?tag=Windows%E3%83%90%E3%83%83%E3%83%81%E3%83%95%E3%82%A1%E3%82%A4%E3%83%AB%E5%A4%89%E6%95%B0

 

 

 

2020/03/24 OracleMaster_DB12c_Bronze_DBA12c①

今日の学習履歴。

DBA 第一章 Oracleデータベース 管理の概要

●リレーショナルデータベース(RDB)...Oracleがそう。
1.表形式でデータを表現するため、データ構造がわかりやすい
2.SQLによる論理演算を指定できるため人間が使いやすい
3.整合性規約によってデータの整合性を維持できる
 
※テーブルの、行と列が交差する「値を格納する部分」はセルではなく、フィールドと呼ぶ。
※リレーショナル型以外には、階層型(一対多)やネットワーク型(多対多)などがある。
 
●OracleDBは、二つの主要コンポーネントからなる
インスタンス...【SGA】という共有のメモリー構造と、DB内に常駐してタスクを実行する【バックグラウンドプロセス】で構成される。
・データベース...【制御ファイル】【REDOログファイル】【データファイル】の3つのファイル群。
 
●各ツール名と用途
・インストールとアップグレード関連
ツール名
用途
アイコン
Oracle Universal Installer(OUI)
Oracleソフトウェアをインストールする。
Oracle Database Configuration Assistant(DBCA)
データベースを作成する
Database Upgrade Assistant(DBUA)
既存のDBを新しいリリースのOracleにアップグレードする
 
・ネットワーク関連
ツール名
用途
アイコン
Oracle Net Manager(netmgr)
Oracleネットワークの構成を行う。
Oracle Net Configuration Assistant(netca)
Oracleネットワークの構成を行う。
インスタンスとデータベース管理
ツール名
用途
アイコン
Oracle Enterprise Manager(EM)
Oracleデータベースを管理する。
 
SQL*PLUS
SQLを手入力できるCLI
SQL Developer
データベースを管理するGUI
Recovery Manager(RMAN)
DBのバックアップ、リストア、リカバリ処理の実行
 
Oracle Secure Backup
テープバックアップの管理
 
Data Pump
データベース間で高速にデータを転送する。
 
SQL*Loader
外部ファイルデータをOracleDBの表にロード(大量の行データを高速に挿入)する。
 

202003_VB.net①

一年前、入社早々.NETを使い開発をしたがかなり駆け足で勉強しながら作業していたので、いったん初歩に戻って勉強しなおそうと思う。

取り合えず、開発環境はVisualStudio2019で.NET FrameWork4.7。

①プロジェクト作成時に生成されるファイル

当時はVisualStudioでプロジェクト作成するとやたらいろんなファイルができて、どれが本体なんだ?って疑問に思ったことがあったので纏める。

 ・ソリューション名.sln

ソリューションファイル。プロジェクトの情報が保存されている。これが核。

・.suo

ソリューションユーザーオプションファイル

コードエディタにおける編集やブレークポイントの設定など、操作内容に応じて更新される。つまり実際にいじって都度更新しているのはこれってことか。

・App.config

アプリケーション構成ファイル。固有の設定が記述されたXML形式ファイル。DBのインスタンス名やパスワード、ログファイル出力先とかよく書いてある。

・Form1.vb

ソースファイル。ユーザーが独自に記述したプログラムコードが保存される。基本これを編集する。

・Form1.Designer.vb

ソースファイル。Windowsフォームデザイナが自動的に記述したプログラムコードが保存される。昔、開いたら勝手に更新されることあるの知らなくて、SVNにあげちゃって上司困らせることが何回かあった。今でも鬱陶しく思っている。

・プロジェクト名.vbproj

プロジェクトファイル。プロジェクトのファイル構成などの情報が保存される。直接いじった記憶はない。

・AssemblyInfo.vb

ソースファイル。プログラムのバージョン情報や作成者の情報などのアセンブリ情報が保存される。

・Settings.settings

セッティングファイル。アプリケーションやユーザの基本設定をコンピュータに保持するために使用する。

・Resources.resx

リソースファイル。プロジェクトで使用するリソース情報を保存する。

 

②フォルダも一応

・obj...作成したプログラムを実行するためのファイルが保存さえる。

・bin...ビルドしたときに生成されるexeが保存される。配布用はReleaseフォルダ、デバッグ時はdebugフォルダ。ビルド時の設定プラットフォーム(x86,x64)によってもフォルダ変わってくる。

・My Project...リソースファイルとかセッティングファイルとか、アプリケーションの管理に関するファイルがまとめて保存される。

 

今日は遅いのでこんなとこまで。

今月のプロジェクトでcsv読み込んで条件で値取ってくることと、エクセルテンプレートへの値のセット。あとは個人的にSelectCaseの条件式とSetUpの作成が気になるので、HC取りながら少しずつ勉強していくことにする。