精华内容
下载资源
问答
  • 一般来讲,根据产品演化过程可以把产品生命周期划分为概念产生、设计、采购、制造、销售和服务等几个阶段,每个阶段都包含特定的活动、产生相应的信息、涉及到相关的人员和部门。1)概念产生阶段在众多的产品开发案例...
  • 软件生命周期阶段

    万次阅读 2016-12-16 16:04:00
    软件的生命周期,亦称软件的生存周期。它是按开发软件的规模和复杂程度,从时间上把软件开发的整个过程(从计划开发开始到软件报废为止的整个历史阶段)进行分解,形成相对独立的几个阶段,每个阶段又分解成几个具体...

    软件的生命周期,亦称软件的生存周期。它是按开发软件的规模和复杂程度,从时间上把软件开发的整个过程(从计划开发开始到软件报废为止的整个历史阶段)进行分解,形成相对独立的几个阶段,每个阶段又分解成几个具体的任务,然后按规定顺序依次完成各阶段的任务并规定一套标准的文档作为各个阶段的开发成果,最后生产出高质量的软件。

     

    1、问题的定义及规划

     

    此阶段是软件开发方与需求方共同讨论,主要确定软件的开发目标及其可行性。

     

    2、需求分析

     

    在确定软件开发可行的情况下,对软件需要实现的各个功能进行详细分析。需求分析阶段是一个很重要的阶段,这一阶段做得好,将为整个软件开发项目的成功打下良好的基础。"唯一不变的是变化本身。",同样需求也是在整个软件开发过程中不断变化和深入的,因此我们必须制定需求变更计划来应付这种变化,以保护整个项目的顺利进行。

     

    3、软件设计

     

    此阶段主要根据需求分析的结果,对整个软件系统进行设计,如系统框架设计,数据库设计等等。软件设计一般分为总体设计和详细设计。好的软件设计将为软件程序编写打下良好的基础。

     

    4、程序编码

     

    此阶段是将软件设计的结果转换成计算机可运行的程序代码。在程序编码中必须要制定统一,符合标准的编写规范。以保证程序的可读性,易维护性,提高程序的运行效率。 

     

    5、软件测试

     

    在软件设计完成后要经过严密的测试,以发现软件在整个设计过程中存在的问题并加以纠正。整个测试过程分单元测试、组装测试以及系统测试三个阶段进行。测试的方法主要有白盒测试和黑盒测试两种。在测试过程中需要建立详细的测试计划并严格按照测试计划进行测试,以减少测试的随意性。

     

    6、运行维护

     

    软件维护是软件生命周期中持续时间最长的阶段。在软件开发完成并投入使用后,由于多方面的原因,软件不能继续适应用户的要求。要延续软件的使用寿命,就必须对软件进行维护。软件的维护包括纠错性维护和改进性维护两个方面。 

    展开全文
  • 项目生命周期 项目的生命周期是描述项目从开始到结束所经历...项目设阶段的目的是为了管控的需要,每一个阶段都可以当成是一个子项目,每一个阶段中都可以执行项目管理生命周期定义的五大过程组。阶段结束时要进行阶段

      接受项目管理培训至今已经有三年时间了,一直没有机会来整理一下自己在项目管理方面的学习历程和经验。好记性不如烂笔头,从今天开始就一步一步分享一下我在项目管理方面的学习历程以及一些在工作中累积的经验,希望可以帮助到从事项目管理的人!

      在前面的博文项目管理 之一 软件开发生命周期(软件开发过程、瀑布模型、敏捷开发等) 中我们说过 软件开发生命周期 ≠ 项目的开发周期。接下来就再进一步,站在整个项目的角度来了解一下软件项目管理。

    注意:

    1. 这部分仅仅是自己学习记录的一些总结,所以内容大多数都是来自互联网或者各种书籍。如果您发现对您构成了侵权,请随时联系我进行处理。
    2. 这部分内容都是一些理论,实际项目中往往与理论有所不同。例如,阶段划分更加详细,项目活动可裁剪等

    项目管理

      项目这个概念非常的广泛,项目管理同样是个范围很大的概念。项目管理是管理学的一个分支学科 ,对项目管理的定义是:指在项目活动中运用专门的知识、技能、工具和方法,使项目能够在有限资源限定条件下,实现或超过设定的需求和期望的过程。所谓管理包含领导、组织、用人、计划及控制等五项主要工作。

    项目(Project)是为完成某一独特的产品、服务或成果所做的临时性工作。临时性是指计划有确定的开始日期和结束日期。独特意味着项目的最终结果不重复。

      作为一门学科,项目管理从土木施工、工程、重型国防等多个应用领域发展而来。20 世纪 50 年代项目管理被公认为具有工程模式的管理学科所产生的一门独特的学科。1969 年,项目管理研究所(PMI)在美国成立。PMI 于 1996 年出版了第一版《项目知识管理机构指南》(PMBOK 指南)。这本书是必看的!本文的有些内容就是来自这本指南。

    • PMBOK 每 4 年会更新一次,目前中国使用的官方教材为第六版
    • 全球项目管理业界定义的最重要的价值观是责任、尊重、公正和诚实
    • PMBOK 指南为项目经理提供了指导方针和最佳实践,定义了从项目生命周期到项目管理策略和概念的一切内容。项目管理知识体系指南详细描述了在整个项目生命周期中相互作用和重叠的各种项目管理过程。

      项目管理方法可应用于任何类型的项目。它通常根据项目规模、性质、行业或部门为特定类型的项目量身定做。例如,以建筑、道路和桥梁等工程的交付为重点的建筑行业已经发展了自己的专业项目管理形式,称为建筑项目管理;我们软件行业则有我们的软件项目管理。

    接下来,我们来区分一下三个比较容易混淆的概念:项目生命周期、项目管理生命周期、产品生命周期
    在这里插入图片描述

    项目生命周期

      项目的生命周期是描述项目从开始到结束所经历的各个阶段。通常由 启动阶段、组织与准备阶段(规划阶段)、实施阶段、结束阶段 这四阶段个组成。每个阶段确定了开始和结束点,每个阶段都有质量保证 QA / 质量测试 QC 人员对阶段的里程碑点进行检查并进行相应的阶段评审。
    在这里插入图片描述
      项目阶段是一组具有逻辑关系的项目活动的集合,通常以一个或多个可交付成果的完成为结束。 阶段通常有先后的顺序(如瀑布型),也可以有阶段的交叠。不同行业,不同规模的项目,项目生命周期可以不同。

    项目活动 是确认和描述项目的特定活动,它把项目的组成要素加以细分为可管理的更小部分,以便更好地管理和控制。

      项目规划阶段的目的是为了管控的需要,每一个阶段都可以当成是一个子项目,每一个阶段中都可以执行项目管理生命周期定义的五大过程组。阶段结束时要进行阶段评审。由于项目有特定的目标,在产品生命周期中,一般产品完成后通过验收则项目生命周期即结束。

      项目阶段并没有严格的划分标准。这里所说的 4 个阶段仅仅是指的一般情况。一个具体的项目可以根据项目所属专业领域的特殊性和项目的工作内容等因素划分成不同的项目阶段。

    启动阶段

      启动阶段是整个项目生命周期的第一阶段。这一阶段的目标是确定项目,并获得批准。在此期间,通常有以下项目活动需要项目经理来处理:

    • 需求调研
    • 进行可行性研究
    • 创建项目章程
    • 确定关键利益相关者
    • 选择合适的项目管理方法
    • 选择项目管理工具

    通常,从项目启动会议开始,项目经理向所有相关利益相关者概述项目目标。在会议召开之前,项目经理必须执行以下工作:

    1. 建立目标和可交付成果
    2. 识别团队成员并分配任务
    3. 制定项目计划草案
    4. 定义用于衡量项目成功的指标
    5. 识别和准备潜在的路障
    6. 建立团队沟通的物流和时间表
    7. 选择首选的项目管理方法
    8. 确保您的团队能够访问相关工具并了解相关工具
    9. 安排会议
    10. 设置议程并准备幻灯片

    启动会议议程可能如下所示:

    • 简介:谁是谁?
    • 项目背景:您为什么要进行这个项目? 目标是什么?
    • 项目范围:涉及哪种工作?
    • 项目计划:路线图是什么样的?
    • 角色:谁负责项目的哪些元素?
    • 交流:将使用哪种交流渠道? 您的团队应该期望什么样的会议或状态报告?
    • 工具:将使用哪些工具来完成项目,以及如何使用它们?
    • 后续步骤:需要完成哪些立即行动项目?
    • 问答(Q&A):现场答疑

    到此阶段结束时,项目经理应对项目的目的、目标、要求和风险有更深入的了解。

    规划阶段

      规划阶段对于创建整个团队可以遵循的项目路线图至关重要。为了满足组织提出的要求,所有的细节和目标都在这里列出。在此阶段,通常有以下项目活动需要项目经理来处理:

    • 创建项目计划
    • 制定资源计划
    • 评估项目预算
    • 定义目标和绩效衡量指标
    • 向团队成员传达角色和责任
    • 构建工作流
    • 预测风险并制定应急计划
    • 制定沟通交流计划(可能是会议、交流工具)

    执行阶段

      这个阶段是项目投入时间最多的阶段。可交付品的构建是为了确保项目符合要求。这也是大多数时间、金钱和人被投入的阶段。

      在执行阶段必须时刻对项目进行控制和监测(严格来说,项目的每个阶段都可以控制和监测)。随着项目的推进,项目经理必须确保所有活动的部分都朝着正确的方向无缝地进行。如果由于不可预见的情况或方向的改变而需要对项目计划进行调整,则可能会在这里进行调整。在控制和监测中,项目经理(有可能是公司中专门的 QA 人员)可能需要做以下工作:

    • 管理资源
    • 监控项目性能
    • 风险管理
    • 质量管理
    • 成本管理
    • 变更管理(更新项目计划、修改项目计划)
    • 执行状态会议和报告
    • 协作、沟通

    项目关闭

      结束阶段是项目生命周期的关键一步。它标志着项目的正式结束,并为反思、总结和组织材料提供了一段时间。通常有以下项目活动需要项目经理来处理:

    • 盘点所有可交付成果
    • 处理好任何零碎的事情
    • 将项目移交给客户或负责项目日常运营的团队
    • 进行事后分析,讨论并记录从项目中学到的任何东西
    • 集中组织所有项目文件
    • 与利益相关者和主管沟通项目的成功
    • 庆祝项目完成并感谢团队成员

    阶段关口

    阶段关口在项目阶段结束时进行,将项目的绩效和进度与项目和业务文件比较,这些文件包括 (但不限于):

    • 项目商业论证
    • 项目章程
    • 项目管理计划
    • 效益管理计划

    根据比较结果做出决定(例如继续/终止的决定),以便:

    • 进入下个阶段;
    • 整改后进入下个阶段;
    • 结束项目;
    • 停留在当前阶段;
    • 重复阶段或某个要素。

    在不同的组织、行业或工作类型中,阶段关口可能被称为阶段审查、阶段门、关键决策点和阶段入口或阶段出口。

    项目管理生命周期

      项目管理生命周期是对项目目标的实现进行管理的过程。项目生命周期每个阶段都是通过一系列项目管理活动进行的。这些管理活动被称为项目管理过程。 每个项目管理过程通过合适的项目管理工具和技术将一个或多个输入转化成一个或多个输出。

    项目生命周期的每个阶段都要执行项目管理生命周期
    项目管理的输出一般都是些项目标准文档

      项目管理过程组指对项目管理过程进行逻辑分组,以达成项目的特定目标。过程组不同于项目阶段。项目管理过程可分为以下五个项目管理过程组:

    • 启动过程组: 定义一个新项目或现有项目的一个新阶段,授权开始该项目或阶段的一组过程。
    • 规划过程组: 明确项目范围,优化目标,为实现目标制定行动方案的一组过程。
    • 执行过程组: 完成项目管理计划中确定的工作,以满足项目要求的一组过程。
    • 监控过程组: 跟踪、审查和调整项目进展与绩效,识别必要的计划变更并启动相应变更的一 组过程。
    • 收尾过程组: 正式完成或结束项目、阶段或合同所执行的过程。

      但是,需要注意 阶段 ≠ 过程组。不同行业,不同规模项目的项目管理生命周期大致相同。项目管理生命周期的过程是 PMP(Project Management Professional​) 考试的主要考试范围。

    除了过程组,过程还可以按知识领域进行分类,分为 10 个知识领域(其中始终关注的是范围、进度、成本和质量):

    • 项目整合管理: 包括为识别、定义、组合、统一和协调各项目管理过程组的各个过程和活动而开展的过程与活动。
    • 项目范围管理: 包括确保项目做且只做所需的全部工作以成功完成项目的各个过程。
    • 项目进度管理: 包括为管理项目按时完成所需的各个过程。
    • 项目成本管理: 包括为使项目在批准的预算内完成而对成本进行规划、估算、预算、融资、筹资、管理和控制的各个过程
    • 项目质量管理: 包括把组织的质量政策应用于规划、管理、控制项目和产品质量要求,以满足相关方的期望的各个过程。
    • 项目资源管理: 包括识别、获取和管理所需资源以成功完成项目的各个过程。
    • 项目沟通管理: 包括为确保项目信息及时且恰当地规划、收集、生成、发布、存储、检索、管理、控制、监督和最终处置所需的各个过程。
    • 项目风险管理: 包括规划风险管理、识别风险、开展风险分析、规划风险应对、实施风险应对和监督风险的各个过程。
    • 项目采购管理: 包括从项目团队外部采购或获取所需产品、服务或成果的各个过程。
    • 项目相关方管理: 包括用于开展下列工作的各个过程:识别影响或受项目影响的人员、团队或组织,分析相关方对项目的期望和影响,制定合适的管理策略来有效调动相关方参与项目决策和执行。

    下图显示了管理过程朱与知识领域的对应关系以及在过程中需要的工作:
    在这里插入图片描述

    裁剪

      由于每个项目都是独特的,所以有必要对项目管理过程进行裁剪;并非每个项目都需要《PMBOK® 指南》所确定的每个过程、工具、技术、输入或输出。裁剪应处理关于范围、进度、成本、资源、质量和风险的相互竞争的制约因素。各个制约因素对不同项目的重要性不一样,项目经理应根据项目环境、组织文化、相关方需求和其他变量裁剪管理这些制约因素的方法。

    产品生命周期

      产品生命周期管理的是产品,包括一系列产品阶段:市场调研、产品研发、试产、量产、运营、维护和退市。产品生命周期通常包含顺序排列且不互相交叉的一系列产品阶段。

    产品生命周期指一个产品从概念、交付、成长、成熟到衰退的整个演变过程的一系列阶段。

      产品生命周期由一个或多个项目生命周期组成,也可能分为多个迭代周期来实现。 而项目生命周期也可开发一个或多个产品。一个项目生命周期通常只包含在一个产品生命周期中。在项目生命周期结束即项目完成后,而产品生命周期还需进行产品的运营、维护和退市等阶段。

      与产品生命周期相对应的成本概念是全生命周期成本,包括一次性的项目软硬件投入(一次性成本),以及 3 - 5 年运营或运维成本(持续成本)。

    三重关系

      三重约束,又称项目管理三角,是指适用于每个项目的时间、质量和成本界限。负责控制这些限制的项目管理流程包括进度管理、成本管理和质量管理。下图显示了软件项目的三个限制的关系。
    限制

    我在学习中发现,有部分文章中,质量 被替换为 范围,即:时间、范围和成本。

    软件项目管理

      到目前为止,仍然有很多人有疑问:软件开发项目到底能不能称为项目?这与对于软件工程能不能算是工程的疑问类似。在某些人的认识中,项目或者说工程更多的是指工业建筑中的专有名词。

      自 20 世纪 60 年代以来,软件制造商自行开发了几种专有的软件项目管理方法。今天,软件项目管理方法仍在不断发展,但是当前的趋势已从瀑布模型转移到了模仿软件开发过程的更具周期性的项目交付模型。

      软件项目管理(Software Project Management)就是为了使软件项目能够按照预定的成本、进度、质量顺利完成,而对人员(People)、产品(Product)、过程(Process)和项目(Project)进行分析和管理的活动。通常,可以将软件开发项目可以分为两大类:

    • 软件项目: 运行于已有通用硬件上的软件系统。例如,PC 上运行的软件,服务器上运行的网站。
    • 系统项目: 运行于特定硬件上的软件系统,除了要开发软件,还要开发对应的硬件。例如各种嵌入式设备。

    如果没有特殊说明,后文我们所说的软件项目管理均指这两种类型的统称。

      软件工程项目管理不同于传统的项目管理,因为软件项目具有独特的生命周期过程,需要多轮测试、更新和客户反馈。目前,大多数 IT 相关项目都以敏捷的风格进行管理,以跟上业务增长的步伐,并根据客户和利益相关者的反馈进行重复。

    过程方法

    2017 年的一项研究显示,任何项目的成功取决于四个关键方面,这些方面被称为 4P :

    1. 计划(Plan):指所有涉及规划和预测的活动。在这个阶段,项目或项目的要素尚未实现;
    2. 过程(Processes):项目管理知识体(PMBOK, Project Management Body of Knowledge)指南中记述,项目主要由一系列预定和结构良好的过程所组成;
    3. 人员(People):人员是项目动态的重要组成部分,一些研究表明,人员是某些项目特有问题的核心。所谓“可怕的结合”,特别是指规划不善和不适当人员的构成;
    4. 权责(Power):描述当局所有的权力与责任、决策者、组织图,执行政策和喜好。

      组织与完成项目活动有许多方法,包括:分阶段、精益、迭代和增量等;也有一些对项目规划的几个扩展,例如,针对结果(基于产品)或活动(基于流程)。不论采行何种方法论,必须精心缜密地考虑项目总体的目标,时程和成本,以及所有参与者和利害关系人的作用和责任。

      对于软件开发项目,在博文 项目管理 之一 软件开发生命周期(软件开发过程、瀑布模型、敏捷开发等) 中介绍的各种过程模型,基本就是指导我们软件开发的方法。但是,由于项目具有独特性,因此标准的生命周期模型往往难以满足项目的特殊需要。通常项目在定义生命周期时,可首先选择一种标准的生命周期模型作为基础,然后指定出适合自己的方法。

    传统的顺序方法

    瀑布式管理方法

      规划项目的最常见方法是对导致最终交付的任务进行排序,并按顺序进行工作。这个过程也被称为瀑布方法——管理项目的传统方法,也是最容易理解的方法。

      这种方法的强大之处在于,每一步都是预先计划好的,并按照适当的顺序安排好。虽然这可能是最简单的最初实现方法,但涉众需求或优先级的任何更改都会破坏一系列任务,使其很难管理。这种方法在可预见性方面很出色,但缺乏灵活性。

    关键路径方法(CPM)

      关键路径方法(Critical Path Method)是在 20 世纪 50 年代开发的,其基础是,有些任务在完成上一个任务之前无法启动。当您从头到尾将这些依赖任务串在一起时,您会绘制出关键路径。

      确定并关注这一关键路径后,项目经理就可以确定优先级并分配资源,以完成最重要的工作,并重新安排可能会阻塞团队的所有低优先级任务。 这样,如果您需要更改项目进度表,则可以在不延迟结果的情况下优化团队的工作流程。

    关键链项目管理(CCPM)

      关键链项目管理(Critical Chain Project Management)将关键路径方法更进一步。CCPM 是一种方法,它侧重于通过在关键路径中增加资源可用性来完成项目任务所需的资源。它还在项目计划中围绕这些任务建立时间缓冲,确保项目满足其最后期限。

    敏捷家族

      由于竞争激烈的商业环境和不断创新,敏捷的项目管理方法越来越受欢迎。一般来说,敏捷方法优先考虑更短的迭期周期和灵活性。

    Scrum

      Scrum 是最受欢迎的敏捷发展框架,因为它的实现相对简单。它还解决了软件开发人员过去遇到的许多问题,例如复杂的开发周期、不灵活的项目计划以及更改生产计划。

    详细介绍见 项目管理 之二 敏捷开发方法 Scrum 最全指导 .

    看板

      看板是基于团队能力实施敏捷的另一个框架。它起源于 20 世纪 40 年代的丰田工厂。各部门使用可视化的卡片系统(“看板”)来表示他们的团队已经为更多的原材料做好准备,并拥有更多的生产能力。

    极限编程 (XP)

      极限编程 (Extreme Programming) 是敏捷的另一个分支。XP 是一种旨在提高软件质量(和简单性)和开发团队适应客户需求的能力的方法。与原始的敏捷开发非常类似,XP 具有工作冲刺短、迭代频繁以及与利益相关者不断协作的特点。变化可能发生在冲刺阶段。如果特定功能的工作尚未开始,则可以将其更换为类似任务。

    自适应项目框架(APF)

      自适应项目框架(Adaptive Project Framework)源于由于不确定和不断变化的需求而难以使用传统项目管理方法来管理大多数 IT 项目的情况。

      APF从需求分解结构(RBS)开始,以根据产品需求,功能,子功能和功能定义战略项目目标。 该项目分阶段进行,在每个步骤的最后,团队都会评估以前的结果以改善性能和实践。

    变更管理方法

    有些方法论用于管理项目,但更侧重于变更管理,尤其是风险规划和在变更发生时进行控制。

    事件链方法(ECM)

      事件链方法(Event Chain Methodology)背后的基本理念是,潜在风险往往不在项目范围之外。必须做好应对这些风险的准备,并计划您的应对措施,因为意外事件会影响您的项目的进度、交付成果以及潜在的成功。

    极限项目管理(XPM)

      极限项目管理 (Extreme Project Management) 与瀑布正好相反。它为您提供了一种管理大规模变革的方法,并且仍然朝着项目完成的方向前进。在 XPM 中,无论项目进展有多远,您都可以更改项目计划、预算,甚至最终交付,以满足不断变化的需求。

    基于过程的方法

    其中每种方法都侧重于将工作作为流程的集合。

    精 益

      精益(Lean)是一种专注于精简和减少浪费的方法(精益求精)。第一步是创建工作流程分解,以识别和消除瓶颈和延迟。目标是用更少的人力、更少的钱和更少的时间为客户提供价值。

    Six sigma

      Six Sigma 于20 世纪 80 年代中期由摩托罗拉的工程师介绍,通过识别项目中不起作用的内容来提高质量。

      Six Sigma 是一种基于统计的方法,旨在通过测量存在的缺陷并消除尽可能多的缺陷来提高过程质量。 如果 99.99966% 的最终产品(您的项目可交付成果)没有缺陷,则该过程可以达到 Six Sigma 等级。

    其他方法

    PRINCE2

      PRINCE2 代表受控环境中的项目。 这是一种用于管理英国政府使用的项目的方法,其特点是基于产品的计划方法。 在 PRINCE2 中,结构化的项目委员会负责高层活动,例如确定业务理由和资源分配。 项目经理负责日程安排等较低级别的日常活动。 这种方法使团队可以更好地控制资源并有效降低风险。

    PRiSM

      PRiSM 代表“集成可持续方法的项目”,旨在在将环境可持续性纳入其流程的同时管理变更。 PRiSM的目标是完成任务,同时减少公司对环境和社会的负面影响。 从字面上看,它是绿色项目管理。

    项目管理的角色

    项目经理

      项目经理密切监视开发过程,准备并执行各种计划,安排必要和充足的资源,保持所有团队成员之间的沟通,以解决成本,预算,资源,时间,质量和客户满意度方面的问题。

      正式的项目经理通常通过美国 PMI 或英国 PRINCE2 之类的机构进行认证。认证后,他们需要通过接受额外的培训来收集目标数量的 PDU(Professional Development Units)来维持其认证。

    1. PDU 代表专业发展单元,是 一种衡量正在进行的专业发展的方法。 为了保持作为项目管理专业人员(PMP)的认证,您将需要维护特定数量的 PDU,这些 PDU 可以通过参加活动或完成课程来获得。
    2. 美国项目管理协会(PMI)举办的项目管理专业人员(PMP)认证考试在全球180多个国家和地区推广,是目前项目管理领域含金量最高的认证。被全球项目管理界人士所认可!

      在实际的工作中,认证并不总是一个要求,它可以是在以后的职业生涯中获得的东西。大多数项目经理通常从工商管理学位开始,但实际中并非总是这样。经验往往比学位更响亮。

      通常,项目经理需要熟练使用 PERT 来对项目进行管理。

    Rrogram (or Project) Evaluation and Review Technique (PERT) 程序(或项目)评估和审查技术是用于项目管理的统计工具,旨在分析和表示完成给定项目所涉及的任务。它最初由美国海军于1958年开发,通常与1957年推出的临界路径方法(CPM)一起使用。

    软件项目经理

      软件项目经理是负责执行软件项目的人员,通常是 PMI 认证的项目管理专业人员 (PMP)。 软件项目经理完全了解软件将经历的 SDLC 的所有阶段。项目经理可能永远不会直接参与最终产品的生产,但他会控制和管理生产中涉及的活动。

    项目成员

    他们是负责完成项目一的人员。 团队成员是熟练的专业人员,他们致力于为项目目标做出贡献。

    客户

    项目产品的交付者。可能来自内部,也可能来自外部。

    利益相关者

    这是在项目中有既得利益的人或团体。它可能是一个组织的内部团体或机构,也可能是公共工程项目的公众。

    风险管理

      风险管理是对风险(在 ISO 31000 中定义为不确定性对目标的影响)的识别,评估和优先级划分,然后协调,经济地使用资源以最小化,监视和控制不幸事件的可能性或影响或最大化机会的实现。风险管理包括与识别、分析和为项目中的可预测和不可预测风险做准备相关的所有活动。

    风险评估

      软件项目风险是指在整个项目周期中所涉及的成本预算、开发进度、技术难度、经济可行性、安全管理等各方面的问题,以及由这些问题而对项目所产生的影响。

      项目的风险与其可行性成反比,其可行性越高,风险越低。软件项目的可行性分为经济可行性、业务可行性、技术可行性、法律可行性等四个方面。而软件项目风险则分为产品规模风险、需要风险、相关性风险、管理风险、安全风险等六个方面。

    成本预算

    自上而下的预算方法(经验估计技术)

      自上而下的预算方法主要是依据上层、中层项目管理人员的管理经验进行判断,对构成项目整体成本的子项目成本进行估计,并把这些判断估计的结果传递给低一层的管理人员,在此基础上由这一层的管理人员对组成项目的子任务和子项目的成本进行估计,然后继续向下一层传递他们的成本估计,直到传递到最低一层。

    该技术使用经验导出的公式进行估算。这些公式基于 LOC 或 FP。

    • Putnam 模型: 该模型由Lawrence H. Putnam制作,该模型基于Norden的频率分布(瑞利曲线)。 Putnam模型映射了软件大小所需的时间和精力。

      关于 Putnam 模型,详见 https://wiki.mbalib.com/zh-cn/Putnam%E6%A8%A1%E5%9E%8B

    • COCOMO: COCOMO 是由 Barry W. Boehm 开发的建设性成本模型(COnstructive COst MOdel)的缩写。它将软件产品分为三类:有机软件、半分离软件和嵌入式软件。

    自下而上的预算方法(分解技术)

      自下而上方法要求运用 WBS(Work Breakdown Structure,工作分解结构)对项目的所有工作任务的时间和预算进行仔细考察。最初,预算是针对资源(团队成员的工作时间、硬件的配置)进行的,项目经理在此之上再加上适当的间接费用(如培训费用、管理费用、不可预见费等)以及项目要达到的利润目标就形成了项目的总预算。

    主要有两种模式:

    • 代码行: 依据软件产品中的代码行数进行估计。
    • 功能点: 依据软件产品中功能点的数量进行估算。

      自下而上的预算方法要求全面考虑所有涉及到的工作任务,更适用于项目的初期与中期,它能准备地评估项目的成本,与真实费用相差在 5% ~ 10% 之间。

    质量管理

      质量管理确保组织、产品或服务是一致的。它包括四个主要组成部分:质量规划、质量保证、质量控制和质量改进。 质量管理不仅注重产品和服务质量,而且注重实现质量的手段。因此,质量管理利用对工艺和产品的质量保证和控制来实现更一致的质量。

    软件质量保证

      软件质量保证(SQA,Software Quality Insurance)是在软件过程中的每一步都进行的“保护性活动”。SQA 主要有基于非执行的测试(也称为评审)、基于执行的测试(即通常所说的测试)和程序正确性证明。

      软件评审是最为重要的 SQA 活动之一。它的作用是,在发现及改正错误的成本相对较小时就及时发现并排除错误。审查和走查是进行正式技术评审的两类具体方法。

    配置管理

      配置管理是根据产品的需求,设计,功能和开发来跟踪和控制软件更改的过程。IEEE 将其定义为:the process of identifying and defining the items in the system, controlling the change of these items throughout their life cycle, recording and reporting the status of items and change requests, and verifying the completeness and correctness of items。

      配置管理是组织管理的一门学科,它负责处理阶段性基础化后发生的任何变化(流程、要求、技术、战略等)。CM 会不断检查软件中所做的任何更改。

    软件配置管理

      软件配置管理(SCM,Software Configuration Management)是应用于整个软件过程中的保护性活动,它是在软件整个生命周期内管理变化的一组活动。是配置管理这个更大的跨学科领域的一部分。

      软件配置管理包括版本控制和基线的建立。如果出现问题,SCM 可以确定更改了什么以及是谁更改了它。如果配置工作良好,SCM 可以决定如何在许多主机上复现它。

      软件配置由一组相互关联的对象组成,这些对象也称为软件配置项,它们是作为某些软件工程活动的结果而产生的。除了文档、程序和数据这些软件配置项之外,用于开发软件的开发环境也可置于配置控制之下。一旦一个配置对象已被开发出来并且通过了评审,它就变成了基线。对基线对象的修改导致建立该对象的版本。版本控制是用于管理这些对象而使用的一组规程和工具。

    软件配置管理系统
      库是软件配置管理系统的根本。库是集中控制的文件库,并提供对库中所存储文件的版本控制。任何库中的文件都被视为在确定的软件配置管理之下。
      在项目实际工作中,可以用 SVN、Git 等工具来建立配置库。

    基线

      在配置管理中,基线是在某个时间点对产品属性达成的一致描述,可作为定义更改的基础。更改是从此基准状态到下一个状态的移动。 识别基线状态的重大变化是基线识别的主要目的。

      如果 SDLC 的一个阶段已经建立了基线,那么就假定它已经完成了,例如,基线是定义一个阶段完整性的度量。当与阶段有关的所有活动都已完成并得到良好的文档记录时,阶段就被确立为基线。如果它不是最后阶段,它的输出将用于下一个直接阶段。

    版本控制

      在软件工程中,版本控制(也称为修订控制,源代码控制或源代码管理)是一类负责管理对计算机程序,文档,大型网站或其他信息集合的更改的系统。 版本控制是软件配置管理的组成部分。

      在软件开发中,版本控制系统的使用是必不可少的。详细见博文 版本控制系统 之一 概念、分类、常见版本控制系统(CVS、SVN、BitKeeper、Git 等)

    变更管理

      变更管理(Change management)是对所有支持和帮助个人或团队进行组织变更的方法的集合术语。变更的驱动因素可能包括技术的不断演变、流程的内部审查、危机应对、客户需求变化、竞争压力、收购和兼并以及组织重组。 它包括重定向或重新定义资源使用、业务流程、预算分配或其他显著改变公司或组织运营模式的方法。

    变更控制

      变更控制(Change Control)是质量管理系统(QMS)和信息技术(IT)系统中的一个过程,用来确保以受控和协调的方式引入产品或系统的变更。它减少了在没有预先考虑的情况下对系统进行不必要的更改、在系统中引入错误或撤销其他软件用户所做的更改的可能性。变更控制过程的目标通常包括最小化对服务的干扰,减少回退活动,以及对实现变更所涉及的资源的低成本利用。

    不要与版本控制相混淆。

    项目管理工具

    见独立博文

    参考

    1. https://wiki.mbalib.com/wiki/%E8%BD%AF%E4%BB%B6%E9%A1%B9%E7%9B%AE%E7%AE%A1%E7%90%86
    2. http://learnfuture.com/PMP/902
    3. https://www.cnblogs.com/leslies2/archive/2012/06/29/2569765.html
    4. https://www.tutorialspoint.com/software_engineering/software_project_management.htm
    5. https://www.wrike.com/project-management-guide/project-lifecycle/
    6. https://www.wrike.com/project-management-guide/methodologies/
    7. https://en.wikipedia.org/wiki/Software_project_management
    8. https://www.projectmanager.com/project-management
    展开全文
  • 信息生命周期管理.doc

    2019-12-18 15:09:58
    信息生命周期管理(Information Lifecycle Management,ILM )是StorageTek 公司针对不断变化的存储环境推出的先进存储管理理念,理解信息在其不同生命阶段中对企业的不同价值,帮助企业从战略高度来管理信息
  • 遵照ISO 10202-1标准的规定,智能卡生命周期第5阶段是用有关的方法来结束卡的使用,特别指的是随着智能卡本身的去激活后,撤消智能卡的应用。然而对大多数智能卡而言,这两种处理纯粹是理论上的,在实践中卡或是被...
  • 信息系统的生命周期阶段及说明

    千次阅读 2021-05-08 16:50:50
    信息系统的生命周期阶段及说明 软件在信息系统中属于较复杂的部件,可以借用软件的生命周期来表示...为了便于论述针对信息系统的项目管理信息系统的生命周期还可以简化为立项(系统规划)、开发(系统分...

     

    信息系统的生命周期各阶段及说明

     

     

     

    软件在信息系统中属于较复杂的部件,可以借用软件的生命周期来表示信息系统的生命周期,软件的生命周期通常包括:可行性分析与项目开发计划、需求分析、概要设计、详细设计、编码、测试、维护等阶段。

    信息系统的生命周期可以简化为系统规划(可行性分析与项目开发计划)、系统分析(需求分析)、系统设计(概要设计、详细设计)、系统实施(编码、测试)、运行维护等阶段。

    为了便于论述针对信息系统的项目管理,信息系统的生命周期还可以简化为立项(系统规划)、开发(系统分析、系统设计、系统实施)、运维及消亡四个阶段,在开发阶段不仅包括系统分析、系统设计、系统实施,还包括系统验收等工作。如果从项目管理的角度来看,项目的生命周期又划分为启动、计划、执行和收尾4个典型的阶段。

    一 立项-系统规划

    即概念阶段或需求阶段,这一阶段根据用户业务发展和经营管理的需要,提出建设信息系统的初步构想。

    系统规划阶段的任务是对组织的环境、目标及现行系统的状况进行初步调查,根据组织目标和发展战略,确定信息系统的发展战略,对建设新系统的需求做出分析和预测,同时考虑建设新系统所受的各种约束,研究建设新系统的必要性和可能性。根据需要与可能,给出拟建系统的备选方案。对这些方案进行可行性研究,写出可行性研究报告。可行性研究报告审议通过后,将新系统建设方案及实施计划编写成系统设计任务书。

     

    二 开发

    2.1系统分析-需求分析

    系统分析阶段的任务是根据系统设计任务书所确定的范围,对现行系统进行详细调查,描述现行系统的业务流程,指出现行系统的局限性和不足之处,确定新系统的基本目标和逻辑功能要求,即提出新系统的逻辑模型。系统说明书。

    是分析系统在功能上需要实现什么,而不是考虑如何去实现。需求分析的目标是把用户对待开发软件提出的要求需要进行分析与整理,确认后形成描述完整、清晰与规范的文档,确定软件需要实现哪些功能,完成哪些工作。

    1.功能性需求

    功能性需求即软件必须完成哪些事,必须实现哪些功能,以及为了向其用户提供有用的功能所需执行的动作。功能性需求是软件需求的主体。开发人员需要亲自与用户进行交流,核实用户需求,从软件帮助用户完成事务的角度上充分描述外部行为,形成软件需求规格说明书。

    2.非功能性需求

    作为对功能性需求的补充,软件需求分析的内容中还应该包括一些非功能需求。主要包括软件使用时对性能方面的要求、运行环境要求。软件设计必须遵循的相关标准、规范、用户界面设计的具体细节、未来可能的扩充方案等。

    3.设计约束

    一般也称做设计限制条件,通常是对一些设计或实现方案的约束说明。例如,要求待开发软件必须使用Oracle数据库系统完成数据管理功能,运行时必须基于Linux环境等。

     

    2.2 系统设计-概要设计

    简单地说,系统分析阶段的任务是回答系统“做什么”的问题,而系统设计阶段要回答的问题是“怎么做”。该阶段的任务是根据系统说明书中规定的功能要求,考虑实际条件,具体设计实现逻辑模型的技术方案,也就是设计新系统的物理模型。这个阶段又称为物理设计阶段,可分为总体设计(概要设计)和详细设计两个子阶段。这个阶段的技术文档是系统设计说明书。

     

    1 概要设计

    概要设计是一个设计师根据用户交互过程和用户需求来形成交互框架和视觉框架的过程,其结果往往以反映交互控件布置、界面元素分组以及界面整体板式的页面框架图的形式来呈现。这是一个在用户研究和设计之间架起桥梁,使用户研究和设计无缝结合,将对用户目标与需求转换成具体界面设计解决方案的重要阶段。 [1] 

    概要设计的主要任务是把需求分析得到的系统扩展用例图转换为软件结构和数据结构。设计软件结构的具体任务是:将一个复杂系统按功能进行模块划分、建立模块的层次结构及调用关系、确定模块间的接口及人机界面等。数据结构设计包括数据特征的描述、确定数据的结构特性、以及数据库的设计。显然,概要设计建立的是目标系统的逻辑模型,与计算机无关。

    概要设计主要是软件体系结构

    2 详细设计

    详细设计的主要任务是设计每个模块的实现算法、所需的局部数据结构。详细设计的目标有两个:实现模块功能的算法要逻辑上正确和算法描述要简明易懂。

     

    3 概要设计和详细设计

    概要(结构)设计阶段:把软件按照一定的原则分解为模块层次,赋予每个模块一定的任务,并确定模块间调用关系和接口。流程图、N-S图、PAD图、伪代码等
    详细设计阶段:依据概要设计阶段的分解,设计每个模块内的算法、流程等。

    三 系统实施阶段

    系统实施阶段是将设计的系统付诸实施的阶段。这一阶段的任务包括计算机等设备的购置、安装和调试、程序的编写和调试、人员培训、数据文件转换、系统调试与转换等。这个阶段的特点是几个互相联系、互相制约的任务同时展开,必须精心安排、合理组织。系统实施是按实施计划分阶段完成的,每个阶段应写出实施进展报告。系统测试之后写出系统测试分析报告。

     

    1 编码

    2 测试

    四 系统运维

    更正性维护:更正发现的问题和错误。软件投入运行一段时间后,可能会暴露出一部分在测试阶段没有发现的错误,为改正这些错误而对软件进行的修改活动。

    适应性维护:保持软件产品能在变化后或变化中的环境中可以继续使用。如迁移数据库或操作系统。

    3.完善性维护∶改进性能和可维护性,增加功能等。因为用户需求是经常变化的,在软件使用过程中,用户会对软件提出新的功能和性能要求,为了满足这些新的要求而对软件进行修改,使之功能和性能得到完善和增强的活动。

    预防性维护:在软件产品中的潜在错误成为实际错误前,检测和更正它们。或者为了改进软件未来的可维护性或可靠性,或者为了给未来的改进提供更好的基础而对软件进行修改。

    五消亡

    信息系统不可避免地会遇到系统更新改造、功能扩展,甚至废弃重建等情况。对此,在信息系统建设的初期就应该注意系统消亡条件和时机,以及由此而花费的成本。

    展开全文
  • 软件生命周期阶段及RUP

    千次阅读 2011-09-24 21:24:12
    软件的生命周期即软件的孕育、诞生、成长、成熟、衰亡的过程。在这个过程中要经过阶段:  1.制定计划,这个阶段要完成软件的所有前期准备,包括软件开发总的目标、功能性能、可靠性接口等方面的要求、估计开发...

             软件的生命周期即软件的孕育、诞生、成长、成熟、衰亡的过程。在这个过程中要经过六个阶段:

             1.制定计划,这个阶段要完成软件的所有前期准备,包括软件开发总的目标、功能性能、可靠性接口等方面的要求、估计开发的投入与产出等等,最后要制定出完成开发任务的实施计化以及可行性研究报告,并将其提交给管理部门审查。在这个阶段就是完成总的估算和之制定总的计划

               具体实现包括六个步骤分别是问题定义、可行性研究、软件计划内容、软件价格估计和效益成本分析、最后形成的文档。

             

              2. 需求分析和定义。这个阶段是针对要开发的软件进行详细分析的阶段,对要进行开发的系统软件确定做什么的问题,上一个阶段是制定总的计划和目标,这个阶段承上一个阶段,对完成可行性研究后的系统进行详细的规划具体内容的阶段。

             

            上边谈到了软件生命周期的第二个阶段软件需求分析,完成了对所要开发软件的详细分析,规定系统软件的功能模块。 揭晓来就要进行软件设计。

            3.软件设计(面向过程的软件设计),在这个阶段完成软件的功能的具体实现方法的实现,同时涉及到很多方法的使用。

              

                 4.进程上一个阶段—软件设计阶段,接下来就是使用程序设计语言具体实现功能的阶段,即把程序设计转换成计算机可以读懂的程序代码,写成以某一特定程序设计语言表示的“原程序清单”,说白了就是编码。

          

            5. 程序编写阶段的完成,标志着软件的功能基本实现,可以说软件开发工作的一般算是完成了,但是他只是个最初的原型,要交个用户使用好用做很多工作,首先做的就是对所开发的软件的测试,并通过调试将程序错误查找出来,改正或改进系统性能,这样才能保证所开发的软件的正确性与准确性,并及时交给用户使用。

     

     6.软件测试完后就要交给用户,投入使用了,但是软件在使用的过程中总会出现这样或那样的问题,这时就需要我们的维护工作了。

     

     

           RUP也是针对软件生命周期的,但是他的很多理论更切合实际。

          

     

    展开全文
  • 要做好一个软件,要了解软件的生命周期,在什么阶段,要做好什么事情! 在了解软件的生命周期之前,先了解一下软件工程。 软件工程 软件工程是一门研究用工程化方法构建和维护有效的、实用的和高质量的软件的...
  • 基于信息生命周期管理三维模型的存储体系架构的研究与应用,郝静,王红梅,本文在信息生命周期管理概念的基础上设计出信息生命周期管理的三维模型,对此三维模型从信息周期阶段(创建、采集、组织、存储、
  • 该系列解决方案为端对端的信息生命周期管理, 处理从创建到淘汰的数据生命周期管理的每个阶段。通过Informatica应用程序信息生命周期管理产品系列,您的IT团队可以更好地支持应用程序优化、数据中心和IT整合、IT现代...
  • 一个网络系统从构思开始,到最后被淘汰的过程成为网络生命周期。 网络系统生命周期 一般来说,网络的生命周期至少应该包括:网络系统的构思和计划、分析和设计、运行和维护的过程。网络系统的生命周期与软件工程中...
  • 产品生命周期的概念与阶段划分.pptx
  • 信息化项目的全生命周期管理办法,包括了项目进度管理、项目成本管理、项目质量管理、项目变更管理,涵盖了项目的5大阶段。是PMO,项目经理的参照学习资料。
  • Spring IOC容器生命周期阶段总结

    千次阅读 2021-01-19 10:49:31
    Spring容器的生命周期是面试的高频题目,但是这个生命周期非常复杂,想要完全说清楚几乎不可能。但对全局有个把控,知道每个阶段大概所做的事情是很重要的,尤其在编写框架或者扩展Spring的时候尤其重要。
  • 信息系统的生命周期包括: 大体上可以为5个阶段: 1.系统规划 :可行性分析与项目开发计划 ...如果从项目管理的角度来看的话,信息系统项目的生命周期又可以划分为:启动、计划、执行、监督和控制、收尾五大过程组 ...
  • 分析阶段是一个很重要的阶段,这一阶段做得好,将为整个软件开发项目的成功 打下良好的基础。"唯一不变的是变化本身。"同样需求也是在整个软件开发过程 中不断变化和深入的,因此我们必须制定需求变更计划来应付...
  • 浅谈软件以及软件的生命周期 自1946年第一台计算机发明以来,对人类的生产活动和社会活动产生了极其重要的影响,并以强大的生命力飞速发展。计算机硬件、软件、操作系统等纷纷应运而生,并发展壮大,时至今日,...
  • 证书的初始化、颁发证书、取消证书三个阶段 证书的初始化:证书的初始化是指用户在使用PKI之前,必须...证书取消:证书取消阶段是证书管理生命周期的结束 1、证书过期 2、证书撤销 3、密钥历史 4、密钥档案 ...
  • 软件生命周期的八个阶段

    万次阅读 多人点赞 2018-04-25 16:07:47
    我们在软件的开发和维护过程中会遇到一系列严重的问题,比如软件开发的成本和进度估计的不准,用户对已经完成开发的软件不满意、用户需求变更、软件产品...软件开发主要分为以下几个阶段1、问题定义确定好要解决的问...
  • 软件生命周期各个阶段详解

    千次阅读 多人点赞 2020-04-06 10:56:18
    软件生命周期可行性研究:(是否做?)需求分析:(做什么?)概要设计:(怎么做?大概)详细设计:(怎么做?详细)编码:(开始做。)测试:(检查。)运行维护(售后服务) 软件生命周期及为软件从产生直到报废的...
  • 软件生命周期分为7个阶段 软件生命周期阶段的主要任务 银行取款过程的Use Case 图
  • 软件生命周期之软件计划阶段

    千次阅读 热门讨论 2015-10-07 21:49:13
    软件生命周期之软件计划阶段
  • 生命周期模型 开发阶段 zhengkai.blog.csdn.net 适用项目 瀑布模型 计划,需求,设计,编码,测试,运行维护 需求确定,变化小;升级项目或者以前开发过类似的项目 螺旋模型 制定计划,风险分析,实施过程,...
  • 项目阶段与项目生命周期 将每一个项目划分为若干个阶段,以便提高管理控制,并提供与该项目实施组织的日常运作之间的联系 这些阶段合在一起称为项目生命周期 项目的生命周期用于定义一个项目的开始和结束 许多组织...
  • 缺陷生命周期

    2021-03-23 11:50:32
    缺陷生命周期(K3)根据IEEEStd1044-1993定义的异常管理生命周期进行缺陷管理。(K3)根据IEEEStd1044-1993评估缺陷报告和缺陷分类以改进缺陷报告的质量  缺陷生命周期  (K3)根据IEEEStd1044-1993定义的异常管理生命...
  • 威胁生命周期管理代表的是一系列具有一致性的安全操作能力与过程,首先包括能够在IT环境中广泛并深入进行“观察”的能力,另外企业还需要有能力在安全事故发生后快速进行应对与恢复。 在检测到任何威胁迹象之前,...
  • 2、产品生命周期指一个产品从概念、交付、成长、成熟到衰退的整个演变过程的一系列阶段。类型:可以是预测型、迭代型、增量型、适应型或混合型。 其中适应型生命周期属于敏捷型、迭代型或增量型。也称为敏捷或变更...
  • 使用阶段:密钥是可以使用的,并且处于在线使用中。 使用后的状态:密钥不再正常使用,但为了某种目的对其进行离线访问时可行的 过期状态:密钥不再正常使用,所有的密钥记录都已经被删除。 ...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 149,151
精华内容 59,660
关键字:

信息生命周期管理六阶段