浅易便签-时钟提醒部分

场景

工作项序号:001 设定便签时钟提醒

背景:

1) 典型用户:罗小叶[主要],朱小欧[少数]

2) 用户的需求/迫切需要解决的问题

a. 罗小叶:记到便签上的生产实习讲座又忘去了,它怎么不知道提醒我啊

b. 朱小欧:后天就是实验报告截止时间了,什么时候开始写比较好呢

3) 假设:

a. 用户习惯于将待办事项记录在便签上

b. 用户有拖延症

场景:

罗小叶打开我们的便签软件, 添加好自己的待办事项,发现我们的便签其实是有提醒功能的,罗小叶感到愉悦,罗小叶看到自己的下一次生产实习讲座是在明天晚上20:30,将时钟提醒设为了明天晚上20:00,到时间后,如果罗小叶正在使用电脑,就一定能收到提醒.

朱小欧以同样操作在设置时钟提醒时,忍痛将提醒设置在了截至时间的3个小时前,如果到提醒时朱小欧发现自己还没有开始写,就能点击"延迟提醒为"下拉菜单选择延迟1小时.解决了交报告的问题.

 

用例文档

标题:设置时钟提醒

角色:用户

主要成功场景:

1. 打开软件

2. 在便签也写好便签

3. 点击...菜单

4. 选择时钟提醒

5. 设置提醒时间

扩展场景:

5.1. 设定时间为过去的时间

5.2. 到达设定时间后需要推迟

6.1. 提醒时间时用户不在电脑前

 

功能说明书

目标:用户能在需要的时候收到提醒

用户:希望设置提醒的人

术语:

1. 图库:按时间顺序显示所有图片的界面

如何使用:

1. 打开软件

2. 选中希望设置提醒的便签

3. 在标题栏点击...按钮

4. 选择带有闹钟图标的提醒按钮

5. 弹出带有日期时间选择器的对话框,用户选择完成后点击保存

6. 到达时间后弹出系统提醒,用户可选择推迟时间或者消除提醒

7. 若推迟,则在推迟时间到达时再次提醒

边界条件:

1. 界面暂时只支持中文

2. 不能单独删除提醒

测试目标:

1. 能正常弹出提醒

2. 重复设置后删除原有提醒

3. 删除便签的同时删除提醒

技术说明书

1. 界面

a. 汉堡菜单 MainPage

i. 左侧有一个SplitView,利用VisualStateManager可以根据窗口大小实现自动显示隐藏

ii. SplitView中的Pane分为X行,分别为汉堡菜单button,和与便签一一对应的(X-1)个ListView

iii. SplitView的Content放一个frame控件,用于页面切换

a. 标题栏 BlankPage

i. 顶部有一个StackPanel, 放置多个按钮,与标题栏等高

ii. 最后一个按钮为...按钮,点击后弹出Flyout显示更多功能

c. 便签内容 NewNoteBoxUserControl

i. 主体为一个TextBox

2. 类

a. 提醒类 Model.Notification

i. 设计模式:单例

ii. 方法:

    Create()创建提醒

    Delete()删除提醒

    Show()返回提醒列表

3. 算法

i.  以便签随机生成的ID为标识进行添加和删除

ToastContent toastContent = new ToastContent()
            {
                Visual = visual,
                Actions = actions,
                Scenario = ToastScenario.Reminder,
                // Arguments when the user taps body of toast
                Launch = new QueryString()
                {
                    { "action", "viewConversation" },
                    //{ "conversationId", conversationId.ToString() }

                }.ToString()
            };

ii. 将传入的Lable属性设为便签Content

iii. 将创建的提醒加入系统提醒队列

    使用系统提供的ToastNotificationManager.CreateToastNotifier().AddToSchedule();

iiii. 时间非法处理

测试文档

测试的主要功能:

1. 添加一条记录

2. 根据ID删除一条记录

3. 返回所有记录并计数

单元测试类名:NotificationTest

单元测试时间:2018/07/27

单元测试函数:

1. CreateTest()

2. DeleteTest()

单元测试预期结果:

1. Assert.AreEqual(1 + now, toast.Show().Count);添加成功

2. Assert.AreEqual(now, toast.Show().Count);先添加再删除成功

单元测试结果:

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值