2020 Software engineering work 05
Github address job: https://github.com/changorz/work
Job Description
Software Engineering | https://edu.cnblogs.com/campus/zswxy/software-engineering-2017/ |
---|---|
Work requirements | https://edu.cnblogs.com/campus/zswxy/software-engineering-2017/homework/10496 |
topic | 2020 Software engineering work 05- visual family tree |
Text of the job | DCW students work blog address: https://www.cnblogs.com/chang1024/p/12578372.html blog work address MYK students: https://www.cnblogs.com/mykang/ |
Other references | layui help documentation: https://www.layui.com/doc/ |
Specific division of labor
-
DCW is responsible for the preparation of back-end data and write the interaction ajax
-
MYK responsible for writing the front-end interface. And documenting information together.
PSP
PSP2.1 | Personal Software Process Stages | Estimated time consuming (minutes) | Estimated time consuming (minutes) |
---|---|---|---|
Planning | plan | 20 | 20 |
Estimate | Estimate how much time this task requires | 20 | 20 |
Development | Develop | 820 | 643 |
Analysis | Needs analysis (including learning new technologies) | 60 | 60 |
Design Spec | Generate design documents | 10 | 8 |
Design Review | Design Review | 10 | 5 |
Coding Standard | Code specifications (development of appropriate norms for the current development) | 20 | 10 |
Design | Specific design | 30 | 30 |
Coding | Specific coding | 600 | 480 |
Code Review | Code Review | 30 | 20 |
Test | Test (self-test, modify the code, submit modifications) | 60 | 30 |
Reporting | report | 60 | 40 |
test repor | testing report | 20 | 10 |
Size Measurement | Computing workload | 10 | 10 |
Postmortem & Process Improvement Plan | Later summarized, and process improvement plan | 30 | 20 |
total | 920 | 703 |
annex
demand analysis
- End of the input data in the web
- Shows a tree structure
Code Specification
- Module Development
- CamelCase
Design and implementation of problem-solving ideas description and explanation
-
The front end of the input data sent asynchronously to the server
-
The server processing the data stored in the database, the data returned to the front end
-
Front-end display tree
FIG controller class
4. flowchart
Additional features of design and display
Frame design using layui
Catalog descriptions and instructions for use
Can improve the place : for example, supports uploading text files as input; right one node, you can enter a separate, add its child nodes; support for additional input information, such as contact details, click on a node to see that additional information; presenting the results can be exported pictures and more.
unit test
Testing tools : IDEA
Parse the string test method
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 interface test
Github code posted record check
Difficulties encountered and solutions
As the pair programming difficulty, we use TeamViewer remote control and presentation during the epidemic to achieve QQ line pair programming.
Evaluation of your teammates
DCW:
In this job, I am responsible for the preparation of background, md written. MYK responsible for writing the front-end, UI design, project flow chart design and so on.
SOFT:
At this junction I am responsible for programming write front-end interface, write DCW is responsible for the back end of the whole process fully aware of their knowledge amount is not more than DCW, because I forgot ajax wording, and write an ajax post request DCW solve the problem, finally complete coding. Layui framework which is used to tell me DCW.
Ps: The job share a PC connection is done by remote