`
清泉风影
  • 浏览: 106450 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

Web开发流程规范的五个要点

阅读更多

开发流程及规范:Web 开发的分散性和交互性,决定了 Web 开发必须遵从一定的开发规范和技术约定。

只有每个开发人员都按照一个共同的规范去设计、沟通、开发、测试、部署,才能保证整个开发团队协调一致的工作,从而提高开发工作效率,提升工程项目质量。

一、 项目的角色划分
  
  如果不包括前、后期的市场推广和产品销售人员,开发团队一般可以划分为项目负责人、程序员、美工三个角色。

  项目负责人在我们中国习惯称为"项目经理",负责项目的人事协调、时间进度等安排,以及处理一些与项目相关的其它事宜。程序员主要负责项目的需求分析、策划、设计、代码编写、网站整合、测试、部署等环节的工作。美工负责网站的界面设计、版面规划,把握网站的整体风格。如果项目比较大,可以按照三种角色把人员进行分组。

角色划分是Web项目技术分散性甚至地理分散性特点的客观要求,分工的结果还可以明确工作责任,最终保证了项目的质量。分工带来的负效应就是增加了团队沟通、协调的成本,给项目带来一定的风险。所以项目经理的协调能力显得十分重要,程序开发人员和美工在项目开发的初期和后期,都必须有充分的交流,共同完成项目的规划和测试、验收。

二、 开发工具的选取

不象C/S结构程序开发,可以一门语言从头到尾,你用Delphi,就是Delphi程序员,你用VC++,你就是VC程序员。B/S结构的Web开发工作,工具的选择是一件痛苦的事情。从Windows到Linux,从IIS到 Apache,从J2EE到 .NET,从COM到.NET到EJB组件......还有 Asp、Asp.net、Jsp、Php、Perl、Javascript、Vbscript......

美工也轻松不了多少,什么"网页三剑客" "新网页三剑客"、FrontPage、Photoshop、CorelDraw......谁都说自己是最强大的!

我们的经验是,选用工具时最好是统一的,比如美工统一用DreamwaverMX制作网页,程序员全部用文本编辑器书写代码。统一工具的好处是可以保持同一个项目文档的一致性,便于开发人员的交流和文档的保存。
  
  但是也不必刻意强求一致,比如美工可以使用任何自己熟悉的图形处理软件,只要最后能生成浏览器支持的图片就可以了。正是Web开发工具的多样性,才成就了今天互联网多姿多彩的局面。

只要程序员的纯Html和Javascript 代码的功夫足够过硬,就能胜任最后的网站整合工作。

三、 项目开发流程

如果项目真正谈下来了,就需要正式确定前阶段的需求分析,该补充的步骤必须补上。然后进行详细的总体设计,其实也基本是前阶段工作的重复和完善。

产生各栏目文件夹的结构图(一些公共文件夹如images、scripts、 styles等需要固定存放,共同调用)。

然后由美工根据内容表现的需要,设计静态网页和其它动态页面界面框架,该切分的图片要根据尺寸切割开来。给需要程序动态实现的页面预留页面空间。制定字体、字号、超级链接等CSS样式等。

在美工设计页面的同时,程序员着手开发后台程序代码,做一些必要的测试。
美工界面完成后,由程序员添加程序代码,整合网站。

由项目组共同联调测试,发现bug,完善一些具体的细节。

制作帮助文档、用户操作手册。向用户交付必要的产品设计文档。

然后进行网站部署、客户培训。

最后进入网站维护阶段。这一阶段也可以不包括在该项目中,而作为公司的服务内容。

以上的每一部都会产生一些阶段性成果,项目经理需要及时进行监督、审核,发现问题及时纠正。

为了控制项目的进度,应当实施填写"项目进度表"制度,即每天填写工作日志,记录当天的工作细目和工作量,以及需要解决和已经解决的问题。

四、 一些技术规则

1, 数据库命名约定(参考了"匈牙利命名法")

数据库(Database):格式 [db]_[ desc]。

表(Table):格式 [tab]_[desc]。表名长度不能超过30个字符,单词首写字母大写,多个单词间不用连接符号。
字段(Field or Column):格式f_[type]_[desc]。f:表明这是一个字段名称;type:可选,表明字段类型,字符型为c,整型为i,逻辑型为b,货币类型为m,浮点型为f,日期型为d,时间型为t,二进制为bl。如果类型为字符型,可以省略。desc:对字段属性的有意义的描述,可以用英语单词、单词缩写、汉语拼音、字段实际含义的拼音缩写等,单词之间可以用单词首字母大写软分割(推荐),也可以用"_"隔开。

举例:

f_name  (姓名)

f_c_ UserInfo 或 f_c_ User_Info

f_xm   (姓名)

f_grp_id  (组标识)

索引(Index):格式 [idx]_[desc]。

视图(View):格式 [View]_[表A]_[表B]_[表C]...,其中View表示"视图"。这个视图由几个表产生就用连字符"_"连接几个表的名,如果表过多可以将表名适当简化。

存储过程:格式 [sp]_[表名]_[存取过程名(缩写)],比如sp_User_Delete。

触发器(Trigger):格式 [trg]_[d][i[[u]_[desc]。trg 代表触发器;d,i,u表明触发器类型(Delete,Insert,Update)定义,书写顺序为d、i、u;desc是表的名称,表明触发器所在的表。

数据库设备(Database Device):格式 [dev]_[desc]。

约束(Constraint):格式 [cns]_[desc]。

2, SQL语句书写规范

SQL语句中,SQL关键字全部大写,其它的遵照"数据库命名约定"。

例如:

SELECT * FROM tabNewsInfo WHERE f_UserName='' ORDER BY f_i_autoid

3, 文件夹命名约定

公共文件夹:

  /images      公共图片

  /styles       样式表

  /scripts      脚本

  /ftps        下载

  /doc        网站相关素材、文档

  /readme.txt   网站说明文档

  /helps.htm   网站帮助文档

  /mylogs.txt    网站维护记录

其它栏目的命名,可以用拼音首字母简称,也可以用英文单词。全部文件夹的含义在readme.txt文件中说明。

4,对象及变量命名约定:每个变量名必须先定义,再使用。

在ASP文件的最开头添加语句<!---->可以强制变量定义。代码块必须采用缩进格式。每个函数前必须标明函数的功能、输入参数、返回值的相关信息。

变量类型 缩写前缀

  String str 或 s

  Integer Int

  Date Dt

  Object obj或 o

  Boolean bol或 b

  Byte Byt

  Double Dbl

  Error Err

  Long Lng

  Single Sng

5,图形对象约定

图片的格式:最后生成 jpg,gif,png,swf 格式的图形文件。

图片的字节大小:最大不能超过30k。

图片的尺寸:根据需要确定,最好使用小图片,大的图片必须切割成小图片使用。

图片的留白:图片的边界不能留白,图片只包含有效的色彩元素。

6,媒体对象约定

流媒体的格式: asf,wmv,wma,rm,不建议使用 avi 格式的动画文件。

7,页面布局的基本约定

中文段落必须有2个汉字的缩进。字间距采用默认大小。行间距为16pt~20pt。文字布局必须留有"天""地""左""右",不能把版面占满。

页面布局必须保持色彩平衡。

注意上下、左右的呼应。注意页面的整体协调。提倡画面和文字的融合,而不是画面和文字的明显分离。

要按照设计广告的要求来设计网页页面 ,特别是一些产品展示性的页面。

五、 一些经验和教训
  
1,能用静态网页表现的内容,尽量不用程序代码动态实现。

2,设计阶段,必须和用户进行充分的交流,完全、准确的了解用户的需求。

既不能歪曲用户的意思,也不能一味迎合用户的非正当需求,也不能对自己没有把握的技术甚至不可能实现的技术夸下海口。需求分析是一个沟通、交流、引导、教育、斗争、妥协的过程。需求分析结果要有文字资料存档。

3,技术参数必须了解准确。

比如用户的软件平台是linux系列,那你的系统就要考虑用Java或者 Php 加MySQL开发了,这时候你的ASP.NET技术就用不上了。

4,最好让用户对已经确定的需求内容签字,盖章。

5,任何交流,必须有书面记录。

对一些喜欢"健忘"-实际上是懒惰的开发人员,要求他必须每天花10分钟写工作日志。

6,每个项目的有关文档,全部、统一集中归档。

分享到:
评论

相关推荐

    spring web flow demo

    本教程分析了 Spring Web Flow 2.0 的技术要点,并且通过创建一个示例应用程序,展示了 Spring Web Flow 2.0 的基本知识。 开始之前 关于本教程 本教程通过一个简化的购物车应用,介绍了如何使用 Spring Web Flow ...

    .net技术资料大全(语言规范 源码教程 学习笔记 技术资料 .net代码生成器)

    怎样写一个存储过程类来实现如何对存储过程的调用?.txt 直接拉入图片文件到程序窗口中打开.txt 指定Web服务器运行的不是ASP.NET1.1版.txt 字符串加密.txt 字幕显示屏幕保护.txt 自己动手用c#写控件.txt C#...

    JDBC 3.0数据库开发与设计

    第5章 二层结构数据库开发实例 5.1 二层结构原理 5.2 Applet访问数据库实例 5.3 Application访问数据库实例 5.4 使用Jdevelpoer工具的数据库开发实例 5.5 二层结构开发数据库的优缺点 5.6 本章小结 第6章 ...

    JavaRESTfulWebService实战

    资源名称:Java RESTful Web Service实战内容简介:国内首本完整地、深度地讲解如何基于Java标准规范实现REST风格的Web服务的专著,阿里巴巴资深Java技术专家近10年开发经验结晶,3位业内著名技术专家联袂推荐!...

    前端工程化:体系设计与实践 高清目录完整

    前端工程化包含一系列规范和流程,其可提升前端工程师的工作效率,加快Web开发迭代速度,是现在前端开发领域中非常重要的一环。本书系统、全面地介绍了前端工程体系的各个环节,包括设计要点和实践经验。全书分为7章...

    亮剑.NET深入体验与实战精要2

    读者可以在欣赏一个个有趣例子的过程中,不知不觉具备开发真正商业项目的能力。 本书集实用性、思想性、趣味性于一体,内容共分为技术基础总结、系统架构设计思想及项目实战解析三部分,随书所附光盘收录大量实例...

    亮剑.NET深入体验与实战精要3

    读者可以在欣赏一个个有趣例子的过程中,不知不觉具备开发真正商业项目的能力。 本书集实用性、思想性、趣味性于一体,内容共分为技术基础总结、系统架构设计思想及项目实战解析三部分,随书所附光盘收录大量实例...

    JavaWeb外卖点餐系统典型模块开发

    是针对外卖点餐系统典型模块开发,从一个项目开发的基本流程讲起,首先了解项目需求,然后选定项目框架选择、规范项目要求、命名规则等,最后根据模块需求展开开发工作。项目主要技术:(UI层--Bootstrap+jquery,...

    前端工程化 体系设计与实践

    前端工程化包含一系列规范和流程,其可提升前端工程师的工作效率,加快Web开发迭代速度,是现在前端开发领域中非常重要的一环。本书系统、全面地介绍了前端工程体系的各个环节,包括设计要点和实践经验。全书分为7章...

    Delphi网络通信协议分析与应用实现pdf清晰

    10.1.6 传真的五个阶段介绍 10.2 传真Modem的分类 10.2.1 传真分类 10.2.2 一类传真Modem 10.2.3 二类传真Modem 10.3 传真会话实例描述 10.3.1 一类传真的发送实例 10.3.2 一类传真的接收实例 10.3.3 二类...

    jQuery权威指南-源代码

    随着Web开发技术的发展,以及用户对应用体验的要求日益提高,当我们要开发一个Web应用时,不仅仅只是要考虑其功能是否足够完备,更重要的是要考虑如何才能提高用户的体验满意度。这是理性的回归,也是Web开发技术...

    软件测试入门(必看)

    15.7.3 与一个后续过程不兼容的格式 96 15.7.4 必须输出的很少或很多 96 15.7.5 不能控制输出布局 96 15.7.6 荒谬的精度输出级别 96 15.7.7 不能控制表或图的标记 96 15.7.8 不能控制图形的缩放比例 96 ...

    软件测试必看 入门级的教程

    15.7.3 与一个后续过程不兼容的格式 96 15.7.4 必须输出的很少或很多 96 15.7.5 不能控制输出布局 96 15.7.6 荒谬的精度输出级别 96 15.7.7 不能控制表或图的标记 96 15.7.8 不能控制图形的缩放比例 96 ...

    软件系统整体设计方案.docx

    术语、定义和缩略语 术语、定义 名词 解释 SeaJS 一个遵循CommonJS规范的JavaScript模块加载框架,可以实现JavaScript的模块化开发及加载机制 JQuery 轻量级的Javascript库 ECharts 百度开源的可视化图表工具 ...

    Spring面试题

    5.Dispathcher查询一个或多个ViewResolver视图解析器,找到ModelAndView对象指定的视图对象 6.视图对象负责渲染返回给客户端。 为什么用: {AOP 让开发人员可以创建非行为性的关注点,称为横切关注点,并将它们插入...

    IIS6.0 IIS,互联网信息服务

    一个IP地址对应多个Web站点 当按上步的方法建立好所有的Web站点后,对于做虚拟主机,可以通过给各Web站点设不同的端口号来实现,比如给一个Web站点设为80,一个设为81,一个设为82……,则对于端口号是80的Web站点,...

    智能硬件产品经理手册.pdf

    智能硬件产品经理⼿册 为了帮助新从事智能硬件的产品尽快的熟悉智能硬件部产品流程,掌握各种数据,平台⼯具的使⽤⽅法,以及提⾼产品设计能⼒。特以智能 硬件产品经历为例制定适合转型到智能⼀到三年的PM/PD⼯作⼿...

    Java数据编程指南

    一些Java细节 设计性事务处理 铭记要点 小结 第21章 开发EJB客户机 引言 EJBs的客户机 小结 第22章 开发可扩缩的EJB应用程序 引言 Enterprise JavaBeans的优点 EJB的广阔开放空间...

    大学文献检索资料 DOC

    文献信息检索实际上包括文献的存储和文献的检索两个相互依存的过程。 二、信息检索的步骤: 1.分析研究课题: 2.选择检索工具: 3.确定检索途径:分类途径、主题途径、题名途径、著作途径、号码途径、其他途径。 ...

    数据仓库基础

    一个环境,而不是产品.................................................................................................36 多种技术的混合.....................................................................

Global site tag (gtag.js) - Google Analytics