不论是软件开发还是app开发我们都竭力做到最好,服务好每一位客户。那么接下来就分享一篇关于项目开发的文章,项目开发中有许许多多的问题与难点。关于这篇文章要分享的内容就是其中一点。
移动 发成本和流程
iPhoneapp开发成本/流程,Android app开发成本/流程
通常客户要求我为他们提供开发app的球场成本,这样他们就可以决定预算或接近投资者为应用项目筹集资金。
在本文中,我将介绍移动app开发流程,不同的人才需求以及影响移动app开发的项目。
移动应用开发流程
以下项目显示了移动应用开发的典型过程:
1:线框 - 线框图是构建app的重要过程; 这是因为它将构建app需要如何设计和运行的基础。需要注意的一件重要事情是,使用移动app,重做屏幕或重建功能比使用Webapp要花费更多时间和成本,因此,在开始开发之前构建线框非常重要。在线框图期间,app UX专家和app开发人员需要与项目所有者进行发现会议(头脑风暴),以确定app的设计和功能。项目的复杂程度越高,或者屏幕越多,完成线框图所需的时间越长。为了完成线框图,app UX专家将绘制导航,屏幕,
2:app屏幕设计 - 为iOS和Android设计app屏幕(前端)。
3:app编程 - 为iOS和Android编写app屏幕(前端)。
4:app/数据库框架 - 设置app的服务器端框架(云/后端)并创建数据库结构。
5:服务器端app编程 - 编写所有服务器端代码以实现后端功能。
6:API开发 - 编写将app屏幕连接到服务器端app和数据库的所有API。
7:可用性质量保证 - 测试app屏幕中的错误并解决任何问题。
8:多平台,多设备,操作系统版本,决议QA - 在所有不同平台(iPhone,Android,Windows Phone)和每个平台的不同操作系统版本上测试app(Apple iOS有两个流行版本:iOS 8和iOS 7, Android操作系统有五个流行版本(Android 4.1,4.2,4.3,4.4,5.0),不同移动设备的不同分辨率(智能手机,平板手机和平板电脑的不同设备之间,有相当多的分辨率可供测试,它可以是耗时的。)
9:后端QA测试后端代码的性能和安全性。
10:云设置 - 将服务器端app部署到服务器/云。
11:提交到App Store - 将app部署到App Store。
构建高质量移动app需要人才
构建高质量的移动应用需要很多步骤,需要不同的专业人才:
1:对于线框图,一名UX(用户体验)专家,他具有构建具有最佳用户体验的app屏幕的经验。用户体验专家应该了解在屏幕上展示导航和元素的app约定和规则,以便用户更轻松地以正确的优先级浏览app并找到所需内容。
2:为了设计app屏幕,Designer需要知道如何设计不同的设备:iPhone,Android和Windows手机屏幕。简而言之,设计师应该拥有不同物体或图形元素在小型手机屏幕和不同分辨率上的外观体验和愿景。Designer还需要为app使用正确的大小,正确的图形和图标以及主题。
3:对于app屏幕的编程,程序员需要具有使用Objective-C或Swift for iOS和Java for Android的Xcode环境的经验。通常,程序员专注于iOS开发或Android开发。
4:对于编写服务器端app和API,程序员需要具有编写具有最佳安全性和性能的可维护代码的经验。
5:对于质量保证,质量保证专家和测试人员需要具备面向细节,并具有寻找开发人员通常不易看到的功能和设计问题的经验。
6:服务器端app的部署
不仅仅是开发人员或程序员; 它需要经验丰富的程序员和云专家,有时也称为DevOps。DevOps需要具备安装app,创建可靠的服务器环境,数据库冗余,备份,安全性,性能和app可伸缩性的经验。
7:将app部署
到app商店通常是一件容易的事。
因此,当您了解构建app的人才需求时,您将意识到要构建一个设计精美,用户友好,功能和可扩展的优质app,您将需要具有不同经验和专业的不同才能,这可以添加应用项目的实际成本。
移动应用开发球场成本
基于所需的所有人才以及构建app的所有工作和流程,我在下面创建了一个关于构建app的球场成本估算。
移动应用开发成本因素
开发移动app的成本基于以下因素:
1.应用平台和环境
所有平台的构建都会大大增加成本。这是因为Apple iPhone使用Xcode IDE和Objective-C或Swift编程语言,Android使用Java编程语言,Windows使用C#编程语言。
如果开发人员需要为所有平台构建app,并且需要使用每个平台的本机编程语言构建app,则由于构建app所需的时间量,开发成本将增加一倍或三倍使用每个平台的不同编程语言。
如果可以使用混合开发技术构建app,开发人员可以使用HTML5,CSS和JavaScript构建一次,并使用PhoneGap为所有平台准备app。这可以大大降低为所有平台构建的成本。
要阅读有关本机app开发与混合app开发之间差异的更多信息,请使用以下链接文章:本
机app开发与混合/ PhoneGapapp开发
2.自定义与使用标准应用小部件和约定
您制作的自定义设置越多,开发app所需的时间就越多。
此外,很高兴知道每个平台的app开发环境提供了用于构建标准化约定的某些小部件,例如导航,更改屏幕,动画和其他app用户交互元素。使用标准惯例时,app开发成本将更具成本效益。
3.app屏幕数量
屏幕数量直接影响成本; 你拥有的屏幕越多,构建app的工作就越多。
4.屏幕的复杂性
建议使用标准app约定的简单导航构建更干净(和不太忙)的屏幕。这将提供最佳用户体验并降低开发成本。
如果您使用许多复杂的导航元素构建繁忙的屏幕,则app开发的成本会更高
5.电子商务和应用内购买
无论何时您正在使用资金,开发人员都需要格外小心计算和安全性。
因此,应用内购买和处理资金会增加更多的开发时间,因为需要额外的时间来确保计算准确,并且app是安全的。
即使在开发完成后,我还是建议对事务进行额外的测试,以保证计算的准确性,然后才能使用该app。
6.与第三方API集成
当app需要与其他服务进行通信时,开发人员需要学习第三方API并与之交互。
这将需要额外的时间来学习第三方API并正确实现它们。在许多情况下,开发人员无法评估与第三方API接口所涉及的工作量,直到他/她花费一些时间学习API并与之接口为止。
7.复杂动画
定制和复杂的动画和游戏可能需要大量的开发时间。
不提供任何实际用途的复杂动画也会降低您的app速度并使用户感到沮丧。因此,尽量远离那些没有任何实际用途的复杂动画。
8.支持多种移动屏幕分辨率
移动设备有三种类型:
智能手机 - 示例:Apple iPhone 3,4,5,6或Samsung Galaxy S2,S3,S4,S5或LG Nexus 4,5。
Phablets(屏幕尺寸介于智能手机和平板电脑之间),例如:Apple iPhone 6 Plus或Motorola Nexus 6。
平板电脑示例:Apple iPad多个版本,迷你多个版本,Air,三星Galaxy Tab(多个版本)
以上设备都具有不同的屏幕分辨率。对于设备操作系统的较新版本,有一些方法可以调整内容大小以匹配大多数屏幕,但构建自定义界面以支持所有屏幕分辨率可能非常耗时且成本高昂。
9.支持所有版本的设备操作系统(OS)
以下是所有移动设备操作系统版本和所有常用操作系统版本的列表。如果您希望支持所有设备的所有操作系统版本,则成本会高得多。
我建议只选择支持的设备操作系统的流行版本。
Apple的移动设备 Apple的移动操作系统称为iOS。iOS的版本范围从1.0到8.0(2014年9月发布)。
以下是受欢迎的iOS版本列表,以及截至2015年2月其市场份额的近似百分比:
iOS 8:80%
iOS 7:19%
Android的移动设备 Android操作系统版本从2.2到5.0(2014年11月发布)截至2015年2月,流行的Android操作系统版本为:(百分比为近似值)
Android OS 4.4:60%
Android OS 4.3:7%
Android OS 4.2:13%
Android OS 4.1:12%
Android OS 5.0:5%
Windows Mobile设备 Microsoft Phone OS的版本范围从7到8(2012年10月发布)此时我没有足够的数据来提供每个版本市场份额的大致百分比。
10.离线支持
开发离线支持功能可能非常耗时,反过来又会增加开发成本。
11.连续性/切换功能
切换功能提供在不同设备之间连接和共享/移动信息和数据的功能。
构建切换功能可能非常耗时,并且可能会增加项目的实际成本。
案例展示:智慧公交调度平台 海融智慧公交整体解决方案通过GPS/北斗卫星定位技术、4G/5G无线网络通信技术、GIS地理信息技术、以及大数据储存等多种技术融合,全面推动城市、农村公共交通管理现代化、安全监管规范化、运营调度智能化、决策支持科学化、信息服务一体化,从而提高公共交通运输企业服务管理水平,提升公共交通吸引力,让公众出行更便捷安全、绿色环保。