精华内容
下载资源
问答
  • java开发流程 java 开发过程步骤 全程详解 jdbc 框架等
  • 网站的建设开发,看看这些。数字媒体资源开发,网站的开发流程体系介绍,网站必备哪些,开发前期需要做哪些工作,开发过程中要注意哪些问题。
  • 概述:软件开发流程(Software development process)即软件设计思路和方法的一般过程,包括设计软件的功能和实现的算法和方法、软件的总体结构设计和模块设计、编程和调试、程序联调和测试以及编写、提交程序。...

    概述:软件开发流程(Software development process)即软件设计思路和方法的一般过程,包括设计软件的功能和实现的算法和方法、软件的总体结构设计和模块设计、编程和调试、程序联调和测试以及编写、提交程序。


    开发流程

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

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

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

    1.4 编码   
    在软件编码阶段,开发者根据《软件系统详细设计报告》中对数据结构、算法分析和模块实现等方面的设计要求,开始具体的编写程序工作,分别实现各模块的功能,从而实现对目标系统的功能、性能、接口、界面等方面的要求。

    1.5 测试   
    测试编写好的系统。交给用户使用,用户使用后一个一个的确认每个功能。

    1.6 软件交付准备 
    在软件测试证明软件达到要求后,软件开发者应向用户提交开发的目标安装程序、数据库的数据字典、《用户安装手册》、《用户使用指南》、需求报告、设计报告、测试报告等双方合同约定的产物。   

    《用户安装手册》应详细介绍安装软件对运行环境的要求、安装软件的定义和内容、在客户端、服务器端及中间件的具体安装步骤、安装后的系统配置。   

    《用户使用指南》应包括软件各项功能的使用流程、操作步骤、相应业务介绍、特殊提示和注意事项等方面的内容,在需要时还应举例说明。

    1.7 验收   

    用户验收。
    以上就是基本的软件开发流程。

    2 软件开发流程V模型

    V模型大体可以划分为下面几个不同的阶段步骤,既需求分析、概要设计、详细设计、编码、单元测试、集成测试、系统测试、验收测试。    

    需求分析:既你首先要明确客户需要的是什么,需要软件做成什么样子,需要有那几项功能,这一点上比较关键的是分析师和客户沟通时的理解能力与交互性。要求分析师能准确的把客户所需要达到的功能,实现方式,等表述出来,给出分析结果,写出规格文档说明书。
        概要设计:主要是架构的实现,指搭建架构、表述各模块功能、模块接口连接和数据传递的实现等项事务。
        详细设计:对概要设计中表述的各模块进行深入分析,对各模块组合进行分析等,这一阶段要求达到伪代码级别,已经把程序的具体实现的功能,现象等描述出来。
        编码:按照祥细设计好的模块功能表,编程人员编写出实际的代码。
        单元测试:按照设定好的最小测试单元进行按单元测试,主要是测试程序代码,为的是确保各单元模块被正确的编译,单元的具体划分按不同的单位与不同的软件有不同,比如有具体到模块的测试,也有具体到类,函数的测试等。
        集成测试:经过了单元测试后,将各单元组合成完整的体系,主要测试各模块间组合后的功能实现情况,以及模块接口连接的成功与否,数据传递的正确性等。是软件系统集成过程中所进行的测试,其主要目的是检查软件单位之间的接口是否正确。它根据集成测试计划,一边将模块或其他软件单位组合成越来越大的系统,一边运行该系统,以分析所组成的系统是否正确,各组成部分是否合拍。
       系统测试:经过了单元测试和集成测试以后,我们要把软件系统搭建起来,按照软件规格说明书中所要求,测试软件其性能功能等是否和用户需求相符合,在系统中运行是否存在漏洞等。
       验收测试:主要就是用户在拿到软件的时候,会根据前边所提到的需求,以及规格说明书来做相应测试,以确定软件达到符合效果的。

    1 软件开发过程及输出


    展开全文
  • 开发流程

    千次阅读 2020-02-28 14:54:34
    开发流程 产品目的 转化为确切文档,产品经理 PRD 产品需求文档 开会,可行性分析 -> 产品经理,项目经理(技术团队) 项目周期/项目评估/测试团队(测试用例) 后端 工程师设置数据库表结构 项目架构选型 ...

    开发流程

    • 产品目的
    • 转化为确切文档,产品经理 PRD 产品需求文档
    • 开会,可行性分析 -> 产品经理,项目经理(技术团队)
      • 项目周期/项目评估/测试团队(测试用例)
    • 后端
      • 工程师设置数据库表结构
      • 项目架构选型
      • 搭建基础工程
      • 封装工具
      • 搭建开发环境
      • 编写接口文档,再进行开发
    • 前端
      • 将文档转换为原型图,原型图转化为具体图片(产品经理,设计)
      • 架构选型
      • 封装通用工具
      • 提前准备学习新技术(动画效果)
      • UI给图,前端替换资源
    • 前后端联调,前端请求后端接口,有开发环境就很方便,如果没有
      • 没有开发环境,前端运行代码
      • 也可以访问本地(前后端必须在同一个网域内)
    • 联调后送测
      • 黑盒测试(功能测试)
      • 白盒测试
      • 渗透测试
    • 反馈BUG -> 确认 -> 修复 ->关闭BUG
    • 准备上线,合并代码
      • 夜深人静的时候更新服务器(人少的时候)
    • 迭代需求,进行周而复始的开发
    • 循环不断循环
    展开全文
  • 软件开发过程流程图.pdf
  • 如何开发一款游戏:游戏开发流程及所需工具

    万次阅读 多人点赞 2018-01-03 00:00:00
    本文来自作者goto先生在GitChat上分享 「如何开发一款游戏:游戏开发流程及所需工具」,「阅读原文」查看交流实录。「文末高能」编辑 | 哈比游戏作为娱乐生活的一个方面,参与其中的人越来越多,而大部分参与其中的...

    本文来自作者 goto先生  GitChat 上分享 「如何开发一款游戏:游戏开发流程及所需工具」

    编辑 | 哈比

    游戏作为娱乐生活的一个方面,参与其中的人越来越多,而大部分参与其中的人都是以玩家的身份。

    他们热爱一款游戏,或是被游戏的故事情节、炫丽的场景、动听的音乐所艳羡,亦或是被游戏中角色扮演、炫酷的技能、有趣的任务所吸引,然而他们中的大多数可能并不了解如此一款好玩的游戏是如何打造出来的。

    对于想来这个行业尝试的新人们,先对游戏开发制作有个整体的了解也是非常必要的。

    接下来我将从几个方面来分别进行阐述。

    基础知识

    游戏,说白了就是一个程序,这个程序或在 PC 上或在移动设备上运行,玩家通过与这个程序交互来达到娱乐性的目的。我们先了解一下游戏中用到的各种引擎以及游戏相关术语。

    游戏引擎

    游戏引擎是游戏研发的主程序接口,它为开发者提供了各种开发游戏的的工具,即可编辑游戏系统和实时图像系统的核心组件,其目的就在于让开发者可以快速的做出游戏而不必从零开始。

    游戏引擎包含渲染引擎、物理引擎、碰撞检测系统、网络引擎、音效引擎、脚本引擎、动画及场景管理等。

    • 渲染引擎:是对游戏中的对象和场景起到渲染的效果,游戏中的角色都是通过渲染引擎将它的模型、动画、光影、特效等所有效果实时计算出来并展示到屏幕;

    • 物理引擎:让对象运动遵循特定的规律,比如当角色跳起的时候,系统内定的重力值将决定它弹跳的高度及下落的速率;

    • 碰撞检测系统:可以探测各物体的边缘,当两个 3D 物体在一起的时候,系统可以防止它们相互穿过;

    • 网络引擎:是负责玩家与设备间的通信,处理来自键盘、鼠标及其它外设信号。若游戏联网,它也用来管理客户端与服务器间的通信;

    • Lua 引擎:是 Lua 的服务器引擎,lua 是一种轻量级的嵌入式脚本语言,在网游开发中应用广泛。

    总的来说,一个游戏是引擎和资源组成的,资源包括图象、声音、动画等,游戏引擎就像一个发动机,控制着游戏的运行,它按游戏设计规则依次调用游戏资源。

    游戏名词

    • CD-key:游戏的序列号或防盗密码;

    • BugFree:测试管理平台,是一款基于 Web 的开源错误追踪工具;

    • Ping:从客户端发送数据到服务器到接收到服务器反馈数据的时间,以 ms 计,若 Ping 值高会感觉延迟;

    • Proxy Server:代理服务器,代理网络用户去取得网络信息;

    • PU:付费用户;

    • RU:注册用户;

    • AU:活跃用户;

    • DAU:平均每日活跃用户;

    • CCU:同时在线人数;

    • PCU:最高同时在线人数;

    • ACU:平均同时在线人数;

    • ARPPU:付费玩家平均收入;

    • 封测:限定用户数量的游戏测试,用来对技术和游戏产品进行初步的验证,用户规模较小;

    • 内测:面向一定数量用户进行的内部游戏测试,多用于检测游戏压力和功能有无漏洞;

    • 公测:对所有用户公开的开放性的网络游戏测试。

    游戏的种类

    游戏的分类方法很多,可以按终端、内容、摄像类型、玩家格斗对象、玩家人数等来分,其中按内容来分最直观,它可以根据游戏的元素迅速锚定游戏范围。

    • 按终端分:主机游戏 (电视机游戏)、客户端游戏、网页游戏、手机游戏;

    • 按摄影类型分:2D 游戏、2.5 游戏、3D 游戏;

    • 按格斗对象分:PVE:PlayerVsEnvironment、PVP:PlayerVsPlayer;

    • 按玩家人数分:单机游戏(Singe-Player Game)、多人游戏(Muti-Player Game)、大型多人在线(Massive Multiplayer Online Game)。

       

    我们可以看一下 AppStore 中游戏的分类,非常鲜明,如下图所示。

    游戏的开发流程

    游戏开发从狭义上讲就是程序部门进行相关游戏程序的编写,从广义上讲,是整个游戏制作过程,这其中包括多个部门的人员配备。下图是一个一般性的游戏开发团队。

    整个团队包含四个部门,即策划、美术、程序、制作人,各个部门负责不同的工作,协调完成整个游戏的开发。

    策划是团队的灵魂,也分执行策划、数据策划、表现策划、资源策划等,他们主要对游戏剧情、背景进行分析设计,对游戏中的各种规则进行描述及公式确定,对各种资料表格进行维护,对游戏中的特效、动作等进行收集并提出需求,进行 UI 设计及模型相关配置等。

    程序是团队的骨肉,也可细分为主程序、客户端引擎、服务器引擎、3D 程序、AI 程序、脚本程序、数据库程序等,他们主要负责确定程序的数据结构,确定策划方案的完成方法,将策划提出的各种需求用程序来实现,并为游戏开发过程提供良好的编辑工具。

    美术是团队的皮肤,可细分为人物原画、人物建模、材质贴图、人物动作、场景动画等,他们主要负责整个游戏的视觉风格,以及人物模型动作等的设计等。

    制作人主要进行游戏的外部统筹,市场调研、游戏开发进度、游戏版权、游戏宣传、游戏发布及音乐音效素材的管理都是制作人工作的范畴。

    下图是某国外游戏研发团队的组织架构图,可以参考了解一下。

    游戏开发的各个时期

    对于游戏制作人来说,每个游戏从产生要消亡要经历各个阶段,下面是普遍适用的典型范例,但并不是每个游戏都要经历所有的时期。

    • 概念时期:就是整个游戏概念的确定,要做什么样的游戏,主题线索是什么;

    • 原型开发时期:这个时期要制作游戏的原型,用来体验游戏的设计概念,从而纠正和改善不足的地方;

    • 推广时期:此时是游戏开发方向出版方推广产品,向投资方展示游戏的设计概念、主要卖点、产品如何适应市场的需求、产品开发的可行性及具体的实现方案;

    • 准备时期:这个时期主要处理游戏项目所涉及的商务及法律方面的事务,比如游戏专利、剧本版权、品牌商标等,从而组织开发团队制作大致的方案,确定游戏开发所需要的工具及其它细节问题;

    • 制作时期: 这个时期是游戏制作的主体时期,完成 3D 模型的制作,场景制作,过场动画、画面渲染及音效录制等,游戏引擎和资源在此时期将被完全整合到一起。

    • 质量保证时期:这个时期是游戏的 QA 或测试时期,主要用来保证游戏的各项功能是否完好,从而发现和修复各种 Bug 和错误;

    • 母盘生成时期:这个时期是将游戏存盘交由平台厂商测试检测的时期,每个平台厂商的测试标准不尽相同,这个时期中也需要不断地测试改进游戏,修复 Bug,准备市场投放。

    • 运营维护时期:这个时期是游戏发布后持续运营,在运营过程中发现问题,修复并更新升级的过程,这是一个长期的过程。

    项目流程

    一部游戏完整的开发过程,归纳起来可分为五步,如下图所示。

    市场调研可以分为三个小部分,

    1)调研前进行 “头脑风暴”,让尽量多的人想出尽量多的创意点子并做好记录,从而在市场调研过程中一一确认,不符合的排除;

    2)撰写策划草案,从而让项目小组中的每一个成员对开发的项目有一个大体的认识,并且对目标明确;

    3)对每一个草案都进行市场调研和分析,决定是否要开发这个游戏。市场调研主要从两个方面入手,即目标客户(玩家)和开发成本。

    需求分析主要是撰写需求分析书,这主要包括三个方面:

    1)策划需求

    • 策划的分工:包括剧本、数值、界面、执行等方面;

    • 进度控制:要时刻注意时间和开发进度的控制,需要写一个专门的项目进度汇总表。

    2)美术需求

    • 场景:包括游戏地图、小场景等方面;

    • 人物:包括玩家角色、重要 NPC(玩家队友、提供任务的 NPC、主线剧情 NPC 等)、次要 NPC(路人、村民等)、怪物、BOSS 等;    

    • 动画:动画方面估计每个公司的需求都不尽相同。如果公司能力有限,动画的制作可以考虑外包的方式;

    • 道具:主要需要考虑是否采取纸娃娃系统;

    • 全身像:人物的全身像方面;

    • 静画 &CG:游戏中可能出现的静画和 CG 的需求,没有则不需要写;

    • 人物头像:人物的头像制作需求,其中包括人物的表情方面,包括喜、怒、哀、乐和悲等多种表情;

    • 界面:界面的需求,包括主界面、各项子界面、屏幕界面、开头界面、END 界面、保存和载入界面等方面;

    • 动态物件:包括游戏中可能出现的火把、光影等方面;

    • 卷轴:又称为滚动条。根据游戏的情况来定具体的需求;

    • 招式图:根据游戏开发的具体情况决定是否有此需求;

    • 编辑器图素:各种编辑器的图素需求,例如关卡编辑器、地图编辑器等方面;

    • 粒子特效:3D 粒子特效的需求;

    • 宣传画:包括游戏的宣传画、海报等方面的制作需求;

    • 游戏包装:游戏客户端的封面包装的制作;

    • 说明书插图:游戏说明书内附插图的制作需求;

    • 盘片图鉴:游戏客户端盘片上的图鉴的制作需求;

    • 官方网站:游戏官方网站的制作需求。

    3)程序需求

    • 地图编辑器:包括编辑器的功能需求、各种数据的需求等;

    • 粒子编辑器:关于粒子编辑器的需求;

    • 内镶小游戏:包括游戏内部各种小游戏的需求;

    • 功能函数:包括游戏中可能会出现的各种程序功能、技术参数、数据、碰撞检测、AI 等方面的需求;

    • 系统需求:包括升级系统、道具系统、招式系统等系统导入器的需求。

       

    项目开发步骤就是将整个游戏项目的资源通过引擎组织起来,对游戏的架构、功能及各逻辑模块进行充分的整合。

    这就要明确游戏开发的日程和进度安排,这也是充分利用各种开发工具让开发效率大大提升的根本所在。

    测试发布流程主要包括两次大型正规的测试,即 Alpha 测试和 Beta 测试,其中前者意味着游戏的功能和流程完整,QA 会为游戏定制测试计划,测试人员将发现的 Bug 提交到数据库,开发和设计人员对相应的错误进行修复。

    后者意味着游戏中的各种资源已完成,产品已定型,后期只是修复 Bug。在这两次测试修复后,得到待发布的 Release 版。

    Gold Release 流程主要是开发游戏的各种补丁包、游戏的升级版本,以及官方的各种礼包和插件等。

    游戏开发所用的工具

    选择正确的工具,可以为游戏项目节省开支,提高工作质量,降低项目风险,让整个项目团队成员集中注意力,从而把游戏做得好玩。

    程序工具软件

    • OpenGL ES——OpenGL 长期以来都是行业内 2D/3D 图形高质表现的标准,它适用于各种设备。OpenGL ES 提供了在软件应用程序和软件图像引擎间的底层 API 接口;

    • IncrediBuild——这个开发工具极大的提升了 VS/VC 的编译和版本生成速度,有效降低增量构建所需要花费的时间,它主要是采用分布式编译技术,在公司内网可以调用其它计算机的资源进行快速编译。这是开发人员不可多得的一款好工具;

    • VS2013——微软的 VS 集成开发环境多年来都是游戏制作的基本软件,界面友好,功能齐全,可以极大的提升编码速度和工作流;

    • Visual Assist X——这是一个插件,引入了强大的编辑功能,完全整合在 C++IDE 环境中,可以极大的提升开发人员的工作进程,不过有的 IDE 环境已经整合了这款插件,自己不用手动安装了;

    • Direct X——它是微软在过去建立的众多行业标准之一,它是一种视窗技术,可以让你在玩游戏或观看视频过程中图像和音效有更高的品质,它包含多个配套组件,如 Direct3D、DirectSound、DirectPlay、DirectInput 等。

    美术制作工具

    美术制作工具要远多于程序软件,因此在游戏开发过程中,选择美术软件时要慎重考虑,以方便项目的顺利进展。

    • Maya——它是行业内首选的 3D 动画制作软件之一,它功能十分强大,可用于高端电脑构图,可以处理几乎所有的 3D 制作工作。

      比如模型构建、动画制作、描绘渲染、电影特效等。但其缺点也在于其多边形建模工具不太理想;

    • 3D Studio Max——它是游戏开发中 3D 程序开发的主流引导者,其多边形建模工具是所有 3D 程序中最棒的工具,用它进行开发效率也特别高;

    • PhotoShop CS——该软件在游戏制作中被广泛应用,是游戏制作的必备软件,它在游戏开发的各个时期都会用到,包括前期制作到最终完成并市场推广。美术人员用它来做出游戏环境和角色的设定,策划也用它来画关卡规划和界面示意图;

    • FaceGen Modeller——这是一款 3D 头脸创作工具,它可以为游戏制作多个角色,从而快速做出人物脸部及头部模型,形态非常逼真;

    • Zbrush——这款工具的特点在于使艺术模型呈现传统艺术创作的过程,它可以辅助制作人员做出逼真的环境多边模型,是地图场景的绝佳工具;

    • Granny——可以作为游戏的一个批量输出工具,它能够完成所有艺术素材,包括模型、渲染和过场动画的植入。它可以生成法线和纹理贴图,更是一款引擎解释工具。

    游戏组件工具

    游戏组件是指游戏的基本环境架构,比如描绘、场景和几何构型的构建,也称为中间件。

    • Havok——这是目前比较先进的物理引擎,它能让游戏模拟现实,可以将游戏做出非常逼真的效果;

    • Gamebryo——这是一款能够帮助开发人员快速制作原型版的工具,功能强大,运行稳定,是比较好的 3D 实时图形引擎,其强大的渲染引擎和动作处理系统使其在商业上获得巨大的成功;

    • Quazal——它属于网络建筑中间件,主要用于制作大型多人在线游戏,其它类似的中间件有 Big World。

    音效工具

    音效作为游戏里的重要组成部分,选择合适的工具也非常重要。作为游戏开发人员,关键要了解各种工具的使用限制,有很多的专业音效制作工具,包括 Nuendo、Vegas、Logic、ProTools、Peak、GameCODA、SoundForge 等。

    场景构建工具:

    • Unreal Engine——这是一款比较完型的游戏开发引擎,它提供了比较全能的关卡编辑器、过场动画系统、3D 图形及 AI;

    • Source——这款引擎为人物角色动画提供了新技术,先进的 AI、光影渲染、实景图象都非常棒,引擎也包含了先进的物理引擎。

    日常管理工具

    游戏开发过程中所涉及的事务比较多,内容也比较繁杂,用好日常管理工具可以有效提升工作效率。下面是几个用得比较多的工具:

    • MicroSoft Excel——利用它进行开发进度管理,开发人员可以非常轻松地跟踪管理多个游戏开发部门的进度,开发人员必须要对其十分熟悉,才能用的得心应手;

    • 日常工作增量进程报告 (daily delta reports)——一个项目成功的关键就是运用日常工作进程报告,在这个过程中,每一名团队成员每天上交一份个人当日工作完成情况清单。这种进程报告的方式可以简明扼要、方便有效地跟踪项目进程;

    • 源码控制报告和版本控制报告——目前大部分项目研发用的版本控件工具是 SVN、Perforce、Git 等,在使用版本控制软件前,一定要花一定的时间来熟悉软件的功能和使用方法,这对于游戏研发人员非常关键,否则就会犯些不必要的错误,从而导致工作效率下降;

    • 运用 WiKi——它是协作性文档,是自由讨论和创造性工具,是最佳管理设计性文档的方法,当团队无法建立一个内部局域网来管理各种记录和设计进程或建立局域网工作量过大时,WiKi 就是你最佳的选择。

    好了,关于游戏开发的相关知识,我就介绍到这里。游戏开发涉及的知识太多太多,我在这里只是概括性的做了一个引入,希望对您有些许的帮助,文章内容不免有很多不足之处,还请各位大侠多多指教。

     

    推荐书籍

    《游戏开发 世嘉新人培训教材》

    《游戏设计入门:理解玩家思维》

     

    展开全文
  • 项目开发流程

    2018-03-30 09:15:50
    项目开发并不是一个简单的过程,我们需要遵循一些开发流程。一个项目的开发会被分成很多步骤来实现,每一个步骤都有自己的起点和终点。也正如此使得开发过程中的每个步骤起点和终点在不同的软件项目中出现不同难度的...
  • IT项目开发流程

    万次阅读 多人点赞 2019-06-01 11:48:24
    项目开发流程: 一、需求分析: 相关系统分析员向用户初步了解需求,然后用相关的工具软件列出要开发的系统的大功能模块,每个大功能模块有哪些小功能模块,对于有些需求比较明确相关的界面时,在这一步里面可以...

    感谢内容提供者:金牛区吴迪软件开发工作室

    项目开发流程:

    在这里插入图片描述

    在这里插入图片描述

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

    首先,开发者需要对软件系统进行概要设计,即系统设计。
    概要设计需要对软件系统的设计进行考虑,
    包括系统的基本处理流程(包括系统逻辑、业务逻辑)系统的组织结构(一级功能、二级功能等)模块划分(不同的功能模块分析)功能分配接口设计(公用接口、私有接口、类的继承等)运行设计、数据结构设计(数据表的设计)出错处理设计等,为软件的详细设计提供基础。

    三、详细设计

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

    四、编码实现

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

    五、软件测试

    测试编写好的系统。交给用户使用,用户使用后一个一个的确认每个功能。
    软件测试有很多种:

    1. 按照测试执行方,可以分为内部测试和外部测试;
    2. 按照测试范围,可以分为模块测试和整体联调;
    3. 按照测试条件,可以分为正常操作情况测试和异常情况测试;
    4. 按照测试的输入范围,可以分为全覆盖测试和抽样测试。

    以上都很好理解,不再解释。总之,测试同样是项目研发中一个相当重要的步骤,对于一个大型软件,3个月到1年的外部测试都是正常的,因为永远都会有不可预料的问题存在。完成测试后,完成验收并完成最后的一些帮助文档,整体项目才算告一段落,当然日后少不了升级,修补等等工作,只要不是想通过一锤子买卖骗钱,就要不停的跟踪软件的运营状况并持续修补升级,直到这个软件被彻底淘汰为止。

    六、软件交付

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

    七、系统验收和维护

    根据软件设计的需求对照系统功能的完成情况,是否有遗落或者风格等问题。软件在使用的过程中,用户在使用的过程中还会出现各种未知的情况,程序员或者产品设计方,根据产品使用方的实际情况进行一定时间的软件维护。(一般程序的维护费用和设计的费用是分开的,一般在项目一开始进行时,最好彼此讲清楚)

    PS:Git或者SVN的团队协作流程要熟练掌握!
    展开全文
  • 产品开发过程流程

    2014-07-31 11:00:10
    此资源是一个产品开发流程图,主要描述了每个开发阶段中各个部门所要开展的活动,以及每个阶段活动对应的输入和输出。
  • 软件开发流程

    2018-09-05 13:20:13
    软件开发流程,描述软件的开发过程过程事项、定义,为项目管理提供指引操作
  • 软件开发基本流程,及其介绍,开发过程展示.
  • LOGO LOGO * * 产品开发过程介绍 相关流程介绍 开发过程中接口部门职能介绍 内容提要 产品开发过程介绍-总体介绍 产品开发过程介绍-硬件开发流程 产品开发过程介绍 相关流程介绍 开发过程中接口部门职能介绍 流程...
  • 华为硬件开发流程.pdf

    2020-07-15 10:50:30
    详细描述了华为的硬件开发流程(包括硬件开发过程简介,硬件工程师职责与基本技能,硬件开发规范化管理等等),值得广大电子信息学生及硬件入门者学习,如有违规,请联系撤销
  • “现在,是时候改进您的游戏开发流程了。在这里,无论您是在独立的初创公司亦或大型游戏工作室中,我们都可以调度资源,使您的工作室的开发和设计工作晋升一个层次。” [img=...
  • 硬件开发流程 1.0目的 规范硬件开发流程控制硬件开发质量确保硬件开发项目能按预定目标完成 2.0范围 适用丁开发部所有硬件及简单单板软件开发 3.0职责 3.1开发部经理 3.1.1会同技术管理部对硬件概要设计及其文档进行...
  • 比较详细的开发过程流程图,比较详细的开发过程流程
  • 基于F1JEE-J2EE业务开发流程开发过程
  • 嵌入式产品开发流程

    千次阅读 2018-08-28 15:53:50
    本文系转载, 来源: ... 嵌入式产品,与普通电子产品一样,开发过程都需要...但是,与普通电子产品相比,嵌入式产品的开发流程又有其特殊之处。它包含嵌入式软件和嵌入式硬件两大部分,针对嵌入式硬件和软件的开发...
  • 笔者决定在嵌入式企鹅圈2016年的首篇文章中,发表微信硬件物联领域极具实践价值的文章,它将能指引和帮助任何有兴趣于物联网开发的童鞋们快速掌握微信硬件开发流程,只需一个小时,而再不需要通过揣摩微信硬件浩瀚的...
  • 关于软件开发的具体流程关于软件开发的具体流程关于软件开发的具体流程
  • 硬件电路开发流程规范 硬件电路开发流程是指导硬件工程师按规范化方式进行开发的准则 规范了 硬件电路开发的全过程 硬件电路开发流程制定的目的是规范硬件电路开发过程 控制硬件电路开发质量确保硬件电路开发能按...
  • 开发流程模板文档

    2018-10-25 14:53:24
    囊括整个软件开发过程所要用到的所有文档模板,可参考
  • 互联网开发流程

    2015-08-17 17:29:28
    通过流程图方式,直观形象的描述互联网的开发过程
  • 前后端分离标准化应用的开发过程管理 背景 最近一段时间系统维护过程中暴露出很多问题,甚至是...整个项目的全生命周期的标准化开发流程如下: 开发过程 开发-测试-集成-投产是项目迭代过程中最重要的循环,这部...
  • Java开发流程(流程图)

    热门讨论 2010-04-10 16:58:42
    Java开发流程 Java开发流程 Java开发流程 Java开发流程 Java开发流程
  • 软件开发流程

    2008-06-05 09:38:10
    软件开发流程图-开发过程中常用流程
  • uniapp安卓原生插件开发流程

    千次阅读 热门讨论 2020-12-16 14:10:05
    文章目录记录下uni原生插件开发流程一、准备开发环境二、开发过程2.读入数据总结 记录下uni原生插件开发流程 看官方文档看的有点头蒙 特此记录下 官方文档链接 一、准备开发环境 JAVA环境 jdk1.8 Android Studio ...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 3,197,219
精华内容 1,278,887
关键字:

开发流程