201771030111- Liu Wei third experiment twinning project - "Northwest Normal epidemic prevention and control information system" project report

project content
Class blog https://edu.cnblogs.com/campus/xbsf/nwnu2020SE
Job Link https://www.cnblogs.com/nwnu-daizh/p/12521474.html
learning target Understand and master the knowledge and application of software engineering
Jobs goal Experience in software development cooperation, practice pair programming
Twinning partner Li Song Yu -201 771 030 110
Knot the other side of this experiment blog link https://www.cnblogs.com/Unicorn-snow/p/12573679.html
Github repository link https://github.com/Unicorn-snow/EIS

Task 1: Reading - Chapter 3-4 content "of modern software engineering Construction of Law", to understand and master the style code specification, code design specification, code reviews, pair programming concepts;

 1. Specification Style Code:
  Principle: simple, easy to read, unambiguous;

  ① indent: preferably four spaces;
  ② line width: 100 characters may be defined as;
  ③ parentheses: In order to take advantage of complex calculation parentheses, brackets clever;
  ④ Branches: not to pay attention multiple statements placed line;
  ⑤ name: named concise time to pay attention, to avoid unnecessary modification;
  ⑥ underline: underline the scope for semantic annotation and variables separated variable name in;
  ⑦ case: different words to distinguish the complex phrases;
  ⑧ Notes: interpreter what to do, why do so;

 2. Code design specifications:
  > code design specification format is not only a problem of diarrhea book program, but also involves all aspects of program design, the relationship between the modules, design patterns, etc., where there are a lot of content and specific programming languages are closely related (such as C, C ++. Java, C #).

 3. Code review:
  > look at the code correctly solve the problem within the framework of the code specifications. Code review is to identify the error code, whether the code errors, logic errors or arithmetic error should strive to identify and try to solve, identify potential errors and regression errors, look for possible improvement each other, each other "education" between developers , teaching experience, so that more members are familiar with the code of each part of the project, while familiar with practical knowledge and application dependent.

 4. Pair programming:
  > pair programming is a gradual process, efficient pair programming is not able to do one day. A pair programming mutual learning, mutual accommodation gradual process. Developers need time to adapt to this new development model. At first, pair programming is likely to develop more efficient than a single, but after spending a learning phase, pair programming team to develop quality, development time is usually developed more significant improvement than two people alone.

Task 2: Two two free pair, colorectal other side "of software engineering experiment two individual events," the project results to evaluate specific requirements are as follows:

  • Knot the other blog links ;
  • Knot the other Github project warehouse link ;
    (1)the project Bowen job to read and comment, comment highlights include: Bowen structure, blog content, blog structure and PSP in "The object of the" relationship column, the PSP "program completed a total need time "and" the actual time required to complete a "gap analysis to explore the causes of two data will be released over the comment content to a blog comments section.
      

(2) cloning colorectal other source project to the local machine, read and test run the code, refer to "modern software engineering - Construction of Law" Section 4.4.3 companion project code review checklist and record.
  

  

(3) based on the results of the review to try to source personal companion project to cooperate warehouse use github modification of Fork, Clone, Push, Pull request, Merge pull request other operations.
  
  
  
  
  

Task 3: The two pair programming mode, combined with our teachers and students daily epidemic reporting system experience, design and development of an information system in line with the needs of epidemic prevention and control work of our school

1. Demand Analysis:

  The end of December 2019, China Wuhan happen novel coronavirus (2019-nCoV) infected with pneumonia epidemic in order to curb the spread of the epidemic, effectively cut off the transmission of the virus, under the guidance of the central government, government departments at all levels to take a series of prevention and control measures: since 2020, at 10:23 on January Ri Wuhan "closed city", 31 provinces and municipalities have also implemented strict control measures; provinces and cities nationwide to send medical teams to participate in rescue work and Wuhan, Hubei; deployment in the country masks, protective clothing, medicines and other urgently needed medical resources to support Wuhan; to guide and supervise enterprises with production qualification of medical supplies across the country to resume production capacity as soon as possible; directed special financial allocation of funds for disease prevention and control; Wuhan guarantee supplies from other provinces to mobilize people's daily lives.
  It is worth mentioning that the Chinese Internet companies played an important role in the governance of social epidemic prevention and control. Tencent, for example, about the response to the outbreak control needs to develop a dozen a product. Where the epidemic online inquiry function, to reduce the mutual cross-infection between patients with fever have an important role in patients at home through the Internet Dr. Xiang Zaixian inquiry, reduces the risk of transmission of the virus or infection; rumor smash for the public to take a rational attitude towards the epidemic the development of great significance. Wuhan travel drops also set up a special team to serve the commuter medical staff, which plays an important role in the implementation of Wuhan traffic control. In addition, the new pneumonia patients diagnosed with stroke query tool, users only need to enter their own time by public transport and trips, you can confirm whether the infection was diagnosed counterparts, ahead of self-isolation and treatment work. In epidemic prevention and control, the Chinese Internet companies not only grow in terms of social responsibility has become increasingly mature.
  Related to the effective prevention and control mechanism with the acquisition, statistical information and investigation of the outbreak , the school developed a faculty / student epidemic reporting system to report daily by the staff of the epidemic, the epidemic of students reported daily, daily epidemic secondary sector summary table, four statistical reporting epidemic prevention and control subsystems. To achieve the basic situation of our school all categories of personnel, the regions and information gathering activities and track health. Teachers and students access to the system through micro-enterprise communication services our school hall telematics reporting .

  The job is to give us a theory with practice, we have a great opportunity to take advantage of what they have learned, the face of the epidemic, as college students, we will continue to make use of professional advantages, making the epidemic reporting system, to contribute their modest, convenient epidemic prevention and control organizations to collect relevant information, statistics and investigation, and to achieve visual effects and filter information by way of export Excel tables.

2. Software Design Description:

 (1) the functional design
  ① kinds of school staff and students can gather disease information;
  ② login to be able to achieve different kinds of students and teachers as well as the identity of the administrator;
  ③ School of epidemic prevention and control person in charge to see the College staff summary of the epidemic;
  ④ school of epidemic prevention and control persons responsible for providing advanced query features a combination of multi-attribute query and statistical query results visualization capabilities;
  ⑤ prevention and control of a designated person in charge of the school system login, you can browse a list of all persons reporting summary data ;
  ⑥ prevention and Control Office official school can take advantage of advanced query [] may be a combination of data screening system to graphically display the college students have been reporting and non-reporting statistics and key data statistics of the epidemic, and to export the query list [ export] EXCEL file;
  ⑦ of interacting with a GUI interface;
  ⑧ additional sub-functions: regular reporting to remind section.

 (2) The overall design:
  

 (3) Database Design:


3. software and core function code shows:

//使用poi扩展库,将输入的Jtable对象写入HSSFWork对象中,然后输出
public class JtableDownload {   

    JTable table;   
    FileOutputStream fos;
    JFileChooser jfc = new JFileChooser();   
    public static  boolean flag;

    public JtableDownload(JTable table) {
        this.table = table;   
        jfc.setSelectedFile(new File(""));  
        int result= jfc.showSaveDialog(null);
        File file = jfc.getSelectedFile();
        try { 
            if (result == JFileChooser.APPROVE_OPTION) {
                this.fos = new FileOutputStream(file + ".xls"); 
                flag=true;
            } else {
                flag=false;
                JOptionPane.showMessageDialog(null,"您取消了下载!");
            }
        } catch (FileNotFoundException ex) {
            JOptionPane.showMessageDialog(null, "已存在文件名相同的文件,要替换请先关闭!");
        } 
    }   

    public void export() {   
        HSSFWorkbook wb = new HSSFWorkbook();   
        HSSFSheet hs = wb.createSheet();   
        TableModel tm = table.getModel();   
        int row = tm.getRowCount();   
        System.out.println(row);
        int cloumn = tm.getColumnCount(); 
        System.out.println(cloumn);
        String te = table.getColumnName(0);
        System.out.println(te);
        
        //样式设计
        HSSFCellStyle style = wb.createCellStyle();   
        style.setAlignment(HorizontalAlignment.CENTER); // 居中
        HSSFFont font = wb.createFont();   
        font.setFontHeightInPoints((short) 11);   
        style.setFont(font);   

        for (int j = 0; j < cloumn; j++) {
            hs.setColumnWidth( j, (1 * 4000));   //设置列宽
        }
          

        //写入HSSF对象
        for (int i = 0; i < row + 1; i++) {   
            HSSFRow hr = hs.createRow(i);   
            for (int j = 0; j < cloumn; j++) {   
                if (i == 0) {   
                    String value = table.getColumnName(j);  
                    System.out.println(value); 
                    HSSFCell hc = hr.createCell(j);   
                    hc.setCellStyle(style);   
                    hc.setCellValue(value);   
                } 
                else {   
                    if (tm.getValueAt(i - 1, j) != null) {   
                        String value = tm.getValueAt(i - 1, j).toString();   
                        HSSFRichTextString srts = new HSSFRichTextString(value);   
                        HSSFCell hc = hr.createCell((short) j);   
                        hc.setCellStyle(style);   
                        if (value.equals("") || value == null) {   
                            hc.setCellValue(new HSSFRichTextString(""));   
                        } else {   
                            hc.setCellValue(srts);   
                        }   
                    }   
                }   
            }   
        }   
       
        try {   
            wb.write(fos);   
            fos.close();  
            JOptionPane.showMessageDialog(null,"下载完成");
        } catch (IOException ex) {  

        }   
    }   
} 

4. Run the program:
 (1) Log Part:
  

 (2) epidemic reporting sections:
  

 (3) two department heads query part:
  After logging only view the College of Information, obviously the person in charge of the account for the College of Liberal Arts
  

  ① visualization of the situation:
   

  ② Advanced Search
   

 (4) the query part of school officials:
  After logging in you can view all the information, it is clear that the account belongs to the person in charge of school
  
  after login can view all the information, it is clear that the account belongs to the person in charge of the school
  ① advanced query results:
   the page and (3) goes therefore not repeat
  ② visual situation:
  school officials may view the statistics of the college, which is switching to reporting cases of computer Science, statistics
   
  ③Excel export situation:
   click the "export" button in the save dialog box pops up
   
   after the success of pop-up dialog box
   
   to locate the file and open and found the data successfully imported
   
   

The pairing procedure:

① specification reference code pair complete discussion of experimental code specifications.
② download and read each other's code, the other party to cooperate modify the source code using the Github repository operating under consent of the other premise.
③ discuss and fill out the PSP scheduled time.
④ one by one analysis of experimental mission requirements, this joint project needs analysis and overall design.
⑤ by the build Li Song encyclical responsible framework and GUI interface part, I led achieve export features and additional functions of Excel, the swap process leading location, while the other was carried out on Codes of monitoring and reminders, provides the functions to achieve different ideas, and then choose a better implementation, at the time of emergence Bug, along with the code reading, find logic errors, higher than the coding efficiency alone.
⑥ After completion of the project, the two co reviewed according to the code specifications, to simplify redundant statement.
⑦ Fill PSP actual time.
⑧ report writing documents, lessons learned.
  

  

  Typing chat exchange inconvenience, we chose to use the telephone exchange, share code with Github. So I attached the two screenshots above,

6.PSP show:

PSP2.1 SUMMARY Plans to complete the required time (min) The actual time required for completion (min)
Planning plan 10 10
·  Estimate It estimated that the task requires more than
little time and planning generally
work steps
10 10
Development Develop 1260 1200
··  Analysis Needs analysis (including learning
new technologies)
60 40
·  Design Spec Generate design documents 30 30
·  Design Review Design review (audit and students
core design documents)
60 30
·  Coding Standard Code specifications (for the current
development of appropriate specification development)
10 20
·  Design Specific design 40 30
·  Coding Specific coding 1000 1000
·  Code Review Code Review 30 30
·  Test Test (self-test,
modify the code, submit modifications)
30 20
Reporting report 50 40
··  Test Report testing report 20 10
·  Size Measurement Computing workload 10 10
·  Postmortem &
Process Improvement Plan
Hindsight, and proposed a
process improvement plan
20 20

  
7. Summary: In this pair programming practice, I deeply appreciate the benefits of taking programming. While online learning, twinning process the inconvenience, but we have also mastered the application of various tools Github and other platforms. On the other hand, compared with the individual software development, there is the junction partner motivated me more as soon as possible to carry out software development, and progress has been urging me to complete on time code during development. Despite the knot is very slow for early progress, but in the software development process, we learn from each other, mutual supervision, let me in software development above invested more time and energy, but also to learn more knowledge, so this pair programming final the result will be better than the results I am a man of learning. Of course, should be most grateful is that I fly teammates.

Guess you like

Origin www.cnblogs.com/Summer-Sy/p/12556274.html