عنوان پایاننامه
استخراج منطق کسب و کار از متن نرم افزارهای سیستم سنتی
- رشته تحصیلی
- مهندسی کامپیوتر -نرم افزار
- مقطع تحصیلی
- کارشناسی ارشد
- محل دفاع
- کتابخانه دانشکده برق و کامپیوتر شماره ثبت: E1992;کتابخانه مرکزی -تالار اطلاع رسانی شماره ثبت: 50874
- تاریخ دفاع
- ۰۵ مرداد ۱۳۹۰
- دانشجو
- سیدحامد حسینی نژاد
- استاد راهنما
- مسعود رهگذر
- چکیده
- عمده سیستم های نرم افزاری سنتی از یک سو به دلیل گذشت مدت طولانی از زمان تولید فاقد مستندات قابل توجه و مورد اطمینان و از سوی دیگر به دلیل نسبتا" جدید بودن مفهوم معماری نرم افزار فاقد معماری ساختار یافته هستند این دو عامل باعث میشود که فرایند نگه دار ی و مدرن سازی این سیستم ها بسیار سخت و در مواردی غیر ممکن باشد.
- Abstract
- Most of legacy software systems suffer from lack of documentaion due to aging problem, and on the other side they don’t have any reliable architecture since this concept is somehow new in software world. Because of these two reasons, legacy software maintenance and modernization process is extremely costly and difficult, if possible. So, modernization process of these systems moves toward reverse engineering. Different Methods focus on different parts of source code. For example, one method may put its focus on variable names and their meanings. while other may work on source code comments or database reverse eningeering. However, business logic is somehow left behind. While extracting business logic knowledge from the source code can directly result in software structure understanding and therefore ease modernization process. That is why in this research, a methodology for extracting business logic from legacy software is proposed. This method is semi-automated and uses information from different parts of source code. This method tries to reach a comprehensive understanding of softeware in different semantic and logical levels. To achieve this, the proposed methodology is an iterative one. At the end of each iteration, a different view of software is obtained. different views consist of intra-procedural view, inter-procedural view, intra-paragraph view and inter-paragraph view. Analysis results of each iteration are used as input for next iteration. In addition to the mentioned understanding levels, this research work thesis has another important achievment. A method is proposed for observing and detecting of software subsystems. There are a few (if any) similar methods with such accuracy. Generally speaking, software subsystem architecture detection is somehow a new concept and little effort has been reported on this subject up to present. For evaluating achivements of thesis, a business legacy software source code is used. As mentioned, the proposed methodology is semi-automatic therefore needs expert user for completion. A source code with a few documents can also used to compensate the lack of expert user. Keywords: legacy software modernization, business logic, software reverse engineering, legacy software maintenance.