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

个人第三次作业——结对编程(黄耀萱、孙颖)

个人第三次作业结对作业
Github项目地址Github项目地址
结对伙伴的博客地址小黄博客地址

一、PSP表格

PSP是卡耐基梅隆大学(CMU)的专家们针对软件工程师所提出的一套模型:Personal Software Process (PSP, 个人开发流程,或称个体软件过程)。

PSP2.1Personal Software Process Stages预估耗时(分钟)实际耗时(分钟)
Planning计划2020
·Estimate· 估计这个任务需要多少时间840900
Development开发720810
· Analysis· 需求分析 (包括学习新技术)80120
· Design Spec· 生成设计文档1010
· Design Review· 设计复审 (和同事审核设计文档)1010
· Coding Standard· 代码规范 (为目前的开发制定合适的规范)1010
· Design· 具体设计3060
· Coding· 具体编码360360
· Code Review· 代码复审6060
· Test· 测试(自我测试,修改代码,提交修改)180180
Reporting报告130190
· Test Report· 测试报告60120
· Size Measurement· 计算工作量88
· Postmortem & Process Improvement Plan· 事后总结, 并提出过程改进计划6060
合计25782918

●有关PSP的更多内容,请自行阅读邹欣老师的博客:
http://www.cnblogs.com/xinz/archive/2011/10/22/2220872.html

二、计算模块的设计与实现过程

1.设计

  该项目运用C#语言将学生信息录入,登录后进行数据加载,并实现实现点名功能。
这些功能总体由这几个部分组成:
(1)FrmLogin(登陆窗体)
登陆窗体
(2)FrmStudent(学生随机点名系统窗体)
学生随机点名系统窗体
(3)Student、StudentDataset、StudentDAO类

2.原则

(1)Design By Contract(契约式设计):契约式设计就是按照某种规定对一些数据等做出约定,如果超出约定,程序将不再运行,例如要求输入的参数必须满足某种条件。
如何体现:设计在正确的输入下,能够得到正确的输出,否则程序将报错。
参考链接:https://baike.baidu.com/item/%E5%A5%91%E7%BA%A6%E5%BC%8F%E8%AE%BE%E8%AE%A1/2180000?fr=aladdin
该项目实现过程中的应用如图:
报错界面
(2)Information Hiding(信息隐藏):信息隐藏指在设计和确定模块时,使得一个模块内包含的特定信息(过程或数据),对于不需要这些信息的其他模块来说,是不可访问的。
如何体现:C#中的访问修饰符分为public 、private、protected 、internal等,而修饰类的只有public和internal。
public:公开的、公共的;
private:私有的,只能在当前类的内部访问;
protected:受保护的,只能在当前类的内部及该类的子类中访问;
interal:只能在当前项目中访问。
(3)Interface Design(接口设计):对接口的名字,功能,接口与接口间的继承关系进行设计;好的接口设计可以增强代码可读性,易用性,可更改性。
如何体现:我们用的是项目之间的引用,并没有涉及到接口。
(4)Loose Coupling (松耦合):软件系统结构中各模块间相互联系紧密程度的一种度量。模块之间联系越紧密,其耦合性就越强,模块的独立性则越差。模块间耦合高低取决于模块间接口的复杂性、调用的方式及传递的信息。
如何体现:目前并没有达到很熟练的程度,模块之间联系并不是很紧密,耦合性较差。

3、实现

(1)登录界面代码设计
登录界面代码设计
(2)FrmStudent代码设计(学生随机点名系统窗体)FrmStudent代码设计(学生随机点名系统窗体)
(3)创建学生表并实现调用,完成随机点名
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

三、代码复审过程

1、C#代码编写规范:https://blog.csdn.net/VS18703761631/article/details/94615734
2、在代码复审过程中,我们互相检查排版是否正确,命名是否规范,包括方法的命名、控件的命名、类的命名等。

四、运行结果

在这里插入图片描述
在这里插入图片描述

五、单元测试展示

我们对 WinformControlUse 进行单元测试,结果如图:
单元测试展示

六、结对的过程及讨论的结对照片

1、结对过程:我们本为室友,上课及平时活动都在一起,讨论起来比较方便,因此结对。
2、讨论的结对照片:
讨论的结对照片

七、总结与感想

☛☛该项目是我们第一次接触结对编程,虽然上课的时候老师带领我们一起完成了一遍窗体与代码的设计,但是当想到要自己独立完成时仍然有一些心理压力。在完成过程中,因为项目类型创建错误以及其他各种原因,我们进行了一次又一次的修改,最终也得到了期望的结果,还是有一点点小欣慰的。在本次结对过程中,我们两人分别负责不同的部分,在遇到困难时相互帮助,解决困难,体会到了1+1>2的感受,也让我们对结对编程的理解更加深入。

转载于:https://www.cnblogs.com/SY980808/p/11615851.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值