11月 30

Productivity: Getting Personal Kanban to Done
Creative Commons License photo credit: orcmid

誠 Biz.ID:新人マネジャー田所晋一の場合:やっかいな部下との評価面談、成功のカギは「納得を引き出す」という記事より。

「上司の詳しい説明があれば、部下にとっては次の期のヒントになる。つまり、上司が期待する水準というのが説明によって理解できれば、次はそこを意識しようと思えるということだ。逆にこの説明がなければ、どうがんばっても上司の好き嫌いで評価が決まるのだと思われてしまう。この差が大きいんだ」

「部下を納得させるためだけじゃない。評価の材料を集めることは、部下の足りない能力をどう伸ばすかという気づきにもつながる。その意味では、評価に手間暇をかけることが、自分のマネジメント力を向上していくことになるんだ」

過去に部下の評価面談をしていた際、全ての部下の仕事振りを普段から公平に見て、納得感を持ってもらえるような評価ができていたかというと…正直言って自信がありません。

この記事のように、普段から仕事上の事実(出来事とそれに対するアクションを)を集め、それに対する評価を伝えることができれば、きっと「ちゃんと見て評価しているんだな」という納得感を与えることができますし、自分自身のマネジメント力も向上するでしょうね。

「納得感」はプロジェクトマネジメントにおいても重要です。

例えば、プロマネが独断で作った納得できない(守れるとは思えない)スケジュールをメンバに強要した場合、プロジェクトはどうなるでしょう?

  • スケジュールが形骸化し結果として大幅な進捗遅延を招く
  • メンバの長期・長時間の残業や休日出勤で、どうにか納期は厳守するがメンバが燃え尽きてしまう…

残念ながら、上記のいずれかになってしまうケースが非常に多いのではないでしょうか。

そうならないためには、

  • プロジェクトの制約事項、タスクのゴールイメージ(アウトプットの内容とレベル)、作業ボリューム(工数)についてメンバと話し合い、双方が納得できるスケジュールを作成する。
  • スケジュールをコミットメントする。コミットメントは「約束」。プロジェクト全員が約束を守るため、全力を尽くす空気(風土)をつくりだす。

これが大切です。

プロマネはメンバに納得感を与えること、そしてコミットメントを忘れないようにしたいものです。

11月 26
「要求定義」の現場 成功する要求分析と文書化のメカニズム
佐川 博樹
ソフトバンククリエイティブ
売り上げランキング: 296370

要求定義を以下のステップに分類し、各ステップ別の進め方・発生しがちな問題点・適用するツールについて、実例を交えて解説している。

  • 目的等共有ステップ
  • 要求獲得ステップ
  • 現状調査ステップ
  • 要求リスト作成ステップ
  • モデリングステップ
  • 要求確定ステップ

「第3部 要求定義のテーラリング」では、企業組合のCMSウェブサイト、文具店の顧客管理システム、精密機器メーカーの在庫管理システム、物流業者の販売管理システムというサンプルケースを設定し、システムの難易度や規模、特性に応じた上記の各ステップのテーラリング例を示している。想定したケースに対する具体的で豊富なアウトプット例が参考になる。

顧客に対してフルスペックの要求定義ステップをベースとして示し、こういう理由でこの部分は省略するが、この部分はしっかりやるべきだと提案し積極的にテーラリングを行うべきであるという主張は同感。

体裁だけ整った中身がスカスカのドキュメントをいくら作ったところで、顧客にも自分たちにも何のメリットもない。攻めの提案で削れるところは削り、その上で「必要十分」を目指したいところだ。

これから要求定義を始める人にお勧めの一冊。

11月 25

Crab apples
Creative Commons License photo credit: ahisgett

Redmine Clientというアプリケーションがあります。Windows(.NET)上で動作するRedmineのクライアントで、機能的には、

  • チケットに費やした時間を計測する
  • 時間をRedmineへ登録する
  • 新しいチケットを登録する

というシンプルなものです。C#で書かれています。

このアプリケーションにはRedmineへアクセスするためのライブラリ(DLL)が添付されており、APIの仕様も公開されています。(どちらかと言うと、アプリケーションはこのライブラリのサンプル的な位置付けなのかな?)

Redmineは0.9でRESTfulになるらしいので、それまで待とうか…という気もしないではないのですが、このライブラリのFUTURE PLANSには“Making use of Redmine 0.9 RESTfull interface”とあり、0.9でRESTfullになったら対応する模様。

ということで、安心して?試してみました。

インストールと設定

  1. ここからredmineclient-0.3.0.zipをダウンロードする。
  2. アーカイブを解凍しNohal.Redmine.dllをVisual Studioのプロジェクトで参照設定する。

これだけです。

チケット一覧を取得するための基本的な流れ

以下のような流れでチケット一覧を取得できます。簡単。

  1. Redmineオブジェクトの生成
  2. RedmineのURLを設定(Redmine.RedmineBaseUriプロパティ)
  3. Redmineへのログイン(Redmine.LogInメソッド)
  4. プロジェクト一覧の取得(Redmine.GetProjectsメソッド)
  5. プロジェクトIDを指定してチケット一覧の取得(Redmine.GetIssuesメソッド)

(載せるまでも無いですが)実際のコードはこんな感じ。

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using Nohal.Redmine;

namespace RedmineTest
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        private void button1_Click(object sender, EventArgs e)
        {
            Redmine redmine = new Redmine();
            redmine.RedmineBaseUri = "RedmineのURL";
            redmine.LogIn("Redmineのユーザ名", "Redmineのパスワード");

            List<Project> projects = redmine.GetProjects();
            textBox1.Text = "プロジェクト一覧\r\n";
            foreach (Project project in projects)
                textBox1.Text += project.Id.ToString() + ": " + project.Name + "\r\n";

            textBox1.Text += "チケット一覧\r\n";
            // GetIssues(3)の3はプロジェクトID。本来はGetProjects()で取得したIDを指定する。
            foreach (Issue issue in redmine.GetIssues(3))
                textBox1.Text += issue.Id + ": " + issue.Subject + "\r\n";
        }
    }
}

ざっとAPI仕様を眺めた限りでは、条件を指定してチケットを絞り込む方法が無さそうです。
このため、指定したプロジェクトの全チケットがListで返却されますので、チケット数が数千~数万のオーダーになると厳しいかもしれませんが、チケットの登録はイケるでしょう。

C#から簡単にRedmineへアクセスできるのはいいですね。Redmineクライアントの開発をお考えての方はお試しください。

Tagged with:
preload preload preload