adding software structur