UML系统分析和设计.docx

上传人:b****7 文档编号:15425658 上传时间:2023-07-04 格式:DOCX 页数:24 大小:382.42KB
下载 相关 举报
UML系统分析和设计.docx_第1页
第1页 / 共24页
UML系统分析和设计.docx_第2页
第2页 / 共24页
UML系统分析和设计.docx_第3页
第3页 / 共24页
UML系统分析和设计.docx_第4页
第4页 / 共24页
UML系统分析和设计.docx_第5页
第5页 / 共24页
UML系统分析和设计.docx_第6页
第6页 / 共24页
UML系统分析和设计.docx_第7页
第7页 / 共24页
UML系统分析和设计.docx_第8页
第8页 / 共24页
UML系统分析和设计.docx_第9页
第9页 / 共24页
UML系统分析和设计.docx_第10页
第10页 / 共24页
UML系统分析和设计.docx_第11页
第11页 / 共24页
UML系统分析和设计.docx_第12页
第12页 / 共24页
UML系统分析和设计.docx_第13页
第13页 / 共24页
UML系统分析和设计.docx_第14页
第14页 / 共24页
UML系统分析和设计.docx_第15页
第15页 / 共24页
UML系统分析和设计.docx_第16页
第16页 / 共24页
UML系统分析和设计.docx_第17页
第17页 / 共24页
UML系统分析和设计.docx_第18页
第18页 / 共24页
UML系统分析和设计.docx_第19页
第19页 / 共24页
UML系统分析和设计.docx_第20页
第20页 / 共24页
亲,该文档总共24页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

UML系统分析和设计.docx

《UML系统分析和设计.docx》由会员分享,可在线阅读,更多相关《UML系统分析和设计.docx(24页珍藏版)》请在冰点文库上搜索。

UML系统分析和设计.docx

UML系统分析和设计

软工14级《UML系统分析与设计》

大作业

问题定义:

设计某医药公司进销存管理信息系统的进货、库存、销售三个组成部分。

进货子系统有

药品验收处理

1产生进货传票(进货传票编码、商品编码、品名、规格、厂商、有效期、进价、进货数量)。

2进货传票将被打印给供货商作为收货凭证。

一次进货可有多项药品,由进货传票编码唯一标识;一种药品由商品编码唯一标识。

系统设有一个商品目录(商品编码、品名、规格、厂商、有效期、销售价格)。

3当进货的药品是新药品(商品目录中没有的药品)时,进货子系统自动把新药品写入商品目录。

库存子系统有

1进货入库

2销售出库

处理维护库存帐(商品编码、品名、规格、厂商、有效期、进货量、进价、出库量、销售价、库存数量、库存下限量、库存上限量),库存帐不能做修改操作,

当进货入库时,根据进货传票产生一条新记录,库存数量加上进货量;当销售出库时,根据销售传票产生一条新记录,库存数量减去出库量;商品编码是各药品的唯一标识字。

库存子系统设库存自动报警,当库存数量大于库存上限量或者小于库存下限量时,给出警告信息。

销售子系统有

定价处理和销售处理。

1定价处理有一个商品价格表(商品编码、品名、规格、厂商、有效期、建议价格、销售价格、批准责任人)首先由销售管理员定建议价格,经过经理批准后确定销售价,并自动更新商品目录的销售价;

2销售处理在公司的销售窗口,售货员根据顾客要求查找商品目录和库存帐,如果有货(库存数量满足顾客要求),一项销售成立,产生销售传票的一条记录,一次销售可有多项记录,由销售传票唯一标识。

销售传票的数据结构是(销售传票编码、商品编码、品名、规格、厂商、有效期、销售价、销售数量)。

销售传票是库存子系统记录库存帐的依据。

销售传票将被打印给顾客作为提货凭证。

以上为本次试题的基本部分(称基本系统),为必做部分。

事实上的进销存系统还有其它组成,例如“退货处理”、“客户管理”、“供货商管理”、“定价管理”等,有兴趣的同学可以选做或者补充某些附加容。

作业要求:

1.针对上述需求,请用面向对象的系统分析和设计方法完成附件中作业要求;

2.解答时可以查询资料、可以讨论、可以使用建模工具(如Rose、together等),必须用打印文档交卷,注明、学号;

3.提交的文档格式如附件所示,需要提交设计的视图,此处所占的分数比重较大,没有的话扣分。

4.自己在完成课程设计的心得体会(个人总结)一定要写,所占的分数比重较大。

5.根据基本系统的静态模型利用工具导出各子系统的java或者c++程序结构。

6.完成时间:

各班学习委员收集后统一于17周的星期一上午缴给我。

附件:

(选择1)

 

附件:

(选择2)

选择1:

1、需求收集、描述

1.1:

发掘业务过程:

药品验收处理:

处理维护库存帐:

定价处理和销售处理:

1.2领域分析

备选类:

商品编码、品名、规格、厂商、有效期、进价、出库量、销售价、进货数量、销售价格、出库量、库存数量、库存下限量、库存上限量、建议价格、销售价格、批准责任人、销售数量、销售传票编码、顾客、销售员、销售传票、进货传票、进货传票编码、仓库管理员、药品

确定候选类:

进货传票、商品目录、供应商、药品、售货员、顾客、库存帐、商品价格表、批准责任人、销售传票

1.3确定系统完全需求

生成包图:

高层用例图:

 

2.系统USECASE模型

2.1分析(按照需求设计用例)

用例1:

进货

场景1:

药品库存量低于库存下限量时候,系统会自动发出警报,表示需要进货,就会列出需要进货的药品名和药品数量,然后产生进货传票,打印进货传票给供应商供应药品。

场景2:

当有新药品的时候,公司会会为了适应顾客的需求,就会引进新药品。

根据高层的研究,列出药品名和数量,产生打印传票给供应商供应药品。

用例2:

进货入库、销售出库

场景1:

医药公司根据进货传票产生的新记录,目前库存量加上进货库存量,查看警告信息,如果库存量低于下限量,就会进货入库。

场景2:

医药公司根据销售传票产生的新记录,目前库存量加上进货库存量,查看警告信息,如果库存量高于上限量,就会销售出库。

用例3:

销售

场景1:

公司根据顾客的需求,在库存量满足顾客的需求时,售货员就把药品销售给顾客,售货员将给顾客提货凭证,输入药品的相关信息,产生销售传票并打印给顾客。

场景2:

当有新药品进货时,销售管理员定建议价格,经过经理批准后确定销售价,并自动更新商品目录的销售价,开始销售。

2.2角色定义

参与者

功能描述

进货负责人

负责进货管理、引进新药品

仓库管理员

负责管理进货入库和销售出库

销售管理员

负责定销售药品的建议价格

销售经理

负责审核确定销售价、更新药品的价格

售货员

负责根据顾客要求查找药品目录和库存帐

供应商

负责供应药品

顾客

购买药品

2.3USECASE工作描述

2.3.1进货:

USECASE名称

进货

目的

医药公司

系统名称

进货子系统

主程序:

进货负责人根据不同场景,打印进货传票,传给供应商,供应商根据传票供应药品给医药公司。

2.3.2进货入库,销售出库:

USECASE名称

进货入库,销售出库

目的

药品入库、药品销售出库

系统名称

库存子系统

主程序:

仓库管理员根据进货传票产生的新记录,目前库存量加上进货库存量,查看警告信息,如果库存量低于下限量,就会进货入库;如果库存量高于上限量,就会销售出库。

2.3.3销售:

USECASE名称

销售

目的

销售药品

系统名称

销售子系统

主程序:

公司根据顾客的需求,在库存量满足顾客的需求时,售货员就把药品销售给顾客,售货员将给顾客提货凭证,输入药品的相关信息,产生销售传票并打印给顾客。

当有新药品进货时,销售管理员定建议价格,经过经理批准后确定销售价,并自动更新商品目录的销售价,开始销售给顾客。

2.4USECASE视图

3.系统逻辑结构设计

3.1进货系统(描述涉及概念、映射对象、涉及角色)

3.1.1事件流过程(主要事件流脚本)

1)进货负责人通过系统发出的警告确定进货药名和数量

2)进货负责人通过系统输入进货药名和数量

3)系统产生进货传票

4)判断是否有新药品,是否修改商品目录

5)进货负责人把进货传票发给供应商

3.1.2时序图

3.1.3状态图(主要类的状态图)

3.2销售系统(SaleSystem)

3.2.1事件流过程(主要事件流脚本)

定价处理事件流:

1)销售管理员向系统发出“定价处理”请求

2)销售管理员输入拟定的建议价格

3)销售管理员将拟定的建议价格发给销售经理

4)销售经理审核并确定销售价格,修改商品目录

销售处理事件流:

1)顾客买药品

2)售货员根据顾客要求查看库存帐和商品目录

3)销售成功并打印销售传票

4)顾客拿到销售传票和领取药品

3.2.2时序图

定价处理时序图:

销售处理时序图:

3.2.3状态图(主要类的状态图)

定价处理状态图:

销售处理状态图:

3.3库存系统(ValueManager)(主要事件流脚本)

3.3.1事件流过程

1)仓库管理员向系统发出“进货入库”请求

2)仓库管理员接到供应商发送的进货传票的信息

3)仓库管理员根据进货传票产生一条新记录,库存数量加上进货量

4)仓库管理员检查库存帐,是否超过上限量。

5)仓库管理员收到售货员销售传票

6)仓库管理员据销售传票产生一条新记录,库存数量减去出库量

7)仓库管理员检查库存帐,是否低于下限量。

3.3.2时序图

3.3.3状态图(主要类的状态图)

3.4系统整体的类的组织结构

4.完成系统组件图设计

5.完成正向工程实现代码框架

4.1设计完成系统详细类图(系统静态结构,应该包含类及之间的详细信息)

4.1.1药品类Drugs

4.1.2供应商类Supplier

4.1.3进货传票类StockTicket

4.1.4仓库管理员类StockMan

4.1.5库存帐类StockAccount

4.1.6销售管理员类SaleManager

4.1.7销售经理类Manager

4.1.8顾客类Customer

4.1.9销售传票类SaleTicket

4.1.10商品目录类Catalogue

4.1.11商品价格类PriceList

4.1.12售货员类SaleMan

4.2生成代码框架(参照自己设计的4.1)

4.2.1药品类Drugs

publicclassDrugs{

privateintDrugs_code;

privateintDrugs_name;

privateintSpecifications;

privateintManufacturer;

privateintDate;

privateintPrice;

publicDrugs(){}

publicvoidSet_Druge(){}

publicvoidGet_Druge(){}

}

4.2.2供应商类Supplier

publicclassSupplier{

privateintSupplier_name;

privateintAddress;

privateintTel;

publicDrugstheDrugs;

publicSupplier(){}

publicvoidPurchaseVoucher(){}

}

4.2.3进货传票类StockTicket

publicclassStockTicketextendsDrugs{

privateintStock_name;

privateintStock_price;

privateintAmount;

publicStockTicket(){}

publicvoidset_saleticket(){}

publicvoidget_saleticker(){}

}

4.2.4仓库管理员类StockMan

publicclassStockMan{

privateintID;

privateintname;

privateintsex;

publicStockAccounttheStockAccount;

publicStockMan(){}

}

4.2.5库存帐类StockAccount

publicclassStockAccountextendsDrugs{

privateintPurchase_ticket;

privateintpurchase_price;

privateintpurchase_amount;

privateintSale_ticket;

privateintSale_price;

privateintSale_amount

privateintupperLimit;

privateintlowerLimit;

publicStockAccount(){}

publicvoidAdd(){}

publicvoidget_Stock(){}

publicvoidSub(){}

publicvoidset_Stock(){}

}

 

4.2.6销售管理员类SaleManager

publicclassSaleManager{

privateintID;

privateintname;

privateintsex;

publicPriceListthePriceList;

publicSaleManager(){}

}

4.2.7销售经理类Manager

publicclassManager{

privateintManagerID;

privateintname;

privateinttitle;

publicStockTickettheStockTicket;

publicManager(){}

publicvoidExamine(){}

}

4.2.8顾客类Customer

publicclassCustomer{

privateintID;

publicDrugstheDrugs;

publicCustomer(){}

}

4.2.9销售传票类SaleTicket

publicclassSaleTicketextendsDrugs{

privateintSale_name;

privateintSale_price;

privateintSale_amount;

publicSaleTicket(){}

publicvoidset_SaleTicker(){}

publicvoidget_SaleTicker(){}

}

4.2.10商品目录类Catalogue

publicclassCatalogueextendsDrugs{

privateintsale_Price;

publicCatalogue(){}

publicvoidset_Catalogue(){}

publicvoidget_Catalogue(){}

publicvoidSet_CataloguePrice(){}

}

4.2.11商品价格类PriceList

publicclassPriceListextendsDrugs{

privateintsuggested_price;

privateintsale_price;

privateintcharge_price;

publicPriceList(){}

publicvoidset_Price(){}

publicvoidget_Price(){}

publicvoidset_suggestedPrice(){}

}

4.2.12售货员类SaleMan

publicclassSaleMan{

privateintID;

privateintname;

privateintsex;

publicSaleTickettheSaleTicket;

publicSaleMan(){}

publicvoidSale_ticket(){}

}

6.个人总结

这次作业。

我用到RationalRose2003版本的,几次作业下来弄懂了Rose大部分功能了,可以绘制一些图了。

通过这些作业中,我学到了蛮多的,对书本的知识有了更深的理解,初步对UML建模系统的理解,掌握一些相关图的画法。

趁自己还年轻,因为我必须给自己一个交代。

我特别喜欢这句话,因为人生就是这样,不逼自己一把永远都不知道自己能做得多好。

通过这次的设计,我对Rose有了更深的了解,慢慢用起来也顺畅了许多,重要的是自己肯努力去,能够用心去完成,觉得万事开头难,但最后都可以克服的。

我还明白了,未来的路还很长。

很长。

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 表格模板 > 合同协议

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2