COMP5028 Object Oriented Analysis and Design Semester 2, 2004 Laboratory session One Storie Dixson 432A Wednesday August 4, 2004 School of Information Technologies The University of Sydney Objective · Get familiar with a UML tool · Learn to draw simple class diagram to express class relationship · Practice reverse engineering and design pattern recognition on an automatically generated Java package (advanced1). Tasks A Install and launch ArgoUML v0.16 1 Download the local copy of ArgoUML 0.16 from the link www.cs.usyd.edu.au/~comp5028/software/ArgoUML-0.16.zip. You can also click the link directly from the course web. 2 Create a directory called ArgoUML-0.16 and extract all files to that directory. 3 Launch ArgoUML by typing the command “java –jar argouml.jar” in a shell window. 4 Alternatively you can use the Visio tool already installed on the lap PC B. Draw a Class diagram for a book chapter with the following structure: a chapter comprises several sections, each of which comprises several paragraphs and figures. A paragraph comprises several sentences, each of which comprises several words. (You may ignore punctuation and you needn’t pursue the structure of a figure any further). Show as much information as you could (like stereotypes, associations , multiplicities) C. The package com.contoso.stockservice.wse.samples._2003._06 in StockSample.jar consists of 6 automatically generated Java files. Those files are used as a proxy to call a remote object StockServiceSoap. StockServiceSoap object has a public method (operation) stockServiceRequest(). Extract all source files using command “java xvf StockSample.jar” Draw a class diagram for StockSample.jar to see if it helps you understand the structure of the package. Compare this with the proxy design 1 Some lab may include an advanced task, which involves in-depth understanding of the concepts covered in current week. This is designed for students who want more challenge in the early stage. Eventually, you should find it easier to finish after a few more weeks’ learning and practicing. Please be advised that something being marked as “advanced” does not mean you are not required to grasp it.