Course Outline

QA/CI

  • What is QA?
  • What is CI?
  • The costs of software development, refactoring and fix errors
  • Identifying and understanding the project
  • Profit for the organization

DDD

  • Software development based on business requirements, assumptions DDD
  • Problems in communication IT-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

  • Weight Method per Class
  • Response For a Class
  • Depth of Inheritance Tree
  • Coupling Between Objects
  • Lack of Cohesion of Methods
  • Number of Children
  • Cyclomatic complexity
  • Metrics class
  • Model Metrics
  • Metrics for use

Software Testing

  • What, when and how to test?
  • The method of "white-box" and "black box"
  • The role of testing in agile methodologies
  • TDD only a potential increase in the cost of the project
  • Unit testing with JUnit (Java), PHPUnit (PHP)
  • Behavioral tests of JBehave (Java), Behat and Mink (PHP)
  • Functional tests

Refactoring

  • What is refactoring?
  • Debt technology
  • Code smell
  • Refactoring patterns

Documentation

  • The role of documentation in agile methodologies
  • What to document?
  • Types of documentation
  • Documentation and agile methodologies, or you can call (Working software over comprehensive documentation)?
  • Standard XMI
  • Automatic generation of documentation from the Javadoc (Java), ApiGen (PHP)

Tools and Environment CI

  • Tools and Environment CI
    • PMD (Java), phpmd (PHP)
    • CPD (Java), phpcpd (PHP)
    • Lines Of Code Counter (Java), phploc (PHP)
    • UCDetector (Java), phpdcd (PHP)
    • Jdepend (Java), phpdepend (PHP)
  • Jenkins Continuous Integration Server

Agile and CI/QA

  • Planning and incremental development
  • Embracing Change
  • Short stages
  • Interdisciplinary team
  • Extreme Programming, Code Review
  • Individuals and interactions over processes and tools

Summation

  • Discussion
  • Questions
  • How do you begin the process of implementation?

Requirements

Knowledge of software development processes

 14 Hours

Number of participants



Price per participant

Testimonials (3)

Related Courses

SonarQube for DevOps

14 Hours

Argo CD

7 Hours

Advanced Spinnaker

14 Hours

Kubernetes with Spinnaker

14 Hours

Advance Test Automation in Java using Selenium with continuous integration and version control

35 Hours

Continuous Integration for JavaScript

14 Hours

DevOps Practical Implementation and Tools

21 Hours

Docker and Jenkins for DevOps

14 Hours

Jenkins: Continuous Integration for Agile Development

14 Hours

Jenkins 2: Building CI/CD Pipelines

14 Hours

Jenkins Advanced

14 Hours

Jenkins for .Net Continuous Integration (CI)

14 Hours

Jenkins Fundamentals

14 Hours

Continuous Integration with Jenkins and Maven

21 Hours

Building CI/CD Pipelines with Jenkins X

21 Hours

Related Categories

1