مروری بر فرضیه های معماری نرم افزار
مدیریت فرضیه های معماری[1] در طول چرخه حیات نرم افزار، بعنوان نوع مهمی از دانش معماری، برای موفقیت پروژه از اهمیت زیادی برخوردار است. با این حال، شواهد تجربی کمی در مورد درک، شناسایی و ثبت فرضیه های معماری از دیدگاه کارورزان موجود است.
هدف:
در این مقاله به بررسی شرایط فعلی در زمینه های نحوه درک فرضیه های معماری و اهمیت آن توسط کارورزان و همچنین نحوه شناسایی و ثبت فرضیه های معماری در توسعه نرم افزار پرداختیم.
شیوه:
مرور مبتنی بر وب با 112 کارورز که زبان چینی را بعنوان زبان بومی استفاده می کنند، انجام گرفت و کارورزان به توسعه نرم افزار در چین متعهد شدند.
نتایج:
یافته های مهم این بررسی شامل موارد زیر می باشند: (1) فرضیه های معماری هم در معماری و هم در توسعه نرم افزار حائز اهمیت می باشند. با این حال، کارورزان، فرضیه های معماری را به روش های مختلفی درک می کنند؛ (2) تنها تعداد کمی از مخاطبان به شناسایی و ثبت فرضیه های معماری در پروژه هایشان پرداختند و تعداد خیلی کمی از راهکارها و ابزارها برای شناسایی و ثبت فرضیه های معماری مورد استفاده قرار گرفتند؛ (3) کمبود راهکارها و ابزارهای ویژه، چالش اصلی (عدم) شناسایی و ثبت فرضیه های معماری می باشد.
نتیچه گیری:
نتایج روی نیاز برای درک قابل قبول مفهوم فرضیه های معماری در توسعه نرم افزار و راهکارها، ابزارها و راهنماهای ویژه برای پشتیبانی از شناسایی و ثبت فرضیه های معماری تاکید دارند.
کلمات کلیدی: معماری نرم افزار، فرضیه معماری، مرور صنعتی.
A survey on software architectural assumptions
Journal of Systems and Software
Volume 113, March 2016, Pages 362-380
Abstract
Context
Managing architectural assumptions (AA) during the software lifecycle, as an important type of architecture knowledge, is critical to the success of projects. However, little empirical evidence exists on the understanding, identification, and recording of AA from the practitioners’ perspective.
Objective
We investigated the current situation on (1) how practitioners understand AA and its importance, and (2) whether and how practitioners identify and record AA in software development.
Method
A web-based survey was conducted with 112 practitioners, who use Chinese as native language and are engaged in software development in China.
Results
The main findings are: (1) AA are important in both software architecting and development. However, practitioners understand AA in different ways; (2) only a few respondents identified and recorded AA in their projects, and very few approaches and tools were used for identifying and recording AA; (3) the lack of specific approaches and tools is the major challenge (reason) of (not) identifying and recording AA.
Conclusions
The results emphasize the need for a widely accepted understanding of the AA concept in software development, and specific approaches, tools, and guidelines to support AA identification and recording.
Keywords: Software architecture, Architectural assumption, Industrial survey
[1] architectural assumptions (AA)