دانشگاه شهید بهشتی ترم دوم ۹۰-۸۹ |
مهندسی اینترنتگروه درسی بر روی گوگل |
استاد :
دکتر حسن حقیقی
استادیار : عباس نادری |
پروژه پیادهسازی
مقدمه
در پروژه پیادهسازی، تیم پروژه که متشکل از یک الی سه نفر است (و تیمهای دو نفره پیشنهاد میگردد) میبایست یک سیستم حراج اینترنتی با امکانات معقول را پیادهسازی نماید. برای این منظور یک مشتری مجازی در نظر گرفته شده که این سیستم را تقاضا داده و میخواهد یک فروشگاه حراجی اینترنتی راهاندازی کرده، با شرکتها و سازمانهای دیگر جهت ارائه محصولات آنها تعامل برقرار کند. از آنجایی که این مشتری زیاد به مباحث انفورماتیک مسلط نیست و این اولین پروژه E-Commerce ایست که او انجام میدهد، میبایست او را در تعریف، طراحی و پیادهسازی راهنمایی نمایید.
همانطور که مستحضرید چرخه حیات هر پروژه نرمافزاری شامل پنج مرحله زیر است که از نظر زمانی پس از شروع یکدیگر شروع میشوند (ولی ممکن است پایان یکی بعد از شروع دیگری باشد) :
- تعریف : در این فاز پروژه باید تعریف شود و مستندات تعریف پروژه در حد نیاز شفاف و کامل تهیه شوند تا سوء تفاهمی در هنگام تحویل یا فازهای دیگر بین مشتری و طراح پیش نیاید. خروجی این مرحله می بایست در قالبهای شفاف و قابل فهم (مثل شکل، نمودار و پاراگرافهای متن کوتاه و قابل فهم) باشد و یک درک مشترک و قابل قبول برای طرفین ایجاد نماید.
-
طراحی :
در این مرحله، مستندات و همچنین منابع تخصصی (مثل کد، گراف، پلن و غیره) مربوط به طراحی پروژه باید تعیین گردند.
در یک پروژه وب مهمترین مواردی که در این بخش باید معین گردند عبارتند از :
- Web Layout
- تکنولوژیهای مورد استفاده (بخش سرور، بخش کلاینت، معماری و ...)
- سکوی مورد نیاز (سیستم عامل، وب سرور مورد نظر، پایگاه داده مورد نظر، بستر سخت افزاری مورد نظر)
- و ...
- توسعه : توسعه سیستم در واقع پیادهسازی بلکانی آن را شامل میشود. در فاز توسعه ممکن است فازهای قبلی مجبور به تغییر گردند. زمانگیرترین فاز چرخه حیات (از نظر نفر ساعت) این مرحله است که شامل تست نیز میگردد.
- راهاندازی : هرچند که ممکن است نامهم به نظر بیاید، یکی از سختترین و حساسترین مراحل حیات یک نرم افزار، ارائه آن بر روی سکوی مقصد است. پس از انجام این فاز نرمافزار قابل استفاده خواهد بود. راه اندازی و تنظیم اولیه پایگاه داده، وب سرور، تنظیمات زبان سرور، نصب پیشنیازها و در نهایت نصب و راهاندازی نرمافزار بر روی سکو در این مرحله میگنجد.
- نگهداری : زمانگیرترین فاز حیات هر نرمافزاری (از نظر بازه زمانی) فاز نگهداری آن است. در این فاز مخاطبین سیستم گزارشهای (اتوماتیک یا نیمه اتوماتیک یا غیراتوماتیک) از تعامل خود با سیستم را در اختیار طراح قرار می دهند تا رفع نیاز/اشکال کند. این فاز در پروژه مورد نیاز نیست. در واقع پس از تحویل هر بخش، نتایج بررسی آن به صورت خودکار در اختیار شما خواهد بود تا رفع نیاز/اشکال نمایید.
تمام ۴ فاز اول باید توسط تیم انجام شود. مشتری دید دقیقی ندارد که سیستمی که او میخواهد چه بخشهای باید داشته باشد، لذا به او در این کار کمک کنید. برای تماس با مشتری از آدرس [email protected] بهره بجویید (یا در عنوان ایمیل خود به آدرس معمول، قید کنید که مخاطب مشتری محصول است)
نکته ۱ : در صورتی که هر پروژهای غیر از پروژه مطرح شده مد نظر دارید، آنرا پیشنهاد دهید. دقت داشته باشید که نکات بسیار زیادی در این پروژه وجود دارند که تقریبا تمامی آنها در یک پروژه عملیاتی در بازار مورد نیاز هستند.
نکته ۲ : مد نظر داشته باشید که پروژه لازم نیست جامع باشد ولی باید کامل (به معنی بدون نقص) باشد، یعنی تمام قسمتهایی که انجام شدهاند در حدی انجام شده باشند که قابل ارائه به یک مشتری واقعی باشند.
موارد مورد نیاز
موارد زیر میبایست در پروژه انجام شده باشند :
-
مفاد پروژه پیادهسازی
در این پروژه، تیم پیادهساز می بایست سیستم مبتنی بر وبی پیادهسازی نمایند که یک حراجی اینترنتی را شبیهسازی کند. از آنجایی که درصد زیادی از کار مهندسی وب، تعریف پروژه است بیشتر از این به توصیف پروژه نمیپردازیم و دانشجو میبایست هرجایی که گنگ است، از استادیار در مورد جزئیات مورد نیاز پرسش نماید.
در پروژه مربوطه، موارد زیر میبایستی به کار رفته باشند:
- HTML
- CSS
- حداقل یک زبان تحت سرور
- وب سرور
- حداقل یک پایگاه داده
- استفاده از وب ۲ یا استفاده از وب سرویس ها
- امنیت ابتدایی قابل قبول
- تمام نکاتی که در طی دوره درس به دانشجو آموخته میشود.
توضیحات تکمیلی
به دوستانی که پروژه پیادهسازی را انتخاب میکنند اکیدا توصیه میشود که از محیطهای توسعه حرفهای به همراه سرورهای کنترل نسخ استفاده کنند. جهت کسب اطلاعات بیشتر برای راهاندازی و استفاده از این امکانات به بنده مراجعه نمایید. همچنین توصیه میشود که به صورت مداوم کار خود را تحویل دهند تا اگر در حال طی مسیر اشتباه هستند هرچه زودتر اصلاح شود.
فازهای تحویل
- تعریف پروژه میبایست در فاز اول تکمیل گردد، لذا لازم است که حداقل یک هفته قبل از اتمام فاز اول تحویل گردد.
- طراحی پروژه و مقداری از پیادهسازی آن در فاز دوم میبایست آماده باشد.
- کلیت پیادهسازی باید در فاز چهارم تکمیل شود.
- برای فاز پنجم اعمال امنیت و همچنین راهاندازی به همراه رفع اشکال/خطا در پیادهسازی انجام خواهد شد.