Schița de curs

QA/CI

  • Ce este QA?
  • Ce este CI?
  • Costurile dezvoltării software, refactoring și corectarea erorilor
  • Identificarea și înțelegerea proiectului
  • Avantajele pentru organizație

DDD

  • Dezvoltarea software bazată pe cerințele afacerii, presupuneri DDD
  • Problemele de comunicare IT-Afaceri
  • Modelul domeniului

Principii optimale

  • Principiul KISS și DRY
  • Standarde de codificare
  • Crearea codului reutilizabil prin OOP și modele de proiectare
  • Identificarea și reducerea complexității ciclotomice

Metrici software

  • Ponderile metodelor per clasă
  • Răspunsul unei clase
  • Adâncimea arborelui de moștenire
  • Cuplarea între obiecte
  • Lipsa coeziunii metodelor
  • Numărul descendenților
  • Complexitatea ciclotomică
  • Metricile clasei
  • Metricile modelului
  • Metricile pentru utilizare

Testarea software

  • Ce, când și cum se testează?
  • Metoda "white-box" și "black box"
  • Rolea testării în metodologiile agile
  • TDD doar un potențial creștere a costului proiectului
  • Testare unitară cu JUnit (Java), PHPUnit (PHP)
  • Teste comportamentale cu JBehave (Java), Behat și Mink (PHP)
  • Teste funcionale

Refactoring

  • Ce este refactoring?
  • Datorie tehnică
  • Smell de cod
  • Patrii de refactoring

Documentare

  • Rolul documentării în metodologiile agile
  • Ce să se documenteze?
  • Tipuri de documentare
  • Documentarea și metodologiile agile, sau puteți spune (Software funcțional vs. documentare extensivă)?
  • Standardul XMI
  • Generarea automată a documentației din Javadoc (Java), ApiGen (PHP)

Ferramentă și mediu CI

  • Ferramente și mediu CI
    • PMD (Java), phpmd (PHP)
    • CPD (Java), phpcpd (PHP)
    • Counter Lines of Code (Java), phploc (PHP)
    • UCDetector (Java), phpdcd (PHP)
    • Jdepend (Java), phpdepend (PHP)
  • Serviciul de integrare continuă Jenkins

Agile și CI/QA

  • Planificarea și dezvoltarea incrementală
  • Asumarea schimbărilor
  • Etape scurte
  • Echipa interdisciplinară
  • Programarea extremă, revizuirea codului
  • Persoanele și interacțiunile în detrimentul proceselor și uneltelelor

Sumeazări

  • Discuție
  • Întrebări
  • Cum începeți procesul de implementare?

Cerințe

Cunoașterea proceselor de dezvoltare software

 14 ore

Numărul de participanți


Pret per participant

Mărturii (5)

Cursuri viitoare

Categorii înrudite