مهندسي نرم افزار

Software Engineering

  • ماهيت كار

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

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

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

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

 زبانهاي بر نامه نويسي اصلي مورد استفاده شامل سي ، سي پلاس پلاس و جاوا و برنامه هايي كه كمتر كاربرد دارند شامل فرترن و كوبول مي باشند .بعضي مهندسين نرم افزار هم به توسعه بسته هاي نرم افزاري سيستم و هم برنامه هاي كاربردي سفارشي ميپردازند .

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

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

مهندسان نرم افزاراغلب به عنوان بخشي از يك تيم كه طراحي سخت افزار و نرم افزار و سيستمها را بر عهده دارد به فعاليت مي پردازند . يك تيم هسته اي كارهاي مهندسي ، فروش ، ساخت و فرماندهي كاركنان را تا ارائه محصول نهايي به عهده ميگيرد .

  • محيط كار

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

بسياري از مهندسان نرم افزار در تلاش براي بهبود برنامه هاي نرم افزاري براي كاربران ، بايد با مشتريان و همكاران ، تبادل كاري نزديك داشته باشند .

 مثلا مهندساني كه توسط فروشندگان نرم افزار وشركتهاي مشاوره اي استخدام مي شوند ، اكثر اوقات خود را دور از محل كار خود ميگذرانند وبراي ملاقات با مشتريان سفرهاي شبانه ميكنند . آنها با مشتريهايي از كارهاي توليدي گرفته تا مؤسسات مالي سرو كار دارند .

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

 

  • فرصتهاي شغلي

 هر چند مهندسان نرم افزار توسط اكثر صنايع استخدام مي شوند، بيشترين تجمع آنها در صنايع رايانه و خدمات پردازش اطلاعات ميباشد. اين صنايع شامل شركنهايي هستند كه بسته هاي نرم افزاري آماده را توليد ميكنند و يا خدمات رايانه اي قراردادي مانند برنامه نويسي رايانه اي ، يكپارچه سازي سيستم ها و بازيابي اطلاعات مانند خدمات اينترنتي و پايگاههاي داده ها را ارائه مي دهند ميباشند .

 بسياري از مهندسان نرم افزار در ساير بخش ها مانند مراكز دولتي ، سازندگان رايانه و تجهيرات الكنرونيكي مربوطه ، كالج ها و دانشگاها به فعاليت مي پردازند.

كارفرماياني كه مهندسين نرم افزار را استخدام ميكنند از شركتهاي تازه كار گرفته تا موسسات صنعتي پيشرو و جا افتاده را شامل ميشوند . گسترش اينترنت ، پست الكترونيكي و ساير سيستمهاي ارتباطي باعث بسط الكترونيك به شركتهاي مهندسيي مي شود كه زمينه هاي كاري اساسا نامربوطي به اين رشته دارند .

 مثلا شركنهاي مهندسي كه متخصص در ساخت پلها و نيرو گاهاي برق مي باشند به منظور طراحي و گسترش سسيستمهاي اطلاعات جغرافيايي و قابليت هاي طراحي خود كار، مهندسان نرم افزار را استخدام مي كنند. شركنهاي ارتباطاتي به منظوربهره برداري از بازاردرحال رشد ارتباطات شخصي ، به مهندسان نرم افزار نيازمندند . شركتهاي اصلي ارتباطاتي موقعيت هاي كاري مناسبي را هم براي مهندسان نرم افزار كار بردي و هم مهندسان سيستم فراهم مي كنند.

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

  •  آموزش و ادامه تحصيل

 اكثر كارفرمايان تمايل دارند تا افرادي را استخدام كنند كه حداقل داراي مدرك ليسانس بوده و دانش و تجربه وسيعي در زمينه فنآوري و سيستمها ي راياته اي داشته باشند . افراد علاقه مند به مهندسي نر م افزار رايانه بايد در حل مسائل و تجزيه و تحليل مهارت بالايي داشته باشند و در ضمن بايد توانايي بر قراري ارتباط با ساير اعضاي گرو ه ، كارمندان و مشنريان را نيزداشته باشند .

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

 گروهي از مهندسان نرم افزاري با تجربه و متخصص به طراحي سيستم يا مشاوره و يا به تاسيس شركتهاي مشاوره خصوصي مي پردازند.

با پيشرفت فنآوري رايانه اي ، كار فرمايان به مهارتهاي جديد تري نياز پيداخواهند كرد.

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

  •  چشم انداز آينده

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

  •  ميزان در آمد

 در سال 2000 ميانگين در آمد سالانه مهندسان نرم افزار كه تمام وقت فعاليت داشته اند در ايالات متحده حدود 67670 دلار بوده است .

Share
11 responses... add one

سلام خسته نباشین میشه لطف کنین بهم کمک کنین این مقاله رو پیدا کنم در مورد شبیه سازی یه محیط هست مثلا سیستم پست رو.ممنون میشم کسی کمک کنه .

[پاسخ]

سوال 3وضعیت در زندگی واقعی شرح دهید که در آنها مشتری و کاربر نهایی هر دو یکی هستند همچنین شرح دهید که در آنها مشتری و کاربر نهایی 2فرد متفاوت هستند برای این 2 حالت 10 تفاوت را ذکر کنید که باید در امور مدیریتی رعایت شود.

[پاسخ]

من فوق ليسانس مهندسي نرم افزار از دانشگاه آكسفورد دارم وبايد به شما بگم مهندسي نرم افزار تو ايران كاربرد زيادي نداره و بايد بيشتر روش كا كنن .

[پاسخ]

يه مقاله مي خوام براي درس مهندسي نرم افزار باموضوع امنيت در مهندسي نرم افزار يا طراحي شي گرا يا مهندسي خواسته ها يا بر آورد هزينه در مهندسي نرم افزار ممنون خداحافظ

[پاسخ]

من یک پروژه مبانی مهندسی نرم افزار بدون dft و er می خواهم

متشکر.

[پاسخ]

اگه الگوريتم وبرنامه موارد مهم هوش مصنوعي رو در سايتتون قرار دهيد بد نيست

[پاسخ]

سلام خسته نباشيد من يه پروژه ميخوام واسه مهندسي نرم افزار كه شامل تجزيه تحليل سيستم، نمودارها و ساير موارد باشه. اگه مربوط به يه سيستم اداري مثل كارگزيني يا بايگاني يا حسابداري باشه و به صورت فایل زیپ یا پاور پوینت هم باشه خيلي بهتره. اگه ميشه به ايميلم ارسال كنيد.ممنونم

[پاسخ]

سلام ميشه كمك كنيد من يه پروژه واسه مباني مهندسي نرم افزار ميخوام كه يك سيستميو در نظر بگيره واون سيستم رو تجزيه تحليل كنه و تمام نموداراشو هم ميخوام

[پاسخ]

شاهین نقوی پاسخ در تاريخ 24/07/1389 5:16 ب.ظ:

سلام.کسانی که در پروژه های خودشان راهنمایی یا کمک میخواهند به email:shahin.naghavi@yahoo.com پیغام و یا اشکالاتشان را ارسال نمایند.

[پاسخ]

سلام خسته نباشيد من يه پروژه ميخوام واسه مهندسي نرم افزار كه شامل تجزيه تحليل سيستم، نمودارها و ساير موارد باشه. اگه مربوط به يه سيستم اداري مثل كارگزيني يا بايگاني يا حسابداري باشه خيلي بهتره. اگه ميشه به ايميلم ارسال كنيد.ممنونم

[پاسخ]

فاطمه پاسخ در تاريخ 25/07/1387 12:26 ق.ظ:

سلام من هم یک پروژه برای مهندسی نرم افزار می خواستم که هم تجزیه وتحلیل داشته باشه و هم نمودار ودر کل کامل باشه .به ایمیلم ارسال کنید ممنون می شم. خداحافظ

[پاسخ]

پاسخ دهید

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