دفاع از TFS – اول حرف دیگران رو بشنویم

هیچوقت فکر نمی کردم خودم رو در مقام دفاع از محصول یک شرکت دیگه ببینم، ولی خب شد!

نرم افزارهایی مثل TFS قابلیت هاشون در سازمان ها و تیم های بزرگ در صورتی که درست استفاده بشن بسیار پر رنگ نمود پیدا می کنه، ولی خب اونجا مشکل به وجود میاد که بخش بزرگی از سیستم های با ابعاد بزرگ در کشور ما روی Java هستن، و همین مساله باعث یک فاصله خیلی زیاد شده، اینکه دوستانی که روی پلتفرم Java هستن معمولا خبری از مایکروسافت ندارن و همیشه با دید بد و حتی تحقیر آمیز بهش نگاه می کنن، در صورتی که دنیای جاوا در زمینه ایی که TFS حضور داره شاید قدمت بیشتری داشته باشه ولی مطمئنا با یک رقیب سر سخت روبرو شده، رقیبی که روند ساخت پر فروشترین سیستم عامل دنیا رو مدیریت می کنه.

 

امروز افتخار اینو داشتم با یکی از دوستان که دارای همین فاصله و اختلاف نظر بین جاوا و مایکروسافت بود صحبتی چند ساعته داشته باشم، در شرکت هایی مثل SAP یا ساختارهای جاوایی به جای واژه ALM از  SCM استفاده می کنند ( System Configuration Management ). این دوستان با عنوان شغلی Configuration Management فعالیت می کنن در صورتی که این دو واژه در کنار هم معنی  متفاوتی رو در ذهن دوستان سمت مایکروسافت ایجاد می کنه ( وقتی کتاب های پایه مباحث Continuous Integration و Deployment رو بخونید تهش میشه اینکه پلتفرم براتون مهم نیست و با دوستان هر پلتفرمی می تونید صحبت کنید! ).

به هر حال، با شنیدن اسم مایکروسافت ایشون اول تعجب کرد که مایکروسافت هم مگر چنین ابزارهایی داره و مگر میشه ایجاد و تنظیم و از بین بردن سرورها رو با ابزار مایکروسافت مدیریت کرد؟ با توضیحات من و گفتن جزئیات ابزارها فقط تعجب ایشون بیشتر می شد و فکر نمی کردن مایکروسافت چنین ابزار کاملی رو توسعه داده باشه، البته واقعا تا قبل از بهار امسال واقعا همینطور بود ولی از بهار ۹۵ همه چیز عوض شد.

برای Configuration Management یا همون ALM خودمون شما یا میتونید از ابزاری مثل TFS که کاملا یکپارچه است و یا از ابزارهایی مثل Puppet و Jenkins و هزارتا ابزار دیگه برای پوشش کمبودهای این ابزارها استفاده کنید. در واقع شما یا از یک برند برای انجام کارهاتون استفاده می کنید مثل مایکروسافت و یا از چندین برند.

 

در تصویر زیر جایگاه های مختلف و نقشی که ابزارهای مایکروسافت ایفا می کنن نمایش داده شده.

 ساختار ابزارهای DevOps مایکروسافت

همونطوری که می بینید تمام جایگاه های ۴ گانه توسط یک ابزار چه در محیط On Premise و چه در Cloud در نظر گرفته شدن و حتی بیشتر از ۵۰ درصد از این ابزارها در Web Access موجود در TFS مجتمع شدن.

 

حالا همین جایگاه ها رو برای سایر ابزارها نگاه می کنیم.

ساختار ابزارهای جایگزین مایکروسافت در DevOps

همونطور که می بینید ابزارهای مختلفی برای ایجاد یک Pipeline کنار هم قرار می گیرن، حالا ما کاری نداریم که برخی از این ابزارها به نسبت چیزی که در  TFS هست ضعیف تر هستن.

ولی جالب ترین نکته برای من این بود که ما در سمت مایکروسافت به علت اینکه مایکروسافت این امکان رو فراهم کرده که TFS با تمام ابزارهای دیگه یکپارچه بشه، از Jenkins یا Puppet یا Chef بی خبر نیستیم ولی سمت مقابل می تونم بگم از حجم تغییرات TFS متعجب شد.

 

علت نوشتن این پست این بود که بگم لطفا قبل از تصمیم گیری درباره یک ابزار یا تکنولوژی یا حتی هر چیز دیگه ایی در زندگی حرفشو بشنوید و بررسیش کنید شاید از چیزی که پیدا می کنید متعجب شدید.

 

پاسخ دهید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *