۱۳۸۸ بهمن ۷, چهارشنبه

ساعت تحويل پروژه


تحويل پروژه پنج شنبه مورخ 88/11/08 مي‌باشد.
ساعت 10 تا 12 پروژه درس ساختمان داده و ساعت 12 تا 15 پروژه درس پايگاه داده تحويل گرفته مي‌شود. كليه دانشجوياني كه مي‌خواهند پروژه تحويل دهند براي درس ساختمان داده لازم است ساعت 10 و براي درس پايگاه داده لازم است ساعت 12 حضور داشته باشند.
_________________
دانشجويان درس پايگاه داده كه به صورت غير حضوري تحويل مي‌دهند تا ساعت 12 ظهر پنج شنبه مورخ 88/11/08 فرصت دارند كه اطلاعات زير را ايميل نمايند.
پايگاه داده
برنامه
يك فايل word حاوي توضيحات كامل راجع به تمامي بخش‌هاي پايگاه داده مثلا table ها، Trigger ها، Stored Procedureها .
ايميل هاي پس از آن تاريخ خوانده نشده و حذف مي‌گردند.

۱۳۸۸ بهمن ۳, شنبه

تحويل پروژه


تحويل پروژه درس ساختمان داه و درس پايگاه داده روز پنج شنبه مورخ 88/11/08 مي‌باشد. ساعت تحويل پروژه متعاقبا اعلام خواهد شد.
دانشچويان پايگاه داده كه پروژه را كلا تحويل نمي‌دهند و دانشجوياني كه به صورت حضوري تحويل نمي‌دهند لازم است حتما تا دوشنبه از طريق پيام همين پست، اطلاع رساني كنند تا بتوانم ساعت تحويل پروژه را مشخص نمايم.

۱۳۸۸ دی ۲۸, دوشنبه

تمامي دانشجويان

هر گونه ايميل براي من با محتوي پرسش در مورد نمره نهايي درس، اعتراض به نمره، تقاضا براي تصحيح خوب برگه، اعلام هر گوه مشكلات دانشجويي براي خواندن درس در شب امتحان و روزهاي ماقبل و .... منجر به كسر 2 نمره از نمره نهايي دانشجو خواهد شد.

هر گونه تماس با همراه اينجانب مرتبط با نمره و امتحان، منجر به كسر 5 نمره خواهد شد.

هر گونه تلاش براي پيدا كردن پارتي و دوست و آشنا جهت اخذ نمره‌اي بهتر، باعث كسر 5 نمره خواهد شد.

هنوز نمرات اعلام نشده است. پس از اعلام، هر گونه اعتراض فقط از طريق سايت دانشجويي دانشگاه مقدور مي‌باشد.

۱۳۸۸ دی ۱۶, چهارشنبه

مهندسي نرم‌افزار


يه سري سوالات سر كلاس در مورد نمودارهاي UML در RUP مطرح شد كه دنبال جوابش بودم. اين نكات رو لازم نيست كه در امتحان اگه سوالي در اين مورد بود حتما رعايت كنيد، چون سر كلاس توضيح داده نشده، اما بايد بدونين.
_________________
1. وجود حلقه در Activity Diagram مثلا در مورد پر كردن يه فرم و بررسي اون كه يه حلقه تشكيل داده بودين.
https://www.ibm.com/developerworks/forums/thread.jspa?threadID=314493
نظرات در اين مورد متفاوته.
به نظر مياد كه اگه فرم رو همون‌جا مسئول بررسي مي‌كنه و اگه اشتباه باشه برمي‌گردونه و همونجا مراجعه كننده دوباره تحويل مي‌ده و باز بررسي مي‌شه وجود حلقه خوبه چون نشون مي‌ده كه اين كار هنوز تموم نشده. اما اگه فرم رو پر مي‌كنه و ميره و بعد از مدتي فرم توسط مسئول بررسي مي‌شه و اگه مشكلي داشته باشه به فرد گفته مي‌شه تا بياد و فرم رو اصلاح كنه، اون وقت حلقه نبايد گذاشت چون اون Use Case در واقع كامل شده.
اگر Use Case‌شما فقط همين پر كردن فرم بوده كه همه چي تمومه در غير اين صورت يعني اگه پر كردن فرم، بخشي از يك Use Case بوده، اون وقت دو راه دارين:
يك راه اينكه Use Case رو از همون اول به دو تا Use Case‌بشكنين؛ يكي واسه پر كردن فرم و ديگري واسه ادامه كار.
راه ديگه اينكه Use Case پر كردن فرم رو به عنوان يه Include Use Case واسه Use Case‌ اصلي قرار بدين. اون وقت در Activity Diagram واسه Use Case اصلي يك State ايجاد مي‌كنين كه البته نمونه اين رو توي كلاس نداشتيم كه غير از Start State , End State حالت‌هاي ديگه‌اي داشته باشيم. بهرحال، با پر كردن فرم به اون State مي‌رين و از اون State ادامه كار رو انجام مي‌دين.
در اين حالت يه Activity Diagram جداگانه واسه اون Included Use Case رسم مي‌كنين كه اون دياگرام Start State‌ نداره و حالت شروعش همين حالتي يه كه در دياگرام Use Case اصلي ايجاد كردين!! سخت شد؟! آره، توضيحش به شكل غيرحضوري راحت نيست!
_________________
2. واسه Use Case هاي Include يا Extend شده جداگانه Activity Diagram رسم مي‌شه؟
اگه Use Caseاي كه مثلا include كردين، كوچكه و كار زيادي نداره، ميشه واسش Activity جداگانه‌اي رسم نكرد، اما اگه كارش زياده مي‌شه براش جداگانه Activity Diagram رسم كرد كه البته اون دياگرام Start State نخواهد داشت و توضيحش در پاسخ سوال 1 داده شد.
_________________
3. يك سيستم كامپيوتري رو مي‌توان در يك Use Case Diagram به عنوان worker در نظر گرفت؟
نه، نمي‌تونين.
_________________
4. براي اعلام شرط‌ها در Activity Diagram آيا لازمه كه قبلش يه عمل بگذاريم كه مثلا بررسي فرم يا چيزي مشابه اين كه كار شرط رو نشون بده؟
بله.
_________________
5. چند worker با هم كار رو انجام مي‌دن و ممكنه هر كدوم شروع كننده كار باشن، در Activity Diagram كه رسم مي‌شه، Start State رو كجا قرار بديم؟
يك worker جديد ايجاد مي‌كنين كه اون چند تا worker از اين worker ارث بري دارن (رابطه بين اونها رو از نوع generalization برقرار مي‌كنين). حالا در Activity Diagram حالت شروع رو واسه اين worker‌جديد قرار مي‌دين.
_________________
6. يك فرايند رو چندين worker مي‌تونند انجام بدن، يا يك فرايند در داخل Use Case هاي مختلف هست، اون رو بايد همش تكرار كنيم؟
هر وقت چنين تكرارهايي دارين، مانند مثال بالا، بايد از ارث بري استفاده كنين و كلاس كلي تري تشكيل بدين كه كلاس‌هاي ديگه از اون ارث بري دارن ( مثلا واسه انباردار، مسئول تداركات، .... كه همه عمل خريد رو انجام مي‌دن ميشه يك worker ايجاد كرد به نام مثلاخريد كننده كه عمل خريد رو انجام مي‌ده، حالا worker هاي انباردار، مسئول تداركات و .... از اون ارث بري دارند و بنابراين كار اون رو قاعدتا مي‌تونن انجام بدن.

۱۳۸۸ دی ۱۲, شنبه

مثال‌هايي از نرمال سازي

مهندسي نرم‌افزار


سر كلاس در مورد نمره پايان ترم بحث شد كه لازمه اينجا هم بگم:

  • 8 نمره، پروژه‌هاي هر تيم
  • 2 نمره، تحقيقات هر تيم
  • 5 نمره امتحان پايان ترم سوال از پروژه هر گروه
  • 5 نمره امتحان پايان ترم سوال از پروژه گروه‌هاي ديگر
سوالات پايان ترم مي‌تواند در قالب مطالب ارائه شده سر كلاس در powerpoint، يا پيرامون ارائه ديگر دانشجويان باشد.

نمرات ديگري نيز نقش دارند:
  • سه نظرخواهي از شما انجام شده است كه شركت در هر نظرخواهي حداقل 0.25 نمره خواهد داشت.
  • كوئيزي كه داده‌ايد.
  • فعاليت سر كلاسي كه تشخيص دهنده آن فقط من هستم.
بنابراين بارم‌هاي ذكر شده تقريبي است.
___________________________
بنا به خواسته تعدادي از دانشجويان، كوئيز از نمرات نهايي حذف شد.

۱۳۸۸ دی ۱۱, جمعه

پايگاه داده


كلاس پايگاه داده ينج شنبه مورخ 88/10/10 برگزار شد. مطالب تا آخر فصل 7 گفته شد. امتحان نيز تا همان بخش خواهد بود. مثالهاي عملي از نرمال فرمها تا 5NF گفته شد. براي امتحان از اين بخش حتما سوال خواهد آمد (حداقل 3 نمره از 20 نمره). كتاب مقسمي را نيز در اين مبحث حتما مطالعه كنيد.