Еволуција софтвера


Студијски програм:

Дипломске (мастер) студије електротехнике и рачунарства

Група за:

софтверско инжењерство

Назив предмета:

Еволуција софтвера

Наставник:

Бојић Драган

Статус предмета:

изборни

Број ЕСПБ:

6

Услов:

 

Циљ предмета

Побољшавањем техника пројектовања и/или променама у пословним циљевима и процесима посла, постоји јака потреба да постојећи софтверски системи еволуирају задржавајући свој континуитет употребе. Таква еволуција захтева различите методе и технике.

Исход предмета

Критички оценити тренутне основе за еволуцију софтвера.

Усвојити технике реинжењерства за миграцију и апстракцију софтвера

Стећи практична искуства у коришћењу алата

 

 

Садржај предмета

 

Теоријска настава

Еволуција у оквиру животних циклуса развоја, Леманови закони еволуције, Управљачки аспекти еволуције софтвера, Рефакторисање, Аспектно оријентисана еволуција софтвера, Теоријa трансформације и њена имплементација

 

Практична настава

Аудиторне вежбе које илуструју поједине концепте и технике обрађене на предавањима. Практичан пројекат који студент самостално израђује.

Литература

 

1)

Grubb, Takang, Software Maintenance Concepts and Practice, World Scientific, 2003.

2)

Martin Fowler. Refactoring: Improving the design of existing programs. Addison-Wesley, 1999.

3)

Fowler, Patterns of Enterprise Application Architecure, Addison-Wesley 2003.

4)

Ambler, Sadalage, Refactoring Databases: Evolutionary Database Design, Addison-Wesley, 2006.

5)

Laddad, AspectJ in Action, Manning, 2003.

Оцена знања (максимални број поена 100)

Предиспитне обавезе

Број поена

Практичан пројекат

50

Завршни испит

Број поена

Усмени испит

50