浅谈软件开发中的注意事项
文章出处:www.51testing.com 作者:金兵 发布时间:2005-10-19
本人从事了四年左右的软件开发工作,曾参与开发过多个大型项目,对于整个项目开发中我觉得有很多地方都应该应当值得注意,特写如下观点和各位看客共同探讨!
1、项目设计
项目设计的主导思想,我觉得可以理解为两种,一种是完全设计,一个是简单设计。
完全设计是指在具体编写代码之前对软件的各种方面都调查好,做好详细的需求分析、编写好全部的开发文档,设计出程序全部流程后再开始写代码。 换句话说,就是全部的计划好了,能看到最终的样子,再开战。这好像也是很多“软件工程”书里要求的那样。开始的时候,我觉得这种方法不错也。什么都计划好了,照着做就是了。不过这里有个明显的问题,就是谁来做这个完美的计划?估计只有及其BT的人了,但是大部分人的想要完全设计,并且没有错误,或者已经有几种后备的容错方案,并能准确无误的推行。以达到最终目标。这样的境界,没有很多年的工作经历是不可能的。我也没有这样的本事,所以我也就放弃了这种想法。
简单设计:简单设计一种概念,一种可以接受的简单的设计,最起码数据库已经定下来,基本流程已经确定的方案,来作为程序设计的开始,并随时根据实际情况的进展来修正具体的功能设计,但这种功能修改不能是修改数据库结构。也就是说数据库结构是在编程之前经过反复论证的。这种方法减少了前期设计的时间,把代码编写工作和部分设计工作放在了一起,实际缩短了项目开发的时间。如果说完全设计方法要求有很厉害的前期设计人员,那么简单设计要求有很有设计头脑的编程人员。编程人员不仅仅是K代码的人而且要负责程序架构的设计。所以对程序员的要求就很高了。 简单设计的成功的一个基点是编程人员设计的逻辑结构简单并能根据需要来调整其逻辑结构,就是代码结构灵活,简单设计带来的另外一个变化就是会议会比较多,编程人员之间的交流就变的很重要。现在一般的中小型软件公司基本上都是采用简单设计的,除非那些很大型的软件公司。
总结,简单设计考验的是开发人员的能力。完全设计考验的是前期设计人员和整个项目组完整能力。(各种文档的编写,开发人员一定会要写一部分的。)
2、设计变化和需求变化
开发人员最怕的是什么呢?设计变化,还是需求变化?我觉得需求变化是最最致命的。当你的一个项目数据库都定下来后,而且已经开发了若干个工作日,突然接到甲方公司提出,某个功能要改变,原先的需求分析要重新改,如果这个修改是涉及的数据库的表结构更改的话,那真是最致命的。这就意味着项目的某些部分得重新推倒重来,如果这个部分跟已完成的多个部分有牵连的话,那就后果更可怕了。所以当碰到这种情况发生,作为项目经理的你就应该考虑先查责任人,究竟是自己的需求分析做的不够好,还是客户在认同了需求分析后做出的修改,如果是后者的话,你完全可以要求客户对他的这个修改负责任!那么,呵呵,客户先生,对不起了,本次新增加的需求将归入另外一个版本。如果是改变前面某个需求的定义,那么说不定就要推倒重来了,不过这个时候到不用太在意,毕竟错的是客户。(项目正式开始前没有没有说清楚其需求)。所以,各位看客,在需求分析做好后,在开工之前一定要叫客户认可签字,并且在合同上要注明,当由客户原因引起的需求改变而造成开发成本的增加,客户要为此买单地。
如果在需求不变的情况之下,设计发生了变化,这个仅仅是我们内部之间的矛盾,商量一下就能解决。在简单设计中,因为前期的设计是不完整的,那么当进入任何一个新的模块进行开发时,都有可能引起设计的变化。开发人员的水平的高低就基本上决定了软件的好坏。
3、代码编写
当需求定下来数据库也定下来后, 其实我们就可以进行实质性的编码了,按照我的看法,一个人单独编程最好,能随时偷懒。(上网,和MM聊聊),但是现在的软件项目越来越大,工期也越来越紧,事实上我们一个小组里面,一般有3-5程序员,所以我们要强调团队合作性。那么你写的代码使得别人要能够看懂,我们必须在实际的编写代码过程中要有详细的编码规范,编码规范在很多书籍里面都提到过。但最起码以下的一些规范是我们必须要遵守的:
一)源程序文件结构:
每个程序文件应由标题、内容和附加说明三部分组成。
(1)标题:文件最前面的注释说明,其内容主要包括:程序名,作者,版权信息,简要说明 等,必要时应有更详尽的说明(将以此部分以空行隔开单独注释)。
(2)内容控件注册等函数应放在内容部分的最后,类 的定义按 private 、 protected 、 pubilic 、 __pubished 的顺序,并尽量保持每一部分只有一个,各部分中按数据、函数、属性、事件的顺序。
(3)附加说明:文件末尾的补充说明,如参考资料等,若内容不多也可放在标题部分的最后。
二)界面设计风格的一致性:
由于采用可视化编程,所有的界面均与Win32方式类似,相应采用的控件等也大都为Windows操作系统下的标准控件,而且参考了其他一些市面上相关的企业内部管理的应用软件。
基于简单易操作的原则,贴近用户考虑,用户界面采用Windows风格的标准界面,操作方式亦同Windows风格,这样在实施过程,可以降低对客户的培训,也可以使用户容易上手,简单易学。
三)编辑风格:
(1)缩进:缩进以 Tab 为单位,一个 Tab 为四个空格大小。全局数据、函数 原型、标题、附加说明、函数说明、标号等均顶格书写。
(2)空格:数据和函数在其类型,修饰(如 __fastcall 等)名称之间适当空格并据情况对 齐。关键字原则上空一格,不论是否有括号,对语句行后加的注释应用适当空格与语句隔开并尽可能对齐。
(3)对齐:原则上关系密切的行应对齐,对齐包括类型、修饰、名称、参数等各部分对齐。
另每一行的长度不应超过屏幕太多,必要时适当换行。
(4)空行:程序文件结构各部分之间空两行,若不必要也可只空一行,各函数实现之间一般空两行。
(5)注释:对注释有以下三点要求:
A、必须是有意义;
B、必须正确的描述了程序;
C、必须是最新的。
注释必不可少,但也不应过多,以下是四种必要的注释:
标题、附加说明;
函数说明:对几乎每个函数都应有适当的说明,通常加在函数实现之前,在没有函数实现部分的情况下则加在函数原型前,其内容主要是函数的功能、目的、算法等说明,参数说明、返回 值说明等,必要时还要有一些如特别的软硬件要求等说明;
在代码不明晰或不可移植处应有少量说明;
及少量的其它注释。
四)命名规范:
坚持采用匈牙利变量命名惯例,所有标识符一律用英文或英文缩写,杜绝采用拼音,标识符中每个单词首字母大写,缩写词汇一般全部大写,只在必要时加“_”间隔词汇。
4、BUG修补
程序出现了BUG谁来修补呢,嘿嘿嘿……
最好的办法是谁编写谁修补,谁改坏谁修补。一个人改坏的代码一人去修。两个人一起改坏的代码两人一起修。
5、开发人员的测试
开发人员的测试是保证代码能正常运行,在开发时候发现的错误往往比较容易修正。(另外一个好处就是没有人来骂你。因为只有你自己知道)。但是一旦软件到了测试小组那里出了问题,那么就多了很多时间来修正BUG,如果到了客户哪里才发现的BUG,那么时间就更长了,开发人员本身受到的压力也是到了最大话了。客户->公司->测试小组->开发人员。 这个完全是倒金字塔型的,承受能力差的一环很容易出事情的。
另外开发人员的测试除了保证代码能正常运行以外,还有一个很重要的方面就是要保证上次能正常运行的代码,这次还是能正常运行。如果做不到这点,那么BUG就不断的会出现,很多BUG也会反复出现。于是软件看上去就有修补不完的BUG了。如果出现这种情况,那么开发人员有必要再教育。一般公司教育的方式有四种。第一种,扣工资,第二种,加班,反复加班+精神攻击。 第三种,开除。第四种,调动人员来帮助那个出了麻烦的家伙。 但愿看这个文章的人不要受到前面三种教育。
参考资料:http://www.51testing.com/html/51/137.html
参加软件设计大赛 应该注意些什么?
注意事项到不知道,经验教训倒是有。
最主要的问题是:
没有意识到文档在这个比赛中是关系生死的,所以写的很随便,只是按照比赛的格式和作品的情况描述性地写,没有在上面花太多功夫。
华师历年都在这个比赛中都取得了很好的成绩,跟他们对文档的写作非常重视有着紧密联系。
ftp://cstfs.gdufs.edu.cn 里面有所有参赛作品和文档
其中:
基于内核rookit检测系统 和 uml建模系统 是华师的作品,文档写得非常好
我的作品是 基于因特网万能表单生成系统
写参赛文档的关键在于:
1、有一段文字是专门陈述创新点的,那段文字必须写清楚你的创新点,应该写:国内目前尚未有类似的系统、提出用了一种……的全新开发思想、克服了同类产品……的缺点 之类的话,而千万不要写:方便工作,可以实现……功能。评委就是根据这个环节评定你的作品是否有创新点的。我今年的文档在这个环节就犯了致命的错误。
我的写法是(错误的):
方便工作、便于管理……
而正确的写法应该是:
目前,表单定制系统由于技术难度极大的原因,在世界市场上非常少,价格都在10000元以上,使用的都是普及率低的 .net,j2ee 平台。而像万能表单生成系统那样直接面向 html+javascirpt+服务器脚本语言,适用于广泛使用的PHP平台的,由于实现难度比用.net开发的还大得多,所以更是前所未有。再加上:万能表单生成系统支持其它表单定制系统未能实现的高级表单元素,如:文件上传元素、图片上传元素,使得万能表单无论在使用价值还是技术含量上都更上一层楼……
2、另外还有一段文字是专门陈述术语的,一定要把你的作品的技术难点涉及的名词写进去,评委很可能就是根据你在这里写的名词去网上找资料然后评定你是否有技术含量的。我的文档在这个地方也犯了致命的错误:
我的写法(错误的)是:
表单:跟html的表单雷同
表单元素:………………
(是些学过一个月网页设计的人都觉得没什么深度的东西)
而正确的写法应该是:
html编辑器:以一个ifame作为编辑框,能实现html和页面交互设计,所看即所得的编辑器(这个虽然很多人知道,但评委看到了就会觉得你是修改过html编辑器内部的,技术不错)
表单定制系统:提供一个自带的编辑器(通常是html编辑器)进行表单界面设计,并可利用这个编辑器所带的数据绑定等功能来设计跟所定制表单相关的数据库,无需编写服务器端处理提交处理数据的程序和操作dbms,就能生成一个全新的数据库子系统的系统(不写这个的话那些评委可能根本不知道什么是表单定制系统,还以为跟那种学过几个月PHP就能做出的文章发布系统差不多,没技术含量。在这个问题上我确实很不满,但自己不是没有原因的)
……
3、紧接着是开发思想部分,错误也是致命的:
我的写法(错误的)是:
把系统用到的一些不常用和难用的javascript函数名称写上去并作解释,然后一笔带过:本系统的核心功能就是巧妙地运用这些方法实现的。(评委会认为:几个函数有什么难的?查查手册就知道了。所谓巧妙地运用,只不过是耍些小聪明而已,没实质的技术难度的)
正确的写法应该是:
把设计到的难点的流程图详细画出来,并在难点作较为详细的文字说明,让评委清楚知道这个方法是别人想不出只有你才能想出的
就是因为文档犯了太严重的错误,所以作品再好都连答辩资格都没有。(其实不能进入答辩的作品有不少是不错的)
其次是命名。
类似我这样的系统名字上应该用上“智能”“建模”等评委喜欢看到的词语,“万能”和“生成”这个词用得太俗了,不想是有学问的人做的东西
补充一点:
我这个系统还有个不是很好的地方就是使用了php(使用php恰好也是创新点所在,很矛盾)。
网页形的系统是评委不大喜欢的东西,但不等于不可行,今年有个“广东自助旅游在线”就是用纯asp+sql server 做的,得了第七名,(我个人感觉他实现得比我差很多,因为他没有突破任何前人没有突破的技术难点。但无可否认他文档比我的好很多)。
如果是想得个二等或者三等就满足的,做网页形式的系统不值得提倡,但完全可以,如果是想拼一等奖的话,千万不要用网页形式
参考资料:http://jsjx.gdufs.edu.cn/pccare//simple/index.php?t730.html
平面设计需要注意哪些事项?
1、空间布局。这是首要事项。元素放置要合理,并且绝不可堆积,让人感觉零乱,所以留白很重要。
2、颜色搭配。颜色分类中有暖色调、中性色调、冷色调。其中暖色调和冷色调的搭配非常严格,所以一个平面内或一个系列的设计,最好先定好色调,并将一个色定为主色调,然后其他的色应与主色相符,最好不要用相冲的颜色——特殊设计不在此例。而且主色与辅色数量不宜过多,否则容易让人感觉眼花缭乱。个人推荐以两色或三色为佳,最多不超过五色。
3、插图与辅件要合理,插图或底纹除了颜色不能与主色相冲外,更不可宣宾夺主,否则就本末倒置了。
4、不同的设计,需要注意的事项也偏重不同,请参考其他相关的专业书藉和资料。篇幅有限,就只把个人的三个最重要的心得写出来与你分享!
学习程序设计应注意哪些事项?
学习编程,首先应该认认真真的学习一门语言。学习微软的,就先从VB开始,VB是比较好的入门语言,可视化的,比较简单,是非常好的入门语言。书籍最少应该准备两本,不可能一本书籍会包含VB的所有内容,在看书的时候,可以交叉的看,一本书籍中没有讲到的内容可以在另一本中看到,这样对学习是很有好处的,也能保证所学知识的完整性。学编程是一个很漫长的过程,不要着急,要理论与实践想结合,例程书籍也是很重要的,看源代码对学习也是很有帮助的,等你学完这门VB语言之后,学习别的语言是非常简单,可以尝试C语言,按照C——C++——VC的顺序学习,有助于知识的连贯性。或者学习Delphi,入门较为简单类似于VB,但比VB强大,即可作为入门又能做强、做大。 1. 明确学习目的学习编程对大多数IT业人员来说都是非常有用的。学编程,做一名编程人员,从个人角度讲,可以解决在软件使用中所遇到的问题,改进现有软件,可以为自己找到一份理想的工作添加重要得砝码,有利于在求职道路上谋得一个好的职位;从国家的角度,可以为中国的软件产业做出应有的贡献,一名优秀的程序员永远是被争夺的对象。学习编程还能锻炼思维,使我们的逻辑思维更加严密;能够不断享受到创新的乐趣,将一直有机会走在高科技的前沿,因为程序设计本身是一种创造性的工作。知识经济时代给我们带来了无限的机会,要想真正掌握计算机技术,并在IT行业里干出一番事业来,有所作为,具有一定的编程能力是一个基本条件和要求。 2. 打好基础学编程要具备一定的基础,总结之有以下几方面:(1)数学基础 从计算机发展和应用的历史来看计算机的数学模型和体系结构等都是有数学家提出的,最早的计算机也是为数值计算而设计的。因此,要学好计算机就要有一定的数学基础,出学者有高中水平就差不多了。(2)逻辑思维能力的培养学程序设计要有一定的逻辑思维能力,“逻思力”的培养要长时间的实践锻炼。要想成为一名优秀的程序员,最重要的是掌握编程思想。要做到这一点必须在反复的实践、观察、分析、比较、总结中逐渐地积累。因此在学习编程过程中,我们不必等到什么都完全明白了才去动手实践,只要明白了大概,就要敢于自己动手去体验。谁都有第一次。有些问题只有通过实践后才能明白,也只有实践才能把老师和书上的知识变成自己的,高手都是这样成材的。(3)选择一种合适的入门语言 面对各种各样的语言,应按什么样的顺序学呢?程序设计工具不外乎如下几类: 1)本地开发应用软件开发的工具有:Visual Basic 、Delphi 、VC++ ( C++ Builder ) 等;数据库开发工具有:Visual Foxpro 、Oracle Developer 、Power Builder 等。 2)跨平台开发开发工具如 Java 等。 3)网络开发对客户端开发工具如:Java Script 等;对服务器开发工具如:PHP 、ASP 、JSP 、ISAPI 、NSAPI 、CGI 等。以上不同的环境下几种开发工具中 VB 法简单并容易理解,界面设计是可设化的,易学、易用。选 VB 作为入门的方向对出学者是较为适合的。 3. 注意理解一些重要概念一本程序设计的书看到的无非就是变量、函数、条件语句、循环语句等概念,但要真正能进行编程应用,需要深入理解这些概念,在理解的基础上应用,不要只简单地学习语法、结构,而要吃透针对这些语法、结构的应用例子,做到举一反三,触类旁通。 4. 掌握编程思想学习一门语言或开发工具,语法结构、功能调用是次要的,最主要是学习它的思想。例如学习 VC 就要学习 Windows 的内在机理、什么是线程......;学习 COM 就要知道 VTALBE 、类厂、接口、idl......,关键是学一种思想,有了思想,那么我们就可以触类旁通。 5. 多实践、多交流掌握编程思想必须在编程实际工作中去实践和体会。编程起步阶段要经常自己动手设计程序,具体设计时不要拘泥于固定的思维方式,遇到问题要多想几种解决的方案。这就要多交流,各人的思维方式不同、角度各异,各有高招,通过交流可不断吸收别人的长处,丰富编程实践,帮助自己提高水平。亲自动手进行程序设计是创造性思维应用的体现,也是培养逻辑思维的好方法。 6. 养成良好的编程习惯编程入门不难,但入门后不断学习是十分重要的,相对来说较为漫长。在此期间要注意养成一些良好的编程习惯。编程风格的好坏很大程度影响程序质量。良好的编程风格可以使程序结构清晰合理,且使程序代码便于维护。如代码的缩进编排、变量命令规则的一致性、代码的注释等。 7. 上网学编程在网上可以学到很多不同的编程思想、方法、经验和技巧,有大量的工具和作品及相关的辅导材料供下载。例如网站“编程课堂”( http://best.yeah.net/)主要以 VB 和 Delph;教学和交流为主,提供大量实用技巧;网站“现在时编程学园”( http://pshool.yeah.net/)是专门介绍C、VC、VB、Delphi 等的综合编程网站;网站“ VB 编程乐园 ”( http://www.vbeden.com/)提供内容丰富而且实用的编程技术文章、精选控件、源代码下载、计算机考试、相关软件以及编程书籍推荐等等。 8. 加强计算机理论知识的再学习学编程是符合“理论→实践→再理论→再实践”的一个认识过程。一开始要具有一定的计算机理论基础知识,包括编程所需的数学基础知识,具备了入门的条件,就可以开始编程的实践,从实践中可以发现问题需要加强计算机理论知识的再学习。程序人人皆可编,但当你发现编到一定程度很难再提高的时候,就要回头来学习一些计算机科学和数学基础理论。学过之后,很多以前遇到的问题都会迎刃而解,使人有豁然开朗之感。因此在学习编程的过程中要不断地针对应用中的困惑和问题深入学习数据结构、算法、计算机原理、编译原理、操作系统原理、软件工程等计算机科学的理论基础和数理逻辑、代数系统、图论、离散数学等数学理论基础知识。这样经过不断的学习,再努力地实践,编程水平一定会不断提高到一个新高度。
为了具有良好的程序设计风格,应注意哪些方面的问题?
1、变量名要有意义,可学习一下匈牙利命名法。
2、代码行适当缩进
3、程序要结构化
4、要有必要的注释
软件实施需要注意什么问题?
你好,软件实施,其实并不是一件很容易的事,也许可算是一项挑战,很需要“明知山有虎,偏向虎山行”的信心和勇气。为什么这样说呢?
因为,软件实施可以说是软件产品服务主线的一个决定性环节,软件的成功离不开实施。那什么才是成功的实施呢?我认为是要让用户真正使用起来,让用户满意,用户的成功也是软件公司的成功。只不过,软件要能真正使用起来,其实也不象想象中那么容易。对于实施不成功的情况,通过一些报导和我到晋南的调研这是经常发生的,而且比例很高。
鉴于以上实施的重要性和难度,那我们的实施就不再是简单的安装调试、用户培训、初始化、试运行支持等。因为,实施过程中会遇到各种样的问题,不同的客户可能遇到的问题也不同。我们的软件象媳妇见公婆,公婆总是很挑剔,总是说你这不好那不好。但尽管公婆挑剔,但我们还的见呀!俗话不是说“丑媳妇也的见公婆”吗?何况我们还不是那么丑。这就要讲究如何见的过程了。其实,对一个软件来说,最初的问题是这样酿成的。一开始市场人员出马,把好的吸引人的东西拼命向客户灌输,如果在演示中蹦出一两个Bug,相信销售人员总能沉着地在客户还没有反应过来之前化险为夷。销售人员总是承诺好的功能、性能和质量,引发出客户极大的兴趣,一切顺利的话,经理很快就可以出马签定购买和服务合同,于是,对软件公司来说,最重要的事情似乎就已经差不多了。然后,软件公司派遣实施人员去客户现场安装和演示,请注意,此时是产品最脆弱的时候。实施人员把整套产品拿到客户面前,终于,丑媳妇要掀开面纱让公婆看了。这时,问题如此之多,一时令人焦头烂额。所以说,问题即使很多,我们也需要一个一个去解决。这就要求我们技服人员必须具备以下素质才能应付自如,使客户满意。
首先实施人员应该具有基本的网络诊断与分析问题的能力,至少对问题作出比较正确的判断。因为,安装时可能遇到的意想不到的问题非常多。例如,服务器和网络环境比想象中要苛刻的多,和其它应用软件发生冲突等,甚至和杀毒软件有冲突。对于机器配置不够导致的问题,则可以列出清单,提交客户方的负责人,由其进行定夺。
其次,要对不同的问题要有相对应的解决方案。有时我们的客户端软件运行的速度实在令人尴尬,有时用户登陆就要花费很长时间,造成客户对软件的第一印象就是慢。甚至还会蹦出如超时之类的低层错误。对于这样的问题,应该从两方面着手,既应该注意到客户硬件环境的因素,向客户解释。也应该判断软件产品是否存在相关的问题,当然这个我们心里明白就行了,不要让客户知道,我们应反馈回公司让其改进。
另外,要学会和客户领导交往,领导就是领导,和普通员工就是不同。首先,领导没有耐心来看我们软件的具体功能,但他需要听到或看到很概括的展示,那我们就应投其所好了。也许,我们常常无法回答领导的某些问题。对于这样的问题,我们首先要理解领导的真实意图,这也是软件需求的重要来源。软件的使用对领导来说无非是要加强管理,不使用软件的时候,领导很多数据可能无从知道,当员工的工作数据融合到软件中来了以后,对领导应是很大的帮助。其它的对策包括,让低层员工为我们的软件说好,显然领导比较愿意相信自己单位人的判断。除此之外,我们的另一种回答可以是,软件将在使用后逐步完善。
只学会和客户领导交往还不行,最重要还的和客户员工相处好,前面也提到了领导比较愿意相信自己人的判断。从安装开始,部分用户就可能不配合。在培训课上,有可能前来参加的工作人员大多会对软件抵制。原因很简单,使用软件,增加了他们的工作量,中国是一个人治的社会,管理是模糊的不精确的,工作人员被严格管理起来是令他们所不能习惯的。而且人在本质上都是有些惰性的。因此,可想而知,用户们会指出很多和他们业务不同的,软件不一定能解决的东西,凡此种种,来证明这个软件无法使用。在这种情况下,我们只有尽力展示软件的某些功能,告诉他这个功能能帮他做什么,起到什么效果,那个功能又能帮他解决什么问题。这里你其实不必紧张,一定不要和客户发生争执,非分个清楚,在这里我们可以用难得湖涂。其实,一些用户只是发发牢骚而已,也许他们也知道,领导会强制他们使用。
最后,也是最重要的一点,我们要具有项目进度、优先级别、质量观念和服务意识。这一点我们应从以下几个方面做起:
第一、全面规划,分步实施,重点突破,效益优先。在实施开始的时候,应该站在客户立场上,对于信息化建设,进行辅助的整体规划,以避免实施过程中走弯路。要把产品视为客户最适合的应用解决方案。在整体规划的前提下,才有可能对分步实施进行计划。分步实施的价值在于合理分配,当你长跑的时候,如果把每一圈作为一个里程碑,那么心理负担就会减轻一些,实施工作在这一点上也是类似的。在规划分步实施的时候,为每一步骤设置里程碑,这样可以把问题分解,并且取得更多的成就感。一步一步成功,前一步的成功,能够及时得到领导的首肯,并鼓舞下一步的实施。重点突破也是软件实施的要旨之一。如果事先了解并考虑到当前客户的问题,抓住重点开展实施,那么软件实施成功的可能性就会大增。
第二、工作管理:计划、记录、讨论和小结。我们应该养成这样的工作习惯,即事先计划,过程中记录,事后总结。这一点我是用了丁总的笔记本电脑所感受到的,其实丁总做的每件事都是有文本计划可寻的,这样的工作方式才能使人遇事不慌,不至于丢三落四。凡事预则立,不预则废。事先应进行精心的计划和准备,多方了解客户,做好最坏的打算和准备,考虑到实施中最可能发生的风险,设计好实施的优先级别等等。在前期的接触中,即应考虑到对方管理的变化方向,例如了解领导的管理思路和倾向,主要想解决的问题,客户内部的阻力,直接用户的素质等等,从而方能因地因人制宜,取得更好的效果。在另一方面,对自己的软件产品也要了如指掌,其中也包括针对竞争对手的优势,产品的薄弱环节等。
在工作过程中应做好工作记录,对遇到的问题及时填写问题报告,和客户交换的文件、计划、等都应该统一管理好。另外,如果有了整个工作过程的记录,在实施完成后进行总结应该是非常容易的。什么地方比较成功,什么地方做的不够,原因是什么,今后如何改进和避免,等等。
第三、处理好与用户的关系,用户满意了,软件实施的成功也就指日可待了。这个就不多说了,前面也提到了。
第四、我们应正确看待我们的产品,那我们该如何看待呢?也许已经有很多人说这个产品很滥,即便如此,我们也必须表现得非常热爱自己的产品。如果连你都觉得产品不好,用户自然就会觉得产品非常不好。软件产品的质量本应该是过硬的,但难免存在一些没有解决好的问题。如果遇到了问题,也不必紧张,可以先对问题进行分类,然后考虑各种解决的策略,例如,有些问题可以放在下一版本再改进,等等,不管如何,应该和用户达成一致的理解,即软件只是解决客户一部分的问题,而不可能包治百病。
第五、利用一切可利用的资源,如网络、公司、同事。在遇到阻力的时候,可以向公司提出支援,以寻求支持。客户的合理要求,要及时提缴公司修改,这也是促进我们软件进一步完善的最有效途径之一。例如:我们的医保今年就没少改进使他更加人性化,在市场销售中占有明显的优势,他的改进来源于那里呢,就是来源于客户的需求。
第六、三分软件,七分管理,十二分数据,这是我最近从网上看到的ERP实施的著名原则。其意主要是保护好数据,保证其正确性。这也是任何实施的初始化的重要原则。在初试化的时候,即为用户设计好数据备份和恢复的手段,以防止任何的意外发生。
第七、用户经过培训后会了一些基本操作,但真正用的时候,肯定还会遇到问题。这就是我们已经把用户扶上了马,扶上马还不行我们还的看到他能驾驭整匹马,那接下来我们还的送他一程,也就是我们还可以帮助他做更多的事情,也许在培训内容以外,还有其它的软件功能。由此,展示我们的服务是高质量的。除此之外,“扶上马,送一程”的重要意义也在于推动软件的正式运转。很多用户将会不习惯改用软件来处理工作事务。毕竟使用习惯要改变并不容易。一方面我们可以通过对方的负责人去疏导,另一方面也可以先把问题列出来,一个一个解决,就象解开很多结一样。一边用户在使用,一边我们寻找问题并进行改进。在慈利的实施中我就体会到了这一点,适当地及时地处理一部分需求,可以使实施顺利进行下去,而且在和对方交涉的时候容易显示诚意,达到有理有利有节。否则会卡住在某一个局部而无法顺畅进行下去,最终慈利是很满意的,从而才带来了泸溪的又一个新的项目。
总之、用户验收通过,对于我们实施人员来说,应该为自己庆祝了。验收报告是我们的答卷。同时,也不要忘记进行总结,软件实施,总是有得有失,有忧有喜,这就和我们的生活是一样的,不是么。最后,我把以下这句话送给所有实施人员,你可以这么想,也可以这么做,并且做到:
去之能战,战之能胜!
广告设计注意事项
在实际设计中应以厘米为单位,
例如,1、客户需做广告牌喷画,规格是6米X18米,那你就应该以实际尺寸为画面规格,有一点需说明,如果是失量软件PS时可按比例缩放,以上为例在电脑中可以6厘米X18厘米做就可(以下不做失量说明);如果是位图就应以实际规格为准,分辨率设为9-18均可.
2、客户需做规章制度写真,规格是80厘米X120厘米,你也就应该以实际为准,分辨率设为72就可。
3、客户需做画册印刷,规格是21厘米X29厘米,你也就应该以实际为准,分辨率设为300就可。
综合以上所述,在实际设计时,应以客户要求规格为准,只是分辨率不同,喷画为9-18,写真50-72,印刷250-300就可以了。
能明白吧!
转载请注明出处51数据库 » 软件设计注意事项 软件开发都应注意哪些事项
丨飞飞飞飞908丨