specifications for software design advanced software engineering 242922