دانلود مقاله و پروژه و پایان نامه دانشجوئی

دانلود مقاله و پروژه و پایان نامه دانشجوئی

دانلود مقاله و پروژه و پایان نامه دانشجوئی

دانلود مقاله و پروژه و پایان نامه دانشجوئی

مقاله در مورد RFID چیست

فرمت :WORD                                                     تعداد صفحه :28

RFID چیست ؟

تصور کنید که وارد یک فروشگاه زنجیره ای شده اید و اقلام مورد نیاز خود را داخل چرخ دستی (trolley) قرارداده اید. صندوق دار با استفاده از بار کد میبایستی که تک تک اقلام داخل سبد را برداشته و اطلاعات آن را توسط بارکد خوان (Barcode Reader) یکی یکی به داخل رایانه وارد کند تا فاکتور اقلام انتخابی شما صادر گردد. بسیاری از اوقات بدلیل آنکه تعداد کالاهای خریداری شده بسیار زیاد میباشند؛ صفهای طولانی ای در فروشگاه های زنجیره ای تشکیل میشود.تازه ، گاهی اوقات نیز مخدوش شدن علائم بار کد، از خواندن اطلاعات جلوگیری میکند ، که این خود موجب مشکلات بیشتری میشود.

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

چرا؟ چون برچسب روی کالا دیگر بارکد (Barcode) نیست بلکه از نوع RFID میباشد و خودش با فرستان علائم رادیویی کلیه اطلاعات جاری خود از قبیل تعداد، قیمت، وزن، ... را به کامپیوترهای موجود در درهای خروجی مخابره میکند.

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

از جمله مهمترین محاسن آن کاهش سرقت یا دزدی و محاسبه سریعتر تعداد کالاهای موجود در انبار بدون نیاز و کمک به نیروهای انسانی است.

اما تنها اشکال این فن آوری گران بودن آن است، اگر چه روزگاری میرسد که تمامی اشیاء و کالاها این برچسب ها را مثل بارکد خواهند داشت.

بطور کلی RFID یا سیستم شناسایی با استفاده از فرکانس رادیویی سامانه ی شناسایی بی سیمی است که قادر به تبادل داده ها بوسیله برقراری اطلاعات بین یک Tag که به یک کالا ، شئ یا .. متصل شده است و یک بازخوان (Reader) می باشد.

اصولاً سامانه های RFID از سیگنالهای الکترونیکی و الکترو مغاطیسی برای خواندن و نوشتن داده ها بدون تماس بهره گیری می کنند.

Tag ها وسیله شناسایی متصل شده به کالایی است که ما میخواهیم آن را رد یابی کنیم وبازخوان ها (Reader) ها وسایلی هستند که حضور برچسب ها را در محیط تشخیص داده و اطلاعات ذخیره شده در آنها را بازیابی میکنند.

با توجه به اینکه این سیستمها بر مبنای تغییرات امواج مغناطیسی و یا فرکانس های رادیویی کار میکنند، جهت تقویت سیگنالهای موجود در محیط گاهی اوقات از آنتن (تقویت کننده سیگنال) نیز استفاده میشود.

 تجهیزات مورد نیاز

بطور کلی فن آوری RFID از تجهیزات ذیل جهت پیاده سازی بهیه خود کمک میگیرد:

1. انواع برچسب Tag

2. انواع خواننده بر چسب Reader

3. انواع نویسنده اطلاعات Printer

4. آنتن- تقویت کننده سیگنال

5. نرم افزار مدیریت اطلاعات

6. بانک اطلاعاتی، ساختار شبکه اطلاعاتی

TAG چیست؟

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

اما اینکه هر یک از کالاها دارای اشکال و ظواهر گوناگون و نیز دارای محیطهای فیزیکی گوناگونی است، این ضرورت را ایجاب میکند تا Tag ها را با توجه به ویژگیهای فیزیکی (ظاهریشان) دسته بندی کنیم.

بطور کلی بعضی از ویژگیهای ظاهری Tagها بصورت زیر میباشد:

الف- Tag هایی که دارای کفه پلاستیکی از جنس PVC میباشند و معمولاً در وسط آنها یک سوراخ دیده میشود که بسیار با دوام بوده و میتوان از آنها بارها و بارها استفاده کرد.

ب- Tag هایی که شبیه کارتهای اعتباری هستند ومعمولاً به آنها کارتهای هوشمند بدون تمـاس (Contact less Smart Cards) گفته میشود.

مقاله در مورد Robat

فرمت :WORD                                                     تعداد صفحه :20

فهرست مطالب

 

مقدمه: 1

هواپیماهای بدون سرنشین. 2

قهرمانی تیم های روبوکاپ ایرانی در مسابقات آلمان. 3

ربات شترسوار جدید 4

مار رباتیکی. 5

پلیس رباتیکی. 6

خوشامدگویی رباتیکی. 7

شبکه عصبی زنده 8

ربات های قابل پوشش.. 9

ربات کوه نورد 9

آسیمو می پرد 10

اتومبیل الکتریکی. 11

LEURRE. 12

توریست مجازی. 15

راه رفتن روی آب.. 16

نمایش هوایی. 17

مینی کوپتر. 18

فوتبال دستی. 18

 

مقدمه:

  جاتون خالی هفته پیش برای شرکت در یک کارگاه  (workshop) با دو تا از بچه های آزمایشگاه رفته بودیم شهر نیس  فرانسه. یه جمع 20 نفره متشکل از حدود 10 الی 12 بیولوژیست و شیمیست و  بقیه هم از رباتیک.

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

موضوع کارگاه ارتباط بین رباتها و حیوانات بود. از جمله این پروژه ها که به نظرم جالب اومد پروژه ای بود که تو MIT داشت انجام میشد و اونهم در رابطه با حصار مجازی برای کنترل یک گله گاو بود! خود استادی که روی این موضوع کار میکرد به خاطر شرکت تو کنفرانس ICRA که همزمان با کارگاه ما تو اسپانیا برگزار میشد نتونسته بود بیاد و دانشجوش رو فرستاده بود. دانشجوش رشته کنترل خونده بود و در جریان کارگاه کلی باهم رفیق شدیم.

جریان از این قراره که اینا یه زنگوله درست کردن برای گاو ها که یه GPS توش داره به اضافه بورد بی سیم برای انتقال اطلاعات به یه سرور مرکزی و دو تا بلند گو که بتونن صدای سه بعدی تولیک کنند و یه کامپیوتر کوچولو.

حالا یه نفر که همون جناب چوپان! باشه از اتاق فرمان! یه حصار مجازی برای کامپیوتر رسم میکنه که آقای کامپیوتر حواست به این گاوهای ما باشه از این محدوده بیرون نرن تا ما یه چرت بزنیم.

هر وقت گاوی از اون محدوده رد بشه این سرور به کامپیوتر کوچولو فرمان میده که گاو رو برگردونه. اون هم با تنظیم جهت صدا، یه صدای سه بعدی از سگ گله تولید میکنه، جوری که گاو رو به راه راست! هدایت کنه.

بعد از ظهر هم که میخوان گاو ها رو برگردونه آغل این حصار مجازی رو حرکت میدن به سمت آغل و گاو ها رو کم کم هدایت میکنن به اون سمت.

مقاله در مورد rup

فرمت :WORD                                                     تعداد صفحه :34

 

فهرست مطالب

 

 

 

چکیده ........................................................................................................ 1

 

مقدمه .........................................................................................................3

 

RUP چیست؟ ..............................................................................................5

 

فازهای RUP ...............................................................................................8

 

اهداف فاز آغاز ...............................................................................................9

 

خروجی های فاز آغاز .......................................................................................9

 

فاز جزئیات یا تحلیل پیچیدگی ...............................................................................10

 

بررسی ریسک ها ..............................................................................................10

 

ریسک های تکنولوژی .........................................................................................11

 

ریسک های منابع انسانی ......................................................................................12

 

ریسک های سیاسی .............................................................................................12

 

اهداف فاز جزئیات ...........................................................................................13

 

خروجی های فاز جزئیات ...................................................................................14

 

فاز ساخت .......................................................................................................15

 

اهداف فاز ساخت ..............................................................................................16

 

خروجی های فاز ساخت ......................................................................................17

 

فاز انتقال........................................................................................................17

 

اهداف فاز انتقال ............................................................................................18

 

خصوصیات RUP ........................................................................................20

 

مهمترین مزایای RUP .................................................................................21

 

دیدگاه اولیه درباره RUP ................................................................................ 21

 

دیسیپلین های RUP ...................................................................................... 24

 

انعطاف پذیری RUP و انطباق با آن ..................................................................30

 

نتیجه گیری .................................................................................................32

 

مراجع .........................................................................................................33

 

پی نوشت ها ............................................................................................ 34

 

 

چکیده

  چه چیز می‌تواند یک پروسه تولید نرم‌افزار را توصیف کند؟ آیا منظور از پروسه، آماده‌سازی نرم‌افزار صرفاً برای ارائه در بازار است؟ مسلماً در هر کاری وجود یک سامانه و فرایند کاری ضروری است؛ ولی چه چیزی می‌تواند موجب ایجاد سرعت و کیفیت در فرایند تولید یک نرم‌افزارشود؟ لزوماً طراحی و پیاده‌سازی یک فرایند یکپارچه و منطقی می‌تواند چنین نتیجه‌ای در بر داشته باشد.

 فرایند انجام یک پروژه تعریف می‌کند که چه کسی، چه کاری را در چه هنگام و چگونه برای رسیدن به هدف (انجام پروژه) انجام می‌دهد
در مهندسی نرم‌افزار، هدف ساختن یک محصول نرم‌افزاری و یا بهبود یک نمونه‌ی موجود است. هدف از تعیین فرایند، تضمین کیفیت نرم‌افزار، برآورده شدن نیاز‌های کاربر و قابل تخمین بودن زمان و هزینه‌ی تولید می‌باشد. علاوه بر این، تعیین فرایند، روندی جهت تحویل مصنوعات دوران تولید نرم‌افزار به کارفرما و ناظر پروژه ارائه می‌دهد تا از این طریق اطمینان حاصل کنند که پروژه روند منطقی خود را طی می‌کند و نظارت درست بر انجام پروژه ممکن است و از سوی دیگر، معیاری برای ارزیابی پروژه انجام شده می‌باشد. تا کنون متدولوژی‌های مختلفی برای فرآیند تولید نرم‌افزار ارائه شده‌اند که یکی از مشهورترین آنها RUP است
   بدین منظور امروزه از متدولوژی RUP استفاده می کنند. RUP مخفف عبارت( Rational Unified Process) چارچوبی کلی است برای تشریح فرآیند ساخت نرم‌افزار. پس از آنکه تیم سه نفره‌ی شرکت Rational ساخت UML را (به عنوان یک شیوه‌ی نمایش   notation/یکتا برای تشریح مدل شیء) به آخر رساند، تلاش خود را متوجه فرآیند تولید نرم‌افزار نمود
  اساس RUP بر تکرار (iteration) است و اساس تکرار این است که هر تکرار به یک محصول قابل اجرا ختم شود. هر تکرار شامل هر هفت مرحله چرخه‌ی حیات در مدل سنتی آبشاری است، یعنی: مدلسازی تجاری، تخمین نیازها، تحلیل و طراحی، پیاده سازی، تست، نگهداری و توسعه
  به حداقل رساندن حجم پروسه تولید یک نرم‌افزار همزمان با حفظ کیفیت و صرفه‌جویی در زمان از مهمترین ویژگی‌های این روش می‌باشند. معمولاً برای یک شرکت تولید نرم‌افزار، سرعت عمل به موقع برای پاسخ‌گویی به تقاضا و شرایط اجتماعی اهمیت دارد، اما گاهی این شتابزدگی سبب فدا شدن کیفیت می‌گردد.

   RUP با ارائه یک چارچوب منطقی علاوه بر تعیین زمانبندی مناسب، کیفیت مورد نظر تولید کننده و استفاده کننده نرم‌افزار را تأمین می‌نماید. در این تحقیق ضمن مروری بر RUP به عنوان روش یکپارچه تولید نرم‌افزار، قابلیت‌های آن در افزایش سرعت تولید نرم‌افزار و حفظ کیفیت آن برشمرده می‌شوند.
مقدمه

یک پروسه چابک، پروسه‌ای است که همیشه آماده در آغوش کشیدن درخواستهای جامعه بوده و  این درجه از سازگاری را دارا باشد.

 بنابراین منظور از سرعت عمل، فقط کاستن از حجم پروسه تولید نرم‌افزار یا سرعت ارائه آن به بازار نیست؛ بلکه منظور، انعطاف‌پذیری و حفظ کیفیت است. مطلبی که در این مقاله قصد توضیح آن را داریم این است که RUP  ساختاری پروسه‌ای (چیو 2000) است که امکان انعطاف‌پذیری را برای تولید‌کنندگان نرم‌افزار فراهم می‌آورد.

 RUP متدولوژی ارائه شده توسط شرکت Rational، پرکاربردترین فرآیند تولید و توسعه نرم افزاری در دنیای کنونی است و به عنوان یک استاندارد صنعتی بالفعل در دنیای IT پذیرفته شده است. به گزارش رویتر در سال 2001 میلادی بیش از ششصد هزار شرکت تولید کننده نرم افزار، از ابزارهای شرکت Rational استفاده می کرده‌اند که این تعداد کماکان هم در حال افزایش است. این متدولوژی، برای انواع پروژه‌های نرم‌افزاری در دامنه‌های مختلف ( مانند سیستم‌های اطلاعاتی، سیستم‌های صنعتی، سیستم‌های بلادرنگ، سیستم‌های تعبیه شده، ارتباطات راه دور، سیستم‌های نظامی و ...) و در اندازه‌های متفاوت، از پروژه‌های بسیار کوچک (یک نفر در یک هفته) تا پروژه‌های بسیار بزرگ (چند صد نفر تولید کننده با پراکندگی جغرافیایی)، کاربرد دارد.
 مزیت بزرگ این متدولوژی، استفاده از روش تکرار در تولید و مدیریت تولید نرم‌افزار است که این امر، امکان تولید مبتنی بر کاهش ریسک و مواجه با مشکلات اصلی در ابتدای کار و در نتیجه احتمال موفقیت بیشتر را فراهم می‌کند. از محاسن دیگر این متدولوژی مبنا قرار دادن نرم‌افزار و تولید یک معماری پایدار در ابتدای کار است، که در نتیجه امکان کشف مشکلات عمده ساختاری، تست و مجتمع سازی ممتد را از ابتدای کار فراهم می‌کند.

مقاله در مورد شبکه های محلی کامپیوتر

فرمت :WORD                                                     تعداد صفحه :14

فهرست

 

 

 

 

LAN یا شبکه محلی  .................................................................1                                                                 

شبکه محلی مجازی ( VLAN )  ...................................................8

شبکه محلی بی سیم  ...................................................................11

سیستمهای ماهواره ای  ...............................................................12

 

منابع و ماخذ  ...........................................................................14

 

مقاله در مورد SMTP Server

فرمت :WORD                                                     تعداد صفحه :50

خلاصه درس: در این درس می‌آموزیم که با پورت ۲۵ (SMTPارتباط برقرار کنیم و از آن برای ارسال Fake Mail استفاده کنیم.

 

 پورت ۲۵ چیست؟

پورت ۲۵ برای ارسال E-mail به‌کار می‌رود. این پورت از پروتکل SMTP برای این کار استفاده می‌کند. نکته مهم آن است که این پروتکل توانایی خواندن E-mail را ندارد و فقط می‌تواند E-mail بفرستد.

حالا سوالی که پیش می‌آید که چه برنامه‌هایی روی سرور پورت ۲۵ را باز می‌کند؟

همان‌طور که گفتم، SMTP فقط یک پروتکل است (نه یک برنامه) و از نظر لغوی مخفف عبارت Simple Mail Transfer Protocol است. برنامه‌ای که پورت ۲۵ را باز می‌کند تا بتوان از طریق آن E-mail ارسال کنیم، SMTP Server می‌گویند. SMTP Server یک عبارت کلی است، برای این نوع برنامه‌ها. حالا خود SMTP Server انواع مختلف دارد که مشهورترین‌هایشان، SMail، SendMail، ESMTP MAIL Service و ... هستند. نکته مهم این است که تفاوت زیادی نیست که سرور مورد نظر ما از کدامیک از این نرم‌افزارها استفاده می‌کند، زیرا اصول کار با آنها یکی است.

برای صحبت کردن با پورت ۲۵ اول باید یک Server پیدا کنیم که پورت ۲۵ در آن باز باشد (اگرچه در اکثر سرورها پورت ۲۵ باز است). بعد باید طبق معمول از telnet یا nc برای ارتباط استفاده کنیم.

پورت ۲۵ از دیدگاه یک هکر چه کاربردی دارد؟

یک هکر از پورت ۲۵ برای ارسال Fake Mail (میل ناشناس، میل تقلبی) استفاده می‌کند. دلیل آن است که درصد بسیار بالایی از SMTP Server ها اهمیتی نمی‌دهند که شما کی هستید و به کی می‌خواهید میل بزنید، بلکه فقط کار خود را می‌کنند.

 

 

 چگونه یک SMTP سرور پیدا کنیم

پیدا کردن SMTP سرور کار سختی نیست. اگرچه از اکثر SMTP Server ها می‌توان به هر کسی E-mail زد ولی من همیشه توصیه می‌کنم از SMTP Server ی استفاده کنید که مربوط به به Mail Box قربانی است. برای مثال فرض کنید که می‌خواهید به کسی fake mail بزنید و اون شخص mail box اش در یاهو است. در این حالت من ترجیح می‌دم که از SMTP Server های سرور یاهو استفاده کنم ( اگرچه از هر سرور دیگری برای این کار می‌تونم استفاده کنم ).

اگرچه ما عبارت fake mail (ناشناس) برای این نوع E-mail ها استفاده می‌کنیم ولی باید توجه کنید که در مواردی خاص می‌شود شما را ردیابی کرد. به عنوان مثال ip شما از مواردی است که همراه با E-mail ارسال می‌شود. پس در انتخاب SMTP Server باید دقت کرد (بعضی SMTP Server ها هستند که حتی ip شما را ارسال نمی‌کنند و این یعنی نهایت ناشناسی).

نکته بعدی این است که بعضی SMTP Server ها یه کم باهوش عمل می‌کنند به طوری که در نهایت E-mail ارسالی حداقل برای اشخاص حرفه‌ای ماهیتش (fake بودن) قابل تشخیص خواهد بود (یعنی می‌فهمند که این یک fake mail است نه یه E-mail واقعی). پس این هم در انتخاب SMTP Server مهم است که باید از SMTP Server هایی استفاده کنیم که در نهایت حماقت باشند!

بازم یه نکته دیگه، SMTP Server در نهایت روی یک سرور قرار دارد پس در نهایت آدرس آن چیزی مثل mail.far30.com، mx01.hotmail.com و ... خواهد بود.

حالا که معیارهای مهم برای انتخاب SMTP Server را شناختیم، حالا وقتش است که عملا یه SMTP Server پیدا کنیم:

۱- یکی از ساده‌ترین راه‌ها استفاده از سایت‌هایی مثل google است که با جستجوی عبارت SMTP Server هزاران سرور پیدا کنیم.

۲- استفاده از SMTP Server سایت دانشگاه‌ها. تجربه برام ثابت کرده که این روش یکی از بهترین‌هاست.

۳- استفاده از یک سری SMTP Server های مشهور. این روش هم بد نیست.

 

حالا روش را عملا نشونتون می‌دم:

اول باید یک سرور را مشخص کنید که از طریق آن می‌خواهید fake mail را بفرستید. همان‌طور که قبلا گفتم اگر مثلا می‌خواهید برای یه نفر که mail box او در یاهو است، fake mail بزنید، سرور را همان سرور در نظر بگیرید یعنی از خود yahoo.com برای ارسال استفاده کنید.

بعد باید ببینید که در این سرور کدام subdomain باید استفاده کنید (یعنی اینکه SMTP Server سرور آدرسش، mail.yahoo.com است یا mx.yahoo.com است یا چیز دیگر). برای این کار دو روش را می‌گم:

۱- از nslookup استفاده کنیم:

با nslookup قبلا آشنا شده‌اید. اول باید با whois یک name server پیدا می‌کردیم و بعد از طریق آن سایت را nslookup می‌کردیم (اگر فراموش کرده‌اید، درس ۵ و ۶ را دوباره بخوانید. مثلا می‌خواهم SMTP Server مربوط به far30.com را پیدا کنم. اول یک whois می‌کنم و می‌بینم که name server سایت، s1.sazin.com و s2.sazin.com است. حالا nslookup می‌کنم و آن سطر هایی را می‌خوانم که با نام MX مشخص شده است و ۲ تا آدرس می‌بینم که عبارتند از far30.com و mail.far30.com پس SMTP Server های سایت far30.com همین دو آدرس است. در نتیجه اگر بخواهم از سایت far30.com برای ارسال fake mail استفاده کنم، از این آدرس‌ها باید بهره‌ گیرم.

۲- استفاده از بعضی سایت‌های خاص:

یکی از این سایت‌ها http://www.mob.net/~ted/tools/mx.php3 است. در این سایت، نام سایت را می‌نویسید و دکمه lookup را کلیک می‌کنید. مثلا من نوشتم yahoo.com و به نتایج زیر رسیدم:

Domain Server: ns.mob.net

yahoo.com mail is handled by 5 mx4.mail.yahoo.com.

yahoo.com mail is handled by 1 mx1.mail.yahoo.com.

yahoo.com mail is handled by 1 mx2.mail.yahoo.com.

 

Domain Server: ns.cw.net

yahoo.com mail is handled by 5 mx4.mail.yahoo.com.

yahoo.com mail is handled by 1 mx1.mail.yahoo.com.

yahoo.com mail is handled by 1 mx2.mail.yahoo.com.

 

مشخص است که SMTP Server های سایت yahoo.com عبارتند از: mx1.mail.yahoo.com , mx2.mail.yahoo.com , mx4.mail.yahoo.com

اگرچه این روش راحت‌تر به نظر می‌رسد ولی شما را یه انسان مصرفی بار می‌آورد نه خلاق !

مقاله در مورد SQL Server 2000

فرمت :WORD                                                     تعداد صفحه :30

 SQL Server 2000

 

مقدمه: SQL Server 2000  یک Engine پایگاه داده ارائه شده توسط شرکت مایکروسافت است و ادامه ویرایش SQL Server 7.0 است. بدون اقراق میتوان گفت این محصول پر کاربرد ترین Package پایگاه داده محسوب میشود. البته مایکروسافت ادعا کرده است که بیش از 60 % بازار Database جهان را به خود اختصاص داده و این روز به روز در حال افزایش است. شرکت IBM در اواخر دهه 70 زبان SEQUEL که برای Query ها (پرس و جو ها ) استفاده میشد را ابداع کرد. با تغییر زمان این زبان نیز تغییراتی کرد و تا آنجا که فقط برای Query ها استفاده نمیشد و از آن میتوانستیم برای Administrating (مدیریت) و Sequrity (امنیت) در Database نیز استفاده کنیم و بعد از مدتها این زبان به SQL تغییر نام داد. امروزه ورژنهای متعددی از این نرم افزار استفاده میشود که نرم افزار Microsoft SQL Server 2000 از Transact SQL که به آن TSQL هم میگویند استفاده میکند. SQL Server 2000 هم اکنون دارای 2 نسخه است : یکی SQL Server 2000 Personal Edition که بر روی Client نصب میشود (Windows 98 –  Windows ME – Windows 2000 Proffessional – Windows XP Home Edition – Windows XP Proffessional Edition) البته اگر بر روی Windows 98 و Windows ME نصب کنیم ، بسیاری از قابلیتهای این Package از بین میرود. بهترین حالت نصب این نسخه بر روی سیستم عاملهای Windows 2000 Proffessional و Windows XP Proffessional است. یک نسخه دیگر این نرم افزار : SQL Server 2000 Enterprise Edition است که مختص Server ها است یعنی فقط بر روی تمامی نگارش های Window 2K Server و Windows Server   2003نصب میشود.

                                                                                                                     

 

معرفی SQL و دستورات عمومی آن:

 

توسط SQL میتوان درون یک بانک اطلاعاتی پرس و جو کرده (Query) و نتیجه را برگرداند. بانک اطلاعاتی شامل آبجکتی به نام جدول (Table) میباشد.
رکوردها در بانکهای اطلاعات در جداول ذخیره میگردند.
جدول شامل سطر و ستون میباشند.
در زیر میتوان یک جدول را مشاهده کرد : 

Last Name First Name Address City
مثال:
Select Last name from persons
پر کاربرد ترین دستورات SQL شامل موارد زیر است :
SELECT استخراج یک داده از بانک اطلاعاتی
UPDATE به روز رسانی یک داده درون بانک 
DELETE پاک کردن یک داده از بانک اطلاعاتی 
INSERT وارد کردن یک داده جدید به بانک اطلاعاتی
همچنین در 
SQL میتوان داده هایی نیز تعریف کرد : 
CREATE TABLE ایجاد یک جدول جدید 
ALTER TABLE تغییر دادن یک جدول 
DROP TABLE پاک کردن یک جدول
CREATE INDEX ایجاد یک اندیس
(کلید جستجو) 
DROP INDEX پاک کردن یک اندیس

SQL و Active Server Pages - ASP :
SQL یکی از قسمتهای خیلی مهم ASP میباشد زیرا در ASP برای کار با بانکهای اطلاعاتی از SQL استفاده میشود. و توسط تکنولوژی ADO میتوان از SQL در ASP استفاده کرد.
دستور 
SELECT :
SELECT column-name(s) FROM table-name
مثال :
نام جدول 
Persons است
Last Name First Name Address City
Hasani Ali Esfahan



دستور Select همراه با شرط :

SELECT column FROM table WHERE column condition value
عملگر ها در SQL:
عملگر مفهوم
= معادل بودن
<> برابر نبودن
> بزرگتر 



دستور DISTINCT (جداسازی) :

SELECT DISTINCT column-name(s) FROM table-name
مثال :
نام جدول 
Order است Company Order Number
sega 3412



دستور Order By :

برای مرتب کردن سطرها
نام جدول 
Order است Company Order Number
sega 3412
ABS Shop 5678
w3s 3212
W3S 6778
مثال :
SELECT Company , OrderNumber


دستور Insert :

INSERT INTO Table-Name ( Column1 , Column2) VALUES

مثال : 
DELETE FROM Person WHERE Lastname=’hasani’ نام جدول Persons است last name First name Adress city
alian hasani NO 40 Esfahan
Hasani Ali No 15 Tehran
نتیجه :
last name First name Adress city
alian hasani NO 40 Esfahan
SEGA
W3S
Trio


دسترسی به یک پایگاه داده از یک صفحه ASP :

١-ایجاد یک 
ADO Connection به یک پایگاه داده
2-باز کردن 
Connection پایگاه داده
3-ایجاد یک 

ADO Record Set 4-باز کردن 
Record set 5-گرفتن داده هایی که نیاز داریم از 
Record Set 6-بستن 
Record Set 7-بستن 
Connection

 

آموزش SQL Server

فرمت :WORD                                                     تعداد صفحه :30

SQL Server آموزش 
   چهار کلمه کلیدی وجود دارند که بخشهای ارزشمند این دستور را تشکیل میدهند : 1- select 2- from 3- where 4- order by شکل کلی دستور : Select [*|distinct column1, column2,…] From table[,table2,…] Where شرط Order by نام فیلد یا شماره فیلد مثال : Select * from customers این دستور تمام رکوردهای جدول customers را برمیگرداند. که نتیجه 91 سطر از اطلاعات این جدول خواهد بود حال اگر شرط Country ='uk' اضافه کنیم ، فقط اطلاعات مشتریان انگلیس جواب خواهند بود که به 7 سطر تقلیل مییابد. select * from customers where Country ='uk' حال select City,Country from customers order by city فقط ستونهای نام شهر (city) و نام کشور (Country) را بر گردانده و بر اساس نام شهر مرتب میکند. دستور بالا با دستور پایین هردو یک جواب را میدهند : select City,Country from customers order by 1 که 91 سطر بازگردانده خواهد شد . در نتیجه پرس و جو تعدادی سطر تکراری وجود دارد مانند شهر London که اگر از کلمه Distinct‌ در Select استفاده کنیم این سطرهای تکراری حذف خواهد شد . select distinct City,Country from customers order by 1 و جواب 69 سطر خواهد بود. استفاده از توابع در Select 1- Count : تعداد سطرهای بازگردانده شده توسط select را میشمارد. Select Count(*) from Customers where Country ='uk' در اصل تعداد مشتریانی را میشمارد که در کشور انگلیس هستند. که عدد 7 جواب است. 2- Sum : مجموع یک فیلد عددی را برمیگرداند. Select sum(Quantity) from [Order Details] where productid = 11 مجموع فیلد Quantity را برای فیلدهایی که شماره محصول آنها ( Productid) برابر 11 است را محاسبه میکند نکته 1 : در دستور select میتوان از اسم مستعار استفاده کرد ، یعنی نام جدیدی را برای یک ستون در نظر گرفت به عنوان مثال select قبل را به شکل زیر بکار برد : Select sum(Quantity) as Sum_QTY from [Order Details] where productid = 11 که Sum_QTY یک اسم مستعار برای مجموع است. استفاده از کلمه کلیدیas ‌اختیاری است. نکته 2 : در دستور select هرگاه اسم فیلدی اسم خاص باشد و یا فاصله بین اسم باشد مثل Order Details که فاصله بین اسم جدول است حتماُ از علامت براکت [] میبایست استفاده کرد. نکته 3 : استفاده از group by : هنگامی که از توابع count ‌ و Sum به همراه یک فیلد دیگر در دستور select استفاده میشود از group by استفاده میکنیم . به عنوان مثال دستور زیر جمع مقادیر فیلد Quantity را برای هر شماره محصول محاسبه میکند . Select productid, sum(Quantity) as sum_qty from [Order Details] group by productid که نتیجه مانند زیر خواهد بود : productid sum_qty ----------- ----------- 61 603 3 328 32 297 6 301 41 981 64 740 9 95 12 344 در صورتیکه دستور ordr by 1 بعد از group by استفاده کنیم نتیجه بر اساس کد محصول مرتب خواهد شد. نکته 4 : دستور where می تواند خود شامل یک دستور select باشد : select * from Products where ProductID in ( select distinct ProductID from [order details] where Quantity >70) order by ProductID تنها نکته ای که می بایست توجه کرد این است که نام فیلدی که در شرط آورده می شود حتما در دستور select آورده شود, به عبارت دیگر select درون شرط تنها یک ستون را می بایست برگرداند . تمرین : با فرض اینکه دو جدول Products و order details دارای ستون (فیلد) یکسان ProductID هستند , یک دستور Select بنویسید که تمام فیلدهایی از Products را نشان دهد که فیلد ProductID آن با ProductID جدول order details یکی باشد.؟ حل : Select pr.* From Products as pr , [order details] as od Where pr. ProductID = od. ProductID قابل به ذکر است که بیش از 90% از کارهایی که ما برروی جداول انجام می دهیم با select و ترکیبات آن انجام می شود. لذا بدست آوردن تبحر در نوشتن select ها می تواند شما را در تهیه برنامه ها یاری کند

مقاله در مورد TCP-IP

فرمت :WORD                                                     تعداد صفحه :38

فهرست مطالب :

 

     عنوان                                                                    صفحه

مقدمه                                                                                4

  TCP/IP چیست ؟                                                            4

IP و Internet ( تاریخچه ای مختصر )                                     5

مشخصه TCP/IP                                                               7

عدم تقارن ناشی از تفاوت هائی در گنجایش حمل و دریافت              7

 

مدل OSI                                                                         8

ارتباط بین پروتکل TCP/IP و مدل OSI                                 9

 

Internet Layer                                                             10

    IP                                                                              10

      IP Datagram                                                       10

       IP Address                                                           11

       Internet Classes                                                 12

    ARP                                                                         15

      ویژگی های ARP                                                        15

RARP                                                                          16

  ICMP                                                                          17

  IGMP                                                                         18

    ویژگی های IGMP                                                        18

    کاربرد های IGMP                                                        18

 

Transport Layer                                                        19

   پروتکل TCP                                                                19

       کاربردهای TCP                                                        21

       خواص TCP                                                             21

   پروتکل UDP                                                               22

      کاربردهای UDP                                                        22

 

Checksum                                                                 23

Pack Sequencing                                                    23

Handshaking                                                            24

 

Application Layer                                                     26

 

IP Spoofing                                                               28

 

اسکن کردن پورت ها در اصطلاح شبکه                                    31

   اسکن کردن UDP                                                         32

   اسکن کننده پورت FIN                                                   32

 

DNS Spoofing                                                          33

 

نشانی دهی / نشانی یابی IP                                                 35

   یکتایی آدرس                                                                36

   تحویل آدرس های IP                                                     36

 

جمع بندی                                                                       37

 

فهرست منا بع                                                                   38

 

 

 

 

 

 

 

 

مقدمه :

 

TCP/IP چیست ؟

 

TCP/IP مجموعه ای از پروتکل ها است که ارتباط بین سرورها و ترمینال ها را که به شبکه های متفاوتی مربوط شده اند , تسهیل می کند.

 

TCP : Transport Control Protocol

IP : Internet Protocol

 

TCP/IP    , stack یا مجموعه ای از پروتکل های گوناگون است . پروتکل اساسا" فرمان ها یا دستور العمل هائی است که به واسطه ان دو کامپیوتر از طریق یک شبکه محلی یا اینترنت می توانند به تبادل داده ها و منابع بپردازند. به TCP/IP مجموعه پروتکل ها نیز می گویند که شامل پروتکل های گوناگونی است ولی TCP و IP از تمام مجموعه پروتکل ها معروف ترند ,که این خانواده را مجموعه TCP/IP گویند .

    TCP/IP   شامل لایه های مختلفی می باشد که هر لایه از جهت انتقال اطلاعات به دنبال دیگریست . و اطلاعات از یک لایه به لایه دیگر منتقل می شود. TCP/IP نه تنها به انتقال اطلاعات کمک می کند بلکه مشکلات بسیاری را که بر سر راه انتقال اطلاعات است را بر طرف می کند . دو اشکال عمده بر سر راه انتقال اطلاعات وجود دارد که عبارتند از 

  1. خراب شدن اطلاعات : اطلاعات به مقصد رسیده اما کاملا" خراب است .
  2. از دست دادن اطلاعات : بسته هائی که حاوی اطلاعات هستند به مقصد نرسیده و گم می شوند .

TCP/IP این اشکالات را پیش بینی کرده و ابزارهای ممکن برای تصحیح و جلوگیری از وقوع انها را دارا می باشد .

 

 

 

 

 

 

 

 

 

 

IP  و INTERNET (تاریخچه ای مختصر):

 

   TCP/IP در زمان ایجاد شبکه  ARPANET توسعه یافت و بعنوان مجموعه ای از پروتکلها شناخته شده و معرفی شد.

  درسال 1969 در ایالات متحده امریکا، نمایندگی هیات دولت(DARPA) پروژه ی شبکه یاآزمایشی براساس packet switching ، آغاز کرد.

Packet switching   یا پیام رسانی، تکنیکی برای تحویل پیام هاست که در آ ن بسته ها با استفاده از ایستگاههای موجود در شبکه کامپیوتری از طریق بهترین مسیر قابل دسترسی در بین مبدا و مقصد ارسال میشوند. شبکه های packet switching، اطلاعات را در واحدهای کوچک مدیریت می کنند یعنی پیامها را پیش از ارسا ل به چند ین بسته تجزیه می کنند. اگرچه بسته ها ممکن است مسیرهای مختلف را طی کنند و بطور متوالی یا همزمان نرسند، اما کامپیوتر دریافت کننده می تواند آنها را مجددا به همان پیام اولیه تبد یل نماید. این گونه شبکه ها سریع و کارآمد می باشند. این شبکه ها برای مدیریت ترافیک و تجزیه و بازگرداندن بسته ها به حا لت اول به کامپیوترها و نرم افزارهایی با "هوشمندی" لازم جهت کنترل تحویل پیام ها نیاز دارند. ا ینترنت یک نمونه  از این شبکه هاست.

   شبکه آزمایشی مذکور که ARPANET نامیده شد ، با هدف مطالعه فن آوری های در زمینه ارتباطات , مستقل ا ز نیروی تجارت، ایجاد شد. تعداد زیادی ا ز تکنیک های ارتباطاتی از طریق مودم ها (modems) به همان زمان بر می گردد.

   در سال 1975 شبکه بطور رسمی از مرحله آزمایشی وا رد مرحله اجرایی می شود. گسترش و پیشرفت ARPANET متوقف نشد در نتیجه مسائل پایه ای پروتکل های TCP/IP در این زمان توسعه یافتند. بنابراین بعد ا ز ARPANET ، مرحله ی اجرایی آغاز شد. در ژانویه 1978، جان  پاستل (John Postel) IP را تعریف کرد و IP در1981، بصورت یک استاندارد در RFC791درآمد.

   در 1983 پروتکلهای TCP/IP مانند یک استاندارد نظامی ، پذیرفته شدند و تمام وسایل مرتبط با شبکه، شروع به استفاده ا ز آ ن کردند. برای تسهیل شرایط در برابر ا ین تغییر،DARPA که سرنام Defense Advanced Research Projects می باشد،ا ز دانشگاه Berkeley ، خواست تا ا ین پروتکل ها را درنسخه BSD ی UNIX شان اجرا کنند. بدین گونه پیوند بین UNIX و پروتکلهای TCP/IP  شروع شد.   همکاری دانشگاه  Berkeley ، بخصوص در مرحله نظریه (مفهوم سوکتها یا حفره ها)با امکانات مشابه نظیر آنچه که در حال حاضر تحت پوششUNIX است ، کمک بزرگی بود. در این زمان کلمه «Internet» با حرف بزرگ  «I»  برای نشان دادن اتصال داخلی شبکه ها  به وجود آمد.

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

   بعد از سال 1990 ، ARPANET دیگر مطرح نبود ، بلکه Internet مطرح بود که نشان دهنده فضایی از ارتباطات است که بسیار گسترده می باشدوصدها هزار سایت از طریق آ ن با هم مرتبطند. بعد از سال 1994 ، اینترنت وارد تجارت شد و حضور آ ن بخصوص در سال 1991 توسط ابزار جدیدی بنام شبکه جهان گستر “World Wide Web”  یا “Popular Web”و رابط ها و نرم افزارهایش ، مطرح شد. بعد از 1995 برای نشان دادن محبوبیت رو به گسترش آ ن، در خواستهایی که در نتیجه معا مله های سود آور می شد ،پروتکل، راه  را برای گسترش گشود و نسخه جدیدversion6(IPNg) در مرحله گسترش تجربی تعریف شد.

   پروتکل هایی که با TCP/IP نشان داده شدند ، بر LAN(Local Area Network) غلبه کردند زیرا  استفاده از پروتکل های In-House  در محیط خارجی ، آ سا نتر است.

    برای کاربرها ، دسترسی به ا ینترنت ، با به کارگیری برنامه های ویژه و تخصصی ، ممکن شده و

 آن قدر آسان که هربخشی از این برنامه ها می توا نند بدون آگاهی از قسمت های دیگر ، کار کنند.

   تنها ، شبکه های برنامه نویسان برنامه های کاربردی و مدیران سیستم ها نیاز به دانستن  رمز های این برنامه های کاربردی دارند.

 

   معروفترین سرویس های شبکه ها عبارتند ا ز:

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

- دهها هزا ر مجموعه مباحثاتی(news)

- تبادل فا یل بین ماشین ها( ftp و مشتقا ت آ ن مانند fetch یا wget )

- برقرا ری ا رتباط ا ز راه دور که به کاربر ا ین امکان را می دهد تا به یک  سا یت دور ( از نظر فاصله مکانی و زمانی) متصل شود.

- پیشخدمت های محاوره ای که نامهای قدیمی آ نها : archie,gopher,Veronica,wais… بوده و ا ز ا ین به بعد ، آ نها با آ مدن WEB(protocol HTTP) ، منسوخ می شوند.

- در آ خر ، حفظ رادیو ، هما یش ویدیویی ، حقیقت مجازی با vrml و CAT که سرنام(Computer-Aided Testing) ا ست.

 

   در خاتمه ا ین پاراگراف در مورد تاریخچه ، می توا ن گفت که ا ینترنت ، مجموعه ای به ظاهر درهم (هیچ سلسله مرا تب و ساختار متمرکزی ندارد) ا ز شبکه هایی است که به هم مرتبطند و به دارنده های گوناگونی تعلق دارند. 

دانلود مقاله سیگنالینگ تلفن

فرمت :WORD                                                     تعداد صفحه :29

فهرست

  • مقدمه
  • مراحل یک تماس ساده
  • سیگنالینگ آدرس و تیپ و زنگ
    • سیگنالینگ آدرس
    • شماره‌گیری پالس
    • شماره‌گیری DTMF
  • سیگنالینگ شروع حلقه (Loop Start)
    • سیگنالینگ آنالوگ شروع حلقه
    • سیگنالینگ دیجیتال شروع حلقه
    • آزمایش شروع حلقه
    • ...

 

 

 

مقدمه

در این مقاله سعی شده است روشهای سیگنالینگ مورد نیاز برای کنترل انتقال مکالمات تلفنی تشریح گردد. روشهای سیگنالینگ به 3 دسته قابل طبقه بندی هستند: نظارت، آدرس‌دهی و آگاه‌سازی.

نظارت شامل تشخیص تغییرات در وضعیت مدار می‌باشد. هنگامی که این تغییرات تشخیص داده‌شد، مدار ناظر پاسخی از پیش تعیین شده (همانند بستن یک مدار جهت برقراری یک تماس) را تولید خواهد کرد.

آدرس‌دهی شامل انتقال ارقام شماره‌گیری شده (به صورت پالس یا تن) به یک PBX (تبادل کنندة خصوصی شاخه‌ها) و یا CO (دفتر مرکزی) می‌باشد. این ارقام شماره‌گیری شده سوییچ و مسیر ارتباطی به یک تلفن دیگر و یا CPE دیگر مهیا می‌کند.

آگاه‌سازی پیام‌های صوتی قابل شنیدن برای کاربر فراهم می‌کند که نشانگر وضعیت خاص خط، اعم از یک تماس تلفنی و یا اشغال بودن خط تلفن می‌باشد.

تماسهای تلفنی بدون برقراری تمامی این تکنیک‌ها برقرار نخواهند شد.

قبل از تشریح تک تک این روشهای سیگنالینگ به توصیف اعمالی که در روند یک تماس ساده تلفنی (از شروع تا خاتمه مکالمه) انجام می‌شود می‌پردازیم.

 

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

مراحل یک تماس تلفنی با Loop Start Signaling را می‌توان به 5 مرحله تقسیم بندی کرد.

قبل از برداشتن گوشی – مرحله برداشتن گوشی – شماره گیری – سوییچینگ – زنگ خوردن و صحبت کردن.

شکل 1 مرحله قبل از برداشتن گوشی (On Hook) را نشان می‌دهد.

قبل از شروع شدن یک تماس تلفنی، دستگاه تلفن در حالت آماده به کار قرار دارد و آماده است تا شخص تماس گیرنده گوشی را بردارد. این وضعیت را On Hook می‌نامند. در این حالت مدار تلفنی که با ولتاژ 48 ولت بین مرکز تلفن (CO) و محل تماس برقرار است، مدار باز است، پس جریانی از این مدار عبور نمی‌کند.

 

منبع تغذیه برای این مدار در مرکز تلفن قرار دارد. وجود منبع تغذیه در مرکز تلفن این خصوصیت را دارد که هنگام قطع برق در محل تماس گیرنده نیز امکان برقراری خدمات تلفنی برای تماس گیرنده وجود خواهد داشت.

شکل 2 مرحله برداشتن گوشی (Off Hook) را نشان می‌دهد.

این مرحله هنگامی رخ می‌دهد که مشتری موردنظر قصد انجام یک تماس تلفنی را دارد و گوشی تلفن را از قلاب خود خارج می‌کند. کلید موجود در قلاب مدار بین مرکز تلفن و دستگاه تلفن مشتری را برقرار می‌کند و باعث برقراری جریان در مدار می‌گردد.

مرکز تلفن این جریان یافتن را تشخیص خواهد داد و بوق مخصوص آماده‌بودن برای شماره‌گیری (Dial Tone) را که بوقی با فرکانس 350 و 440 هرتز و به‌صورت ممتد می‌باشد را ارسال خواهد کرد.

آموزش RUP

فرمت :WORD                                                     تعداد صفحه :51

فصل اول : UML

مقدمه:

با کمی اغماض می‌توان ادعا کرد که در میان شاخه‌های مختلف مهندسی در هرکدام که دارای قدمت بیشتری است، همگرایی بیشتری در اتخاذ روش و ابزار برای انجام اعمال نسبتاً مشابه از میان متخصصان و متولیان آن رشته وجود دارد. به طور مثال در حال حاضر برای اجرای یک سازه در هر نقطه از دنیا، مهندسین عمران از یک روند همسان با توالی مشابه شامل: الف)تولید طرح عمرانی ب)پیاده‌سازی نقشه ج)محاسبات سازه‌ای د)اجرا استفاده می‌کنند. ولی در رشته نوپایی چون مهندسی نرم‌افزار، گاه چنان روش‌ها متفاوت است که از دید یک ناظر خارجی، دو تیم نرم‌افزاری مختلف که هر دو قصد تولید محصولی مشابه را دارند، دو تیم در رشته‌های متفاوت به نظر بیایند. یکی از علل وجود تمایز در تولید نرم‌افزار میزان تخصص نیرو و زمان به پیاده‌سازی می‌باشد.بدین معنا که در نزد بسیاری از برنامه‌نویسان تولید نرم‌افزار معادل است با تولید کد. ولی از نظر بعضی دیگر تولید کد تنها بخشی از تولید نرم‌افزار است که در بسیاری از موارد حتی منابع و زمان. اختصاص داده شده به آن در طول پروسه.تولید نرم‌افزار کمتر از50% می‌باشد.

از یک دیدگاه کلی، پروسه تولید نرم‌افزار را می‌توان به دو بخش کلی شامل:

   الف)تحلیل و طراحی ب)پیاده‌سازی تقسیم کرد. از دیدگاه دسته اول، برنامه‌سازان، تحلیل و طراحی صرفاً فهم ذهنی مساله می‌باشد که دقیقا پس از آن بایستی اقدام به پیاده‌سازی کرد. در حالیکه در نظر دسته دوم، فاز تحلیل و طراحی پر اهمیت‌تر از فاز دوم می‌باشد که بایستی برای انجام آن از متدولوژی‌ها و روش‌های استاندارد استفاده کرد. UML یک زبان مدلسازی می‌باشد که در فاز تحلیل و طراحی مورد استفاده قرار می‌گیرد.

 

 

 

 

 

 

مدل‌سازی (Modeling) چیست؟

   مدل‌سازی یکی از تکنیک‌های ذهنی بشر می‌باشد که نه تنها برای اهداف علمی، بلکه برای انجام امور روزمره بشر به دفعات مورد استفاده قرار می‌گیرد. مدل‌سازی به طور کلی یعنی شبیه‌سازی یک محیط با اندازه‌های متفاوت و از محیط واقعی و احتمالا مواد و مصالحی متمایز از جنس مواد و مصالح محیط مدل شده. در مدل‌سازی ابتدا اجزای محیط واقعی انتخاب شده و متناسب با هدف مورد نظر از مدل‌سازی خصوصیاتی از هریک از اجزای واقعی انتزاع می‌شود، یعنی به ازای هزیک از اجزای محیط واقعی یک موجودیت تجریدی ساخته می‌شود و با برقراری ارتباطی مشابه با ارتباط اجزای واقعی، در میان موجودیت‌های تجریدی، محیط واقعی مدل می‌شود. برای روشن شدن مثالی می‌زنیم:

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

   ولی متخصصان برای انجام چنین آزمایشی به مدل روی می‌آورند. یعنی یک جسم فیزیکی کوچک با خصوصیات آئرودینامیکی لحاظ شده در طراحی اتومبیل، ساخته می‌شود و با قرار دادن آن در یک تونل باد، حرکت اتومبیل در فضای واقعی را شبیه سازی می‌کنند و بدین طریق میزان مقاومت هوا را می‌سنجند.

   نکات مورد توجه در این مدل‌سازی، یکی اندازه مدل و دیگری خصوصیات آن می‌باشد. مدل بسیار ساده و کوچک می‌باشد و از طرفی تنها خصوصیت آئرودینامیکی اتومبیل در مدل لحاظ می‌شود. چرا که هدف ما از مدل‌سازی تنها بررسی خصوصیات آئرودینامیکی اتومبیل است و مدل الزاماً نبایستی از جنبه‌های دیگر، شباهتی به اتومبیل واقعی داشته باشد. مثلا در ساخت چنین مدلی به هیچ‌وجه به استحکام اجزا و یا زیبایی مدل توجه نمی‌شود چون بررسی چنین خصوصیاتی خارج از هدف این مدلسازی خاص است.

   مثال بالاتنها یک جنبه از مدل‌سازی را بیان می‌کند و آن جنبه شناختExploration می‌باشد. یعنی در مدلسازی‌های مشابه مدل‌سازی فوق‌الذکر، هدف از مدل‌سازی تنها شناخت محیط مورد مدل می‌باشد. یک جنبه دیگر از مدل‌سازی تبیین (specification) می‌باشد. یعنی گاه برای معرفی و ارائه خصوصیات یک موجودیت واقعی یک مدل از آن ارائه می‌شود. نقشه جغرافیایی مثال خوبی است که این جنبه از مدل‌سازی را مورد نظر دارد.

پس می‌توان گفت که هدف از مدل‌سازی دو چیز می‌باشد:

الف)شناخت(exploration)
ب)تبیین(specification)

که بر اساس تعریف مسئله، مدل‌سازی یکی یا هردو هدف را در نظر می‌گیرد.

 

 

 

 

مهندسی نرم افزار و معرفی UML

یکی از مباحث مهم در علم کامپیوتر بحث مهندسی نرم افزار می باشد که متاسفانه در ایران در وب سایت ها کمتر به آن پرداخته می شود . در حالیکه امروزه شرکت ها بدون داشتن اصول مشخص مهندسی نرم افزار هیچگاه تصمیم به ایجاد سیستم های نرم افزاری نمی گیرند .

همانگونه که می دانید طراحی و تولید سیستم های نرم افزاری دارای یک چرخه حیات می باشد که در علم مهندسی نرم افزار به بررسی این چرخه حیات و عوامل مرتبط با آن پرداخته می شود . به طور کلی مراحل این چرخه به شرح زیر می باشد :

  • فعالیت جمع آوری نیازمندی های و مشخص کردن آنها . این نیازمندی ها کاری را که سیستم می بایست انجام دهد را مشخص می کنند .
  • فعالیت تحلیل نیازمندی ها برای درک بهتر آنها .
  • فعالیت طراحی برای اینکه مشخص شود که سیستم چگونه نیازمندی ها را برآورده می کند .
  • فعالیت ساخت سیستم .
  • آزمایش سیستم برای تایید اینکه آیا سیستم نیازمندی ها را برآورده کرده است یانه ؟
  • و در نهایت فعالیت تحویل سیستم .

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

متدولوژی

در ابتدا باید به تعریف متدلوژی و اینکه یک متدلوژی چه کاری انجام می دهد پرداخت .

تعریف : متدلوژی یا فراروش مجموعه ای است همگرا و هدف مدار از مفاهیم ، عقاید ، ارزش ها و اصولی که بوسیله منابعی در جهت حل مسایل گروهی بکار گرفته می شود و می خواهد تغییرات مطلوبی را در وضع موجود یک سیستم بطور غیر تصادفی ایجاد نماید .

یک متدلوژی در حقیقت سه وظیفه دارد .

  1. فرموله کردن مسئله .
  2. بیان نحوه حل مسئله
  3. پیاده سازی مسئله .

هدف من در اینجا بررسی متدلوژی های شی گرا می باشد . دیدگاه شی گرایی از اواسط دهه 70 میلادی در مباحث برنامه نویسی کامپیوتر متولد شد . پس از گذشت چند سال و در اوایل دهه 90 به جهت ناکارآمدی روش های سنتی در مباحث تحلیل و طراحی سیستم های اطلاعاتی و کامپیوتری و نیز ظهور سیستم هایی که مدل سازی آنها به روش های سنتی بسیار ناقص بود ، تحلیل گران و طراحان سیستم را به این فکر انداخت تا از دیدگاه شی گرا علاوه بر برنامه نویسی در زمینه تحلیل و طراحی سیستم نیز استفاده کنند , و UML  یک مدل سازی شی گراست.

زبان مدلسازی یکنواخت:

زبان مدلسازی یکنواخت یا Unified Modeling Language (UML)، یک زبان مدلسازی است که برای تحلیل وطراحی سیستمهای شی‌گرا بکار می‌رود. UML اولین بار توسط شرکت Rational ارائه شد و پس از آن از طرف بسیاری از شرکت‌های کامپیوتری و مجامع صنعتی و نرم‌افزاری دنیا مورد حمایت قرار گرفت؛ به طوریکه تنها پس از یک سال، توسط گروه Object Management Group، به عنوان زبان مدلسازی استاندارد پذیرفته شد. UML تواناییها و خصوصیات بارز فراوانی دارد که می‌تواند به طور گسترده‌ای در تولید نرم‌افزار استفاده گردد. در ادامة این مقاله ابتدا به تاریخچة UML و در ادامه به معرفی، ویژگیها و نمودارهای آن پرداخته می‌شود و در پایان، روند حرکت به سمت UML و اهمیت آن برای ایران، بررسی خواهد شد.