برخی تیمهای توسعهٔ نرمافزار هستند که برای پلتفرمهای مختلف، خروجیهای مختلفی از نرمافزاری که توسعه دادهاند میگیرند اما این درحالی است که چنین سیاستی صرفاً منجر به پیچیدهتر شدن کارها میشود!
بهعبارت دیگر، با چنین کاری تیم توسعه نسخههای تقریباً شبیه به همی تولید کرده که هریک از آنها صرفاً در پلتفرم اختصاصی خودش میبایست دیپلوی گردد و همین مسأله ضریب خطا را بالا خواهد برد (مثلاً نسخهٔ توسعه داده شده برای پلتفرم A روی پلتفرم B دیپلوی گردد یا بالعکس).
در یک کلام، وقتی دست به توسعهٔ یک نرمافزار میزنید همواره تمام تلاش خود را بهکار گیرید تا صرفاً یک نسخهٔ نهایی از نرمافزار داشته باشید که از مراحل تست گرفته تا بارگزاری روی سرور اصلی، تمامی کارها روی همان یک نسخه صورت میگیرد.
حال ممکن است این سؤال پیش بیاید که یکسری تفاوتهای مبتنی بر Environment وجود دارند که بایستی هندل شوند (منظور از Environment، پلتفرمی است که نرمافزار قرار است روی آن پیادهسازی گردد)؛ در پاسخ به این سؤال بایستی گفت که چنین تفاوتهایی را باید داخل همان Environment یا پلتفرم هندل کرد.
حال ممکن است در زمان طراحی معماری نرمافزار آنقدر که باید و شاید دقت بهخرج داده نشده باشد و برخی تنظیمات پیکربندی در سورسکد اعمال شده باشد که چنین مسألهای مشکلزا خواهد شد؛ برای رفع چنین معضلی، میبایست تنظیمات پیکربندی کلی نرمافزار در فایلی مثلاً تحتعنوان global-config قرار داده شده و تنظیمات مرتبط با پلتفرمی که این نرمافزار قرار است روی آن پیادهسازی شود در فایلی مثلاً تحتعنوان env-config تا بهسادگی بتوان نرمافزار را روی محیطهای متفاوت بهکار گرفت.