طراحی، پدیدهای زیباست. ارائه و بررسی سیستماتیک و دقیق یک مسئله و راهحل، اشتباهات و فرصتهای بهبود را آشکار میکند—گاهی به طرز شگفتآوری. مشخصات مهم هستند زیرا الگوی ساخت را فراهم میکنند. اختصاص زمان برای تفکر درباره معماری ضروری است، چه در سطح کلان با نگاهی به تعاملات بین مؤلفهها و چه در سطح خرد با تمرکزی بر رفتار درون هر مؤلفه.
متأسفانه، غرق شدن در فرایند طراحی و شیفته شدن به معماری انتزاعی بسیار آسان است. واقعیت این است که مشخصات بهتنهایی هیچ ارزشی ندارند. هدف نهایی یک پروژه نرمافزاری، یک سیستم عملیاتی است. معمار نرم افزار باید همیشه این هدف را در نظر داشته باشد و به یاد داشته باشد که طراحی فقط یک وسیله است، نه هدف نهایی. معمار یک آسمانخراش که قوانین فیزیک را برای زیبایی بیشتر نادیده بگیرد، بهزودی پشیمان خواهد شد. از دست دادن تمرکز بر کد اجرایی، برای هر پروژهای دردسرساز است.
به اعضای تیمی که در حال اجرای دیدگاه شما هستند، ارزش بدهید. به حرفهایشان گوش دهید. وقتی از طراحی ایراد میگیرند، احتمالاً حق با آنهاست و طراحی نادرست یا حداقل مبهم است. در این مواقع، وظیفه شما این است که با همکاری اعضای تیم، طراحی را با محدودیتهای دنیای واقعی تطبیق دهید و مشخص کنید چه چیزی عملی است و چه چیزی نه. هیچ طراحیای از ابتدا کامل نیست؛ همه طرحها هنگام اجرا نیاز به اصلاح دارند.
اگر در پروژه نقش توسعهدهنده را نیز بر عهده دارید، به زمانی که برای کدنویسی صرف میکنید ارزش بدهید و به کسی که میگوید این کار حواس شما را از وظایف معماری پرت میکند، باور نکنید. تجربه شما در هر دو سطح کلان و خرد با زمانی که صرف پیادهسازی واقعی سیستم میکنید، بهطرز چشمگیری تقویت خواهد شد.
نویسنده:Allison Randal

