الثلاثاء، 18 يونيو 2013

موقع مكتبة كتب



تحليل الأنظمة وإعادة  بنائها
كثيرا ما تتردد على مسامعنا كلمة تحليل الأنظمة ولكن أنا اجزم إننا نمر عليها مر الكرام و لا نفهم شيء أو نحسها بشيء من التعقيد  لكن هنا سوف نعيدها ونشرحها ونفصلها  لكن بنكهة برمجية سلسة جدا على نظام معين نحن نختاره نحلله ونعيد بنائه وتصميمه . إذن تحليل الأنظمة هي عملية دراسة مكونات نظام معين وكيف تم بنائه عن طريقة معرفة سلوكه أو طريقة عمله وبناء نظام مشابه  له أو نظام حماية منه .
تستخدم تحليل الأنظمة   دائما في تحليل البرامج إما لإعادة بناء نضام مشابه وهو ما سنشرحه هنا او لبناء نضام دفاع ضد البرنامج أو النظام ويفاد من هذا التحليل في عدة نواح منها

مثلا لو أصيبت الحاسبة بفايروس محطم خطر ليس له علاج في معالجات الفايروسات  ولدينا كثير من المعلومات المهمة يجب أن تبقى ولا تزول لكن الفايروس سيحطمها .في العراق عندنا أول أمر سنفعله هو إعادة تهيئة الحاسوب عمل (format) له وهو خطأ كبير جدا لان في الشركات الكبرى قد تصاب أحدى الحاسبات التي تحمل ألاف من المعلومات فلن نستطيع أن نعيد تهيئتها نحتاج لفريق يحلل نظام الفايروس وطريقة عمله حتى يبني نضام دفاع أو تخلص من . لذالك تحليل الأنظمة هو من أهم الأمور في عالم البرمجيات.؟


ما سنشرحه هو موقع معين نحلله ونحلل مكوناته وبعدها نبني نظام مشابه له في عمله. سنأخذ موقع كتب هذا رابطه


ندرسه ونحلله ونبني موقع مشابه له  بعد أذن أخوتي في موقع كتب لأنني رأيت في هذا النظام كثير من النقاط المهمة وبنفس الوقت طريقة تحليله ستكون سهلة نوعا ما وجميلة أذن في البداية ادخل الموقع وتصفحه جيدا حتى تفهم الدرس بشكل جيد

بعد تصفحنا جيد للموقع من ناحية قواعد البيانات نرا انه سيعتمد على ست جداول في الموقع كله وهي 
1. DepartInformation  يحتوي على اسماء الاقسام الاساسية وعدد الكتب  NumberBook في كل قسم الذي قيمته التلقائية نجعلها صفر حتى عندما نضيف كتب جديدة يجمعها من قيمة ولا يخطئ 




2.SubDepartInformation يحتوي على الاقسام الفرعية وعدد الكتب    NumberBook في كل قسم الذي قيمته التلقائية نجعلها صفر مع وجود حقل MasterDepart يمثل DepartIDNumber  الخاص بالقسم الاساسي   الذي سينتمي اليه هذا القسم الفرعي في كل سجل حتى نستطيع اضافة اقسام فرعية كثير ضمن كل قسم اساسي وسهولة وصول لها


2.AutherBookInfo يحتوي على معلومات عن كل كتاب وهي اسم الكتاب ونبذة عن محتواه واسم المؤلف بريده الالكتروني  وحقل اسمه DepartID يحتوي  IDSub  الخا ص  بالقسم الفرعي الذي ينتمي اليه وحقل MasterDepart يحتوي  DepartIDNumber الخاص بالقسم الاساسي الذي ينتمي اله حتى نستطيع عرض الكتاب في القسم المحدد بسهولة . ورابط الكتاب وعدد مرات تحميل الكتاب التي نجعل قيمته الافتراضية صفر وتاريخ اضافته وحقل  ItActive هوا لفعالية الكتاب حيث عندما ترفعه تلقائيا يكون غير فعال والمدير عندما يتصفح الكتب الجديدة يجعله فعال لكي يحمله بقية المستخدمين للموقع اي في حالة رفعنا للكتاب لا يراه المتصفحين الا بعد موافقة المدير





4. RegisterCount يحتوي على حسابات المستخدمين وهي اسم المستخدم كلمة مروره بريده الالتكتروني نوع حسابه حيث يوجد نوعين من الحسابات حساب مدراء يتحكمون بالموقع وحساب اشخاص منتمين للموقع  وحقل AdminAdd يمثل من من المدراء قام باضافة هذا المدير هذه مسائل حماية لان في الموقع فقط المدير يستطيع اضافة مدير وحذف مدير


5.CallMe تحتوي على  معلومات المراسلة للموقع وهي عنوان الرسالة ومحتواها واسم المرسل وبريده وتاريخ الارسال وحقل IsReaded تبين هل قرئت الرسالة ام لا حتى عندما نريد عرض فقط الرسائل الجديدة ل يعرض لنا رسالة قمنا بقرائتها


6.SpetailWebSite يمثل المواقع المهمة المضافة للموقع تفيد المستخدمين تحتوي على اسم الموقع وعنوان رابطه ونوع الرابط هل  هو موقع عربي ام اجنبي
الان نكون قد انتهينا من تصميم قاعدة البيانات لنتحدث عن الصفحات



هذا هوا التصميم الجديد لموقع كتب


الواجهة  الاساسية للموقع تحتوي على روابط تؤدي الى بقية الصفحات وفقرة الكتب المضافة حديثا هي اداة Datagrid تعرض فيها البيانات فقط اخر ست كتب  فعالة مضافة الى الموقع  متصلة باداة SQLDataSource باستخدام فيها SQL التالية لجل البيانات
استخدمنا CAST لكي نحول بيانت حقل BooksID  من ارقام الى نصوص حتى  ندمجها مع رابط الصفحة BookView.aspx ك QueryString
ونجعلها كرابط عندما يضغط المستخدم على اسم الكتاب ينتقل الى الى الصفحة  BookView.aspx حاملا معه عنوان صف الكتاب  BooksID في الرابط حتى تلك الصفحة

في صفحة BookView  تستخدم 
Request.QueryString("ID")

حتى تجلب عنوان صف الكتاب لكي تجلب معلوماته وتعرضها
حيث يكون كود aspx الخاص باداة Datagrid كلتالي فقط هذا جزء خاص  Columns










صفحة اضافة كتب جديدة



صفحة المواقع المهمة 




اقسام المكتبة الاساسية

الأقسام الفرعية ضمن الاقسام الاساسية المختارة

الكتب ضمن القسم الفرعي

الواجهة  تحميل الكتاب


الواجهة  تكوين حساب جديد للمستخدمين فقط المدراء يضهر لهم نوع الحساب


الواجهة  مراسلة الموقع

الواجهة  البحث في الموقع








الأدارة الموقع : فقط المدراء بحساباتهم   تظهر لهم  هذا  الاجراء  عند الدخول الى الموقع بحسابهم 
وهذه الصفحة التي تحتوي على تحكم كامل  بالموقع 

احدى الحسابات الموجودة تستطيع استخدامها هي
email :hussien89aa@yahoo.com
password:12345
طبعا هذا حساب ادارة تستطيع من خلاله تكوين مدراء جدد للموقع وحذف هذا المدير من حساب مدير اخر


صفحة الادارة تحتوي هذه الصفحة على تحكم كامل بالموقع


ادارة الكتب المضافة الى الموقع اما حذفها او قبولها





ادارة الرسائل المرسلة الى الموقع وقرائتها





ادارة  الاقسام واضافة اقسام جديدة للموقع وتفرعاتها او التعديل على اقسام الموقع




ادارة عمليات التسجيل والحسابات المضافة وحسابات المدراء



ادارة واضافة مواقع مهمة جديدة تفيد المتصفحين للموقع














جاري شرح الموقع بالتدريج


هناك 4 تعليقات:

غير معرف يقول...

ما شاء الله نفسي فكرتي التي بدأتها قبل ثلاث سنوات ولكنه برنامج لسطح المكتب لم أكمله بعد

أخوك : ksalwy

مالكـ يقول...

ماشاء الله
يعطيك العافية
على
الموضوع الرئع

سيف الحسني يقول...

سلام عليكم حسين المشروع اريد افتحه في الفيجوال بيسك لم يفتج لماذا رجا الجواب ابو علي وشكراً

Unknown يقول...

اخي المشروع فيه قاعدة بيانات عليك تشغيلها وربطها بلمشروع عن طريق عبارة الاتصال في ملف
webconfig
وبعدها سيعمل