【Summary】
This article is based on the development of an IT product sales company's information system project, discusses the entire process of information system demand analysis, and its important feature is that the project involved is an upgrade version of the original system. Therefore, the demand analysis process is different from the establishment of a new system, which can generally be divided into three phases: () implementing the reverse engineering to obtain a preliminary understanding of the system; (2) Writing basic demand on the basis of step 1, Supplement by the customer review; (3) Develop prototypes on the basis of step 2, using prototype and customer exchange, and finally obtain baseline requirements. In response to the above three stages, this paper discusses the analytical methods and tools used, and some of the typical issues and measures encountered, and finally talk about some of their own preliminary experiences in demand analysis.
【text】
I participated in the development of a large group of corporate information systems from August 1998 to July 2000, which mainly involves the transfer of IT products. I am responsible for systematic analysis in the project, the group company has originally entrusted a computer company to develop a set of IT product management systems, but there are two main issues of the old system: (1) The system is very slow, If the sales list is started, the response time for the customer will not endure from the determination of the response time to the list of 1 to 2 minutes. (2) The system data is not accurate, and the physical inventory and computer inventory have often occurred, so that the statistics of the sales data produces some confusion, and the data on finances can therefore be effectively used, and can only be supplemented by manual entry. In this case, the Group's general manager decides that the original system re-develops a system to solve the above two difficult problems existing in the original system. Note; the original system uses PB6.5 development, the database uses Sybase, the server uses Windows2000Server, the client uses Windows 98, and the program architecture uses the traditional C / S structure.
In view of the complexity of the group's business, there are many characteristics, involving many personnel, as well as short-term completion time, limited funds, limited staff limited, and considering the need to avoid structural confusion and difficult to maintain the previous system We decided to make a relatively thorough and practical analysis of the needs of the original system. Since the original system has developed for nearly two years, and the customer has certain experience, the basic process itself is not too big. Change, therefore, we divide the process of demand analysis into three steps: () Analyze the structure of the original system, mainly the database structure and program structure, (2) Write basic needs on the basis of subsection (1) Concert to the customer review complement, (3) Develop prototypes on the basis of step (2), using this prototype with customer, thereby obtaining the result of the final availability. The following three steps are discussed separately.
The first step is to implement the reverse engineering and obtain the basic needs of the original system.
Since the original system can basically basically meet the needs of our customers, many experiences have been accumulated in more than two years of development, and therefore, some useful references can be obtained, or more into the way. At this stage, the main tool we adopted is Power's own Power Designer and Pb documents; the former is mainly used to analyze the database structure, the latter is mainly used to analyze the program structure, which is convenient for developers and advanced users to understand the procedures. The reason for the use of these two tools is that the original system is too large, the module is more, the database mode is much, the table is very large, and it is difficult to obtain a relatively complete, clear system structure and overall. There is a system failed to provide a set of proper and complete and effective design documents, so we can only rely on tool assistance. After using POWER Designer to analyze the database, and after PB Documents analyze the PBL in the original program, we have a preliminary understanding of the structure of the original system, and combined with the use of the original system, basically clear the needs of function and process, and On this basis, the natural language document of the initial demand is produced. Here, it is pointed out that the use of Power Designer is: if there are too many fields in a table, and when you rely on multiple tables, the output form-related graphics is complicated, there are many intersections, and it is difficult to adjust, it is not convenient to read And print. The second step is to perform on the basis of the first step, that is, the basic needs of the system are written, and the customer is reviewed and supplemented.
Through the first step reverse engineering, we have obtained the basic needs of the system. In order to fully record the dependencies between the changes and requirements, we decided to use Rational's Requisite Pro as our demand management tool, Rational Company has a set of tools for demand management, which is very powerful, including Requisite Pro, Clear Quest Wait, these demand analysis tools can be fully managed, including changes in records, dependencies, and more. However, we have considered a comprehensive implementation of Rational's set of tools that will be very expensive and complex. It is necessary to fully implement it. Therefore, we only use the simplest part of the function, that is, record demand changes, record demand The dependency between, and other functions related to RUP are given. The reason why this is mainly considering the project's funding, humanity, and the actual situation of domestic software development. As mentioned earlier, we will make an appropriate supplement according to your own understanding and writing basic needs, and we will make an appropriate supplement to the customer. We will submit the needs of the Requisite Pro as a formal demand as a formal demand, and The needs of each requirement, setting priority, etc. After these work is completed, you can intuitively understand which needs in the database, which needs to be prioritized, which needs must be prioritized, which is difficult to have more difficulties. In this process, we have encountered some problems, such as: users do not understand the demand documents written by our natural language, often spending a long time reading, still do not understand the demand process we describe with them The correspondence between the completed business; in addition, due to the first use of Requisite Pro to perform demand management, some developers have no experience in the type division, attribute value, and there is a lot of repetitions, for the former, our method is If you want to increase some schematic, you will break the big process into small processes, and then repeatedly communicate with our customers, and ultimately meet the same purpose of both parties understand. For the second question, refer to some examples, and then combine the use of the actual properties, give alien or selection. After this stage of work, we have established a basic demand library, which has set a basic demand specification. The third step is based on the second step, and the original type is established, and the prototype is more in-depth communication, and the corresponding needs are modified by exchange.
At this stage, the work is based on the report exchange of the second step. We use PB to develop a prototype system, communicate and communicate with customers, through prototype, customers discover many places we don't coordinate with their understandings, we are in revuration, also in Requisite Pro The modified history is recorded in the demand database. It turns out that the role of this record history is very effective. If there is a customer who has made the opposite demand in two different times, we have confirmed the method of the customer according to the historical record, in There is no need to argue in front of the facts, and we have discovered some contradictions between demands with Requisite Pro. After this phase, we finally got the user-recognized demand baseline, ie, baseline requirements that can be used in the next step.
In this project, we used the reverse engineering tools and Requisite Pro demand management tools such as Power Designer, Pb Documents, which enhanced productivity and played a certain assistive role. However, in terms of demand analysis tools. We feel that domestic application is still too few, this is because the analysis is not valued for demand, and on the other hand, it does not reach the corresponding level because the management level is not reached. Rational's set of demand analysis tools, its function is very powerful, foreign use in general, gradually began to popularize in China, especially those who have reviewed by CMM secondary level, must be used to manage requirements. . In this project, we only use some small aspects of the Requisite Pro feature, which has experienced the benefits of this tool for project management. If a powerful company can fully implement RUP, the problem of managing this old difficult problem will not be so tricky, the quality of the project will also be improved. At present, due to the rise of CMM boom, it has gradually attached importance to demand analysis, and gradually uses demand analysis tools. This is very gratifying, of course, more hope that in the near future, can use domestic demand analysis tools, then our software The industry may really take off. Comment; there are many applications with retrograde tools for re-engineering, and this article gives an actual example. Writing is organized, and it is also very practical. Reasonably define the reality level of demand analysis. The method of demand analysis is relatively reasonable for the needs of the needs. Can express the discussion, experience, patriotic heart and career heart while discussing the project The depth can also improve, and the example should be more abundant. (This article mainly refers to the papers of Guangdong Liu Xiaobo and others.