Software Architecture Course

General Overview

Tikal's training courses are aimed at software professionals that need to boost their knowledge and performance capabilities in advanced AD&D subjects. These courses are targeted at operational issues and give extensive yet down to earth methods and routines to achieve maximum performance.

Course Description

In this course, we will be introducing you to what Software Architecture is, what Software Architects do, and what kinds of things they produce. The course is intended to provide knowledge, frameworks and tools to “senior developers” striving to become architects over time.

In addition, the course provides experienced architects skills and knowledge, that enable them to prepare, present, and explain their architectures to diverse stakeholders, interested in understanding and evaluating their architecture’s qualities.

The course will be divided to 3 parts

Part 1 : Introduction 

The first part of the course is an introduction, based on “Nick Rozanski and Eoin Woods” methodology who wrote the book “Software Systems Architecture”, and explain how to work with Stakeholders Using Viewpoints and Perspectives. 

Part 2 : Architecture In Action

Orientation, and provide a few interesting and varioussoftware architecture examples for both Tikal's customers products and some general successful/popular products.

Part 3 : Popular SW architecture methodologies

Used in the industrial today, which may enrich students' architecture toolbox and knowledge.
 
At the end of the course students will develop architecture description presentations for product/ project they choose, and present it to other participants of the course.

Syllabus

1. Software Architecture Introduction

1. Architecture Description
2. Patterns & Styles
3. Choose a workshop project
2. Case Studies
1. Gilat
1. Architecture Description
1. Viewpoints – Context, Functional, Development
2. Perspectives – Evolution
2. Patterns & Styles
1. Client-Server model (n-tier, db-centric)
2. LinkedIn
1. Architecture Description
1. Viewpoints – Context, Information, Deployment
2. Perspectives – Availability, Resilience
2. Patterns & Styles
1. Event Driven Architecture
2. MVC
3. Netflix
1. Architecture Description
1. Viewpoints – Context, Concurrency, Operational
2. Perspectives – “Others”(Geo-location, I18N, accessibility)
2. Patterns & Styles
1. BigData
2. Cloud-Computing
4. eBay
1. Architecture Description
1. Viewpoints – Context, Information, Development
2. Perspectives – Security
2. Patterns & Styles
1. SOA
2. REST
3. ESB
5. Twitter
1. Architecture Description
1. Viewpoints – Context, Information, Deployment
2. Perspectives – Performance&Scalability, Usability
2. Patterns & Styles
1. NoSQL – Distributed Cache etc
2. UI/UX concepts
3. Industrial Methodologies
1. Lean Architecture
1. Lean Development
2. Lean Startup/Project
2. Agile
1. Scrum
2. Kanban
3. Soft Skills
4. UI/UX Concepts
4. Workshop