zoukankan      html  css  js  c++  java
  • 软件工程课程总结

      本学期我上了软件工程这门课程,在这门课程上我完成了个人项目、结对项目、团队项目,在做项目的同时不断运用新学到的知识,进行相应的开发。这样边学边做的课程设置让我对所学的知识有了更深的理解,并将所学的知识运用到项目开发之后。在没有上这门课之前,我一直认为软件工程只是一个噱头,因为这只是由工程师多年开发所总结出来的经验,我在不断地编写代码的过程能逐渐发现、掌握相应的技巧,不用为此单学一门课程。但在学习的过程中,我发现我的理解有所偏差。

      之前在编写项目的时候会考虑采用面向对象的思想设计自己的UML,但对于UML只了解其中的关系,例如:依赖、关联、泛化、聚合等等,在学习的过程发现UML不只是关系,还有事物,从中引出的类图、用例图、顺序图、通信图等等,都在进一步地开发过程逐渐感受这些图示的作用。在原来编写的课设或是项目中,通常是在脑海里形成具体的体系结构、层次逻辑之后直接开始写代码,而现在学会做需求分析,进行结构化分析,并以文档的形式规范开发流程。

      在学习过程中,最有感触的一部分就是软件测试。之前在实习的过程中,有一部分工作就是进行单元测试,但进行测试的过程是读相应的实现代码,自己构造测试用例,也就是“白盒测试”的方法。通过系统的学习,发现单元测试不仅仅是进行白盒测试,还要用黑盒测试的测试用例进行辅助,使得无论合理与否的输入都能得到响应,并返回相应的结果。同时,需要对系统进行模块接口测试、局部数据结构测试、路经测试、错误处理测试、边界测试,让我从实践中获得到的经验提炼为了完整、系统的测试体系。除此之外,软件测试中还包括组装测试、确认测试、系统测试等,这些我之前没有接触过的概念,但在实际中都已经尝试应用在自己的项目中的测试方式,对整个软件测试的流程有了更深刻的理解与应用。

      在这一学期的学习中,个人项目简单地完成,结对项目利用git管理项目,运用所学的软件工程完善个人项目,团队项目搭建更复杂的系统,但同时由于团队人员的增加,导致在初期我们没有进行很好的分工,其实在团队项目编写的过程,亲身经历感觉到团队管理与软件工程类似,团队中的成员分工像是每一个模块,也要尽量地低耦合高内聚,使得团队效率更加高效,每个人专心于自己负责的模块,并知道我需要和哪些人进行“通信”,最终让整个团队正常地运转起来。同时,感谢杨老师在课上课下和我们分享了很多软件工程的经验与技巧,并且向我们推荐很多软件工程方向老师的博客,让我们学习并应用到实际的开发中。

  • 相关阅读:
    iOS UILable 自定义高度 用masony适配
    iOS上架所需图片大小明细
    GCD倒计时
    iOS 小知识汇总
    七、Swift 枚举 Enumerations
    C语言深度剖析笔记
    六、闭包 Closures
    经济学常识
    Mac小技巧
    五、函数 Functions
  • 原文地址:https://www.cnblogs.com/syncCN/p/5600748.html
Copyright © 2011-2022 走看看