Inom datavetenskap är systemintegration en sammanslagning av flera applikationer och enheter för att skapa en komplett mjukvaruapplikation. Inom denna integration betraktas varje komponent som en modul till hela applikationen. Ett modulärt system är en datorapplikation som består av komponenter som är integrerade i en större övergripande applikation.
Modulär applikationsutveckling liknar att lägga ett pussel. Varje pusselbit är avgörande för skapandet av slutprodukten. Vanligtvis inkluderar avancerade datorapplikationer ”specialized custom of the shelf”-produkter (COTS) som är integrerade i en företagsapplikation. Varje COTS-produkt har affärsregler utformade för att slutföra en specifik uppgift i applikationen.
Hemdatorsystem inkluderar vanligtvis bildskärmar, skrivare, kamera, tangentbord och mus. Detta är ett exempel på ett modulärt system. Varje apparat har ett specifikt syfte för det övergripande datorsystemet. Dessa enheter kan uppgraderas eller modifieras utan att påverka de andra modulära komponenterna.
Modulär mjukvaruutveckling är en effektiv användning av de bästa mjukvarukomponenterna. Denna process tvingar fram logiska gränser mellan komponenter i en applikation. Dessa komponenter interagerar med hjälp av mjukvaru- eller hårdvarugränssnitt.
Att distribuera datorer är en mjukvarudesignteknik som möjliggör distribution av programvarumoduler över hårdvaruplattformar. Detta modulära system har inbyggd expansionspotential. När efterfrågan ökar kan nya servrar läggas till i den distribuerade arkitekturen utan att kräva mjukvaruförändringar.
En modulär persondator (PC) är en liten datorenhet som har utbytbara komponenter för drift. Den här enheten skapar ett oberoende från standardhårdvarukonfigurationer som finns i bärbara och stationära datorer. Med skapandet av cloud computing kommer modulära datorer att fortsätta växa i popularitet.
Grid computing är en ingenjörsteknik som använder hårdvaran och processorkraften hos flera datorsystem för att lösa komplexa problem. Gridberäkningsmodellen representerar ett modulärt system. Varje dator inom rutnätet har ansvaret för att lösa ett specifikt problem för den övergripande applikationen.
Det finns flera komplexa problem som kräver modulärt tänkande. Inom datorapplikationer är det viktigt att dela upp problem i hanterbara komponenter. Som ett exempel skulle skapa en datorapplikation för att lösa flera humanitära problem kräva extremt komplexa algoritmer. Genom att skapa separata gränser för varje datormodul blir kodningen, testningen och implementeringen enklare.
Det objektorienterade programmeringsparadigmet (OOP) är ett exempel på modulär mjukvaruutveckling. Ett objekt är en term som används för att beskriva en datorkomponent som består av funktioner, definitioner och specifika gränser. Inom OOP är det viktigt att hålla en objektdefinition begränsad till den data som är relevant för det objektet. Flera objekt kombineras i programvaran för att skapa ett komplett modulsystem.