标签 » 开发模型

软件开发模型

软件开发模型(Software Development Model)是指软件开发全部过程、活动和任务的结构框架。软件开发包括需求、设计、编码和测试等阶段,有时也包括维护阶段。
典型的开发模型有:①瀑布模型(waterfall model);②渐增模型/演化/迭代(incremental model);③原型模型(prototype model);④螺旋模型(spiral model);⑤喷泉模型(fountain model);⑥智能模型(intelligent model) ; 7. 混合模型(hybrid model)

如何处理技术和需求的矛盾[转载]

技术和需要产生矛盾往往是因为两种情况。一是需求不清晰(如细节未考虑)、或者提出的方案不合理。这种情况下,技术会对需求方的方案做补充和修缮;如果从技术角度想到更好的解决方案,也会提出来。在不影响商业价值或用户的体验的前提下,需求方大都会认同,从而解决矛盾。
第二种情况是需求合理清晰,但是从技术实现成本过高或周期过长。这需要站在技术的角度重新考虑各种替代方案。如果替代方案既能满足需求又没有成本周期问题,则矛盾得以调解。比如阿里软件开发的一款外贸软件产品中,有着模糊搜索的要求。直接通过数据库来处理,性能是非常差的;通过搜索引擎,则成本太大;但如果不提供,从需求方来说就是没有达到要求。后来技术团队将多种方案综合,通过适当降低友好度,来实现这个功能的高效性。但有些时候未必能找到合适的替代方案,叶伟认为此时应当从商业价值、性价比等角度来考虑‘变更需求’,而且必须提交给上级经理或者产品会议作决定。
调节技术与需求之间矛盾的方法有很多种,但是原则却是大同小异。阿里软件研发总监叶伟结合自己十多年的带领团队开发经验总结了三个原则:

开发中的一些问题

标记:本文是自己在项目中思考的一些东西,应用范围或许很有限
有时候开发出来的东西并不能够解决所有人的问题,而即使解决,效果可能并不理想,甚至有时候会违背起初开发的意愿,没有经验的开发者往往就会面临这样的问题,我最近在工作中就遇到过这样的问题,甚至是有重复修改开发一个功能的低效率情况出现,简单总结之后,概括如下:
1、开发需求清晰明朗,并且事先通知所有参与人员,开发中谨遵需求。
所谓的开发需求不是说必须有相关的文档或者数据出来,而是开发者对需求理解的相当准确,开发出来的东西,即使有瑕疵,最起码在结构和逻辑上符合需求,那么我们即使在后期需要完善或者修改的时候,也能够很清楚的搞清楚这块东西的处理原则、方式、方法,而不至于走弯路,去重新写。
2、代码的初步优化
我想应该是两个方面,一是程序代码逻辑的优化[包含算法优化],一是代码一定要排版清晰,并且有相应的注释。