"Vi hjelper deg å nå dine kompetansemål i 2017"


Software Architecture

Kursavgift: kr 13 900 | Varighet: 2 dager

Beskrivelse:

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.


About the instructor: Carl Mäsak
Carl has extensive experience in software development and software architecture, both in active use, blogging, and teaching. He uses a variety of programming languages daily. Carl has worked in the software industry for the last 15 years. His experience spans over a wide range of paradigms and platforms, and he has developed everything from custom web site design and bioinformatics toolkits to grammar engines and compilers. His specialty is to make systems coordinate and systematize large amounts of heterogeneous data - or, more casual, "bringing order out of chaos." He also likes to heal major systems that are in need of an architect.


Forkunnskaper:

This course is aimed at people who are competent software developers, and want to broaden their skills to include system architecture. Previous experience of system development is recommended. Kursmaterial Printed course material included.



Innhold:

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




Bestill kurset her

arrow

Velg kurssted

    arrow

    Velg dato



    kurs merket med * har startgaranti

    arrow

    Mailen er sendt:

    Ditt tips er registrert og sendt!
    Vi håper snarlig å se deg på kurs hos oss!

    Feilmelding:

    OBS! Vi har problemer med å sende ditt tips!

    Vi anbefaler deg å sjekke om du har skrevet inn en gyldig mailadresse.

    Tips sjefen

    Lyst til å delta på dette kurset, men må overbevise sjefen først?

    Glasspaper har laget en tips funksjon, som gjør det enklere for deg å overbevise din sjef om at dette kurset er perfekt for deg.
    Det eneste du trenger å gjøre er å fylle ut kontaktinformasjon, så sender vi relevant informasjon om kurset rett til dine utvalgte kontaktpersoner.
    Bruk gjerne funksjonen til å tipse venner og kollegaer om at dette er et nyttig kurs for dem





    Kontakt oss

    Kursansvarlig

    Henning Solberg

    93 09 01 29

    henning@glasspaper.no


    Glasspaper er kåret til Årets Microsoft Kurspartner 2015 - 2014 - 2013 - 2012 - 2011 - 2010 - 2008!