软件开发流程

 

 

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
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值