Failed Architecture – Building medical patient record management

In the last article, we witnessed how a simple task of building a static website can throw some unique challenges. Every application has its own quirks which need special attention and hence an architect must not hesitate to reiterate the solution. An architect must spend rigorous time on investigating the functional aspects of an application. What may sound a brilliant solution for one problem, may not be fit under all circumstances. There was no better era than what we are witnessing now in the architecture space. People are discussing Microservices architecture, Event sourcing, Serverless architecture, Blockchain etc., each trying to solve problems enforced by expectations placed by today’s Problem domain. Choosing an incorrect pattern or architecture style will lead to many problems including rigid systems, unmanageable infrastructures, traceability issues, debugging challenges, upgrade chaos. The list is unending and most of us have already experienced pain at some point in time. With this article, we will raise the expectation bar than the previous problem and look at poor architecture built for Managing Patient Record, Reminder system.
Continue reading

Failed Architecture – Building a static website

There are too many articles, videos sharing experiences about the unending ocean of technologies, each with an opinion about how they built the best in the class software which eventually helped businesses to grow and achieve maximum customer satisfaction. In a quest to understand, what it really takes to build a quality software, I realized my initial experiments were nothing but series of failures. With each experience, I could gain insight about how things can be strengthened and how ignorance can lead to disaster. With the series of “Failed Architecture”, I will touch-base on various requirements and attempt to solve the problems. With each solution, we will also explore its trade-offs and how we can mitigate it with a better approach.

To better understand, let’s start with problem definition

Bob is a commercial artist and he loves to showcase his work to the entire world. He decides to build a simple website which will provide an introduction about him and his art. All the content will be uploaded at the time of building the site and there will be minimal updates afterward. Bob being popular around the world, expects huge traffic flowing to his site. Bob thinks Jim (our architect) is best suited for the job. Bob also says that he really not interested in administering this site, so keep it as simple as possible – no admin stuff.

Continue reading