"约束驱动的软件分析&设计新技术"开篇
来源:互联网 发布:apache jmeter 3.0 编辑:程序博客网 时间:2024/06/05 19:39
基于“约束驱动的进化理论”的“约束驱动的软件分析&设计新技术”消除了软件分析、设计、开发中的任意性、神秘性、不确定性和经验性,而重新赋予软件分析、设计、开发过程必然性、内在逻辑推演性、确定性、可控性。
软件开发过程的每一步都是约束驱动的,输入+约束=输出。
对于软件系统而言,输入是用户需求,输出是可执行代码。不同层次的开发人员因为有不同的约束,导致最后开发出来的软件系统的质量不同。但是最基本的输出就是可执行,并能实现目前的功能。
开发人员的进化过程就是不断的提高约束等级、加码的过程,这个过程可能是经验的、可能是有意识的、可能是客观必须的。
开发人员针对约束的认识不同、对约束的解决方案的不同,而产生不同层次的开发人员,如架构师、分析员、设计师、高级程序员、程序员...
“约束驱动的软件分析&设计新技术”将提炼出软件分析和设计中的内在驱动力,即约束,并消除软件开发过程中的任意性和不确定性。
软件开发过程中表面的任意性和不确定性来自于施加于软件系统的约束各不相同。而由于编译器对约束的低要求,导致五花八门的软件实现出现。
约束的多少决定软件系统的品质,而编译器只负责可执行,不负责品质。
有聊胜于无,但有不等于好,现在好不等于将来好。
浅显点说,吃饱不等于吃好,吃好不等于吃健康。而编译器只检查是否吃饱。
最低层次的程序员还处于“有聊胜于无”的初级阶段。
另外,一个程序员如何可以晋级为高级程序员、甚至设计师、系统分析员、架构设计师?不同角色之间的内在区别和联系是什么?有没有捷径或者可控的路径来持续进阶?可能大多数都是个糊涂账。“约束驱动的软件分析&设计新技术”会明白的告诉你,不同角色的区别在于各自对软件系统施加的约束不同。当然,这也不排除知识积累、技术积累的局限,对于某种约束的解决方案也有高下之分。
举个例子,为什么有些系统划分为2层、有些是3层、有些确实4层、5层、6层...?很多人并不了解各种分层适用的约束,而仅仅生搬硬套,盲目应用。
- "约束驱动的软件分析&设计新技术"开篇
- 开篇:数据驱动UI的设计理念
- 设计模式-开篇:软件的可维护性和可复用性
- 问题驱动的软件测试设计 - 解决方案
- 问题驱动的软件测试设计_20140517
- 《软件架构设计》学习笔记--0--开篇
- Xilinx FPGA的约束设计和时序分析总结 (转)
- Xilinx FPGA的约束设计和时序分析总结
- 提升你设计水平的CSS3新技术
- 提升你设计水平的CSS3新技术
- 提高软件质量的设计 职责驱动设计 (转载)
- AMOS软件介绍开篇;草堂君给数据分析学习者的几点建议
- 一个电子商务软件的分析设计
- 软件工作者的伦理道德约束
- 互联网周刊:新技术驱动下的市场渠道创新
- 软件新技术讲座
- 用领域驱动设计来评估商业现成的软件
- 结合领域驱动设计的SOA分布式软件架
- 为什么要进行vs.net和模型的双向同步?
- C/S界面规范
- C#常用函数和方法集汇总
- java编写过程中安全问题解决指南
- 北京大学使用trufun plato进行UML教学?
- "约束驱动的软件分析&设计新技术"开篇
- java API概述
- 正则表达式(regular expression)
- activate_task()
- ASP.NET 2.0加密Web.config 配置文件
- 新奇士脐橙和中国橙
- sqlserver JDBC连接要注意的问题
- 解决了.Net 2003“试图调试项目时发生错误”的问题
- 社区英雄榜:谁是最有价值的技术博客?