1. building large systems
2. advanced functional testing
3. locating bugs, debugging
4. runtime monitoring, tracing
5. performance testing (profiling)
6. packaging, installation, upgrading
7. cross-development, emulators
The goal of this course is to provide overview of selected advanced tools that help in software development, show their advanced features, and basic principles of their implementation. The selection of tools is motivated by the current trends in the development of system software.