Scalable در لغت به معنی مقیاس پذیر است. یعنی از یک نرمافزار ساده به یک نرمافزارlarge size قابل ارتقا باشد. هر چه نرمافزار طراحی شده با اصول Scalable مطابقت بیشتری داشته باشد طراحی قابل ارتقاتری دارد. تعریف را کمی گستردهتر کنیم. آیا Developer پروژه فقط یک نفر است؟ آیا فقط یک تیم است؟ فردا روز کسی به تیم اضافه نمی شود؟ تیم عوض نمی شود؟ پروژه های Scalable فقط حرف توسعه نرمافزار از دید درخواست و کد و … را ندارند. بحث اینکه بعد تر ها دیگران هم بتوانند این پروژه را توسعه دهند هم هست. در تعریف به واژه large size اشاره کردم. به چه نرم افزاری large size می گویند؟ در javascript در اولین نگاه به اندازه نرمافزار نگاه میشود و می گویند نرم افزاری که بیشتر از 100,000loc داشته باشد یا اینکه 1MB بیشتر باشد. آیا این تعریف کافیست؟ نرم افزاری که قسمتهای غیر بدیهی داشته باشد و نیاز به طراحان بیشتر حرفهای جهت نگهداری و توسعه داشته باشد. همچنین قسمت اساسی بررسی، پردازش و نمایش سمت کاربر و Browser باشد.