• 个人学期总结


    一、学期初,实验一中的任务4,大家拟定了5个准备从课程学习中找到答案的问题,通过一个学期的学习,相信大家已经有了答案,请根据自己的学习实践回答自己当初提的问题

        1.什么是软件工程?什么是软件架构?

      软件工程是指导计算机软件开发和维护的一门工程学科。采用工程的概念、原理、技术和方法来开发和维护软件,把经过时间考验而证明正确的还礼技术和当前能够得到的最好的技术方法结合起来,以经济地开发出高质量的软件并有效地维护它。软件架构是一系列相关的抽象模式,用于指导大型软件系统各个方面的设计;是一个系统的草图。软件体系结构是构建计算机软件实践的基础。

        2.书中提到每日构建,描述较少,每日构建是什么?

      每日构建对应的英文是Daily Build,由于翻译和理解的问题,也有称之为“每日编译” 。由于一般的每日构建发生在晚上,发生在晚上的每日构建,也称为Nightly Build ,中文译为“夜晚构建”或者“晚间构建”;每日构建意味着自动地,每天,完整地构建整个代码树(意思是将整个项目源代码的目录,子目录,文件的位置尽可能事先固定下来,这样在开发过程中各个模块间,各个文件间的相对位置都不会混乱。源代码树指的就是一个项目所有的已经组织好的代码文件。)。

        3.什么是软件的生命周期?

      软件生命周期是软件的产生直到报废或停止使用的生命周期.周期内有问题定义、可行性分析、总体描述、系统设计、编码、调试和测试、验收与运行、维护升级到废弃等阶段,这种按时间分程的思想方法是软件工程中的一种思想原则,即按部就班、逐步推进,每个阶段都要有定义、工作、审查、形成文档以供交流或备查,以提高软件的质量。

        4.软件测试分为几个阶段?目的是什么?

      按照开发阶段划分,软件测试可分为单元测试、集成测试,系统测试和验收测试。
        单元测试:针对每个单元的测试, 以确保每个模块能正常工作为目标。
        集成测试:对已测试过的模块进行组装,进行集成测试。目的在于检验与软件设计相关的程序结构问题。
        确认测试:是检验所开发的软件能否满足所有功能和性能需求的最后手段。有的划分方法中,也将确认测试合并入系统测试中。
        系统测试:检验软件产品能否与系统的其他部分(比如,硬件、数据库及操作人员)协调工作。
        验收测试:检验软件产品质量的最后一道工序。主要突出用户的作用,同时软件开发人员也应有一定程度的参与。
          验收测试可以分成Alpha测试和Beta测试,Alpha测试是由用户在开发环境下完成的测试,Beta测试是由用户在用户环境下完成的测试。

        5.考虑用户体验的角度有哪些?用户体验对产品发展的影响?

      用户体验就是用户在使用一个或者多个产品或者服务的整个过程的感受,包括物理感受,心情感受,短期或者长期感受。对于一个软件产品来说,良好的用户体验最少需要做到以下要求:(1、要让用户便捷、流畅操作;(2、要保证软件产品界面设计的一致性;(3、要满足大多数用户的实际需求,即满足不同用户在不同使用场景下的具体需求。

    二、完成课程的实践总结和给你带来的提升,包括以下内容:

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

      4k+

     2.软工实践的各次作业分别花了多少时间?累计花了多少个小时在软工实践上?平均每周花多少个小时?(做一个列表)

    作业次数 实践时间/h 平均每周所花时间/h
    第一次 5 7.17
    第二次 8 7.17
    第三次 9 7.17
    第四次 8 7.17
    第五次 7 7.17
    第六次 8 7.17
    第七次 8 7.17
    第八次 6 7.17
    第九次 8 7.17
    第十次 7 7.17
    第十一次 6 7.17
    第十二次 6 7.17

     3.哪一次作业让你印象最深刻?为什么?

      最后一次的团队作业,我们展示了项目成果,并得到老师的肯定

     4.学习和使用的新软件;

      visio

     5.学习和使用的新工具;

      墨刀、石墨文档

     6.学习和掌握的新语言、新平台;

      GitHub、博客园

     7.学习和掌握的新方法(请具体说明什么方法);

      快速原型方法,软件测试方法

     8.其他方面的提升(请具体说明 什么提升)。

      团队合作能力,个人编程能力,思考问题解决问题的能力

    三、你认为目前的课程有哪些问题,你有什么更好的建议:

     1.你认为本门课程需要在哪里进行改进,具体措施有哪些,包括:时间进度安排,项目难度等均可;

      课程采用翻转课堂的教学模式,真的可以学到很多东西。但大三各种各样的事情很多,希望这样模式的课程可以安排在大二,既有一定的学习基础,又有足够的时间精力,相信收获会更多。

     2.你认为助教/老师哪里做的不足,哪里限制太多等;

      助教都很负责,给我们的学习提供了很多帮助。

     3.你认为每次项目的评分标准存在哪些问题,你认为的合理评分准则是怎样的(个人/结对/团队算三个)

      评分标准合理,可以接受。

     4.在结对项目中你是否真正体会到了结对的好处,是否真正严格进行了结对编程,双方的工作量是否相同;

      是,结对可以带来新的想法,减少个人任务量,工作量存在少量差异。

     5.你的团队项目是否成功,如果重来一次你是否还会选择这个团队,为什么成功/失败;

      成功,还会选择,我们团队相处融洽,分工明确,遇到问题可以共同解决,项目主要功能基本实现。

     6.总结一下你们团队在做项目时大家的时间安排情况。

      组长会给我们合理分配不同任务,让我们去做,时间安排大体相同,组长的任务量和工作量是最大,花费时间也是最多的。

     7.对下一届软工课实践教学的建议,或者对于开学初的你,对于大一的你,对于开学初的老师,你有什么想建议和告知的呢?对于后来人的期许。

      一定要认真学习基础课程,提高编程能力,以后再补真的很耗时。  

    四、你还有什么想说的话

      经过一学期的学习,我对软件的开发过程有了更全面的理解,认识到团队合作的重要性,这门课上花费了很多时间精力,累并收获很多。最后,欠的东西早晚都要还,该学的一定要认真学会。

  • 相关阅读:
    [LeetCode] Move Zeroes 移动零
    [CareerCup] 9.4 Subsets 子集合
    [CareerCup] 9.3 Magic Index 魔法序号
    [CareerCup] 9.2 Robot Moving 机器人移动
    [CareerCup] 9.1 Climbing Staircase 爬楼梯
    [LeetCode] Expression Add Operators 表达式增加操作符
    C++ and Java template class and function 模板类和模板函数
    [CareerCup] 8.10 Implement a Hash Table 实现一个哈希表
    C++ 'dynamic_cast' and Java 'instanceof' 使用对比
    Maya Shortcuts 常用快捷键
  • 原文地址:https://www.cnblogs.com/jlh777/p/9301122.html
Copyright © 2020-2023  润新知