软件开发流程

原创 2013年12月03日 16:53:00

 

 

javaweb项目开发流程

一、需求分析

1.相关系统分析员向用户初步了解需求,然后用word列出要开发的系统的大功能模块,每个大功能模块有哪些小功能模块,对于有些需求比较明确相关的界面时,在这一步里面可以初步定义好少量的界面。[1]
2.系统分析员深入了解和分析需求,根据自己的经验和需求用WORD或相关的工具再做出一份文档系统的功能需求文档。这次的文档会清楚列出系统大致的大功能模块,大功能模块有哪些小功能模块,并且还列出相关的界面和界面功能。
3.系统分析员向用户再次确认需求。

二、概要设计

首先,开发者需要对软件系统进行概要设计,即系统设计概要设计需要对软件系统的设计进行考虑,包括系统的基本处理流程、系统的组织结构、模块划分、功能分配、接口设计、运行设计、数据结构设计和出错处理设计等,为软件的详细设计提供基础。

三、详细设计

概要设计的基础上,开发者需要进行软件系统的详细设计。在详细设计中,描述实 现具体模块所涉及到的主要算法、数据结构、类的层次结构及调用关系,需要说明软件系统各个层次中的每一个程序(每个模块或子程序)的设计考虑,以便进行编码和测试。应当保证软件的需求完全分配给整个软件。详细设计应当足够详细,能够根据详细设计报告进行编码。

四、编码

软件编码阶段,开发者根据《软件系统详细设计报告》中对数据结构算法分析和模块实现等方面的设计要求,开始具体的编写程序工作,分别实现各模块的功能,从而实现对目标系统的功能、性能、接口、界面等方面的要求。在规范化的研发流程中,编码工作在整个项目流程里最多不会超过1/2,通常在1/3的时间,所谓磨刀不误砍柴功,设计过程完成的好,编码效率就会极大提高,编码时不同模块之间的进度协调和协作是最需要小心的,也许一个小模块的问题就可能影响了整体进度,让很多程序员因此被迫停下工作等待,这种问题在很多研发过程中都出现过。编码时的相互沟通和应急的解决手段都是相当重要的,对于程序员而言,bug永远存在,你必须永远面对这个问题,大名鼎鼎的微软,可曾有连续三个月不发补丁的时候吗?从来没有!

五、测试

测试编写好的系统。交给用户使用,用户使用后一个一个的确认每个功能。软件测试有很多种:按照测试执行方,可以分为内部测试和外部测试;按照测试范围,可以分为模块测试和整体联调;按照测试条件,可以分为正常操作情况测试和异常情况测试;按照测试的输入范围,可以分为全覆盖测试和抽样测试。以上都很好理解,不再解释。总之,测试同样是项目研发中一个相当重要的步骤,对于一个大型软件,3个月到1年的外部测试都是正常的,因为永远都会又不可预料的问题存在。完成测试后,完成验收并完成最后的一些帮助文档,整体项目才算告一段落,当然日后少不了升级,修补等等工作,只要不是想通过一锤子买卖骗钱,就要不停的跟踪软件的运营状况并持续修补升级,直到这个软件被彻底淘汰为止。

六、软件交付

在软件测试证明软件达到要求后,软件开发者应向用户提交开发的目标安装程序、数据库的数据字典、《用户安装手册》、《用户使用指南》、需求报告、设计报告、测试报告等双方合同约定的产物。
《用户安装手册》应详细介绍安装软件对运行环境的要求、安装软件的定义和内容、在客户端、服务器端及中间件的具体安装步骤、安装后的系统配置
《用户使用指南》应包括软件各项功能的使用流程、操作步骤、相应业务介绍、特殊提示和注意事项等方面的内容,在需要时还应举例说明。

七、验收

用户验收。

2软件维护

1、软件数据库管理
title

  title

2、用户跟踪培训
3、故障分析解决

3软件升级

需求调整分析
软件功能拓展
优化系统

4报废处理

软件不能适应业务发展
新软件项目立项
企业数据信息备份

5举例解析

1 例如某家公司想找人订做一套人事管理软件,从某种渠道上得知某家软件开发公司提供这种服务,所以进行联系。
2 软件开发公司会派专门的软件工程师到他们那里去了解我们要设计一个什么的东西给用户用,然后回来做个方案给他们,其中方案的内容包括:开发出来的软件大概的界面是怎样?方便什么人使用?什么人可以使用什么功能?方便到什么程度?大概的硬件要求是怎样等?
3 用户看了方案后,确定他们就是要做一套这样的软件,开发方就开始开发这套软件。
4 开发方把开发出来的软件交给用户使用,其中在使用的过程中哪里使用不方便或哪里达不到要求,开发方会第一时间修改这些功能,直到用户要求的所有功能都能很完美的解决掉。
5 用户如果因为公司发展壮大的需要,需要将软件升级开发方会做功能拓展。

6学习内容

首先让我们来看一下软件工程师考试(高级)要求:
(1)理解软件工程管理的概念和任务;
(2)理解软件生存期过程;
(3)理解软件工程标准;
(4)掌握需求分析、测试、维护基本技术;
(5)掌握软件度量、软件配置管理方法;
(6)理解软件复用概念;
(7)理解软件质量保证的手段;
(8)理解软件项目对人员的需求;
(9)理解软件知识产权的基本知识。
通过本级水平考试的合格人员具有从事软件系统分析与工程系统分析员、工程管理员的实际工作能力和业务水平。
版权声明:本文为博主原创文章,未经博主允许不得转载。

软件开发流程

软件开发流程 迭代化软件开发技术 1. 传统开发流程的问题 传统的软件开发流程是一个文档驱动的流程,它将整个软件开发过程划分为顺序相接的几个阶...
  • arnoldlu
  • arnoldlu
  • 2013年09月12日 17:07
  • 6493

常用软件开发流程分析

软件开发模型(Software Development Model)是指软件开发全部过程、活动和任务的结构框架。软件开发包括需求、设计、编码和测试等阶段,有时也包括维护阶段。 软件开发模型能清晰、直观...
  • gysmmzh
  • gysmmzh
  • 2016年11月13日 10:25
  • 1387

软件开发流程

1. 产品需求定义 产品需求定义的目标是:“清楚地描述要做的产品是什么样的?不涉及具体实现方法。”,其定义过程如下图所示。    此产品需求定义包括:软件+硬件。   2. 结构化设计方法的...
  • lbaihao
  • lbaihao
  • 2015年08月20日 22:48
  • 11185

软件开发过程的一个实例

软件开发过程的一个实例 需求阶段 在接到任务后,先与业务员(商务)进行需求沟通,多提出业务员当时未向客户提出的关键问题,详细了解需求并试图想到解决需求的方法,与业务员沟通解决方法是否可行...
  • farce
  • farce
  • 2017年03月30日 09:13
  • 580

软件开发过程学习笔记(一)之软件开发流程

概述:软件开发流程(Software development process)即软件设计思路和方法的一般过程,包括设计软件的功能和实现的算法和方法、软件的总体结构设计和模块设计、编程和调试、程序联调和...
  • u010963246
  • u010963246
  • 2015年07月08日 12:43
  • 2388

软件流程--开发流程规范

需求整理阶段 1、PRD、接口文档、数据库文档等按Sprint分开整理并同步到Confluence 2、前后端分离开发模式下,后端设计接口开发文档,同步到Confluence,同时提供mo...
  • zc529739024
  • zc529739024
  • 2017年04月12日 15:29
  • 648

软件开发模型——Scrum敏捷开发初了解

Scrum 核心价值观  承诺(Commitment):承诺不只是把一项工作分配给团队,也不是简单的答应去完成。它是建立在目标之 上的来自内心的接受和应许,这里只有“做”和“不做”,没有...
  • ouyangshima
  • ouyangshima
  • 2013年07月11日 19:45
  • 2077

面试总结-----工程化软件项目开发的流程、步骤

工程化软件项目开发的流程、步骤 需求分析 (1)相关系统分析员向用户初步了解需求,然后用相关的工具软件列出要开发的系统的大功能模块,每个大功能模块有哪些小功能模块,对于有些需求比较明确相关的界面时,...
  • jianyuerensheng
  • jianyuerensheng
  • 2016年11月14日 11:11
  • 964

软件开发方法的过程、特点、优缺点

几种常见软件开发方法的优缺点  (2012-09-04 20:47:55) 转载▼ 标签:  软件开发   数据流图   结构化分析   结...
  • m8396017
  • m8396017
  • 2016年05月09日 20:10
  • 1985

软件开发流程个人理解

软件开发流程理解
  • u011301203
  • u011301203
  • 2016年09月01日 02:05
  • 751
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:软件开发流程
举报原因:
原因补充:

(最多只允许输入30个字)