محتوای درس « مهارتهای مهندسی نرم افزار »

صدا و گزارش جلسات درس

 

مهارتهای مهندسی نرم افزار

نشانه‌ی درس (و انشاالله کتاب) مهارت‌های مهندسی نرم‌افزار (کار آقای مهندس سعید جانقربان)

منظورم از مهارت

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

محتوا

درس مهارت‌های مهندسی نرم‌افزار حاوی حدود 25 مهارت مورد نیاز همه‌ی اهالی مهندسی نرم‌افزار است. این‌ها مواردی است که بنا به تجربه و جمع‌بندی که از شرایط دارم، پرداختن به آن‌ها را لازم دیدم. تجربه‌ی دو ترم ارائه‌ی درس مهارت‌های مهندسی نرم‌افزار (در قالب مباحث ویژه) برای دانشجویان ارشد مهندسی نرم‌افزار، که به طور متوسط حدود 4 سال سابقه‌ی کار داشتند، مؤید نظرم بوده است. تأکید می‌کنم که این درس مهارت‌هایی مثل برنامه نویسی هسته (kernel programming) و DevOp را شامل نمی‌شود. چرا که اولا خود افراد و محل کار آن‌ها به خوبی روی این نوع از مهارت‌های مورد نیاز خودحساس هستند. به علاوه مورد نیاز همه نیست. ضمن این‌که کار من هم نیست.

ترتیب

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

تأکید

لازم است قویا تأکید کنم، که در نهایت تنها و تنها راه به دست آوردن مهارت، تمرین و تمرین توسط خود شماست. دقیقا مثل ورزشکاری که قرار است با حریفان روبرو شود. دیگران می‌توانند نقش مشوق، تدارکات و در نهایت مربی را برای او داشته باشند. اگر خود شما مهارت‌های مطرح شده در درس را تمرین و باز تمرین نکنید، حداکثر این است که مثل معمول، به دانسته‌های شما اضافه شده است و نه به توانایی‌ها. البته در طول درس سعی می کنم به سهم خود هر سه نقش تشویقی، مربی و تدارکات را با گام‌های زیر، در مورد هر مهارت ایفا کنم.
• معرفی کوتاه موضوع مهارت و تکیه روی مثال
• بیان چرایی این مهارت (ایفای نقش مشوق)
• چه موقع؟ (ایفای نقش مربی)
• چگونه؟ (ایفای نقش مربی)
• معرفی ابزار و ارائه برنامه تمرین (ایفای نقش مربی)
• ارائه تمرین (ایفای نقش تدارکات)
مطمئن هستم با به کارگیری عملی این مهارت‌ها در کار و زندگی بسیار مؤثرتر عمل خواهید کرد. انشاالله.

خواهش

خواهش می‌کنم از طریق این آدرس ایمیل توسط spambots حفاظت می شود. برای دیدن شما نیاز به جاوا اسکریپت دارید مرا از دریافت نظرات اصلاحی و تکمیلی خود، محروم نفرمایید.
الحمدلله رب العالمين
محسن صديقي مشكنانی
شهریور 1399- تهران 

قرار

 تشویق به اینکه مسئولیت بیشتر معنی دار کردن آمورش و یادگیری خود را بپذیرید (صفحه 35 از کتاب نمی دانستم حق انتخاب دارم)

  • قبول مسئولیت یادگیری، اراده یادگیری و اقدام با شماست.  ما دنبال مهارت انجام کار هستیم.
  • حضور در کلاس آزاد، هر موقع خواستید بیایید، هر موقع خواستید بروید
  • هرجا برای شما سؤال مطرح شد، همان موقع بپرسید.
  • فعال در کلاس، مثل محیط کاری نگاه کنید.
  • در مورد اشکالات من بی تفاوت نباشید.
    • بدون واهمه ی نمره ای، اول به خودم بگویید.
    • اگر باز هم مشکل وجود داشت از طریق مسئولین دانشگاه پیگیری کنید.
  • مهلت های زمانی را رعایت می کنیم.
  • ساعت 12 شب آخرین جمعه ی قبل از امتحانات پایانی، آخرین مهلت برای دریافت  تتمه احتمالی ارسال هاست.

مقدمه

در نگاه متداول به درس(های) مهندسی نرم‌افزار، مثل قریب به اتفاق دروس رشته‌های مختلف، بیشتر بیان مفاهیم، مدل‌ها و روش‌ها، و در کل، آگاهی دادن دنبال می‌شود. این درحالی است که از یک سو، با وجود وب و مهارت‌های استفاده از وب و خودآموزی، نیاز به دانستن‌ها معمولا قابل پاسخ‌گویی است؛ و از سوی دیگر، برای کار، ارائه‌ی خدمت و محصول، دانستن کافی نیست. باید بتوانیم انجام دهیم. در واقع برای انجام دادن، نیاز به مهارت داریم. مهارت را من توان انجام دادن می‌گیرم. توانستن در مقابل دانستن. به نظرم دانستن و آگاهی وقتی ارزش پیدا می‌کند که به رفتار، خدمت و یا محصول تبدیل شود.
درس مهارت‌های مهندسی نرم‌افزار حاوی حدود 25 مهارت مورد نیاز همه‌ی اهالی مهندسی نرم‌افزار است. این‌ها مواردی است که بنا به تجربه و جمع‌بندی که از شرایط دارم، پرداختن به آن‌ها را لازم دیدم. تجربه‌ی دو ترم ارائه‌ی درس مهارت‌های مهندسی نرم‌افزار (در قالب مباحث ویژه) برای دانشجویان ارشد مهندسی نرم‌افزار، که به طور متوسط حدود 4 سال سابقه‌ی کار داشتند، مؤید نظرم بوده است. تأکید می‌کنم که این درس مهارت‌هایی مثل برنامه نویسی هسته (kernel programming) و DevOp را شامل نمی‌شود. چرا که اولا خود افراد و محل کار آن‌ها به خوبی روی این نوع از مهارت‌های مورد نیاز خودحساس هستند. به علاوه مورد نیاز همه نیست. ضمن این‌که کار من هم نیست.

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

لازم است قویا تأکید کنم، که در نهایت تنها و تنها راه به دست آوردن مهارت، تمرین و تمرین توسط خود شماست. دقیقا مثل ورزشکاری که قرار است با حریفان روبرو شود. دیگران می‌توانند نقش مشوق، تدارکات و در نهایت مربی را برای او داشته باشند. اگر خود شما مهارت‌های مطرح شده در درس را تمرین و باز تمرین نکنید، حداکثر این است که مثل معمول، به دانسته‌های شما اضافه شده است و نه به توانایی‌ها. البته در طول درس سعی می کنم به سهم خود هر سه نقش تشویقی، مربی و تدارکات را با گام‌های زیر، در مورد هر مهارت ایفا کنم.

  • معرفی کوتاه موضوع مهارت و تکیه روی مثال
  • بیان چرایی این مهارت (ایفای نقش مشوق)
  • چه موقع؟ (ایفای نقش مربی)
  • چگونه؟ (ایفای نقش مربی)
  • معرفی ابزار و ارائه برنامه تمرین (ایفای نقش مربی)
  • ارائه تمرین (ایفای نقش تدارکات)

مطمئن هستم با به کارگیری عملی این مهارت‌ها در کار و زندگی بسیار مؤثرتر عمل خواهید کرد. انشاالله.

خواهش می‌کنم از طریق این آدرس ایمیل توسط spambots حفاظت می شود. برای دیدن شما نیاز به جاوا اسکریپت دارید مرا از دریافت نظرات اصلاحی و تکمیلی خود، محروم نفرمایید.

الحمدلله رب العالمين

محسن صديقي مشكنانی

شهریور 1399- تهران

منابع:

کتاب « به سوی تولید بهتر نرم‌افزار: اصول مهندسی نرم‌افزار، نسخه همراه 1397»

نویسنده(ها) : دکتر محسن صدیقی مشکنانی

نشر ممد (MOMED Pub)، 1397

به سوی تولید بهتر نرم‌افزار: اصول مهندسی نرم‌افزار، نسخه همراه 1397

 

تمومش کن

کتاب « تمومش کن (کنترل کیفیت با پایاندهی؛ روش‌های پایاندهی) »

نویسنده(ها) : دکتر محسن صدیقی مشکنانی

نشر ممد (MOMED Pub)، 1397

تمومش کن!

 

 

  • وب، به عنوان مهمترین مرجع
  • کتاب مهارت های نرم، ترجمه آقای ابراهیم نقیب زاده مشایخ
  • برنامه پیشنهادی گروه نرم افزار دانشگاه صنعتی شریف 92: (http://sharif.edu/~ramsin/index_files/SE_MSc_Curriculum.pdf)
  • سایت مرجع برنامه پیشنهادی فوق: (http://www.gswe2009.org/curriculum/recommendations)
  • سایت متمم motamem.org
  • سایت های تولید کنندگان بزرگ نرم افزار
  • سایت های کاریابی از جمله https://www.indeed.com/