2020软件工程作业05

这个作业属于哪个课程https://edu.cnblogs.com/campus/zswxy/software-engineering-2017-1
这个作业要求在哪里 https://edu.cnblogs.com/campus/zswxy/software-engineering-2017-1/homework/10619
这个作业的目标 实现关系树
作业正文 如下
其他参考文献 百度文库

 

 

 

作业的github地址:https://github.com/whh12569/20177662-201777726

具体分工

王鸿鹄20177662负责后端的编写并写了ajax的数据交互

段清平20177726负责前端界面的编写。并一起编写文档信息。

PSP

PSP2.1Personal Software Process Stages预估耗时(分钟)预估耗时(分钟)
Planning 计划 20 20
Estimate 估计这个任务需要多少时间 20 20
Development 开发 820 643
Analysis 需求分析 (包括学习新技术) 60 60
Design Spec 生成设计文档 10 8
Design Review 设计复审 10 5
Coding Standard 代码规范 (为目前的开发制定合适的规范) 20 10
Design 具体设计 30 30
Coding 具体编码 600 480
Code Review 代码复审 30 20
Test 测试(自我测试,修改代码,提交修改) 60 30
Reporting 报告 60 40
Test Repor 测试报告 20 10
Size Measurement 计算工作量 10 10
Postmortem & Process Improvement Plan 事后总结, 并提出过程改进计划 30 20
合计   920 703

附件

需求分析

  • 在web端输入数据
  • 展示成树状结构

代码规范

  • 模块开发
  • 驼峰命名

解题思路描述与设计实现说明

  1. 前端输入数据异步发送到服务器

  2. 服务器处理数据,存储到数据库,向前端返回数据

  3. 前端展示树形结构

    controller类图

    4.流程图

附加特点设计与展示

​ 采用layui框架设计

目录说明和使用说明

可改进地方:比如支持上传文本文件作为输入;右键某一个节点,可以再单独输入,添加其子节点;支持输入额外信息,比如联系方式,点击某个节点可以查看其额外信息;呈现结果可以导出图片等等。

单元测试

测试工具:IDEA

解析字符串方法测试

package chang;

import chang.pojo.Children;

import java.util.ArrayList;
import java.util.Scanner;

public class Main {

    public static void main(String[] args) {
                /*
        导师:张三
            2016级博士生:天一、王二、吴五
            2015级硕士生:李四、王五、许六
            2016级硕士生:刘一、李二、李三
            2017级本科生:刘六、琪七、司四

            导师:张三 2016级博士生:天一、王二、吴五 2015级硕士生:李四、王五、许六 2016级硕士生:刘一、李二、李三 2017级本科生:刘六、琪七、司四
         */

        Scanner sc = new Scanner(System.in);
        String sssss = sc.nextLine();
        String[] s = sssss.split("\n");

        for (int i = 0; i < s.length; i++) {
            System.out.println(s[i]);
        }

        Children ds = null;
        for (int i = 0; i < s.length; i++) {
            if(i == 0){
                ds = new Children( s[i].trim().split(":")[1], new ArrayList<>());
            }else{
                String[] ss = s[i].trim().split(":");
                // 创建班级
                Children bj = new Children(ss[0],new ArrayList<>());
                // 创建班级学生集合
                ArrayList stus = (ArrayList) bj.getChildren();
                String[] sss = ss[1].split("、");
                for (int j = 0; j < sss.length; j++) {
                    stus.add(new Children(sss[j]));
                }
                bj.setChildren(stus);
                ds.getChildren().add(bj);
            }
        }

        System.out.println(ds);

    }

}

api接口测试

 

遇到的困难

这是第二次结对编程了,相比第一次结对编程,这次的题目更加难,设计到了算法,我不会算法,基础不好,只能自己看网上的资料,问问班上的大佬,最终只能做成这样,基础不好,后面果然干什么都不行。

评价你的队友

王鸿鹄 :我主要负责后台编写,md编写等等。聪明,能干,吃苦耐劳。

段清平:负责前端界面的编写,DCW负责后端的编写。总能想出最简单,最省力的方法

​ 

 

 

posted @ 2020-04-17 19:31  7662  阅读(158)  评论(0编辑  收藏  举报