小组成员课程心得总结
小组心得体会
一个学期的学习快结束了,小组任务和学习大家都有自己不同的感想,大家的感想是什么样的呢?
地信1901张旻昊:
一学期的软件工程学习终于结束了,我也大致学习到了软件开发的相关知识,同时也运用所学,进行了小组软件工程项目的开发。
无论是老师还是后来进行经验分享的学长,都强调了前期需求分析等步骤的重要性。一方面,系统复杂的功能需要在前期就梳理清楚,否则会对后期代码编写造成不便;另一方面,一般情况下文档对代码的编写也起到指导性作用。
但在后期实际开始进行代码编写时,发现很多功能都难以按照最初的设想实现。我们小组所使用的Unity平台是基于C#语言进行软件开发的,但其中还兼有大量的交互式操作,而先前我们没有任何相关经验。在这种情况下,从0构筑软件不是一件容易的事,与其说我们是在根据需求分析、类图等编写代码来实现功能,倒不如说我们是找来各种具有类似功能的游戏的编写教程拼凑出自己所需要的功能。所以后期,我们也进行了类图、用例图等内容的修改,使其符合我们代码的实际状况。就这一点来说,我反而认为,在对代码实现的相关知识毫无了解的情况下,前期工作、文档编写的重要性并不比代码更重要。
在逐步摸索中,我也终于大致理解了Unity的部分“逻辑”,并成功实现了先前计划实现的部分功能;然而,仍有大量不明原因的BUG导致其余功能难以实现,反复梳理逻辑也无法搞清问题所在。最终我们的游戏仅完成了一部分功能,距离“可玩性”更还有遥远的距离。软件工程课程结束了,但我们的软件开发还远未结束。在暑期甚至更远的将来,我都十分愿意继续更深度的学习,完善我们的项目作品。
地信1901唐语声:
软件工程这门课程的学习,是一个学习如何分析并解决问题的过程,能够加强整体思维能力,对综合素质有所提高,培养良好的团队意识以及分析规划、动手实操的能力。通过学习软件工程,我们可以开发出具有实用性、有效性、可修改性、可靠性、可理解性、可维护性、可追踪性多种特质,充分满足用户需求的软件产品,在设计软件的同时将效用最大化,以减少后期维护的困难。
要想学习好软件工程,就要学会如何系统地思考,养成良好的编码习惯,知道软件工程的目标、过程和原则,正产具有正确性、可用性的产品,使软件产品达到预期的功能。
生产一个最终能够满足需求且达到工程目标的软件产品所需要的步骤。软件工程过程主要包括开发过程、运作过程、维护过程。它们覆盖了需求、设计、实现、确认以及维护等活动。需求活动包括问题分析和需求分析。问题分析获取需求定义,又称软件需求规约。需求分析生成功能规约。设计活动一般包括概要设计和详细设计。概要设计建立整个软件系统结构,包括子系统、模块以及相关层次的说明、每一模块的接口定义。详细设计产生程序员可用的模块说明,包括每一模块中数据结构说明及加工描述。实现活动把设计结果转换为可执行的程序代码。确认活动贯穿于整个开发过程,实现完成后的确认,保证最终产品满足用户的要求。维护活动包括使用过程中的扩充、修改与完善。伴随以上过程,还有管理过程、支持过程、培训过程等。软件工程的原则是指围绕工程设计、工程支持以及工程管理在软件开发过程中必须遵循的原则。
在软件工程的学习中,我了解到了软件并非是一些代码这么简单,在开发软件的过程中,编写代码的工作量其实只占不到所有工程量的少部分,后期的管理和维护实际上占了主要部分。一个完整的项目规划须包括,软件的定义,可行性分析报告,项目开发计划,软件需求说明书,概要设计说明书,详细设计说明书,用户操作手册,测试计划,测试分析报告,开发进度报告,项目开发总结报告,软件维护手册,软件问题报告,软件修改报告,等多个文档,每个文档都要上级验收审查,而文档数量众多,要做好这点真的不是很容易,而恰恰写好文档正能保证完成软件工程其中一个目的的关键,既研究如何用最小的开销做出生存期较长的软件,再加上各个阶段都要进行周密的策划、详细的分工部署和人员安排,且各阶段要据具体情况不断的反复才能达成,所以代码编写只是开发软件这个浩大的工程的一个小小的过程。
在课程学习任务较重的这个学期,完成这样一门难度较大的课程的学习对我来说有一定的困难,好在有小组团队的帮助。在课堂上学习的理论知识在应用时难免会出现问题,但是在小组实操的过程中,这种脱节便会在大家的共同努力下解决,在合理的分工安排下,小组任务在较大程度上实现了课程最初的目标规划。
软件工程这门课程不仅仅教授专业知识,更多的是培养思维方式,为未来的工作生活打下基础。感谢老师的讲解以及小组同学们的帮助让我收获良多,相信在未来的学习生活中,我也能够实践运用这段时间内所学到的所有,更好的解决学习、生活中的问题。
地信1901潘滢月:
软件工程这门课从开学第一周的3月5日,一直相伴着我们走到了第十六周的6月18日。在这期间,我们从对软件设计的一窍不通,变成现在的略知一二,其中经历了多次的线上和线下讨论、反复地修改和老师多次的指导。通过这一长段时间的学习与实践,我们小组也完成了本次软件工程的课程作业,基本完成了小组的目标,学习和收获了新的知识。
在共同完成软件设计的过程中,通过学习和实践,也让我对软件设计有了不一样的看法。特别是老师在上课时说的“编程其实只是软件设计中的一部分”,当我们实时参与到其中时才切身感受到这点。我们所编写的需求分析、概要设计、详细设计和测试是环环相扣的,若缺漏前一步,后一步都无法顺利展开。但与此同时,每一部分又是相对独立的,发挥着各自的作用。我们认为最难的编码部分也是必须基于这些说明书展开。虽然编码对于我们来说相对晦涩难懂,但是编码只是实现软件设计的工具,我们编写的说明书才是更核心的部分。
在编写说明书的过程中,我们遇到了很多问题,与此同时我也吸收了很多经验和教训。其中以下几点是令我印象最深刻的:
一是选题。在一开始构思我们所想要设计的项目时,其实我们也想过很多可以操作的项目。但最终我们从个人的兴趣与能力出发,同时也参考了一些网上的资料,选择以游戏为我们所设计的软件。随后我们也借鉴了这些视频资料,结合了我们的兴趣想法,确定了我们的4096的大致雏形:一个以“在体力值不为零的情况下,通过道具的获取、障碍的破坏以及闯关,在7*7的方格地图内获取尽量高的分数”为规则的小游戏。
二是修改。当我们一开始完成需求分析说明书时,认为该阶段就直接完成了,直接进入概要设计部分时不需要再修改需求分析了。但随着项目的推进,通过我们不断地完善、以及现实状况的反映,我们的项目出现了变动,需要再次修改我们的需求说明书。且我们也需要及时的修改,否则当问题长期积压时,在之后就很难更改或者是变动幅度很大。
三是记录。当大家在完成代码沟通后,缺乏注释和对变量的相关记录会导致事后可能想不起来或者他人读不懂代码。对于我们目前这个较小的程序,单看代码还能比较好的理解。但是若软件变得更复杂的话,则很有可能出现代码混乱的场面,这是不利于项目的推进的。因此,适当的记录是非常有必要的。
最后,我们设计的软件虽然没有完全成功,但也有了大致的雏形。虽然整个软件设计的过程并不是一帆风顺的,但在其中大家都收获了很多知识,积累了很多经验。感谢这次课程帮助我对软件的设计有了更加深入的了解,同时也提高了自身的专业水平。希望未来有机会,能够对软件设计有更深入的了解,参与到更多的软件工程项目中去。
地信1901熊轩:
在编程能力较差的情况下学习软件工程这一门课对我来说是一个很大的挑战,虽然担心,但还是硬着头皮上了。
像建一座房子一样去构建一个软件,听起来很神奇也很有挑战性。
最初的时候大家都没想清楚做什么,好在大家对自身的定位都较为清晰,没有选择结构复杂的复杂,经过几次严密的讨论我们决定去开发一个单机游戏。
小时候都玩过不少4399小游戏,我们要开发的这一款是类似推箱子的小游戏,大家都十分熟悉,很快就把游戏能想到要实现的功能确定了,经过老师的指导就十分完美了。
万事开头难,我们并没有遇见特别大的困难就开好了头,这令我们信心大增。
后期的程序编写我认为是最难的,好在齐心协力也解决了,程序编写的leader是我们组的张旻昊同学,他完成了大部分的工作,这让我们的压力减少了很多。
学期末在即,我们的程序大体框架和部分重要的功能都完成了,考试结束后会加紧完善,软件工程的学习让我收获颇多。
感谢老师和队友们的帮助和鼓励,同学的试玩和建议,离开你们任何一个我们的项目都不可能有今天的成就。
地信1901刘麟燕:
开始看到软件工程这门课程名字的时候,心里一紧,这门课程是不是要一直敲代码了,非常害怕。
经过一个学期的学习,发现原来并不是这样,在这门课上,王颖老师主要跟我们讲解的是开发一个项目的原理、思想、步骤等,而不是只学敲代码。同时也说明了自己对软件的认识如此狭隘,代码只是软件其中一小部分,一个软件的开发原来有这么多步骤,这么多需要注意的事项。
在这一学期里,我觉得自己最大的收获是如何与同伴一起学习,一起完成任务。在以往的小组项目任务中,大多都是分配任务,然后自己完成自己的那部分,最后进行汇总。而这次课程的项目,我们选择开发的软件是一款休闲小游戏,开发过程中的游戏的具体事项,《4096需求分析书》、《4096需求分析概要》,最后游戏画面的制作,代码的敲写,都是小组一起讨论一起写,一起提问题一起筛选最后得出的结果,在这过程中,如何进行小组合作,显得尤为重要。
其中,自己在这过程中主要《4096——需求规格说明书》的2任务概述和5性能需求部分,《4096——概要设计说明书》中的3.接口设计部分和《4096——软件详细设计说明书》的2.1总体设计和3.7测试部分。同时主要负责团队博客和GitHub和运营,在官号上对平时例会讨论进行记录和总结。
除了团队合作能力,感觉自己的专业知识水平又提高了,了解学习了一个软件的一生,如何出生,如何成长,怎样维护,到最后的消亡。其中,经过我一个学期的学习后,发现原来一个软件的开发最重要的原来不是代码的敲写,而是需求的分析。
最后,自己能有这么多的收获,多亏了王颖老师的细心教导。在这一个学期学到的东西,相信会对自己的一生有巨大的影响,也希望自己能不断学习新的技能,不断进步。

浙公网安备 33010602011771号