इसलिए, शायद अनुप्रयोगों के समान भागों को विभिन्न उपयोगकर्ताओं द्वारा विकसित किया जाता है, वे अपने अलग-अलग मॉड्यूल लिखते हैं और इन सभी मॉड्यूल को अंतिम निष्पादन योग्य संस्करण प्राप्त करने के लिए एक साथ संयोजित करने की आवश्यकता होती है।