اخبار جدید یوبرد در اینستاگرام

پیچیدگی نرم افزار (software complexity) در یک محصول از پیچیدگی عملکرد کدهای آن (رابط های سیستمی متعدد و الزامات پیچیده) سرچشمه می گیرد. پیچیدگی نرم افزار گاهی اوقات بیش از حد و فراتر از کنترل افزایش می یابد. بنابراین نگهداری آنها پرهزینه و در سیستم های حیاتی توسعۀ آن خطرناک است. در صورت عدم کنترل، پیچیدگی نرم‌افزار می‌تواند بسیار زیاد شود و تبدیل به برنامه‌های پیچیده و دست و پا گیر شود. دو نوع پیچیدگی وجود دارد:

پیچیدگی اساسی: پیچیدگی اجتناب ناپذیری است که برای برآوردن الزامات عملکردی لازم است. به عبارتی این نوع پیچیدگی باتوجه به پیچیدگی ذاتی محصول است و نمی توان آن را کم و حذف کرد. برای حذف این پیچیدگی باید از یک سری از عملکردهای محصول صرف نظر کرد و آنها را پیاده سازی نکرد.

پیچیدگی تصادفی: پیچیدگی اضافی است که به دلیل طراحی ضعیف یا عدم مدیریت پیچیدگی ایجاد می شود. این نوع پیچیدگی باید به حداقل برسد.

پیچیدگی بیش از حد نرم افزار می تواند بر توانایی توسعه دهندگان برای مدیریت لایه های مختلف و ارتباط بین آنها و اجزای یک برنامه تأثیر منفی بگذارد. همچنین می تواند توسعه، بهینه سازی و تست ماژول های خاص را دشوار کند. هر قطعه کد باید ارزیابی شود تا مشخص شود که چگونه بر برنامه از نظر استحکام و تغییرپذیری تأثیر می گذارد. یک سری معیارها برای تعیین پیچیدگی نرم افزار از جمله اندازه نرم افزار، معیار هالستد، Span و تعداد گره وجود دارد.

پیچیدگی نرم افزار مبحث گسترده ای است. رعایت پیچیدگی نرم افزار و کاهش آن، نیازمند برنامه نویس باتجربه و با دانش نسبت به این موضوع است. امروزه یک مبحث بسیار مهم که باعث کند شدن روند توسعۀ بسیاری از شرکت ها شده، پیچیدگی نرم افزار است. از جمله خدمات پروژۀ میکروکنترلر یوبرد، آموزش و کاهش پیجیدگی نرم افزار است.

 

مطالب مرتبط در میکروآموزش:

کد مرده در برنامه نویسی

برنامه نویسی بهینه

لزوم کد تست برای سخت افزار

رضا اسدی

رضا اسدی

مدیر یوبرد، خالق و توسعه دهندۀ پلتفرم یوبرد، مجری پروژه های الکترونیکی، فعال در صنعت آسانسور، سابقه فعالیت در صنعت خودرو و همکاری در صنعت پزشکی و صنایع دیگر، آموزگار آموزش های یوبرد

جدیدترین های برنامه نویسی در وبلاگ و میکروآموزش

غیر حرفه ای ترین روش کدنویسی

غیرحرفه ای ترین روش کدنویسی

غیر حرفه ای ترین روش در کدنویسی، استفاده از تاخیری است که کل سیستم را منتظر می گذارد.

لزوم کد تست برای سخت افزار

لزوم کد تست برای سخت افزار

لزوم کد تست برای سخت افزار، به تسهیل فرایند توسعه برمیگردد.

خواندن متغیر قبل از مقداردهی به آن در استاندارد MISRA C++

خواندن متغیر قبل از مقداردهی به آن در استاندارد MISRA C++

خواندن متغیر قبل از مقداردهی به آن در استاندارد MISRA C++، ممنوع شده است.

آرایه با کلاس حافظۀ خارجی

آرایه با کلاس حافظۀ خارجی

آرایه با کلاس حافظۀ خارجی (در زمانی که آرایه با extern اعلان شود.)، در استاندارد MISRA C الزاماتی دارد.

پیش ثبت نام تا به حد نصاب رسیدن کلاس خصوصی 3 نفرۀ آموزش STM32

0 دیدگاه

یک دیدگاه بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

دانلود

لطفا برای دریافت لینک دانلود اطلاعات خواسته شده را وارد نمایید
ضبط پیام صوتی

زمان هر پیام صوتی 4 دقیقه است