Software Engineering-Software Architecture【Understand】

Software architecture is the basic structure of software

ADMEMS is short for Architecture Design Method has been Extended to Method System

ADMEMS methodology
3 stages A through    
Preliminary architecture stage Consideration of non-functional goals

Goal: Comprehensively understand the goal; abandon the list of requirements; establish a two-dimensional view of requirements (ADMEMS matrix)

 

How to do it: Use the ADMEMS matrix method to clarify the relationship between requirements and discover derivative requirements (that is, to discover all possible requirements, which the customer did not mention, but it is an invisible and tangible requirement, such as Although the bicycles of shared bicycles are broken [will not be displayed on the user interface] and theft etc.)

1. With people: understand requirements with internal personnel such as project managers, demand analysts, etc. Understand the requirements with customers (it is not recommended that architects play the role of requirements analyst)

 

2. Relevant things: After the requirements analysis is completed, the requirements analysis instructions are followed to understand the requirements documents such as <Requirement Specification Description>

 

3. If you have any questions about the demand, feedback to the pre-sales or sales, and may participate in customer visits or conference calls.

 

4. Sales or pre-sales sometimes ask for a rough workload so that they can initially evaluate the feasibility of the project [manpower, material resources, cost, etc.]

 

Conceptual architecture stage Consideration of non-functional goals Goal: The requirements analysis obtained in the first step considers all requirements including the function, quality, and constraints of the module , and appropriately decomposes the system, but do not fall into the details.
How to do it:
1. Preliminary design, based on key functions, with the help of robust graphs for preliminary design for the purpose of discovering responsibilities (not necessary)
2. High-level segmentation, dividing the complex system into multiple secondary systems or multiple subsystems. [For example, the Scriptures from the West are divided into several responsibilities. In this team, each role is responsible for what it is doing. Monkey King fights monsters, Monk Sand takes the burden, etc.]
3. Consider non-functional requirements [performance, concurrency Such factors], using the target scenario recommended by ADMEMS-decision table.
1. Participate in internal discussions: project feasibility analysis and discussion, and provide suggestions from the perspective of demand, technology, manpower, and risk.
2. Preparation for project bidding: Participate in the preparation of the technical plan of the bidding team, compile the chapters of the system architecture, and solve the questions and answers on the technical problems in the bidding document.
3. Participate in the project bidding: participate in the project bidding as a member of the bidding team, and be responsible for the technical question and answer session.
 
Refine the architecture stage Consideration of non-functional goals

Goal: To refine the conceptual architecture, not to design in detail, but to refine the architecture in accordance with the multi-view approach of the ADMEMS methodology. [Part of the outline design] Refined to the point where it cannot be refined.

 

How to do it: Follow the five-view method of ADMEMS methodology to carry out detailed architecture design in five aspects: logical architecture, physical architecture, development architecture, operation architecture, and data architecture .

1. In the project design stage, carry out architecture design, formulate specifications and conventions, and
provide guidance for detailed design.


2. In the project realization stage, provide standard guidance and technical support to developers.

 

 

 

 

Guess you like

Origin blog.csdn.net/qq_44065088/article/details/109181525