`
gdpglc
  • 浏览: 87915 次
  • 性别: Icon_minigender_1
  • 来自: 长春
社区版块
存档分类
最新评论

软件开发过程新领悟

阅读更多
最近做项目对于产品开发过程控制有了新认识,先暂记如下,以后再研究。

需求分析与设计是按主题划分的

基本上一个研发类项目可按如下主题划分:

1.业务与问题主题 分析需求和问题、得出产品构想。
2 解决方案主题 需求分析后设计解决方案(产品架构 核心产品功能设计)。
3.产品功能主题 需求分析后产品功能设计。(覆盖所有功能点)
4.程序设计主题 需求分析后程序设计(详细数据结构、过程设计(时序图))。
5.功能实现主题 根据设计编码。

各个主题都有需求分析过程,但是这里的需求分析是特指当前主题下的需求分析。比如程序设计时的需求分析,是指要实现的界面内容及交互动作是什么。

这些不同的主题内容,会在软件的开发过程中出现。


------------------------------------------------------------------
关于时序图:
从自动路由得来的经验,复杂的程序的第一版顺序图落实到代码上会有很多的漏洞,随着代码的编写需要修改很多次,因此在功能开发时的设计文档,不应包含
详细的顺序图,顺序图应该是存储在工具中的,这样方便随时修改,因为在写代码时变动的可能性太大了。

这个理解是有问题的。如果在开发前,时序图是可以详细明确的,应该放在文档中。对于不同复杂度的程序时序图在未开发前,能明确的程度是不同的。比如swing的调用过程,就比较好明确。没有理由,明明可以画的很详细,却故意画的很简化。

无论怎么画时序图,在开发前,都是想把要开发的内容理清楚,并记录。只是需要寻找一种最佳形式。如果人的思考能力,可以不借助于任何工具,那就可以完全不同时序图了。

开发前时序图是用来发现需要的类和描述详细或概要的主要过程(取决于问题的难度)。不需要将全部过程的顺序图画出来,也不应该用图来限制代码的变化,因为在实现时也许会想到更好的办法或发现之前的想法是错的。详细死板的使用顺序图,现在无用,将来也无用。关键的顺序图写在设计文档中即可,不需要再用uml工具画出来其它过程的图,因为没必要。通过一个顺序图做为敲门砖,可以想通一组相关的过程,那些类似的过程,是没必要再表达为时序图的。

在开发后,文档中的顺序图,能起到读代码的入口,是一个非常不错的定位。这个是要在开发后和软件保持一致的。

通过以上方法,即可以保持设计文档的简捷有效,又因为单个功能需要维护的时序图较少,这就使设计文档和软件保持一致成为可能。

这个思想的总原则是相信人的思考能力,并不需要依赖穷举类型的设计文档,相似的过程是可以举一反三的。

以下也是一个基本事实:
写代码时也是需要进行设计的,有时非常简单可能就是某种技术的直接应用,也可能是非常复杂的,涉及复杂的算法和并发处理,这些内容的实现可能要经过多次的试错才行,这导致详细的设计文档很难准确。因此,必须还是要靠开发人员才能得到最后的实现方法。因此,没必要在设计文档中定义一切,准备的描述关键内容,其它的内容由开发人员补充即可。
--------------------------------------------------------------

象需求、设计、架构这样的词汇,都有自已的内含。但在不同的主题范围内,指代内容又不同。因此有其泛指和特指。
---------------------------------------------------------------
2
1
分享到:
评论

相关推荐

    敏捷软件开发.pdf

    要想成为一名优秀的软件开发人员,需要熟练应用编程语言和开发工具,更重要的是能够领悟优美代码背后的原则和前人总结的经验——这正是《敏捷软件开发:原则、模式与实践(C#版)》的主题。 不要被书名误导了,《敏捷...

    软件开发的科学和艺术之软件测试

    《软件开发的科学与艺术》是电子工业出版...书 中凝聚了微软公司多位专家多年研究与工作的宝贵经验,并通过对许多成功或失败案例的中肯剖析, 为读者展现了软件开发的思想与流程,值得软件人员好好阅读和领悟!

    敏捷软件开发:原则、模式与实践(C#版)

     不要被书名误导了,本书不是那种以开发过程为主题的敏捷软件开发类图书。在书中,作者延续了自己一贯的写作风格,让你亲历现场,并用幽默亲切的语言和插图,通过一步步展示来自开发一线的代码,分析各种设计决策...

    Android实训报告基于Android游戏开发.docx

    解决问题的方法和措施8(一)、所遇问题8(二)、解决方法与措施9五、心得体会9一、实训目的及其意义1.1、目的及意义了解现阶段互联网发展主流,了解移动互联网,...,了解基于Android的应用软件开发方法及其商业流程...

    在实战中成长Windows Forms开发之路.pdf

    全面阐释了使用C#进行Windows Forms应用软件开发的概念和技术,内容全面,结构合理,论述清晰,帮助你领悟C#以及面向对象的思想与精华,并将其融会贯通,灵活应用到自己的开发过程中。 全书共分3部分,第一部分介绍...

    重构与模式 清晰.pdf

    本书开创性地深入揭示了重构与模式这两种软件开发关键技术之间的联系,说明了通过重构实现模式改善既有的设计,往往优于在新的设计早期使用模式。本书不仅展示了一种应用模式和重构的创新方法,而且有助于读者结合...

    重构与模式

    本书开创性地深入揭示了重构与模式这两种软件开发关键技术之间的联系,说明了通过重构实现模式改善既有的设计,往往优于在新的设计早期使用模式。本书不仅展示了一种应用模式和重构的创新方法,而且有助于读者结合...

    《修改代码的艺术》

    本书是继《重构》和《重构与模式》之后探讨修改代码技术的又一里程碑式的著作,而且从涵盖面和深度上都超过了前两...通过这部集大成之作,你不仅能掌握最顶尖的修改代码技术,还可以大大提高对代码和软件开发的领悟力。

    重构与模式(Refactoring to patterns).part01.rar

    一共12个压缩包,全下载解压 本书开创性地深入揭示了重构与模式这两种软件开发关键技术之间的联系,说明了通过重构实现模式改善既有的设计,往往优于在新的设计早期使用模式。本书不仅展示了一种应用模式和重构的...

    重构与模式(Refactoring to patterns).part11.rar

    一共12个包,全下载解压 本书开创性地深入揭示了重构与模式这两种软件开发关键技术之间的联系,说明了通过重构实现模式改善既有的设计,往往优于在新的设计早期使用模式。本书不仅展示了一种应用模式和重构的创新...

    重构与模式(Refactoring to patterns).part03.rar

    一共12个包,全下载解压 本书开创性地深入揭示了重构与模式这两种软件开发关键技术之间的联系,说明了通过重构实现模式改善既有的设计,往往优于在新的设计早期使用模式。本书不仅展示了一种应用模式和重构的创新...

    重构与模式(Refactoring to patterns).part04.rar

    一共12个包,全下载解压 本书开创性地深入揭示了重构与模式这两种软件开发关键技术之间的联系,说明了通过重构实现模式改善既有的设计,往往优于在新的设计早期使用模式。本书不仅展示了一种应用模式和重构的创新...

    重构与模式(Refactoring to patterns).part07.rar

    一共12个包,全下载解压 本书开创性地深入揭示了重构与模式这两种软件开发关键技术之间的联系,说明了通过重构实现模式改善既有的设计,往往优于在新的设计早期使用模式。本书不仅展示了一种应用模式和重构的创新...

    重构与模式(Refactoring to patterns).part10.rar

    一共12个包,全下载解压 本书开创性地深入揭示了重构与模式这两种软件开发关键技术之间的联系,说明了通过重构实现模式改善既有的设计,往往优于在新的设计早期使用模式。本书不仅展示了一种应用模式和重构的创新...

    重构与模式(Refactoring to patterns).part09.rar

    一共12个包,全下载解压 本书开创性地深入揭示了重构与模式这两种软件开发关键技术之间的联系,说明了通过重构实现模式改善既有的设计,往往优于在新的设计早期使用模式。本书不仅展示了一种应用模式和重构的创新...

    重构与模式(Refactoring to patterns).part05.rar

    一共12个包,全下载解压 本书开创性地深入揭示了重构与模式这两种软件开发关键技术之间的联系,说明了通过重构实现模式改善既有的设计,往往优于在新的设计早期使用模式。本书不仅展示了一种应用模式和重构的创新...

    重构与模式(Refactoring to patterns).part06.rar

    一共12个包,全下载解压 本书开创性地深入揭示了重构与模式这两种软件开发关键技术之间的联系,说明了通过重构实现模式改善既有的设计,往往优于在新的设计早期使用模式。本书不仅展示了一种应用模式和重构的创新...

    重构与模式(Refactoring to patterns).part02.rar

    一共12个包,全下载后解压 本书开创性地深入揭示了重构与模式这两种软件开发关键技术之间的联系,说明了通过重构实现模式改善既有的设计,往往优于在新的设计早期使用模式。本书不仅展示了一种应用模式和重构的...

    重构与模式(Refactoring to patterns).part12.rar

    一共12个包,全下载解压,这是最后一个包 本书开创性地深入揭示了重构与模式这两种软件开发关键技术之间的联系,说明了通过重构实现模式改善既有的设计,往往优于在新的设计早期使用模式。本书不仅展示了一种应用...

    项目管理修炼之道

    书中内容涉及软件项目管理的整个流程:项目启动、项目章程、项目计划、项目日程安排、项目估算、明确的角色和职责、明确的开发流程、恰到好处的度量标准、发布条件、参与 beta测试的客户 ……所有成功项目管理的...

Global site tag (gtag.js) - Google Analytics