如何规划跟设计web应用程序,其开发周期有那几个阶段

如题所述

下面用我开发的一个办公系统来说明一下如何规划跟设计WEB应用系统,及其开发几个阶段。

第一步:需求分析

我召集他们所有业务相关部门开了几次会议,将各部门的功能需求进行了整理和统一,写成的功能需求说明书,文中详细列出了软件要解决的实际问题及要达到的目标。他们要求软件要能解决他们的实际问题,带来真正的价值。比如直接给他们带来更多订单,帮助他们寻找客户并留住,同时在经营中节省人力成本及防止不必要的浪费,最终实现公司利润的增长。我认为,如果一个软件不能带来实质性的经济价值,仅仅只是用来装点公司门面,提高一点工作效率,那还不如不要。这也是他们为什么看不上有些成品软件,而要选择定制开发的原因。每个公司情况均不一样,成品软件商往往无法知道每个客户的痛处,所以做出来的产品无法真正适合客户。只有自己针对性的开发,才能真正解决问题。客户才知道他们公司最需要什么,他们的客户应如何获得和留住,业务流程应如何设计等等。有针对性开发一些实用功能,才是最适合的软件。

通过这个项目,我认识到编写软件需求说明书的过程非常重要,这决定了以后的开发过程是不是会走弯路,是否因为开发了不必要的功能浪费时间和金钱,是不是存在程序功能模块上的冲突。我在需求说明编写上花了较大精力,有种磨刀不误砍柴工的感觉。最后在所有人员一致通过这个需求说明书后才决定走下一步。

第二步:开发方案书

开发方案书是将功能需求说明书转化为可开发的具体行动方案,我根据开发平台的开发规则进行编写的,将软件需求说明书中的功能模块进行组合优化,分析出各个模块的数据结构及数据关系、运算逻辑,理清各模块之间的业务流程,最后根据各业务部门人员的实际情况规划各模块的界面样式。

我的开发方案书也写得很详细,不过相比功能需求说明书,感觉容易些,毕竟大方向已有了。开发方案书中我将数据结构中的表及字段全部规划好,并命名好,包括其数据类型、长度等,做成表格,并将各字段数据来源及编辑方式等均做好说明。前面忘记说明了,我虽然对编程不懂,但由于以前有过管理软件操作方面经验,对数据库还是有一定了解的,但也只是懂一些皮毛,不过用天纵快速开发平台开发,这点数据库方面的知识够用了,以后使用过程中如果需要更复杂的一些SQL语句再网上搜索一下吧。

开发方案书对后期的系统开发非常重要,下面的开发过程其实就是将开发方案书的内容在快速开发平台进行配置的过程。

第三步:开发及测试

有开发方案书,接下来的开发就非常容易了,其实就是将开发方案书的内容配置到开发平台上的过程,这就是我前面说的为什么找这样一个开发平台开发这个系统的原因。

用配置型开发平台开发软件相当简单快速,一般的模块三步就可以搞定了,第一步设置模块信息,第二步设置表单属性,第三步设置表中每个字段。也许我这样说你还是不太相信,那好吧。上图!

天纵快速开发平台分开发后台和应用前台。顾名思义,开发后台是供开发者使用的,应用前台是开发好的系统进行使用的地方。好了,进入开发后台吧,如下图:

点击模块设计,就可以开始配置模块了。

选择模块类型是这一步的关健,就是你要开发的功能模块属性什么类型的模块,开发平台内置了很多功能模板,你要做的是分析你要开发的模块属于哪种模板,选中模板就可以将你的模块界面及功能实现了。模块类型有很多,包括了常用管理软件的方方面面,有专门的模块功能模板介绍及操作手册,你在开发时看下操作手册就知道了。模块定义好后,就可以定义模块中的表了,一个模块可能有多个表,一一定义下来,并建立好他们之间的关系。如下图:

表单定义过程中会要求设置表单编辑界面样式,及一些数据规则。表单设置好后,就是设置每个表的字段了。如下图:

通过这三步的配置,一个功能模块基本完成了。是不是非常简单快速!整体开发过程是不是全部是通过配置来完成的。当然上面提到的是一些最基本的配置,对于复杂功能要求的模块,可能还要进行更详细的配置。

配置型开发平台由于省去代码编写,开发速度大大提高,由于界面是由开发平台中间件根据配置的业务参数自动生成,不用每个界面均去编写一套代码,因此出错率大大降低,软件的性能和稳定性自然也就有了保障。

第四步:编写操作手册

系统开发好后,有一个收尾工作是不能省的,那就是编写操作手册。好在我平时没事就喜欢写点博客,对写作没有畏惧心。操作手册是供使用者学习和操作时用的,在操作手册中我将系统操作过程及其注意事项详细列出,事后我才知道,操作手册也是这个系统正式能使用起来的重要因素之一,因为我写的操作手册有声有色,条理清晰,操作这个系统的同事很快就能理解并上手了。

我得出的经验是:操作手册越早编写越好,最好是在开发的同时就进行编写,开发过程中一些重点内容要立即记录下来,提醒以后的使用者,时间一长了,就算是开发者本人也可能都忘记了,最后导致使用者走弯路。

第五步:上线试运行

折腾了半个多月,一个共有50多个模块的内部管理系统基本算是大功告成了,请客户的几个部门领导一起演示操作走了一遍,大家十分满意,总算没辜负老他们板的期望。他们老板一高兴,批准买一台服务器专门运行这个系统。我花了一天时间,部署到服务器上,开始上线试运行。

第六步:正式运行

经过了半个月的试运行,调整了其中出现一些小问题,就开始召集所有部门相关人员进行几天的操作培训,开始正式在公司内全面运行。

温馨提示:答案为网友推荐,仅供参考
第1个回答  推荐于2016-01-01
  商务Web应用程序的设计常常被人们所忽视。我看到许多程序,它们既不符合商业目标,也不满足用户需求,它们有很差的用户体验,并造成了商业利润的损失。更夸张的是,有些设计师根本没有参与整个程序的开发流程,而是把全部职责都推给了开发人员。
  对于擅长前端和后台技术的工程师来说,他们缺乏设计能力,很难完成这项艰巨的任务。不满意的消费者、沮丧的用户,以及失败的项目,也就自然而然地出现了。
  接下来,我们将介绍“商务Web应用程序”界面设计的基础知识。一般来说,人们可以提供许多有关界面设计的方法、技巧和准则,而这里,我们的重点将放在商务Web应用程序上来。
  一. 网站与Web应用程序
  我们很容易将Web应用程序和网站搞混,就像搞混用户界面设计与网页设计一样。其实它们在本质上和其他方面上都有很大不同,本文将就此与大家探讨。
  一个网站更像是一组网页集合,大部分都是静态文本、图像和视频等等,只有有限的交互功能(联系表单和搜索功能除外)。网站的主要作用是提供信息。虽然一些网站使用“内容管理系统”来提供动态文本,但从性质上来说依旧是信息。
  商务Web应用程序的设计
  CampaignMonitor是强大的电子邮件营销软件,而Jeff Sarimento 的网站向读者讲述他的工作和生活。
  另一方面讲,Web应用程序是动态交互系统,它帮助企业完成重要商业事务,评估并提高企业自身生产力。因此Web应用程序的主要作用是:根据明确的业务规则,满足不同用户的需求。
  Web应用程序在参与度以及知识储备方面,对用户有更高的要求。这些用户不只是偶然地使用了它,并评价一番,而是把它当作完成日常重要商务的平台。总之,当他们不了解一款程序的运行机制时,是不会随便喜新厌旧的。而对网站来说,这种情况却常常发生。
  1.1 不同类型的Web应用程序
  Web应用程序的业务范围,可以从为自由职业者开发票,到内容管理、文件管理、银行和金融系统等等。
  我们可以区分出开放的和保密的应用程序。在开放的程序中,用户可以很容易接近到其他注册用户。他们可以在网上使用这些程序,选择注册免费账号或是收费账号。保密的应用程序通常不允许在公司以外的地点使用。在外面,它们仅仅是一个“离线”的程序(虽然很多系统通过一些服务或是专用接口,向商业伙伴展示了一些功能)。这种程序一般只能在公司的内部网络中运行,只有员工才可以使用。
  我不知道是谁创造了weblication这个词,至少在现阶段我很喜欢它,它描述了Web应用程序是什么。但这并不意味着一个Web应用程序就是网站和程序的简单混合,它可比这复杂得多。
  二. 首先要了解你的用户
  有一句话,你可能听过有一千次了,也听过遵循它的理由。这就是“一个成功的用户界面,一定要以用户和他们的任务为核心”。这也是为什么许多开发人员没能创造出良好的用户体验的关键。正如Steve Krug所说,“开发人员喜欢复杂的东西,他们享受发现事物运行机制的过程。”
  商务Web应用程序的设计
  在识别用户时,切忌,客户不是用户,你也不是。虽然客户的管理层通常会对该项目感兴趣,并试图影响你的决策,但你要记住,他们不会每天使用该程序工作好几个小时(除非该程序是专门为他们设计的)。
  2.1 如何识别用户?
  我们可以通过许多方法识别用户,比如用户访谈,商业利益相关者访谈和影子用户观察( the “shadowing” method of observation)等。“用户访谈”让你了解用户在程序和计算机方面的知识储备,而通过“用户观察” 能得到更详尽的信息,比如用户是如何完成任务的,他们都犯了哪些错误。“影子用户观察”之所以这么称呼它,是因为观察者需要像用户的影子一样,与其形影不离,注意他们的每一步操作。
  如果你没有遇到真正的用户,可能是因为你没有权限,或是在设计开放的应用程序,你可以使用“人物角色”来帮自己识别用户。“人物角色”是真实用户的代表,他具有他们的习惯,目标和动机等等。你可以利用在商业分析报告中获得的用户信息,来创建“人物角色”。 如果你对这种方法不太熟悉,Brand Colbow的漫画将对你有帮助。
  商务Web应用程序的设计
  “任务分析”有助于确定用户在工作中需要完成哪些任务,他们是如何完成的,需要多长时间,犯了哪些错误。有时用户正在使用你要去更新的旧程序。你正好可以利用这套旧程序,来看看用户是如何操作的。这样你会很容易了解到他们的任务和遇到的挑战。
  可以肯定的是:无论你的用户是谁,在通常情况下你都必须同时考虑新手用户和专家用户。使“新手”尽快上手,“专家”高效地完成任务,也许意味着要为他们各自单独设计界面。但在很多情况下,你要使用各种技巧,来保证不同类型的用户正常使用同一界面,比如隐藏高级功能。
  这些研究通常由市场分析来完成。但当没人来负责这项业务时,你应该去完成它。一旦得到了必要的信息,就可以动手设计了。本回答被提问者和网友采纳