fbpx
维基百科

系统发展生命周期

系统发展生命周期(英語:System Development Life CycleSDLC),也称软件生命周期,是系统工程信息系统软件工程中的术语,用于描述一个信息系统从规划、创建、测试到最终完成部署的全过程[1]。系统开发生命周期的概念对于硬件和软件系统都是適用的,这些系统可能只由硬件或软件组成,也可能两者都有[2]

系统开发生命周期模型,强调维护阶段。

概述 编辑

系统发展生命周期由一系列明确定义的不同工作阶段组成,有助于系统工程师和系统开发人员利用对系统的设计、构建、测试和交付进行计划。就像任何在生产装配线上制造的东西一样,SDLC的目标是根据客户需求生产满足或超越客户的期望的高质量的系统。所发布的系统经过了每一个工作阶段,其中包括了时间时限和成本估计[3]。计算机系统是复杂的(尤其是近期兴起的面向服务的体系结构),通常涉及到多个传统系统,这些系统可能需要由不同的软件供应商提供。管理这种级别的复杂性,许多SDLC模型或方法被创建,如“瀑布模型”、“螺旋模型”、“敏捷软件开发”、“快速原型模型”、“增量模型”;和“同步及稳定”[4]

SDLC可以看做一个快速迭代的过程。敏捷的方法,如XPScrum,专注于轻量级进程,这些轻量级进程在开发周期中允许快速的变化(不一定要按照SDLC的开发模型)。迭代法,例如统一软件开发过程动态系统开发方法英语Dynamic systems development method,专注于有限的项目范围并通过多个迭代来扩大或改善产品由。顺序模型或预先大量设计模型(BDUF)、如瀑布模型、关注于完整和正确的规划来指导大型项目、估计取得成功的风险,保证结果的可预测性。其他模式,如变形开发(Anamorphic development),倾向于由项目范围和功能的迭代来指导系统开发。

在项目管理中一个项目既可以用项目生命周期(PLC)定义,也可以用SDLC定义,其中会有几个步骤略有不同。根据泰勒(2004)所说,“项目生命周期包括了所有專案的內容,而系统开发生命周期关注于实现产品需求”[5]

SDLC在开发IT项目时中被使用,它描述了完成项目所要涉及到的不同阶段。

历史 编辑

产品生命周期结构化地描述了信息系统的构建过程,重申产品生命中的每一个阶段。根据艾略特和斯特拉和雷德福(2004)所说,系统开发生命周期“起源于1960年代,用于在大型企业时代大规模地开发功能性商用系统。这些信息系统的活动将涉及大规模的数据以及数据处理例程”。[6]

还有很多系统开发框架在一定程度上借鉴了SDLC的模型,如1980年代的结构化系统分析和设计方法(SSADM),用于生产英国政府商务办公室系统。根据艾略特(2004)所说,“传统的系统开发生命周期方法逐渐被其他方法和框架取代,这些方法试图克服传统SDLC模型的一些固有缺陷”[6]

系统分析与设计 编辑

系统分析与设计(SAD)通过有效地使用硬件、软件、数据、流程、和人力资源来支持公司的商业目标,是开发高效信息系统(IS)的一个重要过程。系统分析和设计有助于做好开发前的准备和约束问题的范围。系统分析与设计权衡在功能性和非功能性需求,并在两者之间形成平衡。系统分析与设计和分布式企业架构、企业I.T.体系结构和业务体系结构有着紧密的联系, 要达到高等级的系统描述,很大程度上依赖于分割、接口、角色和部署建模。这个高水平描述可以被进一步分解为可以被分析、设计的组件模块,这些组件和模块被分开构建,最终集成以实现业务目标。SDLC和SAD是系统规划和生命完整产品的基础。

优势与劣势 编辑

在现代计算机界很少人会在SDLC中严格使用瀑布模型,因为已经有很多的现代方法取代了这种想法。有些人会认为SDLC已经不再适用一些模型,比如敏捷开发,但它仍然是科技界的一个广泛使用的术语。SDLC在系统开发的传统模型上有优势, 更适合结构化环境。SDLC方法的缺点在于,在项目需要迭代开发时,如:web开发、电子商务开发,项目组需要定期检查软件设计,SDLC就不实用了。与其说讨论SDLC的优缺点,更重要的应该是借鉴SDLC的实践模型,将其应用到现代软件设计中。

SDLC的优势与劣势对比 编辑

SDLC的优势与劣势[7]

  • 优势:控制;监控大型项目;步骤具体;预先评估成本和达成目标;文档完整;定义良好的用户输入;易于维护;标准化的设计和开发;能够容忍开发团队中的人员变化
  • 劣势:增加了开发时间;增加开发成本;系统必须预先定义;刻板;很难估计成本,导致项目超支;用户输入有时是受限的

快速应用程序开发(RAD)是SDLC的一个替代品,它结合原型模型,将应用程序开发和CASE工具的实现相结合。RAD的优点是速度快,降低了开发成本,并且使用户更积极地参与开发过程。

参考资料 编辑

  1. ^ SELECTING A DEVELOPMENT APPROACH (页面存档备份,存于互联网档案馆). Retrieved 17 July 2014.
  2. ^ Parag C. Pendharkara. Information and Software Technology 50 (12). Corresponding author contact information, E-mail the corresponding author, James A. Rodgerb, Girish H. Subramanian. Science Direct: 1181–1188. November 2008 [2015-05-29]. doi:10.1016/j.infsof.2007.10.019. (原始内容于2015-09-24). 
  3. ^ [ttp://foldoc.org/Systems+Development+Life+Cycle Systems Development Life Cycle from]. FOLDOC. [2013-06-14]. (原始内容于2021-05-12). 
  4. ^ Software Development Life Cycle (SDLC) (页面存档备份,存于互联网档案馆), Power Point, – Powered by Google Docs
  5. ^ James Taylor (2004). Managing Information Technology Projects. p.39..
  6. ^ 6.0 6.1 Geoffrey Elliott & Josh Strachan (2004) Global Business Information Technology. p.87.
  7. ^ Post, G., & Anderson, D., (2006). Management information systems: Solving business problems with information technology. (4th ed.). New York: McGraw-Hill Irwin.

参见 编辑

系统发展生命周期, 英語, system, development, life, cycle, sdlc, 也称软件生命周期, 是系统工程, 信息系统和软件工程中的术语, 用于描述一个信息系统从规划, 创建, 测试到最终完成部署的全过程, 系统开发生命周期的概念对于硬件和软件系统都是適用的, 这些系统可能只由硬件或软件组成, 也可能两者都有, 系统开发生命周期模型, 强调维护阶段, 目录, 概述, 历史, 系统分析与设计, 优势与劣势, sdlc的优势与劣势对比, 参考资料, 参见概述, 编辑由一系列明确定义的不同. 系统发展生命周期 英語 System Development Life Cycle SDLC 也称软件生命周期 是系统工程 信息系统和软件工程中的术语 用于描述一个信息系统从规划 创建 测试到最终完成部署的全过程 1 系统开发生命周期的概念对于硬件和软件系统都是適用的 这些系统可能只由硬件或软件组成 也可能两者都有 2 系统开发生命周期模型 强调维护阶段 目录 1 概述 2 历史 3 系统分析与设计 4 优势与劣势 4 1 SDLC的优势与劣势对比 5 参考资料 6 参见概述 编辑系统发展生命周期由一系列明确定义的不同工作阶段组成 有助于系统工程师和系统开发人员利用对系统的设计 构建 测试和交付进行计划 就像任何在生产装配线上制造的东西一样 SDLC的目标是根据客户需求生产满足或超越客户的期望的高质量的系统 所发布的系统经过了每一个工作阶段 其中包括了时间时限和成本估计 3 计算机系统是复杂的 尤其是近期兴起的面向服务的体系结构 通常涉及到多个传统系统 这些系统可能需要由不同的软件供应商提供 管理这种级别的复杂性 许多SDLC模型或方法被创建 如 瀑布模型 螺旋模型 敏捷软件开发 快速原型模型 增量模型 和 同步及稳定 4 SDLC可以看做一个快速迭代的过程 敏捷的方法 如XP和Scrum 专注于轻量级进程 这些轻量级进程在开发周期中允许快速的变化 不一定要按照SDLC的开发模型 迭代法 例如统一软件开发过程和动态系统开发方法 英语 Dynamic systems development method 专注于有限的项目范围并通过多个迭代来扩大或改善产品由 顺序模型或预先大量设计模型 BDUF 如瀑布模型 关注于完整和正确的规划来指导大型项目 估计取得成功的风险 保证结果的可预测性 其他模式 如变形开发 Anamorphic development 倾向于由项目范围和功能的迭代来指导系统开发 在项目管理中一个项目既可以用项目生命周期 PLC 定义 也可以用SDLC定义 其中会有几个步骤略有不同 根据泰勒 2004 所说 项目生命周期包括了所有專案的內容 而系统开发生命周期关注于实现产品需求 5 SDLC在开发IT项目时中被使用 它描述了完成项目所要涉及到的不同阶段 历史 编辑产品生命周期结构化地描述了信息系统的构建过程 重申产品生命中的每一个阶段 根据艾略特和斯特拉和雷德福 2004 所说 系统开发生命周期 起源于1960年代 用于在大型企业时代大规模地开发功能性商用系统 这些信息系统的活动将涉及大规模的数据以及数据处理例程 6 还有很多系统开发框架在一定程度上借鉴了SDLC的模型 如1980年代的结构化系统分析和设计方法 SSADM 用于生产英国政府商务办公室系统 根据艾略特 2004 所说 传统的系统开发生命周期方法逐渐被其他方法和框架取代 这些方法试图克服传统SDLC模型的一些固有缺陷 6 系统分析与设计 编辑系统分析与设计 SAD 通过有效地使用硬件 软件 数据 流程 和人力资源来支持公司的商业目标 是开发高效信息系统 IS 的一个重要过程 系统分析和设计有助于做好开发前的准备和约束问题的范围 系统分析与设计权衡在功能性和非功能性需求 并在两者之间形成平衡 系统分析与设计和分布式企业架构 企业I T 体系结构和业务体系结构有着紧密的联系 要达到高等级的系统描述 很大程度上依赖于分割 接口 角色和部署建模 这个高水平描述可以被进一步分解为可以被分析 设计的组件和模块 这些组件和模块被分开构建 最终集成以实现业务目标 SDLC和SAD是系统规划和生命完整产品的基础 优势与劣势 编辑在现代计算机界很少人会在SDLC中严格使用瀑布模型 因为已经有很多的现代方法取代了这种想法 有些人会认为SDLC已经不再适用一些模型 比如敏捷开发 但它仍然是科技界的一个广泛使用的术语 SDLC在系统开发的传统模型上有优势 更适合结构化环境 SDLC方法的缺点在于 在项目需要迭代开发时 如 web开发 电子商务开发 项目组需要定期检查软件设计 SDLC就不实用了 与其说讨论SDLC的优缺点 更重要的应该是借鉴SDLC的实践模型 将其应用到现代软件设计中 SDLC的优势与劣势对比 编辑 SDLC的优势与劣势 7 优势 控制 监控大型项目 步骤具体 预先评估成本和达成目标 文档完整 定义良好的用户输入 易于维护 标准化的设计和开发 能够容忍开发团队中的人员变化 劣势 增加了开发时间 增加开发成本 系统必须预先定义 刻板 很难估计成本 导致项目超支 用户输入有时是受限的快速应用程序开发 RAD 是SDLC的一个替代品 它结合原型模型 将应用程序开发和CASE工具的实现相结合 RAD的优点是速度快 降低了开发成本 并且使用户更积极地参与开发过程 参考资料 编辑 SELECTING A DEVELOPMENT APPROACH 页面存档备份 存于互联网档案馆 Retrieved 17 July 2014 Parag C Pendharkara Information and Software Technology 50 12 Corresponding author contact information E mail the corresponding author James A Rodgerb Girish H Subramanian Science Direct 1181 1188 November 2008 2015 05 29 doi 10 1016 j infsof 2007 10 019 原始内容存档于2015 09 24 ttp foldoc org Systems Development Life Cycle Systems Development Life Cycle from FOLDOC 2013 06 14 原始内容存档于2021 05 12 Software Development Life Cycle SDLC 页面存档备份 存于互联网档案馆 Power Point Powered by Google Docs James Taylor 2004 Managing Information Technology Projects p 39 6 0 6 1 Geoffrey Elliott amp Josh Strachan 2004 Global Business Information Technology p 87 Post G amp Anderson D 2006 Management information systems Solving business problems with information technology 4th ed New York McGraw Hill Irwin 参见 编辑 nbsp 工程主题 nbsp 信息技术主题 敏捷软件开发 迭代式开发 软件开发 取自 https zh wikipedia org w index php title 系统发展生命周期 amp oldid 70416417, 维基百科,wiki,书籍,书籍,图书馆,

文章

,阅读,下载,免费,免费下载,mp3,视频,mp4,3gp, jpg,jpeg,gif,png,图片,音乐,歌曲,电影,书籍,游戏,游戏。