软件工程实践2019第五次作业

项目 地址
本作业博客链接 https://edu.cnblogs.com/campus/fzu/2019FZUSEZ/homework/8736
Github项目地址 https://github.com/nevermoress/031702130-031702131.git

一、结对信息和具体分工

姓名 学号 分工 地址
张成德 031702130 编写前端页面,编写博客,测试 https://www.cnblogs.com/zcd031702130/
蔡劭凡 031702131 编写前端页面,编写输入模块,总结 https://www.cnblogs.com/cai1999/

二、PSP表格

PSP2.1 Personal Software Process Stages 预估耗时(分钟 实际耗时(分钟)
Planning 计划 30 45
-Estimate -估计这个任务需要多少时间 30 45
Development 开发 1740 2400
-Analysis -需求分析(包括学习新技术) 360 480
-Design Spec -生成设计文档 30 30
-Design Review -设计复审 10 10
-Coding Standard -代码规范(为目前的开发制定合适的规范) 20 20
-Design -具体设计 30 40
-Coding -具体编码 960 1200
-Code Review -代码复审 30 20
-Test -测试 300 600
Reporting 报告 50 75
-Test Repor -测试报告 20 30
-Size Measurement -计算工作 20 30
-Postmortem & Process Improvement Plan -事后总结, 并提出过程改进计划 10 15
合计 1820 2520

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

1.代码组织与内部实现设计

    以html为主体,在body中主要分为两个模块:1.数据处理模块、2.树型结构的渲染模块。第一部分将在下面说明,第二部分调用了bootstrap、jQuery、d3三种JavaScript框架。

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

    算法的关键:我们认为算法的关键是输入信息的提取部分,实现方法:在页面中创建文本框,将文本内容全部保存在一个变量中,对变量进行信息提取,采用循环和sprit()语句进行拆分,以及indexOf()语句进行判断,对文本内容先后根据“\n”,“:”,“级”以及“、”等关键字进行拆分存取。

3.重要的代码片段

  • 数据处理模块
for(l=0;l
  • 树型结构的渲染模块

四、附加特点设计与展示

1.设计的创意独到之处

    设计了文本框填写信息界面的文字引导

2.实现思路

    在信息输入部分代码加入文字引导

3.重要的代码片段

4.实现成果展示

软件工程实践2019第五次作业_第1张图片


五、目录说明和使用说明

1.目录说明

    在github里面存放了tree.html和js文件夹,文件夹里是代码引用的框架

2.使用说明

     下载js文件夹以及html文件的压缩包,下载完解压,用谷歌浏览器打开tree.html就能运行。


六、单元测试

1.测试工具

    Chrome的F12里的Console,因为在网易云课堂上看叶建华老师的JS教程时,他在很多时候都运用了Chrome的F12里的Console来进行单元测试,我觉得这是一个既简单又快捷的单元测试办法。

2.测试的函数

    console.log()函数

3.说明构造测试数据的思路

    构造测试数据的思路当然是不停的改变数据,并尽可能考虑各种数据出现的情况,比如说输入的行数,每一行的名字数,每个名字的字数等等等等。


七、Github的代码签入记录

软件工程实践2019第五次作业_第2张图片


八、遇到的代码模块异常或结对困难及解决方法

1.问题描述

一开始不会处理输入的数据,最后不能实现多棵树并联

2.做过哪些尝试:

在搜索引擎上查阅相关资料

3.是否解决:

部分解决

4.收获:

学会了对输入数据的分割,关键字提取,JS正则等内容,能够将输入数据转化为树形结构,遗憾的是还未实现树的动态并联。


九、评价你的队友

评价我的队友蔡邵凡:

1.值得学习的地方:谦虚好学,学习效率高,关键人还长得帅。
2.需要改进的地方:需要更好的配合以及沟通交流。


你可能感兴趣的:(软件工程实践2019第五次作业)