Deadline:2018-4-4 10:00,以博客发表日期为准

评分标准:

  • 按时交 - 有分(满分30分,代码和博客各15分),检查项目包括:

-  未提交项目源码到Github上,代码部分不得分;未提交博客到班级博客上,博客部分不得分;

-  根据项目完成质量累计加分,完成基本功能原则上不超过满分15分,完成软件的附加功能,给予加分;

-  代码提交(代码规范,否则倒扣分);

-  此次作业为结对项目,单干户不得分;

-  结对编程两位同学代码部分分数一致,博客部分分别评分。

-  博文规范(行文清晰流畅,如果行文中涉及代码,请使用博客园自带的代码控件,或使用MarkDown的语法块)

  • 抄袭 - 倒扣本次作业分数,关于抄袭:[http://www.cnblogs.com/ZCplayground/p/8511250.html]

1、实验目的与要求

(1)练习结对编程(Pair programming),体验软件项目开发中的两人合作。

(2)掌握Github上增量发布软件的操作方法。

题目来源参考:

http://www.cnblogs.com/happyzm/p/6509116.html(集美大学)

http://www.cnblogs.com/xinz/p/7417960.html(邹欣老师)

http://www.cnblogs.com/vertextao/p/6896953.html(张栋老师)

2、实验环境要求

编程语言使用Java

开发工具:Elipse或Myelipse

3、实验相关知识

关于结对编程(阅读教材第4章内容):

以下图片是一个结对编程场景:两位学习伙伴坐在一起,面对着同一台显示器,使用着同一键盘,同一个鼠标,他们一起思考问题,一起分析问题,一起编写程序。

同学们是否尝试过结对编程的软件开发模式:本次实验就让我们来体验一下结对编程的魅力。

关于结对编程的阐述可参见以下链接:

http://www.cnblogs.com/xinz/archive/2011/08/07/2130332.html

http://en.wikipedia.org/wiki/Pair_programming

关于工具

在软件开发中,要善于学习和使用工具来辅助软件设计。本次实验请开始尝试使用类图设计程序中模块之间的关系。关于类图,参见:http://blog.csdn.net/xx326664162/article/details/50475352

类图的常用绘制工具有:Visio 、Rational Rose、PowerDesign,建议同学们采用轻量级的Visio。

4、实验内容和步骤采用

任务1:

        在《实验二 软件工程个人项目》中,同学们实现了一个命令行四则运算出题小程序,本次实验采用结对编程方式,设计开发一个小学生四则运算练习软件,使之具有以下功能:

(1)由计算机从题库文件中随机选择20道加减乘除混合算式,用户输入算式答案,程序检查答案是否正确,每道题正确计5分,错误不计分,20道题测试结束后给出测试总分;

(2)题库文件可采用实验二的方式自动生成,也可以手工编辑生成,文本格式如下:

(3)程序为用户提供三种进阶四则运算练习功能选择:百以内整数算式(必做)、带括号算式、真分数算式练习;

(4)程序允许用户进行多轮测试,提供用户多轮测试分数柱状图,示例如下:

(5)程序记录用户答题结果,当程序退出再启动的时候,可为用户显示最后一次测试的结果,并询问用户可否进行新一轮的测试;

(6)测试有计时功能,测试时动态显示用户开始答题后的消耗时间。

(7)程序人机交互界面是GUI界面(WEB页面、APP页面都可),界面支持中文简体(必做)/中文繁体/英语,用户可以进行语种选择。

任务一结对编程实施要求:

对于结对编程进度计划的要求:在程序正式开发之前,请先预估本次结对编程任务的PSP环节的消耗时间,并在PSP过程中统计实际耗时,填写PSP表格。

对于结对编程中代码设计规范的要求参见:http://www.cnblogs.com/xinz/archive/2011/11/20/2255971.html

编撰任务一结对编程时两个人遵守共同认可的编码规范,并提交到github项目仓库中。

对于结对编程两个人沟通的技巧:

尝试采用制作汉堡包法实施项目结对中两个人的沟通。

关于汉堡包法的阐述参见:http://www.cnblogs.com/xinz/archive/2011/08/22/2148776.html

理解领航员和驾驶员两种角色关系:两人都必须参与程序的编码工作,在结对编程中两个人轮流做对方的角色。要在github代码提交日志上体现两人合作过程。

任务2:

  • 将包含任务1的源码以增量方式提交到指定同学注册Github账号下的项目仓库中(结对小组只在一个账号下提交代码)
  • 将任务1要求的编码规范文档提交到源码所在项目仓库根目录下。
  • 要求项目仓库中要能看到项目多次commit的记录,同时必须有两个人各自的commit记录。

Github如何托管项目?

参考文章:http://www.cnblogs.com/edisonchou/p/5990875.html

学习视频:https://www.bilibili.com/video/av10475153/

任务3:完成结对项目报告博文作业

博文名称要求:学号1/学号2《小学四则运算练习软件》结对项目报告;

博文中要有任务1源码在Github的仓库主页链接地址;

博文(两个同学都要写)作为结对项目实施过程的文字资料,请完整包含下面8个部分:

a. 需求分析:

b. 软件设计:使用类图。

c. 核心功能代码展示:展示核心功能代码。

d. 程序运行:程序运行时每个功能界面截图。

e.描述结对的过程,提供两人在讨论、细化和编程时的结对照片(非摆拍)。

f.提供此次结对作业的PSP。

PSP2.1

任务内容

计划共完成需要的时间(min)

实际完成需要的时间(min)

Planning

计划

8

6

·       Estimate

·  估计这个任务需要多少时间,并规划大致工作步骤

8

6

Development

开发

82

88

··       Analysis

需求分析 (包括学习新技术)

6

10

·       Design Spec

·  生成设计文档

5

6

·       Design Review

·  设计复审 (和同事审核设计文档)

4

6

·       Coding Standard

代码规范 (为目前的开发制定合适的规范)

3

3

·       Design

具体设计

10

12

·       Coding

具体编码

36

21

·       Code Review

·  代码复审

7

9

·       Test

·  测试(自我测试,修改代码,提交修改)

13

21

Reporting

报告

9

6

··       Test Report

·  测试报告

3

2

·       Size Measurement

计算工作量

2

1

·       Postmortem & Process Improvement Plan

·  事后总结 ,并提出过程改进计划

3

3

g. 请使用汉堡评价法给你的小伙伴一些点评。汉堡评价法:http://www.cnblogs.com/xinz/archive/2011/08/22/2148776.html

h. 结对编程真的能够带来1+1>2的效果吗?通过这次结对编程,请谈谈你的感受和体会。

转载于:https://www.cnblogs.com/nwnu-daizh/p/8622625.html

实验三 软件工程结对项目相关推荐

  1. 201671010447杨露露 实验四软件工程结对项目

    一:作业点评 点评内容: 评价博文链接:https://www.cnblogs.com/runju/p/10558809.html 1.缺点:博文结构不太清晰,排版可以在美化一些,博文的内容中对程序功 ...

  2. 软件工程结对项目--实用计算器的设计和制作

    一.题目简介 题目:软件工程结对项目--实用计算器的设计和制作 简介:计算器是人们生活中经常使用的一种工具,已经可以说是人们日常生活中必不可少的工具了.本次实验我们设计并实现了一款基于Android系 ...

  3. 201671010434王雯涵--实验二 软件工程个人项目

    作业要求:实验二 软件工程个人项目 本项目完成的代码 1.软件定义 ※程序可读入任意英文文本文件,该文件中英文词数大于等于1个,统计该文本所有单词数量及词频数,并能将单词及词频数按字典顺序输出到文件r ...

  4. 201671010412 郭佳 实验二 软件工程个人项目

    作业要求:<实验二 软件工程个人项目> 本项目Github的仓库主页 1. 需求分析 本次实验要求使用JAVA编程语言,独立完成一个英文文本词频统计的软件开发. 该程序要求实现: 要求能够 ...

  5. 大三软件工程小项目-小技术集合总结

    大三软件工程小项目-小技术集 此篇文章是给出了此小项目用到的技术的总结: 方便自己有忘记的知识点后方便查阅. 也方便有需要的博友看. 下面是各个计算的链接 大家点击了进能进去 大三软件工程小项目-小技 ...

  6. 软件工程结对项目- 最长英语单词链

    项目 内容 这个作业属于哪个课程 2023年北航敏捷软件工程 这个作业的要求在哪里 结对项目-最长英语单词链 我在这个课程的目标是 学习现代化的软件开发方法 这个作业在哪个具体方面帮助我实现目标 对结 ...

  7. 软件工程结对项目:四则运算web

    1)Coding.Net项目地址 https://git.coding.net/DandelionClaw/WEB_Calculator.git 注:本项目为web端,并且需要连接SQL Server ...

  8. 软件工程结对项目——地铁出行路线规划程序

    GitHub链接:https://github.com/2016bits/subway PSP2.1表格 PSP2.1 Personal Software Process Stages 预计耗时(分钟 ...

  9. 17秋 软件工程 结对项目 第二次作业

    作业地址 结对第二次作业 结对成员 陈翔, 031502209; 李鸣, 031502316. Github Deputy: Department-to-Student bidirectional s ...

最新文章

  1. 小技巧 | 使用 mv 重命名文件无需两次键入文件名称
  2. 用C语言写一个选择题程序,C语言程序设计选择题:1,设char*strp4-={aa 爱问知识人...
  3. js进阶 11-16 jquery如何查找元素的父亲、祖先和子代、后代
  4. python增量爬虫_python爬虫Scrapy框架之增量式爬虫
  5. PHP设计模式——享元模式
  6. 使用Spring Integration轮询http端点
  7. ASP.NET MVC中controller和view相互传值的方式
  8. 20211102:数字滤波器按照实现结构的分类及其优缺点总结
  9. yaml语法三大规则
  10. Linux rhel7 下MySQL5.7.18详细安装文档
  11. 计算机服务怎么打开flash,快速讲解Win10自带的浏览器如何开启Adobe Flash?
  12. 【转载】DEDE与DISCUZ整合积分同步[会员表,积分表
  13. wps word文字样式管理
  14. 我的科幻评论——《星船伞兵》:海因莱茵最经典又最不典型之作,平凡人类勇气与责任的赞歌
  15. 找到一个不错的学习python的网站
  16. EC20模块内置协议栈的开发笔记
  17. 3. LaTeX图片的排版、引用与格式
  18. 当当网窘境:快电商容不下慢当当
  19. Python矩阵计算类:计算矩阵加和、矩阵乘积、矩阵转置、矩阵行列式值、伴随矩阵和逆矩阵
  20. 广工计算机研究生 毕业去向,2021高校分析:广东工业大学毕业生就业主要去向是珠三角...

热门文章

  1. 2.4亿单身人口新浪潮,小红书品牌3步抓住流量风口
  2. python广义极值_广义极值分布的数据拟合
  3. 开源android客户端_4个开源Android电子邮件客户端
  4. One、that、it 做代词的区别
  5. 提供一个xftp7的下载地址
  6. 基于51单片机的智能自动晾衣架proteus仿真原理图程序设计
  7. FQ队列对quantum的处理
  8. mastercam2017后处理升级_如何升级Mastercam 9.1版后处理?
  9. ibm linux网络配置命令,MQ安装笔记
  10. 物理学十大实验(6-10)