首页 > 其他分享 >“物品复活”软件开发总结

“物品复活”软件开发总结

时间:2024-12-27 18:32:56浏览次数:6  
标签:软件开发 软件工程学 张海藩 开发 物品 软件 过程 复活

前言

经过一个学期的学习,我对软件开发的整体过程有了一定了解,再看看自己的开发过程,跟工程上严密的步骤相去甚远,简直不堪回首。下面从软件生命周期的各个阶段对开发过程进行反思总结。

软件定义

软件定义时期的任务是:确定软件工程开发必须完成的总目标、确定工程的可行性、导出实现工程目标应该采用的策略及系统必须完成的功能、估计完成该项工程需要的资源和成本,并制定工程进度表。

——张海藩《软件工程学导论》

软件开发的总目标定老师给的作业描述中已经说明了,可行性也是不言自明的。我之前从未开发过一个软件,于是找了一个功能与老师描述相似的平台作为开发的参照——交大柠檬中的闲置物品模块。由于不具备太多软件工程方面的知识,我了解的开发软件的工具也很少,不假思索地就决定用Python内置的GUI库tkinter来开发了,现在想想还是应该在开发前多多调查,寻找有没有更好的框架和工具。至于完成这个软件所需要的资源和成本,我完全没有估计过,一方面是因为没有想到,另一方面是因为能力有限,想到了也不知道应该如何估计。

软件开发

软件开发时期具体设计和实现在前一个时期定义的软件。它通常由下述4个阶段组成:总体设计,详细设计,编码和单元测试,综合测试。

——张海藩《软件工程学导论》

我的开发过程很好地体现了在计算机系统发展的早期时代,个体化的软件环境下的软件开发过程:软件设计通常是在人们头脑中进行的一个隐含的过程,除了程序清单之外,没有其他的文档资料保存下来。
只有在开发时遇到一个问题实在无法解决时,我才尝试画一些软件结构图试图厘清思绪寻找可能的解决方法。现在我知道了,应该在动手编码之前先把软件结构设计好。我也身体力行地体会到了在开发后期调整软件结构有多费劲。

软件维护

维护时期的主要任务是使软件持久地满足用户的需要。

——张海藩《软件工程学导论》

根据室友和检查我代码的同学的反馈,我(并不是很及时地)对错误加以了改正。在开发的上一个阶段,我实现了作业要求的基本功能,但还有些我自己想加的功能没来得及实现,在后续的迭代中也进行了实现。在开发的最后阶段,作业又有了几项加分需求,我也根据自己对需求的理解,在能力范围内实现了一些附加功能。最后,我发现各个模块中有许多重复的代码段,显然没有达到“低耦合,高内聚”的要求。于是我运用了面向对象的方法,把软件中的页面分了几个大类,原来的类都从这几类中继承,并对整体的代码进行了重构。

总结

这是我第一次开发一个软件,虽然过程磕磕绊绊,但也算是收获了一个结果。以后要是还有机会开发软件,相信我会做得更好。

标签:软件开发,软件工程学,张海藩,开发,物品,软件,过程,复活
From: https://www.cnblogs.com/Kuriputon/p/18636501

相关文章

  • “物品复活”软件开发总结与体会
    1.项目背景与功能概述在《软件工程》课程中,我完成了一个基于PyQt5的物品管理系统开发。该系统的主要功能包括普通用户和管理员的注册和登录,对于管理员提供审核用户和类别管理两个模块,对普通用户实现物品的添加、删除、查找、显示全部物品的功能。系统实现了对物品信息(如名称、类......
  • 软件开发、硬件开发与设计领域各类工具及平台
    一、软件开发相关Web开发框架像Django(Python)、SpringBoot(Java)这样的框架可以提供基础的项目结构、路由、数据库连接等功能的demo,展示如何快速搭建一个功能完备的网站。例如,一个使用Django搭建的简单博客系统demo,包含文章发布、分类、评论等功能,能让开发者了解其MVT(模型-视......
  • 美团后端暑期一面,本来收到感谢信,但又复活了!
    今天来分享的是一位读者的美团暑期实习一面面经,主要是一些常规八股,难度还是有的,部分题目确实不太好回答。这位同学回答的不是很好,本来是收到感谢信了。结果,过几天又收到复活赛邀请,复活赛倒是打赢了,已oc。1、线程池的参数/***用给定的初始参数创建一个新的ThreadPoo......
  • Week 15:“物品复活”软件开发总结
    软件工程课程总结:基于Tkinter的物品管理系统开发体会1.项目背景与功能概述在《软件工程》课程的学习中,我完成了一个基于Tkinter的物品管理系统的开发。该程序的主要功能包括物品的添加、编辑、删除、恢复,以及搜索管理等操作,同时提供了回收站功能以便用户可以管理已删除的物品。......
  • “物品复活”软件开发(Final) 总结文章
    在开发物品复活系统过程中,我深刻体会到软件工程中的一些关键概念和技术方法的应用。以下将从多个维度,结合软件工程的理论,回顾开发过程中的经验与收获。需求分析与功能设计在开发开始时,需求分析是整个软件工程过程中至关重要的一步。在这一步,我明确了系统的主要目标,即为用户提供......
  • 基于SpringBoot的校园闲置物品交易网站
    摘要在网络发展的时代,众多的软件被开发出来,给用户带来了很大的选择余地,而且人们越来越追求更个性的需求。在这种时代背景下,校园商家只能以用户为导向,以产品的持续创新作为校园商家最重要的竞争手段。系统采用了Java技术,将所有业务模块采用以浏览器交互的模式,选择MySQL作为系统的......
  • 软件开发之 “雷区”:20 个常见错误深度剖析
    需求理解不充分问题描述:没有与利益相关者进行充分沟通,对软件的功能、性能、用户场景等需求理解模糊。案例:开发一个企业资源规划(ERP)系统时,没有理解企业复杂的业务流程,导致开发出的模块无法满足实际工作流程,如库存管理模块没有考虑到不同仓库之间货物调配的特殊规则。忽视......
  • 人工智能的软件开发工具
    Python基础Python是一种广泛使用的高级编程语言,由于其简洁的语法和强大的功能,得到了广泛的欢迎,尤其是在数据分析、机器学习、Web开发、自动化脚本等领域。本文将全面介绍Python的基础知识,帮助初学者建立扎实的编程基础。1.Python概述Python由荷兰人吉多·范罗苏姆于1991......
  • 二手物品交易管理系统-毕业设计-附源码
    文末获取源码和万字论文,制作不易,感谢点赞支持。      毕业设计(论文)   题目:二手物品交易的设计与实现摘 要如今社会上各行各业,都喜欢用自己行业的专属软件工作,互联网发展到这个时候,人们已经发现离不开了互联网。新技术的产生,往往能解决一些老技术的弊端......
  • django基于Python的校园个人闲置物品换购平台
    文章目录程序资料获取一、项目技术二、项目内容和项目介绍三、核心代码四、效果图五、资料获取程序资料获取......