پروژه طراحی و پیاده سازی سیستم اشتراک فایل تحت اندروید و ویندوز
پروژه طراحی و پیاده سازی سیستم اشتراک فایل تحت اندروید و ویندوز
فرمت فایل : docx
حجم : 4344
صفحات : 61
گروه : کامپیوتر و IT |
توضیحات محصول :
پروژه طراحی و پیاده سازی سیستم اشتراک فایل تحت اندروید و ویندوز
فهرست مطالب
عنوان صفحه
فصل اول: بررسی منابع علمی 1
1-1) بررسی فواید برنامهنویسی تحت شبکه با جاوا 2
1-1-1) دریافت داده 2
1-1-2) ارسال داده 3
1-1-3) انبار فایل 3
1-1-4) پردازش موازی حجیم 3
1-1-5) تعامل نظیر به نظیر 3
1-1-6) بازی 4
1-1-7) چت 4
1-1-8) اشتراک فایل 4
1-1-9) سرورها 6
1-1-10) جستجو در وب 6
1-1-11) امنیت 6
1-2) تاریخچه جاوا 7
1-3) درباره اندروید 7
1-4) کمی درباره ی RUP و UML 8
فصل دوم: روش انجام پروژه 9
مقدمه 10
2-1) دیسیپلین مدلسازی سازمان 10
2-1-1) درک ساختار و پویایی سازمان 10
2-1-2) درک مسائل و مشکلات جاری سازمان 11
2-1-3) استخراج و استنتاج نیازمندیهای سازمان 11
2-1-4) تعیین چشمانداز سازمان 11
2-2) دیسیپلین مدیریت نیازمندیها 12
2-2-1) شناسایی اکتور ها و موارد کاربرد 12
2-2-2) شرح مورد کاربرد 12
2-2-3) استخراج مدل مورد کاربرد 20
2-2-4) ایجاد نمونهای از واسط کاربر 21
2-3) دیسیپلین تحلیل و طراحی 25
2-3-1) نمودار فعالیت 25
2-3-2) نمودارهای فعالیت سمت سرور 27
2-3-3) چند نمودار فعالیت دیگر 28
2-3-4) نمودار کلاس 29
2-3-5) نمودار شیء 31
2-3-6) نمودار توالی 32
2-3-6-1) طراحی نمودار توالی دریافت فایل 34
2-3-6-2) طراحی نمودار توالی ارسال فایل 36
2-3-7) نمودار بسته 37
2-4) دیسیپلین پیادهسازی 38
2-4-1) تعریف ساختار کدهای برنامه 38
2-4-2) نمودار مؤلفه 48
2-5) دیسیپلین استقرار 49
2-5-1) نمودار استقرار 50
نتیجه گیری: 51
منابع 52
فهرست اشکال
عنوان صفحه
شکل (1-1): نرمافزار چت Cisco Jabber ]3[ 4
شکل (1-2): نرمافزار Azureus Vuze ]3[ 5
شکل (2-1): نمودار مورد کاربرد سیستم اشتراک فایل ]5[ 20
شکل (2-2): صفحه نخست نرمافزار کاربر (متناظر با مورد کاربرد احراز هویت) ]9[ 21
شکل (2-3): صفحه انتخاب دریافت یا ارسال فایل ]9[ 21
شکل (2-4): صفحه انتخاب فایل برای دریافت (متناظر با مورد کاربرد دریافت فایل) ]9[ 22
شکل (2-5): صفحه انتخاب فایل برای ارسال (متناظر با مورد کاربرد ارسال فایل) ]9[ 22
شکل (2-6): نرمافزار طرف مدیر سیستم - صفحه متناظر با مورد کاربرد نمایش لیست کاربران ]9[ 23
شکل (2-7): پنجره ثبت کاربر جدید (متناظر با مورد کاربرد ثبت کاربر) ]9[ 23
شکل (2-8): صفحه لیست پوشههای اشتراکی (متناظر با مورد کاربرد نمایش پوشههای اشتراکی) ]9[ 24
شکل (2-9): پنجره انتخاب پوشه جدید برای اشتراک (متناظر با مورد کاربرد اضافه کردن پوشه) ]9[ 24
شکل (2-10): نمودار فعالیت متناظر با مورد کاربرد احراز هویت ]5[ 25
شکل (2-11): نمودار فعالیت متناظر با مورد کاربرد دریافت فایل ]5[ 26
شکل (2-12): نمودار فعالیت متناظر با مورد کاربرد ارسال فایل ]5[ 26
شکل (2-13): نمودار فعالیت شروع (طرف سرور) ]5[ 27
شکل (2-14): نمودار فعالیت متناظر با چند مورد کاربرد مربوط به اشتراک پوشه ]5[ 28
شکل (2-15): نمودار فعالیت متناظر با مورد کاربرد نمایش لیست کاربران ]5[ 28
شکل (2-16): نمودار فعالیت متناظر با مورد کاربرد ثبت کاربر ]5[ 29
شکل (2-17): نمودار کلاس سیستم اشتراک فایل ]7[ 29
شکل 2-18: نمودار شیء 1. در این نمودار شیء task1 قصد ارسال پیغام به مقصد 192.168.1.10 را دارد]8[ 31
شکل (2-19): نمودار شیء 2. شیء Listener1 پیام را دریافت کرده و در جواب آن شیء msg2 را ایجاد میکند ]11[ 31
شکل (2-20): سناریوی احراز هویت ]12[ 32
شکل (2-21): نمودار توالی احراز هویت. متناظر با سناریوی شکل قبل ]4[ 33
شکل (2-22): سناریوی دریافت فایل ]5[ 34
شکل (2-23): نمودار توالی نمایش فایلهای به اشتراک گذاشتهشده ]5[ 34
شکل (2-24): نمودار توالی دریافت فایلهای به اشتراک گذاشتهشده ]5[ 35
شکل (2-25): سناریوی ارسال فایل ]5[ 36
شکل (2-26): نمودار توالی ارسال فایل ]5[ 36
شکل (2-27): نمودار بسته کاربر ]6[ 37
شکل (2-28): نمودار بسته مدیر سیستم ]6[ 38
شکل (2-29): نمودار مؤلفه سمت کاربر ]3[ 49
شکل (2-30): نمودار مؤلفه سمت سرور ]3[ 49
شکل (2-31): نمودار استقرار سیستم ]4[ 50
فهرست جداول
عنوان صفحه
جدول (2- 1): شرح مورد کاربرد «احراز هویت» 13
جدول (2-2): شرح مورد کاربرد «دریافت فایل» 13
جدول (2-3): شرح مورد کاربرد «ارسال فایل» 14
جدول (2-4): شرح مورد کاربرد «نمایش لیست کاربران» 15
جدول (2- 5): شرح مورد کاربرد «ویرایش کاربر» 15
جدول (2-6): شرح مورد کاربرد «ثبت کاربر جدید» 16
جدول (2-7): شرح مورد کاربرد «حذف کاربر» 17
جدول (2-8): شرح مورد کاربرد «نمایش پوشههای اشتراکی» 18
جدول (2-9): شرح مورد کاربرد «اضافه کردن پوشه» 18
جدول (2-10): شرح مورد کاربرد «حذف پوشه» 19
فصل اول:
بررسی منابع علمی
1-1) بررسی فواید برنامهنویسی تحت شبکه با جاوا
عموماً چند شکل از برنامههای تحت شبکه وجود دارد. رایجترین آنها، سرویسدهندهها و مشتریها هستند. در سادهترین حالت، برنامه مشتری، اطلاعات را از یک سرویسدهنده دریافت میکند و آن را نمایش میدهد. برنامههای پیچیدهتر، داده را فیلتر و شناسایی میکنند، مرتباً دادههای متغیر را دریافت میکنند، اطلاعات را به کامپیوترها و افراد دیگر ارسال میکنند، بهطور بلادرنگ با چت یا بازیهای چند نفر در تعاملاند. سرویسدهندهها هم به درخواستها پاسخ میدهند. سرویسدهندههای ساده فایلی را جستجو کرده و آن را در اختیار مشتری قرار میدهند، اما سرویسدهندههای پیچیدهتر اغلب قبل از پاسخ به درخواست مشتری، پردازشهای زیادی بر روی داده انجام میدهند. برنامههای نظیر به نظیر مثل Gnutella کامپیوترهای زیادی را به هم متصل میکنند که هرکدام هم مانند سرویسدهنده و هم مثل مشتری عمل میکنند.]3[
در ادامه، نگاهی دقیقتر به قابلیتهایی که شبکه به برنامهها میافزاید، میاندازیم:
1-1-1) دریافت داده
در سادهترین حالت، یک مشتری داده را از سرور دریافت میکند. میتواند آن را برای نمایش به کاربر به فرمتی خاص تبدیل کند، آن را در پایگاه دادهی محلی ذخیره کند، با دادههای دیگر ترکیب کند، آن را تحلیل کند، یا همه این موارد. مشتریها در جاوا میتوانند با پروتکلهای استاندارد مثل HTTP ، FTP و SMTP صحبت کنند تا با سرورهای نوشتهشده در زبانهای مختلف ارتباط برقرار کنند.
1-1-2) ارسال داده
مرورگرهای وب برای دریافت داده بهصورت بهینه عمل میکنند؛ یعنی فقط مقدار کمی داده را، اغلب بهصورت یک فرم، به سرور ارسال میکنند. برنامههای نوشتهشده در جاوا چنین محدودیتی ندارند. وقتی یک ارتباط برقرار شود، برنامه میتواند به همان راحتی که داده را دریافت میکند، ارسال داده را از طریق همان ارتباط انجام دهد و این فرصتهای جدیدی را ایجاد میکند:
1-1-3) انبار فایل
Applet ها معمولاً نیاز به ذخیرهی اطلاعات در هر بار اجرای خود دارند (مثل ذخیره امتیاز بهدستآمده در یک بازی).Applet های غیرمطمئن اجازهی ذخیره اطلاعات در هارددیسک را ندارند، اما میتوانند این اطلاعات را در سرور ذخیره کنند. به این صورت که Applet فقط یک اتصال به سرورها از طریق شبکه برقرار کرده و داده را به آن ارسال میکند. سرور ممکن است داده را از طریق HTTP POST،FTP،SOAP یا Servlet بپذیرد.