计算机系统分析员论文
2020-01-24 10:38:01 54
[标题]
企业集团信息管理系统的应用
[摘要]
本文讨论了IT产品销售公司的信息系统项目开发过程中信息系统需求分析的整个过程。重要的功能是所涉及的项目是原始系统的升级替代版本。因此,需求分析过程不同于构建一个全新的系统,该过程可以分为三个阶段:
(1)实施逆向工程以获得对该系统的初步了解;
(2)在第1步的基础上写出基本要求,并将其提交给客户进行审查和补充;
(3)在步骤2的基础上开发原型,使用该原型与客户进行沟通,并最终获得基准要求。
针对以上三个阶段,本文讨论了所使用的分析方法和工具,以及遇到的一些典型问题和措施。最后,我讨论了需求分析中使用的一些工具。
[文本]
从1998年8月到2000年7月,我参与了一个大型集团的企业信息系统的开发。该业务主要涉及购买,销售和IT产品库存。我负责项目中的系统分析。该集团公司以前曾委托一家计算机公司开发IT产品管理系统,但是旧系统存在两个主要问题:
(一)该系统运行速度非常慢。例如,当为销售开票时,从确认开票到完成开票的响应时间可能需要1到2分钟,这对于客户来说是难以承受的。
(2)系统数据不正确。实物库存和计算机库存之间频繁发生的不匹配通常会在销售数据的统计信息中造成一些混乱。因此,不能有效地使用财务数据,并且只能使用体力劳动。输入方法是补充。在这种情况下,该集团的总经理决定参照原始系统重新开发一个系统,以解决原始系统中存在的上述两个不可克服的问题。注意:原始系统是使用PB6.5开发的,数据库是SYBASE,服务器是Windows2000Server,客户端是Windows98,程序体系结构是传统的C / S结构。
鉴于小组的业务运作复杂,涉及多个流程,涉及许多人员,以及诸如项目完成时间短,资金有限和人员有限等约束,请考虑必须避免的结构以前的系统诸如混乱和难以维护的问题,我们决定对原始系统的要求进行彻底而实际的分析。由于原始系统已经开发了近两年,并且客户具有一定的经验,因此基本业务流程本身并没有太大的变化,因此我们将需求分析过程分为三个步骤:
( 1)原始系统的结构分析,主要是数据库结构和程序结构,
(2)根据在步骤(1)中获得的结果编写基本要求,并提交给客户审查和补充,
(3)根据步骤(2)开发原型,并使用该原型与客户沟通以获得最终可用需求结果。以下三个步骤将分别讨论。
第一步是实施逆向工程以获得原始系统的基本要求。
由于原始系统在功能上基本上可以满足客户的需求,并且在两年多的开发中积累了很多经验,因此可以用来获得一些有用的参考,从而可以也要避免。多走弯路。在此阶段,我们使用的主要工具是PB PowerDesigner和PBDocuments。前者主要用于分析数据库结构,后者主要用于分析程序结构,方便开发人员和高级用户理解程序。使用这两个工具的原因是:原始系统太大,有很多模块,许多数据库模型以及大量表。单靠手动方法很难获得相对完整和清晰的系统结构和整体组成。有一个系统无法提供一整套正确有效的设计文档,因此我们只能依靠工具协助。在使用PowerDesigner分析数据库并使用PBDocuments分析原始程序中的PBL之后,我们对原始系统的结构有了初步的了解。结合原始系统的使用,功能和过程要求基本清晰。在此,基于手动输入方法,生成了具有初步要求的自然语言文档。这里要指出的是,使用PowerDesigner的一个缺点是,如果一个表中的字段太多并且同时依赖于多个表,则与输出表相关的图形会很复杂,交叉点很多,并且很难调整和不方便阅读和打印。
第二步基于第一步,即写出系统的基本要求,并由客户进行审查和补充。
通过逆向工程的第一步,我们获得了系统的基本要求。为了完全记录需求的变化以及需求之间的依赖性,我们决定使用Rational的RequisitePRO作为我们的需求管理工具。 Rational有一套完整的需求管理工具,包括非常强大的功能,包括RequisitePro,ClearQuest等。这些需求分析工具可以全面管理需求,包括记录需求的变化,需求之间的依存关系等。但是,我们认为针对Rational的一组工具的全面实现将非常昂贵和复杂,并且需要非常强大的项目管理功能才能完全实现它们。因此,我们仅采用了最简单的功能之一,即记录需求的变化并记录需求。依赖关系,与RUP相关的其他功能已被省略。
之所以这样做,主要是考虑到该项目的资金,人力和国产软件开发的实际情况。如前所述,在根据自己的理解写出基本要求后,我们会将其留给客户作为检查井,以进行适当的补充。我们会将补充和整理后的需求记录为RequisitePro维护的数据库中的正式需求,需求分类,优先级设置等。完成这些任务后,您可以从数据库中直观地了解到目前为止客户提出的需求,哪些需求必须优先排序,哪些需求更加困难等等。在此过程中,我们遇到了一些问题,例如:用户在很多地方都不了解我们用自然语言编写的需求文档,经常花很长时间阅读之后,他们仍然不了解我们描述的需求过程及其需求对应关系在完成的业务之间;此外,由于RequisitePro首次用于管理需求,因此某些开发人员没有类型划分和确定属性值的经验,因此会引起许多迭代。对于前者,我们的方法是:该方法添加一些示意图,将大过程分解为小过程,然后反复与客户沟通和沟通,最终达到双方相互理解的目的。对于第二个问题,我们参考一些
3个示例,然后结合属性的实际使用来做出选择。经过这一阶段的工作,我们已经建立了基本需求数据库并确定了基本需求规格。
第三步是在第二步的基础上构建原型,使用该原型与客户进行更深入的沟通,并通过沟通来修改相应的需求。
此阶段的工作基于第二步任务的报告交换。我们使用PB开发了一个原型系统,以在特定业务流程上与客户进行交流和沟通。通过原型,客户发现了许多地方,我们与他们之间的理解不一致。当我们修改需求时,我们也在RequisitePro中请求了它们。更改历史记录记录在数据库中。事实证明,这种记录历史非常有效。例如,如果有一个客户在两个不同的时间针对相同的需求提出了相反的需求,那么我们会根据历史记录迅速确认该客户的引用是错误的。无需面对事实争辩,同时使用RequisitePro,我们还发现某些需求相互矛盾。在这一阶段的工作之后,我们最终获得了用户认可的需求基准,该基准需求可用于下一步的详细设计。
在这个项目中,我们使用了逆向工程分析工具,例如PowerDesigner,PBDocuments和RequisitePro需求管理工具。这些工具的使用使我们能够提高工作效率,并发挥了一定的辅助作用。但是,就需求分析工具而言。我们认为国内应用仍然很少。这是由于需求分析。另一方面,没有引起足够的重视是因为管理级别尚未达到相应级别。来自Rational的一整套需求分析工具,其功能非常强大。它们已在国外广泛使用,并逐渐开始在中国使用。尤其是那些通过了CMM 2级或更高级别的部门,必须使用这些工具来管理需求。 。在这个项目中,我们仅利用了RequisitePro功能的一些小方面,并意识到了该工具在项目管理中的许多好处。如果有能力的公司可以完全实施RUP,则需求管理的问题将变得不那么困难,项目质量也将得到相应提高。当前,由于中国三坐标测量机热潮的兴起,我们逐渐重视需求分析并逐步使用需求分析工具。这是非常可喜的。当然,我希望在不久的将来,我们可以使用内需分析工具。那时我们的软件行业可能会真正腾飞。
评论;使用反向工具进行重新设计的应用程序很多,本文提供了一个实际示例。写作是有条理和实用的。合理定义需求分析的现实水平。所使用的需求分析方法和工具相对合理且科学。在讨论项目时能够表达讨论,运用经验,爱国主义和专业精神。深度也可以增加,示例应该更丰富。