درباره‌ی مدرن‌سازی نرم‌افزار

هر سیستم قدیمی زمانی معماری تمیز یک نفر بوده — بدهی فنی از سال‌ها استفاده‌ی واقعی، الزامات درحال‌تغییر و میان‌برهایی که زیر فشار ددلاین زده شده، جمع می‌شه، نه از اینکه کسی کارش رو بد انجام داده. یک بازنویسی کامل جذاب به نظر می‌رسه تا وقتی هزینه‌ی واقعیش رو بشمرید: ماه‌ها یا سال‌ها بدون عرضه‌ی چیز جدید، و یک احتمال واقعی که جایگزین همه‌ی edge caseهایی که سیستم قدیمی بی‌سروصدا پوشش می‌داد رو نپوشونه. ما به‌جاش تدریجی مدرن می‌کنیم — تجزیه‌ی یک مونولیت تکه‌تکه، مهاجرت دیتابیس بدون داون‌تایم، جایگزینی یک کامپوننت در هر مرحله پشت یک اینترفیس پایدار — تا سیستم همچنان کار کنه و همزمان بهتر بشه. هر برنامه‌ی مدرن‌سازی‌ای که می‌نویسیم نقاط rollback صریح داره، چون ریسک یک قدم مهاجرت اشتباه به‌اندازه‌ی فایده‌ی قدم بعدی اهمیت داره.

این سرویس برای کیه

چه چیزی شامل می‌شه

فرآیند کار ما

1

ارزیابی

معماری، وابستگی‌ها و ریسک‌های خاصی که یک تغییر ممکنه ایجاد کنه رو نقشه‌برداری می‌کنیم.

2

برنامه‌ریزی

مدرن‌سازی رو به مراحل امن و مستقل با نقاط rollback ترتیب می‌دیم.

3

مهاجرت

یک کامپوننت، سرویس یا دیتاستور رو در هر زمان پشت یک اینترفیس پایدار جابه‌جا می‌کنیم.

4

اعتبارسنجی

هر مرحله رو با ترافیک واقعی production و داده‌ی واقعی، قبل از رفتن به مرحله‌ی بعد، تأیید می‌کنیم.

5

تحویل

معماری جدید رو مستند و تیمتون رو روش آموزش می‌دیم، یا به‌عنوان بخشی از دراپ تمپو ادامه‌ش می‌دیم.

چرا دراپ

سوالات متداول

باید توسعه‌ی ویژگی‌های جدید رو در طول مدرن‌سازی متوقف کنیم؟

نه. کار رو طوری ترتیب می‌دیم که تیمتون بتونه هم‌زمان ویژگی‌های جدید رو روی بخش‌هایی که فعلاً درحال مهاجرت نیستن عرضه کنه.

اگه مدرن‌سازی طبق برنامه پیش نره چی؟

هر مرحله یک نقطه‌ی rollback صریح داره که قبل از شروعش تعریف شده — پس یک قدم اشتباه برگردونده می‌شه، نه انباشته.

می‌تونید فقط یک بخش از سیستم رو مدرن کنید، نه کل اون رو؟

بله. اکثر پروژه‌ها با پرریسک‌ترین یا پرهزینه‌ترین کامپوننت شروع می‌شن و بر اساس چیزی که یاد می‌گیریم گسترش پیدا می‌کنن.

چطور از خراب کردن چیزهایی که یک بازنویسی می‌گرفت جلوگیری می‌کنید؟

از رفتار واقعی سیستم موجود کار می‌کنیم، شامل edge caseهای مستندنشده‌ش، به‌جای اینکه از صفر دوباره specify‌ش کنیم — که دقیقاً همونجاست که بازنویسی‌ها معمولاً قابلیت از دست می‌دن.

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

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