خرید کتاب, فروش کتاب, فروش آنلاین, کتاب دانشگاهی, فروشگاه کتاب, چاپ کتاب, تبدیل پایان نامه به کتاب, ارسال کتاب, بانک کتاب, فروش پستی کتاب, پیک کتاب, فروش نرم افزار, چاپ تیراژ کم, فروشگاه اینترنتی کتاب ایران

مهندسی پیچیدگی نرم افزار

محصول جدید

وقتی در مورد پیچیدگی نرم ‏افزار صحبت می‏کنیم اولین سؤالی که باید پاسخ داده شود این است که: “پیچیدگی چیست؟”.  توافق عمومی ‏بر روی چگونگی تعریف پیچیدگی نرم ‏افزار وجود ندارد. پیچیدگی نرم ‏افزار یک موضوع کلّی، غیراستاندارد و اصطلاحی وابسته است که ترکیب سیستم را توصیف می‏کند. دلیل وابسته بودن این اصطلاح این است که مقدار مطلقی را نمی‏توان به آن نسبت داد. 

جزییات بیشتر

تولید کننده
انتشارات مهرگان قلم

50,000 ریال

افزودن به لیست دلخواه

مشخصات

نویسنده/ نویسندگان :دکتر ناصر مدیری - مهندس مسعود رفیقی

اطلاعات بیشتر

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

باور عمومی ‏بر این است که پیچیدگی نرم ‏افزار را نمی‏توان فقط با استفاده از یک بعد تعریف کرد.

فرهنگ کامپیوتری استاندارد IEEE، “پیچیدگی” را به این صورت تعریف می‏کند : میزان سختی درک یا بازبینی یک سیستم یا مولفه که طراحی یا پیاده سازی شده است. عبارت “سختی ِدرک” اشاره دارد به اینکه پیچیدگی لزوماً مقیاس مطلقی برای اندازه گیری نیست بلکه نسبی است به این معنی که آنچه برای شخصی پیچیده به نظر می‏رسد می‏تواند برای دیگری براحتی قابل فهم باشد مثلاً، یک مهندس نرم ‏افزار که با تئوری سیستم‏های کنترل آشنایی دارد ساختار و سازمان خوب یک سیستم خوش‏طرح کنترلی را تشخیص می‏دهد در حالی که مهندس نا آشنا با تئوری مشکل زیادی در درک طراحی خواهد داشت. مهمتر این که  مهندس ناآشنا بدون داشتن دانش پایه به احتمال زیاد توانایی طرح یک سیستم خوش‏ساختار را نخواهد داشت. بنابراین آموزش جزء مهمی‏در رابطه با پیچیدگی نرم ‏افزار است.

اندازه‏گیری پیچیدگی نرم ‏افزار یکی از زمینه‏های مهندسی نرم ‏افزار است که به فاکتورهایی از اندازه‏گیری  تأثیرگذار بر هزینه‏های نگهداری و توسعه می‏پردازد.   Zuseادعا می‏کند “پیچیدگی نرم ‏افزار” به درستی تعریف نشده است و اندازه‏گیری پیچیدگی نرم ‏افزار اسم بی مسمّی‏ است. وی برای پیچیدگی نرم ‏افزار تعریفی به این صورت ارائه  می‏کند: “معنی درست پیچیدگی نرم ‏افزار سختی نگهداری، تغییر و درک نرم ‏افزار است. پس با پیچیدگی وابسته به روان‏شناسی نرم ‏افزار سر و کار دارد”.

این تعاریف پیچیدگی نرم ‏افزار را به پیچیدگی وابسته روان‏شناسی مر بوط می‏کند. سه نوع مشخص از پیچیدگی وابسته به روانشناسی که بر درک برنامه‏نویس از نرم ‏افزار اثر می‏گذارد عبارتنداز: پیچیدگی مسأله، پیچیدگی طراحی سیستم و پیچیدگی رویه‏ای. پیچیدگی مسأله، تابعی از دامنه مسأله است. به بیان ساده، فرض بر این است که درک مسائل پیچیده برای برنامه‏نویس مشکل‏تر از درک مسائل ساده است. از آنجا که این نوع از پیچیدگی غیر قابل کنترل است عموماً در مهندسی نرم ‏افزار نادیده گرفته می‏شود. پیچیدگی سیستمی‏ نگاشتِ فضای مسأله به یک نمایش مشخص است. پیچیدگی داده‏ای و پیچیدگی ساختاری دو نوع از پیچیدگی طراحی سیستم است که برای سیستمهای ساخت یافته تعریف می‏شود.  پیچیدگی ساختاری به مفهوم اتّصال اشاره دارد.  اتّصال، وابستگیِ بین پیمانه‏های کد منبع را اندازه‏گیری می‏کند، بعنوان مثال، توابع C سایر توابع C را فراخوانی می‏کنند. هر چه اتّصال بین پیمانه‏ها بیشتر باشد درک پیمانه برای برنامه‏نویس مشکلتر خواهد بود. پیچیدگیِ داده‏ای مفهوم چسبندگی را تداعی می‏کند چسبندگی،  وابستگی در درون پیمانه را اندازه‏گیری می‏کند. در این حالت، هر چه پیمانه چسبنده‏تر باشد درک آن برای برنامه‏نویس آسانتر است. پیچیدگیِ داده‏ای و ساختاری، میزانهای مبتنی بر fan-in، fan-out  پیمانه و تعداد متغیرهای ورودی/خروجی هستند.

فروش آنلاین - مهندسی - عمومی - تخصصی - مرجع  - کنکوری - درسی - کمک درسی - دانشگاهی - دوره دبیرستان -  تحصیلات تکمیلی - کتب تست - ریاضی - ارسال رایگان کتاب -  کتاب دانشگاهی - پیک کتاب - انتشار کتاب - انتشارات  - انتشارات ارشد  

نقد و نظرات

ویژگی ها

پدیدآورندگان

نویسنده/ نویسندگان : دکتر ناصر مدیری - مهندس مسعود رفیقی

نوشتن نقد و نظر

مهندسی پیچیدگی نرم افزار

مهندسی پیچیدگی نرم افزار

وقتی در مورد پیچیدگی نرم ‏افزار صحبت می‏کنیم اولین سؤالی که باید پاسخ داده شود این است که: “پیچیدگی چیست؟”.  توافق عمومی ‏بر روی چگونگی تعریف پیچیدگی نرم ‏افزار وجود ندارد. پیچیدگی نرم ‏افزار یک موضوع کلّی، غیراستاندارد و اصطلاحی وابسته است که ترکیب سیستم را توصیف می‏کند. دلیل وابسته بودن این اصطلاح این است که مقدار مطلقی را نمی‏توان به آن نسبت داد. 

30 محصولات دیگر در همان شاخه: