一个规范的软件开发流程能够加快软件开发速度、提高软件质量、降低项目综合成本。客户管理系统(客户管理软件CRM)与其他软件系统类似,应在系统设计和开发过程中严格遵照规范的软件开发流程。试运行、上线;系统验收;日常维护;下个版本的循环开发。
需求分析与规格说明
在开发系统时,首先要研究客户需求,反复讨论确认需求中模糊不清的地方,包括对需求的总体认知、需求边界定义、目前技术条件下的可实现需求、用户界面等。通过项目组内讨论、与用户(直接用户、间接用户)讨论等方式不断弄清楚用户的真正需求,进行撰写“需求规格说明书”。在取得用户认可后签字,在项目验收时以此作为验收的主要依据。
1、市场需求分析
市场需求分析重点包括以下六个方面。
(1)客户信息的分析能力:客户管理系统(客户管理软件CRM)有大量现有客户和潜在客户的信息,企业应该充分地利用这些信息进行分析,使得决策者掌握的信息更加完全从而能及时地做出决策。
(2)对客户互动渠道的集成能力:对多渠道进行集成与客户管理系统(客户管理软件CRM)及解决方案的功能部件的集成是同等重要的。不管客户是与企业联系还是与销售人员联系,与客户互动都应该是无缝的、统一的、高效的。
(3)支持网络应用的能力:客户管理系统(客户管理软件CRM)的网络功能越来越重要,还可以通过网络为客户提供在线反馈并将信息传达给企业的售后服务部门,为企业留住客户。
(4)建设统一的数据仓库的能力:采用集中的、实时的信息,可使各业务部门和功能模块间的信息统一起来。
(5)对工作流进行集成的能力:工作流是指把相关文档和工作规则自动安排给负责特定业务流程中特定步骤的人。客户管理系统(客户管理软件CRM)解决方案应具有强大的工作流功能,为跨部门工作提供支持,使这些工作能动态地、无缝地集成。
(6)与其他信息系统的功能集成:管理系统(客户管理软件CRM)与ERP以及财务、库存、制造、分销、物流和人力资源等连接起来,使之成为一个客户的互动循环,这种集成能使企业在系统间搜集商业情报,而不是低水平的数据同步。
2、系统需求分析
管理系统(客户管理软件CRM)不仅要处理企业与客户之间的业务,还要处理企业内部相关部门之间的业务,管理系统(客户管理软件CRM)涉及的数据来源、数据类型复杂多变,因此管理系统(客户管理软件CRM)在与数据相关的设计上,应做到以下四点。
(1)建立统一的信息编码系统。
(2)设计能够良好反映事务特性的数据模型。
(3)划分数据库类型,在分布式数据库管理系统和网络平台的基础上,设计全局共享及局部共享数据库,以支持分布式数据处理,实现各分系统之间及其内部功能模块之间的信息集成。
(4)提供强大的数据库管理系统,并在此基础上来完善客户销售数据库、客户市场数据库、企业综合信息数据库等。
另外,在系统功能模块方面应满足客户信息管理、营销、销售和客户服务方面的基本要求,同时应重点关注对系统安全方面的要求,特别是系统权限管理模块方面的设计。
3、组织架构与流程分析
管理系统(客户管理软件CRM)涉及及企业的销售、营销、服务与支持等直接接触客户的各部门,也涉及与此相关的其他部门,包括设计、生产、采购、物流等,合理地规划各部门的工作范围与组织关系、优化业务流程是系统建设能否取得成功的关键因素。为了识别正确的客户,提供正确的产品/服务,并通过正确的渠道在正确的时间安排与客户进行互动和沟通,企业各部门必须步调一致,信息流畅,形成一定的激励机制去完成所需的活动和任务。必须有一个好的管理模式,保证系统信息流合理、迅速。从管理系统(客户管理软件CRM)和运行的角度出发,按照经优化调整的业务流程,基于信息流动的基本思路,确定每个工作的角色和任务。
4、撰写需求规格说明书
需求规格说明阐述一个软件系统必须提供的功能和性能以及它所要考虑的限制条件。它不仅是系统测试和用户文档的基础,也是所有子系统规划、设计和编码的基础。它应该尽可能完整地描述系统预期的外部行为和用户可视化行为。除了设计和实现上的限制,软件需求规格说明不包括设计、构造、测试或工程管理的细节。一般情况下,需求规格说明书涵盖以下六个方面的内容。
1)引言
引言给出软件需求规格说明书的纵览,包括, ①目的:规范化软件开发过程中的《需求规格说明书》的编写,使之成为整个开发工作的基础;②文档约定;描述编写文档时所采用的标准或排版约定;③预期读者和阅读建议:列举了软件需求规格说明所针对的不同读者,给出阅读文档的建议;④产品范围:对指定的软件及其目的简短描述,包括利益和目标;⑤参考文献:列举了编写软件需求规格说明时所参考的资料或其他资源。
2)系统总体描述
概述产品及其运行环境、产品用户和已知限制、假设和依赖。包括,①产品的前景:描述软件需求规格说明中所定义的产品的背景和起源;②产品的功能:概述产品所具有的主要功能;③用户类和特征:可能使用该产品的不同用户类型,并描述它们相关的特征;④运行环境:描述软件运行的软硬环境;⑤设计和实现限制:确定影响开发人员自由选择的问题,并说明这些问题为什么成为一种限制;⑥假设和依赖:列举出在软件需求规格说明中影响需求陈述的假设因素,以及对外部因素的依赖。⑦系统特征:简短说明该系统特性,指出该特性的优先级,列出与该特性相关的详细功能需求。
3)外部接口需求
确定可以保证新产品与外部组件正确连接的需求。包括,①用户界面:陈述所需要的用户界面的软件组件;②硬件接口:描述系统中软件和硬件每一接口的特征;③软件接口:描述该产品与其他外部组件(由名字和版本识别)的连接,包括数据库、操作系统、工具、库和集成的商业组件;④通信接口:描述与产品所使用的通信功相关的需求,包括电子邮件、Web浏览器、网络通信标准或协议及电子表格等。
4)非功能性需求
这部分列举出了所有非功能需求。包括,①性能需求:阐述不同的应用领域对产品性能的需求,并解释它们的原理以帮助开发人员作出合理的设计选择;②安全设施需求:陈述在产品使用过程中,如何防止可能发生的损失、破坏或危害的相关需求,定义必须采取的安全