What is System Design? How do you create a System Design?

Systems and processes are the backbones of any business. Especially, in today’s digital world the Information Systems are the spine.  Having robust information systems allows you scalability and raw data (like the customer, order, sales, etc) availability. This is the same data that can be used by business analysts and marketing folks of the organization to give abilities to spot trends, forecasting, and predictive business analysis, understanding customer segmentation and targets the correct set of customers, etc. Today data is the king. It is data that guides and dictates the decisions.  Your business growth and scalability also greatly depend on how nimble and agile you are with your information systems. Having tightly managed Information systems also gives a strong control over your warehouses and order management systems (especially for online businesses). Developing the system is both a science and art. And for the reasons explained above it is best if we take advice and consultation from process consultants for the process of defining our information systems

So, coming to the base question of what is a system design and how do you create a system design?

Suppose you have a retail store. A small retail store. For that, you have one terminal as your point-of-sale system. Business starts to grow and you deploy another system. Ideally bot the systems should be connected so that the databases are the same and hence the data nomenclature is the same across. Business further grows and put another store and also starts an online portal to create growing demands. For all, you start to deploy the same systems and try to keep them connected. Isn’t the same software being deployed everywhere? Is not this redundancy also coupled with the hassle to maintain so many databases and ensuring that there is data atomicity across? This is very prudent information systems designing comes into play. The data flow should be seamless.  The following data flow diagram depicts the same: Every information system has a systems development life cycle. Rome was not built in a day, but was definitely planned to be built that way! The information systems you build up should be in such a way that they can be “scaled up”. This concept is known as scalability. This information system has 3 software components. Responses, requests, and API. When the Retail Point is asking for a service from the server, it is known as “Request”. When the server reverts to the retail point with an answer it is known as “Responses”. The Retail point requests for service to the server via an API (Actionable Programmable Interface). This is done to make it easy to access the server machine code. This method has a few deficiencies though. The entire dependency is on that one server machine. What if there is a power cut? What are the hardware malfunctions? To answer these, was the evolution of cloud services, eg: Amazon Web Services.  Cloud services are nothing but server machines! Yes, you read it right. The difference is that these server machines are given as a “service” to you, which comes with facilities like zero downtime and outages. So the cost of hardware is zero in that case for you(you do not need your server, but you rather pay for that as a service. Since it’s a paid service, the service level agreements ensure that you get the best service. So the data flow diagram now looks like this:   

This model takes care of outages like hardware failure and outages.

Now suppose you have scaled to 50 Retail stores, and 5 warehouses across India. The same cloud service you had opted for, may not be able to handle or process your requests for services. Then what do you do? We have two options. Either you go for a “bigger” machine (that has more power to compute and handle requests) or go for a “more” number of machines. (Increase the count of machines). In this case, the request will land on any machine and be computed. As mentioned before, Scalability is a key attribute of using cloud services. This expansion of a bigger machine – is known as Vertical Scaling and expansion by having a “more” number of machines is known as Horizontal Scaling. Let us have a look at the comparison of both of them : 

Horizontal Scaling

Vertical Scaling

Since there are multiple machines – some form of load balancing will have to be done here. In this case, this will not be needed
In case of a node/machine fails – you still have other machines do the job – hence it is resilient Here since it’s a machine – there is still a chance of failure.
Here the communication is between the machines – hence it is using Network Calls. (Which is slower) While here the communication is between the processors of the same machine – hence it is using inter-processor communication. ( which is faster)
Data is handled – between machines – hence it can be inconsistent Data is in the same machine – and hence it is consistent
This can scale well – as you can keep adding machines Here there is bound to be a hardware limit after a time (there will be limitations in terms of the power of a machine)
So now that we have looked at the comparison of Horizontal Scaling and Vertical Scaling, what is better? The answer is both. They both have pros and cons. So, a long-term solution would be a Hybrid Scaling model – which uses both. Initially use a vertical scaling model, as you grow go with the bigger machines in horizontal scaling (that is club vertical and horizontal = Hybrid Model). This gives you advantages of vertical scaling (like having fast communications, consistent data) and horizontal scaling (like being resilient, scaling)  Thus, you can see that designing and developing an information system for your business will require a lot of technical expertise and can be challenging. Hence it is best to use the advice of an expert like Business Process Xperts. Business Process Xperts is a company that has management consultants. These Management consultants excel in providing business process consultancy in both offline and online domains of business. Business Process Xperts has an expertise in various fields and sectors like Automobile, Chemical, Apparel/Garment, Manufacturing, Retail, Labs, Banking, Hospitality, Food, Pharmaceuticals, Hotel and Service Industry. Business Process Xperts specializes in designing standard operating procedures (SOPs), Business Process Management, Digital Process automation. Designing an information system is like defining a process or a standard operating procedure of workflow, in which Your Retail Coach is a champion. They are exceptional process consultants and SOP Consultants. Especially when you start a new online business, taking assistance to make a strong information system backend that helps you scale business in the future as well as capture relevant data to make business decisions is crucial to protect the investment and gain maximum business advantage. Your Retail Coach has best-in-class management consultants who you can bank on to get these various services and blossom your business.

Author Bio

YRC-rupal

Rupal Agarwal

Chief Strategy Officer
Dr. Rupal’s “Everything is possible” attitude helps achieve the impossible. Dr. Rupal Agarwal has worked with 300+ companies from various sectors, since 2012, to custom-build SOPs, push their limits and improve performance efficiency. Rupal & her team have remarkable success stories of helping companies scale 10X with business process standardization.

Leave a Comment