مهندسی نرم افزار جلد دوم

نویسنده :
راجر اس. پرسمن
مترجم :
عین الله جعفر نژاد قمی ابراهیم عامل محرابی
نوبت و سال چاپ : 2 / 1398 تعداد صفحات : 216
نوع جلد / قطع: شومیز / وزیری وزن: 1425
ویرایش : 7 شابک 9786003080713
موضوع اصلی : کامپیوتر موضوع فرعی : مهندسی کامپیوتر IT

دریافت فایل:

افزودن به علاقه مندی ها
موجود در فروشگاه قیمت : 110,000تومان

(فصل اول) مهندسی نرم افزار 1- مدرس: مهندس افشارپور- دانشگاه پیام نور واحد کنگاور 1 مهندسی نرم افزار 1 راجر اس.پرسمن : فصل 1 نرم افزار و مهندسی نرم افزار ™ ماهیت نرم افزار تعریف نرم افزار: مجموعه ای از برنامه ها، مستندات و داده ها می باشد. می توان گفت نرم افزار شامل دستورالعملهای کامپیوتری و ساختمان داده ها و اطلاعات توصیفی می باشد. ماهیت نرمافزار: نرم افزار محصولی دو گانه است که هم خود یک محصول است و هم برای ساخت محصول دیگر بکار می رود. منحنی شکست سخت افزار شکست سخت افزار در ابتدا زیاد است اما به مرور شکست آن کمتر شده چون اشکالات آن گرفته می شود اما به مرور زمان سخت افزار فرسوده می شود بنابراین منحنی شکست سخت افزار به مانند شکل 1 1 خواهد بود. - مهندسی نرم افزار 1- مدرس: مهندس افشارپور- دانشگاه پیام نور واحد کنگاور 2 منحنی شکست نرم افزار اما نرم افزار فرسوده نمی شود بلکه دچار تغییراتی می شود که باعث می شود منحنی شکست آن به صورت قسمت بالایی شکل 1 2 باشد. - اما منحنی ایده آل برای شکست نرم افزار به مانند قسمت پایینی شکل 1 2 است. - مقایسه خصوصیات نرم افزار با سخت افزار ™ نرم افزار فرسوده نمی شود اما سخت افزار می شود. ™ نرم افزار بسط داده میشود و در مورد آن نمیگویند که نرم افزار ساخته میشود. ™ هزینه قابلیت نگهداری نرم افزار از سخت افزار بیشتر است. ™ نرم افزار به شرایط محیطی حساس نیست اما سخت افزار هست. ™ نرم افزار ملموس نیست اما سخت افزار هست. ™ دامنه های کاربرد نرم افزار ™ نرم افزارهای سیستمی: مجموعه برنامه هایی که در تعامل با سیستم می باشد. مانند سیستم عامل، کامپایلر و درایور ™ نرم افزار کاربردی: برنامه های مستقلی که نیاز تجاری را برطرف می کنند. ™ نرم افزار مهندسی علمی: توسط الگوریتم های مشخصی که با ارقام سر و کار دارند انجام می شوند. کاربرد - در نجوم و علوم مختلفی از زیست شناسی و فضا و . . . مهندسی نرم افزار 1- مدرس: مهندس افشارپور- دانشگاه پیام نور واحد کنگاور 3 ™ نرم افزارهای تعبیه شده: نرم افزارهایی هستند که در حافظه فقط خواندنی (ROM) قرار دارند. مثلا نرم افزارهایی که در اجاق گاز هوشمند، لباسشویی، مایکروویو و . . ™ نرم افزارهای خط تولید: برای فراهم کردن یک قابلیت خاص می باشد که توسط مشتریان زیادی استفاده می شود.) از جمله در زمینه واژه پردازها، گرافیک، مدیریت بانک اطلاعاتی و . . . .( ™ برنامه های تحت وب: شامل برنامه هایی هستند که تحت شبکه کار می کنند. ™ نرم افزارهای هوش مصنوعی: نرم افزارهایی هستند که از الگوریتم های غیرعددی استفاده می کنند. مانند: نرم افزارهای سیستم های خبره از جمله شناسایی الگو، تشخیص صدا و تصویر و اثر انگشت و شبکه عصبی مصنوعی و . . . . نرم افزارهای قدیمی نرم افزارهایی که سالها از تولید آنها گذشته و پیوسته اصلاح شده اند و ازدیاد آنها برای سازمان ها دردسرهای بزرگی را به وجود آورده است. ™ ماهیت منحصر به فرد برنامه های کاربردی تحت وب یکی از گروه های متمایز نرم افزارها میباشند و در اکثریت آنها صفتهای زیر مشاهده می شود: ™ میزان تمرکز شبکه: روی یک شبکه قرار دارند و نیازهای کلاینت های زیادی را برآورده می کنند. ™ همروندی: یعنی به طور همزمان ممکن است کاربران زیادی به برنامه تحت وب دسترسی داشته باشند. ™ بار غیرقابل پیش بینی: ممکن است در یک لحظه ترافیک استفاده از برنامه بالا برود. ™ کارایی: کاربر انتظار دارد که مدت زمان طولانی را منتظر نماند. ™ قابلیت دسترسی: انتظار دارند که 22 ساعته امکان دسترسی وجود داشته باشد. ) که البته 111 درصد نمی تواند باشد( ™ داده محوری ) - data drivendata drivendata driven data drivendata drivendata drivendata driven data drivendata driven ( : عملکرد بسیاری از برنامه ها استفاده از متون و گرافیک و صوت و تصویر می باشد. ™ حساس به محتویات: زیبا بودن محتویات برنامه های تحت وب ™ تکامل پیوسته: برنامه های تحت وب به صورت پیوسته در حال تکامل می باشند. ™ بی واسطگی: نیاز سریع برای رساندن به بازار ™ امنیت: به دلیل در دسترس بودن برنامه ها، محدود کردن همه کاربران کار دشواری است.باید معیارهای امنیتی قوی پیاده سازی شود. ™ زیبایی شناسی: داشتن ظاهری زیبا مهندسی نرم افزار 1- مدرس: مهندس افشارپور- دانشگاه پیام نور واحد کنگاور 4 ™ مهندسی نرم افزار تعریف: مجموعه روش های مناسب که به منظور تولید یک محصول نرم افزاری که به صرفه می باشد و دارای قابلیت اطمینان می باشد. تعریف از دید IEEEIEEEIEEEIEEE : روشی سیستماتیک می باشد که به منظور ساخت محصولی نرم افزاری و نگهداری آن با هزینه بهینه انجام می شود. لایه های مهندسی نرم افزار مهندسی نرم افزار یک فرآیند لایه ای است. لایه های مهندسی نرم افزار عبارتند از: ابزار (tools) (tools) ، روشها (method) (method) (method) ، فرآیند (process) (process) (process)(process)(process) ، توجه به کیفیت. مهمترین لایه آن، است. فرآیند فرآیند: چارچوبی را معین می کند که نرم افزار بر پایه آن ساخته می شود و مراحل کار را نشان می دهد. روش های مهندسی نرم افزار: بیان شیوه هایی است که برای ساخت نرم افزار بکار می رود. به کمک ابزارها نیز مجموعه روش ها را انجام داده تا محصول ایجاد شود. مهندسی نرم افزار به کمک کامپیوتر ابزارهای مهندسی نرم افزار جهت تولید نرم افزار ها بکار گرفته می شود. هنگامی که ابزارها در کنار هم جمع شوند و اطلاعات ایجاد شده یک ابزار، در ابزار دیگر قابل استفاده باشد، سیستمی برای پشتیباتی بسط نرم افزار شکل می گیرد که مهندسی نرم افزار به کمک کامپیوتر گفته می شود. (CASE) (CASE)(CASE) ™ فرآیند نرم افزار مجموعه ای از فعالیتها، کنشها و وظایفی که برای ایجاد یک محصول باید اجرا شوند. ) پروسه نیز گفته میشود( چارچوب فرآیند کلی برای مهندسی نرم افزار )صرف نظر از اندازه و پیچیدگی نرم افزار( شامل 5 فعالیت است: ™ ارتباطات: برقراری ارتباط با مشتری جهت درک اهداف و جمع آوری نیازها. ™ برنامه ریزی: که نقشه ای را ایجاد می کند که به عنوان راهنما و نقشه نرم افزار نامیده شده و خطرات، منابع و زمانبندی نرم افزار را مشخص می کند. ™ مدلسازی: طراحی کلی از محصول و ایجاد یک مدل)مثل پل سازی(. ™ ساخت: تولید کدها و آزمون لازم برای کشف خطا. ™ استقرار: ارایه نرم افزار به مشتری و ارزیابی او و بازخورد آن. فعالیت های چتری مهندسی نرم افزار 1- مدرس: مهندس افشارپور- دانشگاه پیام نور واحد کنگاور 5 فعالیت های چارچوب فرآیند مهندسی نرم افزار با فعالیت های چتری تکمیل می شود. در سرتا سر یک پروژه بکار برده می شود و به تیم نرم افزاری کمک می کند تا پیشرفت، کیفیت، تغییر و ریسک را کنترل کند. مانند: ™ کنترل پروژه و پیگیری آن: پیگیری و ردیابی میزان پیشرفت پروژه ™ مدیریت ریسک: ارزیابی خطراتی و میزان آنها ™ تضمین کیفیت نرم افزار: بررسی میزان اطمینان از محصول ™ بازبینی فنی: بازبینی به منظور آشکارسازی خطا ™ اندازه گیری: موازینی از فرایند، پروژه و محصول ™ مدیریت پیکربندی نرم افزار: بررسی اثر تغییرات در سراسر فرآیندها ™ مدیریت قابلیت استفاده مجدد: تعریف ملاک های استفاده مجدد ™ تهیه و تولید محصول کاری: فعالیتهای لازم برای ایجاد محصول مانند: مدل، مستندات، فرم و فهرست و . . ™ مهندسی نرم افزار در عمل جوهر عمل: ™ شناخت مسئله)برقراری ارتباط و تحلیل( ™ طرح ریزی برای یک حل )مدلسازی و طراحی نرم افزار( ™ اجرای برنامه ریزی) کد نویسی( ™ بررسی نتیجه برای صحت ) آزمایش و تضمین کیفیت( مهندسی نرم افزار 1- مدرس: مهندس افشارپور- دانشگاه پیام نور واحد کنگاور 6 7 اصل مهم درمهندسی نرم افزار 1 دلیل وجود سیستم )برای کاربرانش ارزشی فراهم کند(. - 2 ساده نگه داشتن ) طراحی ها باید تا حد امکان ساده باشد تا قابل فهم باشد( - . 3 حفظ چشم انداز) وجود یک چشم انداز روشن و یکپارچگی ضروری است( - . 2 آنچه تولید می کنید دیگران مصرف می کنند ) بنابراین طراحی مشخصات طوری انجام گیرد تا دیگران آن - را درک کنند( . 5 آینده نگری ) سیستمی با طول عمر بالا باشد و طوری باشد که در آینده آمادگی تطبیق با تغییرات را داشته - باشد( . 6 برنامه ریزی از قبل برای استفاده مجدد) که باعث صرفه جویی در هزینه و زمان خواهد شد( - . 7 تفکر ) که همواره نتیجه بهتری را خواهد داد( - . ™ پندارهای باطل نرم افزاری تعریف: باورهای نادرستی درباره نرم افزارها و فرایند به کار رفته در ساخت آنها. این پندارها باعث گمراهی مدیران و دستاندرکاران می شوند و مشکلات جدی به بار میآورند. ولی اصلاح نگرش ها و عادت های کهنه دشوار است. پندارهای باطل مدیریتی: مدیران غالباً تحت فشار کاهش هزینهها، جلوگیری از بی برنامهگی و بهبود بخشیدن به کیفیت هستند. اگر بدانند که اعتقاد به پندارهای باطل باعث کاهش فشار می شود، به آن اعتقاد پیدا می کنند. پندارهای باطل مشتریان: مشتری به پندارهای باطل درباره نرم افزار اعتقاد دارد، زیرا مدیران نرم افزار و سازندگان آن کمتر سعی در برطرف کردن سوء تفاهم ها دارند. این پندار باطل منجر به انتظارات نادرست)از جانب مشتری( و در نهایت عدم رضایت از سازنده می شود. پندارهای باطل سازندگان: پندارهای باطلی که نرم افزارنویسان به آنها باور دارند، نتیجهی 51 سال فرهنگ برنامه نویسی است. در نخستین دهههای ساخت نرم افزار، برنامه نویسی شکلی از هنر پنداشته میشد. سنت های قدیمی دیر از بین میروند. نکته: شناخت واقعیتهای نرم افزار، نخستین گام در جهت فرمول بندی راهکارهای علمی برای ساخت نرم افزار است.

تا کنون دیدگاهی برای این کالا ثبت نشده است، شما اولین نفر باشید...