タグ

設計と生産性に関するkraken_eyeのブックマーク (4)

  • OSを持つ、ということ : タイム・コンサルタントの日誌から

    海外の外注先とトラブルが発生した。発注書で決めていた納期が守れそうもないというのだ。我々から彼らにインプットすべき仕様情報が不正確だったし、予定より遅くなったせいだ、と彼らは、いう。こちらから見ると、彼らが出してきた設計承認図や仕様書の品質が低く、かなりコメントをつけてやり直しさせる必要があった。おまけに、両者共通の悩みとして、われらがエンドユーザーである顧客がぐずぐずとなかなか決めず、リサイクル的コメントをつけてくる問題があった。だが、まだ設計の中盤なのに、じりじりとスケジュールが遅れていった。このままだと、下流工程の仕事にも影響が出かねない。 担当者は、プロマネに相談にいくつもりだった。だが、彼のチームのベテランは、それを制した。そのベテランは別プロジェクトに従事していたが、担当者のことはよく面倒を見ていた。 「いったい何を相談に行くんだ?」 --このままだと2ヶ月近く遅れそうです。下

    OSを持つ、ということ : タイム・コンサルタントの日誌から
  • 開発者の仕事が遅いわけではない!納期が遅れるホントの原因 | POSTD

    “なぜ納期を守れなかったのだろうか?” 我々マネージャが、納期に遅れることを自分のチームのせいにするのは簡単です。しかし、納期に遅れる原因は当に開発者の仕事が遅いせいでしょうか? Sprintly は、開発者のサイクルタイムに関する膨大なデータを保有しています。当社は、タスクのサイズごと(S、M、L、XL)、また種類ごと(ストーリー、テスト、バグ)に、完了までにどれくらいの期間がかかるかを追跡しています。 当社が調査した動向について 1点目:開発者は非常に平均的です。ユーザ全体で見たサイクルタイムはほぼ同じであることを当社のチケットデータが示しています。システム内の全チケットの75%は、開始後およそ175時間で完了しています。 ^(1) 2点目:変動があるのは、ほとんどがチケットが開始される前(SomedayからBacklogまで)の段階です。これは、関係者が仕様を理解して作業の優先順位

    開発者の仕事が遅いわけではない!納期が遅れるホントの原因 | POSTD
  • 自分がいつもやっているソース解析の方法 - 何か着ていればいいよ

    この記事作成時点の自分のソース解析のために普段行っている手法を記録しておきます。 前提 ソース解析の目的は主に以下のもの 不具合原因調査 ソースレビュー 仕様変更(追加)に伴う変更箇所調査 解析手法をどう選択するか 主に目的によって以下のように分けられますが、さほど厳密ではなくだいたいフィーリングでやっています。 仕様調査、変更箇所調査の場合。 ソースがオブジェクト指向に則ったクラス設計が概ねできているという前提で トップダウン*1で追っていきます。 具体的にはUMLのシーケンス図(とそれに伴うクラス図)を書き込みながら解析します。 レビューや不具合でエラーログから対象箇所が詳細に分かっている場合 ボトムアップでクラス図や仕様をメモしながら解析します。 上記のやり方で対処できない場合 今までソースの解析はだいたいUMLのクラス図とシーケンス図書けば分かると思っていました。 でも、クラスの責

    自分がいつもやっているソース解析の方法 - 何か着ていればいいよ
  • プログラミングの生産性を上げるには - 聞かれてもいないことを喋る

    Yak Shaving の誘惑に打ち克つ ソフトウェアを作っている途中で、「これを作るのを効率化するためには ○○ が必要だ」と思い、来やっていた作業の手を止めて ○○ を作り始めてしまうことは往々にしてある。 しかしその作り上げた ○○ が最終的に当に(長期的にみて)効率化に役立ったケースは、自分の経験からいって 10 個のうち 1 つくらいではないかと思う。 効率化のための努力をするなということではない。大事なのは、アイデアを寝かせることだ。 人はゴミみたいなアイデアでも、気付かずにこれこそが素晴らしいアイデアだと信じこんでしまう。自分の考えたアイデアには愛着が湧くものだ。 そのアイデアが当に優れているかどうか客観的に判断するには時間が必要だ。最低でも 1 晩、できればもう 2, 3 度は同じ必要性を感じてから作るのがいい。 1 回しか必要性を感じたことのないものをその場の勢いで

    プログラミングの生産性を上げるには - 聞かれてもいないことを喋る
  • 1