『モデリング道場』(通称:もでみち)とは、モデリングのTips、常識、パターンや、時にはアクロバチックな技を戦わせる道場です。モデリングのQ&Aに加えて、難問・奇問に対しての回答バトルをしたいと考えています。いまや、モデリングもマーシャル・アーツの時代!みんなで技を磨きあいませんか?この企画には、業界著名人の師範代が参加していただけることになっています。いう本文一行のメールを送ってみてください。┗【PM】プロジェクトマネジメント入門[16]今回のお話しも、前回に引き続き「リスクマネジメント」です。リスクマネジメントには、どのようなリスクがプロジェクト内に存在するかを洗い出し、その事象が起こる確率とプロジェクトに及ぼす影響度を評価し、それらに備えるという流れがあります。この備えが最終段階である「リスク事象の対策」です。この対策には、リスクを未然に防ぐための備えである予防対策と、リスクが発生したときの備えである発生対策の2つがあります。予防対策は、事象を未然に防ぐ為の対策が講じられます。リスク事象が起きてからでは、いくら軽微な影響だとしてもプロジェクトには何かしらの損害を与えてしまいます。私達のソフトウェア開発プロジェクトであればスケジュール(時間)、コスト(お金)、顧客の信頼などが考えられます。この損害とその影響をリカバリする為のコストがかかってしまいます。よって、マネジメント的には、リスク事象をどのようにして防ぐかがポイントになります。言っても、すべてのリスク事象を発生させないようにするのは困難です。これが発生時対策です。この発生時対策は、大きく分けて「リスク事象が発生した場合にその対策をどうするか」と「発生することを見込んで予め準備すること」の2つの視点が必要です。ここの早期発見で重要なことがあります。リスク事象が発生したと認識する条件、言い方を変えると発生時対策を行うきっかけは何かを規定して、関係者と合意しておくべきです。付くことになりかねません。ソフトウェア開発プロジェクトの場合、作業遅延に対するリスクの事象認識への合意が曖昧なような気がします。以上で、リスクマネジメント(分析段階)の話しは終わりにして、次回は、プロジェクトを実施する組織形態である「プロジェクトマネジメントオフィス」の話しをしたいと思います。(事務局長)_______________________________________________________________________この記事への評価にご協力をお願いします。URLをクリックして、「ご協力ありがとうございました」のメッセージがご使用のブラウザに表示されれば投票完了です。指向(OO)の基礎を気軽に勉強していこう、という内容です。『C#の「インデクサ」を理解』をテーマに学習していきます。インデクサをさくっと解説すると配列風のアクセサメソッドで、前回のプロパティに似ています。プロパティと異なる点は取得したいデータを、プロパティはプロパティの名前で識別するのに対して、インデクサはシグニチャで識別する点です。それでは、具体的なコードを書いて「インデクサ」を確認していきましょう。■内容まずはインデクサを利用しているソースコードを見てみましょう。ソースコードの内容を簡単に説明すると「開発者の個人の熱血度とチームの熱血度を表示する」プログラムです。developers[name].Nekketudo);developersが具体的なデータ構造である「配列」をさらけだして、いるように感じます。Developers();developersは「配列」ではないことに気付きます。「配列」ではありません!ここでは、「インデクサ」を使っています。説明を加えると複数の開発者オブジェクトを扱うデータ構造はdevelopersの内部に隠蔽され、公開されたインデクサを使って間接的にアクセスしています。developers.GetDeveloper(name).Nekketudo);といった感じになります。インデクサを使った方がソースコードがコンパクトになります。★4がインデクサの実装になります。name]”で管理されるオブジェクトの型がDeveloper型で、オブジェクトを識別するのにstring型のnameを使うように指定しています。}でDeveloperオブジェクトを名前をキーにして取得や登録をしています。ここでdevelopersはHashTable型で、用意されているインデクサを利用しています。インデクサを使うことでハッシュテーブルへのオブジェクトの登録や取得がシンプルになっています。配列やリストやツリーといった別のデータ構造で管理してもかまいません。■まとめインデクサについて学習しました。インデクサは前回に紹介したプロパティ同様にカプセル化と情報隠蔽を実現するのに使える機能です。メソッドで代替することは可能ですが、インデクサを使うことでソースコードがコンパクトになり読みやすくなる場合があります。定するのにintである必要は無くstringといったことも可能です。今回は説明しませんでしたが、多次元のインデクサやインタフェースでインデクサを使うなども可能です。_______________________________________________________________________この記事への評価にご協力をお願いします。URLをクリックして、「ご協力ありがとうございました」のメッセージがご使用のブラウザに表示されれば投票完了です。ホントのところ今週は「生まれ変わっても今と同じ仕事をしたいですか?」のホントのところ。http://www.ObjectClub.jp/cgi-bin/question.cgi?Z001+22+0なんだかんだいってしてそう。http://www.ObjectClub.jp/cgi-bin/question.cgi?Z001+22+2そのことについてあまり何も思わないです。http://www.ObjectClub.jp/cgi-bin/question.cgi?Z001+22+4絶対にしたくないです。http://www.ObjectClub.jp/cgi-bin/question.cgi?Z001+22+5それは秘密です。まで詳細を!!アンケート結果はオブジェクト倶楽部サイト上にて公開します。