Clean Architecture: Patterns, Practices, and Principles
Randall Nagy NetCom Learning www.netcomlearning.com | info@netcomlearning.com | (888) 563 8266
Š1998-2018 NetCom Learning
Agenda • • • • • • •
Concepts & Terms Focus: Application Layering Architecture Interfaces Testable Interfaces Micro Services? Command Interfaces Requirements for Beginners
www.netcomlearning.com | info@netcomlearning.com | (888) 563 8266
©1998-2018 NetCom Learning
Concepts & Terms
• Architecture Realms • Enterprise / Domain Architecture • Inter-Application Interaction • Overall Application Orchestration • Example: • “Order Inventory” • “Electronic Payment Processing”
• Application / Implementation Architecture • Specific Tools & Applications • Example: • “Papal Invoicing Application” • “AWS Simple Email Service” (SES)
www.netcomlearning.com | info@netcomlearning.com | (888) 563 8266
©1998-2018 NetCom Learning
Focus: Application Layering
• “Top Down” Encapsulation • Architecture Evolution
A C C E S S
Multi-Application “Views”
S E C U R I T Y
Multi-Scenario / Access Controller
Out Application Domain Model Test Objects Application / “Business Objects” Persistence Layer (“Database”)
www.netcomlearning.com | info@netcomlearning.com | (888) 563 8266
D A T A
©1998-2018 NetCom Learning
Architecture Interfaces
• Step 1: Discovery & Documentation • Step 2: Stimulation • Step 3: Simulation • Step 4: Automation
Multi-Application “Views” S E C U R I T Y
www.netcomlearning.com | info@netcomlearning.com | (888) 563 8266
Multi-Scenario / Access Controller Domain Model Test Objects
Application / “Business Objects”
A C C E S S
Persistence Layer (“Database”)
©1998-2018 NetCom Learning
Testable Interfaces
• Step 1: Discovery & Documentation • Focus: Usage Scenarios • • • •
Use Cases Use Case Narratives Regulations, Requirements & BestPractices Actors: “Business / Industry SME”
• Focus: Application Support • • • •
Techniques Formats Tools & APIs Actors: “Technical SME”
www.netcomlearning.com | info@netcomlearning.com | (888) 563 8266
©1998-2018 NetCom Learning
Testable Interfaces
• Step 2: Stimulation • Focus: Testing / OperationalFeasibility • • • •
Audit Trail Security / Logging Resource Reset & Repeatability Actors: “Domain SMEs”
• Step 3: Simulation • Focus: Scenario Identification • • • •
Ramp Up Ramp Down Key Performance Indicators (KPI) Actors: “Testing SMEs” www.netcomlearning.com | info@netcomlearning.com | (888) 563 8266
©1998-2018 NetCom Learning
Testable Interfaces
• Step 4: Automation • Focus: Regression Detection • • • • •
Defect Detection Defect Reporting Defect Remedy Defect Escalation Actors: “Management SMEs”
www.netcomlearning.com | info@netcomlearning.com | (888) 563 8266
©1998-2018 NetCom Learning
Micro Services?
• “Service Oriented Architecture” • Major Assumptions Security & Authorization Access & Availability
Automated ~ or ~ Unautomated
OurApplication Unary / Discreet Service(s)
Service Fulfillment Resource
Anatomic Service Request
www.netcomlearning.com | info@netcomlearning.com | (888) 563 8266
©1998-2018 NetCom Learning
Command Interfaces Stimulation Simulation Auditing Reset & Recovery
• SameAssumptions
Human
Automata
Security & Authorization Access & Availability
Automated ~ or ~ Unautomated
OurApplication Unary / Discreet Service(s)
Service Fulfillment Resource
Anatomic Service Request
www.netcomlearning.com | info@netcomlearning.com | (888) 563 8266
Š1998-2018 NetCom Learning
Video Training
• On-Line Training • “Testing Success” • https://www.udemy.com/testing-success/
www.netcomlearning.com | info@netcomlearning.com | (888) 563 8266
©1998-2018 NetCom Learning
Requirements for Beginners
• Amazon.com • “Python by Requirement” • https://www.amazon.com/Python-1000-RequirementBeginners-Programming/dp/1549794949
www.netcomlearning.com | info@netcomlearning.com | (888) 563 8266
©1998-2018 NetCom Learning
Other On-Line Videos
• General Software Developer Education: • https://www.udemy.com/user/randallnagy2/
www.netcomlearning.com | info@netcomlearning.com | (888) 563 8266
©1998-2018 NetCom Learning
Recorded Webinar Video
To watch the recorded webinar video for live demos, please access the link: https://goo.gl/QJXmKr
www.netcomlearning.com | info@netcomlearning.com | (888) 563 8266
Š1998-2018 NetCom Learning
About NetCom Learning
www.netcomlearning.com | info@netcomlearning.com | (888) 563 8266
Š1998-2018 NetCom Learning
Recommended Courses Courses: » 20480: Programming in HTML5 with JavaScript and CSS3 (Visual Studio 2012) - Class scheduled on Jan 07
» Responsive Web Design with HTML5 and CSS3 - Class scheduled on Jan 14 » Java Programming Introduction » TFS 2015 Developer Fundamentals » 10266: Programming in C# with Microsoft Visual Studio 2010
www.netcomlearning.com | info@netcomlearning.com | (888) 563 8266
©1998-2018 NetCom Learning
CEH: Understanding Ethical Hacking SQL Server 2017: Application Development Best Practices Malware Affecting IoT & Smart Devices: Detection, Prevention, and Removal Delivering Real-time Data with Azure and Power BI Connecting Microsoft Azure Virtual Networks ITIL 4 Foundation: Core Concepts and New Version Updates Autodesk Revit: File Management Techniques for BIM Managers
www.netcomlearning.com | info@netcomlearning.com | (888) 563 8266
Š1998-2018 NetCom Learning
Promotions
The year 2018 is coming to an end, though learning is a continuous process! Build your’s, or team’s, or department’s skills with the best training courses of 2018-19. With a range of Cloud, Security, Networking, Data & AI, Design & Multimedia, Business Application, Application Development and Business Process training at limited-time prices, you can imbibe in-demand skills while making a huge saving on the training cost. Learn More www.netcomlearning.com | info@netcomlearning.com | (888) 563 8266
©1998-2018 NetCom Learning
Follow Us On:
www.netcomlearning.com | info@netcomlearning.com | (888) 563 8266
Š1998-2018 NetCom Learning
www.netcomlearning.com | info@netcomlearning.com | (888) 563 8266
Š1998-2018 NetCom Learning
THANK YOU !!!
www.netcomlearning.com | info@netcomlearning.com | (888) 563 8266
©1998-2018 NetCom Learning