UOP-CSS422.AJ2
UOP-CSS422: Software Architecture
Self-paced · 1 year access
29 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
Lessons
5 Interactive Lessons · 69 topics01 Principles of Software Architecture and Python Fundamentals 15 topics · 2 LiveLab +
- 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
2 LiveLab in this lesson — see the labs panel →
02 Writing Modifiable and Readable Code and Testability 9 topics · 10 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
10 LiveLab in this lesson — see the labs panel →
03 Performance and Writing Applications that Scale 20 topics · 9 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
9 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
29 LiveLabs- Working with the if Statement
- Accessing Lists
- Documenting the Code
- Understanding the Concept of Cohesion
- 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
- Unit Testing a Module
- Using Test-Driven Development
- Unit Testing Using doctest
- Measuring the Performance of Code Using timeit
- Collecting and Reporting Statistics
- Profiling with cProfile
- Implementing an LRU Cache Dictionary
- Using the Multiprocessing Pool Object
- Creating a Co-operative Multitasking Scheduler Using Simple Python Generators
- Using the asyncio Module
- Using async and await
- Using the concurrent.futures Module
- Serializing an object using code jail
- Making the Code Secure for Input
- Debugging Maximum Subarray Problem
- Generating Random Patient Data Using the schematics Library
- Debugging the Word Searcher Program
- Creating a Log File Using Logger Objects
- Creating a Simple Log File
- Debugging with pdb
Labs run in your browser — nothing to install.
02 / FAQs
Questions before you start
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
- 29 LiveLab included
- Certificate of completion
No credit card required