So one complexity big part of complexity come from the change of requirements, the different complexity comes from change from technology, yours software works on system, works on hardware, works on network components, works on different operating systems, third party protocols and so on.
इसलिए जटिलता का एक बड़ा हिस्सा परिवर्तन से आता है, आवश्यकताओं, प्रौद्योगिकी से परिवर्तन से अलग जटिलता आती है, आपका सॉफ्टवेयर किस सिस्टम  पर काम करता है, हार्डवेयर पर काम करता है, नेटवर्क पर काम करता है, विभिन्न ऑपरेटिंग सिस्टम पर काम करता है, तीसरा पार्टी प्रोटोकॉल , आदि।