软件设计说明书
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
面对面结对编程软件设计说明书
计算机科学与技术学院2021级
团队成员: 俞亚君施东杰俊浩王波
1引言
1.1编写目的
本文档是面对面结对编程系统的软件设计说明书,为软件设计提供说明文档。读者对象为产品测试开发、测试和维护人员
1.2工程背景
来源:一个人有了想法,首先要表达出来,让自己的同伴理解,经过深刻的讨论,一致认可之后才开场编写代码。一个人编写代码,另一个那么在旁边思考,会为下一步的工作提出建立性的意见。发现了问题可以及时的指正。大大的提高了代码质量。
软件使用者通过结对可以快速的进展知识传递,通过结对伙伴的交换,知识不再是掌握在一个人的手中,而是整个团队一起共享。
1.3定义
结对编程:两名程序员并肩工作在同一台计算机前,共同探讨设计方案、共同设计算法、共同编写程序代码、共同完成各种测试。在这两个人当中,被称为驾驶员:负责打字或写出设计方案,
领航员:负责其他工作,包括随时观察驾驶员的工作情况,发现并纠正其操作性和策略性失误。
操作性失误:各种语法错误、打字错误、用错了函数等等。
策略性失误:驾驶员偏离了正确方向——即他正在编写的代码不能让这两位伙伴到达预定目标——的各种情况。领航员扮演着战略思想家的角色。
1.4参考资料
[1]?软件工程方法与实践? ——窦万峰等编著机械工业2021年5月
[2]?软件工程实验教程?——窦万峰主编机械工业2021年5月
2总体设计
2.1需求概述
程序至少需要实现四个功能
1、角色交换(RoleSwitch):在规定时间截止时〔如一小时〕,领航者、驾驭者进展角色交换〔领航者→驾驭者,驾驭者→领航者〕
2、统计分析(Statistics):系统记录各个角色的工作时间,设定时钟,方便到时间进展角色转换的提示。同时统计系统整体的工作时间加以分析,方便评估。
3、系统干预(Interrupt):当规定时间到达时,开发团队成员不按规定进展角色交换时,可通过系统强制干预。
4、评价系统的设计(Evaluation):可以采用问卷形式,让用户进展选择或作答,根据结果分析该用户的个性特点,判断其适不适合结对等。
2.2软件构造:
3程序描述
3.1逐个模块给出说明1.系统登陆界面模块
总的调用模块,无根本信息
图1 系统初始界面2.用户注册〔添加用户〕模块
性能:识别用户是否已经注册
输出工程:用户资料〔数据库〕
功能:添加用户数据至用户数据库
输入工程:用户根本信息,题目答案
图2 用户注册界面
3.统计分析时间模块
性能:实时进展时间与最大时间的比拟
输出工程:时间统计数据〔用户〕
功能:记录各个角色的工作时间,统计系统整体的工作时间输入工程:无
图3 系统计时信息对话框
4.转换用户角色模块
性能:能无条件实时转换,具有中断功能
输出工程:转换成功信息〔用户〕,通知统计模块重新计时功能:转换用户角色
输入工程:系统强制转换信息/用户请求转换信息
图4 转换确认对话框
5.用户之间适合性分析模块
性能:具有良好的分析行为习惯
输出工程:适合性分析结果〔用户〕
功能:采用问卷形式,让用户进展选择或作答,根据结果分析用户适不适合结对输入工程:用户数据库资料
图5 问题答复数据采集对话框
3.2算法
1.结对两位用户登陆系统。〔未注册那么先注册〕
2.对两个用户性格,喜好,能力等特点进展分析。〔失败那么退出系统〕
3.进展初始角色分配,driver或者navigator。
4.按照时间或者个人意愿进展角色交换。
5.编程完毕,退出系统。
3.3程序逻辑
3.4接口限制条件:
1、问卷只对新用户进展开放
2、只有当两个角色都同意交换时方能角色交换
3、系统规定的交换时间一到必须强制交换
存储分配:
外部接口DataAccessObject数据接口
部接口DataAccessObject数据接口
3.5测试要点
1.测试用户登录时用户是否已存在
2.测试用户注册好后信息有没有保存
3.测试已注册的用户是否重新做题
4.测试用户评估结果的正确性
5.测试角色交换是否能顺利进展
6.测试用户双方提出角色交换请否能得到响应
7.测试时间到得时候能否自动交换角色