对于一个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项目开发流程的更多相关文章

  1. PC端Web项目开发流程

    从前一直再做前端,突然想到如果有一天领导让自己独立承担一个web 项目的话是否有足够的能力去接这个任务,要学会自己去搭建一些基础的工具信息.所有的这一切在心里都要有个大致的流程,不然真正做的时候难免会 ...

  2. Web项目开发流程 PC端

      一.了解.明确需求. 这个应该是第一步了,不了解需求你就不知道为什么要做,要怎么去做这个项目的工作. (1)明确需求是相当重要的,很有必要去和产品经理.设计人员去沟通,需要明白每一个按钮,每一个开 ...

  3. flask实战-留言板-Web程序开发流程

    Web程序开发流程 在实际的开发中,一个Web程序的开发过程要设计多个角色,比如客户(提出需求).项目经理(决定需求的实现方式).开发者(实现需求)等,在这里我们假设自己是一个人全职开发.一般来说一个 ...

  4. K2项目开发流程

    (自己的学习资料) K2项目开发流程: 1.在VS2013中设计流程,并在K2 Workspce中测试流程 首先是新建新建一个k2的Process文件..kprx后缀. 在里面创建所需要的流程.由于我 ...

  5. Web项目开发中用到的缓存技术

    在WEB开发中用来应付高流量最有效的办法就是用缓存技术,能有效的提高服务器负载性能,用空间换取时间.缓存一般用来 存储频繁访问的数据 临时存储耗时的计算结果 内存缓存减少磁盘IO 使用缓存的2个主要原 ...

  6. SpringMVC内容略多 有用 熟悉基于JSP和Servlet的Java Web开发,对Servlet和JSP的工作原理和生命周期有深入了解,熟练的使用JSTL和EL编写无脚本动态页面,有使用监听器、过滤器等Web组件以及MVC架构模式进行Java Web项目开发的经验。

    熟悉基于JSP和Servlet的Java Web开发,对Servlet和JSP的工作原理和生命周期有深入了解,熟练的使用JSTL和EL编写无脚本动态页面,有使用监听器.过滤器等Web组件以及MVC架构 ...

  7. Web项目开发介绍及实战项目介绍

    引言 本系列课程我们将学些Golang语言中的Web开发框架Iris的相关知识和用法.通过本系列视频课程,大家能够从零到一经历一个完整项目的开发,并在课程中了解实战项目开发的流程和项目设涉及的各个模块 ...

  8. 使用.NET MVC框架项目开发流程(项目开发流程)

    MVC项目开发流程 整理需求,进行需求分析.项目设计. 整理数据项,建数据库做前期准备,并整理字典. 建立所需数据库表和视图和模型. 页面实现其初步功能(跳过逻辑后台代码),只是实现页面之间的跳转以及 ...

  9. 使用MyEclipse搭建java Web项目开发

    转自:http://blog.csdn.net/jiuqiyuliang/article/details/36875217 首先,在开始搭建MyEclipse的开发环境之前,还有三步工具的安装需要完成 ...

随机推荐

  1. laravel 运用

    查看路由:php artisan route:list 查看路由

  2. SpringCloud---服务容错保护---Spring Cloud Hystrix

    1.概述 1.1 在分布式架构中,存在着许多的服务单元,若一个单元出现故障,很容易因依赖关系引发故障的蔓延,最终导致整个系统的瘫痪: 为了解决这样的问题,产生了断路器等服务保护机制: 1.2 分布式架 ...

  3. 【爬虫】-xpath语法熟悉及实战

    本文为自学记录,部分内容转载于 w3school python3网络爬虫实战 知乎专栏:写点python 如有侵权,请联系删除. 语法 1.选取节点 XPath 使用路径表达式在 XML 文档中选取节 ...

  4. putty访问虚拟机

    从宿主机中用putty连接虚拟机中的Ubuntu Server. putty默认使用ssh方式连接,这需要在Ubuntu Server中安装ssh服务.使用命令sudo apt-get install ...

  5. springboot+redis实现缓存数据

    在当前互联网环境下,缓存随处可见,利用缓存可以很好的提升系统性能,特别是对于查询操作,可以有效的减少数据库压力,Redis 是一个开源(BSD许可)的,内存中的数据结构存储系统,它可以用作数据库.缓存 ...

  6. unittest之装饰器

    前面讲到 unittest 里面 setUp 可以在每次执行用例前执行,这样有效的减少了代码量,但是有个弊端,比如打开浏览器操作,每次执行用例时候都会重新打开,这样就会浪费很多时间.于是就想是不是可以 ...

  7. android webview 中 js 模板引擎的使用

    最近在项目中要求用 webview 展示几个界面, 而后台返回的不是 html 而是 json 数据. 起初用 StringBuilder 一个一个拼 html, 后来感觉太繁琐,拼一个还行,拼多了就 ...

  8. Vi/Vim命令壁纸图

    下载地址 http://pan.baidu.com/s/1mtQdY

  9. Android使用7牛云存储

    第一次使用这个云存储,话说7牛云存储大有来头!区别于国内外其他云存储,七牛自行研发的全分布式架构解决了其他云存储单一数据中心架构可能存在的风险,同时首创双向加速特性对数据上传下载均加速,使得数据访问速 ...

  10. 封装你的协程Unity TaskManager

    unity5提供了协程,不过用起来很蛋疼,当然如果是unity2017 你就可以用async await了 提供一个TaskManager来封装协程(github  https://github.co ...