The AWS SysML Architecture Model Repository is an open-source project on GitHub for any Systems Engineering professionals or students to collaborate and learn how to model cloud systems using SysML.
At the end of this independent project, the student should have an awareness of:
AWS as a cloud platform (https://aws.amazon.com/marketplace/solutions/awsmp-all-use-cases) has more than one hundred cloud services, which enable organizations to secure, store and compute their data on the cloud. This benefits the organization in a way that there is no need for physical hardware to manage the IT infrastructure of the organization.
The intent of this open source project on GitHub, is to model these services using SysML to better understand how these services impact the enterprise, and help organizations transferring their data from physical applications to cloud-based infrastructure, applications, and legacy systems; with the goal to understand any security impacts on how the data is manage and transfer using SysML to model the interfaces that makes these IT systems live in the Cloud.
Attached in this repository, is an AWS SysML Architecture Model Dictionary and Glossary to catalog the model elements that will make a library of systems and services that makes the AWS ecosystem. The library of model view will remain as a project in GitHub, for the Systems Engineering community, to learn how to model Cloud Systems by Systems Modeling Language (SysML).
The independent project submission for any of the model elements chosen by the Systems Engineer, shall follow the requirements of OMG Systems Modeling Language version 1.6. The model views shall follow the following GitHub S3 Example under SysML Modeling Notes and Examples, with the intent to follow the OMG Standards when presenting the views of the system under consideration. When starting a new project recommend forking this repository and restructuring to follow the file structure and then deleting everything in the README section up to the SysML Modeling Notes and Examples to submit your project.
The submission shall have the following sections:
If you need help setting up and getting started with your project, please use the following information to get a hold of me.
Michael L Kent kentmichae@gmail.com
SysML is simple but powerful graphical constructs for modeling a wide range of systems engineering problems. Is perfect in addressing system complexity by specifying requirements, structure, behavior, allocations, and constraints on system properties to support engineering analysis/system tradeoffs.
SysML reuses a subset of UML 2.0 (https://www.uml.org/what-is-uml.htm) that provides additional extensions to satisfy the requirements of the language. For the project, we are referencing OMG SysML version 1.6 cited in the Primary Standards Section. I also recommend reading SysML Distilled: A Brief Guide to the Systems Modeling Language 1st Edition by Delligatti and following the OMG Systems Modeling Language (OMG SysML™) Tutorial from September 2009 in the additional references section.
The Systems Modeling Language is compose of nine (9) diagram types and Allocation tables for mapping language elements across diagram types as shown in the Figure 1 SysML Diagram Types.
To learn more about the different types, follow the link (https://github.com/kentmichae/AWS-Architecture-Model-Repository/blob/main/SysML%20Diagram%20Types/SysML%20Diagrams.md) to read more about the diagrams and the purpose for using the diagrams when defining/describing system structure and behavior.
OMG SysML available specification (formal/2007-09-01) https://www.omg.org/spec/SysML/1.6/Beta1/PDF
SysML Distilled: A Brief Guide to the Systems Modeling Language 1st Edition (https://www.amazon.com/SysML-Distilled-Systems-Modeling-Language/dp/0321927869)
OMG Systems Modeling Language (OMG SysML™) Tutorial from September 2009 by Sanford Friedenthal/Alan MooreRick/Steiner (https://www.omgsysml.org/INCOSE-OMGSysML-Tutorial-Final-090901.pdf)
The repository will be organize using the following packages in Figure 2. These packages shall be use as a library and template when creating/documenting new AWS Models artifacts within AWS Family of Services. For definitions of the contents of the packages, see the following page (https://github.com/kentmichae/AWS-Architecture-Model-Repository/blob/main/AWS%20Packages/Repository%20Packages.md).
This open-source project in GitHub will utilize open-source tools to create the SysML views and manage the content of your model through VSCode. Also, I recommend you get a free GitHub account for this project so you can clone and utilize most of the formatting and section contents when creating views of your model.
To install drawio-desktop use the following GitHub repository (https://github.com/jgraph/drawio-desktop/releases) where you can download and install the diagraming tool to create views of your model. As you can find in the Packages folder, there is already a folder for the S3 model elements and views of the different SysML diagrams generated from the AWS S3 Service.drawio file.
VSCode is a code editor redefined and optimized for building modern web and cloud applications and to manage your project using markdown language; this will allow you to fork or clone this project and to rapidly create your model views (https://code.visualstudio.com/).
Also getting a GitHub (https://github.com/) account to manage your content online and share your project when publishing to GitHub for evaluation will allow team collaboration and sharing your model views. There are some useful resources on how to clone (https://docs.github.com/en/desktop/contributing-and-collaborating-using-github-desktop/adding-and-cloning-repositories/cloning-and-forking-repositories-from-github-desktop#cloning-a-repository).