Dark Mode

Settings

The Wordpress Example

The Wordpress example demonstrates a basic web application where users can create and manage their own blogs. This scenario illustrates how the MACM can be applied to effectively model the components and interactions within a typical web application environment.

Cypher Query

The following Cypher query can be used to build the MACM model for the Wordpress example in the Neo4j database:

CREATE
        (Net1:Network {component_id:'3', name:'LAN Network', type:'Network', app_id:'1', application:'WordPress', access:'public', parameters: '{"ip_range":"192.168.1.0/24", "ip":"192.168.1.1"}'}),
        (PC:HW:PC {component_id:'4', name:'PC', type:'HW.PC', app_id:'1',application:'WordPress', parameters: '{"ip":"192.168.1.134"}'}),
        (PC_OS:SystemLayer:OS {component_id:'5', name:'OS', type:'SystemLayer.OS', app_id:'1',application:'WordPress'}),
        (Server:HW:Server {component_id:'6', name:'Server', type:'HW.Server', app_id:'1',application:'WordPress'}),
        (Server_OS: SystemLayer:OS {component_id:'7', name:'OS', type:'SystemLayer.OS', app_id:'1',application:'WordPress'}),
        (Browser:Service:App {component_id:'8', name:'Browser', type:'Service.Browser', app_id:'1',application:'WordPress'}),
        (WordPress:Service:Server {component_id:'9', name:'WordPress', type:'Service.Web', app_id:'1',application:'WordPress'}),
        (MySQL:Service:Server {component_id:'10', name:'MySQL', type:'Service.DB', app_id:'1',application:'WordPress'}),

        (Net1)-[:connects]->(PC),
        (Net1)-[:connects]->(Server),
        (Server)-[:hosts]->(Server_OS),
        (Server_OS)-[:hosts]->(WordPress),
        (Server_OS)-[:hosts]->(MySQL),
        (PC)-[:hosts]->(PC_OS),
        (PC_OS)-[:hosts]->(Browser),
        (WordPress)-[:uses]->(MySQL),
        (Browser)-[:uses {protocol: 'http'}]->(WordPress)
                        

The Wordpress MACM Graph

Click on a node to hide/show its connections