خانه / Masoud Bahrami

Masoud Bahrami

شناخت SUT پیش شرط لازم و ضروری برای نوشتن تست‌ خوب

The “system under test”. It is short for “whatever thing we are testing” and is always defined from the perspective of the test. xUnit Test Patterns, Refactoring Test Code Gerard Meszaros هر چند از نظر عملی ممکن است شدنی باشد که تمامی فرآیندهای یک سیستم را تحت یک تست مورد …

ادامه نوشته »

خروجی جلسات بازنگری باید شامل تصمیمات قابل انجام توسط تیم باشد

اصل دوازدهم بیانیه چابک اشاره می‌کند که تیم باید در بازه‌های زمانی مشخص و منظم در مورد اینکه چگونه می‌توانند بازده خود را بهبود ببخشند تفکر و تمرکز کنند و سپس رفتار خود را بر همین اساس تنظیم کنند: At regular intervals, the team reflects on how to become more …

ادامه نوشته »

یک ترفند خیلی ساده جهت تشخیص تمایز بین ValueObjectها و Entityها

آیا این رو Entity در نظر بگیرم یا ValueObject؟ این سوال از اون جنس سوالاتی هست که آدم معمولا جوابهای زیادی براش پیدا می کنه ولی، باز هم در تشخیص تفاوت بین این دو گیج خواهد بود. به چند مورد از این نوع جواب ها اشاره می کنم: ببین Entity …

ادامه نوشته »

Orchestration یا Choreography؟

مقدمه: با شکستن یک برنامه یک-تکه(مانولیت) به مجموعه‌ای از سرویس های کوچکتر ما با مسائل جدید مواجه می‌شویم که ذاتی سیستم‌های توزیع شده می‌باشد و باید برای آن‌ها راهکاری داشته باشیم. یکی از این مسائل بحث تراکنش هایی است که قبلاً در سطح یک پراسس و یک دیتابیس(معمولا)مدیریت می‌شد و …

ادامه نوشته »

تراکنش های طولانی مدت یا Long Lived Transactions (LLT)

تراکنش های طولانی مدت تراکنش هایی هستند که به مدت طولانی(چندین ثانیه یا ساعت یا روز) یک منبع مهم اشتراکی را بصورت لاک شده در اختیار دارند تا تکلیف آن‌ها مشخص شود. منبع در اینجا غالباً دیتابیس می باشد. این تراکنش ها تأثیر قابل توجهی بر عملکرد و کارایی و زمان پاسخگویی برنامه …

ادامه نوشته »

مایکروسرویس ها و چالشی نا تمام به نام اندازه

بزرگی سرویس ها در معماری مایکروسرویس ها در سبک معماری مایکروسرویس ها ما با سرویس های مستقلی سروکار داریم که ضمن داشتن استقلال در کل چرخه ی زندگی خود یک ویژگی مهم را با خود یدک می کشند. ویژگی ای که به جهت اهمیت بخشی از نام این سبک معماری شده …

ادامه نوشته »

چگونه یک سیستم یک-تکه(مانولیت) به مایکروسرویس ها شکسته می شود

متن زیر ترجمه مقاله ژامک دهقانی است که در این آدرس پابلیش شده است.   چگونه یک سیستم یک-تکه(مانولیت) به مایکروسرویس ها (مجموعه ای سرویس های کوچک متسقل(مترجم)) شکسته می شود چه چیزی را و چه موقع باید جدا کرد؟ با بزرگ شدن بیش از حد سیستم های یک تکه …

ادامه نوشته »

Consumer Driven Contract Testing

Consumer Driven Contract Testing     با داشتن یک API با دوجین استفاده کننده(Consumer) که گاهی اوقات نیازمندی های مختلف و متضادی هم ممکن است داشته باشند ایجاد و برپایی یک قرارداد روشن و واضح بین ارائه دهنده ی سرویس(Provider) و استفاده کنندگان از سرویس با بیشتر و بیشتر شدن …

ادامه نوشته »

مایکروسرویس ها و چالشی بنام DRY

مایکروسرویس ها و چالشی بنام DRY یکی از بخش های مهم بهنگام مهاجرت از یک معماری سنتی به یک معماری مدرن(Modern Architecture) تغییر ذهنیت های قبلی شکل گرفته و تطابق با اصول و نگرش هایی است که لازمه ی یک مهاجرت موفق به یک سبک معماری خاص می باشد. قبلا …

ادامه نوشته »

معماری های Serverless

معماری های Serverless مقدمه: دنیای نرم افزار اکنون در حال پشت سر گذاشتن یکی از دوره های رنسانس خود است. بطوریکه طی همین چند سال اخیر شاهد تغییرات اساسی در نحوه ی طراحی و معماری نرم افزار ها و تغییر مایندست قدیمی تر نسبت به توسعه سیستم؛ تغییرات قابل توجه در …

ادامه نوشته »
به کانال من در تلگرام بپیوندید

اگر علاقمند به مباحث معماری و مدلسازی نرم افزار هستید می توانید به کانال تلگرام بپیوندید.

پیوستن بستن