No project does not focus on demand investigation. Starting from the first day, developers took a notebook, pulled users to the conference room, and asked what their business process was like. Once you understand the business process, the developer's remaining work will be clear. If you implement them one by one, the system will be OK. But can business processes replace requirements?
In fact, there is a more fundamental factor behind the Business Process-business needs. Business needs are the real needs, and business processes are just a means of implementation.
The developer asks the user: "What is your business process ?" This question is actually very difficult to answer. The first thing to do is to meet business needs to the maximum extent. In addition, business processes are subject to various constraints, and IT systems are also one of these conditions. The developer asks the user what the business process is. The user also asks the developer what the system design is and what performance indicators can be achieved. On this basis, a reasonable business process can be developed.
For example, a mobile communication company adopts such a process when handling incoming traffic for new users, in order of Process Order:
1: first, register the SIM card and number on the exchange network;
2: the marketing department saves the SIM card to a certain amount and sends it to the seller to collect the seller's payment;
3: the seller sells the card to the user, and the user enters the network access contract. If the SIM is loaded into the mobile phone, the user can call immediately;
4: the seller submits the incoming contract to the marketing department, and the data entry personnel of the Marketing Department enter the user data into the system;
5: the billing system is billed based on the user-selected tariff dialog sheet;
6. the Marketing Department calculates commissions and rebates for sellers based on users' consumption.
This process is not determined by the business department. It is closely related to the IT system. After you buy a SIM card, you need to call the phone immediately. However, due to the limited conditions of the IT system, you cannot register a SIM card with the switch network in a timely manner. Therefore, you must first set the SIM card and number on the switch network, and then go to the sales point. Because of this method, a new problem arises: users who buy SIM cards can call immediately, but before data entry personnel enter user information, they have no information in the system, and there is no billing policy. This is a blank period of information. How to control the duration of the blank period, how to charge for these calls, and how to prevent malicious arrearage in the blank period... A new problem is formed, and a new business process is created to solve the problem.
IT systems and business processes are closely related, and they are mutually constrained and mutually promoted. If you want to determine the business process first and then go back and develop IT systems, this is very difficult. To develop IT systems, you need to take a closer look: Why does IT systems and business processes serve.
IT systems and business processes are designed to better meet business needs. Business needs are generated when enterprises serve users and cooperate with partners. Each business requirement is related to the actual commercial interests. For example, if the user just entered the network according to business needs, he wants to meet the following requirements:
1. When you buy a sim, you can immediately install it on your mobile phone and call the phone;
2. the user's call can be billed according to the selected billing policy;
3. The money paid by the user is included in his account, and the call fee is deducted from the account;
4. The contract entered by the user shall be archived as the basis for handling relevant matters in the future;
5. The money received by the salesperson is included in his/her account book and will be verified by the auditor after work;
6. the marketing department will pay the commission to the agent based on the user's consumption.
These are the business needs that the "inbound" Business Process must meet. Enterprises must have encountered some troubles in realizing these business needs, so they hope to have an IT system to help themselves. IT system developers should sit with enterprise users and first clarify these business needs. On this basis, a support system should be designed, and a new process should be developed based on the situation of the support system. Ultimately, automated business processes can better meet business needs.
Extract important elements from business needs and analyze the behavior of these elements and their relationships. Then we can get an important thing: domain model.
The domain model should come from the business activities of the enterprise, rather than the business processes of the IT system.
The most basic way to design a domain model is to capture some obvious elements for analysis. Further, we need to capture some hidden elements. Experienced personnel in the business field sometimes draw a sketch, write a number, or query a form when analyzing the problem, which is an important field element. Understanding these things can make complex domain problems easy to understand and make the domain model more in line with the actual situation of the enterprise.
As this model becomes clearer, developers and users can design IT systems and business processes in a more rational and efficient manner. With practical things in front, users can easily recall some important details in business activities. For example, if you see the lease contract, the developer will ask: "What is the use of this contract ?" The user replied, "I know a usefulness. When a user changes the charges, he needs to check this contract. Some forms of charges are not allowed in the contract ."
As a result, developers can record this in the tariff change process.Code:
If Not User -> Contract -> Allow (Charge) Then
Exception ( " The user's contract prohibits this fee " )
End If
The next step is to continue to clarify the details of this business requirement. "How can the contract determine whether a charge form is permitted? Whether to determine the rate of return of the charge or whether to determine his brand type ..."
do not be confused by the surface of the business process. By looking at the business needs behind the surface, you will find that the requirements have been very stable. In fact, they have not changed much over the years. You do not need to be eager to know all the detailed requirements. As long as you understand the important 20% requirements, you can start to design and code the system. Focusing on business needs, the final business process can meet the needs to the maximum extent, and the IT system can also face fewer "demand changes ".