软件工程课程期末大作业——help goods finnal
软件工程课程期末大作业——help goods finnal
分析和设计阶段
在编写软件前,我首先根据题目画了用例图、顺序图和类图,同时先大体将软件划分为几个模块,并列出了各种需要用到的函数,构思了GUI。事实证明,这对我后面的软件开发有很大的帮助。
实现阶段
在开发过程中,我对预先设计好的模块以及所需的函数进行了逐个实现,并添加了一些新的函数以完善需求。然而,在第一次测试时,程序异常崩溃。通过测试和网上搜索,确认是因为使用链表来存储数据,在一次又一次的new的过程中发生了内存崩溃。这种基础数据结构引起的问题对整个软件的打击是致命的。
然而此时,模块化开发的好处便体现了出来。由于操作模块仅仅是调用存储模块的接口,因此,我只需要改动存储模块部分,而操作模块可以完全不变。这为我的修改节省了大量时间。最终的程序由线性表实现数据存储。虽然时间复杂度略高(实际上还是瞬间完成操作),但稳定性强了不少。
思想体会
本课程系统地讲解了软件开发的思想,让我对软件开发的流程有了清晰的认识。本次大作业是我的第一次尝试,也实际体会到了按标准流程开发的好处。不过,我也发现了自己的经验不足,还需要以后的勤加练习
浙公网安备 33010602011771号