チームリーダーがリリースを控えてデータベーススキーマを壊している場合はどうすればよいですか?


21

私のチームリーダーは、データベーススキーマをいじり、コードベースに深刻な破損を引き起こすような変更を行うというひどい習慣を持っています(変更がコードベースにどのように影響するかについて実際に相談することなく)。

通常、私はそれと一緒に暮らしますが、2週間で締め切りがあり、1ヶ月半前に始めてからこれが起こっています。私はプロジェクトの開発をスピードアップするために連れてこられました。

締め切りのために、私はすでに週に60時間以上を費やしており、これに対処するためのエネルギーが残っていません(すでにいくつかの方法で試しています)。私たちはたった2人のチームであり、データベースを毎日変更する以外に、彼は実際の開発(コーディング)という意味ではあまり貢献していません。

現在、私はすべての作業を行っているように感じていますが、加えて彼の変更で彼が壊したものを「修正」する必要があります。

これにどのように対処しますか?開発部門での彼の努力の欠如について、私はすでにマネージャーに話をしました。彼は私よりも6ヶ月長い間そこにいましたが、彼が「貢献した」第5正規形データベースの怪物を除外すると、コードの95%を書きました。

助言がありますか?

事後分析:

金曜日に私たちはマネージャーと話し合いをし、心配を知らせました。これは少し対立につながりましたが、全体的に私はマネージャーが私と一緒にいると感じました。それで、少なくとも今はデータがフリーズしているので、ここからどうなるか見てみましょう。


3
タグ「too-agile」の+1!:-)アジャイルは優れた方法論ですが、一部の人々は、彼らが単に規律を守られていないとき、彼らがアジャイルであると誤って主張します。
ビルカーウィン

2
自動テストがその価値を発揮していることの代表例。彼はテーブルを変更し、15分後にベルとホイッスルがすべてのコードが壊れたことを通知し始めます。

回答:


15

「締め切りは2週間です。ヒットする場合は、スキーマを凍結する必要があります。」


3
OK、ステップ1、データベースの凍結、ステップ3の利益!レッツは、...それが行く方法を見て:)

1
私は責任を負うことなくちょっと責任を負いました、もう一人のチームメンバーがいます。あなたのアドバイスは当時の究極の答えでした。私たちはまだsh * tファンの頭をじっと見つめています... :(

4

同じ会議でマネージャーと開発者に話す:

「データベースとコードの変更を同時に表示する必要があります。データベースを変更する場合は、コードベースも変更してテストする必要があります。あなたのコミットによって壊れた場合、割り当てられた仕事以外の問題を調査して修正することはできず、期限に間に合うと期待しているため、変更を単に取り消してメールでお知らせします。」

テスト計画がない場合はさらに難しくなります...


テスト計画?フリゲン計画もありません!クライアントの言語で書かれた通常のクライアント要件仕様...そして、はい、チェックインノートを作成しなければならないのは非常に悲しいです:BUILD IS BROKEN。

2

より強力になり、すぐに(昨日、前日、または先月のように)スキーマに落ち着いて前進することを確認する必要があります。動く標的であるデータベースを使ってアプリを開発し続けることができる賢明な方法はありません。


1

あなたは彼に立ち向かい、彼の変更がどのようにコードベースに影響し、それゆえプロジェクトのタイムラインに影響するかを彼に説明する必要があります。変更を有効にする前に、変更の影響を考慮する必要があることを彼に納得させてください。また、彼があなたのマネージャーの前で、この行動によって彼が誘発する遅延の責任を負うという事実に彼を同意させる。


1

チームリーダーが理にかなった人物でない場合(そして、彼/彼女は彼の行動の説明から理にかなっているとは言えません)、上司に話して、物事の進行状況に間に合わないことを説明してください。マネージャーに期待を述べる会議を開催することにより、彼に立ち上がってチームリーダーがこれを認識していることを確認するよう依頼してください。

また、チームリーダーの開発への貢献の欠如に関するケースをプッシュする必要があります。プロジェクトを成功させるには、両方の問題を解決する必要があります。


私たちはこのようなことをしましたが、彼は理解していないようです...彼は貢献すると言っていましたが、スキーマの変更を除いて、これまでのところ何も見ていません。彼は「デザイン」だけでなく、コードを書くことさえできるのだろうか。

マネージャーがチームリーダーにこれをやめさせるのはなぜですか?チームリーダーをチームリーダーにしたのは誰ですか?あなたのマネージャーはこれに発言権を持っていませんか?

マネージャーは顔を保存しようとしていると思います。少なくとも私は彼に早期に警​​告し、うまくいけば彼らは私に責任を負わせないだろう。

1

チームにある程度の制限を強制する必要がありますが、チーム内で自分のポジションでプレーするのは難しい場合があります。

これに取り組む便利な方法は、より厳密に文書化された変更管理を採用することです。これは、アドホックな変更が予期せず、締め切りを脅かすような結果をもたらさない方法でシステムの更新を管理する能力を危険にさらしていると主張することで実現できます(本当です)。そのため、すべての変更には、提案された変更と、その変更が他のすべてのコードおよび構造に与える影響を示す文書が必要です。それがどれだけの量の変更を削減するか驚くでしょう:-)


他のITサポート担当者の1人が以下を推奨しました:)

へへ、それは本当だからです-私はそこに行ったことがあります。ここでのその他の回答のほとんどは、論理システムの障害の知覚に対する技術的な解決策です。実際に行動上の問題があるので、その行動を変更するには罰/報酬システムを実装する必要があります

1

チームで回顧展を開催しましたか?そうでない場合は、保持します。その場合は、データベースに対する計画外の変更(変更)を問題として特定します。あなたと他の人にリスクと仕事の生活の質に関するコストを指定します。継続的に60時間働くことは持続可能ではありません。開発のペースを維持できない場合、アジャイルを実行していません。

また、TDD(テスト駆動開発)または自動化された機能/回帰テストを行っていますか?その場合、データベースを変更するとテストが失敗します。これにより、影響に対処し、更新する必要のあるコードを特定できます。

この場合、チームリーダーは「あまりにも機敏」ではなく、チームリーダーは「機敏なカウボーイ」です。振り返りを開催し、何が間違っていたかを特定します。優先順位を高く設定し、次の反復で対処します。それはあなたのアジャイルカウボーイをロープするはずです!!!


私は試してみました。彼は純粋にBS'ngカウボーイだと思います。とにかく、私はそれと一緒に住んでいます。

0

約1年前に同じ問題がありませんでしたか?' 私のチームリーダーは、A.Property = A.Property;と言います。大丈夫です '。質問がコメント履歴に表示されないため、この質問は禁止されたようです。とにかく、ポイントは次のとおりです。

すべてのチームリーダーがあなたの経験の半分しか持っていないことを台無しにしていると感じたら、おそらく仕事なしで仕事を見つけるでしょう。試してみて、別の選択肢としてリードすることをお勧めしますが、まだ可能であれば、すでにそうするように提案されています。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.