在很多人看来,计算机软件开发主要就是开发人员的工作,只要把想法告诉他们,他们就能把软件开发出来,这种情况是存在的,要不这个软件非常简单,要不有这样能力的开发人员综合能力是非常强的,但这种认知也是片面的,开发一个计算机软件不单单只是开发人员的工作,有时候开发人员工作所占用的资源、时间甚至只是整个项目中非常小的一部分。那到底开发一个计算机软件的基本流程是怎么样的?需要什么人员的参与呢?下面就由小编来给大家介绍一下。

在小编看来,计算机软件的开发流程按顺序可以划分为:可行性分析;需求分析;设计(概要、详细);开发阶段;测试阶段;运行维护。

基本流程

一、可行性分析

1、公司要对项目确定项目经理,由公司和项目经理确定项目的主要组成人员,包括:产品经理、架构工程师、UI工程师、开发工程师、测试工程师等。

2、项目经理组织业务人员、产品经理等对项目的场景、效益、技术、管理等各方面进行调研和可行性分析,并把存在的问题及时与客户进行交流,输出项目的调研报告、可行性分析报告等。

3、若经过可行性分析,项目组能在规定的时间和资源范围内完成该项目,则出成本和资源使用计划书,并把相关资料提交给公司和客户,可以着手准备下一步的工作;若经过调研和分析,项目组无法在规定的时间和资源范围内完成该项目,则把相关依据提交给公司和客户,协调对资源进行调整,调整完成后进入下一步的工作。

二、需求分析

1、产品经理要进行需求采集、需求分析和需求确认这几方面的工作,然后输出需求分析文档和产品原型图,文档和产品原型图要及时与客户进行沟通,不符合客户要求的要及时修改,并做好修改记录。

产品原型图

2、确定原型图后,产品经理可输出业务流程图和页面跳转流程图,并与客户做开发前的需求确认工作。

3、产品经理输出培训文档,对项目组的人员进行需求讲解。

4、架构工程师根据需求对整个软件的体系架构和关键模块进行分析设计。

5、架构工程师和开发工程师根据需求和架构设计,制定项目开发计划和模块分解表。

6、UI工程师根据需求、原型图和开发计划,制定UI设计计划,以保证及时完成各页面UI设计工作。

三、概要设计

1、架构工程师根据需求和体系架构对软件运行环境、模块编码、流程控制、接口、运行控制和数据结构进行设计,并输出概要设计文档。

2、开发工程师根据概要设计文档设计数据库结构,并输出数据库设计说明书。

3、UI工程师根据需求分析、原型图和UI设计计划,制定UI设计规范,并输出文档。

四、详细设计

1、UI工程师根据产品原型图、UI设计规范,设计软件界面效果图。

2、开发工程师确定每个模块的算法,写出每个模块详细的过程描述。

3、开发工程师确定模块接口的细节,包括对系统外部的接口和用户界面,对系统内部其它模块的接口,以及模块输入数据、输出数据及局部数据的全部细节,并形成详细设计文档。

4、为每一个模块设计出一组测试用例,以便在开发阶段对模块代码进行预定的测试。

5、开发工程师根据数据库设计说明书进行数据库物理设计,设计数据库表、字段、描述等,统一命名规则。

数据库表

五、开发阶段

1、开发工程师根据产品原型图、UI效果图、详细设计文档,选择合适的开发环境、开发工具、开发语言等,统一每个模块、页面的命名规范。

2、开发工程师搭建软件框架,进行模块编码。

3、开发工程师对自己开发出来的模块要进行测试用例自测或是开发人员之间互相测试,排除出现的问题。

4、开发工程师要养成良好的开发习惯,编写好开发说明文档,做好代码功能注释、使代码的可读性更强。

开发软件

六、测试阶段

1、测试工程师根据开发阶段形成的说明文档和程序架构,设计测试用例,测试用例不仅要考虑合理的输入数据,也要考虑不合理的输入数据。

2、测试工程师对程序进行单元测试、集成测试、系统测试,检查是否正确完成规定的功能,把出现的编码错误、算法错误整理成文档,并提交给开发工程师。

3、开发工程师根据测试工程师提交的测试文档,对出现的错误进行修改,再交由测试工程师测试,通过后完成。

4、产品经理、测试工程师安排软件测试版给普通用户试用,并收集用户使用意见和问题,把软件出现的错误交由开发工程师进行修改,这时候软件的错误数量已经很少,对软件的改动不大。

5、产品经理、测试工程师完成软件各端口的操作手册、软件使用手册等。

七、运行维护

1、项目经理组织客户、业务人员、产品经理、开发工程师进行软件验收、上线运行工作。

2、产品经理对软件使用人员进行培训。

3、开发工程师定时对软件进行各项维护,对使用过程中出现的问题要及时进行修改。

从以上基本流程可以看出,软件开发不单单只是开发人员的工作,要开发出一款符合需求、运行稳定的软件,项目组人员需要完成大量开发前期和后期的相关工作。

感谢原作者分享!

原地址:https://baijiahao.baidu.com/s?id=1619241521525428398&wfr=spider&for=pc

软件开发基本流程概述相关推荐

  1. 软件开发有哪些规范和标准_深圳APP软件开发的流程是什么?

    深圳APP软件开发的流程是什么?APP软件开发是根据用户需求构建软件系统或设备的软件部分的过程,是一项系统工程,包括需求捕获,需求分析,系统设计,系统实现和系统测试.APP软件通常以某种编程语言实现, ...

  2. JavaWeb - 软件开发的流程,综合案例

    转载请注明出处:https://blog.csdn.net/mythmayor/article/details/72844266 1.软件开发的流程 第一:需求的讨论第二:设计系统的原型第三:根据原型 ...

  3. 软件开发主要流程步骤

    软件开发主要流程步骤 1.需求采集 主要就是采集顾客要求,她们需要这款软件实现的什么功能. 2.需求分析 整合顾客需求,将需要归类内容归类并整理,大脑有思路. 3.原型开发 原型开发的软件网站有很多, ...

  4. APP软件开发详细流程如何?

    在互联网技术发达的今天,APP已经深入到我们生活的方方面面了,从购物.家政.洗车.教育到美容.旅游.餐饮等等,都可以通过各种各样的APP软件来实现,使我们的生活更加便捷化.智能化.不过,很多感兴趣的朋 ...

  5. 软件开发计划_软件开发的流程是怎么样的?福州IT告诉你:这五点是你需要掌握的...

    技术进步的过程使虚构的预测在言辞上变成了现实生活中的经历. 在本系列文章中,毫不夸张地说,移动应用程序无缝地改变了人们的日常生活,从早上发短信到深夜聊天. 显然,随着移动迅速超越笔记本电脑和台式机成为 ...

  6. Java -- 软件开发整体流程;项目环境dev,test,staging,prod

    软件开发整体介绍 作为一名软件开发工程师,我们需要了解在软件开发过程中的开发流程, 以及软件开发过程中涉及到的岗位角色,角色的分工.职责, 并了解软件开发中涉及到的四种软件环境.我们将从 软件开发流程 ...

  7. UP及按照UP进行软件开发的流程

    UP是统一过程的缩写,其将软件开发过程分为业务建模.需求.分析设计.实施.测试.部署.配置与变更管理.项目管理和环境共9项子任务,并从时间角度将软件开发分为初始阶段.细化阶段.构建阶段和移交阶段共4个 ...

  8. IT日语词汇讲解篇--对日软件开发的流程

    1.开发流程 企画→開発計画→SD→CD→PT→ST→検査 企画:也就是"引き合い".讨论一套系统应该如何制作. 開発計画:开发计划.开发的流程还有时间.工数(每个程序员的工作时间 ...

  9. 【深度学习】使用Keras开发的流程概述

    开发流程 典型的Keras工作流程如下: 定义训练数据:输入张量和目标张量 定义层组成的网络(模型),将输入映射到目标 配置学习过程:选择损失函数,优化器和需要监控的指标 调用模型的fit方法在训练数 ...

  10. 软件开发的流程--中英文对照

       1 相关系统分析员和用户初步了解需求,然后用WORD列出要开发的系统的大功能模块,每个大功能模块有哪些小功能模块,对于有些需求比较明确相关的界面时,在这一步里面可以初步定义好少量的界面. 2 系 ...

最新文章

  1. 2019年最新深度强化学习PPT(DeepMind制作)
  2. CTFshow 文件包含 web117
  3. sql 列求和_Excel VBA高级编程SQL检索(二)合并相同项并求和
  4. 1.7-33编程基础之字符串 33:判断字符串是否为回文
  5. 05.序列模型 W2.自然语言处理与词嵌入
  6. 卷积神经网络学习指南_卷积神经网络的直观指南
  7. mysql 修改字段长度 合并语句_mysql中利用sql语句修改字段名称,字段长度等操作...
  8. java 调用jni方法_Java JNI 本地方法调用Java对象方法
  9. python判断字符串回文_python实现--判断回文字符串、回文链表、回文数
  10. Centos上禁用 rpcbind 111端口
  11. ubuntu18.04设置开机自启动的脚本
  12. postfix+dovecot+maildrop+mailscanner+clamav+spamassassin搭建rhel6平台邮件服务器
  13. .NET中栈和堆的比较
  14. 谷歌浏览器 cococut version 视频下载插件配合倍速插件快速下载视频
  15. php 前台模板,前台模板
  16. bat操作ftp上传下载命令
  17. 共享打印机提示服务器没有运行,提示无法共享打印机: “无法显示该属性,后台打印程序服务未运行”...
  18. 【DataBase Notation(1/3)】Notation_Chen, Crow‘s Foot and UML
  19. CoordinatorLayout布局和自定义Behavior
  20. word在试图打开文件时遇到错误,解决办法

热门文章

  1. 如何使用 Spring Boot 开发邮件系统
  2. foremost windows_windows上安装foremost - kalibb
  3. 安卓游戏源码源代码下载
  4. 软件需求分析用例图 实例简述
  5. 【hadoop】HDFS原理 和 重要特性
  6. java汉字拼音首字母的获取解决方案
  7. 腾讯内部几乎满分的项目管理PPT
  8. ocr带单字坐标离线识别
  9. AD09之与AD6版本使用不同对比
  10. 重磅来袭,机器人四大家族财务报表大揭秘