zoukankan      html  css  js  c++  java
  • 2020软件工程作业05

    这个作业属于哪个课程 https://edu.cnblogs.com/campus/zswxy/software-engineering-2017-1
    这个作业要求在哪里 https://edu.cnblogs.com/campus/zswxy/software-engineering-2017-1/homework/10619
    这个作业的目标 网页实现家族树关系图
    作业正文 如下所示
    其他参考文献 www.baidu.com
    AntV蚂蚁数据可视化
    AntV-g6 紧凑树参考文档
    AntV-g6 紧凑树展示




    结对信息与分工

    20177701 QSJ
    20177696 LYX

    分工

    QSJ:编写提取文本中的关键信息的代码
    LYX:学习AntV数据可视化模板,完成可视化操作



    Github网址:

    https://github.com/EngulfMiss/20177701-and-20177696




    PSP表格

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




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

    代码由两部分组成

    1.Tree.html文件
    2.Tree.js文件

    算法的关键与关键实现部分流程图

    我们采用的是AntV中的一个模板,关键就在于,我们如何把文本框输入的部分,
    转化为示例中的样式。关键步骤就是在文本输入中找到,导师,学年,学位这三个节点,并且
    并且节点的关系为,导师-->学年-->学位,导师为根节点。

    代码片段

    寻找导师这个根节点

    寻找学年节点

    寻找学历节点


    g6 模板提供的一些API如下

    设计与展示

    设计思路

    从文本输入中找到导师,学年,学位,学生这些关键信息,按照学生是什么学位
    这个学位的学生是哪个学年的,这些学年中获得这些学位的学生属于哪个导师这
    样的逻辑结构构造这颗关系树。

    成果展示

    根据文本输入生成关系树




    部分收缩过程




    完全收缩后关系树




    特色功能:能放大缩小

    使用说明

    您可以尝试在文本框中输入该测试用例(程序已经默认填入2个测试用例):

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

    其中,"导师:","级博士生:","级硕士生:","级本科生:"和"、"当做关键词处理;若有多组输入,中间空一行。
    注意:文本输入中的符号均为中文符号




    测试

    遇到的困难和解决方法

    遇到的困难:
    1.我们两个html和JS都记得不太清楚了,都是最近重新复习就开始写程序了,刚开始遇到了很多
    技术上的困难,如如何提取文本中的关键信息,搞得我们很烦。
    2.我们也是第一次了解AntV这个东西,虽然官网提供了很多例子,但刚开始测试的时候还是很难
    弄出来。
    3.事情太多,都是间断的时间在搞这个,思路不能很好连贯。

    解决方法:
    不会就问,不懂就查,多抽时间。

    收获:
    QSJ:知道了有许多已经比较完善的前端模板和库,我在AntV的官网中看到了很多关于数据可视化的
    技术,有点意思。当然在这次作业中,我也发现了我编程能力还有很多不足,很多关键的技术还是在百度
    中找的,我还需要努力学习。

    LYX:团队合作对于一个项目来说是必不可少的,如果想要达到一个比较完整的效果,通过结对办法,
    可以把两个人的观点结合。合作也可以让我们更高效的完成任务。

    队友评价

    QSJ:
    LYX的思维比较新颖,能联想出新的灵感。
    编程技术方面有待提升。编程能力还可以有更多的提升空间

    LYX:
    QSJ的思维与编写能力都强过我,善于去钻研困难,找出突破点。
    部分地方运用得还是不那么灵活,值得改进。

  • 相关阅读:
    Linux基础命令—clear
    Linux基础命令—mv
    Linux基础命令—rm
    Linux基础命令—cp
    Linux基础命令—touch
    Linux基础命令—tree
    C#获取设备话筒主峰值(实时音频输出分贝量)
    C# 获取基类或者接口的所有继承类方法
    RegisterAttached 两种绑定方式
    RijndaelManaged 加密
  • 原文地址:https://www.cnblogs.com/didibaba9898/p/12717877.html
Copyright © 2011-2022 走看看