- Distributed software systems are increasingly important as organizations collaborate over networks. This requires appropriate distributed software architectures, development methods, and management techniques.
- Key architectures discussed include service-oriented, peer-to-peer, sensor networks, and cloud/grid computing. Middleware is important for supporting distributed applications across different platforms.
- Managing the total cost of ownership of complex distributed software systems is a growing concern, requiring techniques for provisioning, policy definition, load balancing, and more. Autonomic and self-managing techniques aim to increase system autonomy.
- Several example distributed software platforms and applications are presented, including for telecom, healthcare, personal content sharing, and sensor networks. Security and policy-driven approaches