Haitham Raik
Bio
I have 20 years of experience in Software development and Software Architecture. In this page, I will share with you topics based on my expertise related to software development and architecture
Stories (14/0)
Consolidated Design Rules and Standards for Great REST API - Part 1
In a previous thread named Consolidated Design Rules and Standards for Great API, we explored the merged list of rules and standards for designing Web APIs which can be applied for REST and non-REST APIs. This thread builds on the previous thread and deeps dive into REST APIs in particular and lists the most common conventions, rules and standards that make REST APIs great and will be grouped by the HTTP methods.
By Haitham Raikabout a year ago in 01
Microservices Power Tools
In the previous article, we have listed more than 75 patterns for Microservices-based architectures combined from three different schools. While building the microservices applications, you will find yourself in situations requiring using one or more of these patterns.
By Haitham Raik2 years ago in 01
Consolidated Design Rules and Standards for Great Web API
In a previous thread named API vs Web service, we have explored how the APIs have evolved through time, generation after generation until we get to the Web API generation. In this thread, we will list and consolidate the most common rules, conventions, and standards for designing Great Web APIs and we will group them into the following categories:
By Haitham Raik2 years ago in 01
Infographic for Software Architecture History
Have you ever wondered what is the history of the software architecture? When was the first use of the architecture acronym in the software? How do microservices benefit from DDD, REST, Containers, etc.? How have architecture documentation and descriptions been evolving over time?
By Haitham Raik2 years ago in 01
Technology Architecture Types and related Architectural Styles
Technology Architecture Origins Architecture, as many other terms in the computing industry, is derived from other domains, and in this case, it is a metaphor derived from the domain of building constructions and became associated with the technology (Technology Architecture) to describe the structure of any piece of technology.
By Haitham Raik2 years ago in 01
Unified Microservices Patterns (UMP)
Most of us remember the beginnings of the visual modeling era in the 90s where a lot of leaders worked individually to develop their own methods. In that era, things were messy as there was no single universal language for modeling notations which affected negatively the communication, documentation and collaboration between the different teams.
By Haitham Raik2 years ago in 01
Main Concepts in Software Architecture
I have always wondered the difference between Module, Subsystem, and Component. As simple as it may seem, this is one of the most challenging questions. Each concept from the above has no single unified definition among the software architecture communities. Each community defines and uses these concepts differently, which makes communications about architecture challenging to comprehend.
By Haitham Raik2 years ago in 01
Books for Great Software Architects — Application Path
In the Overview, we have seen the high-level roadmap and in Part 1, we went through the Fundamentals Path that covered the first steps into the software architecture which is also considered as a pre-requisite for the specialized parts, 2, 3 and 4.
By Haitham Raik2 years ago in 01
Books for Great Software Architects — Integration Path
In the Overview, we have seen the high-level roadmap and in Part 1, we went through the Fundamentals Path that covered the first steps into the software architecture which is also considered as a pre-requisite for the specialized parts, 2, 3 and 4.
By Haitham Raik2 years ago in 01