zoukankan      html  css  js  c++  java
  • 软工结对编程_热身

    软工结对编程_热身

    教学班级 2021春季软件工程(罗杰 任健)
    GitLab相关地址 2021_pair_work
    两位同学的学号后四位 3480@dxh,4216@js

    结对编程初体验

    记得之前老师在上课时讲到结对编程时我对此不以为然,觉得如果两人思路比较相似时结对起来还是比较迅速的,但等到真正完成时却发现事情并没有想象中的那么简单。

    在需求分析部分我与队友是共同分析题意的,过程也比较顺利,觉得两人的思路是基本一致的,在具体开发时,我们采取的也是课堂上讲授的 一人写,一人看(驾驶员与领航员) 的结对模式。在开发的开始,由于我们的代码习惯和编程风格都不太统一,所以在沟通交流过程中花费了不少时间。后来经过一番探索,我们决定轮流进行编码,不断进行角色互换以在最短时间内适应对方的风格,也能最大程度上锻炼个人的能力。

    就具体实践来说,我们分别负责了文件模块目录模块的类以及方法的编写,一个人在写的同时另一个人在旁边及时进行检查和纠错,有任何不明白的地方也会及时发问及时交流。虽然这样的编程方式比个人独自敲代码花费的时间肯定会长一些,但在一定程度上保证了代码的质量以及团队的合作效率。在测试程序时,我们又分别测试了对方的模块,采取的同样也是结对方式。通过前期的磨合,在测试时两人的效率明显比编码时要提高许多,也能够更快地达成共识。

    就整体来说,结对编程在前期的确比较痛苦,进展也很缓慢,但是后期熟练了之后我们都觉得很有收获,至少能够更快速地定位bug和发现问题,并且在此过程中也从对方身上都学习到了很多知识。

    设计实现思路

    在本次文件管理系统中,我们创建了 type 接口并使 file 类和 Contents 类实现该接口从而让后续判断时文件还是目录更加方便。

    对于文件类,我们设置了名称、父目录、内容、绝对路径和相关时间等属性;对于目录类,我们设置了名称、父目录、大小、绝对路径、子目录及文件和相关标识符等属性。在整个文件系统中设置当前目录根目录的属性。对于任何指令都首先使用 pathparser 的方法进行路径解析,再根据指令的具体操作实现文件、目录的增删改查以及抛出特定异常等操作即可。举例如下:

    • 对于目录的递归建立过程,首先递归判断所有路径的名称是否合法,其次再递归向上建立所有不存在的路径,对于 ... 的处理要注意细节
    • 对于文件的删除过程,要首先删除该文件父目录中对应的下属文件,再依次修改父目录的大小和其他相关属性等。

    PSP

    PSP2.1 Personal Software Process Stages 预估耗时(分钟) 实际耗时(分钟)
    Planning 计划 10 15
    · Estimate · 估计这个任务需要多少时间 10 15
    Development 开发 740 830
    · Analysis · 需求分析 (包括学习新技术) 30 60
    · Design Spec · 生成设计文档 30 30
    · Design Review · 设计复审 (和同事审核设计文档) 10 20
    · Coding Standard · 代码规范 (为目前的开发制定合适的规范) 10 10
    · Design · 具体设计 60 90
    · Coding · 具体编码 360 480
    · Code Review · 代码复审 60 60
    · Test · 测试(自我测试,修改代码,提交修改) 180 180
    Reporting 报告 70 95
    · Test Report · 测试报告 30 60
    · Size Measurement · 计算工作量 10 15
    · Postmortem & Process Improvement Plan · 事后总结, 并提出过程改进计划 30 20
    合计 820 940
  • 相关阅读:
    20159320《网络攻防实践》第4周教材学习总结
    20159320《网络攻防实践》第3周学习总结
    20159320 《网络攻防实践》第3周教材学习总结
    20159320 《网络攻防实践》第3周视频学习总结
    网络攻防学习心得一(20159320)学习小结
    Android 开发环境搭建以及编译
    iTOP-4412 开发板镜像的烧写
    Ubuntu 的基本操作
    iTOP-4412 平台基础软件的安装和学习
    几个关于嵌入式芯片的硬件系统
  • 原文地址:https://www.cnblogs.com/fatca-oo/p/14578607.html
Copyright © 2011-2022 走看看