当前位置:
文档之家› 第18讲 系统开发:步骤、工具和技术
第18讲 系统开发:步骤、工具和技术
选择项目
• 确定项目的成本和收益
– 实实在在的好处 – 无形效益 – 资本预算编制方法
• 信息系统计划
– 投资组合分析Portfolio analysis – 评分模型Scoring model
项目管理风险
• 实施和变更管理
• 控制风险因素
– 实施 – 用户和设计师的沟通鸿沟
• 用户克服阻力
– 正式的计划和工具 – Gantt图 – 计划评审法PERT
离岸外包的整体成本
• 如何一个公司的离岸外包合同额是$10 million,那么 即便是在最佳情况下,公司将实际多花费15.2%,最 差的情况要多花费57%。
项目管理的目标
• 项目
• 项目管理 • • • • • 范围 时间 成本 质量 风险
– 达到一个特定商业目标的关联活动的计划 – 使用知识、技能、工具、技术,在特定的预算和时 间限制内达到目标
• 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.
• 1 建立Help Desk • 2 提供支持系统变化的环境
系统开发方法:瀑布开发法
• 应用长、应用广、失败多 • 失败的原因:
– 企业不知道需求 – 计划:管理成本、资源、时间限制;变化的成本 – 解决方案:多种因素
系统开发方法:快速原型法
• 快速应用开发法(RAD)=快速原型法 • 要点:
Phase 6: 实施
• 选择正确的实施方案
– 并行实施:同时使用新老系统,直至新系统能 正确工作 – 直接实施:扔掉新系统,启用新系统 – 引导实施:用户先小范围、后大范围 – 分段实施:功能先小范围、后大范围
Phase 7: 维护
• 维护阶段
– 监测并支持新系统以保证其继续满足业务目标 – 2项主要活动
外包
• 外包:
– 特定的工作、规定的期限、规定的成本、规定 的服务水平,委托给第三方
• 传统案例
– 薪水处理资源外包 – 呼叫中心外包 – DELL的客户服务、技术支持、开发测试
外包行业快速发展的原因
– 全球化Globalization – 互联网The Internet – 经济增长和低失业率
• 3 制订项目计划:任务、资源、时间
– 项目计划:what&when&who – 项目经理:项目计划和管理专家,定义和开发项目 计划、跟踪计划以保证所有项目里程碑完成 – 项目里程碑:某些活动完成的关键日期。
Phase 1:计划
项目计划举例
Phase 2: 分析
• 分析阶段
– 指最终用户和信息技术专家共同工作,为目标系统 收集、理解和表达业务需求的阶段 – 2项主要活动 – 与每一个有权使用新系统的人去交流,回答 Why&What – 联合应用开发会议(JAD):系统用户和技术专家 – 需求定义文件 – 用户签字
• 管理层的支持和承诺 • 复杂程度和风险水平
• 项目管理质量
– 支出规模、员工规模、实施时间、干系部门数目 – 50-75%失败,需求不明确、不直接的系统、新技 术
评估系统
项目风险 高 企 业 风 险 高 低 谨慎审查 回避 低 确认和开发 常规项目
成本收益要素
实施成本 • 硬件 • 通信 • 软件 • 人事费用 运营成本 • 计算机处理时间 • 维护 • 操作人员 • 用户时间 • 培训费用 • 设备成本 可见收益 • 提高生产率 • 降低运营成本 • 减少劳动力 • 降低计算机费用 • 降低外部供应商成本 • 降低文书和专业费用 • 降低费用增长率 • 降低设备成本 隐性收益 • 提高资源利用率 • 改善资源控制 • 改进组织规划 • 提高组织灵活性 • 更及时的信息 • 更多的信息 • 加强组织学习 • 获得合法需求
第十八讲 系统开发:步骤、工具与技 术
第18讲 系统开发:步骤、工具 与技术
——没有银弹、人月神话的发祥地
系统开发生命周期SDLC
• 定义
– 指开发信息系统的一种结构化的按部就班的方法
• 7个核心步骤
– – – – – – – 计划 分析 设计 开发 测试 实施 维护
维护
计划 分析
实施
设计
测试
– 人机工程学 – 组织的影响分析
项目管理:甘特图
显示了任务、人-日、每个责任人的缩写,以及每项任务的起目日期。资源汇总为优秀的管理者提供 了每个月、工作于些项目的每个人的总人-日。
项目管理:甘特图
项目管理:甘特图
项目管理:甘特图
这是一个简化创建小网站PERT图。它显示了项目任务的顺序和任务的后续任务,并与前面的关系。
– 测量效率,速度和/或技术能力
• 吞吐量Throughput
– 给定时间内,通过系统传输的速度
• 处理速度 • 系统可用性
– 与停机成反比,或一个系统的平均停机或不可 用的时间
Phase 3: 设计
• 设计阶段
– 目标系统得以运行的技术性蓝图 – 2项主要活动
• 1 设计技术框架
– 技术框架:定义系统的硬件、软件和通信设备
• 2 设计系统模型
– 对屏幕、报告、软件、数据等每件事的描述 – GUI屏幕设计
系统建模与设计
• 结构化方法
– 数据流图DFD – 过程规范 – 结构图(层次性) – 基于类和继承的概念 – 基于组件的和开发和WEB Service – UML – 提供软件工具使用上面的方法自动运行,减少系统 开发中的重复性工作
• OO开发
• 计算机软件辅助工程(CASE)
Phase 4: 开发
• 开发阶段:
– 利用设计阶段产生的详细设计资料,将它们转 化为实际系统。 – 2项主要活动
• 1 建立技术框架 • 2 建立数据库与编程
– 由技术专家承担
Phase 5: 测试
• 测试阶段:
– 验证系统运行和是否满足所有分析阶段定义的业务 需求。 – 2项主要活动 – 测试条件:对每个步骤内容和预期结果
开发
SDLC 7阶段&主要活动
Phase 1: 计划
• 计划阶段
– 制定一个可靠的计划 – 3项主要活动:
• 1 界定要开发的系统
– 识别和选择哪种系统是支持企业战略决策所需 要 – 关键成功因素(CSF)对组织的成功起关键作用 的因素
Phase 1: 计划
• 2 确定项目范围
– – – – 项目范围:明确定义高层系统的需求 范围蔓延:项目范围增大到超出原来的意图时 功能蔓延:开发者增加一些不是最初需求的功能时 项目范围文件:简短的项目范围的书面定义
最终用户开发法
• 定义
– 最终用户开发重要的应用软件所使用的技术和方法的 集合
– 不包括
• 基础设施软件、关键任务软件、并行支持大量用户软件
• 哪些应用软件适合最终用户开发 • 适合于最终用户开发的工具
– 易于使用 多平台 ) – 广泛的数据类型
拥有成本低(价格和培训
• 缺点
Hale Waihona Puke – 版本控制、低质量、失控
外包类型
外包流程
外包时您将开发两个非常重要的文件:提案请求协议和服 务水平协议
Request for proposal (RFP)
• 提案请求书(RFP) -正式文件,介绍了超 级详细需求,并要求供应商提交开发进展 的投标书 • 外包时你必须告诉你想要的另一个组织你 想要什么,因此RFP必须非常详细和完整 • 有些招标书可能需要几个月甚至几年才能 发展
Service level agreement (SLA)
• 两个组织间的正式合同和法律协议 • 规定双方的权利和义务,交付时间和付款 • 支持SLA文件 – service level specifications服务水平规范and service level objectives服务水平目标–包含非常 详细的数字和指标
外包类型
• 3种类型
– 在岸外包:同一个国家的另一个企业 – 近岸外包:邻国企业,接壤? – 离岸外包:
外包的优点
• 优点:
– 专注于独特的核心竞争力 – 利用另一个组织的智力 – 更好地预测未来的成本 – 获得领先的技术 – 降低成本 – 提高绩效问责能力
外包的缺点
• 缺点:
– 降低对未来的创新技术的认知 – 降低了控制程度 – 核泄漏:战略信息泄漏可能性增加 – 增加了对其他组织的依赖
– 快速而有效 – 小巧而敏捷 – 低成本、少功能 – 周期短
原型法
• 原型:
– 目标产品、服务或系统的模型
• 原型法
– 建立示范目标产品、服务或系统的特征 – 概念检验原型:证明目标系统的技术可行性 – 推广原型:用于让人们确信目标系统价值的原 型
原型法的过程
• 4个步骤
–1 –2 –3 –4 确定基本需求 建立初始原型 用户评价 修正和提高原型
原型法步骤
原型法的优点
• • • • • • • 鼓励用户参与 有助于解决用户之间的差异 能给用户一个对最终系统的直观感受 帮助确定技术上的可行性 有助于推广目标系统的思想 快速、不昂贵的初步模型 设计用户界面时尤其有用
原型法的缺点
• 导致人们认为最终系统将很快完成 • 没有给出系统运行环境的说明 • 导致项目小组忽略完整的测试和文档