تبليغاتX
سماموس
 
  صفحه اصلی |  تماس با نویسنده  

 اولین جلسه گروه نشریه شی گرایی

سه شنبه سی ام آبان 1385
بسیاری از دوستانی را که در چند روز اخیر ملاقات کرده‌ام، گله‌مند بودند که چرا دیر به دیر مطلب جدیدی را  به وبلاگم اضافه می‌کنم. دلیل آن این است که "اوضاع من بین عالی و محشر در نوسان است"[نقل قول از آقای احسانی]. از تأخیری که در بروزرسانی وبلاگم دارم، عذرخواهی می‌کنم.
خیلی سعی می‌کنم که بروزرسانی وبلاگ طبق قانون پارتو در بیست درصد کارهایم قرار گیرد، ولی خیلی اوقات این امر مقدور نمی‌گردد.
موضوع دیگر آن است که نوشتن مطلبی که برای خواننده متخصص، باب جدیدی را باز کند، کار راحتی نیست. بگذریم.

شنبه هفته جاری جلسه نشریه شیءگرایی با حضور دوستان جدید در محل شرکت مدار گسترش  تشکیل شد.
این عزیزان عبارت بودند از:

  1. خانم مهندسی صبا بزرگی
  2. خانم مهندس نیوشا قریشی
  3. خانم مهندسی حمیده مطهریان
  4. آقای مهندس مهدی هنرمند

 غایبان نیز عبارت بودند از:

  1. آقای مهندس ابوالفضل هادی (به صورت پیش فرض، غایب فرض شود)
  2. آقای مهندس علیرضا خیرخواه

بین این که اننتشار شماره اول به دلیل افزایش کیفیت آن به تأخیر انداخته شود  و این که با هر کیفیتی در تاریخ مقرر انتشار یابد، تصمیم جمع این شد که نشریه در تاریخ مقرر منتشر گردد(یعنی فردا).
تصمیم دیگری که اتخاذ شد این بود که برای شماره بعد، جلسات حضوری بیشتری داشته باشیم تا هماهنگی‌ها، سریع‌تر و راحت‌تر انجام گیرد.
خانم مهندس بزرگی به عنوان دبیر انتخاب گردید که مسئولیت هماهنگی هیأت تحریریه و داوران را به عهده  خواهد داشت.
امیدوارم که شماره به شماره، کیفیت نشریه بهتر و بهتر گردد.

  ساعت 20:33 به قلم مهرداد       

 جديدترين گفت وگو با آلوين تافلر:نگاه تازه به آينده

جمعه نوزدهم آبان 1385
آلوين تافلر را از زمانی که دانشجو بودم، به ياد دارم. زمانی که استادم عزیزم، آقای مهندس ابطحی به کرات از  ایشان نقل قول می‌کرد. کتاب معروف موج سوم اثر ارزنده این نویسنده و اندیشمند بزرگ است.
حين گشت‌زنی در اينترنت به جديدترين گفت وگو با آلوين تافلر:نگاه تازه به آينده برخورد کردم و آن را مطالعه کردم. مطالعه آن را به شما نیز توصيه می‌کنم.

  ساعت 22:1 به قلم مهرداد       

 دعوت به همکاری در شرکت مدار گسترش فناوری

دوشنبه پانزدهم آبان 1385
شرکت مدار گسترش فن‌آوری که من عضو کوچکی از آن هستم، برای تيمهای توسعه سيستمهای مبتنی بر J2EE و NET. خود از عزيزان باتجربه و بادانش دعوت به همکاری می‌نمايد. متن آگهی دعوت به همکاری شرکت به شرح زير است:

دوست عزيز سلام
ما در جستجوی همکارانی با استعدادهای متنوع، خلاق، دارای مهارتهای چندگانه و برخوردار از يک يا چند مورد از شرايط زير هستيم. 

  • داراي توانايی در تحليل، طراحی، پياده‌سازی و آزمون سيستمهای نرم‌افزاری (J2EE  يا NET.)
  • دارای تجربه در توليد سيستمهای مبتنی بر تکنولوژی‌های .NET يا J2EE در يکی از سمتهای تحليل‌گر، طراح، برنامه‌ساز و آزمونگر
  • دارای روحيه تحقيق و پشتکار در حصول به نتيجه مطلوب
  • علاقمند به فراگيری مباحث جديد در حوزه مهندسی نرم‌افزار

شما بايد به عنوان یک عضو، واقعاً در خدمت تيم باشيد. مهارتهای عالی در زمينه روابط فردی و هم چنين انگيزه برای کار در يک محيط مشارکتی داشته باشيد.ما دوست داريم با شما طولانی مدت و به عنوان يک هم‌تيمی تمام وقت همکاری نماييم.
شرايط و مشخصات خود را به آدرس info@itorbit.net بفرستيد و يا به سايت ما www.itorbit.net  مراجعه نماييد.
شماره تلفن را ضميمه کنيد. ما به همه تقاضاها پاسخ خواهيم داد.

به اميد ديدارتان در شرکت مدارگسترش فناوری

  ساعت 21:35 به قلم مهرداد       

 يکی از بهترين لحظات کاری

دوشنبه پانزدهم آبان 1385
کارهايی که در طول روز انجام می‌دهم، به خصوص بخش فنی آن، قشنگ و دوست داشتنی است.
اما يکی از بهترين لحظاتم در طول روز، زمانی است که با آقای مهندس رهنمافر، متدولوژی بذرافشانی(ITO Seeding) را برای ديگران از دوستان گرفته تا شرکای تجاری و نيز مشتريان ارائه می‌دهيم.
اين متدولوژی، هر چند ايده‌های بکری در زمينه توليد نرم‌افزار دارد اما متدولوژی توليد نرم‌افزار نيست، بلکه روشی است جهت حل مشکلات ورود نرم‌افزار و تکنولوژی اطلاعات به سازمان.
اين متدولوژی که ماحصل کار همکاران عزيزم در شرکت مدار گسترش فن‌آوری (IT Orbit) است، برگرفته از تجارب بومی و نيز تفکرات علمی و تحت تأثير نگاه نوينی به رابطه نرم‌افزار و سازمان است.
يکی از مشکلاتی که ما در کشور داريم، ورود تکنولوژی‌هايی است که در اثر تبليغات وارد کشور می‌شوند و بدون آن که دانش استفاده از آنها و نيز فرهنگ لازم جهت بهره‌گيری از آنها، وارد گردد تنها خود محصول وارد کشور می‌شود. در نتيجه رقابت ما تنها بر سر اين است که ما
فلان تکنولوژی را بيشتر می‌دانيم يا تجربه استفاده از آن را داريم. هر از گاهی يکی از اينان، مد روز می‌شود و ما که تمامی نظراتمان مبتنی بر "شنيده‌ها و برداشتهای شخصی" است، آنها را علم می‌کنيم و روز ديگر آن را که در اثر کاربری نادرست، از مد افتاده، دور می‌اندازيم.
اما متدولوژی و روش بذرافشانی (ITO Seeding)  به هيچ عنوان اين گونه نيست. يعنی اين گونه نيست که روشی موجود با رنگ و لعاب به نامی ديگر ارائه شده باشد. از اين رو لذت ارائه آن برای من و همکارانم دو صد چندان می‌شود و به خصوص وقتی که همه مخاطبين ما را تشويق به ادامه راهی که در پيش گرفته‌ايم، می‌نمايند و با نظرات تکميلی خود به بهبود آن کمک می‌نمايند.
خيلی دوست دارم زمانی برسد که شرکت بتواند ايده آن را انتشار دهد تا دانشگاه‌ها و مراکز تحقيقاتی و نيز تيم‌ها و شرکتهای نرم‌افزاری نيز از آن بهره‌مند شده و آن را بهبود داده و به تکامل برسانند و در پروژه‌های بهبود سازمانی از ان استفاده نمايند. تنها مانع سر راه انتشار آن، نداشتن فرصت کافی جهت تهيه منابع قابل ارائه است و نه چيز ديگر.
به اميد آن روز.

  ساعت 21:32 به قلم مهرداد       

 معماری نرم‌افزار - بخش دوم

دوشنبه پانزدهم آبان 1385
هر چقدر منتظر ماندم تا عزيزان راجع به مبجث معماری نظری بدهند تا به بهانه آن، مباحث را از سر بگيرم، نظری نيامد که نيامد. انگار دوستان علاقه‌ای به اين بحث ندارند يا شايد ....
 به هر حال سعی می‌کنم اين نوشته‌ها را تا تکميل شدن ادامه دهم. برگرديم به بحث اصلی.
برای اين که معماری نرم‌افزار را بتوان مورد استفاده قرار دهيم و با آن اخت بگيريم، نیاز داریم تا تکليف چند  موضوع را روشن کنيم:
1- تعريف معماری نرم‌افزار چيست؟
2- چرا به معماری نرم‌افزار نياز داريم؟
3- معماری نرم‌افزار تحت تأثير چه چيزهايی است؟
4- معماری نرم‌افزار روی چه چيزهايی تأثيرگذار است؟
5- چگونه به يک معماری نرم‌افزار خوب (مطلوب) دست پيدا کنيم؟
5- معماری نرم‌افزار را چگونه نمایش دهيم؟
6- کدام فرآيند توليد نرم‌افزار، مفهوم معماری نرم‌افزار را در خود به وضوح بيان کرده و ما را مجبور به انجام آن می‌کند؟

بخش اول: تعريف معماری نرم‌افزار
واقعيت اين است که تعاريف متفاوتی در کتابها و منابع مختلف از معماری نرم‌افزار ارائه شده است. اين مفهوم در انستيتو مهندسی نرم‌افزار دانشگاه کارنگی‌ملون به بلوغ رسيد و پس از آن توسط ديگران بسط داده شد.
وقتی صحبت از معماری نرم‌افزار می‌شود، اولين چيزی که می‌شنويد، مبحث لايه‌بندی(Layering) است. تا چند سال پيش، کلمه معماری معادل سيستمهای دو لايه و سه لايه بود و امروز سيستمهای سه لايه و گاه پنج لايه و گاه چهار به علاوه يک لايه و گاه برای هم‌خوانی با ضرب المثل معروف، به هفت لايه نيز منجر می‌شود.(آفتابه، لگن هفت دست. ...)
اما آيا واقعاً معماری جز لايه‌بندی، چيز ديگری نيست؟
در جواب اين سوال، دوستان موارد ديگری را نيز مطرح می‌کنند و آن مسائلی مثل مانايی(Persistance)، تراکنشها (Transaction) و از اين قبيل است.
خوب سوال ديگری که مطرح می‌شود آن است که اگر مسائل مطرح شده بالا شامل مانايی، تراکنش و از اين دست را برای يک سيستم حل کنيم، آيا برای سيستم ديگر، بحث معماری نخواهم داشت؟ آيا می‌توانم ادعا کنم که معماری نرم‌افزار را يک بار برای هميشه حل کرده‌ام؟
لطفاً جوابهايتان را برايم ارسال کنيد. (آزموده را آزمودن خطاست )

برگرديم به بحث خودمان، تعريف معماری نرم‌افزار چيست؟ در اينجا از مراجع موجود استفاده کرده و تعاريفی ارائه می‌دهيم.
"معماری نرم‌افزار برنامه يا سيستم کامپيوتری، در برگيرنده ساختار سيستم است که شامل مولفه‌ها، خصوصيات قابل رويت مولفه‌ها و روابط بين آنها می‌باشد"[سايت SEI(انستيتو مهندسی نرم‌افزار)].
همچنين "معماری نرم‌افزار شامل:
- تصميم‌گيری‌هايی در مورد سازمان سيستم نرم‌افزار
- انتخاب عناصر ساختاری و واسطهای آنها به نحوی که سيستم از ترکيب رفتار اين عناصر شکل گرفته باشد.
- سازمان‌دهی عناصر ساختاری و رفتاری در قالب زيرسيستمها
- سبکهای معماری مورد استفاده
علاوه بر ساختار و رفتار سيستم، معماری نرم‌افزار شامل سبک و سنگين کردن و پوشش دادن مواردی از قبيل سهولت کاربری، کارکردی، کارايی، انعطاف، استفاده مجدد، سهولت درک و فهم، محدوديتهای اقتصادی و تکنولوژيکی نيز می‌گردد." [RUP]

در اين مورد بيشتر توضيح خواهم داد.

 

  ساعت 21:30 به قلم مهرداد       

 قانون پارتو و معماری نرم‌افزار (Software Architecture and Pareto's Principle) - بخش اول

پنجشنبه یازدهم آبان 1385
بالاخره نسخه شماره صفر نشريه امروز با يک روز تأخير انتشار يافت. در دو هفته‌ اخیر، روزهای پرمشغله‌ای را پشت سر گذاشتم و نتوانستم نه در وبلاگم مطلب جديدی بنويسم و نه نشريه شیءگرايی مدار را سر وفت منتشر کنيم.
از همه دوستان و خوانندگان عزيز بابت تأخيرهای مذکور عذرخواهی می‌کنم.

ايده‌ام اين است که درباره اصول فرآيندهای نرم‌افزار که در مطالب قبلی آنها را فهرست کردم، در ادامه توضيحاتی ارائه دهم. برای اين کار ابتدا به سراغ معماری می‌رويم. برای شروع بحث قانون پارتو، اين قانون زيبا و دوست‌داشتنی را نقل خواهم کرد.
"اين قانون بيان مينمايد كه ۸۰ درصد از نتايجی كه شما بدست می‌آورد نتيجه ۲۰ درصد از فعاليت‌های شماست. بعبارت ديگر بواسطه عدم تعيين اهداف و برنامه ريزی دقيق، زمانها را از دست داده و دچار كمبود وقت و زمان كه بزرگترين سرمايه هر فردی است خواهيم شد. [http://mohammadtaha.persianblog.com]"
"در سال 1906 اقتصاددان ايتاليايي ويلفردو پارتو[1]  يك فرمول رياضي براي توصيف توزيع نابرابر ثروت در كشور خود ابداع كرد. او مشاهده كرده بود كه بيست درصد از مردم بيش از هشتاد درصد ثروت را در اختيار دارند. در سالهاي پاياني دهه 1940، دكتر ژوزف جوران[2] به اشتباه قانون 20/80 را به پارتو نسبت داد و آنرا اصل پارتو خواند (كه نه يك اصل بلكه يك حقيقت اجتماعي در آن سالهاي ايتاليا بود). ... س از اينكه پارتو مشاهدات خود را انجام داده و فرمول خويش را ابداع نمود، بسياري از محققين پديده هاي مشابهي را در زمينه تخصصي خويش مورد بررسي قرار دادند. پيشتاز مديريت كيفيت دكتر ژوزف جوران كه در سالهاي دهه 1930 و 1940 در آمريكا زندگي مي كرد، يك اصل جهانشمول را شناسايي كرد كه آنرا “اندكهاي حياتي و بسيارهاي كم اهميت[3]” ناميد و بصورت مكتوب در آورد. فقدان دقت كافي در كار اوليه اي كه  انجام داده بود باعث شد، آنرا بسط نظرات اقتصادي پارتو در زمينه اي وسيعتر بدانند. نام اصل، پارتو باقي ماند، شايد به اين علت كه از نامگذاري دكتر جوران براي گوش خوشايندتر بود.
در نتيجه، مشاهدات دكتر جوران از “اندكهاي حياتي و بسيارهاي كم اهميت”، يعني اين اصل كه بيست درصد چيزي اغلب مسئول 80 درصد نتايج است، تحت عنوان اصل پارتو يا قاعده 20/80 باقي ماند.
قاعده 20/80 بدين معنا است كه در هرچيزي، ميزان اندكي (20 درصد) داراي اهميت حياتي و بسياري (80 درصد) كم اهميت و يا داراي اهميت ناچيز است. در مورد پارتو اين قاعده بدين معناست كه  20 درصد مردم 80 درصد ثروت را در اختيار دارند. در كار اوليه جوران چنين بيان شده است كه 20 درصد نواقص باعث 80 درصد مشكلات مي شوند. مديران پروژه ها مي دانند كه 20 درصد كار (اولين ده درصد و آخرين ده درصد) 80 درصد زمان و منابع را صرف مي كند. مي توانيم قاعده 20/80 را در مورد  تقريباً هرچيزي بكار ببريم، از علم مديريت گرفته تا جهان فيزيك.
بعنوان مثال، شايد توجه كرده باشيد كه 20 درصد از لوازم شما بيش از 80 درصد فضاي انبار خانه را اشغال مي كنند و نيز 80 درصد لوازم را 20 درصد از فروشندگان عرضه كرده اند. همچنين 80 درصد فروش ناشي از فعاليت 20 درصد كاركنان بخش فروش است. بيست درصد كاركنان شما مسئول 80 درصد مشكلات هستند اما بيست درصد ديگر، هشتاد درصد توليد را فراهم مي كنند. اين قاعده در هر دو مورد صادق است.
 اصل پارتو و يا بعبارتي قاعده 20/80 مي تواند بعنوان يك يادآوري روزانه در خدمت ما باشد و بما يادآور شود كه 80 درصد زمان و انرژي خود را بر 20 درصد آنچه واقعاً مهم است، متمركز كنيم. تنها هوشمندانه كار نكنيد، بلكه هوشمندانه بر روي چيزهاي درست و مهم كار كنيد. [http://www.tdins.org/featured/2/pareto.htm]"

اما در نرم‌‎افزار:
80% کارمهندسی صرف 20% درصد نيازمندی‌ها می‌شود.
80% هزينه صرف 20% مؤلفه‌های سيستم می‌شود.
عامل 80% خطاهای سيستم نرم‌افزاری، 20% مؤلفه‌ها هستند.
عامل 80% دوباره‌کاری‌ها و دورريختنی‌ها تنها 20% تغييرات هستند.
80% درصد منابع سيستم (شامل حافظه، بانک، زمان و ..)صرف 20% مؤلفه‌ها می‌شود.
80% درصد پيشرفت پروژه توسط  20% تيم انجام می‌شود.

اگر اين 20 درصدها را کنار هم بگذاريد(نيازمندی‌ها، مؤلفه‌ها، آدمها و ...)، موضوعات مهم سيستم و پروژه نرم‌افزاری مشخص می‌گردد. اين موضوعات، موضوعات مرتبط با معماری هستند.

آیا شما مثالی برای موارد بالا دارید؟ برایم ارسال نمایید.  منتظرم

  ساعت 19:13 به قلم مهرداد       

 زمان انتشار نشریه الکترونیکی شیءگرايی مدار

دوشنبه یکم آبان 1385
ديروز با آقای مهندس هادی تا دير وقت جلسه داشتيم و موضوع جلسه ما چيزی نبود جز نشريه شیءگرايی مدار.
خلاصه‌ای از مباحث مطرح شده در جلسه را در اين جا آورده‌ام.
ايده آقای مهندس هادی اين بود که مانند MSDN Magazine، نشريه دارای ستونهای ثابتی باشد که هر ماه، مطالبی در آن آورده می‌شود، در کنار آن، هر شماره را به يک موضوع ويژه اختصاص دهيم و مطالبی در راستای موضوع، افزون بر ستونهای ثابت ارائه دهیم.
بخش‌های ثابت پيشنهادی نشريه به قرار زير هستند:

  • مفاهيم شیءگرا (Object Orientation Concepts)
  • طراحی و معماری (Software Design and Architecture)
  • متدولوژی (Software Process or Methodology)
  • NET.
  • J2EE
  • معرفی کتاب
  • مصاحبه‌ها

(اگر شما هم ايده‌ای داريد، من را مطلع نماييد)

هم چنين موضوعات ويژه پيشنهادی نشريه نيز به شرح ذيل می‌باشند:

  • کاربردهای الگوهای طراحی (Using Design Pattern)
  • Code Generation
  • Agile Methodology
  • بومی‌سازی RUP
  • Requirements
  • ...

نسخه اول نشريه با موضوع ويژه کاربردهای الگوهای طراحی انتشار پيدا خواهد کرد.

(شما هم می‌توانيد ليست را کامل يا الويت‌بندی نماييد)

در مورد زمان انتشار نشريه نيز مشورت کرديم و توافقات زير حاصل گرديد.
قرار شد تا تاريخ 10 آبان، شماره صفر نشريه انتشار يابد که در آن سخن سردبير و نيز توضيحات مسوول هر بخش درباره محتوای آن، ارائه گردد. 
مطالب شماره نخست نشريه تا تاريخ 20 آبان گردآوری خواهد گردد و در اول آذر، اولين شماره نشريه انتشار پيدا خواهد کرد.
 

اگر شما عزيزان برای قبول مسووليت بخشهای مذکور داوطلب هستید یا علاقمند به ارسال مقاله‌های مفید برای نشریه می‌باشید، اعلام بفرمایید تا هماهنگی‌های لازم انجام شود.


 

  ساعت 18:58 به قلم مهرداد