project | content |
---|---|
Course class blog link | https://edu.cnblogs.com/campus/xbsf/nwnu2020SE |
This job requires link | https://www.cnblogs.com/nwnu-daizh/p/12521474.html |
My course learning objectives | Teamwork PSP planning to continue programming skills proficiency Github related operations |
This job helped me achieve learning objectives in what areas | MySQL hamburger method of using an experimental project with two other co-knot PSP |
Knot the other school number - Name | 201271050130- Teng Jiangnan |
The blog knot the other job link | https://www.cnblogs.com/tjnkxh/p/12522150.html |
Github repository project link address | https://github.com/banmianzhuang02/MyProject |
A task
concept | understanding | page number |
---|---|---|
Code style guide | The main aspects of the text of the provisions, principles: concise, easy to read, unambiguous | F70 |
Code design specifications | The main program is the relationship between design, module design patterns | P75 |
Code Review | Code is correctly solve the problem within the framework of the code specifications | P79 |
Pair Programming | One pair programmer side by side, equally, to develop complementary work | F85 |
Task II
Knot the other blog
https://www.cnblogs.com/tjnkxh/p/12522150.html
Knot the other github project warehouse link
https://github.com/jiangnanteng0413/jieduixiangmu
comment
Peer Code review
Code Checklist
Checklist Item | Analysis |
---|---|
Summary section | Code specification uncommitted, function is not fully realized, readability, and security needs to be improved. Format specification recommends a unified code, optimization and security. |
Design Specification | Comply with design patterns, but there is no useless code, there is not part of the design implementation. Recommendation: system functions as much as possible, remove the extra code. |
Code Specification | Code specification document is not submitted, the code specifications need to upgrade. |
DETAILED code portion | Code that implements only the graphical user interface, data tables did not import, can not be queried. Recommendations: need to further modify the code late, hoping to achieve complete functional requirements of the project. |
efficacy | The code can be compiled normally, no timeout situation |
readability | Code readability moderate, less comment. Recommendation: increase code comments, unified format. |
Testability | Recommendation: lack of form data test, the latter may wish to add. |
Hamburger law
We often say that [feedback], but at the time to provide feedback, not completely addicted to the past of vintage sesame rotten millet, for others to do the evaluation, conclusions. This will create a [you are doing a good job, I hate you] emotions. We can adjust the angle, the [feedback], become [feedforward], stressed that [you have not done enough in the past, but we can do better in the future] in the technical team, we still have to focus on feedback [behavior and consequences ] this level, do not rush down to [the habits and motivations], [nature]. unless the situation is very grim, needs to touch the hearts of others, let others brink.
Then come back a piece of bread, covered. This time can be echoed at the beginning, to encourage each other to get the job done.
---- quote from the "Building of the law - modern software engineering" Zou Yan
Task three
demand analysis
December 2019, Wuhan happen novel coronavirus (2019-nCoV) epidemic, to prevent further spread of the epidemic, the Chinese government in 2020 January 23 to Wuhan to take quarantine measures, including Beijing, Shanghai and other 31 provinces and cities have also the implementation of strict control measures.
---- quoted from "China to fight the new coronavirus: the progress and impact."
At present, the epidemic prevention and control work to the most critical stage of Chi Jin. Is accurate and efficient collection and statistical school staff and students new crown pneumonia epidemic prevention and control information, and further consolidate the basis for epidemic prevention and control work, determined to win the campus epidemic prevention and control warfare, organized forces school teachers and students to develop a healthy punch card system.
---- quote from the "Notice on the test run, Northwest Normal University teachers and health punch card system."
School staff, distribution of a wide range of students, making the epidemic data collection complicated, difficult. The system built by reporting platform, data integration, and statistical analysis, to provide a scientific basis for further grasp schools epidemic situation. Data is the blood of the platform, dynamic data is now updated to reflect the vitality of the platform. Users fill in the information system via the client interface, while the back-end database synchronization update, and store it up for statistical analysis. By integrating back-end data, it can be screened investigation, to generate the corresponding chart for optimum visibility of the epidemic data.
Functional Requirements
(1) all kinds of school staff and students can gather disease information;
(2) each of the two departments responsible for epidemic prevention and control work of the department staff can view summary epidemic and provide advanced query features a combination of multi-attribute query and visualization of statistical functions;
(3) prevention and control of a designated person in charge of the school Login "Northwest Normal epidemic prevention and control statistical information" subsystem, you can browse a list of all persons reporting aggregated data, use [] advanced query data can be combined screening system to graphically display each college has students reporting and non-reporting statistics and key data statistics of the epidemic, [export] can query EXCEL file list;
(4) human-machine interface GUI interface requirements;
Software Design Description
class | Gui class interface generation | CRUD class background data | The graph generation class | Entity class |
---|---|---|---|---|
effect | Generating a corresponding GUI interface on demand | Data in the database to achieve the necessary processing | Generating a histogram based on the data corresponding to the background | See github |
Design analysis
core function | Design analysis |
---|---|
relationship | The GUI display generated based on a graph-based CRUD background data according to a user's needs, the histogram data according to the query type display background |
An important method in the class CommFrame | actionPerformed method CommFrame class data and then displays the GUI |
An important method in the class | JPanel has inherited a method add the specified constraint object to add the component layout of this container Execute_ * Method complete deletions of background data change search Query.getAllInfo () method of the background data to complete the query and generate the corresponding histogram |
Feature Screenshots
login interface
Successful landing
No reporting information
Information has been reporting
By Student ID inquiry
Query by name
Histogram generation
Code upload
part of the operation github
The core code shows
package 疫情;
import java.sql.*;
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
import java.awt.Color;
public class LLogin {
public static void main(String[] args) {
new loginFrame();
}
}
class loginFrame extends JFrame implements ActionListener{
Box box1,box2,baseBox;
JLabel userName,userPwd,tubiao;
JTextField nameField;
JPasswordField pwdField;
JButton button;
JTabbedPane choose;
JPanel panel1,panel2;
loginFrame(){
setBackground(Color.white);
userName=new JLabel("账号",JLabel.CENTER);
userPwd=new JLabel("密码",JLabel.CENTER);
nameField=new JTextField(8);
pwdField=new JPasswordField(8);
panel1=new JPanel();
panel2=new JPanel();
choose=new JTabbedPane();
choose.add("登录界面",panel1);
panel1.setLayout(new GridLayout(2,2));
panel1.add(userName);panel1.add(nameField);
panel1.add(userPwd);panel1.add(pwdField);
add(choose,BorderLayout.CENTER);
button=new JButton("登陆");
add(button,BorderLayout.SOUTH);
button.addActionListener(this);
//小图标
ImageIcon tubiao=new ImageIcon("H:/Java:学生信息成绩管理系统/StudentSystem/src/疫情/层云.jpeg");
setIconImage(tubiao.getImage());
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setVisible(true);
setBounds(200,100,500,200);
setTitle("疫情信息管理系统");
validate();
}
public void actionPerformed(ActionEvent e){
String name,pwd;
name=nameField.getText();
pwd=pwdField.getText();
try{
Class.forName("com.mysql.jdbc.Driver"); //加载数据库驱动
}
catch(ClassNotFoundException ex){
System.out.println(ex);
}
try{
Connection con;
Statement sql;
ResultSet rs;
String url,userName,userPwd;
// 连接数据库的语句
url = "jdbc:mysql://localhost:3306/studentinfo?useUnicode=true&characterEncoding=utf-8";
userName="root";
userPwd="root";
con=DriverManager.getConnection(url,userName,userPwd);
sql=con.createStatement();
rs=sql.executeQuery("select * from login where name ='"+name+"' and pwd='"+pwd+"'");
int q=0;
while(rs.next()){
q++;
}
if(q>0){
JOptionPane.showMessageDialog(this, "登陆成功!","消息对话框",JOptionPane.WARNING_MESSAGE);
this.dispose();
new CommFrame();
}
else
JOptionPane.showMessageDialog(this, "账号或者密码错误!","消息对话框",JOptionPane.WARNING_MESSAGE);
}
catch(SQLException exp){
System.out.println(exp);
}
}
}
QQ Screenshot
PSP
PSP | SUMMARY | Plan time (min) required to complete a total of | The actual time required to complete |
---|---|---|---|
Planning | It estimated that the task requires much time and planning generally work steps | 15 | 20 |
Deveploment | Develop | 60 | 80 |
Analysis | Needs analysis (including learning new technologies) | 30 | 35 |
Design Spec | Generate design documents | 20 | 20 |
Design Review | Design review (peer review and design documents) | 20 | 15 |
Coding Standard | Code specifications (development of appropriate norms for the current development) | 60 | 45 |
Design | Specific design | 60 | 60 |
Coding | Specific coding | 300 | 400 |
Code Review | Code Review | 60 | 60 |
Test | Test (self-test, modify the code, submit modifications) | 60 | 90 |
Reporting | report | 60 | 80 |
Test Report | testing report | 30 | 30 |
Size Measurement | Computing workload | 10 | 10 |
Postmortem & Process Improvement Plan | Later summarized, and process improvement plan | 20 | 20 |
summary
The twinning great experiment harvest, in my opinion the most important harvest will not learn to deal with their own a lot of knowledge points, followed to complete the task as early as possible, twinning experiment helped me a lot, I believe that many students are also the same, but the difference lies in the different possible above the pre-thinking, and I and my teammates do not seem basic consensus, etc., does not exist, did not appear at the discrepancies and comments may be pre clearer division of labor, each also multi consideration for each other a bit, so this knot compared to single projects to cooperate with us much easier.
Also in the twinning process teammates I learned a lot, my first time I overcame the problem is not in place to control, only to find that changes may be better than planned and more, so everything took the early to prepare, instead of the planned sub-points interlocking, but should retain room for change, so that it can cope.