----我感觉马上自己像是做一个毕业设计。因为有个小项目从需求谈判到维护,我将一条龙服务。有人开玩笑,说,你现在是做什么啊,项目经理吗?真好笑,哈哈,我从实习到现在才工作5个月不到。
今天在用rose写需求规格说明时,有件事很触动自己。我做的是x库管理系统,对于x的修改和删除,这个数据表如何设计。我当初想,在x主表中加入状态位,从待提交,已审核,发布状态,修改申请,已修改。还有一种方法,建一张和修改有关的表,包括申请人,时间,批准状态,等字段。我觉得第一种简单。比较好,就像是数学题中的简便方法。但是又一想,如果有多个人同时提出修改申请呢?但是,会不会多个人同时提出修改呢?客户允许多个人同时提出申请吗?
我又联想到之前维护的一个y系统的状况,许多东西,用户的需求是不断改变的。而这种改变的结果往往会引起数据库实体层次的改变。我一方面抱怨用户为什么自己的需求当初不一下子想好,又一方面抱怨开发这个系统的人,让维护的人带来这么大的不便。
经过了数月的总结,我得出这么些结论:首先,马克思的一切事物都是在发展的,也适用于客户的需求,因为客户的需求本身来源于客户自身的发展,遇到的实际问题的变化,思想的转变,而且同一个项目的客户群在时间轴上是一个变量。所以,不能怪客户!
那应该怪谁呢?
怪没有经验!怪没有长远的考虑!更怪设计软件的出发点不对!
我今天觉得,当然我不知道大师级人物是不是也这么觉得,或者自己以后是不是这么觉得,设计软件不是做数学题!数学题的求解追求高度精湛的思路,高度简便的求解过程!高度准确的结果!而软件设计呢?没有最好,只有更好。特别是针对变化的需求,怎么设计?正确的出发点,应该是从长远的角度去思考应该如何设计。比如,就像刚才提到的,到底允许一个人提出申请还是同时可以多个人?答案是,两个都有可能,那么哪一种设计能同时满足两种需求呢?显然是第二种,虽然刚开始我觉得它不简便,还要新建张表,但是,万一现在是一个人申请,以后变成多个人申请了,那改法会打击你的自信心的!
我也突然想到一句话,以不变应万变。这句话的执行,需要一个人具有长远的思考方式,而有多长远呢?长到哪一年呢?这个说不准,越长越好把,所以,这就是软件设计没有最好,只有更好的原因之一!面对变化的因素,应该首先进行每一个因素的分析,再考虑每一个因素的对策,最后再试图合并这些对策,达到一个容量最大的对策并集!当然,说不准这个牵涉到运筹学了,或者更高深的数学。
所以,我有突然想到,牛顿风光了几百年,并且在高中以前我认为他是绝对的权威。但是高中认识了爱因斯坦,觉得他又是神了。其实,他的相对论肯定不是正确的!肯定要被未来更为正确的理论所替代!
这,也就是马克思所说的,绝对性和相对性的统一。
今天在用rose写需求规格说明时,有件事很触动自己。我做的是x库管理系统,对于x的修改和删除,这个数据表如何设计。我当初想,在x主表中加入状态位,从待提交,已审核,发布状态,修改申请,已修改。还有一种方法,建一张和修改有关的表,包括申请人,时间,批准状态,等字段。我觉得第一种简单。比较好,就像是数学题中的简便方法。但是又一想,如果有多个人同时提出修改申请呢?但是,会不会多个人同时提出修改呢?客户允许多个人同时提出申请吗?
我又联想到之前维护的一个y系统的状况,许多东西,用户的需求是不断改变的。而这种改变的结果往往会引起数据库实体层次的改变。我一方面抱怨用户为什么自己的需求当初不一下子想好,又一方面抱怨开发这个系统的人,让维护的人带来这么大的不便。
经过了数月的总结,我得出这么些结论:首先,马克思的一切事物都是在发展的,也适用于客户的需求,因为客户的需求本身来源于客户自身的发展,遇到的实际问题的变化,思想的转变,而且同一个项目的客户群在时间轴上是一个变量。所以,不能怪客户!
那应该怪谁呢?
怪没有经验!怪没有长远的考虑!更怪设计软件的出发点不对!
我今天觉得,当然我不知道大师级人物是不是也这么觉得,或者自己以后是不是这么觉得,设计软件不是做数学题!数学题的求解追求高度精湛的思路,高度简便的求解过程!高度准确的结果!而软件设计呢?没有最好,只有更好。特别是针对变化的需求,怎么设计?正确的出发点,应该是从长远的角度去思考应该如何设计。比如,就像刚才提到的,到底允许一个人提出申请还是同时可以多个人?答案是,两个都有可能,那么哪一种设计能同时满足两种需求呢?显然是第二种,虽然刚开始我觉得它不简便,还要新建张表,但是,万一现在是一个人申请,以后变成多个人申请了,那改法会打击你的自信心的!
我也突然想到一句话,以不变应万变。这句话的执行,需要一个人具有长远的思考方式,而有多长远呢?长到哪一年呢?这个说不准,越长越好把,所以,这就是软件设计没有最好,只有更好的原因之一!面对变化的因素,应该首先进行每一个因素的分析,再考虑每一个因素的对策,最后再试图合并这些对策,达到一个容量最大的对策并集!当然,说不准这个牵涉到运筹学了,或者更高深的数学。
所以,我有突然想到,牛顿风光了几百年,并且在高中以前我认为他是绝对的权威。但是高中认识了爱因斯坦,觉得他又是神了。其实,他的相对论肯定不是正确的!肯定要被未来更为正确的理论所替代!
这,也就是马克思所说的,绝对性和相对性的统一。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· .NET周刊【3月第1期 2025-03-02】
· 分享 3 个 .NET 开源的文件压缩处理库,助力快速实现文件压缩解压功能!
· [AI/GPT/综述] AI Agent的设计模式综述