系统设计

总述:系统设计部分是面向具体的业务流程和业务功能的。这里都是系统设计的基本科普,系统设计的重点永远都是怎么去做实际操作可以降低成本,提高系统设计的效果。

 

1、系统设计

答:系统设计是系统分析的延伸和拓展,解决怎么做的问题,是系统实施的基础。系统设计阶段也称为物理设计阶段,主要内容包括概要设计和详细设计。概要设计又称为系统总体结构设计,主要任务是将系统的功能需求分配给软件模块,确定每个模块的功能和调用关系,形成软件模块结构图,即系统结构图。在概要设计中,将系统开发总任务分解为多个基本的、具体的任务,为每个任务选择是适当的技术和处理方法的过程就是详细设计。根据任务不同,详细设计分为网络设计、代码设计、输入输出设计、处理流程设计、数据存储设计、用户界面设计、安全性和可靠性设计等。

 

2、处理流程设计

答:流程是一组将输入转化为输出的相互关联或相互作用的活动。流程包含六个基本要素:输入资源、活动、活动的相互作用、输出结果、用户、价值。工作流是一类能够完全或部分自动执行的业务过程,根据一系列过程规则、文档、信息或任务,在不同的执行者之间传递和执行。活动是流程定义中的一个基本要素,一次活动可以改变流程处理数据的内容、流程的状态,并可能将流程推动到其他活动中去。工作项代表流程实例中活动的参与者将要执行的工作。

工作流管理系统的基本功能体现在对工作流进行建模、工作流执行、业务过程的管理和分析方面。工作流参考模型包含工作流执行服务、工作流引擎、流程定义工具、客户端应用、调用应用、管理监控工具这六个基本模块。工作流执行服务是工作流管理系统的核心模块,包括创建和管理流程定义,创建、管理、执行流程实例。工作流引擎为流程实例执行提供运行环境,并解释执行流程实例的软件模块。流程定义工具是管理流程定义的工具,可以通过图形方式把复杂流程定义显示出来加以操作,一般来说,该模块为设计人员提供图形化用户界面。管理监控工具主要指组织机构和参与者等数据的维护管理和流程执行情况的监控,管理监控工具与工作流执行服务交互。

常用的流程设计工具有程序流程图、IPO图、N-S图、问题分析图、过程设计语言、判定表、判定树。

 

3、结构化设计

答:结构化设计(SD)是一种面向数据流的方法,以SRS和SA阶段的数据流图和数据字典等文档为基础,是一个自顶向下、逐步求精和模块化的过程。

模块结构在设计过程中需要考虑:信息隐蔽和抽象问题、模块化的大小复用深宽问题、耦合性问题、内聚问题、模块类型问题。系统结构图(SC)又称为模块结构图,是软件概要设计阶段的工具,反映系统功能实现和模块之间的联系与通信,包括模块之间的层次结构。SC包括模块、模块之间的调用关系、模块之间的通信、辅助控制符号等四个部分。具有变换流型的SC可以明显的分为输入、变换、输出三大部分。事务流明显有事务中心,以事务中心为起点,呈辐射状流出。事务型系统一般由事务层、操作层、细节层组成。混合型SC是变换型和事务型的混合结构。

 

4、面向对象设计

答:OOD是OOA的延续,其基本思想包括抽象、封装、扩展性,扩展性主要通过继承和多态来实现。在系统设计过程中,类可以分为实体类、边界类、控制类三种类型。实体类映射需求中每个实体,保存需要存储在永久存储体中的信息。控制类是用于控制用例工作的类。边界类是封装在用例内、外流动的信息或数据流。ORM在实际环境中,常见的实例用CMP、Hibernate、iBatis、JDO。

在OOD中,可维护性的复用是以设计原则为基础的。常见的额OOD原则包括:开闭原则、里氏替换原则、依赖倒置原则、组合/聚合复用原则、接口隔离原则、最少知识原则。软件模式包括设计模式、架构模式、分析模式、过程模式等,软件生存期的各个阶段都存在着被认同的模式。设计模式包括模式名称、问题、目的、解决方案、效果、实例代码、相关设计模式等基本要素,其中关键要素是模式名称、问题、解决方案、效果。根据目的和用途不同,设计模式分为创建型、结构型、行为型。创建型模式对类实例化过程进行了抽象,能够使软件模块做到对象的创建和组织无关,隐藏对象是如何被创建和组合在一起的,以达到整个系统独立的目的。创建型模式有工厂方法模式、抽象工厂模式、原型模式、单例模式、建造者模式等。结构型模式描述如何将类或对象结合在一起形成更大的结构。结构型模式描述了类、对象两种结构型模式,包括适配器模式、桥接模式、组合模式、装饰模式、外观模式、享元模式、代理模式等。行为型模式在不同对象间划分责任和算法进行抽象化,不仅仅是关于类的,是关于它们之间相互作用的。行为模式分为类行为模式和对象行为模式两种,类行为模式使用继承关系在类之间分配行为,对象行为模式使用对象的聚合来分配行为。行为型模式包括职责链模式、命令模式、解释器模式、迭代器模式、中介者模式、备忘录模式、观察者模式、状态模式、策略模式、模板方法模式、访问者模式等。

你可能感兴趣的:(系统分析师)