システム開発プロジェクトを成功させる方法

  プロジェクトを成功させるために、 ユーザー・ニーズやコード変更情報を頻繁に交換しフィードバックを行います。 システムエンジニアが必ず成功する方法を知っていれば問題ないのですが、 やってみないと分からないことや、顧客もはっきり理解していない場合など、 システムができあがってから問題がわかることになります。 できあがってから問題が表面化しても納期面、コスト面から修正することが困難な場合が多いのです。




コミュニケーションができること

  優秀なシステムエンジニアはコミュニケーションが重要です。 大きなプロジェクトを成功させるためには、高度なスキルより根回し上手でなければ、 様々な問題をクリアできません。

  組織は人の集まりであり、人が考えて力を合わせなければシステムが完成までたどり着けないのです。 どんなに優秀なシステムエンジニアでも、設計からプログラミングからすべてできないなら、 人を上手に使える有能な管理職であることがもっとも必要な最重要なスキルです。

  パソコンソフトウェアは簡単に短期間にできることが一般的に考えられるようになって、 その価格も安くなったために仕様作成について安易に考えられる傾向があります。 ソフトウェの性質上、簡単に直せる範囲であれば、非常に簡単に早く変更要求が反映されるため、 ソフトウェアの変更は簡単なものと思われがちです。 ソフトウェアの根本的構造に関する問題は簡単に修正できないため、 修正変更を期待していてできなかった場合は、プロジェクト全体が達成できない事態になります。 プロジェクトを成功させるためには、ソフトウェアの限界を早くから認識する必要があります。

繰り返し型開発手法

  • 余計な開発は行わず常にシンプルにする。
  • ユーザーとのコミュニケーションを重視する。
  • ユーザー・ニーズやコード変更情報を頻繁に交換しフィードバックを行う。
  • ニーズの変化やコードの変更を恐れない勇気を持つ。

  パソコンソフトウェアは品質が悪く、とくにカスタムソフトウェアは、 意図した動作をせず不具合が多いことが問題です。 安定して動くことが前提のうえに仕様に含まれていない機能が目立ち、操作性や 現実の業務を無視した操作手順など、仕様決定時に解決されているべき問題が目立ちます。

■その実践手法。効果を上げるためのポイント。

  1. コーディングの標準化。コーディング規約を定めること。
  2. シンプルな設計。常に必要な機能だけ設計すること。
  3. テスティング。単体テストと機能テストを繰り返し行うこと。
  4. 共同所有。開発メンバーだれもがコードを変更できるようにすること。
  5. メタファ。ソフトウェアの仕組みを何かにたとえてメンバー間で共有する。
  6. 継続的な結合。1日1回ビルドを行い、テストをパスさせること。
  7. 計画。ビジネス優先度、技術的判断からリリース計画を立てる。1〜3週/1リリースとする。
  8. リファクタリング。ソフトウェアの機能を変えることなく、コードをシンプルにわかりやすくすること。
  9. 短期リリース。小さなプログラムでも、新バージョンのソフトウェアを短期にリリースする。
  10. オンサイト顧客。ユーザーをフルタイムに参加させること。
  11. ペア・プログラミング。2人で1つのコードを話し合いながらコーディングする。
  12. 週40時間以内。開発労働時間は週40時間以内とする。

  これらは、XPプログラミング手法と呼ばれています。

  コミュニケーションをうまくとる方法が大事です。 情報を共有できる体制をつくることです。 システムの問題箇所をより早い段階で見つけることです。 被害はできるだけ少なくすることです。 間違いをさらけ出して、ミスを素直に認めることです。 プライドの高いシステムエンジニアであるより、顧客のことを第一に考えるべきです。



なりたい自分はどんな人?

TOP

お気に入り:



検索/送信:
GOOGLE YAHOO MSN



ほんとうは何もなかったものです。9