روندهای اصلی توسعه نرم افزار

  • یوسف مهرداد بی‌بالان

روندهای اصلی توسعه نرم‌‌افزار از ديدگاه Somasegar:

۱-رایانش ابري (Cloud Computing‍)
2-وب به عنوان پلتفرم (The Web as a Platform)
3- رایانش موازي (Parallel Computing)
4- تكثير تجهيزات (Proliferation of Devices)
5- فرايند توسعه چابك (Agile Development Process)
6-توسعه نرم‌افزار توزيع‌شده (Distributed Development)

گزيده:
باد مي‌وزد. مي‌تواني در مقابلش هم ديوار بسازي، هم آسياب بادي. تصميم با توست.

آموخته‌هاي تحليل

  • یوسف مهرداد بی‌بالان

دكتر Schedlbauer استاد دانشگاه بوستون در از ارائه‌هايش با نام Workflow Modeling with UML ، آموخته‌هاي خود را نيز آورده است. مطالب جالبي در آن وجود داشت، هر چند بخش‌هايي از آن تكراري است، اما مطالعه آن خالي از لطف نيست.

– تحلیل کسب و کار، يكي از فعاليت ضروری است
– کاربران نمی‌دانند چه می‌خواهند
– نيازمندي‌ها را تحليل كنيد، فقط آنها را جمع‌آوري ننماييد.
– زياد سوال كنيد اما اين كار را مبتني بر روش و قاعده‌مند انجام دهيد.
– نمودارها را در جلسات بازنگري، تفسير نماييد.
– از پروتوتايپ تصويري (ويژوال) براي جمع‌آوري نيازمندي‌ها استفاده نماييد.
– از تكنيك‌هاي مشاهده، ايفاي نقش و شكاك استفاده نماييد.
– واقع بین باشید: نمي‌توانيد هه چيز (نيازمندي‌ها) را استخراج و جمع‌آوري نماييد و اهميت آنها نيز برابر نيست.
– چابك و فرز باشيد، اما همواره به اندازه كافي دقيق باشيد.
– از ابزار استفاده نماييد.
– مدلسازي را به صورت مشاركتي و تيمي انجام دهيد. (تحليل فعاليتي است گروهي)
– از تخته‌سفيد (وايت بورد) براي فكر كردن و از ابزار براي ثبت كردن استفاده نماييد.
– كار را به صورت تكراري انجام دهيد.
– در هر لحظه تنها به روي يك مورد كاربرد تمركز كنيد.

گزيده:
درس‌هاي زندگي: از کسی که چیزی برای از دست دادن ندارد، بترس.

تولد مبارك

  • یوسف مهرداد بی‌بالان

امروز، روز تولد سماموس است.
بچه‌ها چه زود بزرگ مي‌شوند. البته اين موضوع، نشانه پيرشدن والدين و نزدیکانشان نيز است.

سماموس، تولدت مبارک

گزیده:
درسهاي زندگي: هنگام بازی با بچه‌ها، بگذار تا آنها برنده شوند.

Difference between defect, error, bug, failure and fault

  • یوسف مهرداد بی‌بالان

يكي از عزيزانم فرموده بودند تا تفاوت خطا و ايراد را برايشان توضيح دهم. مناسب ديدم كه اين مطلب را در اين جا نيز ذكر كنم.

Error : A discrepancy between a computed, observed, or measured value or condition and the true, specified, or theoretically correct value or condition. See: anomaly, bug, defect, exception, and fault

Failure: The inability of a system or component to perform its required functions within specified performance requirements. See: bug, crash, exception, fault.

Bug: A fault in a program which causes the program to perform in an unintended or unanticipated manner. See: anomaly, defect, error, exception, fault.

Fault: An incorrect step, process, or data definition in a computer program which causes the program to perform in an unintended or unanticipated manner. See: bug, defect, error, exception.

Defect: Mismatch between the requirements.

Reference:
http://www.cs.utep.edu/sroach/S10-5380/Glossary.pdf
http://software-testing-faq.blogspot.com/2007/08/difference-between-defecterrorbugfailur.html

گزيده:
درسهاي زندگي: شغلی را انتخاب کن که روحت را هم به اندازه حساب بانکی‌ات غنی سازد.

سهم ايران از بازار ICT

  • یوسف مهرداد بی‌بالان

«رشد اقتصادي و توسعه فناوري اطلاعات و ارتباطات (ICT) طي چند دهه اخير به ويژه در كشورهاي در حال توسعه رابطه‌اي تنگاتنگ داشته‌اند.
تاثير فناوري اطلاعات و ارتباطات بر نرخ رشد اقتصادي كشورها هم به طور مستقيم و هم به صورت محرك ديگر بخش‌هاي اقتصادي روزافزون شده است. براساس گزارش انجمن ملي شركت‌هاي نرم‌افزاري و خدمات هند (NASSCOM) بازار اين صنعت از حدود 150 ميليون دلار در سال 1991 به 7/5 ميليارد دلار در سال 2000 ميلادي رسيده است كه از آن ميان 4 ميليارد دلار فقط سهم صادرات نرم‌افزار بوده است.
همچنين نرخ متوسط رشد اين بازار طي دوره مزبور سالانه بيش از 50% بوده است.
براساس گزارش (NASSCOM-MCKINSY) نسكام مكينزي هدف بازار IT هند در سال 2008 حدود 87 ميليارد دلار بوده است كه در چهار زمينه وسيع خدمات IT، توليد نرم‌افزار، خدمات متكي به IT و تجارت الكترونيك سامان يافته است و سهم IT در صادرات هند نزديك 35% رقم خورده است. بانك جهاني اخيرا كتابي تحت عنوان فرصت‌هاي جهاني براي خدمات متكي برIT ا(The Global opportunity In IT- Based Services) منتشر كرده است كه در آن به بازاري شناخته شده با حجم 500 ميليارد دلار اشاره مي‌كند و يادآور مي‌شود كه در سال 2010 تنها 35% از اين بازار تحقق مي‌يابد. اين بازار عظيم فرصتي طلايي را براي كشورهاي در حال توسعه مي‌گشايد.
كشورهايي چون هند در كسب سهم قابل‌توجه از اين بازار از سال‌ها قبل برنامه‌ريزي و اقدام كرده‌اند.
اكنون اين پرسش مطرح است كه چرا كشور ما با اين پتانسيل بازار و نيروي انساني تحصيلكرده از اين بازار عظيم سهمي ندارد. بدون اينكه تاثير منفي تحريم‌هاي طولاني عليه كشورمان را دست كم بگيريم بايد اذعان كنيم كه اين همه ماجرا نيست، بلكه شايد آنچه بيشترين تاثير منفي بر اين حوزه را داشته دولتي بودن و پارادايم دولتي بودن اين صنعت است.
به‌رغم تاكيدات مصرح در برنامه چهارم به‌‌ويژه مفاد ماده 44 آن مبني‌بر وظيفه‌مندي دولت در تضمين دسترسي گسترده، امن و ارزان شهروندان به اطلاعات موردنياز و حمايت از سرمايه‌گذاري و توليد و عرضه انواع محتوا و اطلاعات به زبان فارسي با تكيه بر توان بخش‌خصوصي و تعاوني و همچنين اتخاذ تدابير لازم به منظور كسب سهم مناسب از بازار اطلاعات و ارتباطات بين‌المللي با توسعه مراكز اطلاعات و ارتباطات اينترنتي و توسعه زيرساخت‌هاي ارتباطي با تكيه بر منابع و توان بخش خصوصي و تعاوني و جلب مشاركت بين‌المللي به نظر نمي‌رسد هنوز در اين زمينه به جايگاه درخوري رسيده باشيم.
خوشبختانه در فصل چهارم لايحه برنامه پنجم نيز تكاليف و اقدام‌هايي تحت عنوان «فناوري اطلاعات» پيش‌بيني شده است و وزارت ارتباطات و فناوري اطلاعات مكلف گرديده نسبت به شبكه ملي اطلاعات امن و پايدار با پهناي باند مناسب اقدام و با استفاده از توان و ظرفيت بخش غيردولتي، امكان دسترسي گسترده و پرسرعت را براي كليه كاربران اين شبكه فراهم نمايد. پيشنهاد مشخص اتاق بازرگاني و صنايع و معادن در اين رابطه اين است كه براي اين امر يك هدف‌گذاري قابل سنجش انجام شود. اين هدف مي‌تواند به اين صورت تعيين و اعلام شود كه در پايان برنامه پنجم توسعه شاخص‌هاي سرانه پهناي باند و دسترسي شهروندان و بنگاه‌ها به اينترنت به بالاترين سطح در منطقه ارتقا يابد، زيرا به نظر مي‌رسد اين امر يكي از پيش‌نيازهاي مهم تحقق اهداف سند چشم‌انداز است.
* يحيي آل‌اسحاق، رييس اتاق بازرگاني و صنايع و معادن تهران”
مرجع: دنياي اقتصاد

گزيده:
درس‌هاي زندگي: راحتی و خوشبختی را با هم اشتباه نگير.

کتاب (2)

  • یوسف مهرداد بی‌بالان

اگر بپرسيد كه طي چندين ماه اخير، بيشتر وقتتان را صرف چه كاري كرده‌ايد–به غير از انجام امور شغلي-، خواهم گفت: تدوين كتاب. آقاي گلدرات در مقدمه كتاب «هدف» نوشته است كه 13 ماه را به همراه يك نويسنده ماهر صرف نوشتن كتاب كرده است. در آن هنگام برايم غيرقابل باور بود. اما حالا بر اين باورم كه نوشتن كتابي به زيبايي كتاب «هدف»، زماني بيش از اين مدت نياز دارد.

ماه‌هاي اخير، كار تدوين كتاب مانند سياه‌چاله‌اي تمام وقتم را و البته وقت‌ آقاي شهبازيان را به طرف خود كشيده است. حتي زماني كه مشغول كاري هستم يا در وقت‌هاي بي‌كاري -مانند زماني كه سوار تاكسي هستم-، ناخودآگاه مطلبي به نظرم مي‌رسد كه فكر مي‌كنم مفيد است در كتاب باشد، آن را يادداشت مي‌كنم تا يادم نرود. به خاطر مشغله آقاي ايراف سعي كرديم كارهاي كمتري را به ايشان محول كنيم.

از 10 فصل كتاب، 4 فصل آن بازنگري شده و آماده بازنگري خارجي است. يك فصل نيز نياز به كمي تغييرات و تصحيح دارد. مطالب 3 فصل ديگر نيز نوشته شده و در صف بازنگري است. مطالب 2 فصل هنوز كامل نشده است.

اكنون زمان مناسبي است كه مذاكرات با ناشرها را شروع كنيم. اميدوارم كه مثل عارضه‌هاي مدل آبشاري (waterfall)، بي‌اطلاعي از روند چاپ و انتشار كتاب، موجب به هم ريختگي در برنامه‌ريزي و مطالب كتاب نگردد. همزمان صحبت‌هاي اوليه‌اي را براي جذب حمايت‌كننده مالي (اسپانسر) شروع كرده‌ايم ولي هنوز خيلي جدي نشده است.

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

گزيده:

پيروزي آموزگار شايسته‌اي نيست. رابرت كيوساكي

Top 20 Best Agile Development Books

  • یوسف مهرداد بی‌بالان

1: Robert C. Martin
Agile Software Development: Principles, Patterns and Practices

2: Martin Fowler
Refactoring: Improving the Design of Existing Code

3: Mike Cohn
Agile Estimating and Planning

4: Mike Cohn
User Stories Applied: For Agile Software Development

5: Andrew Hunt, David Thomas
The Pragmatic Programmer: From Journeyman to Master

6: Alistair Cockburn
Agile Software Development: The Cooperative Game (2nd Edition)

7: Craig Larman
Agile and Iterative Development: A Manager’s Guide

8: Kent Beck
Extreme Programming Explained: Embrace Change (2nd Edition)

9: Jim Highsmith
Agile Project Management: Creating Innovative Products

10: Paul Duvall, etc.
Continuous Integration: Improving Software Quality and Reducing Risk

11: Mary Poppendieck, Tom Poppendieck
Lean Software Development: An Agile Toolkit

12: Ken Schwaber
Agile Project Management with Scrum

13: Ken Schwaber, Mike Beedle
Agile Software Development with Scrum

14: Alistair Cockburn
Crystal Clear: A Human-Powered Methodology for Small Teams

15: Venkat Subramaniam, Andy Hunt
Practices of an Agile Developer: Working in the Real World

16: Kent Beck
Test Driven Development: By Example

17: Johanna Rothman
Manage It!: Your Guide to Modern, Pragmatic Project Management

18: James Shore, Shane Warden
The Art of Agile Development

19: Ron Jeffries, etc.
Extreme Programming Installed

20: Esther Derby, etc.
Agile Retrospectives: Making Good Teams Great

Reference: www.noop.nl

گزیده:

مهم نيست كه دمو (نسخه نمایشی) تا قبل از ارائه تا چه حد عالي کار می‌کند. موقع ارائه به حضار، احتمال بي‌نقص بودن آن برابر است با عكس نسبت تعداد حضار به توان مبلغ پول هزينه شده. مايك گيبز

برای خروج از جستجو کلید ESC را بفشارید