专栏首页浩Coding一个完整的软件项目开发流程

一个完整的软件项目开发流程

软件开发流程步骤:需求分析、概要设计、详细设计、编码、测试、软件交付、验收、维护。 -- 来源于百度百科

前言 软件生存周期

软件的生存期:软件有一个孕育、诞生、成长、成熟、衰亡的生存过程。通常,把软件从开始研制(形成概念)到最终软件被废弃不用这整个阶段称为软件的生存期。

软件生存周期:为了能对软件进行有条不紊、有步骤的开发和管理,将软件生存期划分为若干阶段,称为软件生存周期:软件定义软件开发及软件运行维护

软件定义时期的任务是:确定软件开发工程必须完成的总目标;确定工程的可行性;导出实现工程目标应该采用的策略及系统必须完成的功能;估计完成该项工程需要的资源和成本,并制定工程进度表。该时期通常进一步划分为三个阶段,即问题定义、可行性研究和需求分析。

软件开发时期具体设计和实现在前一个时期定义的软件,它通常由四个阶段组成:总体设计、详细设计、编码和测试(包括单元测试、综合测试)。

软件运行维护时期主要任务是使软件持久地满足用户需要。

软件生存周期每个阶段的基本任务?

n问题定义:必须回答的关键问题是“要解决的问题是什么?”。

n可行性研究:必须回答的关键问题是“对于上一个阶段确定的问题有行得通的解决办法吗?”。

n需求分析必须回答的关键问题是“为了解决这个问题,目标系统必须做什么?”,主要是确定目标系统必须具备哪些功能。

n总体设计:必须回答的关键问题是“概括地说,应该怎样实现目标系统?”。确定程序由哪些模块组成以及模块间的关系。

n详细设计:必须回答的关键问题是“应该怎样具体实现目标系统?”。详细的设计每个模块,确定实现模块功能所需要的算法和数据结构。

n编码和单元测试:关键任务是写出正确的容易理解、容易维护的程序模块,并仔细测试每个编写出的模块。

n综合测试:关键任务是通过各种类型的测试(及相应的调试)使软件达到预定的要求。

n维护时期:主要任务是通过各种必要的维护活动,使系统持久地满足用户需要。

软件工程项目的基本目标有:

1) 付出较低的开发成本

2) 达到要求的软件功能

3) 取得较好的软件性能

4) 开发的软件易于移植

5) 需要较低的维护费用

6) 能按时完成开发工作,及时交付使用

常用的软件生存周期模型有:瀑布模型、演化模型,螺旋模型,增量模型,喷泉模型,快速应用开发(RAD)模型。

瀑布模型图↓:

演化模型图↓:

螺旋模型图:

增量模型图:

喷泉模型图

快速应用开发模型图:

变换模型图:

未完待续。。。不定期填坑中。。。

本文分享自微信公众号 - 浩Coding(gh_c4a2e63d2ca7),作者:浩

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2019-07-16

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • ASP.NET MVC5高级编程——(2)MVC模式的视图与Razor引擎

    1 ,视图职责是向用户提供界面,当控制器针对被请求的URL执行完合适的逻辑后,就将要显示的内容委托给视图。

    浩Coding
  • ASP.NET MVC5高级编程——(2)MVC模式的视图

    1 ,视图职责是向用户提供界面,当控制器针对被请求的URL执行完合适的逻辑后,就将要显示的内容委托给视图。

    浩Coding
  • Java EE实用教程笔记----(6)第六章 Struts 2综合应用案例

    本章主要内容是结合前面所学的Struts2框架知识,编写一个简单的借书系统的实例,其实这些主要是JavaWeb的知识,用Struts2开发而已,基础比较扎实的同...

    浩Coding
  • 和西安创业型软件公司侃侃机遇与出路的问题

    在西安软件互联网圈子内,你会发现存在着很多创业型软件公司在苦苦地经营着,有的不断壮大有的也在不断衰弱。但是随着中小型企业对软件及信息技术重视程度的提高,西安创业...

    西安弈聪软件公司
  • 软件将统治机器人世界?

    “首先我们拿下了曼哈顿,下一个目标是柏林。” —Leonard Cohen 在计算机产业发展的早期,硬件占据着绝对的统治地位。 我的哥哥那个现在还放在车库里...

    机器人网
  • 软件正吃掉世界:2016~2020软件开支CAGR为6.9%| 报告

    报告前瞻: 在不同时代下不同的软件交付模式,全球软件行业收益在不断增长。 从2009年起,云计算或软件概念股成功上市的在2014年达到最高点,总值达28.17...

    人称T客
  • 软件危机:定义、起因、历史、机遇

    软件危机(英语:Software Crisis)是早期计算机科学的一个术语,是指在软件开发及维护的过程中所遇到的一系列严重问题,这些问题皆可能导致软件产品的寿命...

    飞奔去旅行
  • 软件开发不能用盖房子来比喻

    多年以来,软件行业一直在使用一种类比,即以建筑行业来做参考和比喻。这种比较在软件语言里随处可见,比如架构(architecture)、地基(foundation...

    用户1289394
  • 如果国外CAD/CAE/CAM软件全部退出中国市场,相关行业将会陷入怎样的困境?

    中国的软件开发人员已经有百万之众,而且国内的互联网公司在国际上已经有非常大的影响力,所以很多人觉得国产软件已经非常强大了,但回过头来发展很多基础类软件基本上还是...

    程序员互动联盟
  • [每天五分钟,备战架构师-7]网络操作系统

    在当今互联网的环境下,基本上所有的操作系统都可以称得上是网络操作系统,大到主机系统、x86服务器系统、个人电脑操作系统,小到一些IOT设备,如智能电视、智能冰箱...

    大江小浪

扫码关注云+社区

领取腾讯云代金券