designing software is for computing