第三次作业

作业地址:https://edu.cnblogs.com/campus/xnsy/SoftwareEngineeringClass2/homework/2879

github地址:https://github.com/Anzerl/-

1. PSP表格

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

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

 

2. 讨论与实现

   项目分析:

(1)首先我们需要设计一个能统计出文本的字符总数的函数;

(2)实现对行数的提取;

(3)进行单词数的相关操作;

(4)在原型程序的基础上实现进一步的功能拓展。

(5)对项目进行单元测试和效能分析。

     

   程序有三个类,分别是行数,字符数,以及单词统计wordCount,依据需求,按模块细分,关键程序如下:

 1.两个基本功能的结对编程1实现

   因为基本功能的简单,我们默契地进行结对编程,有效率地在短时间内完成了行数的统计以及文本字符数的统计。

   对于文本文件进行行数的统计。在这里,我们声明了一个类来实现这个功能。

    通过一个队行数的简单while循环来实现。

 

  在这里,我们声明一个int类,来实现对文件的字符数的提取。

  通过将字符储存到数组中,并得到数组长度来输出关键的文本字符数。

2.新功能的开发以及结对编程中分歧点的克服

   最关键的一步是对单词的统计处理,一开始我们对于如何进行单词的提取产生了一些分歧。但在经过讨论,我们选择通过while循环的连续判断来识别出单词,并进行输出。但由于我们对ASCII码的不够了解,使我们在whlie循环语句的判定问题上出现了连续的错误,得不到想要的结果,耗费了大量的时间。在这一步我们产生了一些分歧。

  最后经过讨论,我们决定放弃原来的思路,重新编程,通过对已经实现了的功能——字符数的提取的利用,我们在一个for语句下进行嵌套,最后成功实现了单词提取的功能。

3.设计

  以下是我们关于编程的设计图的简单表示

  

3. 后续测试分析与总结

1.测试

  利用C#单元测试功能,通过接口来实现预期功能的检验。我们使用的文本是《Pre-Parade》的歌词,预计有1811个字符,41行以及189个单词。我们分别进行了测试,均与预期相符。

  以下是功能的实现截图:

 

 2.效能分析

  VS自带强力的效能分析,这里是VS2013版本。我们可以快捷地得到各函数的执行时间以及其他性能的测试。

  以下是一次关于函数执行时间的效能分析截图:

 

3.总结与未来期望

  实际上我们这次结对编程所实现的功能还是很有限的,关于单词的提取与操作还有更多功能可以实现,但重要的是,我们通过这次作业体会了结对编程的优势,当处理双方都很擅长的任务时,可以快速地处理并实现。但一旦处理到了较有挑战的问题时,一旦双方的实力都不是很强,那么就容易发生分歧,走上弯路,凭空耗费时间。这是我理解到,结对编程是对双方编程能力的共同考研,一旦双方都同时缺乏某一问题的处理能力就容易陷入困境。

  通过这次结对编程的体验,我了解到不断学习,提升个人能力,以及和小队成员的默契互补都很重要。

 

 

   (以上为我们结对讨论的场景。)

 

转载于:https://www.cnblogs.com/LEE219/p/10655546.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值