软件工程与计算总结(三)示例项目描述

本节介绍一个标准的项目描述,大家可以作为蓝本学习~


目录

一.背景

二.目标

三.系统用户

四.用户访谈要点

1.收银员

2.客户经理

3.总经理

4.系统管理员 

五.项目实践过程

一.背景

        A是一家刚刚发展起来的小型连锁商店,其前身是一家独立的小百货门面店。原商店只有收银部分使用软件处理,其他业务都是手工作业,这已经不能适应它的业务发展要求。首先是随着商店规模的扩大,顾客量大幅增长,手工作业销售迟缓,顾客购物排队现象严重,导致流失客源。其次是商店的商品品种增多,无法准确掌握库存,商品积压、缺货和报废的现象明显上升。再次是商店面临的竞争比以前更大,希望在降低成本、吸引顾客、增强竞争力的同时保持盈利水平。
        为了解决连锁商店A所面临的问题,管理层决定向软件公司B定制开发一套连锁商店管理系统

二.目标

在反复讨论之后,A的管理人员和B的开发人员一致同意,连锁商店管理系统MSCS要能够达到下列目标:

  • 在系统使用6个月后,商品积压、缺货和报废的现象要减少50%。
  • 在系统使用3个月后,销售人员工作效率提高 50%。
  • 在系统使用6个月后,店铺需要的员工数量要减少15%,以降低成本。
  • 在系统使用6个月后,平均10000元销售额的库存成本要减少15%,以降低成本。
  • 在系统使用6个月后,销售额度要提高10%~40%,预估计是20%左右。

三.系统用户

MSCS有4类用户,如表3-1所示:

四.用户访谈要点

1.收银员

(1)基本情况
店里现在有4个收银员(通常是4~6人),但是人员更换较快,平均每个月都会有1个人发生变化。收银员每天的工作都很忙,高峰期的时候每位收银员都有顾客排队(4~8人)。

(2)对新系统的态度    

  • 很希望系统能够帮助收银员减轻销售压力,缩短销售时间,减少高峰期的顾客排队。    
  • 普遍不能熟练操作计算机,担心不会用新的系统,或者新的系统总让他们陷人误操作的麻烦。
  • 对财务比较敏感,因为商店规定如果账单计算错误超过规定幅度,会受到处罚。

(3)工作细节
经过细致的沟通,将收银员使用MSCS进行销售的概要过程设计如下:

  • 询问顾客是否是会员,如果是,就输入客户编号。
  • 使用扫描仪逐个扫描商品条形码。如果扫描仪工作不佳,可以临时用手输入。
  • 扫描完成所有商品后,系统自动根据销售情况和特价规则计算总价,告知顾客。
  • 顾客付款。
  • 系统打印收据,顾客拿到收据离开。


在沟通之后,开发人员在观察收银员销售工作的时候发现以下问题:

  • 在销售过程中,顾客突然要求取消交易。
  • 在要求结账之前,顾客都可能会因为某个商品太贵、保质期不符合预期、总价超出预期等原因要求不再购买指定商品。
  • 在会员顾客结账时,会使用积分支付全部或部分款项。

再次经过细致的沟通,将收银员使用MSCS进行退货的概要过程设计如下:

  • 1)将顾客销售收据上的销售记录号输人系统。
  • 2)查看销售情况,选择顾客要求退货的商品,进行退货。
  • 3)系统重新计算账款,并与原来的账款相比对,计算需要退给顾客的款项。
  • 4)打印退货单2联,让顾客签字。
  • 5)将1联退货单收存,退款给顾客。

在沟通之后,开发人员在观察收银员退货工作的时候发现:

  • 1)有些顾客提供的销售单据超过了退货允许的期限,不能退货。
  • 2)会员顾客使用积分支付了账单,这时不允许退货。
  • 3)享受了赠品和特价的顾客在退货后有可能不再享受赠品和特价。

2.客户经理

(1)基本情况
有2~3个客户经理。工作相对比较轻松,只有在商品人库的时候比较忙,因为人库时的检查过程比较烦琐。都有大专以上文凭,计算机操作能力较好。


(2)对新系统的态度

  • 1)认为软件是一种新技术,能够促进商品的发展,持支持态度。
  • 2)希望系统能够每天提醒该给哪些顾客赠送礼品了,这个工作一直比较麻烦,因为有多个规则每天都要仔细检查。

(3)工作细节
经过细致的沟通,将客户经理使用MSCS进行工作的概要过程设计如下:

1)入库

  • 逐一输入商品的标识、生产日期、报废日期及其数量。
  • 系统自动记住商品的人库日期,如果商品信息有保质期,那么系统应该自动根据生产日期计算报废日期。

2)出库

  • 输入出库商品的标识、数量和下架原因。
  • 系统自动减少相应商品的库存。

3)库存分析

  • 系统自动计算并列表展示每个商品的库存分析情况,包括(对于特定商品):
  • 可存天数-最后一批人库商品的报废日期-当天日期。
  • 流通总量一最后一批人库商品数量+最后一批入库前库存-现在库存。
  • 尺度天数=今天距离最后一批人库商品的人库日期。
  • 每天流通量=流通总量/尺度天数。
  • 预计天数
  • 如果每天流通量>0,预计天数=min(库存数量/每天流通量,可存天数),否则,预计天数无意义。预计报废率如果预计天数有意义并且预计天数<可存天数,预计报废率=0.如果预计天数有意义并且预计天数>可存天数,预计报废率=(预计天数-可存天数)/预计天数,否则,预计报废率无意义。
  • 预计天数和预计报废率的计算规则会经常发生修改。

4)发展会员

  • 产生一个标识
  • 输入新会员顾客的信息

5)礼品赠送。    

  • 每天登录系统时,系统提示需要赠送礼品的会员顾客。
  • 客户经理逐一查看赠送的原因,决定如何处理赠送;记录赠送情况。

开发人员后续又了解到赠送礼品的规则是:

  • 会员生日 
  • 会员积分数额超过了档数要求。触发礼品赠送的积分数额档初始为1000、2000、5000,此后每增加5000为一档。积分数额档可能会发生变化
  • 多个条件可以同时发生,例如,既是生日又超出积分数额档或一次超出多个积分数额档,得到多次赠送

3.总经理

(1)基本情况
有1个正经理、1个副经理。每天忙于管理和对外事务,预计很少有时间会使用系统。计算机操作技能较好。


(2)对新系统的态度
强烈支持新系统,希望通过新系统加强业务管理,使商店的利润提升一个水平。

(3)工作细节
经过细致的沟通,将总经理使用MSCS进行工作的概要过程设计如下。

1)库存分析:与客户经理的客户分析任务相同。
2)调整商品:系统给出现有商品的列表;总经理选中并修改或者移除商品;逐一添加新商品
3)制定特价与赠送策略:系统给出现在的特价与赠送策略;总经理选中并修改或者移除特价与赠送策略;逐一输入新的特价与赠送策略。


特价与赠送策略的规则是:

  • 产品特价为指定的产品设定统一的打折价。
  • 总额特价为购物总额超过指定值的顾客设定统一的打折价。
  • 总额赠送为购物总额超过指定值的顾客赠送特定产品。产品赠送为购买指定产品的顾客赠送特定产品。不同赠送可以重复计算。
  • 特价与赠送之间可以重复计算。.特价商品不计入总额特价。
  • 特价与赠送信息通常有时间期限的限制。特价与赠送策略的触发条件是:
  • 适用(商品标识,参照日期)的商品赠送促销策略。
  • (促销商品标识=商品标识)而且((开始日期早于等于参照日期)并且(结束日期晚于等于参照日期))
  • 适用(额度,参照日期)的总额赠送促销策略。
  • (促销额度≤额度)而且((开始日期早于等于参照日期)并且(结束日期晚于等于参照日期))
  • 适用(商品标识,参照日期)的商品特价促销策略。
  • (促销商品标识=商品标识)而且((开始日期早于晚于参照日期)并且(结束日期晚于等于参照日期))
  • 适用(额度,参照日期)的总额特价促销策略。
  • (促销额度≤额度)而且(不存在:本促销额度<另一个促销额度≤额度)而且((开始日期早于等于参照日期)并且(结束日期晚于等于参照日期))

4.系统管理员 

(1)基本情况
有1个系统管理员,是计算机专业维护人员,计算机技能很好。

(2)对新系统的态度
认为新系统会增加自己的工作负担,不太支持新系统。

(3)工作细节
经过细致的沟通,将系统管理员使用MSCS调整用户的概要过程设计如下:

  • 1)系统给出现有用户的列表
  • 2)系统管理员选中并修改或者删除用户
  • 3)添加新用户

五.项目实践过程

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/149161.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

SDL2绘制ffmpeg解析的mp4文件

文章目录 1.FFMPEG利用命令行将mp4转yuv4202.ffmpeg将mp4解析为yuv数据2.1 核心api: 3.SDL2进行yuv绘制到屏幕3.1 核心api 4.完整代码5.效果展示6.SDL2事件响应补充6.1 处理方式-016.2 处理方式-02 本项目采用生产者消费者模型&#xff0c;生产者线程&#xff1a;使用ffmpeg将m…

Python 无废话-基础知识流程控制语句

If 流程控制语句 最常见的控制流语句是if 语句。在自然语言中&#xff0c;if 语句念起来可能是&#xff1a;“如果条件为真&#xff0c;执行子句中的代码。”在Python中的条件语句用于根据特定条件执行不同的代码块条件。 用代码描述如下&#xff1a; cost 60000 if cost &…

代码随想录Day12 二叉树 LeetCode T102二叉树的层序遍历 T226 翻转二叉树 T101 对称二叉树

本文思路和详细讲解来自于:代码随想录 (programmercarl.com) LeetCode T102 二叉树的层序遍历 题目链接:102. 二叉树的层序遍历 - 力扣&#xff08;LeetCode&#xff09; 题目思路: 本题使用队列辅助完成,讲解主要函数CheckOrder:首先判断root是否为空,是就直接返回,然后创建…

Linux下的基本指令

目录 一、基本指令 1.1 ls指令 1.2 pwd指令 1.3 cd指令 1.4 touch指令 1.5 mkdir指令&#xff08;重要&#xff09; 1.6 rmdir指令 && rm 指令&#xff08;重要&#xff09; 1.7 man指令&#xff08;重要&#xff09; 1.8 cp指令&#xff08;重要&#xff09;…

安卓教材学习

文章目录 教材学习第一行代码 Android 第3版环境配置gradle配置下载包出现问题 教材学习 摘要&#xff1a;选了几本教材《第一行代码 Android 第3版》&#xff0c;记录一下跑案例遇到的问题&#xff0c;和总结一些内容。 第一行代码 Android 第3版 环境配置 gradle配置 gradl…

了解基于Elasticsearch 的站内搜索,及其替代方案

对于一家公司而言&#xff0c;数据量越来越多&#xff0c;如果快速去查找这些信息是一个很难的问题&#xff0c;在计算机领域有一个专门的领域IR&#xff08;Information Retrival&#xff09;研究如何获取信息&#xff0c;做信息检索。在国内的如百度这样的搜索引擎也属于这个…

gitgitHub

在git中复制CtrlInsert、粘贴CtrlShif 一、用户名和邮箱的配置 查看用户名 &#xff1a;git config user.name 查看密码&#xff1a; git config user.password 查看邮箱&#xff1a;git config user.email 查看配置信息&#xff1a; $ git config --list 修改用户名 git co…

Android 开发错误集合

&#x1f525; 开发错误集合一 &#x1f525; Caused by: java.lang.ClassNotFoundException: Didnt find class "com.mask.app.ui.LoginRegisterActivity" on path: DexPathList[[zip file "/data/app/~~NMvHVhj8V6-HwGbh2amXDA/com.mask.app-PWbg4xIlETQ3eVY…

全志ARM926 Melis2.0系统的开发指引⑦

全志ARM926 Melis2.0系统的开发指引⑦ 编写目的11. 调屏11.1. 调屏步骤简介11.1.1. 判断屏接口。11.1.2. 确定硬件连接。11.1.3. 配置显示部分 sys_config.fex11.1.3.1. 配置屏相关 IO 11.1.4. Lcd_panel_cfg.c 初始化文件中配置屏参数11.1.4.1. LCD_cfg_panel_info11.1.4.2. L…

存在负权边的单源最短路径的原理和C++实现

负权图 此图用朴素迪氏或堆优化迪氏都会出错&#xff0c;floyd可以处理。 负环图 但floyd无法处理负权环&#xff0c;最短距离是无穷小。在环上不断循环。 经过k条边的最短距离&#xff08;可能有负权变&#xff09; 贝尔曼福特算法(bellman_ford)就是解决此问题的。 原理 …

(详解)Linux常见基本指令(1)

目录 目录&#xff1a; 1:有关路径文件下的操作(查看&#xff0c;进入) 1.1 ls 1.2 pwd 1.3 cd 2:创建文件或目录 2.1 touch 2.2 mkdir 3:删除文件或目录 3.1 rm与rmdir 4:复制剪切文件 4.1 cp 4.2 mv 1:有关路径的操作 1 ls 指令 语法&#xff1a;ls [选项] [目录或文…

DevicData-D-XXXXXXXX勒索病毒数据恢复|金蝶、用友、管家婆、OA、速达、ERP等软件数据库恢复

引言&#xff1a; 在数字时代&#xff0c;数据安全成为一项至关重要的挑战。DevicData-D-XXXXXXXX勒索病毒&#xff08;以下简称DevicData病毒&#xff09;是这场战斗中的新敌人&#xff0c;它能够以毁灭性的方式加密您的数据&#xff0c;迫使您在数据和时间之间做出艰难的选择…

XC5013 马达驱动和充电集成一体的控制芯片 一档输出芯片

XC5013 是一款应用于马达驱动或 LED 驱动的控制芯片&#xff0c;集成了锂电池充电管理系统&#xff0c;设定一档高电平输 出&#xff0c;并带有对不同状态的 LED 指示功能。 XC5013 集成了涓流充电、恒流充电和恒压充电全过程的充电方式&#xff0c;浮充电压精度在全温度范…

网课搜题 小猿题库多接口微信小程序源码 自带流量主

多接口小猿题库等综合网课搜题微信小程序源码带流量主&#xff0c;网课搜题小程序, 可以开通流量主赚钱 搭建教程1, 微信公众平台注册自己的小程序2, 下载微信开发者工具和小程序的源码3, 上传代码到自己的小程序 源码下载&#xff1a;https://download.csdn.net/download/m0_…

[GXYCTF2019]禁止套娃 无回显 RCE 过滤__FILE__ dirname等

扫除git 通过githack 获取index.php <?php include "flag.php"; echo "flag在哪里呢&#xff1f;<br>"; if(isset($_GET[exp])){if (!preg_match(/data:\/\/|filter:\/\/|php:\/\/|phar:\/\//i, $_GET[exp])) {if(; preg_replace(/[a-z,_]\(…

[极客大挑战 2019]FinalSQL - 异或盲注

1、这题的关键是找注入点&#xff0c;如果选择用户名、密码作为输入点就麻烦了 2、注入点&#xff1a;按钮&#xff0c;点击就传id&#xff1b;当id1时&#xff0c;提示Click others   可以利用id的特性&#xff0c;构造异或匹配   payload: f"1^(ord(substr((select…

【C语言经典100例题-70】求一个字符串的长度(指针)

代码 使用指针来遍历字符串&#xff0c;直到遇到字符串结尾的空字符\0为止&#xff0c;统计字符数量即为字符串长度。 #include<stdio.h> #define n 20 int getlength(char *a) {int len 0;while(*a!\0){len;a;}return len; } int main() {char *arr[n] { 0 };int l…

windows server 2012 服务器打开系统远程功能

服务器上开启远程功能 进入服务器&#xff0c;选择“添加角色和功能” 需要选择安装的服务器类型&#xff0c;如图所示 然后在服务器池中选择你需要使用的服务器。 选择完成后&#xff0c;在图示列表下勾选“远程桌面服务” 再选择需要安装的功能和角色服务。 选择完成确认内容…

JUC第十五讲:JUC集合-ConcurrentHashMap详解(面试的重点)

JUC第十五讲&#xff1a;JUC集合-ConcurrentHashMap详解 本文是JUC第十五讲&#xff1a;JUC集合-ConcurrentHashMap详解。JDK1.7之前的ConcurrentHashMap使用分段锁机制实现&#xff0c;JDK1.8则使用数组链表红黑树数据结构和CAS原子操作实现ConcurrentHashMap&#xff1b;本文…

AUTOSAR RTE介绍(更新版230925)

RTE是什么 AUTOSAR RTE(Run Time Environment)实现了AUTOSAR系统中的虚拟功能总线(VFB),提供了SWC(Software Component)之间的访问接口和SWC对于BSW资源的访问接口。RTE为SWC中的Runnable提供与其他SWC或者BSW模块通信的接口,RTE将Runnable映射到OS Task中,并且管理Runna…