结对编程

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

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.代码互审及合并
编程和创新设计是共同完成的,合并时按照代码规范做了一定的修改,总体没有发现什么大的问题。

四.代码说明

编程能力有限,代码参照了老师赏赐的文件夹。自主学习了本次创新部分的内容以及单元测试。
结对编程_第1张图片
结对编程_第2张图片
结对编程_第3张图片
结对编程_第4张图片

五.单元测试

代码

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);
        }
    }
}

结对编程_第5张图片

六.创新附加功能

创作了一个登录界面。
代码

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();
            }

        }
    }
}

结对编程_第6张图片
结对编程_第7张图片
结对编程_第8张图片

七.结对、总结及照片

结对编程_第9张图片
通过这次学习,我初步学会了如何创建窗体,以及运用窗体做出一份简单的登录界面。但是,最大的缺陷还是在于完全没有写代码的灵感,只好运用老师所给的代码,单元测试也是参考了其他同学的。今后得多多复习c#这一块。为团队作业做准备。

你可能感兴趣的:(结对编程)