Practical Analysis and Design for Client/Server and GUI Systems