版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、系统分析与设计,第四版,2,学习目标,阐述传统系统开发生命周期(systems development life cycle,简称SDLC)的目的及阶段 解释何时适合采用SDLC的适应性观点 解释模型、工具、技术及方法论间的差异 说明开发信息系统的两种整体性方法:传统的方法与面向对象方法,3,学习目标 (续),说明系统开发生命周期的变形 说明系统开发最新趋势的重要特色:统一过程(Unified Process;UP)、极限编程(Extreme Programming;XP)、敏捷建模 (Agile Modeling) 及Scrum 说明自动化工具在系统开发中的使用方式,4,概述,系统开发项目
2、有固定的起止时间 生产出想要的结果或产品 可能需要花费数千小时,也可能是只要一个月就完成的小型项目 成功的开发项目 提供详细的计划 有组织的任务与活动顺序 产生可靠,功能强大,且有效率的系统,5,系统开发生命周期,系统开发生命周期 (SDLC) 提供管理系统开发程序的整体架构 SDLC 的两个主要观点 预测性观点 假设项目可以事先规划 适应性观点 比较弹性,假设项目无法事先规划 所有项目都使用某种形式的 SDLC,6,SDLC 的预测性与适应性开发观点,7,传统的 SDLC 预测性观点,项目规划 初始,确保可行性,规划时间表,取得项目的核准 分析 了解与处理企业的需求 设计 根据需求与分析的决
3、策定义解决方案 实作 建构,测试,训练使用者,与安装新系统 支持 让系统维持正常运作,与改善系统的功能,8,信息系统的开发阶段,9,SDLC 与问题解决,与第1章介绍的问题解决步骤类似 组织承认有问题需要解决(项目规划) 项目团队需要调查,了解问题的本质,及解决方案的需求(分析) 详细描述解决方案的内容(设计) 组建及安装能解决组织问题的系统(实施) 使用,维持与强化系统,确保它能继续提供预期的效益(支持),10,SDLC 的瀑布式观点,11,系统开发阶段的重迭现象,12,SDLC 的适应性观点,以螺旋模型为基础 项目会重复执行开发活动,直到完成为止 在每个循环结束时都会产生原型 专注于降低风
4、险 反复作业 重复进行工作活动 每次反复作业都会调整先前的结果 假设没有人可以第一次就做出正确的成果 每次反复作业都有一系列的迷你项目,13,螺旋模型的生命周期,14,系统开发活动的反复作业,15,SDLC 各阶段的活动内容,预测性或适应性观点都使用 SDLC 每个阶段的活动都很类似 阶段不一定是循序进行的 阶段可能会重迭 跨越阶段的活动可以在一次反复作业中完成,16,SDLC 规划阶段的活动,定义企业的问题与范围 产生详细的项目时间表 确认项目可行性 经济,组织,技术,资源,与时间 安排项目人事 (资源管理) 启动项目 ? 官方的声明,17,SDLC 分析阶段的活动,搜集问题域的信息 定义系
5、统需求 建构用以发现需求的原型 确定需求的优先等级 产生与评估各种备选方案 与管理阶层一起审查建议方案,18,SDLC 设计阶段的活动,设计与整合网络 设计应用程序的架构 设计使用者接口 设计系统接口 设计与整合数据库 设计细节的原型 设计与整合系统的控管机制,19,SDLC 实作阶段的活动,建构软件组件 验证与测试 转换数据 培训及撰写系统说明文件 安装系统,20,SDLC 支持阶段的活动,维护系统 小规模的修正,修复,与更新 强化系统 小规模的升级或强化,以扩充系统的能力 比较大规模的强化作业,可能需要成立专门的开发项目 支持使用者 客服中心与支持团队,21,方法论与模型,方法论 为完成
6、SDLC 中的每一项活动,提供可遵循的指引方针 模型、工具及技术的集合 模型 真实世界中某些重要层面的表示方法,但与真实事物不同 用来隔离某个层面的抽象化过程 图表 项目规划与预算支持,22,系统开发中使用的模型,23,工具与技术,工具 用来协助建立模型或其它组件的软件支持 范围可从简单的绘图程序,复杂的 CASE 工具,到项目管理软件 技术 指导方针所成的集合,它能够协助分析师完成系统开发的活动或任务 可以是步骤性的指令,或是比较一般性的建议,24,系统开发中使用的工具,25,系统开发中使用的技术,26,方法论中各组件间的关系,27,系统开发的两种观点,传统的方法 也叫做结构化系统开发 结构
7、化分析和设计技术 (SADT) 包括信息工程 (IE) 面向对象方法 也叫做OOA,OOD与OOP 将信息系统视为彼此互动之对象所成的集合,会一起作用以完成任务,28,传统的方法,结构化程序设计 改善计算机程序质量 让其它程序人员轻松阅读并修改程序 每个程序模块都有一个开始与一个结束 三种程序设计的结构 (顺序,决策,反复执行),29,三种结构化程序设计的架构,30,至顶向下程序设计,将复杂的程序分割为阶层化的模块 阶层上方的模块负责控制程序的执行,方式是呼叫较下层的模块 模块化程序设计 类似至顶向下程序设计 一支程序会呼叫其它的程序,就像是单一系统般运行,31,至顶向下或模块化程序设计,32
8、,结构化设计,提供设计指引方针的技术 决定这组程序应该是什么 每支程序应该完成什么 这些程序该如何组织为阶层形式 模块会使用结构图显示 程序模块的两个主要原理 低耦合 各模块间尽可能保持独立的关系 高内聚 每个模块都只完成一项明确的工作,33,使用结构化设计技术建立的结构图,34,结构化分析,定义系统的需要(处理方面的需求) 定义系统需要储存与使用什么样的数据(数据方面的需求) 定义输入与输出 定义如何让这些功能一起作用以完成任务 数据流程图 (DFD) 与实体关系图 (ERD) 显示结构化分析的结果,35,使用结构化分析技术所产生的数据流程图,36,使用结构化分析技术所产生的实体关系图,37
9、,结构化分析、结构化设计、以及结构化程序设计间的关系,38,信息工程 (IE),精致化的结构化开发方法 专注于策略规划、数据塑模及自动化工具 比 SADT 更加严谨与完整 产业合法结构化开发与资讯工程的主要概念,形成传统的开发方法,39,面向对象方法,一种全然不同的信息系统观点 将信息系统视为彼此交互的对象集合,这些对象会一起作用以完成任务 对象 计算机系统中能对信息做出响应的事物 概念上,这种方法并没有处理程序或程序,也没有数据实体与文件,它只有对象 OO 语言: Java, C+, C#.NET, VB.NET,40,系统开发的面向对象方法,41,面向对象方法 (续),面向对象分析 (OO
10、A) 定义使用者需要处理的所有对象类别 显示完成工作所需的使用案例 面向对象设计 (OOD) 定义系统中需要与人们与装置沟通之对象类型 显示对象如何互动, 以完成系统的任务 精炼各种对象类型的定义,让它可以在特定的语言或环境下实作 面向对象程序设计 (OOP) 在程序语言中撰写的状态,用来定义各类型对象的功能,42,在面向对象分析中所产生的类图,43,SDLC 的变形,实务上存有许多 SDLC 的变形 阶段的各种名称 各种名称的活动/任务都类似 有些变形强调的是人 使用者中心设计,参与式设计 社会技术系统 有些变形强调加快开发的速度 快速应用开发 (RAD) 建立原型,44,使用不同阶段名称的
11、生命周期,45,当前系统开发的趋势,比较适应性的观点 统一过程 (Unified Process; UP) 极限编程 ( Extreme Programming ;XP) 敏捷建模 (Agile Modeling) Scrum 详细内容请参阅第16章,46,统一过程 (Unified Process; UP),面向对象的开发方法论 由 IBM 的 Rational Software 公司所提供 Booch, Rumbaugh, Jacobson 统一建模语言 (Unified Modeling Language; UML)的主要作用是建立模型 UML 可以与任何的 OO 开发方法一起使用 UP
12、 定义了四个生命周期的阶段 初始,详述,建构,转换,47,统一流程 (Unified Process; UP)(续),加强六项最佳实务 反复开发 定义与管理系统需求 使用组件架构 产生可视化模型 验证质量 控制改变,48,极致软件制程 ( Extreme Programming ;XP),轻量级的系统开发方法论,让流程保持简单与效率 藉由非正式的使用者故事,说明需要从系统获得的支持,及必要的系统功能 要求使用者描述接受度测试,展示需要完成的结果 需要不断地测试,持续的整合,以及加重使用者的参与,并由小型团队完成程序设计,49,敏捷建模 (Agile Modeling),混合 XP 与 UP (
13、Scott Ambler); 使用的模型比 XP 多, 使用的文件比 UP 少 互动与渐进式塑模 套用正确的模型 平行建立多个模型 在模型中加入微幅的变化 团队合作 争取积极的利害关系人加入 鼓励共同拥有 与其它人员一起建立,并公开展示模型,50,敏捷建模 (Agile Modeling)(续),简单化 建立简单的内容 简述模型的意义 使用最简单的建模工具 验证 考虑测试的可能性 使用程序代码证明模型的正确性,51,Scrum,满足高度适应性项目的需求 尽可能快速地响应目前的情境 Scrum 本意是英式橄榄球赛 两者的速度都很快、都需要彼此适应、也都需要自我组织 团队需要持续掌握项目的状况 在
14、过程中重视个人的价值,52,支持系统开发的工具,Computer-aided system engineering (CASE) 能改进速度与系统开发质量的自动化工具 包含关于系统信息的数据库,称为知识库 上层 CASE 支持分析与设计 下层 CASE 支持实施 ICASE 整合式 CASE 工具 现在称为可视化建模工具,整合式应用程序开发工具,与双向工程工具,53,CASE工具知识库包含有关系统的全部信息,54,总结,系统开发项目会根据系统开发生命周期(SDLC)进行组织 有些项目使用比较预测性的 SDLC 观点,其它根据的则是比较适应性的 SDLC 观点 SDLC 阶段指的是项目规划、分析、设计、实施与支持,55,总结 (续),实务上,阶段有可能重迭,而且项目也可能
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 陕西省西安爱知中学等校2025-2026学年七年级下学期期末语文试卷(文字版含答案)
- 2026江苏扬州市九年级中考真题试卷历史(文字版含答案)
- 关于星辉科技首席财务官变动携带会议通知函(4篇范文)
- 目标提高安全意识警钟长鸣防溺水交通小学主题班会课件
- 设备维护服务供应商变更告知函7篇范本
- 2026年义诊活动情况说明
- 吊顶喷淋头安装技术交底(标准范本)
- 中阳县2025年三年级数学下学期期中质量检测试题含解析
- 东宁县2025届四年级数学第二学期期中复习检测模拟试题(含答案解析)
- 上蔡县2025-2026学年数学三年级第二学期期中质量检测试题(含解析)
- 人教版三年级下册数学-应用题专项练习分类及答案
- 建筑劳务有限公司安全生产管理制度
- 特殊困难老年人基本信息登记表
- 【MOOC】食品化学-中国海洋大学 中国大学慕课MOOC答案
- 人教版六年级上册解方程练习300道及答案
- 项目整改实施方案
- GB/T 17630-2024土工合成材料动态穿孔试验落锥法
- 危险化学品安全生产规章制度和岗位操作规程的目录清单
- 供应商供货质量保障措施
- 起重机械作业人员岗位职责
- 路侧智慧停车管理泊车解决方案
评论
0/150
提交评论