|
مقاله شماره : 712 |
||||||||
|
روشي نوين براي اجرا و پيادهسازي سيستمهاي تجاري |
||||||||
|
روشي نوين براي اجرا و پيادهسازي سيستمهاي تجاري توسعه سيستمهاي تجاري از مهمترين مباحث فناوري اطلاعات است; چرا كه اين دسته از نرمافزارها نقش مهمي در توسعه و پيشرفت سازمانها و موسسات ايفا ميكنند. در مجموع براي توسعه يك سيستم تجاري، سه مرحله زير انجام ميشود : 1- شناخت و طراحي مرحلـــــه شناخت و طراحي با متدولوژيهاي مهندسـي نرمافزار از جمله RUP، SSADM، MSF و غيره انجـــــام ميشـــــود. نتيجه بـــــه دست آمده در اين مرحله، با روشهاي مختلف و نرمافزارهاي گوناگون مستندسازي ميشـــود و در اختيار تيم پيادهسازي قرار ميگيـــــرد. در ايـــن مرحله، زبان مـــــدلسازي UML از محبوبيت خـــــاصـــــي برخـــــوردار است. ضمنـــــا از نـــــرمافزارهـــايي ماننـــــد Rational Rose، Power Designer، Together و غيره به عنوان C.A.S.E. Tool استفاده ميشود. X-Method X-Method با هدف دستيابي به يك روش كارآمد، براي اجرا و پيادهسازي سيستمهاي تجاري به وجود آمده است. در اين زمينه، متدهاي متنوع و مختلفي وجود دارد. البته در بسياري موارد نيز متد مشخصي براي توسعه وجود ندارد، اما با معرفي ديدگاههاي اين متد نسبت به اجزاي سيستم، مرحله دوم توسعه سيستمهاي تجـــــاري بـــــا قدرت و اطمينان بيشتري انجام خواهد شد. متد موردنظر، به صورت كامل در ايران شكل گرفته و در چندين پروژه نسبتا بزرگ نيز مـــــورد استفاده قرار گرفته است. نام ايـــــن متد، از كلمات Extreme Method گرفته شده است. در ايـــــن متد، از تكنيكهـــــاي پيشرفته برنامهنويسي، از جملـــــه برنامـــــهنويسي شيءگرا (Object Oriented) و XML استفاده ميشود. وظيفه لايه Data به عنوان مهمترين لايه، ذخيرهسازي، پردازش و حفاظت از اطلاعات است. مجموعههـــــاي مختلف، تحت عنـوان DBMS، در اين لايه به كار گرفته ميشوند. وظيفه DBMS ارائه امكانـــــات مورد نيــــــاز براي ايجاد، مديـــــــريت و نگهداري بانك اطلاعاتـــي است. از جملـــــه DBMSهـــــاي معـــــروف، ميتـــــوان به Oracle و Microsoft SQL Server اشاره كرد.
معماري فوق يكي از معروفترين معماريهاي موجود و نوع خاصي از معمـــــاري n-Tier است. از نظر فيزيكـــي يك ســـــرور و چنـــــد كلاينت معمـــــاري كلـــــي را تشكيل خواهنـــــد داد. براي درك بهتر، وضعيت قرار گرفتن لايههاي منطقي در معماري فيزيكي را مورد بحث قرار ميدهيم. به شكل3 توجه كنيد:
در واقـــــع لايـــــه Data در معمـــــاري منطقـــــي، در سطح سرور و لايـــــه Presentation در سطـــــح كـــــلاينت قـــرار ميگيرد. اما لايه Business Logic در كجاي معماري فيزيكي واقع ميشود؟ اين لايه ميتواند از نظر فيزيكي، هم در سطح سرور و هـــــم در سطح كلاينت قرار گيرد (شكل 4.)
در صورتـــــي كـــــه لايـــــه Business Logic در سطـــــح ســـــرور قـــــرار گيـــــرد، معمـــــاري Thin ClientFat Server - و بالعكس Thin ServerFat Client - ناميده خواهد شد. در واقع در حالت اول، قوانين حاكم بر سيستم در لايه Data اعمال ميشود، اما در حالت دوم، از زبانهاي برنامهنويسي براي اجـــــراي ايـــــن لايه، در سطح كلاينت استفـــــاده ميشود. بهتريـــــن حـــــالت بـــــراي لايه Business Logic در معماري فيزيكي، حـــــالت اول است. در واقع بهتر است ايـــــن لايـــــه، در سمت سرور و چسبيـــــده به لايه Data پيـــــادهســـــازي شود. ايـــــن روش نسبت بـــــه روش دوم كـــــه لايـــه Business Logic در سمت كلاينت قرار ميگيرد، داراي مزاياي زير است: ديدگاه در X-Method در X-Method از معماري Fat Server - Thin Client استفاده ميشـــــود. ضمنــــــا در سمـــــت سرور از SQL Server و در سمت كلاينت از Microsoft .NET Framework استفـــــاده ميشود. براي پيادهسازي لايه Business Logic در سمت سرور، از زبان T-SQL استفـاده خواهـــــد شد. ضمنا در سمـــــت كلاينت يك لايه جديد، تحت عنوان Business Abstract Layer به وجود خواهد آمد كه نماينده لايه Business Logic در سمــت كلاينت است. در واقع لايه Presentation در سمت كلاينت، از طريق اين لايه با لايه Data كه متشكــل از دادههـــــا و قوانين است، ارتباط برقرار خواهد كرد. به شكل 5 كه مشخص كننده معماري فيزيكي و منطقي در X-Methodاست، توجه كنيد:
وظيـــــفـــــه لايـــــه Business Abstract Layer، ارائـــــه لايـــــه Business Logic در سمت كــلاينت است. براي پيادهسازي اين لايه، از Microsoft .NET Framework استفاده خواهد شد. البته براي افزايش سرعت در توليد و ساخت اين لايه، ابزارهايي با عنوان Code Generator به كار ميرود. در واقع اين لايه، توسط Code Generator به سرعت توليد و آماده خواهد شد. نحوه ارتباط بين لايهها ديدگاه در X-Method همانطور كه عنوان شد، از نظر منطقي در X-Method چهار لايه وجــــود دارد: Data، Business Logic، Business Abstract و Presentation. مبحث ارتبـاط بيـــــن لايههـــــاي مختلف، بيشتر از منظر فيزيكـــــي داراي اهميت است. بنابرايـــــن، بـــــا توجه بـــــه مدل معماري فيزيكي مورد استفاده در X-Method، برقراري ارتباط بين دو لايه Business Logic در سمت سرور و Business Abstract در سمت كلاينت، از اهميت خاصي برخوردار است; اگرچه نحوه بــــــرقراري ارتباط بيــــــن لايههاي Data و Business و همچنيـــــن Presentation و Business Abstract، كاملا مشخص است.
مبدا درخواست، برنامهاي است كـــــه توسط .NET Framework ساخته شده و لايه Business Abstract را تشكيل ميدهد. مقصد درخواست، يك Stored-Procedure در بانك اطلاعاتي است كه شامل قوانين مربـــــوط به سيستـــــم خواهـــــد بود. در واقع در لايه Business Abstract، از زبانهاي C# يا Visual Basic.NET و همچنين امكانات ADO.NET و در سمت سرور يـــــا همان لايه Business Logic، از زبان T-SQL استفاده ميشود. براي درك بهتر اين موضوع، به جزئيات بيشتري درباره دو كلاس Request و Response ميپردازيم. كلاس Request كلاس Request ارائه كننده يك درخواست است; به عنوان مثال، درخـــــواست بـــــراي ثبت اطلاعـــــات يك مشتـــــري يا درخواست براي دريـــــافت فهرست محصولات يك شركت. كلاس Request شامل خصوصيات زير است:
كلاس Response كلاس Response، در ارتباط با Request ساخته و ارسال خواهد شد. خصوصيات اين كلاس، در جدول آمده است: ارتباط بين لايههاي Data و Business Logic به دليل آنكه از نظر فيزيكي، اين دو لايه در سمت سرور قرار دارند و هـــــر دو تـــــوسط Microsoft SQL Server ايجـــــاد ميشوند، ارتباط بين اين دو لايه از طريق دستورات T-SQLانجام ميگيرد.
در واقع تكنيك خاصي براي برقراري ارتباط بين اين دو لايه وجود نـــــدارد; اگر چـــــه انتخـــــاب يـــــك استــاندارد و قالب مشخص براي نامگذاري اشيا، كمك چشمگيري در اين زمينه ميكند. ارتباط بين لايههاي Business Abstract و Presentation لايه Business Abstract، شامل كلاسهايي است كه امكانات سيستم را ارائه ميكند. بنابرايـــــن، لايه Presentation با ساختن نمونه )Instance( از كلاسهاي موجـــود، از امكانات اين لايه بهره خواهد برد. در شمارههاي آينده، مطالب بيشتري در ارتباط با اين موضوع ارائه خواهد شد. phorozan@gmail.com فرامرز فروزان
|
||||||||
|