B2C网上商城系统建模一、需求分析:本系统功能性需求包括以下内容:1、客户可以打开本系统通过系统管理员注册并登录自己的账户2、客户可以修改和删除自己的注册信息3、客户可以查询本系统里上架的商品4、客户可以订购本系统中的商品并付款给网站工作人员5、客户可以查询订单并可以取消订单6、网站工作人员可以登录本系统并对商品进行上架和下架处理7、网站工作人员可以查询销售记录8、网站工作人员可以对订单进行查询9、网站工作人员可以接受发货请求或者因缺货拒绝请求10、网站工作人员可以接受付款二、创建系统的用例模型本系统的参与者有:系统管理员:系统管理员为系统进行日常的维护和客户及工作人员的账户管理。网站工作人员:网站工作人员是指本系统的工作人员,他们为客户提供商品信息和日常的商品信息管理,以及销售管理和接受客户付款。客户:可以注册登陆本系统进行对商品的查询和购买及付款,还能对已下的订单进行查询和取消。由上可以得出,系统的参与者包括三种,分别是SystemManager(系统管理员)、Customer(客户)和Clerk(网站工作人员),如图所示:根据参与者的不同分别画出各个参与者的用例图。1、网站工作人员用例图:2、客户用例图3、系统管理员用例图三、创建系统静态模型根据系统需求可以识别系统中存在的对象。从需求中可知我们至少创建4个类:账户类、客户类、管理员类和网站工人员类。在用户注册的时候需要为其创建账号,查询库存时需要库存类,卖家和买家查询销售记录时需要销售记录类。系统和用户交互时修要直观的图形化界面,所以我们需要很多用户界面类。本项目需要12个用户界面类,分别是主界面类(MainForm)、登录界面类(LoginForm)、购买界面(BuyForm)、个人信息界面类(PersonalForm)、查询商品界面类(QueryForm)、商品类(GoodsForm)、订单维护界面类(OrdermaintainForm)、订单处理界面类(OrderhandleForm)、销售界面类(SaleForm)、销售管理界面类(SalemanagerForm)、付款界面类(PayForm)。各个参与者的属性:1、Clerk类具有用户名、密码、电话的私有属性2、Customer类具有用户名、密码、地址、电话的私有属性3、SystemManager类有用户名、密码的私有属性4、Transfer类有商品名称、价格、交易时间的私有属性5、Account类有帐号、密码、时间的私有属性6、Storaege类有商品名、数量的私有属性其他界面类不需要设置类属性确定了系统的类后需要确定类之间的关系,类之间的关系如一下类图所示:四、创建系统的动态模型(二)创建序列图和协作图通过系统的用例描述,可以得到一下交互行为:1、网站工作人员登陆本系统2、用户注册本系统3、用户通过系统管理员修改个人信息4、用户登录系统5、网站工作人员将商品上架6、网站工作人员将商品下架7、用户查询所需商品8、用户订购商品9、工作人员订单处理10、销售查询1)网站工作人员登陆本系统用例的工作流程A、网站工作人员启动系统,在登陆界面LoginForm中输入自己的用户名和密码并且提交。B、系统验证网站工作人员的用户名和密码是否正确,如果正确则创建系统主界面。C、如果身份未通过则返回错误信息。:Clerk:LoginForm:MainForm1.进入登陆界面1.1.创建登录对话框2.输入登录信息2.1.系统验证身份2.2.通过创建主界面2.3.未通过返回错误信息与序列图等价的协作图如图::Clerk:LoginForm:MainForm1.1.创建登录对话框2.1.系统验证身份1.进入登陆界面2.输入登录信息2.3.未通过返回错误信息2.2.通过创建主界面2)用户注册本系统的用例工作流程A、用户打开主界面后打开注册界面。B、用户在注册界面输入注册信息并提交。C、系统判断注册用户名是否和已有的注册用户重复。D、注册成功则返回注册信息。:Customer:MainForm:Register:Account1.打开主界面1.1.打开注册界面1.1.1.创建注册界面2.输入注册信息2.1.查询注册信息2.2.判断是否重复2.3.注册3.返回注册信息与序列图等价的协作图如图::Customer:MainForm:Register:Account1.1.1.创建注册界面2.2.判断是否重复1.打开主界面2.输入注册信息1.1.打开注册界面2.1.查询注册信息2.3.注册3.返回注册信息3)用户通过系统管理员修改注册信息用例工作流程A、用户打开主界面并且打开账户信息界面。B、在账户信息窗口修改个人信息。C、系统判断是否与已有用户名重复。D、修改成功后返回修改信息。:Customer:MainForm:Account:PersonalForm1.进入主界面1.1.打开账户信息界面1.1.1.创建用户信息界面2.提交修改信息2.1.判断修改后主键信息是否重复2.2.写入修改信息3.返回修改后的信息与序列图等价的协作图如图::Customer:MainForm:Account1.1.1.创建用户信息界面2.1.判断修改后主键信息是否重复:PersonalForm1.进入主界面2.提交修改信息1.1.打开账户信息界面2.2.写入修改信息3.返回修改后的信息4)用户登录用例的工作流程A、用户打开系统并打开登录窗口。B、输入已注册的用户名和密码。C、系统验证身份信息通过则允许用户进入用户界面否则返回错误信息。:Customer提交身份信息:LoginForm:MainForm1.进入登陆界面1.1.创建登录对话框2.提交身份信息2.1.系统验证信息2.2.通过创建主界面2.3.未通过返回错误信息与序列图等价的协作图如图::Customer提交身份信息:LoginForm:MainForm1.1.创建登录对话框2.1.系统验证信息1.进入登陆界面2.提交身份信息2.3.未通过返回错误信息2.2.通过创建主界面5)网站工作人员将商品上架用例的工作流程A、网站工作人员打开主界面,并且进入商品销售界面,再进入商品管理界面。B、网站管理员输入商家商品。C、系统判断输入的商品信息是否和已存在的商品信息是否重复。D、如果不重复则将输入的商品信息提交,如果不重复则返回错误信息。E、显示成功提交的商品信息再销售界面。:Clerk:MainForm:SaleForm:SalemanagerForm:Storeage1.进入主界面1.1.打开销售界面1.1.1.创建销售界面2.提交商品上架要求2.1.打开销售管理界面2.1.1.创建销售管理界面2.1.1.1.查询是否有可上架商品2.1.1.2.判断是否和已上架商品重复2.1.1.3.提取商品信息2.1.1.3.1.返回商品信息与序列图等价的协作图如图::Clerk:SaleForm:SalemanagerForm:MainForm:Storeage1.1.1.创建销售界面2.1.1.创建销售管理界面2.1.1.2.判断是否和已上架商品重复1.进入主界面2.提交商品上架要求2.1.打开销售管理界面2.1.1.1.查询是否有可上架商品2.1.1.3.提取商品信息1.1.打开销售界面2.1.1.3.1.返回商品信息6)网站工作人员将商品下架的工作流程A、网站工作人员打开主界面并打开销售界面。B、网站工作人员打开销售管理界面提交下架商品信息。C、系统返回下架成功信息到销售界面。:Clerk:MainForm:SaleForm:SalemanagerForm1.进入主界面1.1.打开销售界面1.1.1.创建销售界面2.提交下架商品请求2.1.打开销售管理界面2.2.输入下架商品信息2.2.1.返回下架成功信息与序列图等价的协作图如图::Clerk:MainForm:SaleForm:SalemanagerForm1.1.1.创建销售界面1.进入主界面2.提交下架商品请求1.1.打开销售界面2.1.打开销售管理界面2.2.输入下架商品信息2.2.1.返回下架成功信息7)用户查询所需商品用例的工作流程A、用户打开主界面并打开查询界面。B、用户输入查询信息查询商品。C、得到查询信息后由系统去除重复。D、显示查询的结果在查询界面。:Customer:MainForm:QueryForm:GoodsForm1.进入主界面1.1.打开查询界面1.1.1.创建查询界面2.输入查询要求2.1.查询商品2.2.去除重复3.显示查询结果与序列图等价的协作图如图::Customer:MainForm:QueryForm:GoodsForm1.1.1.创建查询界面2.2.去除重复1.进入主界面2.输入查询要求1.1.打开查询界面2.1.查询商品3.显示查询结果8)用户订购商品用例的工作流程A、用户打开主界面并打开购买界面。B、用户提交购买信息进入付款界面。C、用户付款后进入订单界面。D、用户等待发货。E、用户收到货物后确认付款。F、系统将此次交易记录到交易记录。:Customer:MainForm:BuyForm:PayForm:Transfer:OrdermaintainForm1.进入主界面1.1.1.1.1.创建购买界面2.购买2.1.提交购买信息2.1.1.创建付款界面2.1.2.付款进入订单界面2.1.2.1.创建订单界面3.等待发货4.确认付款5.提交交易记录与序列图等价的协作图如图::Customer:PayForm:MainForm:BuyForm:Transfer:OrdermaintainForm1.1.1.创建购买界面2.1.1.创建付款界面2.1.2.1.创建订单界面1.进入主界面2.购买2.1.2.付款进入订单界面3.等待发货4.确认付款5.提交交易记录1.1.2.1.提交购买信息9)工作人员处理订单用例的工作流程A、网站工作人员进入主界面打开订单处理界面。B、网站工作人员查询库存判断是否有此商品的库存。C、网站工作人员发货。D、等待付款。E、接受付款后系统将此次交易记录到交易信息。:Clerk:MainForm:OrderhandleForm:Storeage:SaleForm1.进入主界面1.1.打开订单处理界面1.1.1.创建订单处理界面1.1.2.查询库存1.1.3.判断是否有订购商品1.1.4.发货1.1.5.等待付款1.1.6.接收付款后记录交易信息与序列图等价的协作图如图::Clerk:MainForm:OrderhandleForm:Storeage:SaleForm1.1.1.创建订单处理界面1.1.3.判断是否有订购商品1.1.5.等待付款1.进入主界面1.1.打开订单处理界面1.1.2.查询库存1.1.4.发货1.1.6.接收付款后记录交易信息10)销售查询用例的工作流程A、网站工作人员打开主界面并打开销售界面。B、网站工作人员提交查询销售记录要求。C、系统在销售记录中查询销售记录返回到销售界面。:Clerk:MainForm:SaleForm:Transfer1.进入主界面1.1.打开销售界面1.1.1.创建销售界面2.提交查询销售记录要求2.1.查询销售记录2.1.1.返回记录与序列图等价的协作图如图::Clerk:MainForm:SaleForm:Transfer1.1.1.创建销售界面1.进入主界面2.提交查询销售记录要求1.1.打开销售界面2.1.查询销售记录2.1.1.返回记录(三)创建状态图在这个B2C网上商城系统中,有明确状态变换的是商品。商品包含六种状态:商品被上架销售、商品等待付款、等待发货、等待买家签收、等待发货时被删除取消订单、缺货。商品上架销售等待付款等待发货缺货删除取消订单等待买家签收库存缺货订单被取消发货(四)创建系统活动图1、网站工作人员登录系统活动图在网站工作人员登录的活动图中,创建了两个泳道,分别是网站工人员对象和系统对象,具体的活动描述如下:(1)系统提示网站工作人员输入用户名和密码。(2)网站工作人员输入用户名和密码后提交,系统判断账户