Thank you for sending your enquiry! One of our team members will contact you shortly.
Thank you for sending your booking! One of our team members will contact you shortly.
Course Outline
QA/CI
- What is QA?
- What is CI?
- The costs associated with software development, refactoring, and fixing errors
- Identifying and understanding the project
- Organizational benefits
DDD
- Software development driven by business requirements and DDD assumptions
- Communication challenges between IT and Business
- Domain Model
Best Practices
- KISS principle and DRY
- Coding standards
- Creating reusable code through OOP and design patterns
- Identifying and reducing cyclomatic complexity
Software Metrics
- Weighted Method per Class
- Response For a Class
- Depth of Inheritance Tree
- Coupling Between Objects
- Lack of Cohesion of Methods
- Number of Children
- Cyclomatic Complexity
- Class Metrics
- Model Metrics
- Metrics for Use
Software Testing
- What, when, and how to test?
- White-box and black-box testing methods
- The role of testing in agile methodologies
- TDD: only a potential increase in project cost?
- Unit testing
- Behavioral tests
- Functional tests
Refactoring
- What is refactoring?
- Technical debt
- Code smells
- Refactoring patterns
Documentation
- The role of documentation in agile methodologies
- What to document?
- Types of documentation
- Documentation and agile methodologies, or: 'Working software over comprehensive documentation'?
- Standard XMI
- Automatic generation of documentation
Tools and Environment for CI
- Tools and environment for Continuous Integration
Agile and CI/QA
- Planning and incremental development
- Embracing change
- Short development stages
- Interdisciplinary teams
- Extreme Programming and Code Review
- Individuals and interactions over processes and tools
Summation
- Discussion
- Questions
- How to begin the implementation process?
Introduction to Testing
- Functional Tests
- Regression Tests
- UAT Tests
- Unit Tests
- Usability Tests
- Non-Functional Tests
- Performance Tests
- Load Tests
- Stress Tests
- Soak Tests
To Test or Not to Test
- Who decides what should be tested?
- The cost of testing irrelevant items
- Calculating ROI (what happens if something fails analysis)
- The role of the Test Manager
The Testing Process
- Testing as a process and strategy
- Identifying testing needs
- Gathering requirements (use cases, user stories)
- Scoping (selecting and prioritizing scenarios)
- Designing tests
- Preparing data
- Preparing the environment
- Creating or recording tests
- Executing the test
- Analysis and reporting
- Conclusions and improvements
- When to say 'stop'?
Product Owner and Tests
- The customer representative and test prioritization
- Prioritizing tests
- Writing effective user stories for UAT
- Acceptance criteria
- Group exercise: defining customer requirements, writing user stories based on those requirements, and creating corresponding tests
28 Hours
Testimonials (1)
Trainer is very knowledgeable on the subject and able to provide real world examples through his experience.