Dr. Ralf S. Engelschall Architecture Fundamentals AF Goal Focus 00.0
Total Page:16
File Type:pdf, Size:1020Kb
Dr. Ralf S. Engelschall Architecture Fundamentals AF Goal Focus 00.0 Step 1: Your Insight (Believe) Concepts Methods Technologies ReproductionUnauthorized Prohibited. Ralf All Rights S. Engelschall <http://engelschall.com>, Reserved. © 2018-2019 Dr. 1.0.2 (2019-06-28), Copyright Version Graphical Illustration: Ralf S. Engelschall Dr. 2010-2019 by 1.0.2 (2019-06-28), Authored Version Intellectual Content: Concepts have a larger life-time than particular technologies and products. know scope of Step 2: Our Preparation this training Concepts have to be assembled in a concise subsequent understand München (TUM) Universität Science lecture contexts in Computer only. reproduction for Technische Licensed to form to be handy in practice. task of trainee in practice apply AN ARCHITECT Step 3: Your Application 1. THINKING LIKE 1. 2. BEING GOOD AT Concepts can be applied in practice both CONCEPTUALIZATION proactive/constructive and reactive/analytical. Scope Type Focus Content Computer Literature Industry Theory knows about knows about Science more things more things Diagrams Statements (written) Abstraction Generalization Software (Conceptual) Trainer Architecture Rationales Model Theory Practice (verbal) Engineering Fundamentals Software & Examples Trainer Systems (verbal) Practice Architecture the most Instantiation relevant concepts Specialization Software Engineering Disciplines AF ANALYTICAL CONSTRUCTIVE STEERING 01.1 REQ Requirements ENV Environment RES Resources Intellectual Content: Version 1.0.7 (2010-07-21), Authored 2006-2010 by Dr. Ralf S. Engelschall, inspired by Rational Unied Process (RUP) Rational by Ralf inspired Unied Process S. Engelschall, Dr. 2006-2010 by 1.0.7 (2010-07-21), Authored Version Intellectual Content: Graphical Illustration: Version 1.0.9 (2019-06-28), Copyright © 2007-2019 Dr. Ralf All Rights S. Engelschall <http://engelschall.com>, Reserved. © 2007-2019 Dr. 1.0.9 (2019-06-28), Copyright Version Graphical Illustration: Unauthorized ReproductionUnauthorized Prohibited. Systematically and structurally elicit, Design all external application Provision all human resources, organize, document and agree on architecture aspects to allow seamless environments and toolings Who? scope, functionality and constraints integration into its environment to drive the project Why? How? Where? ANA Analysis DES Design PRJ Project PLANNING Licensed to Technische Universität München (TUM) Universität Science lecture contexts in Computer only. reproduction for Technische Licensed to Systematically and structurally analyze Design all internal application Plan all time, costs and scope and document the functionality into a architecture aspects to allow an ecient aspects to allow an eective and Who? binding and complete specication and eective implementation ecient execution of project What? How? When? DBG Debugging IMP Implementation EXE Execution Locate the origin of a functional Craft all application code and data Continuously ensure that at any time all or non-functional problem within according to the requirements, analysis project members know about and can the application code or data and design specications perform their assigned work packages What? TST Test ASM Assembly CTL Controlling Test application at all its structural Automate hierarchical building of all Continuously compare planned and layers against dened functional code and data artifacts and automate actual status of time, costs and scope and non-functional test cases deployment & operations of application and adjust project accordingly MSM Measurement DOC Documentation DLV Delivery EXECUTIONAL Measure static and dynamic aspects Craft documentation for the target Plan and control the continuous of application and project and provide audiences manager, developer, user change and delivery process of the resulting key performance indicators and administrator application across releases Project = Disciplines x INS Inspection TRN Training CFG Conguration Process Review and audit all aspects of the Create and perform presentations Consistently identify and version all software engineering process of the and workshops based on the revisions of all project artifacts across project and judge current quality application and its documentation all storage types and their branches secondary / support disciplines primary / focus / ”king” disciplines domain Analysis domain Design domain Development domain Documentation domain Analytics domain Conguration domain Management Software Deployment AF AMA Bare Amalgamation CON Container Image 13.1 Manually deploy all applications into a single, Bundle an application with its stripped-down shared, and unmanaged flesystem location. Application OS dependencies and run-time environment Application Applic ReproductionUnauthorized Prohibited. Ralf All Rights S. Engelschall <http://engelschall.com>, Reserved. © 2018-2019 Dr. 1.0.4 (2019-09-15), Copyright Version Graphical Illustration: Ralf S. Engelschall Dr. 2018-2019 by 1.0.4 (2019-10-01), Authored Version Intellectual Content: Dependencies are resolved manually. into a container image and deploy and Applic ation OS (guest, user-land) Examples: Windows Fonts, Unix 1990th /usr/ Applic ation manage this through a container runtime. local. ation Application Examples: Docker, Windows Portable Apps. Container Image Pro: simple deployment Amalgamation Pro: independent, simple deployment Container Run-Time Con: incompatibilities, hard uninstallation Con: less variant possibilities, no depend. HEA Unmanaged Heap STK Package/Container Stack München (TUM) Universität Science lecture contexts in Computer only. reproduction for Technische Licensed to Manually deploy all applications into Establish an application out of multiple Application multiple, distinct, and unmanaged flesystem Managed Packages. Examples: OpenPKG locations. Dependencies are resolved Applic Applic Applic Stack, Docker Compose. Package/ Package/ manually. Examples: macOS *.app, OpenPKG ation ation ation Container Container LSYNC. Heap Heap Heap Pro: independent, fexible Stack Pro: simple deployment, easy uninstallation Con: overhead Con: no repair mechanism Package/Container Manager INS Managed Heap IMG Virtual Machine Image Let individual installers deploy applications Bundle an application with its full OS into multiple, distinct, and managed dependencies and run-time environment Application flesystem locations. Dependencies are Applic Applic Applic into a virtual machine image and deploy and OS (guest) manually resolved or bundled. Examples: ation ation ation execute this as a virtual machine. Examples: Virtual Machine Image macOS *.pkg, Window MSI, InnoSetup. Heap Heap Heap VirtualBox, VMWare, HyperV, Parallels, QEMU. Pro: easy uninstallation, repairable Installer Installer Installer Pro: all-in-one, independent Virtual Machine Con: requires installer, diversity, no depend. Con: overhead, sealed, unfexible PKG Managed Package APP Solution Appliance Let a central package manager deploy all Bundle an application with its full OS applications into a single, shared, and Applic Applic Applic dependencies, run-time environment and Software Application managed flesystem location. Dependencies ation ation underlying hardware. Examples: AVM Fritz! ation OS are automatically resolved. Examples: DPKG/ Box, SAP HANA. APT, OpenPKG RPM, FreeBSD pkg, MacPorts. Package Package Package Pro: all-in-one, independent Hardware Pro: easy uninstall., repairable, dependencies Package Manager Con: expensive, sealed, unfexible Solution Appliance Con: requires package manager Cloud Computing Resources AF 13.2 ON-DEMAND MULTI-TENANCY Public Cloud Provider-Hosted Unauthorized ReproductionUnauthorized Prohibited. Ralf All Rights S. Engelschall <http://engelschall.com>, Reserved. © 2017-2019 Dr. 1.2.1 (2019-10-01), Copyright Version Graphical Illustration: Ralf S. Engelschall Dr. 2017-2019 by 1.1.5 (2019-09-15), Authored Version Intellectual Content: SELF-SERVICE MEASURED SERVICE Community Cloud On-Premises outside-inside relationship outside-inside relationship logically / chronologically related / chronologically logically logically / chronologically related / chronologically logically Licensed to Technische Universität München (TUM) Universität Science lecture contexts in Computer only. reproduction for Technische Licensed to AUTOMATABLE ELASTICITY Private Cloud NETWORK ACCESS PAY-PER-USE Hybrid Cloud Cloud Characteristics Cloud Scope Cloud Location Service Application Service Mesh Service Events technical layers technical Application Runtime aka “Serverless Tools & Libraries Computing” Container Runtime Operating System SaaS FaaS PaaS CaaS IaaS Computer Software Function Platform Container Infrastructure Network as a Service as a Service as a Service as a Service as a Service Duration: Duration: Duration: User Session Function Call Continuously Cloud Approaches Cloud-Native Architecture AF Systems of Engagement Users Systems of Record Developers 13.3 Standard Cluster Setup (5+1+N Machines): M G I T P C D ReproductionUnauthorized Prohibited. Ralf All Rights S. Engelschall <http://engelschall.com>, Reserved. © 2016-2019 Dr. 1.2.3 (2019-06-27), Copyright Version Graphical Illustration: Ralf S. Engelschall Dr. 2016-2019 by 1.2.3 (2019-06-27), Authored Version Intellectual Content: Management [M] Gateway [G] Integration [I] Delivery [D] M G I T P C Name Caching API Authentication Enterprise Version Resolution Proxy Gateway & Authorization Integration Control M G I T P C (BIND) (Squid) (GoBetween+Traefk) (Dex + SPIRE + Opa) (WSO2 ESB) (Gitea + Git)