Loading...

Definition of a Set of Process Patterns for Aspect-Oriented Software Development Methodologies

Khari, Masoud | 2010

885 Viewed
  1. Type of Document: M.Sc. Thesis
  2. Language: Farsi
  3. Document No: 40806 (19)
  4. University: Sharif University of Technology
  5. Department: Computer Engineering
  6. Advisor(s): Ramsin, Raman
  7. Abstract:
  8. The Aspect-Oriented Software Development (AOSD) approach provides a systematic way to identify, modularize, and represent aspects, i.e. crosscutting concerns in software systems. AOSD methods bring a high level of changeability, configurability, and maintainability in the presence of ever-changing users' requirements. Focusing on aspects during early stages of the software development lifecycle has consequently received special attention by many researchers, leading to the advent of numerous AOSD methods. This has accordingly given a relatively high level of maturity to aspect-oriented (AO) processes. Process patterns, on the other hand, have been adopted as suitable mechanisms for defining or tailoring processes to fit specific organizational or project requirements. Process patterns, which essentially are reusable process components extracted from successful processes and practices, can be used to engineer new software development methodologies or to enhance existing ones. Although these patterns have been defined and used in various software development approaches and disciplines, the AOSD approach suffers from lack of a set of process patterns to encapsulate AO processes and capture their strengths and pitfalls. In this dissertation, we propose a generic Aspect-Oriented Software Process (AOSP), constructed through studying and abstracting prominent AO processes which covers different phases of a generic software development lifecycle. Based on the proposed AOSP, process patterns are provided which incorporate well-established AO practices for different development stages. These patterns, along with the AOSP, can be used to construct new aspect-oriented methodologies or to enhance existing non-aspect-oriented ones. Finally, the proposed process patterns are evaluated by using two different approaches. First, we employ specific process evaluation criteria to analyze various characteristics of these patterns. The analysis results demonstrate support of the process patterns for expected requisites of AO processes. Secondly, a new aspect-oriented process instance is constructed by instantiating the AOSP and assembling the proposed process patterns based on specific project requirements and characteristics. Afterwards, realization of the requirements in the process is examined.
  9. Keywords:
  10. Process Pattern ; Software Development ; Methodology ; Situational Method Engineering ; Aspect-Oriented Methodology

 Digital Object List

 Bookmark

...see more