第18讲 系统开发:步骤、工具和技术
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
开发
SDLC 7阶段&主要活动
Phase 1: 计划
• 计划阶段
– 制定一个可靠的计划 – 3项主要活动:
• 1 界定要开发的系统
– 识别和选择哪种系统是支持企业战略决策所需 要 – 关键成功因素(CSF)对组织的成功起关键作用 的因素
Phase 1: 计划
• 2 确定项目范围
– – – – 项目范围:明确定义高层系统的需求 范围蔓延:项目范围增大到超出原来的意图时 功能蔓延:开发者增加一些不是最初需求的功能时 项目范围文件:简短的项目范围的书面定义
Phase 6: 实施
• 选择正确的实施方案
– 并行实施:同时使用新老系统,直至新系统能 正确工作 – 直接实施:扔掉新系统,启用新系统 – 引导实施:用户先小范围、后大范围 – 分段实施:功能先小范围、后大范围
Phase 7: 维护
• 维护阶段
– 监测并支持新系统以保证其继续满足业务目标 – 2项主要活动
Service level agreement (SLA)
• 两个组织间的正式合同和法律协议 • 规定双方的权利和义务,交付时间和付款 • 支持SLA文件 – service level specifications服务水平规范and service level objectives服务水平目标–包含非常 详细的数字和指标
– 集中构建一个原型 – 积极邀请系统用户参与一分析、设计和开发 – 反复的交互 式的结构化方法,加快需求的收集
系统开发方法:极限编程法XP
• 特点
– 将项目拆分成许多很小的阶段,完成当前阶段 后,才能进入下一个阶段 – 强调客户满意、适应需求的变化、强调团队合 作
系统开发方法:敏捷开发法
• a form of XP • 通过及早的连续的交付有用的软件组件来 达到客户满意。 • 较少关注团队编程,较多关注限定项目范 围
• 增加销售额
• 提升员工期望值
• 增加工作满意度 • 改进决策 • 改进业务 • 更高的客户满意度 • 更好的企业形象
1 计划目的
•计划内容概述 •当前和未来的企业组织 •关键业务流程 •管理战略
பைடு நூலகம்
信息系统计划预知风险
2 战略业务计划基本原理
•现状 •当前的企业组织 •不断变化的环境 •业务计划的主要目标
外包类型
• 3种类型
– 在岸外包:同一个国家的另一个企业 – 近岸外包:邻国企业,接壤? – 离岸外包:
外包的优点
• 优点:
– 专注于独特的核心竞争力 – 利用另一个组织的智力 – 更好地预测未来的成本 – 获得领先的技术 – 降低成本 – 提高绩效问责能力
外包的缺点
• 缺点:
– 降低对未来的创新技术的认知 – 降低了控制程度 – 核泄漏:战略信息泄漏可能性增加 – 增加了对其他组织的依赖
原型法步骤
原型法的优点
• • • • • • • 鼓励用户参与 有助于解决用户之间的差异 能给用户一个对最终系统的直观感受 帮助确定技术上的可行性 有助于推广目标系统的思想 快速、不昂贵的初步模型 设计用户界面时尤其有用
原型法的缺点
• 导致人们认为最终系统将很快完成 • 没有给出系统运行环境的说明 • 导致项目小组忽略完整的测试和文档
– 测量效率,速度和/或技术能力
• 吞吐量Throughput
– 给定时间内,通过系统传输的速度
• 处理速度 • 系统可用性
– 与停机成反比,或一个系统的平均停机或不可 用的时间
离岸外包的整体成本
• 如何一个公司的离岸外包合同额是$10 million,那么 即便是在最佳情况下,公司将实际多花费15.2%,最 差的情况要多花费57%。
项目管理的目标
• 项目
• 项目管理 • • • • • 范围 时间 成本 质量 风险
– 达到一个特定商业目标的关联活动的计划 – 使用知识、技能、工具、技术,在特定的预算和时 间限制内达到目标
外包类型
外包流程
外包时您将开发两个非常重要的文件:提案请求协议和服 务水平协议
Request for proposal (RFP)
• 提案请求书(RFP) -正式文件,介绍了超 级详细需求,并要求供应商提交开发进展 的投标书 • 外包时你必须告诉你想要的另一个组织你 想要什么,因此RFP必须非常详细和完整 • 有些招标书可能需要几个月甚至几年才能 发展
• 1 收集业务需求
• 2 对需求定义优先级
Phase 2: 分析
Take time during analysis to get the business requirements correct. If you find errors, fix them immediately. The cost to fix an error in the early stages of the SDLC is relatively small. In later stages, the cost is huge.
选择项目
• 确定项目的成本和收益
– 实实在在的好处 – 无形效益 – 资本预算编制方法
• 信息系统计划
– 投资组合分析Portfolio analysis – 评分模型Scoring model
项目管理风险
• 实施和变更管理
• 控制风险因素
– 实施 – 用户和设计师的沟通鸿沟
• 用户克服阻力
– 正式的计划和工具 – Gantt图 – 计划评审法PERT
• 3 制订项目计划:任务、资源、时间
– 项目计划:what&when&who – 项目经理:项目计划和管理专家,定义和开发项目 计划、跟踪计划以保证所有项目里程碑完成 – 项目里程碑:某些活动完成的关键日期。
Phase 1:计划
项目计划举例
Phase 2: 分析
• 分析阶段
– 指最终用户和信息技术专家共同工作,为目标系统 收集、理解和表达业务需求的阶段 – 2项主要活动 – 与每一个有权使用新系统的人去交流,回答 Why&What – 联合应用开发会议(JAD):系统用户和技术专家 – 需求定义文件 – 用户签字
第十八讲 系统开发:步骤、工具与技 术
第18讲 系统开发:步骤、工具 与技术
——没有银弹、人月神话的发祥地
系统开发生命周期SDLC
• 定义
– 指开发信息系统的一种结构化的按部就班的方法
• 7个核心步骤
– – – – – – – 计划 分析 设计 开发 测试 实施 维护
维护
计划 分析
实施
设计
测试
Phase 3: 设计
• 设计阶段
– 目标系统得以运行的技术性蓝图 – 2项主要活动
• 1 设计技术框架
– 技术框架:定义系统的硬件、软件和通信设备
• 2 设计系统模型
– 对屏幕、报告、软件、数据等每件事的描述 – GUI屏幕设计
系统建模与设计
• 结构化方法
– 数据流图DFD – 过程规范 – 结构图(层次性) – 基于类和继承的概念 – 基于组件的和开发和WEB Service – UML – 提供软件工具使用上面的方法自动运行,减少系统 开发中的重复性工作
• 1 编写测试条件
• 2 实施系统测试
– – – –
单元测试 系统测试 集成测试 用户验受(acceptance)测试UAT
Phase 6: 实施
• 实施阶段
– 将系统分发给所有用户,他们开始每天使用系 统完成工作 – 2项主要活动
• 1 编写详细的用户说明书 • 2 提供培训
– 在线培训:CD或Online – 面授
• Growing economy and low unemployment rate
– 技术Technology – 管制的解除Deregulation
外包类型
• 4种形式
– 购买现成软件 – 购买现成软件,并付费获得修改服务
• 用友的例子
– 购买现成软件,并付费获得自行修改取可 – 开发全新、独一无二、不曾存在的系统
• OO开发
• 计算机软件辅助工程(CASE)
Phase 4: 开发
• 开发阶段:
– 利用设计阶段产生的详细设计资料,将它们转 化为实际系统。 – 2项主要活动
• 1 建立技术框架 • 2 建立数据库与编程
– 由技术专家承担
Phase 5: 测试
• 测试阶段:
– 验证系统运行和是否满足所有分析阶段定义的业务 需求。 – 2项主要活动 – 测试条件:对每个步骤内容和预期结果
– 人机工程学 – 组织的影响分析
项目管理:甘特图
显示了任务、人-日、每个责任人的缩写,以及每项任务的起目日期。资源汇总为优秀的管理者提供 了每个月、工作于些项目的每个人的总人-日。
项目管理:甘特图
项目管理:甘特图
项目管理:甘特图
这是一个简化创建小网站PERT图。它显示了项目任务的顺序和任务的后续任务,并与前面的关系。
– 快速而有效 – 小巧而敏捷 – 低成本、少功能 – 周期短
原型法
• 原型:
– 目标产品、服务或系统的模型
• 原型法
– 建立示范目标产品、服务或系统的特征 – 概念检验原型:证明目标系统的技术可行性 – 推广原型:用于让人们确信目标系统价值的原 型
原型法的过程
• 4个步骤
–1 –2 –3 –4 确定基本需求 建立初始原型 用户评价 修正和提高原型
• 管理层的支持和承诺 • 复杂程度和风险水平
• 项目管理质量
– 支出规模、员工规模、实施时间、干系部门数目 – 50-75%失败,需求不明确、不直接的系统、新技 术
评估系统
项目风险 高 企 业 风 险 高 低 谨慎审查 回避 低 确认和开发 常规项目
成本收益要素
实施成本 • 硬件 • 通信 • 软件 • 人事费用 运营成本 • 计算机处理时间 • 维护 • 操作人员 • 用户时间 • 培训费用 • 设备成本 可见收益 • 提高生产率 • 降低运营成本 • 减少劳动力 • 降低计算机费用 • 降低外部供应商成本 • 降低文书和专业费用 • 降低费用增长率 • 降低设备成本 隐性收益 • 提高资源利用率 • 改善资源控制 • 改进组织规划 • 提高组织灵活性 • 更及时的信息 • 更多的信息 • 加强组织学习 • 获得合法需求
最终用户开发法
• 定义
– 最终用户开发重要的应用软件所使用的技术和方法的 集合
– 不包括
• 基础设施软件、关键任务软件、并行支持大量用户软件
• 哪些应用软件适合最终用户开发 • 适合于最终用户开发的工具
– 易于使用 多平台 ) – 广泛的数据类型
拥有成本低(价格和培训
• 缺点
– 版本控制、低质量、失控
外包
• 外包:
– 特定的工作、规定的期限、规定的成本、规定 的服务水平,委托给第三方
• 传统案例
– 薪水处理资源外包 – 呼叫中心外包 – DELL的客户服务、技术支持、开发测试
外包行业快速发展的原因
– 全球化Globalization – 互联网The Internet – 经济增长和低失业率
•组织调整和内部重组
•管理控制的主要培训举措 •人才战略
7 预算要求
•要求
•潜在结余 •融资 •采购周期
第19讲 IT成功指标与业务持续 性规划
——永续运营、持续改进
IT成功的指标
• • • • 基础设施为中心的指标 以WEB为中心的度量 呼叫中心指标 财务指标
基础设施为中心的度量
• 基础设施为中心的度量
什么决定了项目的成败
• 用户的参与及影响 用户关注点
系统能提供我工作所要的信息吗? 我访问数据的速度有多快? 我检索数据方便吗? 我需要费多大力气才能将数据录入系统? 系统的运行如何融入我的日常工作计划中? 设计者关注点 主文件会占用多少磁盘存储空间? 执行这一功能需要多少代码? 运行系统时,如何减少CPU时间? 存储数据最有效的方式是什么? 使用什么样的DBMS最适合?
3 现有系统
•目前能够支持的业务和流程 •目前的基础设施能力 •硬件、软件、数据库、通信、互联网 •达到业务要求面临的困难
•公司的战略计划
•预计的未来需求
4 新进展
•新系统项目 •项目描述
5 管理战略
•采购计划 •重大事件和时间安排
6 计划实施
•实施过程中预期的困难 •进度报告
•项目理念
•在战略中的作用 •新基础设施的要求 •硬件、软件、数据库、通信、互联网
• 1 建立Help Desk • 2 提供支持系统变化的环境
系统开发方法:瀑布开发法
• 应用长、应用广、失败多 • 失败的原因:
– 企业不知道需求 – 计划:管理成本、资源、时间限制;变化的成本 – 解决方案:多种因素
系统开发方法:快速原型法
• 快速应用开发法(RAD)=快速原型法 • 要点: