项目 | 内容 |
---|---|
这个作业属于哪个课程 | 2016级计算机科学与工程学院软件工程(西北师范大学) |
这个作业的要求在哪里 | 软件工程课程学习总结 |
课程学习目标 | (1)掌握软件项目评审会流程;(2)反思总结课程学习内容。 |
二、总结自己在项目的 可行性分析/需求分析/软件设计/实现/测试/项目验收/中学到了哪些“知识点”。
需求阶段:为了更好的理解问题,人们常常采用建立模型的方法,除了创建分析模型之外,在需求分析阶段还应该写出软件需求规格说明书,经过严格评审并得到用户确认之后,作为这个阶段的最终成果。通常主要从一致性、完整性、现实性和有效性4个方面复审软件需求规格说明书。
设计阶段:自顶向下逐步求精是进行软件结构设计的常用途径,但是,如果已经有了详细的数据流图,也可以使用面向数据流的设计方法,用形式化的方法由数据流图映射出软件结构,这样映射出来的只是软件的初步结构,还必须根据设计原理并且参考启发式规则,认真分析和改进软件的初步结构,以得到质量更高的模块和更合理的软件结构。
实现阶段:实现阶段包括编码和测试,所谓编码就是把软件设计结果翻译成用某种程序设计语言书写的过程。目前软件测试仍然是保证软件质量的关键步骤,它是对软件规格说明书、设计和编码的最后复审。
测试阶段:白盒测试和黑盒测试是软件测试的两类基本方法,这两类方法各有所长,相互补充,通常,在测试过程中早期阶段主要使用白盒测试,而在测试过程的后期阶段主要使用黑盒测试方法。
发布阶段:在此次团队项目中,我们小组开发的是旅游管理系统,所以由于各种原因,此项目并未发布。
维护阶段:预防性维护实质上就是软件再工程,典型的软件再工程过程模型定义了库存目录分析、文档重构、逆向过程、代码重构、数据重构、正向过程6类活动。
三、结合个人项目/结对编程/团队项目的个人经历,谈谈心得。
经历过,也算是给自己博得一次发言权, 你才会知道那是什么 , 过程怎样,该怎么做,遇到问题如何解决, 历数心得,受益匪浅。
从整个项目的过程来看, 团队合作中需要沟通、分工、协作和监督。只有做好这四项才算是一个好的合作团队。首先, 团队合作 最基本的技能就是沟通。沟通的目的就是让别人了解你的想法,因为每个人考虑问题的时候总会有各种各样的见解 ,也会出现各式各样的偏差,我们只有通过沟通来综合所有人的好的想法, 以 减少走弯路, 从而让事情进行的更顺利。再其次,团队合作中协作是必不可少的。在项目组中各成员都明确 分工 了自己的任务, 明确 了自己的任务分工, 就需要大家单独工作的同时 又去配合其他人。
了解需求、分析、设计、编程、垒代码、别人看来,计算机的东西、 枯燥、乏味、无聊,还很容易让人浮躁,在我看来,也很容易让人绝望,因为不是简单的一触而就的东西,需要你花时间,花心思,你想,要让人与机器沟通,要让人以机器工作的角度来思考,还得考虑用户需要什么,各种问题杂合,确实是不太容易 。一路走,都是很枯燥乏味的,没有一点甘霖,也没有希望,代码,代码,代码,头晕眼花……只有当运行键后不再有那么多错误和警告,当功能一个一个都能按我们的设计实现,当成果漂漂亮亮地展现在面前,那就是我们的希望,我们的动力,是我们最需要的光明。
这样的实践,主题面向的是创新,如果你有想法,有能力,有自信,就很值得去尝试一下, 不试一下,谁都不知道自己有多少,到底行不行,而能从中获得的东西寥寥数语岂能言说尽,只有当你身处其中,经历过,体验过,不论是枯燥,绝望, 还是最后的光明幸福,你才知道其中的滋味。不要放弃尝试,任何时候都不。一路走 ,一路调解,一路坚持。
四、总结这门课程的实践总结和给你带来的提升
(1)统计在软件工程实践中,你完成了多少行的代码;20000多行
(2)你在软件工程实践的各次作业分别花了多少时间?
时间(h) | 作业 |
---|---|
8 | 实验一 软件工程准备 |
8 | 实验二 软件工程个人项目 |
10 | 实验三 作业互评与改进 |
12 | 实验四 附加实验 项目互评 |
15 | 实验五 团队作业1:软件研发团队组建 |
12 | 实验六 团队作业2:团队项目选题 |
18 | 实验七 团队作业3:团队项目原型设计与开发 |
16 | 实验八 团队作业4:基于原型的团队项目需求调研与分析 |
16 | 实验九 团队作业5:团队项目需求改进与系统设计 |
20 | 实验十 团队作业6:团队项目系统设计改进与详细设计 |
30 | 实验十一 团队作业7:团队项目设计完善&编码 |
26 | 实验十二 团队作业8:软件测试与Alpha冲刺 |
25 | 实验十三 团队作业9:Beta冲刺与团队项目验收 |
答:整个一学期下来,每次作业都在很认真的去完成,所以对于这门课程,我觉得无论是在学习上还是做作业的耐心上收获都很多。尤其是在团队项目设计完善过程中,印象最深的应该是项目经过编码和修改,出现了很多bug,在自习室整整呆了一天,盯了一天的电脑,修改了一天的代码,眼睛真的是太累了,心情也很无奈崩溃,所以才体会到了软件工程师的不容易,好在最后大问题已经解决,顺利的完成了项目验收的任务。
(4)累计花了多少个小时在软件工程实践上?平均每周花多少个小时?
答:累计共花了160个小时在软件工程实践上,平均每周大约花8个小时在软件工程实践上。
(5)你学习和掌握的新语言、新平台;
答:项目所用到的java语言之前就有学习、这学期学习到了博客园、GitHub、雨课堂、慕课网。
(6)填写下表,总结一学期的学习中,你学习或使用的软件工程开发工具、开发方法和建模方法;
软件开发工具、项目管理工具 | 软件开发方法 | 软件建模方法 |
---|---|---|
墨刀、Visio、在线作图工具ProcessOn、www.leangoo.con、navicate等 | 原型开发方法,面向对象的软件开发方法等 | 面向对象建模(用例图、类图、包图、流程图、时序图等) |
五、你认为目前的课程存在哪些问题,你有什么更好的建议。
我认为软件工程这门课应该侧重于实验课的学习,一个好的项目需要团队去花费时间去开发和设计,但是理论知识也固然重要,理论实践相结合才是学好一门课程的前提。