T20112

Ladda ner som PDF

Software Architecture

How do you avoid making your project a big ball of mud? How do you balance a wide range of design concerns and constraints? How do you map customer requirements to working software? This course provides you with the means and methods to face these challenges.

Audience

This course is aimed at people who are competent software developers, and want to broaden their skills to include system architecture.

Prior knowledge

Experience in system development is recommended.

Language

The course is taught in English (Contact us if you prefer Swedish).

Courseware

Course material in English included.

Informator Training Cloud

Our training portal supports your development throughout the training. The portal saves you time and is designed to give you a more effective learning experience - leading to better results and greater knowledge enforcement after the course. Read more >

Course outline:

DAY 1

The Role of The Architect

  • What the architect does and doesn't do
  • The architect's place in the team
  • Why architecture is hard

Design Approaches

  • TDD
  • BDD
  • DDD: domain models, bounded contexts, ubiquitous language
  • CRUD vs semantic operations
  • Layered architecture
  • CQRS
  • Messages busses and queues

API Design

  • Naming
  • Consistency
  • State (CQS, mutable and immutable designs)
  • Aggregates
  • Invariants

Design Patterns

  • SOLID principles
  • Inversion of Control, Dependency Injection
  • Object Oriented API patterns
  • Higher Order Programming API patterns
  • Extensibility and maintainability

DAY 2

Data Access Architecture

  • CAP, ACID and eventual consistency
  • ORMs: what they are, benefits, pitfalls
  • Data Access Layers and Data Transfer Objects
  • Database-centric vs model-centric design
  • SQL vs noSQL
  • Event sourcing

Service Oriented Architecture

  • Service orientation
  • Interoberability and integration
  • Web services

UI Architecture

  • MVC
  • MVP
  • MVVM
  • Task based UI

Security

  • The economics of security
  • Common vulnerabilities and how to architect against them
  • Web vulnerabilities
  • General security guidelines

Testable Architecture

  • Organizing a test suite
  • Unit tests vs integration tests
  • Testable design: how to architect to make testing easy

Scalable Architecture

  • Vertical vs Horizontal scaling
  • Scalability gotchas
  • Separated... Läs mer

Course outline:

DAY 1

The Role of The Architect

  • What the architect does and doesn't do
  • The architect's place in the team
  • Why architecture is hard

Design Approaches

  • TDD
  • BDD
  • DDD: domain models, bounded contexts, ubiquitous language
  • CRUD vs semantic operations
  • Layered architecture
  • CQRS
  • Messages busses and queues

API Design

  • Naming
  • Consistency
  • State (CQS, mutable and immutable designs)
  • Aggregates
  • Invariants

Design Patterns

  • SOLID principles
  • Inversion of Control, Dependency Injection
  • Object Oriented API patterns
  • Higher Order Programming API patterns
  • Extensibility and maintainability

DAY 2

Data Access Architecture

  • CAP, ACID and eventual consistency
  • ORMs: what they are, benefits, pitfalls
  • Data Access Layers and Data Transfer Objects
  • Database-centric vs model-centric design
  • SQL vs noSQL
  • Event sourcing

Service Oriented Architecture

  • Service orientation
  • Interoberability and integration
  • Web services

UI Architecture

  • MVC
  • MVP
  • MVVM
  • Task based UI

Security

  • The economics of security
  • Common vulnerabilities and how to architect against them
  • Web vulnerabilities
  • General security guidelines

Testable Architecture

  • Organizing a test suite
  • Unit tests vs integration tests
  • Testable design: how to architect to make testing easy

Scalable Architecture

  • Vertical vs Horizontal scaling
  • Scalability gotchas
  • Separated read/write architectures
  • Caching
  • Session state management
"Bra kurs med många bra tips på olika verktyg etc. Även tips på olika böcker om man vill fördjupa sig." 
/ en nöjd deltagare 1/4-2016
Citat från tidigare deltagare
"Bra och lärarok kurs. Kursledaren hade mycket kunskap på området med många bra och relevanta exempal på tillämpningar." 
/ en nöjd deltagare 26/11-2015
Citat från tidigare deltagare
"Mycket engagerad och kunnig. Många intressanta sidospår och fångar upp kommentarer från oss elever." 
/ en nöjd deltagare 15/10-2015
Citat från tidigare deltagare
"Mycket bra kurs!" 
/ en nöjd deltagare 3/9-2015
Citat från tidigare deltagare
"Läraren hade mycket bra kunskaper i den senaste tekniken på alla områden vi diskuterade, kunde ge många bra tips på verktyg och metoder." 
/ en nöjd deltagare 3/9-2015
Citat från tidigare deltagare

 

Utbildningen levereras i samarbete med

Kurs-ID: T20112
Längd: 2 dagar
Pris exkl moms: 20 450 kr

Frågor om kursen?

Har du frågor om kursens innehåll, leveransdatum/ort eller behöver en företagsanpassad variant? Fyll i formuläret nedan!


Kan betalas med:
TRAINING CARD

Ort och datum

Stockholm
14 dec-15 dec GO!
Boka nu!
13 feb-14 feb
Boka nu!
6 apr-7 apr
Boka nu!
25 maj-26 maj
Boka nu!
Göteborg
14 dec-15 dec R
Boka nu!
13 feb-14 feb R
Boka nu!
6 apr-7 apr R
Boka nu!
25 maj-26 maj R
Boka nu!
Malmö
14 dec-15 dec R
Boka nu!
13 feb-14 feb R
Boka nu!
6 apr-7 apr R
Boka nu!
25 maj-26 maj R
Boka nu!
Cloud Access
i Läs mer

Delta på kursen från ditt hem, jobb eller annan plats.

14 dec-15 dec
Boka nu!
13 feb-14 feb
Boka nu!
6 apr-7 apr
Boka nu!
25 maj-26 maj
Boka nu!

Tipsa