《信息系统分析与设计》10 - 系统总体设计软件架构的设计什么是软件架构架构的概念:建筑、文学、音乐、机械、电子、计算机软硬件等领域都会使用“架构(architecture)”这一概念。架构都提供了系统最高层的设计方案,以确保建筑、小说、乐曲、设备、计算机等系统满足期望的特性。架构包含系统的一组基本结构(structure),每种结构都有各种类型的部件(component)及其关系构成,架构描述了这些部件的组合、相互调用参照、通信以及其他动态交互。架构和结构的关系:架构是抽象无形的,体现高层全局的决策,就像文章的中心思想和提纲。结构是具体有形的,体现决策的贯彻,如同文章的每个段落及细节描述。1、软件架构软件架构(software architecture)的定义没有统一的版本;一般认为:一个应用程序或计算系统的软件架构是一个或一组结构,它包含组成系统的软件元素、这些元素对外可见的性质以及它们之间的关系。对外 可见的性质 指软件元素能够提供的服务、性能特征、错误处理、共享资源的用法等。软件的一个结构元素可能是一个子系统、构件、进程、库、数据库、计算结点、遗留系统等等。软件架构是 最高层次
《信息系统分析与设计》- 系统设计概述1 系统设计的任务要求通俗地说,设计就是要回答“怎么做”,即明确系统功能,根据实际的技术条件、经济条件和社会条件,确定系统的实施方案,即系统的物理模型。一个逻辑模型,可以提出多个物理模型根据物理模型进行实施,得到最终的物理系统系统设计的目标设计系统之前,先看看评价信息系统的标准,这些标准对任何设计方法都适用:信息系统的功能:是否满足用户的需求系统的效率:响应时间、操作的方便性系统的可靠性:抗干扰能力、故障恢复系统的工作质量:准确性、使用效果系统的可变更性:修改和维护的难易程度系统的经济性:系统收益与支出比与需求相同,设计的重点也在于软件,因为相对软件,硬件方案的复杂度和多样性较小。信息系统的可变更性变化是不变的真理。统计表示:在信息系统的整个生命周期中,系统维护成本占总成本的80%左右。因此,可变更性是衡量信息系统设计的重要指标。良好的结构设计结构简单系统各组成元素分工明确,易于理解元素之间的关系清晰简洁变动灵活谨防软件维护中的“水波效应”(一石激起千层浪)使系统各组成元素内部的改变容易实现,改动对其它部分的影响尽量减少提前考虑将来最易出现的扩展和
《信息系统分析与设计》-领域对象建模1 面向对象方法概述从面向对象的角度来看,世界就是由对象组成的。任何给定的商业功能都是由一整套共同工作的对象互相协作来完成的。对象不仅可以执行功能,还拥有属性(数据)。计算机世界更好地映射现实世界。对象:对象是行动或思考时作为目标的人或事物广义的讲对象可以是任何人或事物。面向对象方法的发展面向对象编程(OOP)——> 面向对象设计(OOD) ——> 面向对象分析(OOA)面向对象方法的优势(1) 对问题空间的理解更直接,更符合人类思维方式(2) 系统分析和系统设计使用同一模型,各阶段过渡平滑(3) 开发出的信息系统本质上生命力强(4) 易于扩充和维护(5) 与数据模型一致2 识别领域对象用例建模解决了业务管理功能到信息系统功能的映射;领域对象建模解决业务管理对象到信息系统逻辑结构(软件结构模型和数据库结构模型)的映射;对象建模采用的是面向对象分析技术,有关模型包括:类图(class diagram):对象及其关系,用于描述系统静态结构;状态图(statechart diagram):对象的状态及转换,用于描述基于事件响应的对象动态行为和
《信息系统分析与设计》-用例建模1 基于用例的需求分析用例分析是站在最终用户的角度看待系统及其特性,模型简单直接,一经提出便受到软件开发人员的青睐。用例总是和面向对象方法放在一起讨论,并且在面向对象标准建模语言UML中用例也具有中心地位。但严格意义上讲,用例并不是一个面向对象方法论的产物,不包含面向对象思想,只是因为用例概念最初是和面向对象方法一同提出并得到广泛接受而已。需求分析基本步骤1.从系统涉众获取候选需求2.结合系统业务背景理解候选需求3.捕获信息系统功能性需求(用例模型)4.捕获与功能需求相关的非功能性需求或其他技术性要求用例的概念用例创始人雅各布森(Ivar Jacobson)认为:用例(use case)是对于一组动作序列的描述,系统执行这些动作会对特定的参与者(actor)产生可观测的、有价值的结果。阿里斯代尔·科克伯恩(Alistair Cockburn)认为:用例(use case)是各种系统受益人之间的一种行为契约。行为包括对象的活动、动作和对象之间的交互等。每一个用例实际上都代表了一个用户目标,根据三个目标层次(概要层、用户目标层、子功能层)将用例进行分层,从而
结构化系统分析(流程建模)1.业务流程分析与建模著名管理大师迈克·哈默在其《企业行动纲领》一书中提出“业务流程至上”,利用信息化技术提升企业管理的水平,首要的着眼点是流程!业务流程是企业核心竞争力,信息技术是核心竞争力的加速器系统规划阶段需要进行业务流程分析,强调企业整体业务过程及其优化系统分析阶段需要进行业务流程分析,更关注具体流程的执行细节业务流程分析业务流程就是为达成业务目标而设定的一系列标准化的步骤,可以体现出一件工作“先做什么,后做什么,由谁来做”的关系。企业过程(business process),过程是指一系列逻辑相关并且达到某个预定产出的任务。关注进程、工序、工艺、制作法,强调对全程、全面、粗略的过程描述。业务流(transaction flow,也称事务流),企业过程落实到操作层面的具体详细的活动和步骤。关注管理程序、手续、步骤,如学生入学注册流程、产品出库流程。业务流程图的画法业务流程图示应有以下基本表达能力:1. 业务流程包含多个业务功能(活动)2.业务功能可能由不同部门负责3.活动有次序4.活动执行过程含有控制逻辑((如分支、并发、同步汇合等)绘制业务流程图的注
Gonwe
心同流水净,身与白云轻