项目管理基础:软件生命周期概念介绍

              

1、软件生命周期定义

软件产品或软件系统要经历孕育、诞生、成长、成熟、衰亡等阶段称为软件的生命周期。

2、软件生命周期阶段组成

软件的生命周期由可行性分析与项目开发计划、需求分析、总体设计、详细设计、编码、单元测试、综合测试、维护阶段。

2.1 可行性分析与项目开发计划

任务:是确认软件的开发目标和可行性。可行性分析主要是研究任务的范围,探讨这个任务是否值得去解决是否有可行的解决办法。

该阶段主要给出任务的定义、可行性分析、项目开发计划。

参与人员:项目经理、用户、系统分析师。

2.2 需求分析

任务:确认软件系统必须要做的什么、确认软件系统的功能、性能、数据和用户界面的等需求。从而确认系统的逻辑模型。

2.3 概要设计

任务:研发人员要确定的功能需求转换为相应的体系结构。概要设计主要任务就是设计软件的结构、明确系统软件由哪些功能模块组成,以及模块的层次以及功能。

参与人员:系统分析师、软件设计师。

2.4 详细设计

任务:针对每个模块完成的功能进行具体描述,然后设计出详细的规格说明文档,该文档需要包括必要的功能细节。该阶段不涉及编码工作。

参与人员:软件设计师、程序员。

2.5 编码和单元测试

任务:把每个功能模块的控制结构转换成计算机程序。并仔细测试编写出每一个功能模块。

参与人员:程序员、项目经理。

2.6 综合测试 

任务:通过各种类型的测试使软件系统达到预定的要求。最基本的测试是集成测试、验收测试。

集成测试:根据设计的软件结构,把经过单元测试检验模块按照某种选定的策略装配起来,在装配过程中进行必要测试。

验收测试:按照规格说明书的规定,由用户对软件系统进行验收。

2.7 系统运维

系统运维是软件生命周期最漫长的阶段。软件一旦交付投入运行就会进入软件维护阶段。主要任务是保证系统的稳定运行以及满足客户的需要。

通常软件项目的免费运维期为一年。

 

IT技术分享社区

个人博客网站:https://programmerblog.xyz

文章推荐程序员效率:画流程图常用的工具程序员效率:整理常用的在线笔记软件远程办公:常用的远程协助软件,你都知道吗?51单片机程序下载、ISP及串口基础知识硬件:断路器、接触器、继电器基础知识

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/271195.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

jvm栈和寄存器

jvm栈和寄存器 总结

python模型_python 模型的释义

CharField#字符串字段, 用于较短的字符串.#CharField 要求必须有一个参数 maxlength, 用于从数据库层和Django校验层限制该字段所允许的最大字符数.IntegerField用于保存一个整数.FloatField# 一个浮点数. 必须 提供两个参数:## 参数 描述# max_digits 总位数(不包括小数点和符…

java 布尔表达式_java - 布尔值,条件运算符和自动装箱

java - 布尔值,条件运算符和自动装箱为什么抛出falsepublic static void main(String[] args) throws Exception {Boolean b true ? returnsNull() : false; // NPE on this line.System.out.println(b);}public static Boolean returnsNull() {return null;}虽然…

安装你自己的perl modules

来源: http://www.cnblogs.com/itech/archive/2012/12/17/2822044.html 安装你自己的perl modules。当没有root权限的时候,需要安装perl modules到自己的home目录下。 来自:http://servers.digitaldaze.com/extensions/perl/modules.html Ins…

项目管理基础:项目的生存周期模型

1、概念介绍软件生命周期模型是一个包含软件产品开发、运行和维护中有关过程、活动和任务的框架,它覆盖了系统从需求定义到系统使用的结束阶段。特点:描述了开发的主要阶段定义了每个阶段需要完成的任务和过程规范了每个阶段的输入输出提供了一个标准框架…

jps显示当前所有java进程pid

很多Java命令都在jdk的JAVA_HOME/bin/目录下面,jps也不例外,他就在bin目录下,所以,他是java自带的一个命令。 jps(Java Virtual Machine Process Status Tool) 是java提供的一个显示当前所有java进程pid的命令,适合在…

jvm内存结构_浅谈JVM内存结构

JVM 可以分为 5 个部分,分别是:类加载器(Class Loader):加载字节码文件到内存。运行时数据区(Runtime Data Area):JVM 核心内存空间结构模型。执行引擎(Execution Engine…

java annotation应用_java Annotation的应用

一、Annotation 示例Override Annotation1 Override2 public void onCreate(Bundle savedInstanceState);二、Annotation 概念及作用1 概念An annotation is a form of metadata, that can be added to Java source code. Classes, methods, variables, parameters and package…

鸿蒙和安卓,到底有什么区别?

对于开发者来说两个最关键的点值得关注:一个是 Beta 版的开发工具,一个是开源网站。开源网站在开发者大会上宣布将 HarmonyOS源代码捐赠给中国开放原子开源基金会,并在大会上公布了鸿蒙系统的开源路线。OpenHarmony 官方源码地址:…

错题集03

(选择一项) 3A: B: C: D: 正确答案是 B解析:LinkedList是实现List,Collection接口,是链表方式进行构建的,根据开发要求不同,可以使用LinkedList实现栈(先进先出)和堆(先进后出)这样的数据结构。(选择一项) 4A: B: C: D: 正确答案是 C解析:由于Hashtable是线程…

从零开始学python人工智能课程_从零开始如何学习人工智能?

想要学习人工智能?这里有一条完整路径资源在本文中,《Analytics India》杂志给出了学习AI的最佳途径。...科技领域的天平正在向人工智能倾斜,IT领域的技术人员正在将AI应用到现有产品中。但是对于企业来说, AI人才才是关键。企业培…

项目管理基础:软件开发的方法介绍

软件开发方法主要有结构化方法、原型化方法、面向对象开发方法、敏捷方法。1、结构化方法结构化方法由结构化分析、结构化设计、结构化程序设计组成,它是一种面向数据流的开发方法。结构化分析:依据分解与抽象的原则,按照系统中数据处理的流程…

类加载器子系统的作用

类加载器子系统的作用

Magento Block设计分析(深入分析)

Magento中Block是一个很重要的组件,它在Block中充当非常重要的角色,下面我们来分析一下Magento中Block是怎样设计的,我们应该怎样使用这个重要的角色。1、Magento Block类图: 图1: 继承Varien_Object的对象都有一个_data类变量,用…

JAVA输出x和y和z_JAVA实例:输入三个整数x,y,z,请把这三个数由小到大输出-吾爱编程网...

今天为大家分享一个java经典实例输入三个整数x,y,z,请把这三个数由小到大输出,相信很多初学者都会学到这道题目,接下来吾爱编程为大家介绍一下程序的相关写法,有需要的小伙伴可以参考一下:1、题目:输入三个整数x,y,z,请…

软件项目管理相关概念介绍笔记

1、成本估算由于软件项目具有可见性差、难定量化的特点,一般情况下很难在项目完成前准确的评估软件项目开发的工作量和费用。通常会根据以往开发类似项目的经验来进行成本估算。也可以将整个项目划分为若干个子系统或按照软件的生命周期的各个阶段分别进行费用估算&…

python爬取微博热搜_Python 超简单爬取微博热搜榜数据

微博的热搜榜对于研究大众的流量有非常大的价值。今天的教程就来说说如何爬取微博的热搜榜。 热搜榜的链接是:用浏览器浏览,发现在不登录的情况下也可以正常查看,那就简单多了。使用开发者工具(F12)查看页面逻辑,并拿到每条热搜的…

LeetCode14 Longest Common Prefix

题意: Write a function to find the longest common prefix string amongst an array of strings. (Easy) 这两天实验室项目太忙了, 老板各种活,只能挑着先水几道easy题,这两个题是昨天做的没来得及写总结。 分析: 暴…

类加载器ClassLoader的角色

类加载器ClassLoader的角色

软件项目管理:进度管理相关概念介绍

软件项目管理当中,项目进度的合理安排是如期完成软件项目的重要基础,也是合理分配资源的重要依据。项目进度安排是项目管理工作当中非常重要的组成部分。软件开发项目进度安排的方式:1、系统最终交付日期已经确定,软件开发部门必须…