已阅读5页,还剩133页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
软件工程 软件系统分析与设计 刘全明liuqm 1 询问 前导专业课程的学习情况 内容 掌握程度 目的软件过程软件企业结构和人员构成介绍系统分析和设计课程介绍 2 软件开发过程 跟踪客户 大客户 获得的项目 或者建议客户做给某个项目 需求分析概要设计详细设计实现测试实施维护 3 软件企业结构介绍 公司部门组织结构各个部门职位说明个人的一些建议 4 公司组织结构 选择一下 哪个部门相对最重要财务部门研发中心市场营销部质量部售后服务部门人事部后勤部 5 公司组织结构 总经理副总经理 各个总监分管市场 技术 财务等等各个部门市场营销部 市场部 销售部 客户部 研发中心质量部售后服务部门财务部门人事部后勤部 6 市场营销部 市场部销售部客户部 7 客户经理 8 产品经理 9 研发中心 研发中心经理若干项目部关键件研发部实施部 10 11 研发中心 若干项目部项目经理 高级程序员 软件程序员 数据库开发人员关键件研发部软件架构师 系统分析师 高级程序员 数据库专家实施部 12 研发中心 若干项目部项目经理高级软件开发工程师软件工程师 数据库开发人员关键件研发部系统架构师 系统分析师 高级程序员 数据库专家实施部实施工程师 13 项目经理 14 研发中心 若干项目部项目经理高级软件开发工程师软件工程师 数据库开发人员关键件研发部系统架构师 系统分析师 高级程序员 数据库专家实施部实施工程师 15 资深java工程师 16 17 研发中心 若干项目部项目经理高级软件开发工程师软件工程师 数据库开发人员关键件研发部系统架构师 系统分析师 高级程序员 数据库专家实施部实施工程师 18 多数要求的技能 NET Java之一富INTERNET客户端应用 RIAs Web开发Web服务一种动态的和 或者函数编程语言 敏捷开发方法领域知识手机开发 19 NET软件程序员 20 JAVA软件程序员 21 数据库开发工程师 22 研发中心 若干项目部项目经理高级软件开发工程师软件工程师 数据库开发人员关键件研发部系统架构师 两种需求 系统分析师高级程序员数据库专家实施部实施工程师 23 系统架构师 24 25 Net架构师 26 研发中心 若干项目部项目经理高级软件开发工程师软件工程师 数据库开发人员关键件研发部系统架构师 两种需求 系统分析师高级程序员数据库专家 系统集成工程师实施部实施工程师 27 系统分析师 28 系统分析师 29 研发中心 若干项目部项目经理高级软件开发工程师软件工程师 数据库开发人员关键件研发部系统架构师 两种需求 系统分析师高级程序员数据库专家 系统集成工程师 UI工程师实施部实施工程师 30 数据库工程师 31 DBA 32 ORACLE数据库工程师 33 系统集成工程师 34 界面设计师 35 研发中心 若干项目部项目经理高级软件开发工程师软件工程师 数据库开发人员关键件研发部系统架构师 两种需求 系统分析师高级程序员数据库专家 系统集成工程师实施部实施工程师 更多的是针对产品 而不是项目 售后维护工程师 36 项目实施工程师 37 系统维护工程师 38 产品质量部 测试工程师质量工程师信息安全管理员技术文档工程师 39 软件测试工程师 40 质量主管 质量工程师 41 信息安全管理专员 42 高级应用安全工程师 43 技术文档工程师 44 其他 网络安全工程师 45 网络维护工程师 46 技术 技术 技术 如果你一直走技术路线 技术总监 技术经理技术顾问 技术咨询师技术培训师 47 技术总监 48 技术经理 49 技术经理 50 51 建议 知识的储备和技术能力的培养几个要与不要技术新发展和需求 52 知识储备和技术能力培训 中 英文阅读能力有软件工程的思想 重在运用 规范 会编写程序 语言实现 博而专 开发环境 程序调试 单元测试 代码重构与重用 从程序设计上升到软件设计工具的掌握和熟练应用 拓展 版本控制 自动化编译 团队必须 53 非技术能力 语言表达能力与人沟通能力适应变化的能力自我学习的能力时间管理能力 54 要与不要 有团队合作的态度自信多看 多练 多交流多想多总结 问题的解决经验的积累 勤写文档勤备份 勤归档相关领域知识先做人再做事 单打独斗 不协作 情绪化工作 怀疑别人 沟通不畅自负只看书或埋头苦干抱怨 待遇 环境 急于求成 不求甚解忘了用户 55 未来技术需求 机器学习把应用软件搬到移动设备上人机交互与界面设计商业智能系统嵌入式安全数字家庭技术的集成 56 课程内容 系统分析和设计课程内容涉及 原理 方法 技术 工具 应用重点 系统开发生命周期的前期和中期活动 即系统分析和设计活动 57 第一部分 介绍系统分析与设计的基本概念和原理 包括系统开发环境 信息系统开发方法 第二部分 介绍系统分析方法 包括需求获取的调查研究技术 系统需求建模技术 需求的传统描述方法 需求的面向对象描述方法 可行性分析和准备系统方案建议 第三部分 介绍系统设计方法 包括系统应用架构设计 数据库设计 传统和面向对象的应用软件设计 输入 输出和用户界面设计 第四部分 介绍系统分析与设计完成后的工作 包括系统开发生命周期的系统实施和系统支持两个阶段的主要活动 课程内容 58 1 CHAPTER 系统开发环境 59 学习要求 记住系统分析员需要面对的7类信息系统理解信息技术对信息系统开发的影响理解业务问题对信息系统开发的影响了解和信息系统相关的不同类型的角色解释系统分析员在信息系统开发中的惟一角色描述成功的系统分析员所具备的技能 60 信息系统 信息系统 Informationtechnology IS 是人 数据 过程和信息技术的融合 它们之间相互联系 相互作用 收集 处理 存储和提供支持组织运作的信息 61 信息系统类型 事务处理系统 Transactionprocessingsystem TPS 是一种捕捉和处理有关企业事务数据的信息系统 管理信息系统 Managementinformationsystem MIS 是一种提供面向管理的企业业务处理和运作报告的信息系统 主管信息系统 Executiveinformationsystem EIS 是一种支持主管经理的规划和评估需求的信息系统 决策支持系统 Decisionsupportsystem DSS 是一种辅助进行决策或者提供决策信息的信息系统 62 信息系统类型 专家系统 expertsystem 是一种先捕捉专家的专业知识再模拟那些专家知识为非专家服务的信息系统 通信与协作系统 communicationsandcollaborationsystem 是一种促进工作人员 合作伙伴 客户和供应商之间进行有效通信以提高协作能力的信息系统 办公自动化系统 officeautomationsystem 是一种支持广泛的企业办公活动 改进工作人员之间工作流的信息系统 63 信息技术的影响 网络和因特网面向对象技术移动和无线技术协作技术企业应用集成技术 64 网络和因特网 网络包含大型主机 网络服务器 各种台式机 笔记本电脑和掌上电脑的计算机客户端 最普遍的网络技术是基于因特网的技术 包括内联网外联网Web技术xHTML和XML脚本语言Web专用语言 65 面向对象技术 对象技术ObjectTechnology 是一种软件技术 它采用封装了数据和行为的对象来定义系统 可复用的可扩展的面向对象设计语言包括C java Smalltalk VisualB等面向对象分析和设计方法Object orientedanalysisanddesign 用于系统开发的一组工具和技术的集合 利用对象技术来构造系统及其软件 敏捷开发Agiledevelopment 是一种系统开发策略 系统开发人员可以从一套相应的工具和技术中灵活地选择最适合完成手边任务的工具和技术 敏捷开发被认为可以在系统开发的产量和质量之间达到最优化的平衡 66 移动和无线技术 移动和无线技术包括PDAs个人数据助理Smartphones智能电话Bluetooth蓝牙Wirelessnetworking无线网络对信息系统的影响需要考虑无线连接需要考虑移动设备和屏幕尺寸的限制 67 协作技术 协作技术Collaboratetechnologies 指那些提高人际交互和团队工作能力的技术 E mailInstantmessaging即时消息Groupware群件 68 企业应用 企业应用 69 企业资源规划ERP 企业资源规划EnterpriseResourcePlanning ERP 是一种应用软件 它将信息系统完全集成在一起 提供大部分或者所有核心基本业务功能 ERP产品围绕一个由基本业务功能共享的公共数据库建造 有代表性的ERP供应商 BaanJ D EdwardsOraclePeoplesoftSAPAG 市场领导者 70 供应链管理SCM 供应链管理SupplyChainManagement SCM 是一种应用软件 它通过直接将企业的信息系统与企业的供应商和分销上的信息系统集成 优化从原材料采购到最终产品分销的业务过程 有代表性的SCM供应商 i2TechnologiesManugisticsSAPSCT 71 客户关系管理CRM 客户关系管理CustomerRelationshipManagement CRM 是一种应用软件 为客户提供对企业过程的访问 从初始的咨询直到售后服务和支持 有代表性的CRM供应商 BroadVisionE piphanyKanaNortel ClarityPeoplesoft VanitiveSiebel themarketleader 72 企业应用集成EAI 企业应用集成EnterpriseApplicationIntegration EAI 是指用来链接应用软件以支持应用软件之间的数据和信息流的过程和技术 其解决方案通常基于中间件 中间件Middleware 是用来在不同应用软件之间转换和路由数据的软件 有代表性的EAI供应商 BEASystemsIBM MQSeries MercatorSoftwareTIBCOSoftware 73 业务问题的影响 经济全球化电子商务和电子业务安全和隐私持续改进和全面质量管理业务过程重构 74 经济全球化 经济全球化带来新的 更大的国际市场新的国际竞争者对信息系统的影响必须支持多种语言 货币汇率 国际贸易规则 不同的商业文化和业务方式等需要实现信息融合以实现性能分析和决策支持参与者需要使用不同语言和用户交流 75 电子商务和电子业务 电子商务E Commerce 指通过使用因特网购买和销售商品及服务 电子业务E Business 指使用因特网进行日常的商务活动 电子商务和电子业务类型公司形象 产品和服务的营销宣传企业对客户Business to consumer B2C 企业对企业Business to business B2B 对信息系统的影响大多数新的信息系统都要面向因特网体系结构设计越来越多的应用软件设计成在浏览器中运行 对于操作系统的选择变得不那么重要 76 安全和隐私 安全Security当遭到破坏或者灾难时业务如何继续进行 企业如何保护它的数字财产不受外部侵害 隐私Privacy顾客对隐私的要求越来越高政府对隐私问题正在立法对信息系统的影响要求更严格的安全和隐私控制 77 持续改进和全面质量管理 业务过程BusinessProcesses 是影响业务事件的任务 业务过程是完成任务所需要的工作 程序和规则 它独立于自动化或支持它们的信息技术 持续过程改进Continuousprocessimprovement CPI 是连续地监控业务过程对降低成本和增加效益方面虽微小但可度量的改善之影响 全面质量管理Totalqualitymanagement TQM 是一种在企业内部促进质量改善和管理的综合方法 78 业务过程重构 业务过程重构Businessprocessredesign BPR 是研究 分析和重新设计企业的基本业务过程 为企业降低成本和 或提高效益 寻求实现比CPI更根本性的改变和改进通常通过CPI来实现 79 系统关联角色 系统所有者系统用户系统设计人员系统构造人员系统分析员项目经理 80 系统所有者 系统所有者Systemowners 信息系统的发起人和主要倡导者 通常负责投资项目以进行开发 运行和维护信息系统 81 系统用户 系统用户Systemusers 那些在通常意义上使用信息系统或者受到信息系统影响的客户 如收集 验证 录入 响应 存储 交换数据和信息 内部系统用户Internalusers办事操作人员专业技术人员决策人员外部系统用户Externalusers顾客供应商合作伙伴不在组织内部工作的雇员 82 系统设计人员和系统构造人员 系统设计人员Systemdesigner 将系统用户的业务需求和约束条件转换成技术方案的技术专家 设计满足系统用户需求的计算机数据库 输入输出 屏幕界面 网络和程序 包括数据库管理员 网络架构师 Web架构师 图形艺术师 安全专家和技术专家等 系统构造人员Systembuilders 根据系统设计人员的设计说明构造信息系统及其构件的技术专家 包括应用程序员 系统程序员 数据库程序员 网络管理员 安全管理员 Web站点管理员和软件集成员等 83 系统分析员 系统分析员Systemsanalyst 研究组织存在的问题和需求 确定人员 数据 过程和信息技术如何最大化地为企业做出贡献 84 系统分析员的角色 作为解决问题的人 真正的问题 实际的或者预期的 对这些问题需要采取正确的行动尽管还没有人抱怨 但可以改进现状的机会无论是否有人抱怨 都要改变现状的指示 85 系统分析员所需的技能 人的知识和技能人格与道德规范良好的与人沟通的能力良好的处理人际关系的能力灵活性和适应能力技术知识和技能系统分析与设计技能有效的信息技术知识业务知识和技能一般商业知识通用的解决问题的技能 86 1 不应使用计算机危害他人 2 不应干涉他人的计算机工作 3 不应偷窃他人的计算机文件 4 不应使用计算机进行偷窃活动 5 不应使用计算机做伪证 6 不应拷贝或使用没有付费的收费软件 7 不应未经授权或再没有恰当补偿的情况下使用他人的计算机资源 8 不应挪用他人的智力成果 9 应该注意你编写的程序或设计的系统所造成的社会后果 10 使用计算机时应该总是考虑到他人并尊敬他们 计算机道德的十条戒律 Source ComputerEthicsInstitute 87 项目经理 项目经理ProjectManager 经验丰富的从业人员 负责根据进度安排 预算 发布的产品 客户满意度 技术标准和系统质量 计划 监视和控制项目 88 2 CHAPTER 系统开发方法 89 学习要求 理解用于质量管理的能力成熟度模型 CMM 描述系统开发过程的目的阐述系统开发生命周期 SDLC 的不同阶段描述系统开发生命周期 SDLC 的一些变体描述贯穿信息系统开发基本阶段的几种常用开发方法阐述系统开发的当前趋势描述用于系统开发的各种自动化工具 90 系统开发过程 系统开发过程Systemdevelopmentprocess 是一组活动 方法 最佳实践 交付成果和自动化工具 系统开发的关联人员 第1章 用它们来开发和维护信息系统及软件 复杂产品使用标准开发过程来开发信息系统 使用一致的系统开发过程能够提高效率 管理层可以在项目之间调动资源一致的方法产生一致的文档 减少了维护系统的生命周期费用总之 提高质量 全面质量管理 能力成熟度模型的质量框架 91 系统开发过程对质量的影响 92 能力成熟度模型 1 能力成熟度模型CapabilityMaturityModel CMM 是用来评估组织的信息系统开发过程及管理过程和产品的成熟度等级的框架 由5个开发成熟度等级构成 Level1 初始级Initial 系统开发项目没有规定的过程可以遵循 Level2 可重复级Repeatable 组织已经建立了项目管理过程和实践来跟踪项目费用 进度和功能 重点在项目管理 Level3 已定义级Defined 组织已经购买或开发了一个标准的系统开发过程 或称为方法学 所有项目都是用这个软件开发过程来开发和维护信息系统和软件 Level4 已管理级Managed 组织建立了可度量的质量和生产率目标 Level5 优化级Optimizing 根据第4级建立的度量和数据分析 标准化的系统开发过程被连续地监督和改进 93 能力成熟度模型 2 94 系统生命周期和系统开发方法 系统生命周期Systemlifecycle 将一个信息系统的生命分为两个阶段 1 系统开发阶段 2 系统运行和维护阶段 首先建造系统 然后使用系统 运行系统并维护系统 最后从运行和维护阶段再回到开发阶段 系统开发方法Systemdevelopmentmethodology 是一个十分正式且精确的系统开发过程 它为系统开发人员和项目经理定义了 在CMM第3级 一组活动 方法 最佳实践 交付成果和自动化工具 用来开发和维护大部分或所有的信息系统和软件 95 系统开发的各个阶段 系统规划Systemplanning 是项目的初始规划 定义初始业务范围 目标 进度和预算 系统分析Systemanalysis 是研究业务问题领域 以推荐改进措施并说明方案的业务需求和优先权 系统设计Systemdesign 为系统分析阶段确定的业务需求设计一个技术性的基于计算机的方案 系统实现Systemimplementation 是构造 安装 测试和发布一个系统投入生产 系统支持和持续改进 维护和提升项目 96 系统规划之项目确定 问题Problem 是不期望发生的情况 它妨碍组织完整地实现其任务 愿景 目标和 或指示 机会Opportunity 是即使在没有出现具体问题的情况下也能改善组织的可能性 指示Directive 是一个由管理层 政府或者其他外部影响强加的新需求 97 问题分类框架PIECES P提高性能performance的需要I改进信息information 和数据 的需要E改进经济economics 控制成本或增加效益的需要C改进控制control或安全security的需要E改进人与过程的效率efficiency的需要S改进对客户 供应商 合作伙伴 雇员等的服务service的需要 98 系统规划阶段 系统规划 是项目的初始规划 用来定义项目范围 进度 预算以及所需的开发小组成员 最重要的活动就是准确地定义解决问题所需的项目范围 它定义了系统涉及的业务领域 而项目的进度和预算最终也受到项目范围的影响 参与者 系统所有者 系统分析员和项目经理 一般不包括系统用户 回答问题 这个项目是否值得 典型任务 列出触发项目的问题协商项目的初步范围评估项目价值计划项目进度表 预算和开发成员汇报项目计划关键发布物 项目计划 99 列出触发项目的问题 具体活动 确定触发项目的每个问题 并且按照紧急程度 可见性 收益 优先权进行评估以及给出合适的建议方案 参与者 项目经理或高级系统分析员领导该任务 系统所有者 完成任务使用的技术 调查研究 同系统所有者开会关键发布物 初始问题陈述 100 协商项目的初步范围 具体活动 定义了系统的边界 确定系统包括的业务以及不包括的业务 参与者 项目经理或高级系统分析员领导该任务 系统所有者 完成任务使用的技术 调查研究 同系统所有者开会关键发布物 项目范围陈述 101 评估项目价值 具体活动 在上述两个任务完成的基础上 通过可行性分析回答问题 这个项目是否值得 参与者 项目经理或高级系统分析员领导该任务 但系统所有者做出决策 完成任务使用的技术 可行性分析关键发布物 没有书面发布物 仅仅是做出 继续或不继续 的决定 102 计划项目进度表 预算和开发成员 具体活动 深入地计划项目 一个项目计划至少包括一个基线计划和下一个阶段的一个详细计划和进度表 参与者 项目经理 尽可能地让项目团队成员参与 完成任务使用的技术 PERT图 甘特图 联合项目计划 工作分解结构 关键路径分析关键发布物 基线计划和进度表 103 汇报项目计划 具体活动 向一个由非信息系统专家或管理人员构成的指导部门汇报项目计划以获得批准 参与者 主要负责人应该同项目经理一起推动该任务 其它参与者包括整个项目团队 所有感兴趣的雇员 完成任务使用的技术 有效的人际沟通能力是关键 包括说服 推销变化 商务写作和演讲关键发布物 项目计划 包括初始问题陈述 项目范围陈述 项目参与者 所采用的方法学 项目进度表和预算 交付成果等 104 系统分析阶段 系统分析 研究业务问题领域 从而给出改进措施并说明系统的业务需求和优先权 系统分析阶段的重点是业务问题和需求 这些需求独立于实现方案中可能使用的任何技术 系统分析阶段强调业务问题方面 而不是技术或实现方面 参与者 系统用户 系统分析员和项目经理 系统分析是系统开发生命周期的一个重要阶段 可以划分为四个子阶段 问题分析子阶段需求分析子阶段逻辑设计子阶段决策分析子阶段 105 问题分析子阶段 问题分析子阶段 研究现有系统 分析发现的问题 促使项目团队更深入地理解引发该项目的问题 参与者 系统所有者 项目经理 系统分析员 系统用户 主动包括 回答问题 真的值得开发一个新系统用来解决这些问题吗 典型任务 研究业务领域分析问题 可选的 分析并重构业务过程制定系统改进目标修改项目计划汇报调查结果和系统建议 106 研究业务领域 具体活动 了解当前系统 不同的角色对系统具有不同层次的理解 有着不同的详细程度 不同的表达方式以及不同的观点 参与者 由项目经理领导 资深系统分析员主持 也包括参与面谈 作记录的其它系统分析员 系统所有者和足够的系统用户代表 完成任务使用的技术 调查研究 尤其是联合需求计划 JRP 关键发布物 以文档形式记录的对问题领域和业务术语的理解 107 分析问题 具体活动 了解当前系统的基础上 项目团队同系统所有者和系统用户一起分析问题 参与者 由系统分析员推动该任务 系统所有者和系统用户应该主动地参与到因果分析中 完成任务使用的技术 调查研究技术 JRP技术以及因果分析法关键发布物 修改的问题陈述以及对每个问题的因果分析 108 分析并重构业务过程 具体活动 有些项目需要重构业务过程 这就要求项目团队十分详细地检查组织的业务过程 度量每个过程相对于整个组织增加或减少的价值 参与者 由在业务过程重构方面有经验的系统分析员主持该任务 系统所有者和系统用户要参与讨论分析 完成任务使用的技术 调查研究技术 JRP技术以及过程建模技术关键发布物 当前系统的过程模型和过程分析 109 制定系统改进目标 具体活动 在分析问题的基础上 可以制定系统改进目标 建立新系统成功的准则 对当前系统的任何改进将按照这个准则进行度量 当然也需要确定任何可能限制系统改进的约束条件 参与者 由系统分析员推动该任务 系统所有者和系统用户要参与讨论 关键发布物 精确的 可度量的定义新系统预期的业务性能陈述的系统改进目标 110 修改项目计划 具体活动 在对问题分析的基础上 需要重新评估项目范围 并相应地修改项目计划 参与者 整个项目团队一起推动该任务 系统分析员和系统所有者起关键作用 关键发布物 修改后的项目计划 111 汇报调查结果和系统建议 具体活动 向所有和项目相关的人员汇报调查结果和系统建议 参与者 主要负责人应该同项目经理一起推动该任务 其它参与者包括整个项目团队 所有感兴趣的雇员 关键发布物 系统建议的报告 112 需求分析子阶段 需求分析子阶段 定义业务需求 并为它们排序 参与者 项目经理 系统分析员 系统用户 回答问题 用户需要什么 希望从新系统中获得什么 典型任务 定义业务需求确定业务需求的优先级修改项目计划 113 定义业务需求 具体活动 根据问题分析子阶段确定的系统改进目标来定义业务需求 包括描述新系统必须提供的服务和活动的功能需求 以及描述新系统的性能 易学易用性 预算等的非功能需求 参与者 系统分析员 而系统设计人员和构造人员一般不参与该任务 完成任务使用的技术 JRP是快速整理业务需求的首选技术 其它需求获取的各种调查研究技术如面谈也是常用手段 在表述业务需求时还可以选择用例建模技术 关键发布物 各种形式的功能需求和非功能需求陈述 114 确定业务需求的优先级 具体活动 根据系统改进目标的重要性 相应的业务需求也具有不同的优先级别 参与者 系统所有者和用户制定实际的优先级 系统分析员推动该任务 完成任务使用的技术 调查研究技术 时间盒关键发布物 含优先级的业务需求 115 修改项目计划 具体活动 系统的业务需求确定之后 往往发现新系统的规模会变大 这时需要重新定义项目范围 并修改项目计划来调整项目进度 预算等约束条件 参与者 整个项目团队一起推动该任务 系统分析员和系统所有者起关键作用 关键发布物 修改后的项目计划 该计划包括后期逻辑设计子阶段的详细计划 116 逻辑设计子阶段 逻辑设计子阶段 将用户的业务需求转换成逻辑系统模型图 以验证系统的功能需求 这些模型图仅仅描述了业务需求 并不涉及任何技术设计或实现 参与者 系统分析员主持该任务 需要同系统用户交流来获取模型图的细节信息 回答问题 新系统必须实现什么 完成任务使用的技术 系统建模技术 构造原型技术关键发布物 逻辑设计模型和规格说明 117 决策设计子阶段 逻辑设计子阶段 系统分析向系统设计的过渡阶段 从对业务需求的关心转移到对技术实现的关心上来 确定候选方案 分析这些候选方案的可行性并推荐一个候选方案作为目标方案进行设计和实现 参与者 项目经理 系统分析员 系统设计员 系统用户回答问题 实现新系统的最佳方案是什么 典型任务 确定候选方案分析和比较候选方案修改项目计划汇报推荐的系统方案完成任务使用的技术 调查研究 JRP 可行性分析等关键发布物 系统方案建议 118 系统设计阶段 系统设计 在前期分析阶段获取 分析业务需求以及决策制定的基础上 具体设计系统的解决方案 从而为系统构造人员提供清晰完整的物理设计说明 详细的计算机系统方案的规格说明 关注的是系统的技术方面 参与者 项目经理 系统分析员 系统设计人员 系统用户 部分 回答问题 系统方案如何实现 典型任务 设计系统架构设计系统数据库设计输出 输入和用户界面整理物理设计说明修改项目计划关键发布物 物理设计模型和规格说明 设计原型 119 系统实施阶段 系统实施 构造 测试 安装和发布一个新系统投入运行 参与者 项目经理 系统分析员 系统用户 系统设计员 有时 系统构造员典型任务 建造和测试网络建造和测试数据库安装和测试新软件包 若采用外部购买软件的开发方式 编写和测试新程序 若采用内部编制软件的开发方式 进行系统测试准备转换计划安装数据库培训用户转化到新系统关键发布物 功能系统 运行系统 120 系统支持阶段 系统支持 是处理可能出现的错误或新的需求所需的维护工作 包括程序维护 系统恢复 技术支持和系统改进4类活动 系统支持需要花费大量的时间和金钱 而本课程所介绍的系统分析与设计方法均是为了减少系统支持的费用 随着时间的推移 所有的系统都会老化 当支持不再合算时 系统就要退役了 这时也会启动新的系统开发项目来替换这个系统 至此 一个完整的系统开发生命周期就展现在你的面前了 121 瀑布模型 122 迭代开发 123 系统开发生命周期的变体 各阶段名称的变体对基本瀑布模型改进的变体 124 系统开发基本原理 尽可能地让系统用户参与到开发中来使用一种可以度量且被证实的系统开发生命周期在开发过程中适当地记录文档采用渐进的方式逐步投入保持持续的过程管理和项目管理 125 方法 模型 方法 提供完成系统开发生命周期各阶段的详细指导 包括具体的活动 使用的模型 采用的技术以及辅助的工具 有代表性的系统开发方法包括结构化开发 面向对象开发 快速应用开发 结构化快速应用开发 信息工程 联合应用开发 Rational统一过程开发 极限编程等 模型 现实世界的抽象 在系统开发过程中 通过系统模型表示系统的现实情况或者希望的情况 描述系统的有代表性的模型包括上下文图 用例图 数据流图 实体关系图 类图 交互图 程序流程图等 126 技术 工具 技术 帮助开发人员完成系统开发的任务和活动 如为创建模型提供指导 或者为从系统用户那里获取业务需求提供建议 常用的系统开发技术包括结构化分析技术 结构化设计技术 调查研究技术 数据建模技术 过程建模技术 面向对象建模技术 数据库设计技术 人机交互技术 编程技术 软件测试技术等 工具 用于辅助开发人员更方便地完成系统开发的任务和活动 如创建模型图的简单绘制程序 或者集成开发环境 IDE 工具是为了帮助系统开发人员而专门设计的 常用的系统开发工具包括计算机辅助工程设计系统工程 CASE 工具 IDE 文本编辑器 绘图应用程序 数据库管理应用程序 代码生成工具 项目管理应用程序等 127 有代表性的系统开发方法 传统开发方法结构化系统开发方法信息工程面向对象开发方法原型化和快速应用开发 ArchitectedRAD 商用应用软件包开发方法 128 结构化系统开发方法的特点 自顶向下整体性的分析与设计和自底向上逐步实施的系统开发过程 在系统分析与设计时要从整体全局考虑 自顶向下地分解 而在系统实现时 则要根据设计的要求先编制一个个具体的功能模块 然后自底向上逐步实现整个系统 面向用户 用户对系统开发的成败是至关重要的 故在系统开发过程中要充分考虑用户的需求和愿望 尽可能地让用户参与进来 以提高系统的开发效率和质量 严格区分工作阶段 把整个系统开发过程划分为若干个阶段 每个阶段都有其明确的任务和目标 强调一步一步地严格地进行系统分析和设计 每一步工作都及时地总结 发现问题及时地反馈和纠正 从而避免了开发过程的混乱状态 开发过程工程化 要求开发过程的每一步都按工程标准规范化 文档资料标准化 129 面向对象开发方法 认为信息系统是由一组为完成某个任务而相互作用的对象组成 对象是某种存在的或者能被感知到的事物 是客观世界中的实体抽象 UML主要的优点是自然性和可复用性 和传统开发方法的不同 传统方法认为系统是处理过程的集合 处理与数据实体的交互 处理过程的输入和输出数据 而面向对象方法认为系统是对象的集合 对象通过消息与其它对象相互作用完成某个任务 130 原型化方法 强调构造原型然后观察用户对原型的反应 使用原型的开发方法 原型化方法是快速收集有关用户需求的特定信息的重要技术通常使用两类原型系统一是在需求分析阶段 为了获取或明确用户的系统需求的发现型原型系统 二是在整个开发期间 被反复开发直到成为最终系统的发展型原型系统 原型化方法的适用范围 131 快速应用开发 是一种面向对象的系统开发方法 强调用户深入地参与到一系列工作原型的快速进化和构造过程中 以加速系统的开发过程 工作原型进化成最终的信息系统 可看作原型化方
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年厦门清大海峡私募基金管理有限公司人员招聘备考题库带答案详解
- 重庆市秀山自治县事业单位2025年“绿色通道”引进高层次人才6名备考题库及一套答案详解
- 2025年庆阳职业技术学院公开引进高层次急需紧缺人才12人备考题库及答案详解(考点梳理)
- 贵州城市职业技工学校2025年招聘备考题库及答案详解(考点梳理)
- 2025-2030药品行业市场现状分析供需关系投资前景评估规划文本报告
- 2025-2030药品研发行业经济效益研究及新规影响与投资方向分析研究
- 指纹门禁终端机用户手册中性样本
- 2026年内蒙古能源职业学院单招职业适应性考试题库附参考答案详解(黄金题型)
- 2026年南充职业技术学院单招职业适应性考试题库及答案详解(历年真题)
- 2026年内蒙古美术职业学院单招职业技能考试题库及答案详解(各地真题)
- 江苏省江阴市普通高中2026年高三4月模拟考试生物试题试卷含解析
- 2026新余市12345政务服务便民热线招聘5人笔试备考试题及答案解析
- 2026年社工证考试试题及答案
- 2026届北京市东城区高三语文期末试题及答案
- 涉爆知识培训
- 地方扑火队管理制度
- 《广告文案写作教程(第四版)》课件 第一章
- 《设计原理》课件
- 信访工作法治化培训讲座
- 学校食堂运营规划
- 上海市2024年中考英语试题及答案
评论
0/150
提交评论