精华内容
下载资源
问答
  • 开发流程

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

    开发流程

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

    万次阅读 多人点赞 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 就是你最佳的选择。

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

     

    推荐书籍

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

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

     

    展开全文
  • 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的团队协作流程要熟练掌握!
    展开全文
  • 一个软件完整的开发流程介绍

    万次阅读 多人点赞 2018-03-29 19:11:28
    刚开始写博文的时候就应该将这个文章更新一下,虽然不是什么大牛,但是对于软件的开发流程还是比较了解的,毕竟大大小小做过了好几个项目了,今天就大概的说一下,用我做过的一个项目来说吧,写的不好的,请多多见谅...

    刚开始写博文的时候就应该将这个文章更新一下,虽然不是什么大牛,但是对于软件的开发流程还是比较了解的,毕竟大大小小做过了好几个项目了,今天就大概的说一下,用我做过的一个项目来说吧,写的不好的,请多多见谅,毕竟小生不才。

    开发流程百度的解释是:


    不是我懒得写,而是觉得写出来也不是自己的,还不如直接告诉你们我是百度的概念...但是下面的我们就不要百度了,因为百度说的太专业,让你看了很烦,最起码我是很烦(都是些什么玩意).


    进入正题

    我们分公司性质来说一个软件的开发流程,

    软件公司和非软件公司

    非软件公司

    需求分析-概要设计-程序编码-程序测试-软件交付-客户验收-码农维护

    软件公司

    需求分析-概要设计-详细设计-程序编码-程序测试-软件交付-客户验收-码农维护

    我们一步一步的说:

    需求分析

    一个软件没有出现之前,只是有一部分人有一个想法,我需要一个这样的东西(想要一个孩子了)用来管理我的什么什么,这个时候一个想法出现了,就会有这个需求,他会找软件公司需求分析师来商量,这个时候一个软件就怀孕了,相当于开始发育了.需求分析是听完要求以后会将大概的功能描述一下,用Word或者Axure画出一个简单的Demo给用户看,经过几次确认以后需求分析师会最后确认功能是不是完善的,确认了以后进行我们的下一步,概要设计

    概要设计

    这个功能主要是干嘛的呢?很多的公司觉得没必要,其实是很有必要的,这个就是相当于先规划一下怎么平安度过怀孕期,对于软件来说就是软件的处理逻辑,大概的一个流程是怎么走的,大概需要哪些模块,怎么运行,需要大概多少接口,后期怎么维护等问题,做这些干呢吗?为了下一步-详细设计

    详细设计

    有人说,详细设计是很麻烦的一步,其实不是很麻烦的一步,我觉得是最难的一步,详细设计主要是用来确认细节的,接口的名字啊,控制器的名字啊,多少个控制器,谁来调用谁,这个不可以有错,因为后期码农是需要看这个开发的,你怎么起名字,他们就怎么写,所以这里出错也就意味着编码的时候也会错,最后会有一份详细设计书出现,这个就是告诉孕妇具体吃什么,怎么吃,多少量。

    码农编码

    很多人觉得这个就是搬砖,看着设计书就直接写就可以了,理论是这样的,但是为什么还有很多的bug出现呢?很大一部分原因并不是设计的原因(当然也有可能),很大原因是不规范造成的,还有就是是不是一个项目组的人可以协作处理代码,怎么做可可以提高编码的效率,这些问题都是在编码的时候出现的问题。这个是相当于孕妇实施那一套套餐的时候具体是不是按规范来吃的。

    程序测试

    这一步是里面很重要的一步,测试,我们不可能说写好直接就给用户用了,这个是不现实的,我们需要做的是先给测试部门进行系统的测试,当然这个测试不是按照用户的想法来的,他们会很暴力,举个栗子,一个按钮,正常的用户使用的时候会直接点击一次,看到效果就可以了,但是测试的时候不是,他们会疯狂的点击,知道他们觉得这个世界上不会有人比他们暴力的时候他们会停止,当然这是一个好的测试人员,很多的测试不会是这样的,他们觉得正常使用没问题就是没事的,其实一个软件好不好,很大一部分在于测试人员的测试力度。最后写一份测试报告就可以了。

    软件交付

    测试结束以后没有任何的问题的话,就可以写安装手册了,这个其实就是用户使用指南。

    客户验收

    交付后客户简单的测试以后觉得是和自己想的一样的,就收货,交钱.

    码农维护

    是不是验收以后就没事了呢?当然不是,一个软件很多时候是在用一段时间以后才会出问题的,所以会一直需要人来维护他们,当然不是说只是出问题才会维护的,主要的原因是软件会根据不同的需要更改功能,这样的过程也是维护的过程,QQ已经更新多少代了,是不是,这也是一个维护的过程。

    项目重构

    这个是一个项目如果出现了新的技术,功能没有改变的时候,为了用户体验,例如之前是SSH写的,但是运行的速度很低,用SpringBoot,大家都在用,用户反映很好,那么这个时候就需要项目重构了,用新的技术将之前的功能重新实现。

    基本那就是这些了,另外细心的人也看到了非软件公司是没有详细设计的,这个解释一下,为什么呢?很简单,其实详细设计是和耗费时间的,非软件公司的人不会花费这个时间在设计上,他们就是直接告诉你需求,码农只需要直接编码就可以了,一般这样的对你用什么技术,什么框架是没有要求的。




    展开全文
  • 项目开发流程

    千次阅读 2019-06-18 16:23:51
    注:方框为项目流程步骤,实线箭头代表开发流程方向,虚线箭头代表两个步骤之间存在多次反复确认的过程。 流程图各环节点说明 业务调研 参与人员:产品经理、业务人员(或用户) 环节任务:产品经理了解业务人员...
  • 软件开发流程

    千次阅读 2018-04-17 19:24:58
    内容关键字:软件开发流程 开发流程图 过程产物...fps=1一、开发流程图省略了各环节的评审二、过程产物及要求本表主要列出开发阶段需要输出的过程产物,包括产物名称、成果描述、负责人及备注,即谁、在什么时间、...
  • Android蓝牙开发—经典蓝牙详细开发流程

    万次阅读 多人点赞 2018-07-16 13:41:12
    Android蓝牙开发前,首先要区分是经典蓝牙开发还是BLE(低功耗...本文是针对经典蓝牙开发的,如果是BLE(低功耗)蓝牙开发,可以看Android蓝牙开发—BLE(低功耗)蓝牙详细开发流程 开发流程 开启蓝牙 扫描蓝牙 ...
  • 项目开发流程

    千次阅读 2019-11-01 09:55:11
    项目开发流程图    抽空总结了下项目开发流程,大多数公司应该都沿用这个流程方式。
  • 嵌入式软件开发流程

    万次阅读 2018-05-06 20:16:33
    根据使用的开发工具套件不同,软件开发流程会有差异,但主要步骤大致相同。对于使用宿主机(PC)的集成化开发环境,软件开发流程一般包括创建项目、添加文件、编译连接、下载调试等步骤,如下图所示。 图1:...
  • 完整的整车开发流程

    千次阅读 2019-03-01 17:58:00
    完整的整车开发流程 完整的整车开发流程资料 整车开发流程 整车开发流程 大众开发流程介绍 (奇瑞)整车开发流程 整车设计开发流程 ...
  • 前端开发流程

    千次阅读 2019-08-12 11:02:15
    开发流程 1.页面需求分析 :需要开发的页面(数量,内容),明确页面的功能(如搜索框、轮播图、内容展示) 2.接口设计:明确哪些功能需要后端配合,设计接口文档,数据格式不合理的话要和后端协商 3.确定主要应用...
  • web前端项目开发流程

    千次阅读 2019-06-13 09:32:57
    开发流程 图解 需求 评审 召集需求涉及到的UI、开发、产品、测试人员整理业务流程,同步信息,明确分工 明确需求目的,考虑当前需求设计是否可满足目的 整理流程中如果涉及的其他人员,则召集商讨 如需求设计上影响...
  • 软件项目开发流程

    千次阅读 2020-09-16 20:53:28
    软件开发流程(Software development process) 首先 看一下基本软件项目开发流程图 其中 1.需求分析:  通过对客户业务的了解和与客户对流程的讨论对需求进行基本建模,最终形成需求规格说明书。 2.总体...
  • 小程序开发流程

    千次阅读 2019-05-05 10:07:35
    一、概念 不用安装,不用下载,一键使用的应用程序,就是微信小程序,与网页不同的是更趋向于原生的体验,...三、开发流程 1.根据系统版本,选择开发工具,下载并安装。网址https://developers.weixin.qq.com/mini...
  • EC20开发流程

    千次阅读 2019-01-18 14:37:02
    EC20开发流程一、环境二、编译工具的使用三、准备工作四、编写代码五、烧录程序 一、环境 1、虚拟机ubuntu16.04 2、ql-ol-sdk对应的编译工具 二、编译工具的使用 1、将ql-ol-sdk.tar压缩包解压到虚拟机中的路径...
  • app开发流程

    千次阅读 2016-12-26 07:50:39
    APP开发流程
  • FPGA开发流程概述

    千次阅读 多人点赞 2017-04-21 16:43:19
    FPGA开发流程概述  开始学习FPGA,想尽快上手FPGA开发,那么先来了解一下FPGA的开发流程
  • java接口开发流程

    千次阅读 2018-12-16 18:46:03
    java接口开发流程 前后端分离接口写法 前后端不分离写法
  • 游戏产品开发流程

    千次阅读 2019-08-12 17:24:05
    游戏产品开发流程 通常开发一款新游戏大体上会按照如下流程来进行: 1)概念阶段– Concept 主策根据产品创意,确定游戏策划草案,包括游戏的形态、游戏概述、游戏核心玩法、市场定位、特色及卖点等。然后,...
  • Struts开发流程

    千次阅读 2017-03-03 19:34:49
    Struts开发流程: A:导入jar包 commons-fileupload-1.2.2.jar commons-io-2.0.1.jar commons-lang3-3.1.jar freemarker-2.3.19.jar javassist-3.11.0.GA.jar ognl-3.0.5.jar struts2-core-2.3.4.1.jar xwork-core-...
  • Scrum敏捷开发流程

    千次阅读 2017-05-01 14:17:41
    Scrum敏捷开发流程的要点
  • 微信公众号开发流程

    千次阅读 2016-06-26 22:27:14
    微信公众号开发流程
  • IT软件开发流程

    千次阅读 2018-07-05 17:48:52
    一、开发流程图 为使流程更清晰,本图省略了各环节的评审,如有更好的表现形式,欢迎提出建议。 开发流程图 二、过程产物及要求 本表主要列出开发阶段需要输出的过程产物,包括产物名称、成果描述、负责人及...
  • 单片机产品开发流程

    千次阅读 2019-03-05 08:49:39
    我们学习单片机的目的就是为了进行嵌入式系统的开发,学好单片机首先要有一个整体认识,下面将简要介绍一下单片机应用系统的开发流程,如图1所示。 图1 单片机系统开发流程 1、明确任务 分析和了解项目的总体要求,...
  • Java项目开发流程

    千次阅读 2018-04-23 10:22:41
    做了几个项目,虽然都是紧紧张张的完成了,但是没有一个很好的开发流程。在我想来,有条理的开发项目会有更高的效率。也许开发的实际情况各有不同,但是这个时候只要对流程有所取舍,那么也会对项目的开发有所帮助。...
  • 嵌入式产品开发流程

    万次阅读 2017-04-21 10:11:14
    但是,与普通电子产品相比,嵌入式产品的开发流程又有其特殊之处。它包含嵌入式软件和嵌入式硬件两大部分,针对嵌入式硬件和软件的开发,在普通的电子产品开发过程中,是不需要涉及的。嵌入式产品的研发流程具体如下...
  • 嵌入式linux的开发流程以及linux应用层内容

    万次阅读 多人点赞 2019-04-01 18:19:21
    嵌入式linux开发流程: 1.搭建前期的开发环境,例如搭建linux主机环境,交叉编译器的安装,还有一些常用的开发辅助软件如source insight等等。 2.学习对硬件的直接操作,这里和单片机操作类似,我们需要查看原理图...
  • Android APP开发流程

    千次阅读 2015-11-02 23:23:14
    Android开发工具, App开发流程
  • IP核开发流程

    千次阅读 2017-11-20 09:10:02
    IP核开发流程设计如下几个部分: - IP核开发指南编写; - IP核的设计; - IP核的验证。

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 109,792
精华内容 43,916
关键字:

开发流程