Software Architecture

What is software architecture?

Software architecture is about identifying and defining the building blocks – the software components, and the relationship between those components. Designing large scale, high quality software systems is a mix of art and science. 24/7/365 always-on software is a standard requirement nowadays. Add to that web scale, regulation constraints, privacy, security and multi tenancy support, and the complexity becomes extremely challenging.

Services we provide

  • Analysis, architecture and design workshops
  • comprehensive software architecture classes for developers
  • Support organizations in choosing and implementing the optimal technology path
  • Architecture reviews
  • From Monolith to Micro Services
  • Guidance through project management methodologies


At CodeValue, we have consequently developed a modern and agile method for conducting Software Architecture – a method that puts just the right effort to capture the essence of the system, while leaving the detailed design to be conducted later. We start by capturing the requirements and usually perform a preliminary study involving our business analysis and UX experts. We then conduct an analysis workshop with the information gathered in the preliminary study. During this workshop we understand the problem domain, analyze the main personas and main system workflows and build the new system blueprint. We also handle the complexity and the future system volatility, and use modern approaches such as Micro-Service Architecture, Private and Public Cloud, Containers technologies, DevOps, Crosscutting concerns, and other practices.

We have done analysis, architecture and design for many companies in many different disciplines: Hi-tech and Startups, Line of business applications, Internet of Things solutions, Industrial machines, Finance, Defense Systems, Print, Travel agencies, Insurance, and more.

Alon Fliess - CodeValue Founder & Chief Architect
Alon Fliess

Areas of expertise

  • Software Architecture
  • Software Design
  • Design Patterns
  • Microservices Architecture
  • Rich Client Architecture
  • Web Architecture
  • Azure Cloud Service
  • Amazon Web Services
  • Large Scale Systems
  • Big Data
  • Cost Oriented Architecture
  • Service Oriented Architecture