プロジェクト |
コンテンツ |
コースクラスのブログのリンク |
|
このジョブは、リンクが必要です |
|
私のコース学習目標 |
(1)ソフトウェア工学に関する基本的な理論的な知識を学び、習得します (2)個々の独立した実践の能力を高めます (3)自分の専門的能力を向上させます |
この仕事は私がどのような分野での目標を達成するため学習に役立っ |
どのように(1)にブログを書いて公開することを学びます (2)研究では、より多くの知識と良い方法はブログパークを通じて自分のスキルを強化することがわかりました (3)は、ブログの公園で志を同じくする友人との技術的な知識と専門的な取引所で行うことができ、 どのように(4)のGithubを使用することを学びます |
他の学校の数を結び目 - 名前 |
有効性の喪失201771010115- |
ブログでは、他のジョブリンク結び目 |
https://www.cnblogs.com/LZM7343/p/12584530.html |
他のノードの倉庫プロジェクトへのGitHubのリンク |
https://github.com/LZM-1/shiyaner |
プロジェクトのGithubのリポジトリリンクアドレス |
|
1 、実験目的と要件
これらのソフトウェアの開発協力における(1)の経験、練習ペアプログラミング(ペアプログラミング)。
(2)運転制御Githubの共同開発プログラムの方法。
2 、実験及びステップ
タスク1:読書- 「法の近代的なソフトウェアエンジニアリング建設の」章3-4コンテンツ、スタイルのコードの仕様、コードの設計仕様、コードレビュー、ペアプログラミングの概念を理解し、習得します。
タスク2:次のように二十から二無料ペア、大腸向こう側「ソフトウェア工学実験の2つの個々のイベント、」プロジェクトの結果は、特定の要件を評価するためには、以下のとおりです。
(1)ボーエンジョブが読み、コメントするプロジェクトは、コメントのハイライトは次のとおり関係欄「の対象」でボーエン構造、ブログのコンテンツ、ブログの構造やPSP、PSP「プログラム時間が完了し必要」と「実用的な完了を時間は「コメントエリアをブログ上のコメントにコンテンツを公開するために、二つの理由の分析とデータの違いを探るために必要。
(2)を参照して、読んで、テストコードを実行し、ローカルマシンに大腸他のソースプロジェクトをクローン「現代のソフトウェア工学 - 法の構築」4.4.3項コンパニオンプロジェクトコードレビューチェックリストとレコードが。
1.概要セクション
1)コードの要件と仕様を満足しますか。
コードは、より多くのニーズや仕様に沿ったものです。
2)コード設計思慮深いかどうか?
コード設計上の考慮事項は、より包括的です。
どのように3)コードの可読性?
高いコードの可読性は、コードはほとんど常に明確なコメントへのより重要です。
4)簡単にコードがそれを維持するには?
現在、簡単にコードが高いため、コードの堅牢性、維持します。
実装5)コードの各行とって、それを確認?
I最初のツイニングパートナーは、コードを読む詳細をした後、私のローカルマシン上でソースコードにクローニングし、コードが実行されました。
2.設計仕様
知られているデザインパターンやアイテム一般的に使用されるモードに適合するように設計された)1かどうか?
全体として結び目デザインの反対側に共通のパターンに従ってください。
2)何がハードコードされたまたは文字列/番号など存在しないのですか?
全体のコードと、ハードコードされた文字列、少ない数で存在。
3)コードは、それが(例えば)Win64のへのWin32として移植の将来に影響を与えるかどうか、特定のプラットフォームに依存しないのですか?
プラットフォームに依存するコードが小さく、ポータブル強いためです。
4)開発者は新しいコード機能は中?同様の機能、既存のライブラリ/ SDK /フレームワークで達成することができる書くことは、このプロジェクトに存在する再実装すべてにせずに呼び出すことができますか?
開発者は、既存のSDKの機能に新しいコードを呼び出すことができます。このプロジェクトでは見られない同様の機能を実現するために使用することができます書きます。
5)未使用のコードをクリアすることはできないがありますか?
そこ開発者が一緒に彼らのコメントをコーディングします、いくつかの役に立たないコードが存在しており、詳細な機能注釈を作りました。
3.コードの仕様
標準部品とスタイル、それに合わせてコードを修正しますか?
より多くの基準に沿って、コードの一部を変更します。
4.詳細コード部
1)エラー処理はありません?外部関数呼び出しの場合は、戻り値や例外処理をチェック!
戻り値とプロセスの異常の一部をチェックする外部関数呼び出しのための治療の一部に誤りがあります。
2)パラメータは、エラーなしで文字またはバイト(ダブルバイトがモノであってもよい)、カウントが0または1でカウントを開始するの文字列の長さの長さを通過しましたか?
エラー・パラメータは、文字列の長さは、開始カウントに基づいて、文字の長さであり、渡されません。
3)境界条件がどのように扱われるか?デフォルトの分岐switch文がどのように扱われるか?それは無限ループがループすることは可能ですか?
サイクルがチェックを行うためには、無限ループにすることはできません。
4)私たちは本当に同じ条件が満たされていることを信じていることを確実にするためには使用アサーション(アサート)はありませんか?
利用アサーションの一部は、私たちは本当に同じ条件が満たされていることを信じていることを確認します。
5)リソースの使用は、どこ?かどうかは、リソース(メモリ、ファイル、様々なGUIリソース、データベース・アクセス接続のリークなど)?最適化のためにそこ余地がですがあるような場所でのリリースを申請するのですか?
まだ完全に解決されていないデータベースへのアクセス、にはほとんど問題があり、最適化を行うにはスペースがありません。
6)以下とは、データ構造の要素がありませんか?
データのない構造の少ない要素。
5.効果
効果1)コード(パフォーマンス)どう?最悪のケースとは何ですか?
コードの有効性は、最悪の異常が発生したデータベースに接続することができる、悪いわけではありません。
2)コード、サイクルのかなりの部分がある場合は特に最適化することができる(C ++の繰り返し)C#のStringBuilderの文字列操作を最適化することができるかどうか、クラスを作成しますか?
部分サイクルの存在部分の最適化。
3)タイムアウト?どのように対処するかどうかをシステムとネットワークを求めて?
一時的な状況通話システムとネットワークのタイムアウトは表示されません。
6.可読性
どのようにコードの可読性に?そこに十分なコメントますか?
完全に明確なコメントをコードの読みやすさも十分。
7.テスト容易性
コードのニーズを更新したり、新しいユニットテストを作成する場合は?
コードは、更新、補足と完璧に必要。
学生達成するための基本的な情報問い合わせ機能:
達成するための登録機能:
学生情報照会を達成するために機能します:
(3)フォーク、クローン、プッシュ、プルリクエスト、マージプル要求他の操作の倉庫利用githubの変更を協力して、ソースの個人的なコンパニオンプロジェクトにしようとする審査の結果に基づいて。
タスク3:私たちの教師と生徒の日常流行の報告システムの経験、私たちの学校の伝染病の予防と制御の要件に沿ったデザインと情報システムの開発と合わせ2ペア・プログラミングモードを使用して、それは次のような特徴を持っていること:
(1)学校職員と学生のすべての種類は、流行に関する情報を収集することができます。
(2)部門のスタッフの流行の予防と管理の仕事を担当する2つの部門の各要約流行を表示し、高度なクエリを提供することができますが、統計関数の多属性検索と可視化を組み合わせています。
(3)学校ログインの担当指定された人の予防と制御「北西通常の防疫や統計情報を管理」サブシステム、あなたが集約されたデータを報告するすべての人のリストを閲覧することができ、使用[]高度なクエリデータをグラフィカルに表示するシステムをスクリーニング組み合わせることができます各大学は、統計情報を報告し、非報告学生や流行のキーデータの統計情報を持っている、[エクスポート] EXCELファイルの一覧を照会することができます。
(4)ヒューマンマシンインタフェース要件は、GUIインターフェース(ウェブページは、APPのページとすることができます)。
(5)追加ポイント機能:タイミングリマインダーを報告
1.需要分析
新しいコロナウイルス肺炎の流行(2019-nCoV)感染症の下では、効果的に私たちの教師と生徒とのシステムの経験を報告し、毎日流行を組み合わせたコレクション、調査や伝染病の予防と制御機構に関する統計情報を、調整するために、我々は、設計・開発することを決定しました私たちの学校の基本的な状況職員のすべてのカテゴリを達成するために流行の予防と管理作業教職員/学生流行報告システムのための私たちの需要を満たし、地域や軌道と健康の情報収集活動。
2.機能設計
- 基本的な機能
学生は流行フィル中に個々の健康にログインして提出することができ、毎日学生の予防接種のステータス情報を保存することができ、データファイルは、管理者が各学生1日、の基本的な状況を表示するには、管理者インタフェースをログに記録することができ、そこにあります地域および健康状態、あなたはまた、学生の数と統計の異なる領域から一部の学生、及び統計は、ヒストグラムを表示し、健康と非健康数の日付を確認することができます。学生は、(そのような学生番号、電話番号、ログインパスワードなど)検証のための個人アカウントの登録時に、学生は重要な情報の一部を記入します作業対策舞台裏のスタッフを削減するために、自分の個人口座に初めて登録することができます学生は、データがエコー前日に提出することができるフォームを送信するとき、それは自動的にローカル時刻を取得し、それを保存することができます。学生Shihaiは、学生がデータベースに情報を追加することができ提出時間をミスしたとき、管理者は、削除、情報Shihai変更に学生の情報を表示することができます。
- その他の機能
定期的な報告リマインダ。
3.設計と実装
次の図は、ログインホーム後の学生の責任ShowEditor、学生の登録のためのUserAddDialogが責任を負うの日健康統計の学生、ログインする責任LoginDialog、を主に担当Discshop、私が構築しているすべてのクラス、学生で統計分野のDiscnumが担当当日は、学生の健康状態を確認するために、一日の学生の流行の報告と提出の責任UserAddDialogは、UserQurryEditor管理者が担当しています。
データベースの構築
表キーパー管理者
学生情報テーブルのユーザー
4.テスト実行
(1)登録インタフェース
(2)ログイン画面
(3)ホーム
形態(4)充填
(5)ビューの学生情報の管理
(6)統計
5.フィール満足度や独自のコードスニペット、ディスプレイへの庭のブログでコードコントロールを貼り付けます。
1つのシステム時刻:
java.utilのインポートクラス* ;.
インポートするjava.text * ;.
パブリッククラスTestDate {
公共の静的な無効メイン(文字列[] args){
カレンダーCalendar.getInstance CA =();
int型年= ca.get( Calendar.YEAR); //年取得
int型の月= ca.get(Calendar.MONTH); // 月の取得
int型日= ca.get(Calendar.DATE); // 日付の取得
int型の分= ca.get(カレンダー。 MINUTE); //サブ
INTの時間= ca.get(Calendar.HOUR); // 時間
INT第= ca.get(Calendar.SECOND); // 秒
INT = ca.get A WeekOfYear(Calendar.DAY_OF_WEEKの);
}
6記載された方法のジャンクション
私と学生間の効果の損失のためには、非常に仲良く、チームの経験、そして協力してチームワークの他の分野での学習されているので、我々は再びお互いにパートナーとして選ばれたチームワークを学ぶとき。この設計の公式発表の前に、私たちは、このタスクに一般的な分析やタスクの合理的な配分を行う必要があり、その後、彼らは正式に協力の学習過程における学習課題我々は、タイムリーに交換できるとの出会いの問題を開始しましたときタイムリーなフィードバック、そして一緒に仕事の問題の多くを解決するために、ここで私たちの協力と記録の交換プロセスは以下のとおりです。
7.まとめ
プロジェクトを開発するために、私はチームワークの重要性だけでなく、プログラミングの面で能力の独自の不足のためにこの接合部を通じて実現、最も重要なことは、私は、本当に1 + 1> 2の効果をもたらすことができる2の協力に感謝することです先延ばしは、協調学習を模索二人の接合部の初めから非常に深刻な人は、私は学習のタスクを実行するためにタイムリーに、前に私の悪い習慣を変える作っですが、また、個人の能力開発の重要性を認識し、 ACは、問題が発生した後、最終的な結果に来て解決するために一緒に働く2人の男性の背中に、私は努力と幸福と成功の双晶を感謝し、そしてこの私が有効の学生の損失で私のパートナーに感謝したいと思います双晶の協力と忍耐は私の私は無限に寛容助け、将来的にはより良い次回を行うに努めてまいります。
8.表示PSP
PSP | 概要 | 計画時間(分)の合計を完了するために必要 | (分)の合計を完了するために必要な実際の時間 |
---|---|---|---|
プランニング | 計画 | 20 | 15 |
推計 | これは、タスクは、一般的に作業工程に多くの時間と計画が必要と推定しました | 10 | 15 |
開発 | 開発 | 168 | 270 |
分析 | (新しい技術を学ぶ含む)ニーズ分析 | 10 | 70 |
デザインスペック | 設計ドキュメントの生成 | 0 | 30 |
デザインレビュー | デザインレビュー(と同僚が設計文書を見直し) | 0 | 0 |
Codeing標準 | コードの仕様(現在の開発のための適切な規範の開発) | 5 | 25 |
設計 | 具体的な設計 | 20 | 23 |
コーディング | 具体的なコーディング | 200 | 259 |
コードレビュー | コードレビュー | 30 | 50 |
テスト | 検査(セルフテスト、コードを変更し、変更を提出) | 20 | 30 |
報告 | レポート | 40 | 35 |
試験報告書 | テストレポート | 20 | 30 |
サイズ測定 | コンピューティングワークロード | 5 | 8 |
死後&プロセス改善計画 | その後まとめ、およびプロセス改善計画 | 15 | 13 |