solmaz.oskouie (سولماز اسکویی)
solmaz.oskouie (سولماز اسکویی)
خواندن ۲ دقیقه·۵ سال پیش

تعریف Enterprise Application از دید مارتین فاولر بزرگ




مارتین فاولر می گوید :

در برخی موارد Enterprise Application ها خیلی ساده تر از نرم افزار های Telecome هستند چرا که آنها مسایل multi-threading خیلی سخت ندارند. آنها بحث تجمیع سخت افزار با نرم افزار ندارند ولی...

ولی Enterprise Application ها داده های پیچیده دارند .


از نظر فاولر منظور از Enterprise Application ها همان سیستم های اطلاعاتی هستند آنهایی که با پردازش و ذخیره سازی بلند مدت داده سروکار دارند .

فاولر در ادامه چند تا از سیستم های اطلاعاتی موردنظر را این طوری مثال می زند :

Payroll, Patient records, shipping tracking, cost analysis, credit scoring, insurance, supply chain, accounting, customer service, foreign exchange trading



ویژگی های Enterprise Application ها از نظر فاولر:

1- این سیستم ها معمولا با persistent data سروکار دارند

2- آنها داده های زیادی دارند

3- معمولا دسترسی به این داده ها به صورت همزمان است بنابراین چالشهای دسترسی ایمن و جلوگیری از خرابکاری ناشی از دسترسی همزمان را در دل خود دارد و بیشتر برنامه نویس ها رو درگیر می کند ( مدیریت تراکنشها )

4- این داده ها باید به انواع شکل ها و ساختارهای مختلف درآیند تا دردسترس کاربران قرار گیرند (از طریق view های مختلف )

5-این سیستم ها اغلب با Enterprise Application های دیگر در ارتباط و تعامل هستند بنابراین با تکنولوژی های مختلفی سروکار دارند . اما برای تعامل و گفتگو با همدیگر نیاز به یک زبان مشترک دارند .

6- مفهوم و اصطلاح business logic در این سیستم ها خیلی زیاد شنیده و بکار برده می شود که شامل فرایند شناسایی و استخراج قواین کسب و کار (business rules) می شود .بطوری که کلیه رفتارهای سیستم در قالب همین قوانین کنترل و مدیریت بشود و درعین حال به تمام نیازهای مشتری پاسخ داده شود .

7- معمولا می گویند Enterprise Application ها سیستم های بزرگی هستند اما باید توجه داشته باشیم که آنها را باید به sub system های کوچک و ساده تبدیل کنیم تا کار توسعه تست و مدیریتشان آسان تر بشود معمولا اینکار با ساده سازی فرایند و معماری صورت می گیرد .



منبع :

کتاب Patterns of Enterprise Application Architecture نوشته مولا مون مارتین فاولر کبیر :)

معماری نرم افزارbusiness logic
Java ( web) developer. Cats lover. a left-handed(southpaw) girl . ISTJ
شاید از این پست‌ها خوشتان بیاید