如何做软件

| 软件设计师 |

【www.guakaob.com--软件设计师】

如何做软件篇一
《怎么做软件》

怎么做软件

软件是由小程序组合起来的,小程序是由一些代码组成的,要想作软件,你得先弄懂代码. 如一种是按语言语法:

VC/C/C++ C++ Bulider CGI是属于一类编程语言,只不过其设计环境、引用对象和一些细节不同,其他都大体相同。

Java、javascript和JSP又可以归一类。

VisualBasic/Basic、vbscript、QBasic等一类。

SQL、DB2、Oracle、Access、Sybase、Foxpro、XML属数据库。

根据应用方向:

javascript、vbscript、ASP、JSP、CGI、HTML、PHP是一类网络编程语言

Java是面向跨平台的

学会这些最基本的言语后,你就可以制作软件了!仔细的研究这些东东吧!学会后很吃的开的!

软件是用计算机语言写出来的

分高级与低级两种

高级的容易上手最常见的有C语言,VB,VF等

低级的常见的有汇编语言,低级语言的优点是速度快能实现对计算机硬件的直接控制,缺点是抽象,不容易掌握,学习起来难度很大

所以你要想做一个软件必须先选好一门语言来学习

语言的学习需要一个环境

在这个环境下你就可以写程序

就像你学会了普通话,就可以拿笔来写文章

假设如果你学会了VB语言,其实就等于你会用VB软件来编程了,所以你学的是什么语言就用相关语言的软件来编程写软件就行

1.如果只做编程这一块,不必重新学习模拟电路数字电路,用到哪直接查查书就好了

2.单片机软件开发只学习C语言就足够,用keilC编译器,我一个同事就用它。 后来做dsp也使用c语言,没有用过汇编。

3.不过一般做单片机编程的也应该把硬件学的好一点,建议多看看数字电路

模拟电路只把运算放大器相关章节看看就足够了

4.不必迷茫,通常有这种心态是因为动手太少。自己可以做些东西,比如开发板什么的练练手。现在的S51单片机可以使用廉价的下载线烧写程序,所以自己做个最小系统做练习成本也不是很高,只是你要自己画板子的话,要学习protel。电路图可以到网上找很多的。

首先,我想说一下学习思想.学编程其实跟网络游戏有着类似的效果.开始的时候,你会对那些代码,函数等产生很大的兴趣,尤其是刚接触编程的人,刚学习第一种语言的人.可是,当你一步步深入的时候,你会发现你没有了以前那种斗志.就好象你在玩韩国泡菜网游似的,玩到一定程度,每天就是练级练级,完全是一个想冲到高级别的意志力在支持着你.而学编程就更难了,学了两个月后,总是觉得你好象全都学会了,却又什么都做不了,又没有其他的意志力支持你.这时候你会很容易放弃,或者转到别的如网业制作,PS,FLASH等行业的.其实我告诉你,虽然你觉得你好象已经学了很多了,其实你还是什么都没学呢,等你跨过这道坎,才是你刚入门的

时候.说这些,只是想告诉你,学编程中会遇到很多困难,你要努力的克服这些困难,才能真正学到东西.否则,你根本别想学编程,趁早转行.

接下来,我帮你规划一条编程之路.

学编程的人,很少有人没学过C语言的.我推荐让C语言作为你第一个学的语言.虽然有的人说要先学VB,其实这种观念是错误的.C确实比VB枯燥,而且说实话学完C后不学别的就好象没学过,感觉什么都没学会.可是,对初学编程的人来说,只有C语言才能建立起你对编程概念的理解.VB不是编程,VB只是一种工具而已.C语言确实是个不折不扣的语言,真正让你知道什么是编程的语言.有初学C语言,用TC2编译器的人总说他学了C什么都不会.什么软件也写不出来.我可以告诉他,编程编程,编的是程序,而不是软件,软件这是程序的一个构价.你想编程出软件,那以后很轻松的就能掌握,现在你需要学的就是编程,说明确一点,你现在所需要学的就是算法.编程的灵魂是算法,这点每个人都要记住.

所以,第一门语言要学C,推荐的书为谭浩强老师的<C程序设计>(清华大学出版社)或者克尼汉的<C程序设计语言>(美国).

初学者也许需要一套视频教程来帮助自己更快的入门,那么就推荐你去百度搜索"C语言视频教程",第一页的第一条记录就是这个教程.而且是和谭老师的<C程序设计>配套的教程!

注:有些人说谭浩强的书不好,太死板.那么我只能说你最多是个一瓶子不满,半瓶子逛荡的人.真正要掌握高深技术的时候,你会发现你没办法掌握.

C语言要学到什么样才算个头呢?其实,C语言没有学到头一说.有些人学了一辈子,还在钻研.那么你应该到什么时候学下一种呢?按时候算的话,我推荐,如果你每天有6个小时的时间学习的话,一个半月以后,你就可以转到下一个语言的学习过程中了...(我估计普通人在这一个半月内该掌握的都掌握了)

那么,下面要学的是什么呢?这会不会还有人说VB吧.还美其名曰加深对编软件的印象.这种说法很幼稚.学了C语言还学什么VB呀.其实VB确实是很强大的,容易入门,想精通了也不容易.著名的DOS系统就是用BASIC语言写出来的.可是,这种这么易用的软件对于专业学编程的人是一种不好的东西,会让人产生依赖,让人产生惰性.VB的那些控件的功能实在是太强大了,你都不用怎么思考,就可以编写出来.可是,控件毕竟是不能随你的意愿支配的,控件是死的东西.你真正要学的是编写的思想,是函数(Java中称方法).另外,学VB还不如去学Delphi呢. 注:市面上的软件一般一眼就可以看出是用什么语言编程的,而VB编写的软件几乎找不到多少.

所以,下面要学的也就那两种选择了,C++/Java.我推荐,先学Java.

Java实际上是C++改的.去除了C++中指针的部分,让C++变得更安全,同时也比C++稍微简单了一些.你需要去找一些关于Java的介绍,在看下面的东西.

我听一个北大青鸟的老师说Java的最终发展目标是J2EE.我觉得不然,J2ME一定也是个发展方向,只是他跟J2SE,J2EE有很大的不同,开发环境也很不同.关于J2ME的部分我不做讨论.而J2SE呢.说实在的,市面上的J2SE软件确实也是很少的,你见过有几个拓展名为.jre的软件?不过还是要告诉你,学习Java的人肯定最先接触的是J2SE.Java的GUI软件只是技术性的问题,也是开发手段的问题.不管你是要发展到J2EE,还是转到GUI编程,J2SE绝对不是弯路.还是那句话,算法是最重要的.而Java比C++最大的优势在于他的完全面向对象和跨平台.其实,就算你先学了Java,你还是可以很容易的掌握C++,Java程序员和C++程序员的互转是很容易的!再说一些Java的优点.Java比C++方便很多,下载了编译器后一个记事本就能写程序,JBuilder实际上只是个辅助的工具.我去一个搞Linux系统开发的公司看过,用JBuilder的很少,一般都是直接用UltraEdit直接写程序.而C++必须要用VC++等编译器,不说电脑配置低

很不好用,光说VS是要花钱的,而JDK永远都是正版(免费下载),就应该用Java.其实这只是习惯问题,不管你是先学Java还是先学C++,都会很快掌握另外一个的.

Java的书有很多,初学不要买实例的,买那种一直讲基础的,清华大学出版的书很好.另外推荐视频教程,孙鑫老师的Java无难事.去52ebook直接搜索名称"Java无难事",一共有12张CD,都下载下来就好了.教程的第一课会教你如何配置,去哪下载编译器等.

要学到什么时候呢?我是这么推荐的,学到你可以不看任何资料,(当然可查看JAVA帮助文档)熟练的编写出一个酒店管理系统来.接下来,你就可以去学别的了.

这个别的,就是C++,还是那句话,Java程序员可以很容易的掌握C++,只要学了C++的基础语法,剩下的就是实践了!

C++的书可以买一本C++语言+SQL的应用,就是讲数据库系统的例子.多练是很重要的. 视频教程推荐孙鑫老师的VC++视频教程,去讯雷上搜索"孙鑫 VC++",找到那个700M多的打包教程,就是了.

其实学懂Java和C,剩下的你真的可以自己掌握了.我粗略的说一下.

比如,你可以学汇编,汇编实际上是很磨人的,不过汇编高手永远都是抢手货.

那么VB呢?DELPHI呢?哈哈,又是VB,你学,这个时候学VB,学不了几天就掌握了.不比初学轻松?

想学的你都去学,甚至还可以去学Flash,连Flash ActionScript都可以很轻松的掌握.

其实现在,你的路已经定下来了.你剩下的就是不段实践,不段往更高的方向发展.

在这之前,建议你去考几个试.

去考中国计算机软件职业资格水平考试,直接考中级的软件工程师.或者再学一些别的,考个网络工程师.如果你愿意,你可以再多学点东西,把全国计算机等级考试的1到3级的所有东西都考下来.呵呵.

到了这种程度,我想真的不用我再说了,都考你自己了.

最后,记住两句话.

编程的灵魂是算法+数据结构!

学好编程实践最重要!

首先C要比你想象中的强大,你要拿掉你现在从简单程序C程序的看法,还有加减乘除这种想法。

其实你的困惑是每个刚入门的人都有的,产生的原因感觉无非就是觉得你编的程序和现实中应用的程序差距太大造成C语言无用的一种错误印象。

我想你所认为的程序,从你的“简单的WINDOWS程序啊”应该觉得是个图形界面的程序,觉得一个功能强大的程序应该是我们用的图形化界面,这是微软为了普及个人电脑而造成的。作为普通的电脑用户自然要图形界面,这是为了方便他们操作而做的,而作为一个程序员,你还是有必要熟悉字符操作,比如linux下用shell来操作,这里没有图形,没有按钮,有的只是指令。

C语言只能做数学算法,这种想法其实和你现在的水平有关。其实学了微机原理你就知道计算机从物理角度上来说,只能做加和乘(据说有乘法器,不过我没考证过)还有逻辑运算和,

或,非,异或。任何一款复杂的应用软件归根结底都是这些操作的集合体,举个简单的例子,游戏算是一个复杂的软件了,游戏上任务的生命值,法力等等这些数值容易理解。图形其实也可以归结为数学,屏幕上以左下角为原点,每个像素就有了自己的坐标,他的颜色可以用三原色来合成表示,那么一个点就有了坐标这2个数字表示位置,颜色三原色可以用0,1,2这3个表示。这也图形就归结成了一个数学问题,这样CPU处理的还是数学问题。当然这是最原始的,后来人们用种种办法去改善计算机来处理图形,计算机图形也是门学问,你可以看一下。

C也提供了图形编程,包括2D和3D,我只记得一个graph.h头文件,其它的不记得了。

没有图形界面的软件难道就不是复杂软件了么,比如你的显卡驱动程序,它有图形操作界面么,但确确实实是一个非常重要的软件。

所以,好好学习C,这是一门不错的语言。图形化是为了方便人们观察的,而且我认识的觉大部分程序员都讨厌去做前台图形界面的工作,他们都认为,我处理好数据就好了,简单的,整齐的显示给他们看就可以了,为什么要整那些花里胡哨而没有任何实际意义的界面呢。

C语言做的运算程序啊......

可以做成exe,命令行模式的话记得加语句获取用户输入的数值

编译器的话可以用VC++、TC、SC++等等,很多,建议用TC,虽然很老,但是包含了一些VC++下都没有的库文件

显然,C语言的编译你是知道的,其实,编译成EXE就是软件了,不过Turbo C做出来的太丑。

Turbo C/C++是DOS下的面向结构的程序设计,在课堂上,用来学习C 的语法很好,可是真正用它来编程序是不现实的,又难看又不能编出Windows下运行的界面,写个菜单和按钮都很费力。

所以你可以研究一下Windows中的面向对象的C语言,在TC的基础上比较容易上手。

如:Borland C++、 Borland C++ Builder、Visual C++ …………

他们有大量的元件库,这样很容易生成按钮、菜单,甚至常见的算法都可以有现成可调用,上网、数据库的控件也很多。

而你,就只需要专注于将各种模块组合起来,编写一些主要的代码就够了。

之间,你还是需要再付出些努力的。

如何做软件篇二
《如何做好软件需求分析》

软件需求分析

目录

1. 范围 ..............................................................................................................................................................1

2. 总体要求 .....................................................................................................................................................1

2.1 总体功能要求 ......................................................................................................................................1

2.2 软件开发平台要求 .............................................................................................................................1

2.3 软件项目的开发实施过程管理要求 ..............................................................................................2

2.3.1 软件项目实施过程总体要求 ...................................................................................................2

2.3.2 软件项目实施变更要求............................................................................................................2

2.3.3 软件项目实施里程碑控制 .......................................................................................................2

3. 软件开发 .....................................................................................................................................................3

3.1 软件的需求分析..................................................................................................................................3

3.1.1 需求分析 ......................................................................................................................................3

3.1.2 需求分析报告的编制者............................................................................................................4

3.1.3 需求报告评审..............................................................................................................................4

3.1.4 需求报告格式..............................................................................................................................4

3.2 软件的概要设计..................................................................................................................................4

3.2.1 概要设计 ......................................................................................................................................4

3.2.2 编写概要设计的要求 ................................................................................................................4

3.2.3 概要设计报告的编写者............................................................................................................4

3.2.4 概要设计和需求分析、详细设计之间的关系和区别 ......................................................4

3.2.5 概要设计的评审 .........................................................................................................................4

3.2.6 概要设计格式..............................................................................................................................4

3.3 软件的详细设计..................................................................................................................................5

3.3.1 详细设计 ......................................................................................................................................5

3.3.2 特例 ...............................................................................................................................................5

3.3.3 详细设计的要求 .........................................................................................................................5

3.3.4 数据库设计 ..................................................................................................................................5

3.3.5 详细设计的评审 .........................................................................................................................5

3.3.6 详细设计格式..............................................................................................................................5

3.4 软件的编码 ..........................................................................................................................................5

3.4.1 软件编码 ......................................................................................................................................5

3.4.2 软件编码的要求 .........................................................................................................................5

3.4.3 编码的评审 ..................................................................................................................................6

3.4.4 编程规范及要求 .........................................................................................................................6

3.5 软件的测试 ..........................................................................................................................................6

3.5.1 软件测试 ......................................................................................................................................6

3.5.2 测试计划 ......................................................................................................................................6

3.6 软件的交付准备..................................................................................................................................6

3.6.1 交付清单 ......................................................................................................................................6

3.7 软件的鉴定验收..................................................................................................................................7

3.7.1 软件的鉴定验收 .........................................................................................................................7

3.7.2 验收人员 ......................................................................................................................................7

3.7.3 验收具体内容..............................................................................................................................7

3.7.4 软件验收测试大纲.....................................................................................................................7

3.8 培训........................................................................................................................................................7

3.8.1 系统应用培训..............................................................................................................................7

3.8.2 系统管理的培训(可选) .......................................................................................................8

附录A 软件需求分析报告文档模板 .....................................................................................................9

附录B 软件概要设计报告文档模板 ...................................................................................................21

附录C 软件详细设计报告文档模板 ...................................................................................................33

附录D 软件数据库设计报告文档模板...............................................................................................43 附录E 软件测试(验收)大纲 ............................................................................错误!未定义书签。5

1. 范围

本指南用于指导软件开发者为南京市交通局开发软件项目的过程,通过规范软件项目承担单位的开发过程达到提高软件质量,降低维护成本的目的。开发者应根据本指南进行软件开发和编制软件开发文档。本指南是对软件项目承担单位的基本要求。在本指南的附录A至E中提供了文档的编写模板供开发者参考,在进行具体软件开发时,开发者可根据实际情况采编写,但必须提供双方约定的文档,文档中约定的内容必须描述清楚。

2. 总体要求

2.1 总体功能要求

网络应用环境以Internet/Intranet技术为核心。

开发者应在充分分析需求的基础上,选择采用B/S结构或者C/S结构。

软件系统的数据库应依照《南京市交通局信息化数据库建设规范》进行设计和建设。 本指南中没有规定开发者采用何种具体的软件工程开发方法,开发者可根据项目具体特点、自身擅长来选择采用面向过程的方法、面向对象的方法或面向数据的方法,但建议开发 商使用面向对象软件工程的方法,如:采用目前被广泛使用的RUP(Rational Unified Process)方法来进行分析、设计和开发。

2.2 软件开发平台要求

开发者开发的软件必须能够在南京市交通局规定的软件平台上正常运行。目前软件平台为:

数据库管理系统:

Oracle 9i以上版本

中间件(应用服务器)系统:

IBM WebSphere

OA系统:

Lotus Domino/Notes

网络架构:

完全支持TCP/IP协议

开发工具或技术体系:

为保证软件的上下兼容性,开发者应选择比较通用的开发工具的较新版本进行开

发,如Microsoft Visual Studio.Net,Borland Delphi,C++ Builder, 或J2EE(Java2 P1atform Enterprise Edition)等。

2.3 软件项目的开发实施过程管理要求

2.3.1 软件项目实施过程总体要求

(一)开发者提交软件开发工作大纲,交通局组织专家组对工作大纲进行评审,并提出整改意见。

(二)通过评审后,开发者根据整改意见完善工作大纲,经过交通局认可后组织项目组进行软件开发。软件开发工作按照需求分析、概要设计、详细设计、编码、测试等几个阶段进行,在开发过程中,开发者需分阶段提交相关文档。

(三)在软件开发工作完成后,开发者应向交通局提交完整的软件文档,交通局组织验收组对软件进行验收审查。

2.3.2 软件项目实施变更要求

在开发过程中,需求或设计不可避免地需要发生变更,相关变更必须经过交通局书面同 意方可进行。在需求或设计发生变更时,需要对原有文档进行修改,并提供完整的变更记录, 以使变更处于可控制的状态。变更单如下表所示:

表 2-1 变更单

交通局将分四个阶段进行把关,召开专家审查会。

(一) 需求分析(结合原型进行审查)确认;

(二) 概要设计+数据库设计;

(三) 预验收(试运行后);

(四) 正式验收(推广使用后)。

3. 软件开发

合同签订以后,项目承担单位即可组织项目组进行软件开发工作。软件开发必须严格按照软件工程的要求进行。开发过程包括开发者的活动和任务。此过程由软件需求分析、概要设计、详细设计、编码、测试、验收、鉴定等活动组成。

3.1 软件的需求分析

3.1.1 需求分析

首先,开发者和交通局应共同对交通局的应用需求作充分的调研,提交完整的需求分析 报告。在需求分析报告中必须描述的基本问题是:功能、性能、强加于实现的设计限制、属 性、外部接口。应当避免把设计或项目需求写入需求分析报告中。它必须说明由软件获得的 结果,而不是获得这些结果的手段。

软件需求可以用若干种方法来表达,如通过输入、输出说明;使用代表性的例子;用规范化的模型。开发者应尽可能地使用模型的方式,因为这是表达复杂需求的精确和有效的方法。比如用统一建模语言(UML)来描述需求。

编写需求分析报告的要求

a.无歧义性

对最终产品的每一个特性用某一术语描述;若某一术语在某一特殊的行文中使用时具有多种含义,那么应对该术语的每种含义做出解释并指出其适用场合。

b.完整性

需求分析报告应该包括全部有意义的需求,无论是关系到功能的、性能的、设计约束的、还是关系到外部接口方面的需求;对所有可能出现的输入数据的响应予以定义,要对合法和非合法的输入值的响应做出规定;填写全部插图、表、图示标记等;定义全部术语和度量单位。

c.可验证性

需求分析报告描述的每一个需求应是可以验证的。可以通过一个有限处理过程来检查软件产品是否满足需求。

d.一致性

在需求分析报告中的各个需求的描述不能互相矛盾。

e.可修改性

需求分析报告应具有一个有条不紊、易于使用的内容组织;没有冗余,即同一需求不能在需求分析报告中出现多次。

f.可追踪性

每一个需求的源流必须清晰,在进一步产生和改变文件编制时,可以方便地引证每一个需求。

g.运行和维护阶段的可使用性

需求分析报告必须满足运行和维护阶段的需要。在需求分析报告要写明功能的来源和目的。

如何做软件篇三
《如何做好软件项目需求分析》

如何做好软件项目需求分析

对于开发小组的使用成员(包括用户)来说,需求确定是极具认知性和创造性的活动。

软件需求是指用户对目标软件系统在功能、行为、性能、设计约束等方面的期望,通过对应用问题及其环境的理解与分析,为问题涉及的信息、功能及系统行为建立模型,将用户需求精确化、完全化、最终形成需求规格说明,这一系列的活动即构成软件开发生命周期的需求分析阶段。

需求分析是介于系统分析和软件设计阶段之间的重要桥梁。一方面,需求分析以系统规格说明和项目规划作为分析活动的基本出发点,并从软件角度对它们进行检查与调整;另一方面,需求规格说明又是软件设计、实现、测试直至维护的主要基础。良好的分析活动有助于避免或尽早剔除早期错误,从而提高软件生产率,降低开发成本,改进软件质量。

需求分析阶段的基本任务是深入描述软件的功能和性能,确定软件设计的限制和软件同其它系统元素的接口细节,定义软件其它有效的需求。

需求确定为什么困难?

最主要的原因是对于开发小组的使用成员(包括用户)来说,需求确定是极具认知性和创造性的活动。需求确定也许是仍在苦苦等待人工智能支持的最后领域之一。具体表现如下:

系统分析员对问题域的了解程度也是一大困难。

系统分析员感到需求确定很困难的另一个原因是问题域的动态性。

生活是动态的,公司也是。

项目团队成员之间的沟通也一直是需求确定的另一大困难。

每个问题域都有术语。

最后,需求确定过程还会受到其它因素的影响。例如劳累、不舒服、开会时室内和窗外的干扰、团队成员的压力等等。

如何做软件篇四
《如何做好软件销售》

如何做好软件销售

软件的发展基本都走到了细分行业的时代了 大而通用的软件越来越不好做了 通用平台客制化 这几年的erp也不如前几年火了 必须做到把握客户需求进行定制才是出路

ERP可能再按原路走下去是死路 软件的潜在客户的确定,首先是软件的定位问题 也就说你的软件的销售对象是谁,这是前提 很多的软件开发都自认为自己的软件能够通吃 这是技术人的本色 我是作企业电子商务平台 做为软件公司一定要定位清晰,然后就是找到潜在客户 如果是企业软件,产品不重要,重要的是你去理解企业的业务逻辑,然后在企业有长期稳定的关系,这样生意才能成。做生意就是做人,人做好了,生意就来了

对,同意老熊的观点

一个企业的开发不是一笔生意的交易 而是长期的

我补充老熊的观点几点意见

第一:产品不是不重要,至少需要有一定的基础,太次肯定不行。在打单的过程中是肯定需要考虑到产品本身的。这如同战术问题,你需要考虑你的部队武器的先进性。但……在做战略规划时,可以稍微的将产品的比重放得轻点。

第二:软件的销售特别是管理软件,做销售先做人的道理是比较明显的。因为管理软件的重要性,需要客户对个人和对公司都要有足够的信任感。不论是专业上的信任还是人格上的信任。

第三:个人认为软件卖的是服务,每个单都不是在签约后就结束了的,而是开始不久。销售前在做服务,销售中和销售后也在做服务。长期的关系应该表现在这。这不但对公司有口碑的建立的好处,也是你对客户责任感的体现。

软件的销售就是服务的过程

呵呵,言重,我也没赶上开头,都不知道提纲是什么呢。这样吧,大家就一些具体的流程或者一些概念交换一些意见?

1,如何明确软件产品的潜在客户?

打单可能会各有体会和心得,也没办法通用,还不如聊聊,如何开发新客户,或如何切入行业 清茶你来讨论一下如何明确自己的潜在客户呢

江上,你的问题我们呆会再谈好不?

关于明确自己的潜在客户

我认为,如果做为产品型软件公司,这是在产品研发的过程中就逐渐清晰的一个过程

在产品研发的初期,就有一个行业或者一个需求针对性的问题

这个问题是不是就要确定自己的产品定位啊

到了中后期。就应该比较明确了。

一般我习惯画三个圆中圆去分析

怎么个圆中圆?

最中心的圆代表核心客户,其次是潜在客户,最外面的一般是行业内客户或者在研发初期希望去满足的那些有相同需求目标的客户

也就是说:我们在分析客户群时要分级切入

先从产品的功能入手,主要是为了解决什么需求

这是第一步,是我们的客户群基础。销售方向从这开始

接着考虑自己企业的资源及市场环境,包括竞争环境等。

这是第二步,实际就是找到自己能找到能做下的客户

第三步是在前两次的基础上,深挖客户需求的结果。找到最符合产品功能的客户,他们的需求和产品希望达到的目标最一致

这几条做项目的公司其实也基本适用

说概念可能容易看糊涂,我打个比方吧

*清茶待客*(15758220) 09:42:17

假如有个软件企业,在做一些管理软件,其中有个产品是OA,这个产品的适用面相信大家最熟悉了 首先,最外面的圆,也就是我们的客户基础是需要解决办公自动化信息化的公司

基本这样的公司很多,在这个圆中竞争也是最大的。因为连一些非软件产品或者其他类型的管理软件比如ERP之类也有可能在其中。

其次:因为我们公司是内资的本地的中小型企业,在当地有大约5年历史,做代理起家,有一定的客户群。

公司本身资金和其他资源并不雄厚,主要*直销,且技术力量一般。

所以根据公司资源,中间的这个的圆我们要解决什么问题呢?要解决掉大部分的竞争对手,在一个尽量小的竞争环境中找寻我们相对容易成单的客户。

这时候发现,以原有的客户基础为基础,从老客户入手,并延伸到在当地已经有过一定销售结果的一些行业,企业类型是中小型,内资为主,需求不复杂,对技术的要求不高等等

呵呵,说得很不错

最后,我们开始重新再审视自己的产品,发现其中一个无纸化传真的功能是产品的一个特色之一

那么在第二个圆的基础上,我们画第三个圆。是什么呢?是在第二个圆的客户里找工作中需要大量传真的

企业,比如外贸类、IT硬件分销类等等。

通过对自己产品所有主要特点做了分析,第三个圆就画得比较扎实了

这是我的一点个人看法,欢迎大家批判,呵呵

嗯,第一个园是画圈,第三个是差异化竞争

这也是从广告公司学来的,呵呵

广告公司做策划案的时候,在找竞争品牌的时候也是这样画圆,只是条件设置得不一样而已

由此他们确定他们广告需要打给谁看?

然后再找通路,再提创意

对于我们,也可以如此,在确定了客户群后,再找方式联络到这些客户,再找最合适的销售流程和技巧去打单

如何对潜在客户进行联系呢

朋友介绍还是扫大街呢

扫大街

就是定位清楚后用电话销售的方式来进行销售

这个就需要考虑你的客户群的特征了

根据不同的客户群有不同的接触方式

如果是中小企业的软件呢

基本都是中小企业的客户的,呵呵。这个量最大嘛,但也要分行业和分地区特性

这个不容易做概论。

只能凭经验和摸索得来

且有时候可以有多种方法

比如一个IT企业,人数在10到20人,你以扫街或者电话销售或朋友介绍或会议营销等模式都能走得通 一个通用平台的软件如何开拓新市场呢

所以接触方式的选择需要更多考虑的是公司本身的资源条件和最适应大部分客户群的方式,以两三种为基本方式,但也不排除其他方式

你的通用平台的定义是什么?

工作流程管理系统

这是一个朋友开发的系统

主要是中小企业适用的软件,如何开拓新市场呢

听说过这样的系统

我想这样的产品在新市场可能得象ERP的类似手法去做

如果联系到了客户,往往客户有需求,不一定有决策权

一是建立新市场区域内的行业标准或者专业形象,比如有行业协会的方式或者会议营销。一是通过几个需求较明显的行业树样板客户。这个产品我想主要得做这两点,实际就是一是扫盲,一是树目标 关于客户有需求而不一定有决策权,这只是没有找到关键决策人而已。

对于这个,我的提法是:做管理软件销售一般需要找几种人,一是决策人,一是辅助决策人,一是提案人,一是联络人,一是内线。

你提到的客户有需求但没有决策权,一般说来,你找到的是提案人

你要做的是如何让他将需求上报,帮助客户立项

这种人往往就是点头不算,摇头算的那种了

这个需求不到决策人那,就不是个有销售机会的需求

一般来说,软件销售最容易接触到的是提案人或者联系人

这是第一步

这一步能够确定他的需求

当然:需要说明的是,我刚说的五种人不代表需要5个人,也许超过5个人,也许都可以变成一个人。 不能完全确定他的需求,只能代表他最表层的需求

这时候客户一般在你的第一或者第二个圆中徘徊

你需要做的是怎么把他拉入到第三个圆中去

那就是,帮助将需求立项。以进行更深层次的沟通,将需求深挖后升级

中小企业的决策有规律吗

在这个同时,你就需要已经找到内线了。以理顺客户内部的流程和人际关系网,包括探听一些其他方面的信息比如个人性格喜好专长等

你指的规律指什么?

决策流程

任何企业的决策流程都可以大致分为四步,立项、研究、对比、谈判

可以比这个更细化,但至少需要这四步

立项只是最基本的一步

这里面,研究和对比这两步最重要

作为软件公司最好的是能够打入每一步中

一般,软件公司肯定可以接触到的是研究和谈判这两步,假定它可以进入到最后谈判环节的话,呵呵 这时候我们就要开始分析每步对于我们的好处了。这样才能有针对性有目标的去做一些工作。 立项能给我们带来什么好处?一是销售机会的确立,二是需求框架的建立。

立项一般会确定几个方面的东西:时间、目的、负责人。有时候也会有价格

对,如果能够控制里面的环节,胜算就大了

所以我们如果能做到立项是我们推动的,则就会发现,时间我们可以影响,目的我们可以影响,价格我们可以影响,甚至负责人都是我们已经熟悉了的或者已经了解了对方足够信息的人。

而这些好处也就成为我们去推动时所需要达到的目的

我们要让他们有紧迫感(因为我们需要快速的销售出去),发现自身的严重问题(因为这样才能卖产品),让最了解这个立项的原因的人负责(因为我们已经基本搞定他了),对产品质量或者效果最关注(因为我们需要高利润)

所以业务人员比较学会分析决策流程并能够渗透进去或者到控制整个环节,那么就对自己非常有利了 是的

之后是研究,研究会确定什么?需求的程度(深度和广度)、如何满足是最有效最可行的。

我们如果不能在某个环节上做到控制,我们只是打一些低级的价格战,就很难拿下

了解了这些,我们在做调研、演示、讲解、做方案时就知道我们要做到什么

说服客户购买的成功经验,有哪些要注意事项?

这就到了我们这个问题了

既然研究确定的是需求的程度(深度和广度)和如何满足是最有效最可行的。

那么我们的目的是什么?是挖掘满足我们产品功能的需求并强调其重要性,这是在前期我们就可以屏蔽掉竞争对手的最有效的方法

如果我们在这一步,可以将我们产品的特色和优势完全表达清楚给客户知道,并让他们认同。那么你就会发现我们基本没有竞争对手了。呵呵

因为客户的需求只有我们的产品最能满足,这比去开发一个最符合客户需求的软件成本更便宜哦

之后是对比。这时期客户在干嘛?在确定招标的对象和范围。如果我们第一、二步做得好,这一步我们就能控制得好,因为这个对象和范围基本是以我们的希望划定的。

切记一件事!我们不要在第一、二步就把所有的竞争对手完全屏蔽掉,要有意识的留两个我们有足够把握对付的竞争对手。这和客户心理有关。

如何做软件篇五
《如何做好一名软件工程师》

A:不要去做技术上的高手,除非你的目标如此。虽然本文是关于提高软件开发知识的建议,做技术的高手是我一向都不赞同的。你可以提高自己的专业知识,但能胜任工作即止。

B:提高软件知识和技术只是问题的表面,本质是要提高自己认识问题、分析问题、解决问题的思想高度。软件专业知识的很多方法和原理,可以很容易地延伸、应用到生活的其它方面。

C:在能胜任工作的基础上,立即去涉猎其它领域的专业知识,丰富自己的知识体系、提高自己的综合素质,尤其是那些目标不在技术方面的朋友。

1、 分享第一条经验:“学历代表过去、能力代表现在、学习力代表未来。”其实这是一个来自国外教育领域的一个研究结果。相信工作过几年、十几年的朋友对这个道理有些体会吧。但我相信这一点也很重要:“重要的道理明白太晚将抱憾终生!”所以放在每一条,让刚刚毕业的朋友们早点看到哈!

2、 一定要确定自己的发展方向,并为此目的制定可行的计划。不要说什么,“我刚毕业,还不知道将来可能做什么?”,“跟着感觉走,先做做看”。因为,这样的观点会通过你的潜意识去暗示你的行为无所事事、碌碌无为。一直做技术,将来成为专家级人物?向管理方向走,成为职业经理人?先熟悉行业和领域,将来自立门户?还是先在行业里面混混,过几年转行做点别的?这很重要,它将决定你近几年、十年内“做什么事情才是在做正确的事情!”。

3、 软件开发团队中,技术不是万能的,但没有技术是万万不能的!在技术型团队中,技术与人品同等重要,当然长相也比较重要哈,尤其在MM比较多的团队中。在软件项目团队中,技术水平是受人重视和尊重的重要砝码。无论你是做管理、系统分析、设计、编码,还是产品管理、测试、文档、实施、维护,多少你都要有技术基础。算我孤陋寡闻,我还真没有亲眼看到过一个外行带领一个软件开发团队成功地完成过软件开发项目,哪怕就一个,也没有看到。倒是曾经看到过一个“高学历的牛人”(非技术型)带一堆人做完过一个项目,项目交付的第二天,项目组成员扔下一句“再也受不了啦!”四分五裂、各奔东西。那个项目的“成功度”大家可想而知了。

4、 详细制定自己软件开发专业知识学习计划,并注意及时修正和调整(软件开发技术变化实在太快)。请牢记:“如果一个软件开发人员在1、2年内都没有更新过自己的知识,那么,其实他已经不再属于这个行业了。”不要告诉自己没有时间。来自时间管理领域的著名的“三八原则”告诫我们:另外的那8小时如何使用将决定你的人生成败!本人自毕业以来,平均每天实际学习时间超过2小时。

5、 书籍是人类进步的阶梯,对软件开发人员尤其如此。书籍是学习知识的最有效途径,不要过多地指望在工作中能遇到“世外高人”,并不厌其烦地教你。对于花钱买书,我个人经验是:千万别买国内那帮人出的书!我买的那些家伙出的书,!00%全部后悔了,无一本例外。更气愤的是,这些书在二手市场的地摊上都很难卖掉。“拥有书籍并不表示拥有知识;拥有知识并不表示拥有技能;拥有技能并不表示拥有文化;拥有文化并不表示拥有智慧。”只有将书本变成的自己智慧,才算是真正拥有了它。

6、 不要仅局限于对某项技术的表面使用上,哪怕你只是偶尔用一、二次。“对任何事物不究就里”是任何行业的工程师所不应该具备的素质。开发Windows应用程序,看看Windows程序的设计、加载、执行原理,分析一下PE文件格式,试试用SDK开发从头开发一个Windows应用程序;用VC++、Delphi、Java、.Net开发应用程序,花时间去研究一下MFC、VCL、J2EE、.Net它们框架设计或者源码;除了会用J2EE、JBoss、Spring、Hibernate等等优秀的开源产品或者框架,抽空看看大师们是如何抽象、分析、设计和实现那些类似问题的通用解决方案的。试着这样做做,你以后的工作将会少遇到一些让你不明就里、一头雾水的问题,因为,很多东西你“知其然且知其所以然”!

7、 在一种语言上编程,但别为其束缚了思想。“代码大全”中说:“深入一门语言编程,不要浮于表面”。深入一门语言开发还远远不足,任何编程语言的存在都有其自身的理由,所以也没有哪门语言是“包治百病”的“灵丹妙药”。编程语言对开发人员解决具体问题的思路和方式的影响与束缚的例子俯拾皆是。我的经验是:用面对对象工具开发某些关键模块时,为什么不可以借鉴C、C51、汇编的模块化封装方式?用传统的桌面开发工具(目前主要有VC++、Delphi)进行系统体统结构设计时,为什么不可以参考来自Java社区的IoC、AOP设计思想,甚至借鉴像Spring、Hibernate、JBoss等等优秀的开源框架?在进行类似于实时通信、数据采集等功能的设计、实现时,为什么不可以引用来自实时系统、嵌入式系统的优秀的体系框架与模式?为什么一切都必须以个人、团队在当然开发语言上的传统或者经验来解决问题???“他山之石、可以攻玉”。

8、 养成总结与反思的习惯,并有意识地提炼日常工作成果,形成自己的个人源码库、解决某类问题的通用系统体系结构、甚至进化为框架。众所周知,对软件开发人员而言,有、无经验的一个显著区别是:无经验者完成任何任务时都从头开始,而有经验者往往通过重组自己的可复用模块、类库来解决问题(其实这个结论不应该被局限在软件开发领域、可以延伸到很多方面)。这并不是说,所有可复用的东西都必须自己实现,别人成熟的通过测试的成果也可以收集、整理、集成到自己的知识库中。但是,最好还是自己实现,这样没有知识产权、版权等问题,关键是自己实现后能真正掌握这个知识点,拥有这个技能。

9、 理论与实践并重,内外双修。工程师的内涵是:以工程师的眼光观察、分析事物和世界。一个合格的软件工程师,是真正理解了软件产品的本质及软件产品研发的思想精髓的人(个人观点、欢迎探讨)。掌握软件开发语言、应用语言工具解决工作中的具体问题、完成目标任务是软件工程师的主要工作,但从软件工程师这个角度来看,这只是外在的东西,并非重要的、本质的工作。学习、掌握软件产品开发理论知识、软件开发方法论,并在实践中理解、应用软件产品的分析、设计、实现思想来解决具体的软件产品研发问题,才是真正的软件工程师的工作。站在成熟理论与可靠方法论的高度思考、分析、解决问题,并在具体实践中验证和修正这些思想与方式,最终形成自己的理论体系和实用方法论。

10、心态有多开放,视野就有多开阔。不要抱着自己的技术和成果,等到它们都已经过时变成垃圾了,才拿出来丢人现眼。请及时发布自己的研究成果:开发的产品、有创意的设计或代码,公布出来让大家交流或者使用,你的成果才有进化和升华的机会。想想自己2000年间开发的那些Windows系统工具,5、6年之后的今天,还是那个样子,今天流行的好多Windows系统工具都比自己的晚,但进化得很好,且有那么多用户在使用。并且,不要保守自己的技术和思想,尽可能地与人交流与分享,或者传授给开发团队的成员。“与人交换苹果之后,每个人还是只有一个苹果;但交换思想之后,每个人都拥有两种思想”,道理大家

都懂,但有多少人真正能做到呢?

11、尽量参加开源项目的开发、或者与朋友共同研制一些自己的产品,千万不要因为没有钱赚而不做。网络早已不再只是“虚拟世界”,网上有很多的开源项目、合作开发项目、外包项目,这都是涉猎工作以外的知识的绝好机会,并且能够结识更广的人缘。不要因为工作是做ERP,就不去学习和了解嵌入式、实时、通信、网络等方面的技术,反过来也是一样。如果当他别人拿着合同找你合作,你却这也不会,那也不熟时,你将后悔莫及。

12、书到用时方恨少,不要将自己的知识面仅仅局限于技术方面。诺贝尔经济学奖得主西蒙教授的研究结果表明: “对于一个有一定基础的人来说,他只要真正肯下功夫,在6个月内就可以掌握任何一门学问。”教育心理学界为感谢西蒙教授的研究成果,故命名为西蒙学习法。可见,掌握一门陌生的学问远远没有想想的那么高难、深奥。多方吸取、广泛涉猎。极力夯实自己的影响圈、尽量扩大自己的关注圈。财务、经济、税务、管理等等知识,有空花时间看看,韬光养晦、未雨绸缪。

本文来自CSDN博客,转载请标明出处:

如何做软件篇六
《如何做好软件测试》

如何做好测试工作

如何利用 RUP(Rational Unified Process) 的往复式 (Iterations) 流程法让软件产品合乎「质量」要求。 在 RUP 所规范的软件开发领域里,认为「质量」应该满足以下条件:一、产品应该按预定计划流程完成生产;二、产品应该满足或超越预定需求;三、前述需求应该可以被预定的方法予以衡量。 「测试」在整个开发流程里所扮演的角色与介入方式。

测试的五个面向

「测试在大多数人的认知中,大概就是测试「软件产品的功能」罢了,而且由于时间有限,约莫只要把「功能测试」确实做完也就很不错了。不过,在 RUP 准则里,我们认为合乎「质量」的测试应该做到下述五个面向的工作:分别是功能测试、可靠度测试、效能测试三个基本测试工作,及使用性测试与支持性测试两个延伸性的测试工作。

· 功能测试 ( Functional testing ):这是最基本的测试。主要目的在于精确检测系统在各种使用环境( usage scenarios )中的运作与反应行为,验证产品是否确实符合预定需求。此外,它也包括对系统特性( features )及安全性( security )的测试。

· 可靠度测试 ( Reliability testing ):这是第二个测试面向,目的在检测系统在预设环境下的运作是否正常与稳定。例如,有些系统会随着运作时间拉长而产生渐次延迟等各种不正常的现象,测试人员必须找出导致异常的原因,确保系统运作是「完全可靠,不会倾向失误 ( 包括系统崩溃、响应停摆、占用内存等 ) 情形」。以下是建议进行的检测工作项目,包括系统结构测试 ( 测试程序代码的语法及处理程序是否正常、简洁,而且不会造成延迟或瓶颈 ) 、压力测试 ( 以严酷环境来检测出系统的运作上限 ) 、竞争测试 ( 同时有两个以上要求被提出时,系统面对这种竞争要求的真实反应情形 ) 、容量测试 ( 系统处理大量数据的反应行为 ) 等。

· 效能测试 ( Performance testing ):目的在于检测当系统运作于上述两个条件 ( 功能与可靠度 ) 的环境下,其面对平均负载与尖峰负载时的真实反应能力。简言之,就是测试系统的真正效能表现。效能测试包括标竿测试 (benchmark tests) 、负载测试 (load tests) 与效能表现测试 (performance profile tests) 。

上述三种测试面向,是我认为要完成一项「质量产品」最基本的测试工作。此外,也建议再进行以下两种测试。

· 使用性测试 ( Usability testing ):目的是检测系统是否可以让最终使用者觉得方便好用。因此这项测试会从使用者角度出发,评估系统在人类行为、美观、操作接口、文字说明、辅助与导览工具、训练教材等涉及使用者操作行为方面的表现。

· 支持性测试 ( Supportability testing ):为检测系统是否可以部署在预设的环境,并评估其在被使用时的维护与后续支持能力。此外,这个测试也包括安装测试 (installation tests) 与环境调校测试 (configuration tests) ,可以检测系统在什么样的硬件环境下会运作得更好。

从上述五个面向的测试可以清楚看出, RUP 准则几乎把所有「设想之内」与「意料之外」的情形与环境都纳入测试工作范围。目的就是要透过一套严谨的程序质量 (Process Quality) 规范,确保产品质量 (Product Quality) 。

测试工作相当多样且复杂,要完全做好并不简单;诀窍就在于善用工具。

善用工具

大家都清楚善用工具的好处。例如,使用电表而不是自己的手去测量电压或电流,或是当朋友之间争论到底谁比较胖,除了找第三者提供「目测答案」,还会利用「体重计」或「脂肪仪」来做精准的量测,如此才能取得有公信力的答案。

上述都是使用工具的范例。同样的,软件测试工作也必须运用合适的工具。测试是相当繁琐复杂、且不容出错的工作,测试人员需要模拟、检测、追踪、报告的各种环境与控制变因之庞杂,其实已经超出人类大脑的想象与运算能力,而且任何一项测试行为都可能因为缺少严谨控制的环境或变因而被扭曲,甚至导致完全相反的结果。此时唯有具备精准控制与监视能力,而且不会疲劳、偷懒、发脾气、生病的科学性与专门工具,才能完全胜任这些工作。

测试的真谛

「合格的测试」才能确保合格的产品,而且也唯有合格的产品才是开发团队与客户所冀求的,这就是测试工作的真谛。所以,当你花了一千亿美元经费建造一艘航天飞机之后,请不要以一千美元的草率测试方法毁了它。

TAG: 软件测试

如何做软件篇七
《如何做好一名软件项目实施人员》

通过软件实施,使有经验的人员深深的感觉到,软件实施,其实并不是一件很容易的事,也许可算是一项挑战,很需要"明知山有虎,偏向虎山行"的信心和勇气。为什么这样说呢?因为,软件实施可以说是软件产品服务主线的一个决定性环节,软件的成功离不开实施。那什么才是成功的实施呢?我认为是要让用户真正使用起来,让用户满意,用户的成功也是软件公司的成功。只不过,软件要能真正使用起来,其实也不象想象中那么容易。对于实施不成功的情况,通过一些报导的调研这是经常发生的,而且比例很高。

鉴于以上实施的重要性和难度,那我们的实施就不再是简单的安装调试、用户培训、初始化、试运行支持等。因为,实施过程中会遇到各种样的问题,不同的客户可能遇到的问题也不同。我们的软件象媳妇见公婆,公婆总是很挑剔,总是说你这不好那不好。但尽管公婆挑剔,但我们还的见呀!俗话不是说"丑媳妇也的见公婆"吗?何况我们还不是那么丑。这就要讲究如何见的过程了。其实,对一个软件来说,最初的问题是这样酿成的。一开始市场人员出马,把好的吸引人的东西拼命向客户灌输,如果在演示中蹦出一两个Bug,相信销售人员总能沉着地在客户还没有反应过来之前化险为夷。销售人员总是承诺好的功能、性能和质量,引发出客户极大的兴趣,一切顺利的话,经理很快就可以出马签定购买和服务合同,于是,对软件公司来说,最重要的事情似乎就已经差不多了。然后,软件公司派遣实施人员去客户现场安装和演示,请注意,此时是产品最脆弱的时候。实施人员把整套产品拿到客户面前,终于,丑媳妇要掀开面纱让公婆看了。这时,问题如此之多,一时令人焦头烂额。所以说,问题即使很多,我们也需要一个一个去解决。这就要求我们技服人员必须具备以下素质才能应付自如,使客户满意。

首先实施人员应该具有基本的网络诊断与分析问题的能力,至少对问题作出比较正确的判断。因为,安装时可能遇到的意想不到的问题非常多。例如,服务器和网络环境比想象中要苛刻的多,和其它应用软件发生冲突等,甚至和杀毒软件有冲突。对于机器配置不够导致的问题,则可以列出清单,提交客户方的负责人,由其进行定夺。

其次,要对不同的问题要有相对应的解决方案。有时我们的客户端软件运行的速度实在令人尴尬,有时用户登陆就要花费很长时间,造成客户对软件的第一印象就是慢。甚至还会蹦出如超时之类的低层错误。对于这样的问题,应该从两方面着手,既应该注意到客户硬件环境的因素,向客户解释。也应该判断软件产品是否存在相关的问题,当然这个我们心里明白就行了,不要让客户知道,我们应反馈回公司让其改进。

另外,要学会和客户领导交往,领导就是领导,和普通员工就是不同。首先,领导没有耐心来看我们软件的具体功能,但他需要听到或看到很概括的展示,那我们就应投其所好了。也许,我们常常无法回答领导的某些问题。对于这样的问题,我们首先要理解领导的真实意图,这也是软件需求的重要来源。软件的使用对领导来说无非是要加强管理,不使用软件的时候,领导很多数据可能无从知道,当员工的工作数据融合到软件中来了以后,对领导应是很大的帮助。其它的对策包括,让低层员工为我们的软件说好,显然领导比较愿意相信自己单位人的判断。除此之外,我们的另一种回答可以是,软件将在使用后逐步完善。

只学会和客户领导交往还不行,最重要还的和客户员工相处好,前面也提到了领导比较愿意相信自己人的判断。从安装开始,部分用户就可能不配合。在培训课上,有可能前来参加的工作人员大多会对软件抵制。原因很简单,使用软件,增加了他们的工作量,中国是一个人治的社会,管理是模糊的不精确的,工作人员被严格管理起来是令他们所不能习惯的。而且人在本质上都是有些惰性的。因此,可想而知,用户们会指出很多和他们业务不同的,软件不一定能解决的东西,凡此种种,来证明这个软件无法使用。在这种情况下,我们只有尽力展示软件的某些功能,告诉他这个功能能帮他做什么,起到什么效果,那个功能又能帮他解决什么问题。这里你其实不必紧张,一定不要和客户发生争执,非分个清楚,在这里我们可以用难得湖涂。其实,一些用户只是发发牢骚而已,也许他们也知道,领导会强制他们使用。

最后,也是最重要的一点,我们要具有项目进度、优先级别、质量观念和服务意识。这一点我们应从以下几个方面做起:

第一、全面规划,分步实施,重点突破,效益优先。在实施开始的时候,应该站在客户立场上,对于信息化建设,进行辅助的整体规划,以避免实施过程中走弯路。要把产品视为客户最适合的应用解决方案。在整体规划的前提下,才有可能对分步实施进行计划。分步实施的价值在于合理分配,当你长跑的时候,如果把每一圈作为一个里程碑,那么心理负担就会减轻一些,实施工作在这一点上也是类似的。在规划分步实施的时候,为每一步骤设置里程碑,这样可以把问题分解,并且取得更多的成就感。一步一步成功,前一步的成功,能够及时得到领导的首肯,并鼓舞下一步的实施。重点突破也是软件实施的要旨之一。如果事先了解并考虑到当前客户的问题,抓住重点开展实施,那么软件实施成功的可能性就会大增。

第二、工作管理:计划、记录、讨论和小结。我们应该养成这样的工作习惯,即事先计划,过程中记录,事后总结。这一点我是完全感受到的,其实做的每件事都是有文本计划可寻的,这样的工作方式才能使人遇事不慌,不至于丢三落四。凡事预则立,不预则废。事先应进行精心的计划和准备,多方了解客户,做好最坏的打算和准备,考虑到实施中最可能发生的风险,设计好实施的优先级别等等。在前期的接触中,即应考虑到对方管理的变化方向,例如了解领导的管理思路和倾向,主要想解决的问题,客户内部的阻力,直接用户的素质等等,从而方能因地因人制宜,取得更好的效果。在另一方面,对自己的软件产品也要了如指掌,其中也包括针对竞争对手的优势,产品的薄弱环节等。

在工作过程中应做好工作记录,对遇到的问题及时填写问题报告,和客户交换的文件、计划、等都应该统一管理好。另外,如果有了整个工作过程的记录,在实施完成后进行总结应该是非常容易的。什么地方比较成功,什么地方做的不够,原因是什么,今后如何改进和避免,等等。

第三、处理好与用户的关系,用户满意了,软件实施的成功也就指日可待了。这个就不多说了,前面也提到了。

第四、我们应正确看待我们的产品,那我们该如何看待呢?也许已经有很多人说这个产品很滥,即便如此,我们也必须表现得非常热爱自己的产品。如果连你都觉得产品不好,用户自然就会觉得产品非常不好。软件产品的质量本应该是过硬的,但难免存在一些没有解决好的问题。如果遇到了问题,也不必紧张,可以先对问题进行分类,然后考虑各种解决的策略,例如,有些问题可以放在下一版本再改进,等等,不管如何,应该和用户达成一致的理解,即软件只是解决客户一部分的问题,而不可能包治百病。

第五、利用一切可利用的资源,如网络、公司、同事。在遇到阻力的时候,可以向公司提出支援,以寻求支持。客户的合理要求,要及时提缴公司修改,这也是促进我们软件进一步完善的最有效途径之一。例如:我们的系统今年就没少改进使他更加人性化,在市场中占有明显的优势,他的改进来源于那里呢,就是来源于客户的需求。

第六、三分软件,七分管理,十二分数据,这是我最近从网上看到的软件实施的著名原则。其意主要是保护好数据,保证其正确性。这也是任何实施的初始化的重要原则。在初试化的时候,即为用户设计好数据备份和恢复的手段,以防止任何的意外发生。

第七、用户经过培训后会了一些基本操作,但真正用的时候,肯定还会遇到问题。这就是我们已经把用户扶上了马,扶上马还不行我们还的看到他能驾驭整匹马,那接下来我们还的送他一程,也就是我们还可以帮助他做更多的事情,也许在培训内容以外,还有其它的软件功能。由此,展示我们的服务是高质量的。除此之外,"扶上马,送一程"的重要意义也在于推动软件的正式运转。很多用户将会不习惯改用软件来处理工作事务。毕竟使用习惯要改变并不容易。一方面我们可以通过对方的负责人去疏导,另一方面也可以先把问题列出来,一个一个解决,就象解开很多结一样。一边用户在使用,一边我们寻找问题并进行改进。在慈利的实施中我就体会到了这一点,适当地及时地处理一部分需求,可以使实施顺利进行下去,而且在和对方交涉的时候容易显示诚意,达到有理有利有节。否则会卡住在某一个局部而无法顺畅进行下去,最终客户是很满意的,从而才带来了新的项目。

总之、用户验收通过,对于我们实施人员来说,应该为自己庆祝了。验收报告是我们的答卷。同时,也不要忘记进行总结,软件实施,总是有得有失,有忧有喜,这就和我们的生活是一样的,不是么。最后,我把以下这句话送给所有实施人员,你可以这么想,也可以这么做,并且做到:去之能战,战之能胜!

如何做软件篇八
《如何做好软件实施中的培训》

如何做软件篇九
《如何做好软件系统演示》

如何做软件篇十
《如何做好的软件设计》

本文来源:http://www.guakaob.com/jisuanjileikaoshi/217319.html