PDA

View Full Version : متن پادكست آقاي حميدرضا صادقيان راجع به تحليل و طراحي ديتابيس



SayeyeZohor
سه شنبه 13 فروردین 1392, 00:41 صبح
اين پست رو جهت قدرداني از دوست عزيز آقاي حميدرضا صادقيان تهيه مي كنم
متن پادكست آقاي حميدرضا صادقيان مدير سايت سيكوال سرور و مدير ارشد سايت برنامه نويس راجع به تحليل و طراحي ديتابيس :
تذكر: SQL SERVER (سيكوال سرور يا اسكيوال سرور) مخف Structured Query Language مي باشد
تاپيك مربوط به PodCast های مربوط به تحلیل و طراحی Database (http://barnamenevis.org/showthread.php?375229)
تاپيك مربوط به بحث و گفتگو پیرامون Podcast های تحلیل و طراحی Database (http://barnamenevis.org/showthread.php?374637-%D8%A8%D8%AD%D8%AB-%D9%88-%DA%AF%D9%81%D8%AA%DA%AF%D9%88-%D9%BE%DB%8C%D8%B1%D8%A7%D9%85%D9%88%D9%86-Podcast-%D9%87%D8%A7%DB%8C-%D8%AA%D8%AD%D9%84%DB%8C%D9%84-%D9%88-%D8%B7%D8%B1%D8%A7%D8%AD%DB%8C-Database)

SayeyeZohor
سه شنبه 13 فروردین 1392, 00:43 صبح
پادكست اول :
توضيح مختصري راجع به اصول طراحي پايگاه داده :
:چشمک: گام اول : تصوري و ادراكي

يك فاز ضروري در تجزيه و تحليل نيازمندي هاي يك نرم افزار است و هدف آن ، مشخص كردن نيازمندي هاي سازماني و كاربري سيستم است
با كاربر صحبت كرده و فهميدن اينكه نيازمنديهاي آن چيست؟

:چشمک: گام دوم : پياده سازي به صورت منطقي :

از نيازمندي هاي كاربر ، يك طراحي اوليه تهيه كنيم (خواص يا Property) يك ساختار اوليه روي كاغذ يا با نرم افزار Visio يا Word

:چشمک: گام سوم : پياده سازي مدلي از ديتابيس :

طراحي مدل يا دياگرام از نيازمندي هاي كاربر با نرم افزار هايي مانند ERDiagram يا ERStudio يا در Net. ، نرم افزار NttFrameWork جهت ايجاد مدل از ديتابيس

:چشمک: گام چهارم : پياده سازي فيزيكي ديتابيس از روي مدل پياده سازي شده :

ERStudio يا در Net. ، نرم افزار NttFrameWork

مثال:
فرض كنيد يك موسسه بازرگاني داريم

شبه ERD مي نويسيم :
نياز داريم با افراد متخصص صحبت كنيم (كاربر سيستم و كسي كه قراره به صورت مستقيم با نرم افزار در ارتباط باشه)
1- در اين مثال نياز است اول با كارمند بخش حسابداري صحبت كنيم چون به طور مستقيم با سيستم درگيره و نياز ها رو مي دونه
2- دومين شخص مدير منابع انسانيه كه بحث حقوق و مزاياي پرسنل رو بر عهده دارد
3- سومين شخص (دبيرخانه و اتوماسيون اداري)
4- چهارمين و آخرين شخص مدير موسسه است ، در مورد اينكه شما به چه گزارش هايي نياز داريد ؟
تمام اين اطلاعات بايستي به صورت كاملاً جزئي تهيه شود .
تقريباً 1/5 (يك پنجم) از زمان را براي جمع آوري داده ها اختصاص دهيد.

SayeyeZohor
سه شنبه 13 فروردین 1392, 00:57 صبح
پادكست دوم : تحليل و طراحي سيستم مالي شركت پيمانكاري كوچك :
:چشمک:توضيح فاز يا گام اول تصوري و ادراكي :
- مرحله اول : شناخت نيازمنديهاي سيستم يا موجوديت ها

شناخت مجموعه اي از موجوديت ها و ارتباطات بين آن ها
موجوديت چيست :

توضيحاتي كه كاربر ها مي دهند تبديل به موجوديت مي شود ، موجوديت ها به اسامي وابسته هستند مانند : مردم ، مكان ها ، اشياء و ... كه منطق برنامه به آن اشياء وابسته است
مثال : حسابدار بايستي بتواند اسناد پروژه A را ثبت كند
تعيين موجوديت ها در سيستم مالي شركت پيمانكاري كوچك :

حسابدار ، اسناد و پروژه يك اسم هستند كه هر كدام خواص و قوانين مربوط به خود را دارند

تذكر : ممكن است در اين قسمت چند پروژه يا چند حسابدار داشته باشيم ولي هر كدام را به عنوان يك موجوديت در نظر نمي گيريم
تذكر : ثبت كردن يك موجوديت حساب نمي شود چون فعل است و جزء قوانين ما محسوب مي شود
تذكر: يك موجوديت شبيه يك جدول نيست ، يك جدول يك پياده سازي يا Structure خاص مربوط به اوراكل يا سيكوال سرور يا ... هستش
تذكر : بعضي از موجوديت ها آنقدر خلاصه و تجزيه شده اند كه مي تواند في نفسه يك جدول باشند و مستقيماً در زمان پياده سازي به يك جدول مرتبط شوند ولي بعضي از موجوديت ها به دو يا چند جدول كوچكتر تجزيه و پياده سازي مي شوند
تذكر : اشتباه افراد مبتدي : بعد از انجام اين مرحله بايستي اين طرح توسط كاربر تاييد شود و در صورتي كه سريعاً به قسمت طراحي يا پياده سازي كوچ شود اشتباه است.
تذكر : در اين طرح تصوري بايد يك ديد كلي از سيستم بدست مي آوريم ، نيازي به جزئي نگري نيست

- مرحله دوم : پياده سازي و يافتن قوانين تجاري سيستم :

شناخت قوانيني كه قرار است در سيستم رعايت شود كه اصطلاحاً به آن Business Rule مي گويند و مشخص كردن حيطه كاري سيستم
اين ها به شكل طرحي به دست كاربر مي رسد و تاييد گرفته مي شود تا در صورتي كه نياز به اصلاح يا ... دارد رفع شود


قوانيني كه كل رفتار سيستم ما از آن تبعيت خواهد كرد
ابزار مناسب براي داكيومنت كردن و مستند سازي قوانين تجاري مانند Word , Excel , درست كردن چك ليست از قوانين
به عنوان مثال :

1 - كاربر در گروه مدير عامل نبايد بتواند اسناد مال را اصلاح يا حذف كند فقط كار گزارشگيري جهت نمايش سود و زيان و گزارش اسناد
2 - كد مركز هزينه بايد 6 رقم باشد
3 - اسناد مال قبل از ثبت موقت بايستي توسط مدير مال بازرسي و تاييد شود
قوانين تجاري مي توانند شامل مجموعه اي از قوانين ار قبيل قوانين جامعيت داده ها
به عنوان مثال :

كاربر نمي تواند شماره سند قطعي شده يا شماره حساب كل رو اصلاح كند
قوانين سيستمي : سيستم بايد راس ساعت 6 هر روز يك گزارش رو براي مديريت ايميل كند
قوانين امنيتي : يك گروه كاربري مديران مالي ، فقط مي توانند اسناد مالي رو تاييد و ثبت نهايي كنند

-------تحليل نرم افزار سيستم مالي شركت پيمانكاري كوچك :-----------------------------------------------------------------------------------------------------------------------------------------------------------------------
:چشمک: گام اول : تصوري و ادراكي
مرحله اول : شناخت نيازمنديهاي سيستم يا موجوديت ها :


1- امكان تعريف حساب ها (حساب كل ، معين ، تفصيلي و گروه حساب ها)
موجوديت ها : حساب كل ، معين ، تفصيلي و گروه حساب ها
2- امكان تعريف پروژه ها و مراكز هزينه
موجوديت ها : مراكز هزينه تقريباً همان پروژه ها حساب مي شوند اگر آن ها رو جدا حساب كنيم مي شود : پروژه ها و مراكز هزينه
3- ثبت اسناد مالي
موجوديت ها : اسناد حساب ها و سال مالي
4- تعريف كاربرهاي محتلف و سطح دسترسي
موجوديت ها : گروه حساب ها و كاربران
5- گزارش هاي مالي
موجوديت ها : چون اطلاعات خود را از قسمت هاي بالا مي گيرد نياز به موجوديت خاصي ندارد

SayeyeZohor
سه شنبه 13 فروردین 1392, 02:58 صبح
پادكست سوم :
- مرحله دوم : پياده سازي و يافتن قوانين تجاري سيستم يا Business Rule :

يك سيستم و ديتابيس بر اساس قوانين تجاري شكل مي گيرد ، كشف صحيح و درست آن ها مي تواند به طراحي دقيق و زيباتر ما كمك كند

قوانين دو نوع دارد :

1- قوانين اجباري

به عنوان مثال : تاريخ سند نبايد از روز جاري تغيير كند و شماره سندهاي خالي درج شود (اين قانون را مي توان در يك RDBMS مانند SQL Server پياده سازي كرد به اين صورت كه اگر تاريخ سند با تاريخ روز تطابق نداشت ، سند مربوطه را مرجوع و به كاربر يك پيغام خطا دهد)
2- قوانين شرطي

به عنوان مثال : تاريخ سند نبايد از روز جاري تغيير كند به استثناي كاربري كه دسترسي لازم را دارد (اين قانون را نمي توانبه اين سادگي در يك RDBMS مانند SQL Server پياده سازي كرد و بايستي از (UI (User InterFace يا Business Layer اين قوانين پياده سازي شود)

مشكل :
ممكنه چند قانون با هم تداخل داشته باشند پس دقت در پياده سازي قانون مهم است

وضع قوانين براي سيستم مالي شركت پيمانكاري :

1- تعاريف مالي :
--حساب كل

بايد بتوان براي حساب كل محدوديت تعريف كرد كه ماهيت آن بدهكار باشد يا بستانكار
در تعريف حساب كل ، بيشتر از 4 رقم نبايد براي حساب كل كد وارد كرد .
نام حساب كل بيشتر از 50 كاراكتر يا حرف نباشد
بايد بتوان كد حساب كل را اصلاح كرد ، حتي اگر براي آن سند خرده باشد در اينصورت بايد سند هاي سيستم هم به روز شوند
حساب كلي كه سند براي آن ثبت شده نبايد حذف شود چون حساب كل گردش دارد و بايد آن گردش حذف شود تا بتوان آن حساب كل را پاك كرد
بايد بتوان براي كاربران دسترسي اضافه ، اصلاح و حذف روي حساب كل تعريف كرد

--حساب معين

در تعريف حساب معين ، بيشتر از 4 رقم نبايد كد معين وارد شود
نام حساب معين بيشتر از 60 كاراكتر يا حرف نباشد
بايد بتوان كد حساب معين را اصلاح كرد ، حتي اگر براي آن سند خرده باشد در اينصورت بايد سند هاي سيستم هم به روز شوند
حساب معيني كه سند براي آن ثبت شده نبايد حذف شود چون حساب معين گردش دارد و بايد آن گردش حذف شود تا بتوان آن حساب معين را پاك كرد
بايد بتوان براي كاربران دسترسي اضافه ، اصلاح و حذف روي حساب معين تعريف كرد

--حساب تفصيلي

در تعريف حساب تفصيلي ، بيشتر از 6 رقم نبايد كد تفصيلي وارد شود
نام حساب تفصيلي بيشتر از 100 كاراكتر يا حرف نباشد
بايد بتوان كد حساب تفصيلي را اصلاح كرد ، حتي اگر براي آن سند خرده باشد در اينصورت بايد سند هاي سيستم هم به روز شوند
حساب تفصيلي كه سند براي آن ثبت شده نبايد حذف شود چون حساب تفصيلي گردش دارد و بايد آن گردش حذف شود تا بتوان آن حساب تفصيلي را پاك كرد
بايد بتوان براي كاربران دسترسي اضافه ، اصلاح و حذف روي حساب تفصيلي تعريف كرد

2- تعاريف پروژه

-- كد مركز هزينه
در تعريف كد مركز هزينه ، بيشتر از 5 رقم نبايد كد مركز هزينه وارد شود
نام كد مركز هزينه بيشتر از 100 كاراكتر يا حرف نباشد
بايد بتوان كد مركز هزينه را اصلاح كرد ، حتي اگر از آن در سيستم استفاده شده باشد
كد مركز هزينه اي كه استفاده شده است نبايد حذف شود چون كد مركز هزينه گردش دارد و بايد آن گردش حذف شود تا بتوان آن كد مركز هزينه را پاك كرد
بايد بتوان براي كاربران دسترسي اضافه ، اصلاح و حذف روي كد مركز هزينه تعريف كرد

3- اسناد مالي

شماره سند بيش از 8 رقم نباشد
سند بايد تراز باشد يعني مبلغ بدهكار سند با ملغ بستانكار سند بايد با هم برابر باشد
در غير اينصورت اشتباه است و سند نبايد ثبت شود و در گزارشات مالي نبايستي نشان داده شود
در صورتي كه بخواهيم سندي كه تراز نيست راثبت كنيم بايد به صورت يك يادداشت ذخيره كنيم كه كاربر فقط بتواند گزارش بگيرد كه مثلاً اين سند يادداشت مي باشد و كاربر بتواند سند را اصلاح كند ، مبالغ را تراز كند ، آن موقع به صورت موقت يا دائم سند را ذخيره كند تا بتواند در گزارشات از آن استفاده كند
كاربر نمي تواند شماره سند يا تاريخ آن را تغيير دهد مگر اينكه دسترسي هاي لازم را داشته باشد (از تاريخ روز و شماره سندي كه سيستم به صورت اتوماتيك Generate يا توليد مي كند ، استفاده شود)
امكان درج بين سند يا بين دو تاريخ وجود ندارد مگر اينكه دسترسي مديريتي وجود داشته باشد
بايد بتوان براي كاربران دسترسي اضافه ، اصلاح ، حذف و چاپ سند تعريف كرد

4- سطوح مديريتي

هر كاربر بايد بتواند نام كاربري و رمز مخصوص به خود را داشته باشد
براي هر كاربر بتوان در بخش هاي مختلف سيستم ، پارامترهاي اضافه ، اصلاح ، حذف و چاپ را تعريف كنيم
فعال يا غير فعال كردن كاربر
از گزارش عملكرد اكاربران بايستي Log تهيه شود (كابر در ساعت ... وارد شده ، در ساعت ... از سيستم خارج شده ، در ساعت ... سند را اصلاح كرده است و ...)

5- بخش گزارشات

يك فيلتر قرار دهيم بر روي تاريخ و شماره سند ، براي تهيه گزارش خاص براي كاربر

SayeyeZohor
سه شنبه 13 فروردین 1392, 03:06 صبح
پادكست چهارم :
:چشمک: گام دوم : پياده سازي به صورت منطقي يا عملي :
1- جزئيات موجوديت ها را بنويسيم
2- تجزيه و تحليل موجوديت ها
3- پياده سازي به صورت منطقي توسط يك نرم افزار
4- اعمال قوانين روي آنها
5- درج روابط آن ها
6- طراحي ديتابيس روي سيكوال سرور




سيزده به در همگي مبارك
http://dl.funiha.com/images/21956419970949117242.jpghttp://mobilesky.ir/img/13bedar.jpg

102197 (http://host3.aparat.com//public/user_data/flv_video_new/167/c92b1191e0bb9cb03f550526dae3964f499729.mp4)
ياحق ...