Architecture of DevOpsThoughts Project

DevOpsThoughts Blog Post Series:
1. About DevOpsThoughts
2. DevOpsThoughts Rabbit
3. Architecture of DevOpsThoughts Project


 

Architecture Diagram

Use Case Diagram

Project Layers

Conclusion

 

 

In this third blog post about DevOpsThoughts Project, I’ll present the Architecture and the Project Layers Structure used in the project.  As the visualization is the best way to understand DevOpsThoughts architecture, I will present below a list of useful diagrams to explain the philosophy for their usage.

Architecture Diagram

Architecture diagram is a graphical representation of System components and how they’re (components) are grouped together. The UML Architecture Diagram gives use a general overview of how the system works and its principles.

The architecture diagrams are usually presented on two levels:

  • High-level Desing, which gives the overall overview, with the description of the major components and it is showing the interaction between one another, in order to meet each requirement.
  • Desing Patterns, which are representing a certain approach to achieve a goal.

For anyone, working with Visual Studio, the Architectural tool was unfortunately removed from Visual Studio 2017, but it can be still accessible with  Visual Studio 2015 and even still readable with Visual Studio 2017.  So, if you are still using Visual Studio 2015, the tool allows you to create Architecture diagram models also in Visual Studio as a part of application or system’s structure.

So, I could say that Architecture diagram is some kind of a high-perspective plan or a map clarifying and communicating the ideas about the system structure and furthermore, explaining which user requirements must be supported by the system.

Below is the Architecture diagram we have used in DevOpsThoughts.

Architecture diagram

Use Case Diagram

Use Case Diagram is UML Diagram used to represent different interactions with the system. Usually, they are also referred to as a behavior diagrams, as they are explaining the set of use cases, which will be performed together with external system or actor. Basically, they are capturing the dynamic or operating behavior of the system.

In DevOpsThoughts we have used the Use Case Diagram also as an input for making PBI’s and User Stories

Below is the Use Case Diagram we have in DevOpsThoughts.

 

Use Case Diagram

Project Layers

Project Layers are usually used to present or develop the software design from the high-level perspective, in order to demonstrate how the software is structured into technical components. Furthermore, they show also how the functional components of the system are linked to the technical components and how the data is being treated.

Below a screenshot from Microsoft Visual Studio’s Solution Explorer for the different layers used in DevOpsThoughts.

Project Layers

Conclusion

Diagrams are in general a very good representation of the components and information with visualization technique. For this reason, I decided also to present the architecture of the project DevOpsThoughts, as it shows in a good visualized way the connections and interactions between different components.

 

 

 

Share This: