Edocti Training
Software Architecture and Design — De la cerințe la schelet de aplicație
Sesiuni programate
Nu există sesiuni disponibile în acest moment.
Abilități dobândite
Arhitectură de Sistem
Modelare UML & C4
Domain-Driven Design
Principii SOLID
Architecture Decision Records
Forward/Reverse Engineering
Enterprise Architect
Design Patterns (GoF)
Curriculum
Ziua 1 — Cerințe și context de sistem
- Kickoff, obiective și scope; stakeholders și constrângeri
- Elicitarea software requirements (funcționale & nefuncționale) pentru un exemplu connected-cars/IoT
- Trasabilitate: legarea cerințelor de use cases și quality attributes (performance, safety, security, portability)
- Contextul sistemului & granițe; actori principali și sisteme externe
- UML Use Case diagrams în Enterprise Architect; cum scriem narratives bune pentru use case-uri
- Evaluare ușoară riscuri/compromisuri (ATAM-lite) și prototipuri/spikes timpurii
Ziua 1 — De la cerințe la views arhitecturale
- Alegerea views și notației (C4/UML): context, container/component, deployment
- Documentarea deciziilor cu Architecture Decision Records (ADR)
- Quality attribute tactics (availability, performance, modifiability) și maparea lor pe alegeri de design
Ziua 2 — Modelare structurală
- Component diagrams: responsabilități și interfețe; mapare pe echipe
- Deployment diagrams: hardware/OS țintă, procese și rețele; constrângeri pentru embedded/Automotive
- Analiză de clase: clase de bază, agregate și granițe (perspective DDD-lite)
- UML Class diagrams: relații, multiplicități, pachete, layering și reguli de dependență
- Principii de design: SOLID și euristici de coupling/cohesion; refactor pentru granițe clare
Ziua 2 — Modelare comportamentală
- Sequence diagrams pentru scenarii cheie; note de timing și lifelines
- State machine & activity diagrams pentru logică critică și workflow-uri
- Object modeling pentru scenarii concrete; walkthrough pe secvențe
Ziua 3 — Din modele în cod (Forward Engineering)
- Alinierea modelelor cu strategia de implementare; namespaces/pachete și structura modulelor
- Generarea unui schelet minim de aplicație din Enterprise Architect și conectarea componentelor de bază
- Integrare build, logging și configuration; stubs și test seams
- Trasabilitate: legarea claselor/testelor de cerințe și ADR-uri
Ziua 3 — Reverse engineering și review
- Reverse engineering pentru a recupera arhitectura; maparea codului pe diagrame
- Peer review de arhitectură: checklists și risk burndown; întreținerea architecture notebook
- Pașii următori: governance, versionarea modelelor, documentație vie
Capstone — Discuție deschisă & Q&A
- Arhitectura unor proiecte open-source (overview la nivel înalt)
- Focus scurt pe 3–4 GoF patterns care susțin designul (ex.: Builder, Abstract Factory, Decorator, Visitor)
- Wrap-up: plan individual de îmbunătățire
Module opționale
Opțional — accente Automotive
- Puncte de safety & security (awareness ISO 26262/21434) în procesul arhitectural
- Bugete de performanță și constrângeri de scheduling pentru ținte embedded
- Integrare furnizori și contracte de interfață
Structura zilei de curs
- Partea 1: 09:00–10:30
- Pauză: 10:30–10:45
- Partea 2: 10:45–12:15
- Pauză de prânz: 12:15–13:15
- Partea 3: 13:15–15:15
- Pauză: 15:15–15:30
- Partea 4: 15:30–17:30