面向组件的系统开发方法
应用软件的开发所面临的最大问题是变化的需求,这种变化可能来自下面几个方面:
用户对系统本身认识的变化。用户对系统本身的认识在系统设计初期和系统接近完成时期是完全不同的, 在系统规划初期,用户对系统只能提出大概的想象,这种想象在系统实际的开发过程中会不断的完整和深化。 实际应用环境的变化。在大型项目开发中表现得犹为明显,由于大型项目开发的时间较长,所涉及的子系统 和外界因素较多,在开发过程中实际的应用环境会有大量的更改,甚至可能根本不复存在。 开发技术和开发机构本身的变化。由于技术的发展和开发机构本身的调整可能会导致开发工具和开发方案的 修改。 对系统的扩展。在系统投入运行后,可能会有新的要求被提出,新的数据被处理。 不考虑那种导致系统重新规划和设计的需求更改,在那种情况下,唯一能做的就是完全开发新的系统。在基 于同样的设计框架的基础上,这种更改可以划分为下面的层次:
界面的变化:主要分为两个层次,首先是指界面的观感的变化,指界面的颜色、布局、字体等视觉效果。 其次,是指界面逻辑的变化,例如,操作的步骤,选择的顺序、界面元素的表示方式、界面隐喻等。
数据的变化:例如,增加新的数据项目、增加新的统计内容、将已有的处理逻辑扩展到新的数据对象上等。
处理的变化:例如,增加新的处理逻辑,更改业务逻辑的部分内容。
在变化的需求和变化的技术本身这个环境下,必须采用相对独立于需求,独立于软件的应用环境的开发方 法和模型。由于需求和数据的可变性,我们的焦点应该在系统的业务逻辑上,而对于特定业务领域,业务逻 辑应该是相对较为固定的。例如,对于机场信息管理系统,基本的业务类型应该包括:
基本信息的定义、录入、和修改 固定计划的生成 动态信息的获取和检索 资源使用的监视 资源的分配和回收 采用面向组件的开发方法,我们将应用软件的开发看成组件的开发和组件的组合,对应于应用的不同层次, 我们的组件层可以分为:
业务逻辑层:对应于非可视组件,独立于具体的数据源,抽象出基本的数据处理的逻辑,包括
数据获取和处理(从任意的数据库中取出需要的数据,并进行处理) 网络通讯(独立于位置的网络通讯) 系统功能和实现。 在该层次中,可以有不同的组件相互作用,协作完成任务。
界面模型层:对应于可视组件
按照习惯的界面模型,收集和制作与用户的操作习惯相一致的界面基本元素,如计划列表、资源查看列表等。
[文章录入员:fightter] |