I recently read "Uml Toolkit" (Chinese name: "Uml tools", Electronic Industry Press) and have a better understanding of the design and development process of Uml 2.0 and MDA-based application systems, after reading the second article, I will summarize the following development modes that may be suitable for small and medium systems.
Case-driven development mode:
1. Collect and discuss requirements (communication with the cast customer, specification documents, and brainstorming), list participants and use cases in the application system, and list the main use cases, describe the basic process in text form to further explore participants and internal and external resources related to the Application System
2. Modeling key problem domains of application systems to determine solutions to problems in key fields
3. Use Case Analysis:
1) Entity class (Entity), basic meaningful data type
2) Boundary class, used for the form class or webpage class of the UI
3) Control class: class for data processing, transmission, logical calling and Control
4. UI overview design based on user experience diagrams. You may use WORD, Basic Drawing tools, or DW web RAD tools to design user interface sketches, communicate with customers, and guide their UI requirements.
5. Define the system structure and consider the system boundary conditions, development and deployment environments, budget, tools for Automatic Generation of code, and manual generation, finally, a basic hierarchy of the system is obtained, including the classification of packages and main components.
6. Detailed design. This process includes detailed analysis and design (detailed use case diagram, static structure diagram, InterAction diagram, and state diagram) for each use case by using Uml, and detailed uidesign. In the detailed design process, pay attention to the effective use of the model:
1) MVC, that is, Model-View-controller mode
2) VO, that is, the Value Object Mode
3) CF, that is, the frontend controller mode
4) DAO, that is, the Data Access Object Mode
7. testing and deployment
(Each step in the above seven steps may require a certain number of iterations based on the complexity of the system. At the same time, the overall development of the system should also be based on iterations and increments, in addition, pay attention to the records of various documents throughout the development process)
Supplement:
I personally think that the above development process still lacks a good document management and version control method to avoid document overhead and document confusion. There is no clear idea about this for the time being! (The younger brother is easy to learn, so that the high fingers are lacking)