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


Starts

Ends


Dates are subject to availability and take place between 09:30 and 16:30.
Open Training Courses require 5+ participants.

Related Courses

Jenkins for .Net Continuous Integration (CI)

  14 Hours

Related Categories