Schița de curs

Software Engineering 5 zile

Ziua 1: Proiect Management

  • Proiect versus management de linie și întreținere și suport
  • Definirea proiectului și formularele de proiect
  • Management – reguli generale și management de proiect
  • Management stiluri
  • Ce este special pentru proiectele IT?
  • Procesul de bază al proiectului
  • Proces de proiect iterativ, incremental, cascadă, agil și lean
  • Fazele proiectului
  • Roluri de proiect
  • Documentația proiectului și alte artefacte
  • Factori soft și peopleware
  • PRINCE 2, PMBOK, PMI, IPMA și alte standarde de proiect

Ziua 2: Business Analiză și Requirements Engineering Fundamente

  • Definirea obiectivelor de afaceri
  • Business analiză, managementul proceselor de afaceri, îmbunătățirea proceselor de afaceri
  • Granița dintre afaceri și analiza sistemului
  • Părțile interesate ale sistemului, utilizatorii sistemului, contextul sistemului și limitele sistemului
  • De ce sunt necesare cerințe?
  • Ceea ce ne cere inginerie
  • Granița dintre ingineria cerințelor și designul arhitectural
  • Unde este adesea ascunsă ingineria cerințelor?
  • Ingineria cerințelor în dezvoltare iterativă, lean și agilă și în integrare continuă – FDD, DDD, BDD, TDD
  • Procesul de inginerie al cerințelor de bază, roluri și artefacte
  • Standarde și certificări: BABOK, ISO/IEEE 29148, IREB, BCS, IIBA

Ziua 3: Fundamentele arhitecturii și dezvoltării

  • Programming limbaje – paradigme structurale și orientate pe obiecte
  • Dezvoltare orientată pe obiecte – cât de mult este istoria, cât de mult este viitorul
  • Modularitatea, portabilitatea, mentenabilitatea și scalabilitatea arhitecturilor
  • Definirea și tipul arhitecturii software
  • Arhitectura întreprinderii și arhitectura sistemului
  • Programming stiluri
  • Programming medii
  • Programming greșeli și cum să le evitați și să le preveniți
  • Modelarea arhitecturii și componentelor
  • SOA, Web Services și micro-servicii
  • Construire automată și integrare continuă
  • Cât de mult design arhitectural există într-un proiect?
  • Programare extremă, TDD și re-factoring

Ziua 4: Fundamentele privind asigurarea calității și testarea

  • Calitatea produsului: ce este? ISO 25010, FURPS etc.
  • Calitatea produsului, experiența utilizatorului, modelul Kano, managementul experienței clienților și calitatea integrală
  • Design centrat pe utilizator, personaje și alte moduri de a face calitatea individuală
  • Calitate suficientă
  • Asigurarea calității și controlul calității
  • Strategii de risc în controlul calității
  • Componentele asigurării calității: cerințe, controlul procesului, configurarea și managementul schimbărilor, verificarea, validarea, testarea, testarea statică și analiza statică
  • Asigurarea calității bazată pe risc
  • Testare bazată pe risc
  • Dezvoltare bazată pe risc
  • Curba lui Boehm în asigurarea calității și în testare
  • Cele patru școli de testare – care se potrivește nevoilor dvs.?

Ziua 5: Tipuri de procese, maturitate și îmbunătățire a proceselor

  • Evoluția procesului IT: de la Alan Turing la Big Blue până la lean startup
  • Organizare orientată pe proces și proces
  • Istoria proceselor în meșteșuguri și industrii
  • Modelarea proceselor: UML, BPMN și multe altele
  • Managementul proceselor, optimizarea proceselor, reproiectarea proceselor și sistemele de management al proceselor
  • Abordări inovatoare ale proceselor: Deming, Juran, TPS, Kaizen
  • Calitatea (procesului) este gratuită? (Philip Crosby)
  • Nevoia și istoricul îmbunătățirii maturității: CMMI, SPICE și alte scale de maturitate
  • Tipuri speciale de maturitate: TMM, TPI (pentru testare), Requirements Engineering Maturitate (Gorschek)
  • Maturitatea procesului versus maturitatea produsului: vreo corelație? Vreo relație cauzală?
  • Maturitatea procesului versus succesul afacerii: vreo corelație? vreo relatie cauzala?
  • O lecție părăsită: Prevenirea automată a defectelor și următorul salt în Productivity
  • Încercări: TQM, SixSigma, retrospective agile, cadre de proces

Requirements Engineering - 2 zile

Ziua 1: Elicitarea cerințelor, Negocierea, Consolidarea și Management

  • Găsirea cerințelor: ce, când și de către cine
  • Clasificarea părților interesate
  • Părți interesate uitați
  • Definirea contextului sistemului – definirea surselor de cerințe
  • Metode și tehnici de elicitare
  • Prototiparea, personajele și determinarea cerințelor prin testare (explorative și de altă natură)
  • Marketing și elicitarea cerințelor – MDRA („Market-Driven Requirements Engineering”)
  • Cerințe de prioritizare: MoSCoW, Karl Wiegers și alte tehnici (inclusiv MMF agil)
  • Cerințe de rafinare – „specificare agilă prin exemplu”
  • Negocierea cerințelor: tipuri de conflicte, metode de rezolvare a conflictelor
  • Rezolvarea incongruențelor interne între anumite tipuri de cerințe (de exemplu securitate versus ușurință în utilizare)
  • Trasabilitatea cerințelor – de ce și cum
  • Modificări de stare a cerințelor
  • Cerințe CCM, versiuni și linii de bază
  • Vizualizarea produsului și vizualizarea proiectului asupra cerințelor
  • Managementul produselor și managementul cerințelor în proiecte

Ziua 2: Analiza cerințelor, modelare, specificații, verificare și validare

  • Analiza este gândirea și regândirea pe care o faci între elicitare și specificare
  • Procesul de cerințe este întotdeauna iterativ, chiar și în proiectele succesive
  • Descrierea cerințelor în limbaj natural: riscuri și beneficii
  • Modelarea cerințelor: beneficii și costuri
  • Regulile de utilizare a limbajului natural pentru specificarea cerințelor
  • Definirea și gestionarea glosarului cerințelor
  • UML, BPMN și alte notații de modelare formale și semi-formale pentru cerințe
  • Utilizarea modelelor de documente și propoziții pentru descrierea cerințelor
  • Verificarea cerințelor – obiective, niveluri și metode
  • Validare – cu prototipare, revizuiri și inspecții și testare
  • Validarea cerințelor și validarea sistemului

Testare - 2 zile

Ziua 1: Proiectarea testelor, Executarea testelor și testarea exploratorie

  • Design test: după testarea bazată pe risc, alegerea modului optim de utilizare a timpului și a resurselor disponibile
  • Testarea designului „de la infinit până aici” – testarea exhaustivă nu este posibilă
  • Cazuri de testare și scenarii de testare
  • Proiectare de testare la diferite niveluri de testare (de la nivelul de testare la unitate la nivelul sistemului)
  • Proiectare de testare pentru testare statică și dinamică
  • Business proiectare de testare orientată spre tehnică („cutie neagră” și „cutie albă”)
  • Încercarea de a sparge sistemul („testare negativă”) și sprijinirea dezvoltatorilor (testare de acceptare)
  • Design de testare pentru a obține acoperirea testului – diverse măsuri de acoperire a testului
  • Design de testare bazat pe experiență
  • Proiectarea cazurilor de testare din cerințe și modele de sistem
  • Testarea euristicii de proiectare și testarea exploratorie
  • Când să proiectăm cazuri de testare? – abordare tradițională și exploratorie
  • Descrierea cazurilor de testare – cât de multe detalii?
  • Executarea testelor – aspecte psihologice
  • Execuția testului – înregistrare și raportare
  • Proiectarea testelor pentru testarea „nefuncțională”.
  • Design de testare automată și MBT (Testări bazate pe modele)

Ziua 2: Organizarea testelor, Management și automatizare

  • Niveluri de testare (sau faze)
  • Cine face testarea și când? – diverse soluții
  • Medii de testare: cost, administrare, acces, responsabilitate
  • Simulatoare, emulatoare și mediu de testare virtual
  • Testare în scrum agil
  • Organizarea și rolul echipei de testare
  • Procesul de testare
  • Automatizarea testelor – ce poate fi automatizat?
  • Automatizarea execuției testelor – abordări și instrumente
 63 ore

Numărul de participanți


Pret per participant

Mărturii (5)

Upcoming Courses

Categorii înrudite