Reuse code promises quicker and more efficient development which ultimately lowers project cost and reduces time to market while improving software quality. In these modules, you'll learn best practices in using, creating, finding, and distributing reuse code.
- Why build out modular reusable content?
- Defining a Reuse Strategy
- Identifying types of reuse
- Identifying design principles for reuse
- Using LabVIEW to write reusable code
- How OOP Enables Reuse
- Templatize your work!
- Distributing/sharing reusable code
- Selecting packaging tools
- Defining a maintenance strategy
Code testing and analysis is important because it helps you improve the overall quality of your code which results in reduced development and integration time. In these modules, you will learn about the types of code analysis, testing, and review. You will also learn when to analyze code, and how to analyze code..
- Overview of code testing and importance of peer reviews
- How to do Design Reviews
- How to do Code Reviews
- How to do Static Code Analysis
- How to do Dynamic Code Analysis
- How to do Unit Code Testing
- Considerations for testing OO Code
- Introduction to Test Driven Design (TDD)
- Summary of when to do which kind of testing
Source Code Control
Code management is an essential practice for efficient test software development. Many companies are now moving from current systems to Git. This learning path will cover many aspects of Git, including workflows, hosting, and the ecosystem. Lessons also include the nuances of using Git with LabVIEW.
- Source Code Control Basics
- Learn Git Fundamentals
- Using Git with LabVIEW
- Using Git Tools
- Git Workflows and Repositories
- Doing Diffing and Merging
- Scaling Up Git
- Choosing a Hosting Option for Source Code Control
||This lesson covers continuous integration and how to implement a continuous integration process.
- Introduction to Continuous Integration
- Adding Automated Testing to Continuous Integration
- Calling LabVIEW from the Command-Line Interface
- The Continuous Integration Process Using Jenkins
- The Continuous Integration Process Using GitLab
- The Continuous Integration Process Using Azure DevOps
- Continuous Integration Builds and Outputs
- Considerations for implementing a Continuous Integration Process
||This lesson reviews the fundamentals of requirements gathering and managing those requirements efficiently.
- Writing Good Requirements
- Gathering Requirements
- Managing Requirements and Their Changes
- Choosing a Requirements management Tool
- Requirements Traceability
This learning path covers all aspects of project management with an accent on Agile project management technique.
- Introduction to Project Planning
- Understanding and Applying Agile Concepts
- People in a Project
- Defining and Managing Project Risk
- Agile-like Planning and Estimating
- Setting Up a Project
- Executing on the Project
- Issue Tracking
- Managing the End of a Project