گروه تلگرامی برنامه نویسان advertise ساخت اپلیکیشن آندروید و IOS و اپ ساز laitec sharif univercity
دانلود پروژه آموزش چندرسانه ای با دایرکتور Director

دانلود پروژه آموزش چندرسانه ای با دایرکتور Director

3000 تومان
دانلود مجموعه 70 پروژه مفید و کاربردی سی شارپ #C

دانلود مجموعه 70 پروژه مفید و کاربردی سی شارپ #C

9500 تومان
دانلود پروژه فروشنده دوره گرد با الگوریتم ازدحام ذرات PSO در #C

دانلود پروژه فروشنده دوره گرد با الگوریتم ازدحام ذرات PSO در #C

4800 تومان
دانلود سورس پروژه فروشگاه کیف با asp.net و sql express

دانلود سورس پروژه فروشگاه کیف با asp.net و sql express

3000 تومان
دانلود پروژه پایانی طراحی وب سایت مخابرات با Asp.net

دانلود پروژه پایانی طراحی وب سایت مخابرات با Asp.net

14000 تومان

معماری نرم افزار software Architecture

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

معماری نرم افزار software Architecture

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

 

در طراحی معماری نرم افزار باید خواص زیر را تعریف کرد:

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

 

طراحی معماری نرم افزار را میتوان با استفاده از مدلهای مختلفی مورد نمایش قرار داد:

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

 

♦ تقسیم بندی ساختاری

اگر سبک معماری یک سیستم ، سلسله مراتبی باشد میتوان ساختار برنامه را به صورتهای افقی و عمودی تقسیم بندی کرد.

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

 

ساختار داده  (Data Structure)

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

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

 

رویه نرم افزار

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

 

پنهان سازی اطلاعات

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

 



1
نظرات
  • user avatar مصطفی حسین خواه:
    ۱۱:۲۰:۲۰ __ ۱۳۹۵/۰۳/۱۱

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

نظر خود را ارسال کنید



نام:
ایمیل:
دیدگاه:
captcha
کد امنیتی :


advertise
طراحی معماری نرم افزارتقسیم بندی ساختاری معماری نرم افزارمدلهای طراحی معماری نرم افزارنرم افزار و معماری آن را توضیح دهیدمعماری نرم افزار چگونه استآشنایی با اصول معماری نرم افزارخواص طراحی معماری نرم افزارساختار داده در معماری نرم افزارمعماری نرم افزار چگونه انجام میشود؟معماری نرم افزار software Architecture چیست؟ لیست برچسب ها
تمامی حقوق این سایت اعم از محتوی ، تصاویر ، قالب و ... متعلق به گروه مهندسی وب سایت سورس کد می باشد.
SourceCodes.ir ، افقی روشن برای برنامه نویسان ، از مبتدی تا حرفه ای

پیشنهادات ویژه سورس کد

پکیج ویژه پروژه پایانی رشته کامپیوتر دانلود مجموعه 70 پروژه کاربردی سی شارپ وب سایت فروشگاه با php