个人第三次作业

个人第三次作业--结对编程

github地址 https://github.com/226DEBABA/PairProgramming
结对伙伴作业地址 https://www.cnblogs.com/bookway/
说明:此次结对编程作业由付昶宇和黄本巍共同完成

一.PSP表格

PSP2.1 Personal Software Process Stages 预估耗时 实际耗时
Planning 计划 30 25
Estimate 估计这个任务需要多少时间 800 900
Development 开发 60 60
Analysis 需求分析 60 90
Design Spec 生成设计文档 30 20
Design Review 设计复审 10 15
Coding Standard 代码规范 15 15
Design 具体设计 40 60
Coding 具体编码 120 150
Code Review 代码复审 60 60
Test 测试 120 150
Reporting 报告 120 120
Test Report 测试报告 60 90
Size Measurement 计算工作量 20 20
Postmortem & Process Improvement Plan 事后总结, 并提出过程改进计划 40 60
合计 785 935

二.程序设计

1.设计思路
项目由C#语言完成,先建立模拟数据库中的学生集合,再建立接口将学生信息从数据库提取出来并实现点名功能。在原有基础上设计了登陆的功能。
2.如何体现所列举的原则
(1)Design By Contract: 在正确的输入下才能够得到输出,否则程序报错。
(2)Information Hiding: 使用C#中的Public和Private。
(3)Interface Design: 建立面向数据库的接口,用以建立不同功能层之间的通信,并对协定进行定义的引用类型。
(4)Loose Coupling : 保持各模块的独立性,高内聚低耦合。

三.代码审核及合并

1.代码规范
我们学习了相关知识,具体参考链接:https://www.jianshu.com/p/d7e87107073c
2.代码互审及合并
编程和创新设计是共同完成的,合并时按照代码规范做了一定的修改,总体没有发现什么大的问题。

四.代码说明

编程能力有限,代码参照了老师赏赐的文件夹。自主学习了本次创新部分的内容以及单元测试。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

五.单元测试

代码

using System;
using Microsoft.VisualStudio.TestTools.UnitTesting;
using DaoLayer;

namespace UnitTestProject2
{
    [TestClass]
    public class UnitTest1
    {
        [TestMethod]
        public void TestMethod1()
        {
            DaoLayer.StudentDAO dao = new DaoLayer.StudentDAO();
            Assert.AreEqual(dao.getStudentRecordsNums(), 84);
        }
    }
}

在这里插入图片描述

六.创新附加功能

创作了一个登录界面,详见黄本巍作业附图。
代码

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;

namespace WinformControlUse
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        private void label2_Click(object sender, EventArgs e)
        {

        }

        private void button1_Click(object sender, EventArgs e)
        {
            if (textBox1.Text == "黄本巍" && textBox2.Text == "123456")
            {
                this.Hide();
                FrmStudent frmStudent = new FrmStudent();
                frmStudent.Show();
            }
            if (textBox1.Text == "付昶宇" && textBox2.Text == "123456")
            {
                this.Hide();
                FrmStudent frmStudent = new FrmStudent();
                frmStudent.Show();
            }

        }
    }
}

在这里插入图片描述

七.结对、总结及照片

结对编程模式是第一次使用,对复杂的项目的确提高了效率;这次作业在代码编辑方面因为有老师的帮助做的不多,还需多加学习;这次使用了PSP表格合理安排了时间,提高做作业的效率。

posted @ 2019-10-01 16:11  别ban亚索  阅读(143)  评论(0编辑  收藏  举报