Tutorial: Nicolai Josuttis
Agility and SOA – Experiences with System Landscapes under Maintenance
Nicolai Josuttis, IT communication
Friday, Jun 25, 17:15 – 18:45 @ B 003
The world is growing together and more and more we have the task to realize business processes distributed over multiple teams, companies, locations, and domains. For example, mobile phone companies these day exchange data with banks and insurances, logistics companies (to ship mobile phones), phone vendors, airlines (to offer business customers both special rates and lounge access), and so on. But, of course, we still have to be agile. We have to deliver new or modified distributed business processes as soon as possible with the best quality we can provide.
SOA is an approach that tries to deal with this requirement. And it has a meta story behind, which is pretty similar to agility. In essence, it is a value systems that takes the next revolutionary step for appropriate software development of large systems. Just like agility changes a lot by accepting that requirements change, SOA changes a lot by accepting that systems and solutions are heterogeneous. The problem is, however, that due to the size of the systems the common practices have to change to keep the agile value system alive.
In this talk I will present and discuss my experiences and lessons learned by trying to apply agile principles while maintaining large system landscapes with plenty of systems and hundreds or even thousands
Topics will include:
- Where do traditional agile practices not scale?
- Why are systems under maintenance different?
- How to refactor distributed systems?
- What kind of organizational structure and culture is necessary and appropriate for distributed development?
- How to deal with distributed system tests?
The value of this tutorial will be to get a consolidated first class experience report about the problems and possible solutions to be agile in our modern world of continuous development and modification of system landscapes that are getting larger and larger.