学习Java做需求,以SetStore系统为例

           首先明确题意:建立一个可以购买宠物的网站,网站大体功能为:1.开始窗口 2.欢迎窗口 3.种类窗口 4.货架/产品窗口 5.货物Item窗口 6.购物车窗口 7.登录窗口 8.账户信息 9.窗口订单信息 10.窗口订单 11.完成窗口(根据客户需求分析出来的,更好的描述问题)

 

一、需求分析

需求分析:

     1.       匿名客户可以浏览商店目录,把购买的货物放入购物车,改变货架,跳转位置,注册用户

      2.       用户使用密码登陆和等出

      3.       用户更新自己的信息,使用信用卡购物

      4.       登陆页面允许登记的客户登录,允许匿名客户注册

       5.       登记处理自动会完成登录过程

       6.       匿名客户登记需要提供以下的信息:名字,付账地址,电话,email,信用卡好,信用卡类型,信用卡过期日期

       7.       注册时,客户可以定制一个自己的钟爱的货架等定制信息

 

功能介绍:PetStore共分为四个子系统

         PetStore Web Site:该部分是petstore的核心,客户登录系统系统选择,订购,提交订单等。

         PetStore  Addmin:该部分是系统的管理的管理功能,提供销售系统,手工接受/拒绝订单等功能,界面也是一个web应用。

         Order Processing Cenrter订单调度中心:对客户提交的订单进行处理,用java mail来通知客户,通过JMS发订单给供应商

         PetStore Supplier为产品供应者提供维护界面。通过JMS接受订单,派送货物给用户,提供一个基于web的库存管理,维护库存数据库。

需求分析中需求说明中的要点

        完整性:每一项需求都必须将所需要的功能描述清楚

         正确性:每一项需求都必须准确的描述其要开发的功能。

         可行性:每一项需求都必须是在已知系统和环境的权能和限制范围内可以实施的

         必要性:要使每项需求都能回溯值某项客户的输入

         划分优先级:给每一项需求分配一个实施优先级以致命它在特定产品中所占的分量

         无二义性:对所有需求说明的读者都能有一个明确统一的解释,避免二义性的有效方法包括对需求文档的正规审查,编写测试用例,开发原型等

可验证行:检查一下每项需求是否能通过设计测试用例或其他的验证方法。

 原型分析法:

         主要用户界面用来展示客户对于前台要求的展示,也是一个项目中最重要的展示部位。

二、概要设计

        总体设计(架构):

               

      以上系统架构来源于:

            

界面搭建:总体设计出来以后应该根据上述需求做界面,做成第一版的界面,在这个时候做界面是为了给用户更好的交流,所以说界面的动作现在不可少,因为这是根据需求理解做出与客户交互的第一版界面这就是所说的建模,做网站最重要的就是建模,因为这是给客户看的,假如的布局和色彩搭调得到公司的认可,那么你的建模就是成功的,建模不仅仅是体现一个人的素质,更重要的是宏观把控能力。

PetStore的独立模块组成:

         控制模块

         客户登录和注册控制模块

         购物车模块

         异步消息模块

         货架目录模块

         客户模块

根据这些独立的模块可以进一步抽象出接口,一个工程接口确定了,它的大致流程和实现过程也是确定的,接口的抽象我自己学的还不是很好,在这个点上做的不好,时间可以解决这些问题,因为只有多次的尝试自己的行动才能在错误中校正,所以勇敢的经历错误,建设初步的实现过程。

数据结构设计:

         数据库设计不一定要遵循数据库三范式,因为有时候多一个字段,会更加方便我们去操作数据库。

概要设计要点:

        1.首先确定工程的大体架构,只要有了大体框架自己的工程才有了宏观的航标

        2.实现需求做界面模型,这是以客户交互的最直观方式

        3.进一步划分模块,目的是为了创建接口,只要是各个接口确定了,这个工程就已经实现了百分之九十(代码部分,剩下的都是代码工人的事情了)

        4.数据库的设计,一个工程数据库的设计也是我们必须做的工程,数据库的设计大体上要遵循三范式,并不一定要恪守这个原则,应该以方便为目的,好控制为目标,所以数据库的设计也是一种艺术。

 

三、详细设计

        具体落实到每个功能模块的实现,只要接口定了,各层实现,即为层与层之间的调用。

 

  • 4
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值