201771010122- Wangbinロング実験2つの個人的なプロジェクト - 「西北師範大学の学生の流行報告システム」プロジェクトレポート

プロジェクト コンテンツ
コースのクラスのブログ https://edu.cnblogs.com/campus/xbsf/nwnu2020SE
運用要件 https://www.cnblogs.com/nwnu-daizh/p/12416880.html
コース学習目標 個人的な開発プロセス(1)学習ソフトウェアプログラムは、(2)のGitHubの操作方法を習得します
これは、どのような分野での学習目標を達成するために私を助けました ソフトウェア開発プロセスの側面の側面と学習ツールの利用
Githubのリポジトリリンクプロジェクト https://github.com/1171849616/test

タスク1:学生の声明では、日々の流行サブシステムの経験を報告した
私は、この流行の学生は大丈夫、私が最初に記入する必要があり、すべての時間が非常に面倒で日常のサブシステムを報告し、以降改善され、コンテンツの前日を記録することができると思います次の日、あなたはずっと楽になるために直接前日の基礎を変更したり、することができます。しかし、まだ不十分があり、機能を思い出させる時間がない、記入して忘れがちです。

タスク2:概要は、セクションを読ん1-2「法の構築、」第2章で、PSPプロセスのセクション2.3、自分自身の心を開発し、西北師範大学の学生の毎日の流行の報告システム。
1.需要分析:
最後に2019年12、中国武漢は、すべてのレベルで政府が一部を取るために、中央政府の指導の下、ウイルスの伝達を遮断効果的に、流行の広がりを抑制するために、肺炎の流行に感染した小説コロナ(2019-nCoV)が起こります予防と管理の一連の措置は:2020年以来、「閉鎖都市」1月Riを武漢の午前10時23分で、31個の省や自治体も厳格な規制措置を実施している、全国の省や都市が救助作業や武漢、湖北省に参加する医療チームを送信します。国大いに必要な医療資源マスク、防護服、医薬品およびその他のサポート武漢の展開、できるだけ早く国の生産能力を再開するためのガイダンスと衝動企業における医薬品の生産の資格を持って、病気の予防と管理のための資金の監督特別な財政配分、他から武漢省は、材料支援、人々の日常生活を動員します。
コレクション、統計と効果的な協力のための防疫や制御メカニズムのトラブルシューティングに役立つ情報が、私たちの学校は、流行のスタッフが毎日報告するシステムを報告教職員/学生の流行を開発している、学生の流行は、毎日毎日、流行の二部門を報告しました集計表、4つの統計報告伝染病の予防と制御サブシステム。私たちの学校の基本的な状況を達成するために人員、地域や情報収集活動やトラックの健康のすべてのカテゴリ。教師と学生が本学の企業マイクロチャネルサービスホールによる情報の遠隔報告のためのシステムにアクセスします。
2.機能設計
:開発、次の2つのタイプでは、完全なプロジェクトの開発タスクを選択するために必要な
第一級の開発要件:
データファイル、100日2000防疫要員を保存するすべての情報/学生を、コマンドラインプログラムを設計してください、誰かの流行状況でのサポートクエリは一日、いくつかの統計データのクエリ週/月の流行、およびディスプレイ統計結果のヒストグラムを与えられました。

第2カテゴリー開発要件:
1.学生の流行有効な情報を収集できるシステム;
; 2.システムは、ユーザーがオンラインでの使用を可能にする
唯一の3塗りつぶし一日一回、提出後に変更することはできません、10時の毎日の流行情報の報告期限;
4.各大学の指定された権限のサインインシステム埋めるために、この大学生の集計データを表示するには、後に、あなたが学生の情報、接触クラスの先生、すべての病院のデータを検証する責任大学生の人を見るためにクリックすることができ、データは学校の予防と管理室に提出されます。
5。学校の予防と指定された人に責任ログインの制御「北西通常の防疫や統計情報の制御」サブシステムは、あなたが要約データを完了し、すべての生徒のリストを閲覧することができ、[書き出し]流行EXCELファイルデータを介して利用可能です。

ここで私が開発する最初のクラスを選択した
流行の日の場合1.サポートクエリの誰か:その基本的な機能
2.クエリ流行統計週/月のいくつかのデータを、統計結果のヒストグラムを表示する
特に見つけます以下の情報: 1.学校の生徒2、3は、湖北省、4であるかどうか、発熱です武漢5、6に武漢、7の領域を感染者と接触しているかどうか、被災地湖北省の芸術と接触している......今日、現場から学校に戻っ)

3.設計と実装の
カードクラス:
実装変数情報で流行の定義
(名前、学生番号を含む場合は、発熱、学生は湖北省でいるかどうか、学校に滞在するかどうか、湖北省かどうか、感染領域と接触者、武漢では、かどうか感染領域と接触している武漢の担当者、フィールドから学校に戻って、今日)

メインCardTest:
1)は、種々の機能を実現このような機能を有する
....名、名前によって学生4,5によって数照会、日付によって防止1.リスト情報、クエリ時間2、3つのクエリを含むが(正確クエリ6プレス防止情報照会、7出口システム)
txtファイルのデータに2)、操作
のJARパッケージに3)は、Javaのスイングメソッド呼び出しは、ヒストグラムを生成するために実施されてもよい(からを参照して、このブログ
4.テストを実行する
メインインターフェイスを:

あなたは、コマンドラインから実行することができ、実行するためにjarファイルをエクスポートすることができます

1.リスト防疫情報

2.クエリの時間

名前3.クエリ

4.学生IDの問い合わせ

名前、日付、正確な照会5.

6.防疫情報の照会
および7つの選択肢がに関しては、同じ原則があるのだ、発熱ケーススタディ発表するかどうか。

7.終了

プログラムの終了を。

コアコード

            // 导入疫情信息
    cardlist = new ArrayList<>();
    Scanner scanner = new Scanner(System.in);
    File file = new File("E:\\疫情.txt");
    int k;
    String p, q;
    try {
        FileInputStream fis = new FileInputStream(file);
        BufferedReader in = new BufferedReader(new InputStreamReader(fis));
        String temp = null;

        while ((temp = in.readLine()) != null) {
            Scanner linescanner = new Scanner(temp);
            linescanner.useDelimiter(" ");
            String name = linescanner.next();
            String id = linescanner.next();
            String a = linescanner.next();
            String b = linescanner.next();
            String c = linescanner.next();
            String d = linescanner.next();
            String e = linescanner.next();
            String f = linescanner.next();
            String g = linescanner.next();

            String time = linescanner.nextLine();

            Card card = new Card();
            card.setName(name);
            card.setId(id);
            card.setA(a);
            card.setB(b);
            card.setC(c);
            card.setD(d);
            card.setE(e);
            card.setF(f);
            card.setG(g);

            card.setTime(time);

            cardlist.add(card);
            x = cardlist.size();
        }

    } catch (FileNotFoundException e) {
        // TODO Auto-generated catch block
        System.out.println("信息文件找不到");
        e.printStackTrace();
    } catch (IOException e) {
        // TODO Auto-generated catch block
        System.out.println("信息文件读取错误");
        e.printStackTrace();
    }
// 系统主菜单
private static void show() {
    // TODO 自动生成的方法存根
    System.out.println("欢迎来到疫情查询系统,请选择你的操作");
    System.out.println("1.列出疫情信息");
    System.out.println("2.输入日期查看");
    System.out.println("3.输入姓名查看");
    System.out.println("4.输入学号查看");
    System.out.println("5.输入学号、日期查看");
    System.out.println("6.按具体情况查看");
    System.out.println("7.退出");
}

// 疫情信息
private static void title() {
    // TODO 自动生成的方法存根
    System.out.println("姓名\t学号\t有无发热\t是否为留校学生\t是否在湖北\t是否与湖北疫区人员接触\t是否在武汉\t是否与武汉疫区人员接触\t是否今天从外地返校 时间");

}
        //疫情信息中变量定义
    public class Card implements Comparable<Card> {
private String name;
private String id;
private String a, b, c, d, e, f, g;
private String time;

public String getName() {
    return name;
}

public void setName(String name) {
    this.name = name;
}

public String getId() {
    return id;
}

public void setId(String id) {
    this.id = id;
}

public String getA() {
    return a;
}

public void setA(String a) {
    this.a = a;
}

public String getB() {
    return b;
}

public void setB(String b) {
    this.b = b;
}

public String getC() {
    return c;
}

public void setC(String c) {
    this.c = c;
}

public String getD() {
    return d;
}

public void setD(String d) {
    this.d = d;
}

public String getE() {
    return e;
}

public void setE(String e) {
    this.e = e;
}

public String getF() {
    return f;
}

public void setF(String f) {
    this.f = f;
}

public String getG() {
    return g;
}

public void setG(String g) {
    this.g = g;
}



public String getTime() {
    return time;
}

public void setTime(String time) {
    this.time = time;
}

public String toString() {
    return name + "\t" + id + "\t" + a + "\t" + b + "\t" + c + "\t" + d + "\t" + e + "\t" + f + "\t" + g + "\t"
            + time + "\n";
}

@Override
public int compareTo(Card c) {
    // TODO 自动生成的方法存根
    return this.name.compareTo(c.getName());
}}

タスク3:2プロジェクト開発のタスクを完了するためには、私のプロジェクトのソースGithubのアカウント登録倉庫プロジェクトに完全なプロジェクトファイルを送信します。
これは、特定のメソッドの参照を輸入してきたこのブログ

6.まとめは
元々プロジェクトを行うためにデータベースに接続したい、最近の大きなきれいなコンピュータ、偶然のMicrosoft Visual C ++の結果が削除され、MySQLは(┬_┬)、唯一の二TXTで最高の代わりに、データは無関係ですファイルが行います。私のプログラムは、モジュール式の原則を実装するために2つのカテゴリー(Cardtestカテゴリ、カードクラス)に分かれています。

7.表示PSP

PSP 概要 計画時間(分)の合計を完了するために必要 完了するために必要な実際の時間(分)
プランニング これは、タスクは、一般的に作業工程に多くの時間と計画が必要と推定しました 10 6
開発 開発 625 830
・分析 (新しい技術を学ぶ含む)ニーズ分析 15 10
・デザインスペック 設計ドキュメントの生成 5 5
・デザインレビュー ・デザインレビュー(と彼の同僚は、設計文書を見直し) 0 0
・コーディング標準 ・コードの仕様(現在の開発のための適切な規範の開発) 5 5
・ 設計 ・具体的な設計 30 30
・コーディング ・具体的なコーディング 480 600
・コードレビュー ・コードレビュー 60 120
・テスト ・テスト(セルフテスト、コードを変更し、変更を提出) 30 60
報告 レポート 30 60
・ 試験報告書 ・テストレポート 5 5
・サイズ測定 ・コンピューティングのワークロード 5 5
・死後&プロセス改善計画 ・後知恵、およびプロセス改善計画を提案します 5 5

おすすめ

転載: www.cnblogs.com/1171849616a/p/12517483.html