版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、第一章 信息(数据)是信息系统的核心,是信息系统处理和管理的对象,信息的特征和处理方法 直接影响到信息系统的类型与形式,了解信息的有关知识有助于信息系统的分析与设计。数据 数据是用各种可以鉴别的物理符号记录下来的客观事实; 数据是原始记载,是未经任何加工的,因而是粗糙的、杂乱的,但它真实、 可靠、有积累的价值。信息 信息是具有一定含义的数据,是加工(处理)后的数据,是对决策有价值的 数据数据与信息的关系数据和信息的特点 数据在计算机化的信息系统中往往和计算机系统有关。 信息不随载荷它的物理载体而改变;数据与信息密切相关 信息是加工后的数据,比数据更有价值; 数据则是信息的具体表现; 在一定的环
2、境内可以互相代用系统的特征:输入输出界面关系部件界面环境系统的层次系统层次的概念 一个系统可以划分成不同的层次,或不同的子系统系统层次的划分根据抽象的粒度不同 (详细程度不同) 根据功能的不同信息系统的定义信息系统是一组相关联的要素(Elements)或部件(Components ),其收集(输入)操作和储存(处理) 、散布(输出)数据和信息,并具备 反馈机制 。 信息系统的基本功能信息的收集信息的存储信息的传输信息的加工信息的输出信息系统的方法分解( Decomposition )将系统分成更小的要素(子系统、组件或模块) ;“分而治之 ”,将系统分割成小的、可管理的、便于理解的子系统 便于
3、一次仅关注一个范围,而不干涉其它的范围; 关注一组用户相相关的部件,而不必用不必要的细节去困惑用户 在不同的时间段实现不同的部件,使项目便于管理模块化( Modularity )将一个系统划分成相对一致大小的过程;系统分解的结果模块简化了系统设计耦合( Coupling )低子系统之间的相互依赖性内聚( Cohesion )高子系统完成单独功能的程度集成( Integration )允许不同厂商的软件和硬件一起工作; 使过程语言系统同可视化编程系统一起工作 可视化的变成环境使用客户 / 服务器模型 信息系统发展: TPS->MIS->DSS 三个典型的信息系统: TPS、 MIS、
4、 DSS 事务处理系统( Transaction Processing System ,TPS) 功能或特点自动处理商业活动或交易的数据目标通过增加速度、提高生产力,简化过程来改进事务处理发展从 EDP 到 OLTP面向的用户操作或办事人员典型的例子销售与市场系统、生产与制造系统、财务/ 会计系统、人力资源系统、学校的注册系统管理信息系统( Management Information System ,MIS )功能或特点利用来自TPS系统的未加工的数据,将其转换成有意义的聚合形式目标提供有助于工作管理的信息特点输入大量的数据进行定期的报表和简单模式的处理产生管理的报表:计划报表、查询报表、异
5、常报表、汇总报表面向的用户中层管理人员决策支持系统( Decision Support System ,DSS)功能或特点通过应用数学或逻辑模型, 应用交互的对话来解决非结构化问题, 交互地支 持决策的制定。亦称为 “What if 分”析目标提供不同方案的 比较和首选方案的推荐特点输入少量的数据交互式的模拟与分析产生决策分析报告面向的用户高层管理人员或专业分析人员信息系统与组织基本目标 改进信息和知识管理;改进业务过程;改进组织内部和组织之间的通信。基本任务 将适当的信息,在适当的时间、适当的地点,以 适当的形式,传递给 适当的 人员。基本作用信息系统是企业或组织信息化战略的一个具体的、重要
6、的组成部分。 信息系统是现代商业组织获得成功的关键。现代商业组织需要不断地开发或更新系统来使商业更具有竞争力。比尔 . 盖茨 : “Business the speed of thought-using a digital nervous system ” 第二章 系统分析与设计基础系统建设生命周期(System Development Life Cycle , SDLC观念的讨论两段论 系统开发,系统运行(使用,修改)四段论 系统计划与选择,系统分析,系统设计,系统实施与运行五段论 规划、分析、设计、实施,运行与维护六段论 计划,需求分析,设计, 编码,测试,(编码,测试对应五段论中的实施阶
7、段) 运行与维护三种基本过程模型 -瀑布模型瀑布模型(Waterfall model , Royce,1970)的特点将系统开发分成分离的、 不同的阶段, 一个阶段完成后, 才进入到下一个阶 段。瀑布模型的阶段 项目计划、需求分析与定义、系统和软件设计、实施和测试、运行与维护。瀑布模型的问题 过程开始后适应环境的变化困难,并且将项目不灵活地划分成不同的阶段, 因而对用户需求的变化很难响应。瀑布模型的用途适用于对需求充分理解的系统、 用户交互程度低的计算系统、 或者关键系统 的开发。进化开发( Evolutionary development )的特点将系统开发活动的分析、设计与实施交叉进行。进
8、化开发的两种形式探索性开发: 目标是同用户一起工作,从最初的雏形发展成最终的系统。 在一开始对需求有很好地理解的情况下使用。一次性原型: 目标是理解系统的需求。 在一开始对需求不能很好地理解的情 况下使用。进化开发的问题 过程可见性缺乏;开发的系统通常结构较差;需要专门的技巧进化开发的用途 中小规模的交互系统的开发;大型系统中的部分(如用户界面)的开发;较 短生命周期系统的开发。面向重用开发( Reuse-oriented development )的特点 基于系统化重用,系统由已有的组件或商品软件系统 (Commercial-off-the-shelf , COTS) 集成而建立。面向重用开
9、发的阶段 组件分析、需求调整、基于重用的系统设计、开发和集成面向重用开发的优点 顾客价值能随着每部分工作的完成而交付,所以系统的功能较早能获得。 降低整个系统失败的风险 早先的完成的部分能作为原型来帮助后面部分获取需求 最高优先级的系统服务倾向于获得最多的测试面向重用开发的用途 虽然经验有限,但成为应用越来越重广泛的方法过程迭代的含义 过程迭代是重复地多次的进行相同的开发活动,即重复先前阶段的工作,有 时是增加详细程度,有时是增加精度。可以同基本过程中的任何一个过程结 合使用。早期的迭代着重于需求、分析和设计;后期的迭代着重于实现和测试。 过程迭代的应用增量开发方法( Incremental
10、development , Mills, 1980 ) 螺旋开发方法( Spiral development , Boehm, 1988 ) 增量开发的特征系统不是一次总体交付,而是将系统开发和交付分割成若干个部分,每一个 部分交付要求功能的一部分,系统被逐渐地开发、测试和集成。 用户需求被优化,最高优先等级的需求被包括在较早实施的部分中。 一旦一个部分的工作开始, 需求被冻结, 虽然后续部分的需求可以继续发展。 增量开发的优点顾客价值能随着每部分工作的完成而交付,所以系统的功能较早能获得。 早先的完成的部分能作为原型来帮助后面部分获取需求 降低整个系统失败的风险最高优先级的系统服务倾向于获得
11、最多的测试螺旋开发的特征 开发过程不是一系列重复的部分,而是通过若干阶段的增长、改进和精练而 完成,其是一个螺旋过程。螺旋中的每个循环代表了过程中的一个阶段 在螺旋中的循环根据需要来选择,因此没有诸如需求定义或设计的固定阶 段。螺旋开发的优点开发工作是呈螺旋式上升,而不是简单地重复 在开发过程中,风险被明确地评价并解决螺旋的组成部分 目标制订:为每个确定的阶段定义目标 风险评价和减少:风险被评价,减少关键风险的活动被执行 开发和确认:选择任一个基本过程模型作为系统开发的过程模型 规划:项目被评论,螺旋的下一个阶段被规划典型的开发过程方法生命周期法原型法快速法面向对象法CASE法其它过程方法 生
12、命周期法( SDLCMethod ) 生命周期法是一种 基于过程瀑布模型 的系统开发方法, 也被称为 结构化生命 周期法,或瀑布周期法。其是应用结构化技术, 根据系统发展生命周期, 将系统开发 明确 划分为规划、 分析、设计、实施和维护五个阶段。 ( 不重复,一个阶段完成才能进行下 一个阶段)生命周期法的 优点 采用生命周期的瀑布形式,预先定义需求的策略。 能对系统进行科学的分析与设计, 因而能全面地规划, 等到优化的整体设计, 实现整个设计过程科学化和系统化; 整个项目按阶段和步骤可以划分为许多组成部分, 各部分可各自独立地开展 工作,有利于整个项目的管理与控制。生命周期法的 缺点 开发周期
13、过长,见效慢,难以适应环境的急剧变化; 从分析阶段的模型向设计阶段模型转换较困难,需要熟练的技巧; 由于在开始时不可能得到全部的、 严格的需求分析, 为以后的修改带来困难。生命周期法的应用 特别适合于开发那些能够预先定义需求、 结构化程度又比较高的大型事务型 系统(TPS、管理信息系统(MIS)。 适应与用户交互活动少的大型计算系统 适应工业系统和大型的关键系统。 不适合于开发信息需求不明确的系统,外界环境变化大的系统原型法( Prototype Method 、 原型法依据过程进化模型中 的探索性开发 ,并结合了增量式迭代。 其应用直观认识问题的方法和先进的计算机技术, 一开始便凭借系统开发
14、人 员对用户需求的理解, 在强有力的软件开发环境的支持下, 用试验的办法建 立起一个简单的系统原型, 然后利用该原型同用户反复协商修改和完善, 最 终形成实际系统。原型法的 工作过程 用户提出系统要求,开发人员对用户的功能和性能需求进行分析和确定; 在此基础上开发出一个仅仅包括最重要的系统功能、 使用一个最基本数据库 的、可工作的原型系统; 让用户使用这个原型系统,研究用户对它的评价和提出的更改要求; 如果原型系统根本不行, 则重头构造系统原型, 如果不满意, 则根据用户意 见对原型进行改进和完善,直到系统完全满足用户的需求为止。原型法的优点 原型法将模拟的手段引入系统分析的开始, 沟通了人们
15、的思想, 缩短了用户 和系统开发人员之间的距离,解决了系统开发中难度最大的需求定义问题 。 原型系统能 启发人们对原来想不到或不易准确描述的问题有一个比较确切 的描述, 能及早地暴露出系统实现后可能出现的一些问题,使得问题能及早得到解决。原型法的缺点 用户对于一个大型系统, 如果不经过系统分析来进行整体性划分, 直接用原 型来模拟,容易造成系统结构混乱,并且实现也非常困难。对于需要大量计算、 逻辑性较强的系统, 原型法很难构造出模型来进行评价。 对于原基础管理不善、 信息处理过程混乱的问题, 使用原型法更有一定的困 难。对于批处理系统,由于其大部分是内部处理过程,不适宜采用原型法。面向对象法(
16、 Oriented Objects Method , OOM) 面向对象的系统分析设计法 OOSAD 面向对象方法是基于面向对象技术来进行系统开发。面向对象法的工作内容系统调查和分析: 对系统需要解决的具体管理问题以及用户对系统性能的需 求进行调查研究,解决系统 “做什么 ”的问题。分析问题的性质和求解问题: 在繁杂的问题域中抽象地识别出对象以及其行 为、结构、属性和方法等。整理问题:对分析结果作进一步的抽象、归纳、整理,并最终以模型的形式 将它们确定下来。面向对象法的特点以对象为基础, 利用特定的软件模块, 完成从对象客体的描述到软件结构之 间的转换避免了其它方法在开发过程中的不一致性和复杂
17、性 系统的开发具有简单性、统一性开发周期短,费用低计算机辅助软件工程( Computer Aided Software Engineering , CASE) 基于计算机的自动化的方法,它利用CASE工具来进行系统的开发,是提高系统开发效率与质量的一种实用的系统开发方法。CASE法的优点使结构化方法可以全面实施; 使面向对象方法更容易实现; 使原型的建立具 有高效率的手段,加快系统的开发过程; 使系统开发人员的精力集中于开创性工作;通过自动检查提高软件的质量, 提高软件的可重用度;可以简化系统的维护工作。通过提供一个具有快速响应、专用资源和早期查错功能的交互式开发环境, 对系统的开发和维护过程
18、中的各个环节实现自动化, 利用图形接口, 实现直 观的程序设计。CASE的功能-1基于中心信息库: 存储和组织所有与应用系统有关信息的一种机构, 包括系 统的规划、分析、设计、实现和管理等信息。如:结构化图形、 OO 模型、 屏幕与菜单的定义、报告的模式、记录说明、处理逻辑、数据模型、组织模 型、处理模型、源代码、事务规则、项目管理形式、数据元素以及系统信息 模型之间的关系等。 中心信息库具有对系统信息存储、 更新、 分析和报告的 功能,系统开发人员可以直接从中获取所需的信息图形功能: 图形为软件的描述提供了一种简明的方法, 是产生好的系统和程 序文档的基础。用交互式方式在计算机屏幕上绘图,可
19、加快图形绘制过程, 实现标准化和文档自动生成等。查错功能:CASE提供了自动检查的功能,其思想是以即系统说明书为依据 进行检测,达到系统的一致性和完整性。CASE的功能-2代码自动生成:CASE通过程序设计规格说明生成代码,实现编程阶段的自 动化。这种自动生成可能是一个框架, 也可能是一个完整的程序。 其框架可 以是数据库、 文件、屏幕和报表描述的代码; 其完整程序可以是可执行代码, 需要访问的数据库文件、 屏幕求助信息、 出错信息及程序文档等。 这样可以 提高系统开发的效率。结构化方法工具:CASE提供的若干工具,有利于结构化分析和结构化程序 设计,从而使结构化方法实现自动化。CASE工具为
20、画数据流图、ER图(实体联系图) 等提供了图形支持, 可自动生成诸如系统说明和伪码等形式的规 格说明。同时,CASE指导用户正确地使用结构化方法,使用户按照一定的 标准化程序进行系统分析与设计。极限编程( Extreme programming , XP, Boehm, 1988 ) 极限编程是快速法在软件开发中的例子, 其采用了持续代码改进、 用户参与 开发团队、以及 配对编程( pairwise programming )等方法来进行增量开发 。Rational 统一开发过程( Rational Unified Process , RUP)是R ational提出的一种基于反复和增量的面向
21、对象开发方法。 是软件开发最佳经验(迭代化开发、需求管理、基于构件的软件架构、可视 化建模、持续的质量保证、配置管理)的一个总结,其用流程来加以表示和 使用这些经验。是经过实践检验的、实用的、灵活的、基于 Web 的流程框架和定义流程工 具平台。RUP的特点迭代化思想活动和工件的向导以基本架构为中心用例驱动对系统进行抽象和建模«4>9Et»工作百商业建粮一幻芮用也讨一实现嘲溢辭皤-伺CM祖3隹M 理 项目首理环境送代系统分析与设计技术-结构化技术、面向对象技术、信息工程结构化分析与设计(SAD)系统开发使用结构化编程、结构化设计和结构化分析技术,应用过程建模, 使用数
22、据流程图(Data Flow Diagrams,DFD),是模型驱动的技术方法。技术的组成结构化编程技术结构化设计技术结构化分析技术实施过程分析-设计-编程方法的缺点将数据与过程分开,不能很好地反映实际需求,如定单的内容与处理基于瀑布式的SDLC不易适应变化分析和设计脱节,分析阶段的图表和表示不容易映射到设计结构结构化编程技术技术产生(1960s)提供改善计算机程序质量的指南。技术思想一个高质量的程序不仅要在程序每次运行时产生正确的结果,而且要容许其他的程序员在以后能容易地读懂和修改该程序主要概念结构化程序:一个程序或程序模块, 其有起点和终点,并且程序执行的任何 一步都是由三个基本的编程结构
23、(顺序结构、判断结构、循环结构)之一组 成。自上而下编程(模块化编程):将一个复杂的程序分解成有层次的程序模块, 顶层模块按需要调用下层模块来控制程序的执行,模块可以是同一程序的一部分,模块也可以不同的程序。结构化设计技术技术产生(1970s)提供一些指南来确定程序集应该如何组织、每个程序应该如何完成、以及程序应该如何组织成层次结构。表示方法 结构图 模块和模块的组织层次用一个称为模块结构图(structure chart) 的模型来图形地表示。主要原理松散耦合: 每个模块尽可能地相互独立, 以便各个模块能方便设计, 并且能 够在以后的修改时对其它模块的执行没有影响。高度内聚: 每个模块的完成
24、明确地作业, 以便模块的功能易于理解, 并且当 模块需要改变时,不至于意外地影响其它的作业。评价的方法 定义不同程度的藕荷和内聚,并且提供一个评价设计质量的途径 -质量由设 计的理解和以后需要时修改的难易程度衡量。设计的要求 假设设计者掌握系统需要做什么, 而不仅仅是组织程序模块。 例如: 主系统 的功能是什么?数据要求是什么?需要输出的内容是什么?设计的新内容1980s 起,包括数据库的设计 用户界面的设计结构化分析技术技术产生( 1980s) 解决前面设计中对设计者要求掌握系统应该做什么的问题。 更详细地定义系 统必须做什么,而不涉及具体地技术。结构化分析用于帮助开发人员定义系统需要做什么
25、(处理的要求) ,系统需 要储存和使用什么数据(数据的要求) ,什么输入和输出需要,以及这些功 能如何一同工作来完成任务。表示方法 数据流程图 在结构化分析中使用的表示系统需求的关键图形化模型是数据流程图, 其显 示了输入、处理过程、存储和输出,以及它们如何一起工作。具体步骤 通过确定所有能够引起系统以某种方式反应的事件来定义系统处理需求。 每 一个事件导致不同的系统活动。 分析员根据这些活动产生一个数据流程图来 表示包括输入和输出的处理细节。面向对象系统分析与设计(OOSAD)(提高了重用性,扩展性,维护性) 是基于对象表示的分析与设计方法, 对象将数据和过程封状在一个统一的结 构中。技术构
26、成面向对象分析: 定义在系统中工作的所有类型的对象, 并说明这些对象是如 何相互作用来完成工作的。面向对象设计: 定义在系统需要同人和设备通讯的所有另外类型的对象。 并 将每一类型的对象的定义细化。面向对象编程:利用一种编程语言编写语句来定义每类对象具体做什么。 技术特点基于对象建模 利用统一建模语言( Use of Unified Modeling Language , UML) 表示(如类 图)。 系统由对象组成, 对象与环境、 对象之间相互作用来实现系统的功能 (如例 图)系统架构的层次划分 (基本三层,表现层,应用逻辑层,数据处理层) 表现层:是实际的用户界面 -对用户输入和输出的表现
27、; 表现逻辑层:是未了生成表现而必须进行的处理; 应用逻辑层:包括支持实际业务应用和规则所需的所有逻辑和处理 数据处理层: 包括用来存储和访问来往于数据库的数据所需的所有命令和逻 辑;数据层:是数据库中实际存储的数据。数据流程图( Data-Flow Diagram , DFD) 图形地表示数据在外部实体、过程和系统内的数据存储之间的运动; 表示了系统的动态属性。数据流程图的构成 (图素 )过程( Process): 用带园角的矩形表示,过程的编号和名称被标出。数据存储( Data Store ): 用右边缺一边的长方形表示,标签包括存储的名称和编号。数据流( Data Flow ): 用箭头
28、表示,选择有意义的名称来表示数据。外部实体( External Entity ) 用正方形表示,名称表示外部的实体。题型:一 判断 10*1 '(程序,概念)不用改错二 选择 20*1 '三 简答 5*6 '四 案例应用 2*12 '(类图,活动图模型 ,填类名称,类之间关系)五 绘图题(用例场景描述,序列图) ( 16')参与者,对象,实体 消息传 递UML 这块是重点,大家一定要好好看看。最好可以实际练习一下。Figure 5.2 Gane and Sarson identified four symbols to use in data flow
29、diagrams to represent the flow of data: data flow symbol, data store symbol, process symbol, and source/sink symbol.DataFlowlData FlowDataStorelData StoreProcesslProcessInterfacel Source/Sink外酣加 劃据流和过程来自事彬愫中关于事件的信息事件源触发活动分析模型(UML)用例图: 描述系统与其它外部系统以及用户之间交互的图形。用例图描述 了谁将使用系统,用户希望用什么方式与系统交互。用例场景(用例描述):是业
30、务事件以及用户如何冋系统交互以完成任务的 文字描述。类图:描述系统的静态组成交互图:描述系统对象之间的交互活动(序列图和协作图(也叫通讯图)状态图:描述对象内部的活动E-R 图:(下图中关系的表示有的也为:"> )类图:(三层,类名,属性,方法)类图与E-R图区别在类图有方法。类与类关联间注意基数表示(一对多,多对多)<<PK>>用于主键Figure 12.8 Design Ckiis PiuJuclProduct (from Inventory)«PK» -prodId : Integer-prodName : String-pro
31、dDesc: String-prodListPrice : Currency-quantOnHand : Integer-minQuant: Intege=0-reorderQuant: Integer+getProductlnfo(v_Prodld : Integer): String +updateinventory(v QuantOnHand : Integer)注意三种类图画法1分析类的原型 同步条是活动图特有的,注意判断点的用法实体类;订单边界类:订单表单控制类;订单控制OiderformOrdrGontrol豔慕者和用例之同用例内部工作相关 的主要操作行为一般,参与者同边界类交互,
32、 边界类依次同控制类交互, 控制类再同实体类交互。序列图画法(类用上图图示)Figure 9*7OiULruirn of ilia Umi UuhQ PltLec OriJi&4-UML 的视图视图是从不同的角度来观察待建模的系统,其是由多个图表组成的抽象体; 视图同建模语言保持联系,为系统选择开发方法或过程;UML 有 5 个层面用例视图( Use-Case View)逻辑视图( Logical View )组件视图( Component View )协作视图( Concurrency View )部署视图( Deployment View ) 第三章 信息系统计划 信息系统的规划分
33、 战略规划与项目计划 两个层次,二者既有区别,又有联系;前者与组织 的战略规划密切相关,后者在前者的框架下,与具体的信息系统项目相关,不能将二者混 为一谈。信息系统建设项目的第一步是项目计划,其是在信息系统战略规划的指导下,对 具体的信息系统开发项目进行计划,项目计划的任务定义问题确定项目可行性制订项目时间安排表项目人力资源安排项目正式开始实施经济可行性分析要点有形效益 VS 无形效益有形效益 -有形效益是信息系统带来的,可以容易地用货币计量或确定地衡量的效益, 无形效益 -无形效益是信息系统带来的,不容易用货币计量或确定地衡量的效益可见成本 VS 不可见成本可见成本 -同信息系统相关的,可以
34、容易地用货币或确定地衡量的成本,包括:硬件费用劳动费用运行费用不可见成本 -同信息系统相关的,不容易用货币或确定地衡量的成本,包括: 顾客忠诚度降低 雇员士气降低 操作效率降低一次性成本 VS 重复成本一次性成本 -同信息系统启动、开发和投入运行相关的成本,包括:系统开发新的硬件和软件购置用户培训场地准备数据或系统转换重复成本 -同信息系统运行和维护相关的成本,包括:应用软件维护数据存储增加费用 通讯增加费用 新软件和硬件的租赁 耗材和其它费用(如纸张、表格、数据中心人员) 项目进度计划工作分解结构( Work Breakdown Structure , WBS) 阶段由一组相关的工作组成;
35、工作由一组相关的任务组成; 任务是最小的工作单位。 (例图)阶段进度安排的特点 按阶段、活动和任务三级层次结构; 规划阶段不可能列出所有作业的进度表, 通常仅列出主要的任务进度。 具体 的作业进度安排可以在一个阶段开始前进行。项目进度安排的四个步骤根据SDLG确定标准的阶段、活动和任务,以及项目特需的活动和任务; 评估任务的规模 (所需人员、需要的人日、 时间要求以及其它专门的需要等) ; 确定任务的序列;制订任务进度表(PERT/CPM甘特图)甘特图与PERT(网络图)对比(甘特图强调了时间信息相关性,PERT图着重作业间的相关性)PERT/ CPM的作用通过确定哪些作业可以同时进行, 哪些
36、作业必须连续进行, 项目经理能够确 定整个项目的预期持续时间;特别适用于制定最初的项目进度安排关键路径的作用 在该路径上的每个作业完成时间直接影响项目的完成时间,必须按时完成。甘特图的特点 没有用图形直接地表示作业间的相关性,但着重表示了时间信息的相关性; 特别适应于项目开始后的进度跟踪。可以用不同颜色标识项目的进度,如: 已经完成部分、未完成部分、提前完成或延迟完成、剩余时间等。I廿特图与PERT的关系第四章 信息系统分析? 功能需求(Functional requirements)用来描述系统应该提供的服务(功能)、系统应该如何响应一个特定的输入, 以及系统在特定的情况下应该如何运行;可以
37、用图形模型表示;功能需求基于组织用来运营的流程和业务规则,可能是明文规定的。? 非功能需求(Nonfunctional requirements )用来描述对系统提供的服务和功能的约束,如适时性约束、开发过程约束、标准等;硬件、软件和网络的要求和系统技术性能指标;一般用文字描述,也称技术需求。? 区别功能需求从工作角度来考虑产品的动作或系统提供的服务非功能需求是功能需求所代表的工作或服务的特征功能需求以动词为特征非功能需求以副词为特征? 联系非功能需求是功能所必备的属性? 系统分析的活动系统分析阶段的工作在软件工程中称为需求工程;需求工程的过程是多种多样,取决于应用的领域,涉及的人员,以及提供
38、 需求的组织。但是,对所有的需求工程的过程而言,有些活动是共同的,即:需求获取(Requirements elicitation )目的:1获取信息,为需求分析提供证据(1) 对商业环境的了解(2) 对现行系统的了解2争取成为行业专家3加强同用户的沟通和协作需求分析( Requirements analysis ) 需求建模 ( Requirements documant ) 需求确认( Requirements validation ) 需求管理( Requirements management )? 需求获取的方法(每个方法怎么做?特点?)1. 向用户分发和收集调查表2. 评估现存的报告、
39、表格和过程描述3. 同用户会谈和讨论4. 观察业务流程和工作流5. 建立原型6. 召开联合应用设计(JAD)会议? 分发和收集调查表? 方法的特点1. 从大量的用户中收集信息,是简答问题形式;2. 可以用做初步调查,然后根据需要,在此基础上深入调查;3. 适合于调查有关数量的问题,如,一天输入多少定单?4. 有利于了解用户的观点,大体或趋势;5. 不适合于了解过程、工作流和技术。? 方法的关键1. 调查表的设计? 评估现存的报告、表格和过程描述? 方法的特点1. 是初步了解过程的好方法,为进一步详细调查打下基础;2. 要求用户提供当前使用的表格、过程手册和描述的拷贝;3. 文档和报告可以作为工
40、具,帮助会谈和讨论;4. 可以帮助对数据格式、内容等的理解;5. 要注意文档的时效性和正确性,要用户确认。? 同用户会谈和讨论 ? 方法的特点是目前为止了解业务功能和商业规则的最有效方法; 是最耗费时间和资源的方法; 要求多次会议。? 方法的步骤1. 会谈准备 内容:目的、参加人员、详细问题、会谈安排与通知;2. 进行会谈 建议:衣着适当、准时到会、限制会谈时间、寻找例外和错误条件、探讨细节、作好笔记3. 会谈总结 工作:消化、理解和存档所获得的信息,记录未解决的问题,在此基础上作出新问题列表,用邮件向用户表示谢意。? 观察业务流程和工作流? 方法的特点 “耳听为虚,眼见为实 ”;是了解用户实
41、际工作的最好方法。? 方法的形式快速调查现场 获得现场的概貌,如布局、计算机设备的使用与需求、工作流1. 重点调查 解决其它形式存在的疑问1. 同用户一道工作 消除用户的局促感建立原型? 原型方法的进一步讨论 原型法的基础理念是一个较大的、较复杂的实体的初始的、工作模型; 模型根据其使用的目的不同,可分为:“扔掉的”原型、“发现”原型、设计原 型和发展原型。如何在需求阶段使用原型 ?利用原型来实验可行性、帮助确定流程需求。例如:屏幕的形式和报告方案; 使用“发现”原型来作为工作模型,以检验一个概念或验证一种方法。? 如何建立有效的原型 ?-原型的特点可操作性不象实验或教学用的实物大模型,仅显示
42、一个外观,不能操作。其应该提供 “ look and feel ”,仅缺乏一些功能;聚焦性虽然一个原型应着重于一个目的, 检验一个专门的概念或验证一个特殊的方法, 若干个原型可以结合起来实验若干个部件的集成;快速性需要CASE工具来帮助进行原型的快速建立和修改。召开联合应用设计(JAD)会议? JAD的含义 是一个通过使所有必要的参与人员通过一个单独的会议来定义需求或设计系统的技术? JAD的目的 是在会见用户、写出讨论的记录和建立模型,对模型进行评价和修改的基础上, 为了解决一些仍未解决或难以解决的事情而举行的。? JAD的时间 从几周到几个月,取决于系统的大小和可得的用户和开发人员的资源;
43、一个会议可以是一天或一周?JAD的参与者JAD会议的主持人需要经过训练来确定会议的目的和议程,引导与会者讨论,领导小组制定决策; 用户所有有关的用户,特别是有确定权的用户。如果决策人不能参加整个会议,也 应到会就关键问题进行决策。否则,会议延期举行。技术人员和项目开发组的技术专家? JAD的形式讲座形式机房形式需求分析数据分析方法 -U/C 矩阵是基于 数据的静态分析;U/C矩阵本质是一种聚类方法,它可以用于过程的数据、功能/组织、功能/数据等各种分析中;U/C 矩阵是通过一个普通的二维表来分析汇总数据;数据正确性分析 基本原则是“数据守恒原理”,即数据必定有一个产生的源,而且必定有一个 或多
44、个用途数据项特征分析1 )数据的类型以及精度和字长2 )合理取值范围3 )数据量4 )所涉及业务活动/数据矩阵 CRUDC = 产生新数据, R = 读取已有数据, U = 修改已有数据, D = 删除已有数据 需求定义 建模建立模型的目的有助于更清楚地、深入地了解和理解需求产生模型 -思考(提出)问题 -回答(解决) -增加新内容 -进行评价 -提出问题-建立较完善的需求定义;有助于简化问题,便于分析和设计工作系统的复杂性和无形性的特点所要求; 分而治之,一次仅解决系统的部分问题。有助于将系统需求定义形式化 收集和消化的信息量的巨大、开发时间的持续、人的记忆能力的限 制、回忆已完成工作的细节
45、的需要 模型以一个理解和消化后的形 式来提供所需信息;有助于信息的交流,是交流的工具开发人员内部:不同部分之间互提资料 开发人员和用户之间:利用模型检验是否正确地理解了需求,帮助 理解系统分析员的建议,理解系统所能提供的功能 开发人员、用户和管理层:介绍系统性能供审查 为后续工作(开发、维护和升级等)提供文档资料从建模过程中学习通过抽象降低复杂性记忆所有的细节同其他开发人员交流同各种用户交流为将来的维护和改进提供文档资料分析的集成视图用例图 系统与外部交互(行为) 。交互图 -系统与系统内部交互(动态) 。类图-E-R 图的 扩展。(剩下的没记到)建立用例模型一般建立步骤确定参与者确定用例绘制
46、用例图编写用例的文字描述组织用例结构引用 VS 扩展在对一个应经存在的用例进行修改,如扩展或产生变化时,使用entend 在需要将在两个以上事例中的共同行为提取到单个通用的用例中时,使用 include 一种 用例场景 的格式用例名称( Title )用例的名称,与在用例图中的名称一致;主要参与者( Primary actor )通常是一个用户的角色利益相关者( Stakeholders ) 同用例功能有关的任何团体或个人。前置条件( Precondition ) 为了执行用例必须满足的条件。最小保障( Minimal guarantee )当服务失败时,所可能产生的输出成果保障( Succe
47、ss guarantee) 当服务成功时,所可能产生的输出。触发器( Trigger )! =前置条件启动用例的事件或活动。主成功场景( Main success scenario ) 描述在用例执行过程中参与者和用例之间交互的主要活动序列。扩展场景( Extensions scenario ) 描述在用例执行过程中参与者和用例之间交互的次要或不常发生的活动序 列。出错场景( Precondition ) 详细描述出错时如何处理。组织用例 Include 关系两个用例之间的连接;表示一个用例使用(引用)了另一个用例; 它允许将不同用例中的行为抽取出来放到其它独立用例中, 类似编程中的公 共子程
48、序被其它用例使用。找出用例场景的共同事件流,用 <<Include>> 关联表示包含 Extend 关系两个用例之间的连接;通过增加新的表现或活动来扩展一个用例;特别的用例扩展通用的用例;对一个基用例添加额外的行为, 而基用例对插入不知情, 扩展的新用例在基 用例之上定义了某些特点并取而代之以新的行为。扩展常用于表示异常行为和特殊实例,以免使模型中的用例图变得臃肿。根据需求的扩展发现特殊的用例,用<<Exte nd>>关联来表示扩展概念数据模型概念数据模型也称逻辑对象模型, 其是表示整体数据组织的详细模型;其 是独立于任何数据库关系系统或者其它实
49、现的考虑事情;其用UML 的类图表示。概念数据模型应反映客户或用户所理解的事物及其联系, 它们代表了现实世 界存在的实体; 概念数据模型具体描述的内容:一组领域概念;概念之间的联系(关联、聚 集和组成);概念的属性概念数据模型的元素类( Classes)属性( Attributes )标识符 ( Identifiers )关系:关联( Associations )、聚集(aggregations )、组成(compositions ) 泛化( Generalizations ) 时间维度( Time dimensions ) 完整性规则( Integrity rules ) 安全控制( Sec
50、urity controls )关系:关系可以是二元,三元或多元 关系的多重性:关系的一端可以连接任意个数的对象实例关联类的概念特殊目的类, 其表示了在类和其所包含的属性之间, 或其自身的一种关联 (关 系)关联类的表示是一个用虚线连接到一个关联的类关系的度 ( Relationship Degree )一个关联涉及的类的数量 主要的度(例图)一维:同一类对象之间的关联(课程与先修课) 二维:两个不同类的对象之间的关联(雇员与部门) 三维:三个不同类的对象之间的关联关系的多重性 (Relationship Multiplicity )能或者必须同类 B中每个对象关联的类A中对象的数量范围多重性
51、的构成(例图)最小基( A minimum cardinality ):类 A 对象可能的最小数量 最大基( A maximum cardinality ):类 A 对象可能的最大数量关系的种类关联(Association )没有对象是任何其它类的subordi nate聚集 (Aggregation)一种特殊的二元关联,表示两个概念之间整体与部分的关系;一个 类表示整体,其它的表示部分,但这是一个松散的耦合组成(Composition )是带有牢固耦合的聚集,整体和部分缺一不可银行与账户,整体对个体,银行与雇员,整体对个体,1 n,实心菱形组成关系。账户依附于银行。 n n,空心菱形聚合关系
52、。职员与经理是雇员的继承。雇员是职员经理的泛化。空心三角形。泛化(Generalization )或继承(Inheritanee)泛化泛化是超类-子类的关系,一个类形成一个更广泛的类别,而其它类是 这个分类中的子类别;这是一般化对象和具体化对象之间的一种分类关系继承:一个子类将继承其父类的所有属性和操作;一个子类的实例包含其父类实例的所有相同的信息(加上更多的信息)对象关系建模-基于关系和面向对象技术,将概念数据模型转换成逻辑数据模型标准化形式(Normal Forms )1st NF -所有的关系是第一范式(1NF)2nd NF -没有部分键(partial-key )函数依赖的关系3rd
53、NF -没有传递函数依赖的关系序歹卩图(Sequenee Diagram)是一个UML图表,用来表示对象之间的基于时序的交互,来执行用例行为 的关键部分;交互是以消息的形式(例图);行为的相应被赋予给消息的接序列图的目的是描述对象间的动态协作关系(例图);在序列图中,最重要的一点是表达了对象间发送消息(Message)的时序。协作图(Collaboration Diagram)是一个UML图表,用来表示相互协作来执行一个用例的所有对象的图;协作图的目的是确定哪些对象相互协作来执行一个给定的商业功能,强调了对象之间的关系(协作图例图);在协作图中,交互作用是用编号的消息(Message )来表示
54、的序列图和协作图的关系共同点:都是交互作用图(In teraction Diagram);不同点:协作图强调对象相互作用来支持一个用例,而序列图更强调信息细节(动态、序列、时序)的本身。序列图的组成符号参与者符号,由棍状人形表示;对象符号,由带有下划线名称的矩形表示;通信联络线(Lifeline )符号,由垂直虚线或垂直的窄矩形表示; 消息符号,由一个带消息描述的方向箭头表示。第五章 信息系统设计系统的应用架构决定了系统的组成、组成部件之间的相互关系,组成部件之间的通讯 与协作,其是系统的总体结构。系统的应用架构通常简称为系统架构,其包括系统的网络架构、系统的软件架构和系 统的数据库架构等。包图(包图的层次反应详细程度
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 管理高尔夫课程
- 天津市乐器店物业维修养护指南
- 艺术品交易签约管理办法
- 人才发展服务公司管理手册
- 幼儿园合作补充协议
- 企业形象片监制合同模板
- 泥工改造安装合同
- 创意办公二手房交易范本
- 风机设备投标样本
- 瑜伽馆地坪施工合同
- 教师绩效工资及超课时费发放管理办法
- 支撑台铸造工艺设计
- 背负十字架的故事励志·
- 安徽华塑股份有限公司年产 20 万吨固碱及烧碱深加工项目环境影响报告书
- 优秀团队申报材料【优秀5篇】
- 2020九年级英语上册全册Module1-12重点难点易错点整理新版外研版
- ABB变频器培训学习
- 森林防火制度汇编
- GB/T 9239.1-2006机械振动恒态(刚性)转子平衡品质要求第1部分:规范与平衡允差的检验
- GB/T 26996-2011非正规教育与培训的学习服务学习服务提供者基本要求
- 财会数码字书写规范素材
评论
0/150
提交评论