web项目开发流程
对于一个web项目,在实际编码之前,有一些通用的步骤来planning a website:
0.Defining the project (predr0->dr0)
对于外部项目,客户一般会发出一个RFP,向潜在的服务提供商征询proposal,通过和客户沟通首先了解到他们所面临要解决的一个问题,并且通过不是很清晰的初步探讨讨论转换成一个可以被感知到的建议 proposal,并且输出很高层次的proposal,该proposal由很高层次的outlined feature list或者叫做scope of work(比如:网站需要blog的功能)这个过程需要深思熟虑的思考和相应方法。RFP需要客户确认,该阶段结束后将进入下一个阶段planning。
在Research阶段回答以下问题:
- 网站的用户是哪些群体?
- 他们访问我们的网站是为了达到什么目标,完成什么任务?
- 他们希望解决什么问题,消除什么忧虑?
- 为了达到他们的目标,他们需要什么信息或者什么步骤来达到目标?
- 网站的 商业目标是什么?
- 按照用户角色模型来分别分解网站的功能(user story)
1.Planning(dr0->dr1)
首先你需要对于网站拥有什么样的内容有一个清晰的想法(have an idea for the site's content);
这个阶段通常是大多数项目的第一个阶段,勾画出项目的整个详细的scope.在一些咨询公司里,这个阶段紧随对proposal的approve或者scope of work.在许多公司内部的项目中,项目由计划阶段开始。我们定义计划阶段就是由RFP启动对需求文档的细化,输出requirement文档/user story/product backlog,并且输出wireframe文件,这些被确认后进入下一阶段。
Information Architecture and Content过程需要完成以下工作:
- Gathering content,搜集内容
- Organizing information,组织信息(information architecture)
- Creating potential site maps,创建网站地图
- Potential user flows:
Quickly wireframe需要完成:
- 快速将自己的idea可视化
- 建立信息层次结构和layout pattern
2.Visual Design(dr1->dr2)
这通常是一个项目中变数最大的部分。在一个web开发项目中,design phase通常是non-technical team members有最多输入输出的领域,也是很多小项目run over budget的地方。通常由视觉团队开发。你能够保持visual design phase on track并且On-budget的最好办法是:在第一个阶段创建一个非常清晰非常棒的requirements document以及wireframes。输出由image来承载的每个网页可视化信息;
- establish look and feel
- Mockups
- style guides
- Mood boards
3.Development(dr1->dr2)
在这个开发阶段,我理解有两大领域需要开发:
3.a)前端生成html-mockup;
protypes might be anything from linked images in a tool like inVision, or they might be a working prototype coded with front-end languages like HTML and CSS.
- Test out design
- get a better idea of the experience
- Discover problems sooner
- 使用类似invision的工具来辅助
3.b)后端customize development;
3.c)并且在适当的阶段需要将这两个前端后端合并胶合起来。
开始设计网页 designing the site
在这个阶段,你需要有更多更细致的关于你的用户将看到的细节以及如何和你的网站、应用来交互。这个流程又包括: graphic design;users compability; available technology;future proofing;responsiveness;
这通常是项目的最大阶段,在这个阶段你可能最大机会能够保持高效聚焦,你的开发团队在这个阶段将有充分施展才能的舞台;相反地,这也是你避免危险错误的最大机会所在。依赖于项目的大小,开发阶段可能在planning phase之后立即进行,直到测试阶段结束。
4.content阶段(dr1->dr2)
这个阶段通常和开发及测试阶段有些重合。这个阶段你可能engage你的用户或者客户向你正在buid的系统中Populate内容或者数据。在这个阶段,你也可以向你的客户提供培训。培训对于你的项目成功也是非常重要的。
4. 构建网站的前端 build the site's front-end
一旦你的网站设计工作告一段落,你已经知道了你需要什么,那么是时候我们开始building it了。
5. 如果有需要,则给网站开发后端(前期对于web app开发可以以json来代表后端,对于web网站的开发则将动态数据先做死了,后期由后端模版来动态替换)
很多网站使用类似于一个CMS的管理后端。如果你的网站需要这些功能,那么你需要要么以wordpress作为后端,你的前端以模版的形式存放在系统中
5.测试(dr2->dr4);
6.部署(dr4->dr5->dr6)
Wireframing
什么是wireframing呢?wireframing是web design的一个部分:你构建一个最基本的网站layout,使得你的每一个网页概念可视化,这有助于让你想清楚在哪里放置什么元素。在这个阶段,你应该思考你的网站是否需要target desktop或者mobile user;如果你决定你需要你的网站需要在desktop和mobile上面同时使用,那么很重要一点需要使用responsive design;
visual mock-up和wireframe有什么区别?
一个web redesign项目的可视化的mock-up 可能在header区域包含一个正在使用中的公司logo标志,而在wireframe中,logo只需要使用一个squre box来代替,标注为"logo"。wireframe通常被export成为一个pdf文件,design mock-up通常被输出为jpg文件
web项目开发流程的更多相关文章
- PC端Web项目开发流程
从前一直再做前端,突然想到如果有一天领导让自己独立承担一个web 项目的话是否有足够的能力去接这个任务,要学会自己去搭建一些基础的工具信息.所有的这一切在心里都要有个大致的流程,不然真正做的时候难免会 ...
- Web项目开发流程 PC端
一.了解.明确需求. 这个应该是第一步了,不了解需求你就不知道为什么要做,要怎么去做这个项目的工作. (1)明确需求是相当重要的,很有必要去和产品经理.设计人员去沟通,需要明白每一个按钮,每一个开 ...
- flask实战-留言板-Web程序开发流程
Web程序开发流程 在实际的开发中,一个Web程序的开发过程要设计多个角色,比如客户(提出需求).项目经理(决定需求的实现方式).开发者(实现需求)等,在这里我们假设自己是一个人全职开发.一般来说一个 ...
- K2项目开发流程
(自己的学习资料) K2项目开发流程: 1.在VS2013中设计流程,并在K2 Workspce中测试流程 首先是新建新建一个k2的Process文件..kprx后缀. 在里面创建所需要的流程.由于我 ...
- Web项目开发中用到的缓存技术
在WEB开发中用来应付高流量最有效的办法就是用缓存技术,能有效的提高服务器负载性能,用空间换取时间.缓存一般用来 存储频繁访问的数据 临时存储耗时的计算结果 内存缓存减少磁盘IO 使用缓存的2个主要原 ...
- SpringMVC内容略多 有用 熟悉基于JSP和Servlet的Java Web开发,对Servlet和JSP的工作原理和生命周期有深入了解,熟练的使用JSTL和EL编写无脚本动态页面,有使用监听器、过滤器等Web组件以及MVC架构模式进行Java Web项目开发的经验。
熟悉基于JSP和Servlet的Java Web开发,对Servlet和JSP的工作原理和生命周期有深入了解,熟练的使用JSTL和EL编写无脚本动态页面,有使用监听器.过滤器等Web组件以及MVC架构 ...
- Web项目开发介绍及实战项目介绍
引言 本系列课程我们将学些Golang语言中的Web开发框架Iris的相关知识和用法.通过本系列视频课程,大家能够从零到一经历一个完整项目的开发,并在课程中了解实战项目开发的流程和项目设涉及的各个模块 ...
- 使用.NET MVC框架项目开发流程(项目开发流程)
MVC项目开发流程 整理需求,进行需求分析.项目设计. 整理数据项,建数据库做前期准备,并整理字典. 建立所需数据库表和视图和模型. 页面实现其初步功能(跳过逻辑后台代码),只是实现页面之间的跳转以及 ...
- 使用MyEclipse搭建java Web项目开发
转自:http://blog.csdn.net/jiuqiyuliang/article/details/36875217 首先,在开始搭建MyEclipse的开发环境之前,还有三步工具的安装需要完成 ...
随机推荐
- IE8 placeholder不支持的兼容性处理
引入 <script type="text/javascript" src="<%=path%>/common/js/jquery/jquery.min ...
- Java学习之路(三):Java中的数组
数组的概述和定义的格式 数组的作用: 用来存储同种数据类型的多个值 数组的基本概念: 数组是存储同一种数据类型多个元素的集合.就相当于一个容器. 注意:数组既可以存储基本数据类型,也可以存储引用数据类 ...
- sencha touch extend 单继承 和 mixins 实现多继承
继承可以达到代码的复用,利于维护和扩展. sencha touch 中可以通过 extend 实现单继承,通过 mixins 实现多继承. mixins 也很像实现接口,不过这些接口的方法已经实现了, ...
- css3毛玻璃效果白边问题
注:css3毛玻璃效果应该很多人都知道怎么实现,但是有个问题是图片模糊了之后相当于缩小了,所以颜色深的图片会出现白边,这里说下我参考网上的解决方式吧! 1.毛玻璃实现方法: CSS3 blur滤镜实现 ...
- H5页面JS调试
页面调试 常用的调试方法 开发时候的调试基本是在chrome的控制台Emulation完成 现有的一些手机端调试方案: Remote debugging with Opera Dragonfly 需要 ...
- MySql的数据查询
SELECT语句是最常用的查询语句,它的使用方式有些复杂,但功能却相当强大.SELECT语句的基本语法如下: select selection_list//要查询的内容,选择哪些列 from数据表名/ ...
- Python基础(2) - 动态数据类型
Python是一门强类型语言,单定义变量时不需要制定类型. C#这样定义变量: ; VB这样定义变量: Python不需要制定类型,给变量赋什么类型的值,它就是什么类型.(穿神马就是神马?) > ...
- ElasticSearch深入搜索
一. 结构化搜索 结构化搜索(Structured search) 是指有关探询那些具有内在结构数据的过程.比如日期.时间和数字都是结构化的:它们有精确的格式,我们可以对这些格式进行逻辑操作.比较常见 ...
- Expression Blend实例中文教程(7) - 动画基础快速入门Animation
通过前面文章学习,已经对Blend的开发界面,以及控件有了初步的认识.本文将讲述Blend的一个核心功能,动画设计.大家也许注意到,从开篇到现在,所有的文章都是属于快速入门,是因为这些文章,都是我曾经 ...
- Java复习第三天
Day06 1.二维数组定义格式? (1)元素是一维数组的数组. (2)格式: A:数据类型[][] 数组名 = new 数据类型[m][n]; B:数据类型[][] 数组名 = new 数据类型[m ...