UOP-CSS422.AJ1

UOP-CSS422: Software Architecture

Self-paced · 1 year access

21 Hands-On LiveLabs

Practice real IT tasks in guided environments.

  • Real environments
  • Auto-graded
  • No installation

01 / Lessons & labs

See exactly what you will learn and practice

Download outline (PDF)

Lessons

5 Interactive Lessons · 69 topics
01 Principles of Software Architecture and Python Fundamentals 15 topics
  • Defining software architecture
  • Characteristics of software architecture
  • Importance of software architecture
  • System versus enterprise architecture
  • Architectural quality attributes
  • Installing Python
  • Running Python
  • Basic syntax
  • Conditional statements and loops
  • Data structures
  • Functions
  • Object-oriented programming
  • Modules and packages
  • File operations
  • Error and exception handling
02 Writing Modifiable and Readable Code and Testability 9 topics · 7 LiveLab
  • What is modifiability?
  • Aspects related to modifiability
  • Understanding readability
  • Fundamentals of modifiability – cohesion and coupling
  • Exploring strategies for modifiability
  • Metrics – tools for static analysis
  • Refactoring code
  • Understanding testability
  • White-box testing principles

7 LiveLab in this lesson — see the labs panel →

03 Performance and Writing Applications that Scale 20 topics · 6 LiveLab
  • What is performance?
  • Software performance engineering
  • Performance testing and measurement tools
  • Performance complexity
  • Measuring performance
  • Profiling
  • Other tools
  • Programming for performance – data structures
  • Scalability and performance
  • Concurrency
  • Thumbnail generator
  • Multithreading – Python and GIL
  • Multithreading versus multiprocessing
  • Pre-emptive versus cooperative multitasking
  • The asyncio module in Python
  • Waiting for a future – async and await
  • Concurrent futures – high-level concurrent processing
  • Scaling for the web
  • Scaling workflows – message queues and task queues
  • Celery – a distributed task queue

6 LiveLab in this lesson — see the labs panel →

04 Security, Design Patterns in Python, and Architectural Patterns 16 topics · 2 LiveLab
  • Information security architecture
  • Secure coding
  • Common security vulnerabilities
  • Is Python secure?
  • Security issues with web applications
  • Strategies for security – Python
  • Secure coding strategies
  • Design patterns – elements
  • Categories of design patterns
  • Patterns in Python – creational
  • Patterns in Python – structural
  • Patterns in Python – behavioral
  • Introducing MVC
  • Event-driven programming
  • Microservice architecture
  • Pipe and Filter architectures

2 LiveLab in this lesson — see the labs panel →

05 Deploying Python Applications and Techniques for Debugging 9 topics · 6 LiveLab
  • Deployability
  • Tiers of software deployment architecture
  • Software deployment in Python
  • Deployment – patterns and best practices
  • Maximum subarray problem
  • Simple debugging tricks and techniques
  • Logging as a debugging technique
  • Debugging tools – using debuggers
  • Advanced debugging – tracing

6 LiveLab in this lesson — see the labs panel →

Hands-On Labs Our edge

21 LiveLabs
  • Finding the McCabe Metric
  • Running a Static Checker
  • Fixing Code Smells by Refactoring the Code
  • Fixing Code Complexity by Refactoring the Code
  • Measuring Code Coverage
  • Using Test-Driven Development
Labs run in your browser — nothing to install.

02 / FAQs

Questions before you start

Contact us ↗

Prepare for UOP-CSS422: Software Architecture

One-time payment. Full access for 1 year. Start with a free trial if you want to look around first.

  • 1 year of full access
  • 21 LiveLab included
  • Certificate of completion
Try Free

No credit card required

scroll to top