智能与分布计算实验室
  面向业务过程的需求分析模型及其自动化研究
姓名 甘早斌
论文答辩日期 2003.05.11
论文提交日期 2005.03.04
论文级别 博士
中文题名 面向业务过程的需求分析模型及其自动化研究
英文题名 Research on Business-Process-Oriented Requirements Analysis Model and Its Automation
导师1 卢正鼎
导师2 陈传波
中文关键词 需求自动化;形式化描述;软件需求规格说明;条件有向图;业务流程重组;模糊评价
英文关键词 Requirements Automation;Requirements Formal Description;Software Requirements Specifications;Conditional Direct Graphs;Business Process Reengineering;Fuzzy Evaluation
中文文摘 随着软件系统的规模越来越大,复杂程度越来越高,需求分析与定义在整个软件开发与维护过程中越来越重要,直接关系到软件的成功与否。需求分析活动不再仅限于软件开发的最初阶段,它贯穿于系统开发的整个生命周期,并且为软件开发的其它管理活动奠定了基础。 在分析软件发展中存在的问题及其产生的原因的基础上,总结了国内外学者在需求工程方面的最新研究成果及其发展趋势,阐述了软件需求的任务、层次、及其与其它过程的关系,同时对需求工程阶段的主要结果 ? 软件需求规格说明文档SRS(Software Requirements Specifications)进行剖析,分析了现有编写SRS的几种语言的优缺点,提出了编写高质量SRS的八大基本准则,并给出了SRS的形式化结构描述。 借助于集合论和图论工具,提出了一种面向业务过程的需求分析模型BORA(Business-Oriented Requirements Analysis)。该需求分析模型以业务流程重组BPR(Business Process Reengineering)理论为基础、以业务过程的分析为核心、以条件有向图为工具。与现有的一些需求分析方法相比,利用BORA模型进行需求分析时,通过模型优化分析,审视企业现有业务流程运作情况,并发现其中的问题,在业务流程合理化和优化的基础上再分析、设计软件,从而可提高软件的质量,能更好地满足用户要求。 在面向业务流的需求分析过程中,用条件有向图中的一个节点代表业务流中的一个活动(步骤),每个带箭头的直线代表流程之间的控制和数据流动关系,业务流中涉及到的工作人员、权限、数据对象等都可以看作是每个活动的属性。因此,一个业务流的模型可以用若干个节点(活动)和带箭头的直线(关系)来表示,这样可详细描述每个业务流在其实现过程中所涉及到的各种静态数据、动态数据、业务规则、处理流程等业务要素之间的逻辑关系,有助于软件开发人员理解系统的预期功能和行为,有助于软件测试人员从覆盖所有转换路径的有向图中获得完备的测试用例。 针对BORA模型,根据有向图基本理论,定义了描述业务流过程模型时所使用的语言符号及其形式化定义,建立了一套业务过程形式化语义体系,并以实例详细介绍了BORA模型的应用。 从分析现有需求分析方法存在的一些问题以及BORA模型描述的一致性检查入手,结合BPR基本理论,提出了影响业务流过程执行的性能和效率的三个主要因素,并以此对业务流过程进行了定量分析。同时提出了一种由上而下的分析和优化业务流过程的方法,也就是由业务流过程的起始节点开始分析得出活动间的依赖关系,找出业务流过程执行的瓶颈,重构业务流过程。详细讨论了冗余活动的取消、业务流过程的简化以及业务流的重构三种优化途径。使用这些方法可以减少业务流执行的时间,提高整个业务流过程的执行效率,保证用户的原先意图和业务流过程执行结果在业务流程优化后不会被改变。 提出了一个SRS自动生成系统SAGS(SRS Automated Generation System)实现框架,并建立了一套系统原型,该系统主要由人机接口、需求编辑模块、图形编辑模块、一致性检查模块、业务流程优化模块、数据字典管理模块、SRS文档管理模块、安全管理八大功能模块和需求描述库、需求文档库、模型知识库、文档模板库四个数据库组成,基本实现了CDG图形的编辑、SRS文档管理以及从需求描述到软件规格说明的自动生成等功能。 借助于模糊数学的基本理论,分析了软件需求规格说明及其质量特性,建立了SRS的质量度量指标体系,提出了有关数据的获取以及模糊综合评价方法,同时对评价结果进行了定量分析,并给出了一个SRS模糊评判系统SFES(SRS Fuzzy Evaluating System)实现框架,详细分析了SFES系统的组成和实现的功能。 最后总结了主要的研究成果,并指出了本领域需要进一步研究的问题和方向。
英文文摘 As software systems become larger and more complicated, it is more important for requirements analysis and definition in the entire course of software development and maintenance, which directly threaten software success. Being the first step in the process of software engineering, requirements analysis not only has potential to shape the direction for all subsequent project activity, but also is the foundation of software development management. On the basis of analyzing some problems and causes in the course of software development, the latest research achievement and the developing trends in requirements engineering are summarized, then, the tasks and the hierarchies of requirements analysis, as well as the relationships between requirements analysis and other phrases of software development, are expatiated. Meanwhile, this dissertation anatomizes Software Requirements Specifications(SRS)that are the main results in the stage of requirements engineering, analyzes the merits and the defects of three kinds of SRS languages, concludes eight fundamentals of compiling good quality SRS, and puts forward a formal description of SRS. By means of set theory and graph theory, this dissertation proposes a Business-Oriented Requirements Analysis model (BORA). The model bases on the principles of Business Process Reengineering (BPR), the core of business processes analysis and the formal description tool of conditional directed graph. Compared with the existing requirements analysis methods, BORA can analyze business processes, find out some deficits in business processes, and reengineer business processes. In particular, software is redesigined after business processes are optimized, which can improved the quality of software, and make software meet users’ demands better. In the course of business-oriented requirements analysis, the conditional directed graphs are adopted to describe business processes. A rectangle in conditional directed graphs represents one activity (step) of a business process, every line with arrowhead expresses the relationship between one activity and another, that is to say, it is a set of conversion conditions from one activity to another. Therefore, a business process model can be expressed by a series of rectangles (activities) and lines with arrowhead (conditions). The approach distinctly illustrates the logical relationships among business elements, such as diversified static data, dynamic data business rules and processing flows, which are used in the course of every business implementation. In this dissertation, the formal semanteme of business processes description is defined, and a formal semantic system is founded. An application instance of the presented model is given in a large-sized enterprise information system project. The case shows: The description model is simple, intuitional, easy to understand, and it can redound requirements analysis engineers to optimize or reengineer some inconsequence business flows, help for software development engineers to understand the anticipate functions and behaviors of application systems, and head for the software tester to acquire the whole testing cases from the directed graphs based on business flows. In addition, it can provide software requirements analysis engineers with some experienced knowledge, avoid the aimlessness of requirements analysis and effectively improve the requirements analysis quality and automation. After analyzing some deficits of the existing requirements analysis methods and consistency check of BORA, it is proposed that three main factors affect performance and efficiency of business processes, which can be used to analyze business processes quantificationally. Meanwhile, an approach of optimizing business processes is put forword, which can reduce the executive time of business processes, improve the executive efficiency of entire business processes, by finding out the process bottleneck and re-designing the basic component of business processes. In addition, the optimization approach can assure that the executive result of a business process isn’t changed after it is optimized. In this dissertation, the frame of SRS Automated Generation System (SAGS) is given, and its original is established. The system consists of eight function modules and four databases, such as man-computer interface, requirements compiling, business processes optimization, and so on, which can provide software requirements analysis engineers with some experienced knowledge, and avoid the aimlessness of requirements analysis. It can guarantee integrity, consistency, revisability, and traceability of requirements specifications and effectively improve the requirements analysis quality and automation. Nowadays these functions, CDG compiling, SRS documents management and automated generation from requirements description to SRS, have been implemented. By means of fuzzy set theory, this dissertation analyzes SRS and its characteristics,and then proposes the quota system for evaluating the quality of software requirements specifications. It also discusses the approaches of relating data acquirement and fuzzy evaluating, and the quantitative analysis for evaluation results. A frame of SRS Fuzzy Evaluating System (SFES) and its implementation are given in detail. Finally, main research fruits in the dissertation are generalized, some questions and development directions in the field of Requirements Engineering are pointed out.