实验十四 个人学习总结

项目 内容
软件工程 代祖华老师博客主页
作业要求 个人学习总结
课程学习目标 (1)掌握软件项目评审会流程;(2)反思总结课程学习内容

1、结合本学期课程学习内容,对比《实验一 软件工程准备》的任务5你所提的问题(给出提问博客链接),尝试对提出问题进行解答,并阐明是如何通过学习/实践/讨论弄清楚的;

产品竞争无形的手究竟是什么?

1)、产品行业因素
产业发展的成熟期(产品竞争少,市场空间大、用户容忍度高 )能给产品产生巨大的助力。相反,如果是在一个产业的衰落期进入这个产业,那么就会面临巨大的阻力
2)、公司和市场因素
公司的品牌号召力、现有的市场能力等等因素。但从长期来看,产品的质量就是最有效的市场能力,产品经理往往就是市场经理
3)、团队执行因素
执行力的有效衡量标准是一个决定需要多少次会议才能达成。执行力的另一个衡量标准是团队能否持续而快速地进行“发布/收集数据/分析改进/再发布”这一流程。
4)、产品的价值因素
考虑新的产品或产品的新功能时,团队需要考虑:
我们是否给用户带来了价值,这个价值是独家的还是大众化的,这个产品是否和市场上的相似产品有区分度,能不能进一步发达产品的差异性,能否让用户觉得我们的产品很优秀等等因素。

2、总结自己在项目的 可行性分析/需求分析/软件设计/实现/测试/项目验收/中学到了哪些“知识点”。

1)MVC

MVC分为三部分,分别是:
●Model:模型,表示应用程序核心,比如数据记录列表
●View:显示,对数据进行显示
●Controller:控制器,对数据库的各种操作进行控制
视图
视图就是用户看到并与客户进行交互的界面,也就是们所说的网页。MVC中的视图除了HTML基本元素之外,还包括XML等标识性语言。MVC可以处理多个视图,而一个视图也不想HTML中那样,仅代表一个网页,而是一个网页有好多视图拼接而成,有母版之说,也有自己不一样的东西。
模型
模型就是进行业务逻辑判断和数据库存取,以我们平常的说法,也就是所谓的业务逻辑处理,可以说实现了三层中BLL层和DAL层的功能。
控制器
控制器是将用户输入的指令和数据传递给业务模型,当用户在视图中申请提交表单时,控制器不会进行处理,而是调用适合的模型去处理。说是控制器,其实也像路由,指向模型的路由。

2).黑盒测试

 黑盒测试又称为功能测试、数据驱动测试或基于规格说明书的测试,是一种从用户观点出发的测试。测试人员一般把被测程序当作一个黑盒子。
  黑盒测试主要测到的错误类型有:不正确或遗漏的功能;接口、界面错误;性能错误;数据结构或外部数据访问错误;初始化或终止条件错误等等。
  常用的黑盒测试方法有:等价类划分法;边界值分析法;因果图法;场景法;正交实验设计法;判定表驱动分析法;错误推测法;功能图分析法。

3).白盒测试

白盒测试分为静态测试&动态测试
  静态测试是不用运行程序的测试,包括代码检查、静态结构分析、代码质量度量、文档测试等等,它可以由人工进行,充分发挥人的逻辑思维优势,也可以借助软件工具(Fxcop)自动进行。动态测试则需要执行代码,也是我们用的最多的一种测试,通过运行程序找到问题,包括功能确认与接口测试、覆盖率分析、性能分析、内存分析等。

  · 单元测试
  · 代码检查
  · 同行评审
  · 技术评审
  要检验测试的效果,就要去看测试的覆盖率,当覆盖率越大,说明测试成效越好,软件的缺陷越少。但覆盖率不是目标(质量才是目标)而只是一种手段。测试覆盖率包括功能点覆盖率和结构覆盖率,其中,功能点覆盖率大致用于表示软件已经实现的功能与软件需要实现的功能之间的比例关系;而结构覆盖率包括语句覆盖率、分支覆盖率、循环覆盖率和路径覆盖率等等。
  而逻辑覆盖法中根据覆盖目标的不同和覆盖源程序语句的详尽程度,逻辑覆盖又可分为:语句覆盖; 判定覆盖;条件覆盖;判定/条件覆盖;组合覆盖;路径覆盖,且这些覆盖程度越往后越全。

3、结合个人项目/结对编程/团队项目的个人经历,谈谈心得。

在目前主流的开发环境中,个人项目已经基本用不到了,从结对编程、团队项目的开发,心得有以下几个方面:

  • 在以前的潜意识中,编程的技术是最重要的,但从团队项目开始,技术变成一个不是那么重要的问题,而团队的协作、团队意见的统一、团队成员的团结的心才是最重要的,最急需解决的问题。
  • 在执行任务中,团队的统一协调,是团队完成任务的必要条件。一个团队的水平就像木桶效应一样,不管从完成任务的时间进度、完成任务的质量情况还是最后的反馈情况来看,团队的能力水平都取决于团队的退后一个人、但如果团队的其他人员对此没有在意和及时的纠正,这种现象就会进入一个恶性循环,所以团队的相互协作,相互理解、和相互帮助才是一个好的团队所必需的条件。
  • 团队中的不良之风,就像星星之火,那是可以燎原的,团队里一旦出现这种为了完任务而完任务的,应付差事的这种苗头,要是作为小组长不及时扑灭这种不良之风,那么这种不良的风气就会席卷整个团队。所以团队的“作风”也是极其重要的,就是所谓的兵怂怂一个,将雄雄一窝。

4、总结这门课程的实践总结和给你带来的提升,包括以下内容:

  • 统计在软件工程实践中,你完成了多少行的代码;

因为我们的的团结项目中使用的是UE4+3DMax进行实现的,用了大量的材料模型库和少量的C++语言,所以我在本门课中完成了大约2000行代码。

  • 你在软件工程实践的各次作业分别花了多少时间?

软件工程任务 花费时间
工程准备工作
个人项目 20
个人项目的改进于互评 10
结对项目 18
团队的组建 5
项目的选题 10
项目原型的创建 15
市场调研与分析 10
编程 30
Alpha冲刺 40
Beta冲刺 20
  • 哪一次作业让你印象最深刻?为什么?

Alpha冲刺令我印象比较深刻,那是团队成员之间配合最默契的时间,也是团队成员配合最紧密的一段时间。

  • 累计花了多少个小时在软件工程实践上?平均每周花多少个小时?

在软件工程实践上总共花费了178小时,平均每周花费10个小时的时间

  • 你学习和掌握的新语言、新平台;

    1)在博客园发表博客来展示我们的任务成果,分析我们的知识;
    2)在GitHub管理我们的代码,方便团队成员的适用,进一步提高效率;
    3)在Mockplus平台建立团队项目的原型;
    4)利用在线问卷调查,进行调研和分析;
    5)利用3D Max来建立模型;
    6)用UE4来构建蓝图
  • 填写下表,总结一学期的学习中,你学习或使用的软件工程开发工具、开发方法和建模方法;

软件开发工具、项目管理工具 软件开发方法 软件建模方法
UE4、GitHub、Learngoo、Visio 原型开发方法 3DMAX

5.你认为目前的课程存在哪些问题,你有什么更好的建议。

课程的任务量较大,因为大三同学们都有了自己的任务,比如考研啊,或者公务员之类的,所以同学们的时间比较紧张,课程要想在短的时间里达到高的学习效果,那么就应该抓住项目这一个点,而放松其余的点。

posted @ 2019-06-29 14:13  Brad-Pitt  阅读(273)  评论(0编辑  收藏  举报