1、软件体系结构实验二实验报告广西师范大学、计算机与信息工程学院软件体系结构课程实验二 UML架构设计实验一、 实验内容1、 设计一个简单的商品类Goods的类图。2、 学习了解UML架构设计的基本设计方法。3、 借助MyEclipse的Java代码自动生成功能生成Java代码和逆向生成类图。(对于使用C+代码的可参考)二、 实验条件1、 硬件环境:单机/网络系统,X86系列计算机,TCP/IP网络平台2、 软件环境:WIN9X/NT/2K/XP 操作系统平台3、 开发环境:MyEclipse开发平台、UML支持平台 4、 参考资料:教材软件体系结构清华大学出版社三、 实验过程过程:(1)打开My
2、Eclipse8.5,单击“文件新建其他”菜单,弹出如图1 所示对话框。选择MyEclipse项目下子项目UML1 Model,点击“next”。图1(2)单击“完成”按钮,进入UML可视化编辑设计器。如图2所示。其中空白区域为UML设计区。图2(4)借助类图设计工具设计类Goods,如图3所示 图3(5)单击“UMLGenerate Java”菜单,弹出如图4 所示对话框。选择Goods类。生成Java代码图4(6)单击“Finish”按钮。MyEclipse8.5自动将生成Java代码,如图5所示。图5import java.lang.String;public class Goods p
3、ublic String goods_id; public int goods_name; public float price; public float discount; public int getGoods_id() return 0; public String getGoods_name() return null; public void setGoods_name(String Goods_name) public float getPrice() return 0; public void setPrice(float Price) public float getDisc
4、ount() return 0; public void setDiscount(float Discount) public void setGoods_id(int Goods_id) (7) 将附录1代码拷贝到src目录。图6(8)单击“UMLReverse Engineer UML From Java”菜单,弹出对话框。选择java文件,如图7所示。图7(9)单击“Next”按钮,弹出对话框。将“Hide class/interface details”选项去掉。逆向Java代码功能选项,如图8所示图8(10)单击“Finish”按钮。MyEclipse自动将java源代码逆向类图,如
5、图9所示。图9 (11) 尝试在Goods.java中修改,尝试添加AAA类,如图10所示图10(12)再次逆向生成类图,如图11所示 图11实验总结:通过这次实验,我学会了如何设计一个简单的类图,并初步了解UML架构设计的基本设计方法,并学会了借助MyEclipse8.5的Java代码自动生成功能生成Java代码和逆向生成类图,但仍有许多不足之处,如在进行逆向生成UML图时因为对软件运用的不熟悉而导致生成UML图出错,我将在今后的学习中不断进行自我完善,争取做到更好。附录1:文件名:Goods.Java1. public class Goods 2. 3. public String goo
6、ds_id; 4. 5. public int goods_name; 6. 7. public float price; 8. 9. public float discount; 10. 11. public int getGoods_id() 12. 13. return 0; 14. 15. 16. 17. public void setGoods_id(void Goods_id) 18. 19. 20. 21. public String getGoods_name() 22. 23. return null; 24. 25. 26. 27. public void setGoods_name(String goods_name) 28. 29. 30. 31. public float getPrice() 32. 33. return 0; 34. 35. 36. 37. public void setPrice(float Price) 38. 39. 40. 41. public float getDiscount() 42. 43. return 0; 44. 45. 46. 47. public void setDiscount(float Discount) 48. 49. 50. 51.