تبليغاتX
پویا بلاگ
 معماری قسمت سوم

نحوه عملکرد چرخه معماری- کسب و کار:  (ABC: Architecture Business Cycle )

1-معماری بر ساختار سازمان توسعه دهنده تاثیر گذار است و یک ساختار برای سیستم تعیین می کند.
معماری اجزا نرم افزاری که باید پیاده سازی شده و سر هم شوند را تعیین می کند ، این اجزا مبنای توسعه پروژه هستند.تیم ها برای توسعه اجزا منفرد نرم افزار سازمان داده
می شوند و نتیجتا تست و یکپارچه سازی و تخصیص نیروها حول این اجزا انجام خواهد شد.همچنین بودجه و زمانبندی تولید حول این اجزا برنامه ریزی می شوند.اگر شرکتی در ساخت مجموعه ای خاص از نرم افزارها متخصص باشد میتواند با سرمایه گزاری درهر تیم باعث افزایش مهارت و نهایتا کیفیت اجزا تولید شده شود و نهایتا ارتقا کل نرم افزار های تولید شده است.

 2-معماری میتواند بر اهداف تیم توسعه تاثیر گذار باشد.یک نرم افزار موفق میتواند شرکت را قادر سازد که در بازار مربوط به آن نوع نرم افزار جای پای خود را محکم کند و با استفاده از معماری به توسعه موثرتر و بهتر از سیستمهای مشابه بپردازد.

3-معماری می تواند بر نیازمندیهای مشتریان تاثیر گذار باشد.

4-معماری بر مجموعه تجربیات معمار تاثیر گذار است.

جریان کار تولید نرم افزار(Software Process
چرخه معماری- کسب و کار(
Architecture Business Cycle)

جریان کار تولید نرم افزار واژه ای است که به مجموعه فعالیتهای سازماندهی ، تشریفات تو لید و مدیریت توسعه نرم افزار گفته می شود.مجموعه فعالیتهایی که باید برا ایجاد یک معماری انجام شوند به شرح ذیل هستند:

ü ساختن موارد کسب و کار برای سیستم(Business Case)

ü درک نیازمندیها

ü ساختن یا انتخاب معماری

ü مستند سازی و بررسی معماری

ü تحلیل و سنجش معماری

ü پیاده سازی سیستم بر اساس معماری

ü بررسی برآورده شدن معیار های معماری و توسعه نرم افزار بر اساس معماری

· ساختن موارد کسب و کار برای سیستم(Business Case)

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

· درک نیازمندیها

برای استخراج نیازمندی ها از ذینفعان روشهای مختلفی وجود دارد ،برای مثال Object Oriented Analysis یکی از این روشهاست،برای انجام این کار بهتر است سیستمهای مشابه سیستم فعلی بررسی شود و از تجربیات آنها برای درک بهتر سیستم استفاده شود،همچنین راه دیگر برای درک بهتر نیازمندیها ایجاد prototype  است ،همچنین معمار باید ویژگیهای کیفیت نرم افزار برای (Quality Attribute )سیستم را شناسایی کند.

· ساختن یا انتخاب معماری

ممکن است بتوان از میان مجموعه معماری های موجود یک معماری را انتخاب واستفاده کرد

· مستند سازی و بررسی معماری

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

· تحلیل و سنجش معماری

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

· پیاده سازی سیستم بر اساس معماری

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

 

|+| نوشته شده توسط پویا در سه شنبه هفتم خرداد 1387 و ساعت 9:47