Smart Technologies in Software Life Cycle

In software life cycle models traditionally the main attention is being paid to the software development, including requirement gathering (specification), design, implementation and testing. Less research is devoted to the system maintenance and operation despite the fact that these aspects take up the main part of the duration of a successful system. In the paper smart technologies are being analysed - architectural designs and software components which using meta information on system and its usage conditions are able to solve efficiently the problems of maintenance and usage: data quality and performance monitoring, software flexibility and testability, context dependant user interface. The advantages of smart technology usage are pointed out helping to improve software maintenance and operation processes.