مهندسی و مدیریت پروژه از ابتدا تا انتها

[right]سلام

من تقریبا مسلط به برنامه نویسی به زبان

php

و فریمورک

yii

هستم. به

cms های

wordpress

و

joomla

هم مسلط هستم. دو سال هم هست در حال ساختن سایتهای بی کیفیت هستم. به مفاهیم شی گرائی مسلطم و روی

UML2

هم تسلط نسبی دارم.

ولی

هنوز نمیتوانم یک پروژه را به صورت اصولی مهندسی و پیاده سازی کنم.

در دانشگاه درسهای مهندسی نرم 1 و 2 را بدون اینکه خوب خوب یاد بگیرم پاس کردم. بعد از سربازی هم تقریبا چیزی از آنها یادم نمانده است.

برای این که بتوانم یک پروژه را چه به صورت انفرادی و چه بصورت گروهی یا سازمانی از اول تا آخر مهندسی،مدیریت و پیاده سازی کنم باید چه مباحثی را یاد بگیرم؟

راجر پرسمن یک کتاب به عنوان مهندسی وب منتشر کرده ، آیا با وجود این کتاب لازمه که به مهندسی نرم افزار هم مسلط بشم و کتاب مهندسی نرم افزارش را هم بخوانم یا نه؟

RUP

،

OpenUp

و

SCRUM

کی وارد بازی میشوند؟

لطفا راهنماییم کنید[/right]

[rtl]برای طراحی اولیه خیلی هم لازم نیست خودتون را درگیر این چیزا بکنید، همنی قدر که براساس آنها کلیت برنامه از قبیل ساختار دیتابیس، روند کاری برنامه و کلاس هایتان مشخص بشه کافی است. بعد وارد فازهای بعدی که بشید کم کم خودش جلو میره.

[/rtl]

[rtl]

[right][font="Tahoma"]سلام[/font]

[font="Tahoma"]موضوع خیلی جالبیه. زمانی که تسلط شما در برنامه نویسی زیاد می شه قطعا به مواردی که گفتید هر کسی برخورد می کنه. متاسفانه وضعیت برنامه نویسی در ایران با وضعیت در کشورهای پیشرفته متفاوت هست. در ایران اکثر برنامه نویسها ترجیح می دن خودشون شخصا روی پروژه شون کار کنند و بیشتر برنامه نویسهایی که لا اقل من می شناسم در انزوا هستند. [/font]

[font="Tahoma"]این موضوع خیلی وقته که در سایر کشورها حل شده و کار تیمی قطعا برای انجام پروژه های سنگین لازمه و تداوم و پیشرفت یک کار سنگین بدون انجام کار گروهی برای مدت زمان طولانی غیر ممکن به نظر می رسه.

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

زمانی که شما برای اولین بار با یک تیم شروع به کار می کنید متوجه می شید که چقدر یک تیم می تونه موثر باشه. اعضای تیم الزاما نباید همگی برامه نویس باشند. بنده در طی چند سالی که تجربه کار تیمی رو به دست آوردم در تیم هایی کار کرده ام که علاوه بر برنامه نویسان افرادی به عنوان تحلیلگر، مدیر، گرافیست و یا حتی مشاور و ایده پرداز هم حضور داشته اند.شاید امروزه با وجود ابزارها و بسترهای فوق العاده مثل git و یا codeplex شرایطی برای تشکیل تیم های مجازی و در قالب اینترنت فراهم شده که می تونید روی تشکیل چنین تیم هایی نیز فکر کنید[/font].

[font="Tahoma"]یک رشته کارشناسی ارشد هم جدیدا در ایران وارد شده که عنوانش هست "مدیریت پروژه های نرم افزاری" که ترکیبی از مدیریت و شیوه های کار تیمی نرم افزاری هست.[/font]

[font="Tahoma"]موفق باشید[/font]

[/right]

[/rtl]