• DocumentCode
    2435862
  • Title

    Software Adaptation: A Conscious Design for Oblivious Programmers

  • Author

    Akkawi, Faisal ; Akkawi, K. ; Bader, Atef ; Ayyash, Moussa ; Fletcher, Daryl ; Alzoubi, Khaled

  • Author_Institution
    Northwestern Univ., Chicago
  • fYear
    2007
  • fDate
    3-10 March 2007
  • Firstpage
    1
  • Lastpage
    12
  • Abstract
    Agility, mobility, evolvability, and reconfigureability are the main characteristics for the next generation software systems. Software adaptation can be seen as the ability to reconfigure the software system by the software engineer, hence the term software adaptability, or the ability of the software to reconfigure itself, hence the term software adaptiveness. Software adaptability and adaptiveness are complementary for building conscious design that can accommodate cohesive components built by programmers that are oblivious to the nature of future changes. The intent of software adaptability is to evolve and reuse the software components in future contexts, whereas the intent of software adaptiveness is to enable the software system to alter its behavior at runtime in order to avoid performance degradation and resource contention. In this paper we present a unified approach that deploys aspect-oriented technology in order to engineer adaptability into the software system and data-mining techniques in order to engineer adaptiveness into the software system. The approach utilizes aspect-orientation and deploys intelligent agents in the design and development of software systems. The intelligent agents in our approach utilize the Q-learning technique in order to discover patterns of performance degradation and reliability violation. The paper articulates the benefits of aspect-oriented methodology and data-mining techniques in building software systems that can cope gracefully with the unanticipated environment changes and requirement changes.
  • Keywords
    data mining; software agents; software engineering; Q-learning technique; aspect-oriented methodology; aspect-oriented technology; building conscious design; conscious design; data-mining techniques; intelligent agents; oblivious programmers; performance degradation; resource contention; software adaptability; software engineer; Buildings; Data engineering; Degradation; Intelligent agent; Programming profession; Software design; Software performance; Software systems; Space technology; Weaving;
  • fLanguage
    English
  • Publisher
    ieee
  • Conference_Titel
    Aerospace Conference, 2007 IEEE
  • Conference_Location
    Big Sky, MT
  • ISSN
    1095-323X
  • Print_ISBN
    1-4244-0524-6
  • Electronic_ISBN
    1095-323X
  • Type

    conf

  • DOI
    10.1109/AERO.2007.352967
  • Filename
    4161407