软件开发过程中的问题浅析
导读:
大多数软件开发商在面对不同用户的时候,总有一些相同或者类似的问题无法解决,造成软件成本、软件质量等诸多问题,这些问题可能一直困扰着软件开发商而从未被很好的解决过。
软件开发商常见的问题
问题一:无法和用户进行全程、有效地协同开发
出于对用户需求的重视,开发商希望能现场开发。出于对成本的考虑,开发商又常常无法进行现场开发。使得用户与开发商的沟通存在障碍。
沟通的障碍,使用户配合开发的积极性和有效性都不足。带来需求的不明确,带来用户场景把握的不准确,最终带来进展的缓慢。
问题二:无法界定系统边界,需求无限膨胀
用户不断地告诉开发商,系统中应该加上一个功能,否则,软件使用起来不是很方便。导致系统范围不断扩大,用户的系统规划凌乱。
开发商交给用户确认的需求资料,通常会被用户忽略。导致后期双方争执。
用户甚至会等到拿到软件产品时,才提出更细致、更可操作的需求。导致系统需求无法稳定。
问题三:无法整合离散的用户数据
用户的数据信息离散地分布在不同的系统中,分布在不同的数据库中;数据字典的定义是离散无关的。导致系统外的数据非常难于被采集、使用。
而用户又非常希望能直接使用原有系统中的数据。导致开发商难于接受或实现。
用户甚至会要求直接使用生产中的数据,诸如excel等文件中的数据。使开发商无法应对来自用户的多变的数据采集表。
问题四:无法整合离散的应用系统
用户的应用系统离散地分布在不同的计算机中,分布在不同的地理位置。导致系统之间很难协调整合应用。
用户通常会希望能实现原有系统和现有系统的协调。导致开发商无法接受。
用户可能会要求为未来未知的系统预留接口。使开发商因为不知道接口的输入、输出而不知所措。
问题五:无法满足用户的多维度、多视角的数据分析
用户的报表形式常常是多样、多变的,报表数据源也常常是来自多系统、多数据库的。导致开发商很难提供用户满意的报表。
基于多系统数据的统计分析和深度挖掘对于客户是非常实用和需要的。导致开发商对整合离散系统和离散数据的担心和恐惧。
基于系统应用不成熟等原因,用户经常会要求对于报表数据能进行再加工。使开发商穷于统计的多版本实现和统计数据的多版本存储。
几乎所有的用户都会要求开放统计报表的设计功能,以便可以自己制作报表。报表自定义的功能在开发商看来,简直是天方夜谭。
解决方案讨论
基于对以上问题的思考,目前业界有一些公司致力于方法的研究和技术体系的研发,并逐步形成了一些解决方案和解决产品。
比较成熟的解决方案通常需要从四个层面来入手:
1. 业务建模层
业务建模层需要为用户和开发商提供企业业务建模工具,并包括基于网络(互联网或局域网)的实时需求沟通工具。
这一层中,通过业务建模工具所创建的业务模型必须符合EAI规范,使之可适用于任何符合标准的EAI系统。
2. 部署管理层
部署管理层需要为开发商提供实现分布式离散系统的部署模型。
这一层提供的部署模型要能支持任何符合标准的EAI系统。
3. 应用支撑层
应用支撑层需要为开发商提供系统应用和集成支持。
这一层要提供插件式的集成功能,并可自动根据部署模型集成系统和数据安全认证。
4. 核心技术层
核心技术层负责管理所有业务组件的调度,协调及工作流驱动。
这一层要能提供业务驱动,并能够支持异构数据库系统的互动。
其产品体系如下:
(SEAP产品体系图)
有关SEAP的详细信息请访问:http://www.softfan.cn/