0

私たちは、コンピューター サイエンスの分野で修士号を取得している学生のグループです。

今学期は、下の説明に従って、ソフトウェア工学プロジェクトを行う必要があります。

真のソフトウェア エンジニアリング チームとして正確に行動し、報告する必要があります。

私はこのグループのプロジェクト マネージャーに選ばれました。Java コードを書くのは得意ですが、プロジェクト マネージャーのタスクを実行した経験はありません。グループ メンバーと一緒にこのプロジェクトを行うために最善を尽くす必要があります。できるだけ良い。

問題は、さまざまなレベルの知識に対処する必要があることですが、実装部分にはすべてのメンバーが参加する必要があります。

このプロジェクトの進め方、このグループの管理方法、そしてどこから始めればよいかを誰かが教えてくれたら幸いです。メンバーをどのように励ますか、そして私の計画を実際にどのように実行するか?

説明を見て、このプロジェクトにどのテクノロジーを選択する必要があるか教えてください。

プロジェクトの説明

プロジェクトは、いわゆる Web アプリケーションとして実装する必要があります。MVC 要件のため、これはサーバー クライアント アーキテクチャ以上のものです。これを (少なくとも) 3 層アーキテクチャと呼んでいます。

ビューは、クライアントの要求に応じて動的に作成する必要があります。そのため、コンテンツはサーバー (サーバー側) によって計算される必要があります。ビュー内には、マークアップ言語以外のソース コード (「スクリプトレット」、Java コードなど) が存在してはなりません。

これにより、プログラマーがコンテンツの責任を負う Web デザイナーがビューを作成できるようになります。

逆に、ソース コードにはマークアップ言語 (HTML など) を含めないでください。

情報を保存する (永続化する) ために、システムはデータベースを使用する必要があります。ただし、ソース コード内にデータベース固有のクエリが存在しないようにする必要があります。これは、ソースがこのデータベースの使用法に大きく依存するためです。システムはオブジェクト リレーショナル マッパーと連携して、データベースから格納された情報を特別なタイプのオブジェクト (Bean) にマップする必要があります。

データベース、エンティティ、構成、初期化などのすべての構成は、XML ファイル (または注釈などの同様の方法) を使用して実現する必要があります。これにより、変更がシステムのソースの再コンパイルを必要としなくなります。

利用可能な技術 (提案):

  J2EE:
          JSP, Servlets, JSP EL,
          JSTL, JSF, Facelets,
          Custom JSF Components, Custom Facelets TagLibs,
          JUnit (unit testing)

  Persistence:
          Hibernate, JDO
  IDE:
          Eclipse, NetBeans
  Servlet Container:
          Apache Tomcat
4

5 に答える 5

2

おそらくペアプログラミング(同じ端末に座っている2人が一緒に何かをプログラミングする)が役立つでしょうか?

2人目の人が優れた「健全性チェック」を行います。バグが大幅に削減されます。2人のプログラマーは互いに補完し合い、一方が他方よりも大幅に経験が浅い場合、彼はすぐに学習します。

于 2008-10-29T23:36:57.420 に答える
2

あなたの説明は最初の質問とは多少異なるため、少し混乱します。できる限りお答えし、アドバイスをさせていただきます...

プロジェクト マネージャーまたはリーダーとして、チームの全員を最大限に活用しようとする必要があります。それぞれが得意なことがあるので、それが何であるかを見つけ出し、それに取り組むようにしてください。

仕事を割り当てるときは、ある程度の自由と説明責任/責任も割り当てる必要があります。彼らはその分野の専門家なので、彼らが知っている限り最善の対処をしてもらいましょう。できる限りサポート、励まし、ガイダンスを提供しますが、彼らの言うことに耳を傾けてください。

スキルは劣るが学ぶ (または貢献する) 意欲のあるチーム メンバーがいる場合は、他のメンバーとペアを組んでください。経験豊富な人が経験の浅い人を「メンター」できるように、コンポーネントに協力してもらいます。この部分をプロジェクトの「成功基準」の一部にする方法があれば、協力してうまく作業するためのインセンティブが得られるので、それはさらに良いことです。

次に、すべての技術的なプロジェクト管理タスクがあります。これらは、仕様、ガント チャート、スケジュール、レビューなどのようなものです。これらは重要ですが、私の意見では、人材管理の側面ほど重要ではありません。チームにこれらのドキュメントのデータを提供してもらいます。たとえば、コンポーネント A の開発者に、自分で調べようとするのではなく、開発とテストにかかる時間を尋ねます。

これが何らかの助けになり、考える材料になることを願っています。申し訳ありませんが、あなたの課題の技術的/構造的な側面についてはお手伝いできません。

于 2008-10-29T23:10:07.617 に答える
0

「このプロジェクトの進め方、このグループの管理方法、どこから始めればよいか、メンバーを励ます方法、私の計画を実際に実行する方法を誰かが教えてくれたらうれしいです。」

これは、すべてのグループの取り組みにおける中心的な問題です。質問が漠然としていて、具体的な答えがありません。IT プロジェクト管理に関する書籍の一覧は次のとおりです。どちらかを選んで読んでください。

于 2008-10-30T01:49:07.233 に答える
0

「説明を見て、このプロジェクトにどのテクノロジーを選択する必要があるか教えてください。」

プロジェクトが何を構築するかについての説明はないので、どんな技術リストでも構いません。「要件」も「概念」も「目標」も「目的」もありません。何の目的もなく技術を評価することは不可能です。

あなたの「プロジェクトの説明」はあなたのプロジェクトの説明ではありません。それは主にアーキテクチャの原則の集まりです。プロジェクトは単なるテクノロジーの山ではありません。何らかの目標や目的がなければなりません。

あなたの「利用可能な技術」リストにはあまりにも多くのものが含まれています。

Struts と Hibernate だけで十分です。他のもの (JSP、サーブレットなど) は Struts の一部です。Hibernate の代わりに iBatis をお勧めします。

JUnit は必須ですが、実際には選択できません。JUnit は Java の必須部分と考えてください。

NetBeans または Eclipse のいずれかを選択してください。どちらも無料で、ほぼ同じです。1つだけ選んでください。

テクノロジーのリストにある残りのものは、気を散らすだけです。もちろん、プロジェクトに、これらのテクノロジが便利なソリューションであるいくつかの機能要件がある場合を除きます。

于 2008-10-30T02:01:25.977 に答える
0

プロジェクトの説明: ( 完全な説明はこちら )


概要 (顧客): UcooP は、大学における知識と経験の交換のためのシステムとして意図されています。これには、複数レベルの交換が含まれます。

  (A) Administrative Staff Exchange
  (B) Scientific Employee Exchange
  (C) Student Exchange
  (D) Public Exchange

  Universities can get registered to participate in that platform by sending a corresponding request
  to administration of that platform (e.g. MoHE). After an university has become member of that
  platform, students, employees and administration staff can register themselves as member of
  that university with the related role (student, employee or administrative staff).
  The content that is accessible for members than depends on their role. So, students can't access
  content that is tagged as employee content – and so on. Content that is tagged as public is accessible for members of all roles.
  Content inside of that platform can mean two different things.

  (A) Forum (Discussions on topics)
  (B) Wiki (Best practices)

  So besides the topic, Wiki pages and Forum topics have to be categorized to administration,
  employee, student or public content.

大学が参加し、その経験と知識を公開する動機を与えるために、システムにはランキングシステムが含まれている必要があります。大学は、大学のメンバーによって作成されたトピック、ディスカッションでの回答、および/または公開された wiki ページの数に応じて、証明書 (レベル 1 ノード、レベル 2 ノードなど、高いほど良い) を取得できます。システムの詳細を定義すること、つまりそのシステムのコンセプトとプロトタイプを作成することは、あなた次第です。

于 2008-10-30T17:59:49.737 に答える