software complexes