refactured the whole design process