【如何开发APP】
一、 APP开发的基本步骤:
1、APP项目筹备期
作为企业或者创业者项目筹备需要解决的问题是:做一个什么样的手机APP?为什么要做手机APP?手机APP解决的问题是什么?手机APP面向的服务对象、人群是谁?。筹备期要把做APP的初衷明确到位,并切要结合自身的资源和优势,以免盲目的扩大APP的需求,最终导致项目上线后运行困难。总之项目筹备期明确自身的优势确定APP解决的问题和面对的对象。
2、APP项目需求文档
项目筹备期后就可以做项目需求文档了,项目需求文档是指用通俗的语言把你想要实现的事情说明白,例如:做个手机APP商城,商户和消费者可以在我的手机App平台上交易购物,特色或者和其他平台差异的地方详细的阐述明白即可;企业或者创业者在写需求文档时应该注意的是要明确你需要实现的功能,并且明确你自己创造性的部分,有了基本的需求后就可以和专业的产品经理交流分析,最终会形成详细的App需求分析。
筹备期和需求文档由需求企业或创业者独自完成。如果这两项未完成和确定时,我们建议不要联系App开发公司,做为App开发公司主要的职能和作用是通过专业的技术帮你实现你的想法,他是没法帮助你创造想法的,我作为铭讯软件多年的APP开发产品经理这点很了解。
3、APP项目分析
做为企业或创业者以上两步完成后就可以联系你所信赖的开发公司详细的交流项目了,做为专业的app开发公司拿到你的需求后,会结合以往开发项目的经验给你提出一些开发建议,比如在开发中用什么样的开发方式实现、如何提高用户的体验度、如何让用户最简单会使用,在开发方式上如何能做到流程最简洁,包括未来项目开发中遇到的问题也会给你提出,在拿到需求分析时开发公司会评估技术实现难度和开发周期,预估开发需要的费用,包括前期你需要准备的资料。App项目分析主要解决的问题就是你的需求结合开发公司的实力和经验为您初步诊断项目、开发难度、开发周期和评估开发费用,一般有经验的开发公司会给你更多的项目指导。
4、APP项目流程图
在项目开发公司项目分析完成后,会根据你的项目需求来绘制详细的项目流程图也叫思维导图,此步骤的主要目的是对项目所有流程的详细剖析,此流程完成后会明确两个问题,第一项目开发方是否对你的项目需求有准确的了解,第二项目需求方也会明确你预想的流程是否合理。此流程开发方和需求方会经过多次的沟通最终确定双方理解正确的流程。项目流程图建立完成后需要注意的几个方面:需求方必须充分了解项目的流程和各个交互环节是否在流程图上表达清楚,开发方必须根据以往的经验结合项目和用户体验做出化的流程。一般在开发中此步骤双方交流的时间比较长。也是项目开发初期至关重要的一步,铭讯软件APP产品经理的建议此步骤不明确时不要盲目进行下一步骤。
5、APP项目原型图
在流程图确定后,做为开发方就要开始绘制原型图了,原型图是项目需求图形化的第一步,原型图的目的是:第一简易的图形化帮助需求方来了解未来手机App的布局和结构;第二交互的确定,因为手机APP是一个完整的流程,每个流程如何到下一步,下一步后如何返回上一步,异常流程时如何提示,这些都在原型图中会展现出来,会帮助需求者再次确定流程的完整性。原型图完成后开发方会和需求方深度的沟通交流,因为在交互步骤每个人的认知和习惯是不一样的,每个受众群体也不一样的;在此步骤做为经验丰富的开发者也会考虑到,此步骤需要开发方产品经理和需求方负责人员多次交流沟通最终确定。此步骤需要的时间也是很多的。
6、APP项目效果图
在原型图确定后,恭喜你,项目开发已经完成20%的工作量了,接下来开发方的UI设计部门会根据原型图和流程图来制作图文并茂的效果图了,效果图是最接近项目完成时的形态的,效果图的制作会根据项目的需求、项目的LOGO、项目的人群来选择主色调,例如:京东APP是红色、淘宝APP是橘红色、政务APP是蓝色等,不同的选色会给项目APP带来不同的效果。一般项目开发方的UI设计部门会第一时间完成项目首页的效果图,首页效果图完成后会和需求方讨论,主要讨论色调,一般大型的企业客户会有标准的企业用色,但是做为创业者可能前期没有标准的企业VI设计,需要根据项目和需求喜好最终确定项目主色。此步骤开发公司会把所有的页面根据原型图的设计完成。此步骤完成后项目的视觉部分基本完成。
7、APP项目开发(页面APP标注适配、项目后台接口开发、项目数据库设计)
在效果图完成后,经过需求方确定后项目就进行程序开发和数据库设计环节了,但是做为App开发还有一个重要的环节就是页面标注和手机适配,此环节也是App开发独有的环节,很多客户就不能理解为什么还有标注和适配,我重点给大家讲解一下。
7.1、页面APP标注和手机适配
智能手机做为新时代的产物已经不仅仅是完成手机的基础打电话、发短信功能了,还具备了电脑、相机、定位的特性,伴随的时代的发展手机也逐步的发展由起初的小屏幕低配置到现在多样化;屏幕区分:全面屏手机、页眉手机屏、1080屏、真彩屏等;手机操作系统区分:安卓系统(2.0-10.0版本)、IOS系统、塞班系统(Symbian)、微软(Windows Phone)等系统;手机厂家区分:苹果手机、华为手机、小米手机、联想手机、vivo手机、OPPO手机等;其他配置区分:前置摄像头、后置摄像头、指纹识别、GPS定位、北斗定位、内置陀螺等;所有大家会看到很多手机的型号和操作系统版本,为了让开发的APP能在各个手机上都能的显示和正常使用,开发人员要进行大量的适配工作,这也是在开发环节中很重要的部分,也是体现一个手机APP开发公司实力和经验的重要部分,此步骤的完成质量直接会影响到未来项目上线后用户使用体验。
7.2、数据库设计和后台系统开发
数据库的设计是专业数据库工程师或者项目负责工程师的工作,数据库通俗讲就是数据存储的一个盒子,会存储所有的数据库包括会员姓名、产品资料、交易数据等,在这个存储的盒子里面又根据存储的数据库类型分成了若干个‘货架’,条理的按照类别和使用频率存放在‘货架’上,这样在使用到时系统会最快、最准确的取到和存放。数据库结构的合理会大大提高系统工作时所需要的时间、效率和储存量,这也就是很多项目在运行中期为什么有的运行很快有的运行很慢,甚至有的还会出现计算错误的原因。所以在设计数据库时工程师会充分考虑。
系统后台开发通俗的理解是系统运行中作为集中管理的一个地方,包括了数据查看、数据发布、数据统计等重要工作。也是日常处理系统数据的重要地方,后台设计的功能一般是根据项目的需求功能确定的,比如商城类APP后台要有产品发布、产品管理、会员管理、产品订单等。
安卓和ios工程师根据标注效果图和原型图设计前端程序。
APP项目开发完成后,此项目的开发基本完成了70%工作量。
8、APP项目初稿测试
APP开发公司完成项目开发后的一个内部测试环节,一般的App开发公司是有多人多部门多岗位联合开发一个项目,做到了专人专岗的分配,也会保障项目在最快时间开发完成,所以项目多部门合作开发完成后需要进行开发公司内部的测试,开发公司会有专门的岗位叫测试工程师,一般测试内容分为:流程测试、体验测试、功能测试、性能测试等几部分;
首先进行的是流程测试,测试项目的流程是不是按照项目需求、项目流程图、项目原型图进行的,在测试期间除了测试系统流程的准确性之外,测试工程师还会根据自己以往的经验对项目流程进行测试,一来拟补设计时的一些不确定因素,还会更加完善项目。
体验测试是对项目整体用户操作体验进行测试,包括交互的顺畅程度、交互体验感、交互是否顺畅等。
功能测试是测试工程师对项目的功能,进行系统性测试保证功能开发的完整性和可用性。同时对功能提出更优化的建议和见解。
性能测试是对系统的稳定性、安全性和承载能力做的系统性测试,包括多终端的测试,手机的适配测试,不同手机和系统版本进行的测试,做到系统兼容性强;承载能力是指系统数据处理能力和反映时间的测试,详细测试项目软件的并发数量和对服务器环境的要求,做到高并发大数据集中处理的能力。
9、APP内测
经过开发公司内部测试完成后,就可以联网进行系统内测,参与人员包括项目需求方和开发公司测试人员,可以下载并安装测试版本,此流程的测试包含系统后台使用培训环节,开发方会培训需求方后台使用方法,系统参数设置方法,需求方可以根据实际测试和内部运行的情况给出测试报告,包括实际使用中数据统计部分和操作习惯部分的优化建议。前端可以多邀请一些内部人员进行测试,充分优化和测试系统的体验度和稳定性。此部分完成也代表着整个项目的开发接近尾声。
10、APP正上线
经过研发公司内测和需求公司的内测后系统通过后,项目基本具备上线运行的条件,根据需求方时间安排时间可以选择时间正式上线。期间需要租用正式的云服务器做为运行的环境。
11、APP项目技术运维
很多企业或者创业者经常谈到的一个问题,APP开发完成后需要多少后期运维人员,商城APP举例:一般一个项目的正常的运行需要的人员有财务人员、产品管理、产品售后、产品物流等人员。技术运维人员有系统BUG修复安卓、ios、后台等各一人,一般一个好的系统开发公司会项目的运维一段时间。
【 手机APP开发需要多少人、多少个岗位配合?】
1、APP项目产品经理
产品经理是项目需求方和软件开发工程师之间的一个纽带,他既要根据产品需求方的需求文档做出相应的项目分析和项目诊断,还要为项目的后期开发提供项目流程图和项目原型图,以至于开发过中才能最节省时间,同时保证开发人员能按照客户的需求进行开发,以防项目开发过程中理解错误问题,同时项目经理会根据项目的需求结合自身的经验给企业或创业者更多开发建议。
2、APP项目后台、数据库工程师
此岗位人员会严格按照产品经理的分析和规划完成程序代码部分的书写,包括数据库的设计。一般工程师类型为Jav或PHP工程师。
3、APP项目安卓工程师
安卓前端开发工程师,主要完成项目的前端逻辑部分的代码书写,多版本手机的适配工作。
4、APP项目IOS(苹果)工程师
IOS前端开发工程师,主要完成项目的前端逻辑部分的代码书写,多版本手机的适配工作。
5、APP项