Use Cases for Business Analysis: Virtual In-House Training The use case is a method for documenting the interactions between the user of a system and the system itself. Use cases have been in the software development lexicon for over twenty years, ever since it was introduced by Ivar Jacobson in the late 1980s. They were originally intended as aids to software design in object-oriented approaches. However, the method is now used throughout the Solution Development Life Cycle from elicitation through to specifying test cases, and is even applied to software development that is not object oriented. This course identifies how business analysts can apply use cases to the processes of defining the problem domain through elicitation, analyzing the problem, defining the solution, and confirming the validity and usability of the solution. What you will Learn You'll learn how to: Apply the use case method to define the problem domain and discover the conditions that need improvement in a business process Employ use cases in the analysis of requirements and information to create a solution to the business problem Translate use cases into requirements Getting Started Introductions Course structure Course goals and objectives Foundation Concepts Overview of use case modeling What is a use case model? The 'how and why' of use cases When to perform use case modeling Where use cases fit into the solution life cycle Use cases in the problem domain Use cases in the solution domain Use case strengths and weaknesses Use case variations Use case driven development Use case lexicon Use cases Actors and roles Associations Goals Boundaries Use cases though the life cycle Use cases in the life cycle Managing requirements with use cases The life cycle is use case driven Elicitation with Use Cases Overview of the basic mechanics and vocabulary of use cases Apply methods of use case elicitation to define the problem domain, or 'as is' process Use case diagrams Why diagram? Partitioning the domain Use case diagramming guidelines How to employ use case diagrams in elicitation Guidelines for use case elicitation sessions Eliciting the problem domain Use case descriptions Use case generic description template Alternative templates Elements Pre and post conditions Main Success Scenario The conversation Alternate paths Exception paths Writing good use case descriptions Eliciting the detailed workflow with use case descriptions Additional information about use cases Analyzing Requirements with Use Cases Use case analysis on existing requirements Confirming and validating requirements with use cases Confirming and validating information with use cases Defining the actors and use cases in a set of requirements Creating the scenarios Essential (requirements) use case Use case level of detail Use Case Analysis Techniques Generalization and Specialization When to use generalization or specialization Generalization and specialization of actors Generalization and specialization of use cases Examples Associating generalizations Subtleties and guidelines Use Case Extensions The <> association The <> association Applying the extensions Incorporating extension points into use case descriptions Why use these extensions? Extensions or separate use cases Guidelines for extensions Applying use case extensions Patterns and anomalies o Redundant actors Linking hierarchies Granularity issues Non-user interface use cases Quality considerations Use case modeling errors to avoid Evaluating use case descriptions Use case quality checklist Relationship between Use Cases and Business Requirements Creating a Requirements Specification from Use Cases Flowing the conversation into requirements Mapping to functional specifications Adding non-functional requirements Relating use cases to other artifacts Wire diagrams and user interface specifications Tying use cases to test cases and scenarios Project plans and project schedules Relationship between Use Cases and Functional Specifications System use cases Reviewing business use cases Balancing use cases Use case realizations Expanding and explaining complexity Activity diagrams State Machine diagrams Sequence diagrams Activity Diagrams Applying what we know Extension points Use case chaining Identifying decision points Use Case Good Practices The documentation trail for use cases Use case re-use Use case checklist Summary What did we learn, and how can we implement this in our work environment?
Vectorworks Evening Course face to face One to one
ZigBee training course description A hands on course covering the entire ZigBee protocol stack. ZigBee operation, primitives and frame formats are covered in detail using software tools to test and analyse ZigBee commands and demonstrate how these affect the 802.15.4 MAC. Analysers are used to decode packet formats. What will you learn Describe the ZigBee architecture and applications. Explain the workings of ZigBee protocol stack including the 802.15.4, NWK, APS and ZDO sub layers. Describe in detail the ZigBee primitives and how they are used to pass data; make networks; join networks and repair networks. Secure ZigBee networks. ZigBee training course details Who will benefit: Technical staff requiring grounding in ZigBee including application engineers. Prerequisites: RF fundamentals. Duration 2 days ZigBee training course contents Wireless data overview What is 802.15.4 and ZigBee? WLAN, WPAN, Bluetooth vs. ZigBee. Markets. Applications and architecture. ZigBee demonstration. ZigBee Standards and technology The 7-layer model, IEEE WPAN standards overview, 802.15.4 & ZigBee, ZigBee alliance. ZigBee Protocol stack The ZigBee 5 layer model, The network (NWK) sub layer, Application support sub layer (APS), the ZigBee Device Object (ZDO). 802.15.4 Radio Frequencies, modulation, power, DSSS, BPSK/ O-QPSK, channels, symbols, chips and bit rate. 802.15.4 PHY PHY data transfer primitives. The PHY packet. PHY PIB management. 802.15.4 MAC layer The MAC layer overview, CSMA/CA, addresses, frame types, super frames, MAC layer: Data, Data control, Scan and join, PAN maintenance, MAC PIB. Hands on 802.15.4 frame analysis. ZigBee Topologies Point to point topology, star topology, cluster tree, wired integration. Hands on Building a ZigBee network. ZigBee frame formats General frame format, data frames, command frames. Hands on Analysing ZigBee frames. ZigBee NWK NWK data primitives: Request. Confirm. Indication. NWK management primitives: Network discovery, network formation. Permit joining. Start router. Join. Direct join. Leave. Reset. Sync. NWK database management. Hands on NWK analysis ZigBee APS Address mapping, matching devices, binding devices, binding tables. Hands on APS analysis. ZigBee ZDO Device roles, binding requests, initiating and responding, device discovery, service discovery, network management. ZDO Endpoint 0. ZigBee Security Security issues, security modes, MAC security, NWK security, APS security. Applications Writing ZigBee applications, application profiles, End points, Endpoint addressing, clusters of attributes, broadcasts. Hands on Sample ZigBee application.
Who is this course for? AutoCAD 2D Basics to Advanced Course. Click here for more info: Website This course enables you to learn the skills in the CAD. Upon completion, you'll proficiently edit and create 2D drawings, utilizing advanced features like Paperspace and Block Attributes for increased efficiency. 1-on-1 sessions. Our booking are available Mon to Sat, 9 am to 7 pm Duration: 16 hours, which you can flexibly distribute across as many days you want. Approach: In-person or live online training. AutoCAD Basics to Advanced Level Training Course Outline. Fundamental Concepts: Introduction to AutoCAD interface, commands, and tools. Managing drawings and creating basic shapes. Basic modification techniques like erase, move, rotate, and scale. Intermediate Techniques: Working with layers and adjusting properties. Creating and modifying text and dimensions. Introduction to blocks and attributes. Advanced Topics: Advanced object modification techniques such as fillet, chamfer, trim, and extend. Utilizing grips for object manipulation. Creating and editing polylines and splines. Course Highlights: Engaging exercises and projects for skill reinforcement. Access to Q&A and troubleshooting support. Proficiency in AutoCAD 2D for basic to intermediate drawings. Topics Covered: Drawing techniques encompassing various shapes. Inquiry tools for measurement and selection. Modification commands for object manipulation. Layer management and attributes. Annotation and dimensioning. Hatching objects and working with reusable content. Layouts and viewports for better organization. Annotating drawings effectively. Polylines, splines, ellipses, and tables. Plotting drawings and creating templates. Multi-lines, revision clouds, and wipeout objects. Working with point objects and calculations. Creating and managing templates. Annotation scaling and text manipulation. Dimensioning and geometric annotations. Dynamic blocks and attributes. Layer management best practices. Introduction to sheet sets and their properties. Utilizing fields and attributes in sheet sets. Working with tables, table styles, and advanced tables. Exporting and importing tables. Creating tables linked to external data. Download AutoCAD Software https://www.autodesk.co.uk What Will I Gain from this Course? Throughout this course, you will develop expertise in the following areas: CAD layering techniques Text and dimension style manipulation Proficiency in creating and editing 2D drawings Mastery of attributed block creation and editing Efficient utilization of Paperspace Dynamic input and grips utilization This comprehensive training program not only provides you with an advanced comprehension of 2D drawing in AutoCAD but also offers a fundamental introduction to 3D drawing concepts. Upon completion of this course, you will possess the skills to: Swiftly generate schematics, parts, and assemblies Enhance efficiency by reusing content and customizing tool palettes Save time through the use of dynamic blocks, which can be edited in place Gain full control over your viewports and layouts Is This Course Right for Me? This advanced AutoCAD 2D training assumes that you are already a proficient AutoCAD user. We recommend prior attendance of our Introduction and/or Intermediate AutoCAD 2D training courses or practical experience in the topics covered in those courses. If you have any doubts about the suitability of this course for your skill level, please feel free to contact us, and we will be happy to assist you. In this course, you will gain proficiency in utilizing essential features of AutoCAD (Computer Aided Design) to enhance the efficiency of producing and editing 2D CAD drawings. You will acquire expertise in layering, text and dimension styles, the creation and modification of attributed blocks, and effective use of Paperspace. Additionally, you will master dynamic inputs, grips, and the art of renaming and purging. This flexible course grants you 16 hours to complete, typically spanning 4 to 5 days. It serves as a valuable continuation of skills acquired from the CAD: AutoCAD 2D Essentials course or as an opportunity to expand your existing AutoCAD knowledge. Upon course completion, you will possess the ability to efficiently create and modify 2D drawings, leveraging advanced features like Paperspace and Block Attributes. Your instruction will be provided by an Autodesk-certified instructor with industry experience." 1. All-encompassing course designed to accommodate both novices and advanced users. 2. Addresses essential functions and advanced methodologies in AutoCAD. 3. Enhances proficiency in creating precise and professional 2D drawings. Interactive instruction guided by seasoned educators. Benefit from on-demand access to lesson recordings for convenient revision. Receive ongoing support through lifetime email and phone assistance. Post-course Assistance: Enjoy continuous support via lifetime email and phone assistance. Should you encounter any challenges or queries after the course, we are readily available to address your concerns via email or phone calls."
Duration 4 Days 24 CPD hours This course is intended for The audience for this course is data professionals managing data and databases who want to learn about administering the data platform technologies that are available on Microsoft Azure. This course is also valuable for data architects and application developers who need to understand what technologies are available for the data platform with Azure and how to work with those technologies through applications. This course provides students with the knowledge and skills to administer a SQL Server database infrastructure for cloud, on-premises and hybrid relational databases and who work with the Microsoft PaaS relational database offerings. Additionally, it will be of use to individuals who develop applications that deliver content from SQL-based relational databases. Prerequisites In addition to their professional experience, students who take this training should have technical knowledge equivalent to the following courses: AZ-900T00 Microsoft Azure Fundamentals DP-900T00 Microsoft Azure Data Fundamentals 1 - Prepare to maintain SQL databases on Azure Describe Microsoft Intelligent Data Platform roles Understand SQL Server in an Azure virtual machine Design Azure SQL Database for cloud-native applications Explore Azure SQL Database Managed Instance 2 - Deploy IaaS solutions with Azure SQL Explain IaaS options to deploy SQL Server in Azure Understand hybrid scenarios Explore performance and security Explain high availability and disaster recovery options 3 - Deploy PaaS solutions with Azure SQL Explain PaaS options for deploying SQL Server in Azure Explore single SQL database Deploy SQL database elastic pool Understand SQL database hyperscale Examine SQL managed instance Describe SQL Edge 4 - Evaluate strategies for migrating to Azure SQL Understand compatibility level Understand Azure preview features Describe Azure database migration options 5 - Migrate SQL workloads to Azure SQL databases Choose the right SQL Server Instance option in Azure Migrate SQL Server to Azure SQL Database offline Migrate SQL Server to Azure SQL Database online Load and move data to Azure SQL Database 6 - Migrate SQL workloads to Azure Managed Instances Evaluate migration scenarios to SQL Database Managed Instance Migrate to SQL Database Managed Instance Load and Move data to SQL Database Managed Instance 7 - Configure database authentication and authorization Describe Active Directory and Azure Active Directory Describe authentication and identities Describe Security Principals Describe database and object permissions Identify authentication and authorization failures 8 - Protect data in-transit and at rest Explore Transparent Data Encryption Configure server and database firewall rules Explain object encryption and secure enclaves Enable encrypted connections Describe SQL injection Understand Azure Key Vault 9 - Implement compliance controls for sensitive data Explore data classification Explore server and database audit Implement Dynamic Data Masking Implement Row Level security Understand Microsoft Defender for SQL Explore Azure SQL Database Ledger Implement Azure Purview 10 - Describe performance monitoring Describe performance monitoring tools Describe critical performance metrics Establish baseline metrics Explore extended events Describe Azure SQL Insights Explore Query Performance Insight 11 - Configure SQL Server resources for optimal performance Explain how to optimize Azure storage for SQL Server virtual machines Describe virtual machine resizing Optimize database storage Control SQL Server resources 12 - Configure databases for optimal performance Explore database maintenance checks Describe database scoped configuration options Describe automatic tuning Describe intelligent query processing 13 - Explore query performance optimization Understand query plans Explain estimated and actual query plans Describe dynamic management views and functions Explore Query Store Identify problematic query plans Describe blocking and locking 14 - Evaluate performance improvements Describe wait statistics Tune and maintain indexes Understand query hints 15 - Explore performance-based design Describe normalization Choose appropriate data types Design indexes 16 - Automate deployment of database resources Describe deployment models in Azure Automate deployment by using Azure Resource Manager templates and Bicep Automate deployment by using PowerShell Automate deployment by using Azure CLI 17 - Create and manage SQL Agent jobs Create a SQL Server maintenance plan Describe task status notifications 18 - Manage Azure PaaS tasks using automation Explore Elastic jobs Understand Azure Automation Build an automation runbook Automate database workflows by using Logic Apps Monitor automated tasks 19 - Describe high availability and disaster recovery strategies Describe recovery time objective and recovery point objective Explore high availability and disaster recovery options Describe Azure high availability and disaster recovery features for Azure Virtual Machines Describe high availability and disaster recovery options for PaaS deployments Explore an IaaS high availability and disaster recovery solution Describe hybrid solutions 20 - Explore IaaS and PaaS solutions for high availability and disaster recovery Describe failover clusters in Windows Server Configure Always-on availability groups Describe temporal tables in Azure SQL Database Describe active geo-replication for Azure SQL Database Explore auto-failover groups for Azure SQL Database and Azure SQL Managed Instance 21 - Back up and restore databases Back up and restore SQL Server running on Azure virtual machines Back up a SQL Server virtual machine Back up and restore a database using Azure SQL Database Additional course details: Nexus Humans DP-300T00: Administering Microsoft Azure SQL Solutions training program is a workshop that presents an invigorating mix of sessions, lessons, and masterclasses meticulously crafted to propel your learning expedition forward. This immersive bootcamp-style experience boasts interactive lectures, hands-on labs, and collaborative hackathons, all strategically designed to fortify fundamental concepts. Guided by seasoned coaches, each session offers priceless insights and practical skills crucial for honing your expertise. Whether you're stepping into the realm of professional skills or a seasoned professional, this comprehensive course ensures you're equipped with the knowledge and prowess necessary for success. While we feel this is the best course for the DP-300T00: Administering Microsoft Azure SQL Solutions course and one of our Top 10 we encourage you to read the course outline to make sure it is the right content for you. Additionally, private sessions, closed classes or dedicated events are available both live online and at our training centres in Dublin and London, as well as at your offices anywhere in the UK, Ireland or across EMEA.
SDH training course description Our SDH training course is designed for those with a basic knowledge of the principles of telecommunication digital transmission techniques. An overview of the existing transmission hierarchies and their limitations is provided with an introduction to the Synchronous Digital Hierarchy (SDH). The advantages of SDH are explained fully. What will you learn Identify the major limitations of the PDH network. Outline the advantages of using the SDH. Illustrate the various SDH equipment and network topologies. Describe the principles of the SDH multiplexing structure. SDH training course details Who will benefit: Anyone working with SDH. Prerequisites: It should be noted that this course will assume some basic telecommunication transmission knowledge from the delegates attending. This may be accomplished by attending the Introduction to Telecommunications course. Duration 2 days SDH training course contents Introduction to SDH Timing and synchronisation of digital signals, the plesiochronous digital hierarchy (PDH), the synchronous digital hierarchy (SDH), service protection with SDH SDH Multiplexing Techniques The multiplexing principles of SDH, mapping and aligning a 2Mbit/s tributary into a TU-12, aligning the VC-12 in a TU-12, multiplexing TU-12's into a TUG-2, multiplexing TUG-2's into a TUG-3, multiplexing TUG-3's into a VC-4, the VC-4 path overhead, the STM-1 frame, the AU-4 pointer, the STM-1 section overheads, multiplexer section protection, transmission at rates higher than STM-1, concatenation line transmission functions in SDH SONET Multiplexing Techniques Mapping a DS1 tributary into a virtual tributary, aligning the VT-SPE into a VT frame, mapping the VTGs into a STS-1 SPE, the STS-1 synchronous payload envelope, the STS-1 frame SONET network sections and lines transmissions at higher rates than STS-1 SDH Functions and Facilities SDH network topologies, structure of SDH equipment, synchronisation of SDH networks, protection switching in SDH networks, SDH alarm structure, SDH performance monitoring, testing of SDH, equipment and systems, network management and SDH, asynchronous transfer mode (ATM), future services and technologies OSI Telecommunications Network Management Definition of network management, managing telecom equipment, the managed object library, the management information base, the telecommunications management network (TMN), the Q3 protocol.
Complete C# programming training course description This training course teaches developers the programming skills that are required for developers to create Windows applications using the C# language. Students review the basics of C# program structure, language syntax, and implementation details, and then consolidate their knowledge throughout the week as they build an application that incorporates several features of the .NET Framework. What will you learn Use the syntax and features of C#. Create and call methods, catch and handle exceptions, and describe the monitoring requirements of large-scale applications. Implement a typical desktop application. Create class, define and implement interfaces, and create and generic collections. Read and write data to/from files. Build a GUI using XAML. Complete C# programming training course details Who will benefit: Programmers wishing to learn C#. Prerequisites: Developers attending this course should already have gained some limited experience using C# to complete basic programming tasks. Duration 5 days Complete C# programming training course contents Review of C# Syntax Overview of Writing Applications using C#, Datatypes, Operators, and Expressions. C# Programming Language Constructs. Hands on Developing the Class Enrolment Application. Methods, exceptions and monitoring apps Creating and Invoking Methods. Creating Overloaded Methods and Using Optional and Output Parameters. Handling Exceptions. Monitoring Applications. Hands on Extending the Class Enrolment Application Functionality. Developing a graphical application Implementing Structs and Enums. Organizing Data into Collections. Handling Events. Hands on Writing the Grades Prototype Application. Classes and Type-safe collections Creating Classes. Defining and Implementing Interfaces. Implementing Type-safe Collections. Hands on Adding Data Validation and Type-safety to the Grades Application. Class hierarchy using Inheritance Class hierarchies. Extending .NET framework classes. Creating generic types. Hands on Refactoring common functionality into the User Class. Reading and writing local data Reading and Writing Files. Serializing and Deserializing Data. Performing I/O Using Streams. Hands on Generating the Grades Report. Accessing a Database Creating and using entity data models. Querying and updating data by using LINQ. Hands on Retrieving and modifying grade data. Accessing remote data Accessing data across the web and in the cloud. Hands on Modifying grade data in the Cloud. Designing the UI for a graphical applicatione Using XAML to design a User Interface. Binding controls to data. Styling a UI. Hands on Customizing Student Photographs and Styling the Application. Improving performance and responsiveness Implementing Multitasking by using tasks and Lambda Expressions. Performing operations asynchronously. Synchronizing concurrent data access. Hands on Improving the responsiveness and performance of the application. Integrating with unmanaged code Creating and using dynamic objects. Managing the Lifetime of objects and controlling unmanaged resources. Hands on Upgrading the grades report. Creating reusable types and assemblies Examining Object Metadata. Creating and Using Custom Attributes. Generating Managed Code. Versioning, Signing and Deploying Assemblies. Hands on Specifying the Data to Include in the Grades Report. Encrypting and Decrypting Data Implementing Symmetric Encryption. Implementing Asymmetric Encryption. Hands on Encrypting and Decrypting Grades Reports.
Business Process Modeling: In-House Training This course is part of IIL's Business Analysis Certificate Program (BACP), a program designed to help prepare individuals pass the IIBA® Certification exam to become a Certified Business Analysis Professional (CBAP®). Learn more at www.iil.com/bacp A process model is a description of a process in terms of its steps or actions, the data flowing between them and participants in the process, machines, systems, and organizations involved. Modeling is a critical business analysis skill. It applies graphical and text communication techniques to describe the actions, objects, and relationships acted upon in the process and the steps that act upon them. This course teaches the technique of process modeling and ties together the core methods of process, behavior, and data modeling to enable business analysts to fully describe business processes in levels of detail from multiple perspectives. What you will Learn Upon completion, participants will be able to: Identify business processes and their components Work with UML diagrams Use process modeling in business diagramming Diagram and model business processes Foundation Concepts The role of the business analyst The IIBA® BABOK® Knowledge Areas Business Process Modeling (BPM) and the business analyst A practical approach to business process modeling The Context for Modeling Business Processes Overview of context for business process modeling Analyzing stakeholder information Modeling best practices Critical inputs for BPM: Business Rules Critical inputs for BPM: Context Diagrams Data Models Overview of data modeling Entity relationship diagrams Object-oriented approach Class diagrams Other data models Process Models - Part I (Non-UML) Overview of process modeling Data flow diagrams Workflow diagrams Flowcharts Process Models - Part II (UML) Overview of UML Process Models UML Activity Diagrams UML Sequence Diagrams Usage Models - Part I (Non-UML) Overview of usage modeling Prototyping options Static prototyping and storyboards Dynamic prototyping User Interface Design and user stories Usage Models - Part II (UML Use Cases) Overview of Use Cases Use Case diagrams Use Case descriptions Use Cases and the product life cycle Integrating the Models Overview of integrating the models General analysis best practices Specific analysis techniques summary Best practices for transition to design Summary and Next Steps What did we learn and how can we implement this in our work environments?
Duration 3 Days 18 CPD hours This course is intended for This course is designed for existing Python programmers who have at least one year of Python experience and who want to expand their programming proficiency in Python 3. Overview In this course, you will expand your Python proficiencies. You will: Select an object-oriented programming approach for Python applications. Create object-oriented Python applications. Create a desktop application. Create data-driven applications. Create and secure web service-connected applications. Program Python for data science. Implement unit testing and exception handling. Package an application for distribution. Python© continues to be a popular programming language, perhaps owing to its easy learning curve, small code footprint, and versatility for business, web, and scientific uses. Python is useful for developing custom software tools, applications, web services, and cloud applications. In this course, you'll build upon your basic Python skills, learning more advanced topics such as object-oriented programming patterns, development of graphical user interfaces, data management, creating web service-connected apps, performing data science tasks, unit testing, and creating and installing packages and executable applications. Lesson 1: Selecting an Object-Oriented Programming Approach for Python Applications Topic A: Implement Object-Oriented Design Topic B: Leverage the Benefits of Object-Oriented Programming Lesson 2: Creating Object-Oriented Python Applications Topic A: Create a Class Topic B: Use Built-in Methods Topic C: Implement the Factory Design Pattern Lesson 3: Creating a Desktop Application Topic A: Design a Graphical User Interface (GUI) Topic B: Create Interactive Applications Lesson 4: Creating Data-Driven Applications Topic A: Connect to Data Topic B: Store, Update, and Delete Data in a Database Lesson 5: Creating and Securing a Web Service-Connected App Topic A: Select a Network Application Protocol Topic B: Create a RESTful Web Service Topic C: Create a Web Service Client Topic D: Secure Connected Applications Lesson 6: Programming Python for Data Science Topic A: Clean Data with Python Topic B: Visualize Data with Python Topic C: Perform Linear Regression with Machine Learning Lesson 7: Implementing Unit Testing and Exception Handling Topic A: Handle Exceptions Topic B: Write a Unit Test Topic C: Execute a Unit Test Lesson 8: Packaging an Application for Distribution Topic A: Create and Install a Package Topic B: Generate Alternative Distribution Files
Duration 3 Days 18 CPD hours This course is intended for This course is designed for existing Python programmers who have at least one year of Python experience and who want to expand their programming proficiency in Python 3. Overview In this course, you will expand your Python proficiencies. You will: Select an object-oriented programming approach for Python applications. Create object-oriented Python applications. Create a desktop application. Create data-driven applications. Create and secure web service-connected applications. Program Python for data science. Implement unit testing and exception handling. Package an application for distribution. Python continues to be a popular programming language, perhaps owing to its easy learning curve, small code footprint, and versatility for business, web, and scientific uses. Python is useful for developing custom software tools, applications, web services, and cloud applications. In this course, you'll build upon your basic Python skills, learning more advanced topics such as object-oriented programming patterns, development of graphical user interfaces, data management, creating web service-connected apps, performing data science tasks, unit testing, and creating and installing packages and executable applications. Lesson 1: Selecting an Object-Oriented Programming Approach for Python Applications Topic A: Implement Object-Oriented Design Topic B: Leverage the Benefits of Object-Oriented Programming Lesson 2: Creating Object-Oriented Python Applications Topic A: Create a Class Topic B: Use Built-in Methods Topic C: Implement the Factory Design Pattern Lesson 3: Creating a Desktop Application Topic A: Design a Graphical User Interface (GUI) Topic B: Create Interactive Applications Lesson 4: Creating Data-Driven Applications Topic A: Connect to Data Topic B: Store, Update, and Delete Data in a Database Lesson 5: Creating and Securing a Web Service-Connected App Topic A: Select a Network Application Protocol Topic B: Create a RESTful Web Service Topic C: Create a Web Service Client Topic D: Secure Connected Applications Lesson 6: Programming Python for Data Science Topic A: Clean Data with Python Topic B: Visualize Data with Python Topic C: Perform Linear Regression with Machine Learning Lesson 7: Implementing Unit Testing and Exception Handling Topic A: Handle Exceptions Topic B: Write a Unit Test Topic C: Execute a Unit Test Lesson 8: Packaging an Application for Distribution Topic A: Create and Install a Package Topic B: Generate Alternative Distribution Files