عنوان پایاننامه
طراحی معماری نرم افزارهای سازمانی با کاربردپذیری بالا
- رشته تحصیلی
- مهندسی کامپیوتر -نرم افزار
- مقطع تحصیلی
- کارشناسی ارشد
- محل دفاع
- کتابخانه دانشکده برق و کامپیوتر شماره ثبت: E1847;کتابخانه مرکزی -تالار اطلاع رسانی شماره ثبت: 48114
- تاریخ دفاع
- ۲۴ بهمن ۱۳۸۹
- دانشجو
- پرستو دیداری
- استاد راهنما
- رامتین خسروی
- چکیده
- کاربردپذیری یکی از مهم¬ترین ویژگی¬های کیفی و عامل مهمی در موفقیت سیستم¬های نرم¬افزاری است. با وجود اینکه کاربردپذیری در گذشته کمتر از سایر ویژگی¬های کیفی نرم¬افزار مورد توجه بوده است، امروزه اهمیت بالای آن برای سازمان¬های نرم¬افزاری و مهندسین نرم¬افزار روشن شده است. کاربردپذیری در نرم¬افزارهای سازمانی به علت ویژگی¬های خاص این نرم¬افزارها از قبیل کاربران متعدد، استفاده همروند و حجم بالای داده¬ها و واسط¬های کاربر اهمیت بسیاری دارد. با محدود کردن دامنه سیستم¬ نرم¬افزاری مورد مطالعه، می¬توان نیازمندی-های کاربردپذیری خاص سیستم¬های نرم¬افزاری را محدود کرده و تأثیرات آن¬ها را بر معماری سیستم بررسی نمود. در این پژوهش تأثیرات کاربردپذیری بر معماری نرم¬افزارهای سازمانی بررسی شده است. به منظور بررسی تأثیرات کاربردپذیری بر معماری نرم¬افزارهای سازمانی یک راه حل تکرار شونده ارائه شده است که به بررسی تأثیرات متقابل الگوهای معماری برای تعدادی از نیازمندی¬های کاربردپذیری بر معماری نرم¬افزارهای سازمانی می¬پردازد. به منظور بررسی تأثیرات این الگوها بر معماری نرم¬افزارهای سازمانی تأثیراتشان بر سایر الگوهای معماری نرم¬افزارهای سازمانی بررسی شده است. روش تکرار شونده استفاده شده در این پژوهش برای سایر نیازمندی¬های کاربردپذیری نیز قابل استفاده می¬باشد. با استفاده از نتایج بدست آمده از این پژوهش، و استفاده از روش ارائه شده برای نیازمندی¬های کاربردپذیری خاص سیستم¬ها، می¬توان در طراحی معماری نرم¬افزارهای سازمانی، الگوهای معماری مناسب و سازگار با نیازمندی¬های کاربردپذیری نرم¬افزار انتخاب کرد. همچنین در نرم¬افزارهایی با معماری موجود، می¬توان هزینه پشتیبانی از نیازمندی¬های کاربردپذیری جدید را ارزیابی نمود. انتخاب الگوهای معماری مناسب که تأثیر منفی بر سایر ویژگی¬های کیفی معماری نرم-افزار ندارند و با هزینه و زمان پروژه سازگار هستند، ما را در طراحی معماری نرم¬افزارهای سازمانی با کاربردپذیری بالا یاری می¬دهد.
- Abstract
- Usability is an important system quality attribute and an important success factor for the current software systems. System quality attributes like performance, modifiability, and availability have been important for system developers and organizations for a very long time. Usability and its impacts on software architecture, which unlike the aforementioned attributes, did not get much attention in the past, is now gaining importance. Primitive approaches to implement usability are separation of the user interface from other parts of the application and making the software modifiable. Today, usability means something more than interface modifiability. It is proven that usability has a great impact on the software architecture. Not paying enough attention to this important quality attribute in the early stages of the design process has proven to impose high costs on the software production in the late stages of the software production. Usability is important to enterprise applications because of their typical characteristics. Enterprise applications have a large number of users that interact with the system concurrently, a large number of user interface screens and a lot of persistent data. By specifying the domain of the software system under study, we can specify the usability requirements that are important for the system and investigate their impacts on the system architecture. In this research, we investigated the iinfluences of usability on the enterprise application architecture. To investigate the usability influences on enterprise applications architecture, we proposed an iterative research method and used it for a number of architecturally sensitive usability requirements. These usability requirements were analyzed individually to study the impacts of usability on enterprise applications architecture. The result of the analyses and impact investigations may be used to help enterprise application architecture designers and developers to select appropriate architectural patterns for their enterprise application to minimize the cost of usability, or may help them to determine the cost of supporting some usability requirements in a system with predefined software architecture. Keywords: Usability, Usability Requirements, Software Architecture, Enterprise Applications, Architectural Patterns