软件工程——个人总结

一、回想开学初对于软件工程这门课的期望,总结本课程对你带来的提升:

1. 学习和使用的新软件

  • Mockplus:原型设计软件
  • PowerDesigner:数据库设计软件
  • Apache:Web服务器软件

2. 学习和使用的新工具

  • Phpstorm :php编译工具
  • Appserve: 安装集成环境,
  • Mysql:数据库管理系统

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

  • 语言:Php,mysql,css,JavaScript
  • 平台:appserve,Phpstorm

4. 统计一下,你在这软件工程实践中,完成了多少行的代码

大约5000行左右

5. 学习和掌握的新方法

开发软件的总体流程,软件测试,软件开发,数据库设计,原型界面的设计,动态网页制作等

二、总结与展望

1. 记录自己在软件工程课程上的经验总结

第一,在软件开发中,懂得如何组建一个合适的团队,如何给组员分配适合他们的任务,调节组内矛盾,做到高效的完成任务;第二,通过各种途径学习了新语言php以及新的软件、工具、新平台等,增加了自己的知识面;第三,定期开展组内会议,了解组员进度,对接下来的任务进度进行调整;最后,一定要对软件进行测试,这是非常重要的一步,在测试的过程中才能发现出很多在开发过程中未发现的隐藏bug。

2. 对于下一届的学弟学妹你有什么建议和告知呢?

如果想做一个完整、优秀的项目,建议学弟学妹最好第六周就开始做,这样不会太赶,还可以留出时间进行优化;建议学弟学妹们上课认真听讲,老师讲的基础对于做项目有很大的帮助,尤其在团队合作以及软件开发流程方面。

3. 分析一下自己所处的团队。软件工程实践是大学里少有的认真的团队协作经验。《构建之法》团队合作的阶段,你们团队经历过么?最后到达了哪一阶段?

我们队在萌芽阶段,磨合阶段,规范阶段到创造阶段都经历过了。一开始刚组队,大家都很有激情,但是随着项目的不断进行,大家都在不同程度上出现了问题,包括队员间的相处,觉得项目太难、无法下手等,但是大家都没有放弃,凭着自己的耐心、毅力坚持下来,不断的学习各种知识,最终做出了成品。最后,我们在优化系统的同时进行了代码规范以及软件测试。通过这次经历,我学会了很多,不仅仅是学习了新的知识, 更重要的是懂得了如何与他人合作,处理好团队间的矛盾,以及作为一个项目负责人如何让你的团队高效率的运转。

4. 个性发挥,包括图文、照片和创意等

如果学弟学妹有需要,我很乐意为大家提供帮助,以及个人的小小创意。附一张泰森多边形,意思大家都懂的:

软件工程——个人总结_第1张图片

三、个人总结的补充

请大家回顾我们软件工程第一次作业,通过本学期的学习,对第一次作业中的5个问题重新回答。
1.单元测试应该覆盖所有代码段,如何确定是否覆盖了所有代码段?单元测试又该什么时候去写?

  • 答:首先要确定代码的覆盖率达到100%,其次可以针对代码效率和“应该写但是没有写的代码”单独写一个单元测试。单元测试最好在设计的时候就写好,这样能体现API的语义,避免以后产生歧义。

2.软件=软件工程+程序,那么软件工程和程序哪个更重要?软件工程的侧重点又是什么?

  • 答:我认为软件工程更加重要,软件工程是由一个简单的程序渐渐演变过来的,它不仅包括了程序,还需要满足用户提出的各种功能,保证服务质量等等,当然,程序也是软件的核心部分。软件工程的侧重点是构建管理,源代码管理,软件设计,软件测试,项目 管理。

3.敏捷流程是否是现代软件开发的主流?

  • 答:敏捷流程已经成为是现代软件开发的主流,它是以人为核心,注重交流和协作,强调软件可持续发展,实现频繁交付对客户最重要的价值的开发模式。例如,用户直接反馈正是敏捷流程开发的好处。但是,我们在软件开发时,也需要根据软件的特点选择最合适的开发模型。

4.软件团队的模式对软件开发的影响?软件团队的模式是否指的是集体主义?

  • 答:不同的需求对应的团队模式也不一样,模式会对软件开发造成极大的影响,对开发者的要求也不一样。选择不合适的比如一个大型的公司不可能选择一社区模式,公司是盈利的公司,职员也不是志愿者,如果选择这个这个模式,职员得不到相应的报酬,会降低职员的工作热情,影响软件开发。软件团队的模式指的并不是集体主义,而是一种团结协作的精神。

5.用户体验应该什么时候开始考虑?工程师和设计师的区别又是什么?它们之间的交互方式又如何判断?

  • 答:我认为用户体验应该从软件设计时就开始考虑,考虑如何让界面更加符合用户体验,其次,在软件测试的时候要从用户的角度考虑问题,提高用户对软件的认知。软件工程师主要进行软件前期的项目需求的分析,然后对项目进行风险评估并试图解决这些风险,然后开始进行软件的开发,后期对软件的进度做相关的评估,是代码编写者与代码的交互;软件设计师主要是根据用户需求,按照系统总体设计规格说明书进行软件设计,编写程序设计规格说明书等相应的文档;组织和指导程序员编写、调试程序,并对软件进行优化和集成测试,开发出符合系统总体设计要求的高质量软件,是与界面的交互。

你可能感兴趣的:(软件工程——个人总结)