最近新的项目中我们改进了产品开发的过程,对于过程改进的效果来谈谈自己的看法。
先说说我们原来的和现在的产品开发过程:
- 产品Visio画图,表达产品意图。
- 技术和产品开讨论会确定是否可以技术实现。
- 技术进行开发。
这是我刚进公司时使用的开发方式。在整个产品的开发过程中,我们只有一份文档,那就是产品的Visio图。所有界面的HTML、CSS、页面效果等都由开发人员来负责(PS:数据库的设计老大们都会把关)。这个时候产品的成型基本是Developer开发一个版本,产品人员看一个版本。如果不满意,再根据产品人员的要求修改。往往一个个版本过后,会发现和当初的设计有不少的改变。因为有一次次的修改,所以产品的进度是没有时间保证的。当然其实在互联网类的公司,发展阶段我想应该都是这样。
这种开发方式下,项目的时间没有保证,即使你要求有一个截止时间,你也会发现由于后来需求的变动,这个时间也是没有保障的。其实这也是我们后来要改变开发方式的一个原因。我们要求一个时间上可控的项目。那么如何让项目可控呢?我们首先想到的就是细化产品,要求有一个详细的产品文档。第二要求根据产品文档有一份关键点实现的技术文档。目前这也是我们正在做的,从实施的效果来说还是可以的。
随着公司人员的壮大,在新的项目上,我们对产品开发过程又进行了尝试。就是引入了网页设计师这个角色。简单的说就是原来由开发人员负责的HTML、CSS、页面效果等都由网页设计师这个角色来完成。从公司的角度来说,这是工作细分的一个结果,目的是更高的开发效率。但就目前的配合情况来说还是有不少需要改进的地方。对于有项目中希望把开发人员和网页设计人员分开的实践也是一个可以参考的例子。
目前遇到的问题和一些思考的地方:
- 网页设计人员开发的HTML公用性不强。
这个问题尤其突出。主要表现就是HTML代码结构上不统一。可能从Web上看都是一样,但在设计页面时没有考虑HTML代码的通用性。
A页面代码:
<ul>
<li>点评数据</li>
<li>点评数据1</li>
<li>点评数据1</li>
<ul>
B页面代码:
<table>
<tr><td>点评数据</td></tr>
<tr><td>点评数据</td></tr>
<tr><td>点评数据</td></tr>
</table>
上面两段HTML在页面显示看不到区别,但对于程序代码来说我们就需要实现两次,本来是用以通过统一控件来实现的。
- 网页设计人员对原有规则不了解。
提到这点还是希望网页设计人员要考虑到现有网站的情况,不能只顾自己实现显示效果。
<img src="static.aaa.com/pic1.jpg" width="60px" height="60px">
这段代码本身是没问题,而且显示效果很好。但如果从我们现有的图片规则来说,我们目前的图片都是48x48的,网页设计人员使用了60x60的图片这样会造成现有图片拉伸问题,情况就可以想象了。
- 网页设计人员代码风格统一
如果是一个人写所有的代码可能不会有这个问题,但我们因为开发的文件比较多,网页设计人员就使用了2名。后来我们拿到的代码里就明显看到两种风格的代码。就以左中右的布局来说:
第一种<div class="left"/><div class="center"/><div class="right"/>
第二种<div class="bigcontent"/><ul class="right"/>
如果从风格统一来说<div class="left"/><div class="right"/> 我觉的更好。(PS:都以div为界限条件)
- 网页设计时真实数据的考虑
上图就是一个明显的设计时没有考虑到真实数据下的显示效果。
过程改进:
软件开发人员提早介入HTML代码的设计过程,保证HTML是程序上可读的。
网站设计人员需要更多的了解现有的规则,需要考虑新的HTML、CSS是否会和原来有冲突。
--=阅读快乐=--
欢迎访问我的新鱼塘 www.pumaboyd.com