实验名称:敏捷开发与XP实践

实验人员:20162309邢天岳(结对搭档20162313苑洪铭)

实验日期:2017.5.5

实验内容:1.在IDEA中使用工具(Code->Reformate Code)把下面代码重新格式化,再研究一下Code菜单,找出一项让自己感觉最好用的功能。提交截图,加上自己学号水印。(此处注意要将Eclipse的内容替换成IDEA)

2.在码云上把自己的学习搭档加入自己的项目中,确认搭档的项目加入自己后,下载搭档实验二的Complex代码,加入不少于三个JUnit单元测试用例,测试成功后git add .; git commit -m "自己学号 添加内容";git push。

3.完成重构内容的练习,下载搭档的代码,至少进行三项重构,提交重构后代码的截图,加上自己的学号水印。提交搭档的码云项目链接。(这里同样要将Eclipse转换成IDEA)

4.以结对的方式完成Java密码学相关内容的学习,结合重构,git,代码标准。

实验目的:以结对的方式对项目的开发进行学习,对上次实验所完成的Complex代码进行测试,与结对搭档共同创建项目来学习教材上关于重构环节的学习,相互检查结对伙伴的代码,巩固学习。Java密码学的实验内容是运行博客上的密文代码,通过运行程序来学习代码的加密方法。

实验具体步骤:

(一)敏捷开发与XP

•敏捷开发(Agile Development)是一种以人为核心、迭代、循序渐进的开发方法。

敏捷开发包括很多模式。其中,极限编程(eXtreme Programming,XP) 是一种全新而快捷的软件开发方法。

•一项实践在XP环境中成功使用的依据通过XP的法则呈现,包括:快速反馈、假设简单性、递增更改、提倡更改、优质工作。

XP软件开发的基石是XP的活动,包括:编码、测试、倾听、设计。

项目成员用户成功执行XP活动的技术通过XP实践来呈现,包括编程、团队、过程相关的12条实践,我们关注其中的编码标准,结对编程,代码集体所有,测试,重构等实践。上次实验已经讲过TDD,通过学习这些实践,可以形成以测试为核心的开发流程。

敏捷可以作为一种做事的方式,掌握好的在以后的工作中也会受益无穷。

在实验1的过程中,需要在idea上运行实验题目中所给的代码,这个过程相对比较简单,运行过程中有绿条出现就可以了。

实验2是对前一次实验程序的成果验收,Complex程序的产品代码进过检查后,没有逻辑错误出现,但测试代码却无法在idea上运行(不是运行错误,是无法运行),考虑到测试代码和产品代码是否存在出入,在咨询王彪同学后,发现在测试代码上,继承语句extend的对象发生错误,导致运行异常,修改后可正常运行



此处需要继承的是TestCase类中的方法。

(二)重构

•重构(Refactor),就是在不改变软件外部行为的基础上,改变软件内部的结构,使其更加易于阅读、易于维护和易于变更。

•一个完整的重构流程包括:

1.从版本控制系统代码库中Check out code

2.读懂代码(包括测试代码)

3.发现bad smell

4.Refactoring

5.运行所有的Unit Tests

6.往代码库中Check in code

重构的内容需要加入结对搭档的项目,在idea中使用refactor直接操作就可以了。修改参数、加入新的东西都可以实现。

(三)java密码学

这个过程需要运行博客中的代码,在idea或是bash命令行中均可以完成,但在导入第二个.dat文件时失败,在马军同学的帮助下,将运行的程序包括设计的类均用rm移动到一起,再次运行就可以了,密码学的学习对我而言相对陌生,参考了老师的博客后再学习效果会相对好一些。

XP实验报告的更多相关文章

  1. 20145308刘昊阳 《Java程序设计》实验三 敏捷开发与XP实践 实验报告

    20145308刘昊阳 <Java程序设计>实验三 敏捷开发与XP实践 实验报告 实验名称 敏捷开发与XP实践 实验内容 XP基础 XP核心实践 相关工具 统计的PSP(Personal ...

  2. 20145337实验三实验报告——敏捷开发与XP实践

    20145337实验三实验报告--敏捷开发与XP实践 实验名称 敏捷开发与XP实践 实验内容 XP基础 XP核心实践 相关工具 ** 实验步骤**### 敏捷开发与XP 软件工程包括下列领域:软件需求 ...

  3. 20162311 实验三 敏捷开发与XP实践 实验报告

    20162311 实验三 敏捷开发与XP实践 实验报告 实验内容 一.研究学习IDEA中的Code菜单 使用Code ->Reformate Code功能将以下代码格式化 public clas ...

  4. 20162330 实验三 《敏捷开发与XP实践》 实验报告

    2016-2017-2 实验报告目录: 1 2 3 4 5 20162330 实验三 <敏捷开发与XP实践> 实验报告 课程名称:<程序设计与数据结构> 学生班级:1623班 ...

  5. 2018-2019-2 20175217 实验三《敏捷开发与XP实践》实验报告

    一.实验报告封面 课程:Java程序设计 班级:1752班 姓名:吴一凡 学号:20175217 指导教师:娄嘉鹏 实验日期:2019年4月25日 实验时间:--- 实验序号:实验三 实验名称:敏捷开 ...

  6. 2018-2019-20175205 实验三敏捷开发与XP实践《Java开发环境的熟悉》实验报告

    2018-2019-20175205 实验三敏捷开发与XP实践<Java开发环境的熟悉>实验报告 实验要求 没有Linux基础的同学建议先学习<Linux基础入门(新版)>&l ...

  7. 2017-2018-2 20165237 实验三《 敏捷开发与XP实践》实验报告

    2017-2018-2 20165237 实验三< 敏捷开发与XP实践>实验报告 实验报告表头: 知识点: 1.XP团队使用现场客户.特殊计划方法和持续测试来提供快速的反馈和全面的交流: ...

  8. 2017-2018-2 20165221 实验三《敏捷开发与XP实践》实验报告

    实验报告封面 姓名:谭笑 学号:20165221 班级:1652班 实验名称: JAVA--敏捷开发与XP实践 指导老师:娄嘉鹏 试验时间:15:35--17:15 实验性质:选修 实验组次:21 实 ...

  9. 2017-2018-2 20165206 实验三 《敏捷开发与XP实践》实验报告

    2017-2018-2 20165206 实验三 <敏捷开发与XP实践>实验报告 一.实验报告封面 课程:Java程序设计 班级:1652班 姓名:韩啸 学号:20165206 指导教师: ...

随机推荐

  1. UVA10692:Huge Mods

    题面 传送门 题意 输入正整数a1,a2,a3..an和模m,求a1^a2^...^an mod m Sol 首先有\[ a^b\equiv \begin{cases} a^{b\%\phi(p)}~ ...

  2. [HNOI2014]米特运输

    显然知道一个节点就可以推出整棵树 然而直接乘会爆longlong 所以考虑取log 最后排序算众数即可 # include <stdio.h> # include <stdlib.h ...

  3. [BZOJ3000] Big Number (Stirling公式)

    Description 给你两个整数N和K,要求你输出N!的K进制的位数. Input 有多组输入数据,每组输入数据各一行,每行两个数——N,K Output 每行一个数为输出结果. Sample I ...

  4. 8Manage:聚焦研发企业利器——研发项目管理

    [导读]研发是企业保持核心竞争力的基石.那么对于研发企业来说,如何计划研发项目目标.保障项目的稳定运行,如何分配人才.资源,把控项目成本呢?这些一系列问题摆在管理者面前!引入8Manage研发项目管理 ...

  5. spring中的aop的xml配置方式简单实例

    aop,即面向切面编程,面向切面编程的目标就是分离关注点,比如:一个骑士只需要关注守护安全,或者远征,而骑士辉煌一生的事迹由谁来记录和歌颂呢,当然不会是自己了,这个完全可以由诗人去歌颂,比如当骑士出征 ...

  6. python中的小知识点

    这里是一些小知识点的汇集,为的是以后查找的方便. 行与缩进: 物理行:实际看到的代码行数. 逻辑行:在意义上的函数(即解释器执行的行数) 如果一个物理行中包含了多个逻辑行,则每个逻辑行之间需要用分号 ...

  7. 大数据量情况下高效比较两个list

    比如,对两个list<object>进行去重,合并操作时,一般的写法为两个for循环删掉一个list中重复的,然后再合并. 如果数据量在千条级别,这个速度还是比较快的.但如果数据量超过20 ...

  8. handsontable 方法汇总

    核心方法 1.为handsontable添加钩子方法 addHook(key,callback):key为钩子方法名 例如:hot.addHook('beforeInit', myCallback); ...

  9. 求数组中最小的k个数

    题目:输入n个整数,找出其中最小的K个数.例如输入4,5,1,6,2,7,3,8这8个数字,则最小的4个数字是1,2,3,4,. package test; import java.util.Arra ...

  10. Java爬取 百度图片Google图片Bing图片

    先看看抓取的结果. 8个Java类: Startup.java - main函数 ImageCrawler.java - Crawler基类 BaiduImageCrawler.java - 百度图片 ...