• شماره ركورد
    18465
  • شماره راهنما(اين فيلد مربوط به كارشناس ميباشد لطفا آن را خالي بگذاريد)
    ۱۸۴۶۵
  • پديد آورنده

    علي صداقت باف

  • عنوان
    يك چارچوب براي ارزيابي كمي ويژگي‌هاي كيفي معماري نرم افزار
  • مقطع تحصيلي
    دكتري
  • رشته تحصيلي
    نرم افزار
  • تاريخ دفاع
    بهمن ۱۳۹۶
  • استاد راهنما
    دكتر محمد عبداللهي ازگمي
  • دانشكده
    كامپيوتر
  • چكيده
    ويژگي‌هاي كيفي (مانند كارايي و امنيت) پايه و اساس ارزيابي كيفيت سامانه‌هاي نرم‌افزاري هستند. براي برخي از اين ويژگي‌ها معيارهاي كمّي شناخته‌شده‌اي وجود دارد كه مي‌توان با استفاده از آن‌ها سطح كيفيت يك سامانه نرم‌افزاري را ارزيابي نمود. با توجه به رشد هزينه تغييرات در طول فرايند ساخت سامانه، در صورتي‌ كه اين ارزيابي در مراحل اوليه‌ ساخت انجام گيرد، بسيار مقرون به صرفه خواهد بود. معماري يكي از محصولات فرايند ساخت‌ نرم‌افزار است كه تصميمات كليدي اتخاذ شده در مورد نيازمندي‌هاي سامانه را مشخص مي‌كند و در نتيجه، بيشترين تأثير را بر كيفيت محصول نهايي دارد. اين در حالي است كه در متدولوژي‌هاي سنتي ساخت نرم‎‌افزار، به ويژگي‌هاي كيفي اغلب در مراحل پاياني ساخت توجه مي‌شود. علاوه بر اين، نه‌تنها ارزيابي كمّي هر ويژگي كيفي چالش‌هاي خاص خود را دارد، بلكه بين آن‌ها نيز روابط پيچيده‌اي حاكم است. براي نمونه، امنيت بر كارايي تأثير مي‌گذارد و كارايي بر تغييرپذيري مؤثر است. ناديده گرفتن اين ارتباطات و عدم برقراري مصالحه بين ويژگي‌هاي كيفي مي‌تواند به شكست فرايند ساخت منجر شود. تاكنون، روش‌هاي متعددي براي ارزيابي كمّي ويژگي‌هاي كيفي در سطح معماري نرم‌افزار ارائه شده است. اما اغلب آن‌ها تنها بر ارزيابي يك ويژگي بدون در نظر گرفتن ارتباطات آن با ساير ويژگي‌ها تمركز دارند. علاوه بر اين، اغلب اين روش‌ها، راهكار مناسبي براي تحليل عدم‌قطعيت در ارزيابي و بازخورد نتايج ارزيابي به مدل معماري ارائه نمي‌دهند. هدف از اين رساله معرفي چارچوب جديدي با نام اختصاري SQME براي ارزيابي ويژگي‌هاي كيفي در سطح معماري نرم‌افزار است. ابتدا يك تعريف عام و مستقل از زبان توصيف معماري و ويژگي‌هاي كيفي از اين چارچوب ارائه مي‌شود. سپس، دو تعريف خاص‌سازي شده از آن براي زبان UML و ارزيابي سه ويژگي كارايي، اتكاپذيري و امنيت مطرح مي‌گردد. در اين تعاريف، از نمايه‌هاي MARTE، DAM و SecAM به منظور افزودن اطلاعات موردنياز براي ارزيابي سه ويژگي فوق به مدل‌هاي UML استفاده مي‌شود. همچنين، هر دو تعريف روش‌هايي مبتني بر الگوريتم‌هاي تكاملي و الگوريتم‌هاي تصميم‌گيري چندمعياره را به ترتيب به منظور بازخورد نتايج ارزيابي به مدل معماري و تحليل مصالحه بين ويژگي‌هاي كيفي پيشنهاد مي‌دهند. در تعريف خاص اول از مدل‌هاي پاداش براي تحليل يكپارچه معيارهاي كمّي و از روش مونت-كارلو به منظور تحليل عدم‌قطعيت در نتايج ارزيابي استفاده مي‌شود. اين در حالي است كه تعريف خاص دوم مستقل از روش تحليل كمّي بوده و استفاده از نظريه شواهد را به منظور توصيف و تحليل عدم‌قطعيت پيشنهاد مي‌دهد. علاوه بر ارائه مثال‌هاي شهودي و تشريح مطالعات موردي صورت گرفته، يك ابزار نرم‌افزاري نيز معرفي مي‌شود كه با هدف خودكارسازي فرايند ارزيابي تعريف‌ شده در چارچوب SQME طراحي و ساخته‌ شده است.
  • تاريخ ورود اطلاعات
    1396/11/24
  • تاريخ بهره برداري
    1/21/2018 12:00:00 AM
  • دانشجوي وارد كننده اطلاعات

    علي صداقت باف

  • چكيده به لاتين
    Quality attributes (e.g. security and performadnce) provide a foundation for software quality evalua-tion. For some of these attrivbutes, there are well-known quantitative metics that help us determine to what extent the quality requirmeents are achieved. Due to the increase in modification costs during the development process, it would be too cost-effective if this evaluation takes place in the early de-velopment stages. Architecture is an artifact of the software development process, which reflects the key decisions made for the systm requirements. Architectural design decisions have major impacts on the quality of the final product. However, in traditional software development processes quality attributes are con-sidered only in the final development stages. The main reason for this issue is the information gap that exists between software engineers and quality exnperts. Moreover, not only quantitative evalua-tion of each quality attribute has its own difficulties, but also there exist complex relations between different quality attributes, e.g. security affects performance, and performance affects modifiability. Ignoring these relations may lead to the failure of the whole development process. Hereunto, many methods have been proposed for architecture-level quantitative evaluation of software quality attributes, however most of them concentrate on a single attribute without consider-ing its relations with others. Furthermore, many of these methods propose no solution for analyzing uncertainty in analyses, and improving the architecture based on evaluation results. The purpose of this thesis is to present SQME as a framework for quantitative evaluation of the quality attributes of software architecture. At first, a generic and language-independent definition of this framework is presented. Then, two specialized definitions for the UML language are elaborated. In these definitions, performance, dependability and security are the attributes considered for evalua-tion, and the MARTE, DAM and SecAM profiles are used for adding the necessary information to UML models. Moreover, both definitions propose methods based on evolutionary algorithms and MCDM algorithms for improving architecture models and analyzing the tradeoffs between the quality attributes. In the first specialized definition, reward models are used for integrated evaluation of quantitative measures, and the Monte-Carlo method is used for analyzing uncertainty in evaluations. Whereas. The second definition suggests the use of evidence theory for this purpose. In addition to the illustra-tive examples and case studies performed on each definition, a software tool is introduced, which is developed to automate the evaluation processed proposed in the SQME framework.