بنام خدا
با سلام
يكي از مشكلات بزرگي كه در برنامه هاي كاربردي مشاهده مي شود باگها و يا غير قابل اطمينان و يا متناقض بودن نتايج عمليات و يا گزارشات سيستم مي باشد كه در بسياري موارد نتيجه طراحي غير اصولي بانك اطلاعاتي برنامه كاربردي بوده و هزينه هاي زماني و ريالي زيادي جهت پشتيباني اينگونه نرم افزارها مورد نياز است در اين سري مقالات سعي مي گردد با زباني ساده و روان روش طراحي بانك اطلاعاتي رابطه اي شرح داده شود و در اين مسير مثالها متعددي آورده شده است.
مراحل طراحي يك بانك اطلاعاتي :
فرايند طراحي يك بانك اطلاعاتي شامل مراحل مختلفي مي باشد كه در اين مقاله و مقاله هاي آتي به جزييات هر مرحله پرداخته خواهد شد.
مرحله اول : تعيين و تشخيص هدف اصلي بانك اطلاعاتي : اين موضوع كمك مي كند تا بتوانيد حقايقي كه قرار است در بانك ذخيره شوند را تشخيص دهيد.
مرحله دوم : تعيين و تشخيص جداولي كه شما نياز داريد : هنگامي كه شما هدف بانك اطلاعاتي را بصورت واضح بدانيد قادر خواهيد بود تا اطلاعات مورد نياز را به موضوعات جداگانه نظير Employees و Orders تقسيم نماييد كه هر يك از اين موضوعات معادل يك جدول در بانك اطلاعاتي مي باشد.
مرحله سوم : تعيين و تشخيص فيلدهايي كه شما نياز داريد : تصميم گيري در خصوص اينكه چه اطلاعاتي را در هر جدول مي خواهيد نگهداري نماييد . هر طبقه از اطلاعات در يك جدول به عنوان فيلد (field) ناميده شده و به صورت يك ستون در جدول نمايش مي يابد. بطور مثال ، يك فيلد در جدول Employees مي تواند نام خانوادگي (Last Name) و فيلد ديگر مي تواند تاريخ استخدام (Hire Date) باشد.
مرحله چهارم : تعيين و تشخيص ارتباطات : هر جدول را به دقت بررسي نماييد تا به ارتباط داده هاي هر جدول با داده هاي جداول ديگر پي ببريد. در صورت نياز براي ايجاد ارتباط (تحقق ارتباطي كه تشخيص داده ايد) لازم است فيلدهايي را به بعضي جداول اضافه نموده و يا جداول جديدي را ايجاد نماييد.
مرحله پنجم : بانك طراحي شده را براي يافتن خطاها مورد تجزيه و تحليل قرار دهيد. جداول را در محيط بانك اطلاعاتي ايجاد نموده و چندين ركورد داده تستي در هر يك وارد نماييد سپس بررسي نماييد كه با جداول موجود كليه نتايج مورد نياز فراهم مي گردد يا خير ، در صورت نياز اصلاحات مورد نياز را در طراحي خود صورت دهيد.
اگر اشتباهاتي داشتيد و يا چيزهايي را نسبت به طرح اوليه از قلم انداخته ايد نگران نباشيد به طراحي ايجاد شده بمنزله يك طرح اوليه نگاه كنيد كه امكان اصلاح و بهبود آن در آينده وجود دارد.براي تست طراحي صورت گرفته از داده هاي تستي استفاده نموده و يا با ايجاد فرم هاي نمونه از نرم افزارتان اينكار را صورت دهيد. امكان تغيير طراحي بانك اطلاعاتي بعد از ايجاد آن به سادگي امكان پذير بوده ولي هنگامي كه داده هاي واقعي زيادي در بانك وارد گرديد و شما فرمها و گزارشات را ايجاد نموديد تغييرات بسيار سختتر خواهد بود بنابراين قبل از اينكه در پياده سازي نرم افزار بسيار پيشرفت نماييد از بي عيبي و پايداري طراحي خود اطمينان حاصل نماييد.
خطاهاي رايج در طراحي :
در طراحي بانك هاي اطلاعاتي چند دام رايج وجود دارد كه ممكن شما نيز در آن گرفتار شويد. اين مشكلات و خطاها ممكن است باعث شود تا استفاده از داده ها و نگهداري آنها با مشكلاتي همراه گردد.در ذيل نشانه هايي آمده است كه لازم است در صورت مشاهده آنها لازم است نسبت به ارزيابي مجدد بانك طراحي شده اقدام نماييد :
· شما يك جدول با تعداد زيادي فيلد داريد ولي همه آنها در مورد يك موضوع نيستند. براي مثال ، يك جدول ممكن است هم شامل فيلدهاي مرتبط با مشتريان(Customers) و هم فيلدهاي مرتبط با اطلاعات فروش (Sales) باشد.اطمينان حاصل نماييد كه هر جدول تنها شامل اطلاعات مرتبط با يك موضوع باشد.
· فيلدهايي وجود دارند كه در بصورت عمدي در اكثر ركورد ها اطلاعاتي ندارد در اين صورت ممكن است فيلد متعلق به جدول ديگري باشد و براي ركورد هاي جدول موجود كاربرد ندارد بنابراين كاربران همواره آن را خالي مي گذارند.
· شما تعداد زيادي جدول داريد كه داراي فيلدهاي مشترك مي باشند. براي مثال ، شما جداولي براي فروش فروردين (FarSales) ، فروش ارديبهشت(OrdSales) و ... داريد و يا دو جدول جداگانه براي ثبت اطلاعات مشتريان محلي (Local Customers) و مشتريان دوردست (Remote Customers) ايجاد كرده ايد كه دقيقا شامل اطلاعات يكساني مي باشند.در اين حالت كليه جدول مشابه (مرتبط با يك موضوع) را يكي نموده و اگر نياز بود فيلدهاي جديدي را براي تشخيص تفاوتها ايجاد نماييد بطور مثال كليه اطلاعات با موضوع فروش را در يك جدول با عنوان فروش (Sales) ذخيره نموده و يك فيلد تحت عنوان ماه فروش (Month) نيز به جدول اضافه نماييد تا فروش ماههاي مختلف قابل تشخيص باشد.
خوب دوستان اينم از اين قسمت – سري بعد ادامه اين مطلب رو با هم مرور مي كنيم
اميدوارم از اين مطالب استفاده كنيد و براتون مفيد باشه لطفا نظرات اصلاحي و تكميلي خودتون رو در قسمت نظرات بگيد
و من ا... التوفيق – مدير سايت
درباره من : من مهدی امینی متولد 1352 در حدود 15 سال در زمینه مختلف مرتبط با پروژه های نرم افزاری فعالیت دارم عمده فعالیتهای جاری اینجانب در خصوص مدیریت پروژه های نرم افزاری . طراحی سیستمی و فرایندی فعالیتها و مدیریت تیمهای طراحی و برنامه نویسی می باشد.