首页 > 其他分享 >构建之法阅读笔记07

构建之法阅读笔记07

时间:2023-05-25 20:34:51浏览次数:38  
标签:典型 场景 07 用户 笔记 构建 交互 Spec 描述

第十章 典型用户和场景

10.1 典型用户和典型场景

①怎样定义典型用户?

我们首先要定义用户的角色。正如戏剧中有正面和反面的角色,软件系统中也有受欢迎的和不受欢迎的典型用户。

  • 受欢迎的典型用户——指那些按设计者的期望使用系统的用户,如“网站的购物者”
  • 不受欢迎的典型用户——指那些有不正当目的的用户,如在一个房地产业主论坛中滥发房屋中介广告的用户——这些用户也许在别的系统中(如房屋中介论坛)是受欢迎的

典型用户只是我们的设想,还要和这些典型用户的代表交流,理解用户,理解他们的工作方式和需要。然后再修改,细化典型用户

②从典型用户到场景

有了典型用户之后,我们还得决定每一个典型用户的目标——他/她使用系统想要达到什么目的。对于每一个目标,列出达到目标所必须经历的过程,这就是场景,也可以叫故事。注意,有些场景描述了成功的结果,有些场景描述了失败的结果。用户和系统有成百上千种可能的交互情况,写场景时要有针对性。

③场景怎么写?

  • 首先针对每一个场景,设计一个场景入口(描述场景如何开始)
  • 接着描述典型用户在这个场景中所处的内部和外部环境(内部环境指心理因素等)
  • 然后给场景划分优先级,按优先级排序写场景

④场景之间如何区分呢?

  • 找到这个场景的特殊之处,对于共同的流程可以一笔带过,重点描述场景中特殊的因素
  • 把场景组织成一个故事,这样就能把一个完整的用户与系统交互的流程记录下来,以后进行产品演示或验收都可以以此为基础

10.2 用例

和典型人物、典型场景的方法类似,用例(UseCase)也是很常用的需求分析工具。用例有这样一些 基本元素:

  • 标题:描述这个用例要达到的目标
  • 角色(Actor):和软件系统交互的角色,例如用户,其他实体,甚至时间(在描述一些和时间相关的场景时有用)
  • 主要成功场景(Main Success Scenario):一系列步骤描述角色是怎样和系统交互,从而达到目标的
  • 步骤(Step):描述每一步的交互(例如一套正常的ATM取款流程)
  • 扩展场景(Extension):描述一些扩展的交互,例如一些意外情况(例如取款时账户余额不足)

10.3 规格说明书(Spec)

①规格说明书(Specification)简称Spec,分为以下两种:

1. 软件功能说明书(Functional Spec),主要用来说明软件的外部功能和用户的交互情况(把软件当作一个黑盒子)

2. 软件技术说明书(Technical Spec),又叫设计文档(Design Doc),主要用来说明软件内部的设计规范(把软件当作一个透明的箱子)

②写好一个Spec

第一,定义好相关的概念

第二,规范好一些假设(Assumptions)

第三,避免一些误解,界定一些边界条件

第四,描述主流的用户/软件交互步骤

第五,一些好的功能还会有副作用

第六,服务质量的说明

 

 

心得体会:

在过去我只从我的角度出发去解决问题,从来没有从用户的

角度,这一章主要说的就是要从用户的角度去解决问题,软

件是给用户带来方便的,所以在以后的学习中,应该注重从

用户的角度出发去开发和完善软件。

标签:典型,场景,07,用户,笔记,构建,交互,Spec,描述
From: https://www.cnblogs.com/2351920019xin/p/17432780.html

相关文章

  • lucas定理 学习笔记
    lucas定理学习笔记目录lucas定理学习笔记介绍combination题目描述输入格式输出格式样例输入样例1输出样例2分析code扩展lucas介绍lucas定理用于解决形如\(C_n^m\modp(p\inprime)\)的问题。设\(n,m\)用\(p\)进制来表示为:\((n_an_{a-1}\cdotsn_0)_p,(m_am_{a-......
  • jenkins--构建传输jar包后启动java服务
    jenkins--构建传输jar包后启动java服务目标:针对单体java服务前置条件:jdk1.8日志切割cronologjdk1.8安装cronolog安装创建server.sh脚本文件#!/bin/bashJAR_PATH="/data/forwarder"#文件目录JAR_FILE="ruoyi-admin.jar"#文件名LOG_PATH="/data/forwarder/logs"#cro......
  • PMP 学习笔记(三)
    项目范围:为交付具有规定特性与功能的产品、服务或成果而必须完成的工作。项目范围有时也包括产品范围 预测型项目在每次迭代中,都会重复开展三个过程:收集需求、定义范围、创建WBS。 敏捷型项目中每次迭代中,都会重复开张两个过程:确认范围、控制范围。 对于需求不断变化、风险大或不......
  • 第一周 python基本语法 笔记
    写在前面的话:由于已经学习了c和c++,所以主要记录了与c/c++不同的地方一:基础知识1:严格缩进,单引号与双引号功能相同2:字符串的序号  字符串的序号可以用两种方式表示  -5-4-3-2-1  我喜欢编程  0  1 2 3 43:使用[]获取字符串的一个或多个字符   索引......
  • 笔记
    判断素数:#include<iostream>#include<math.h>usingnamespacestd;boolsu(intn){ inti=2; if(n==1) returnfalse; for(i=2;i<=sqrt(n);i++){ if(n%i==0) break; } if(i>sqrt(n)) returntrue;else returnfalse;}埃氏筛:boolisnp[M......
  • 〈数据库设计入门经典〉之第一章笔记
        现在,来写一下我看了前三章的体验吧!GO! 第一章数据库建模的过去与现在    呼呼,这一章基本都是在讲一些概念性的东西,所以,应该也没什么感想可写,那就再摘一点“苹果”来分享好了,Ready?GO!数据库:数据库是信息的集合——较为相关的信息和组织良好的信息。数据库由在安......
  • 《数据库设计入门经典》之第二章笔记
        上一次我摘了些第一章的内容,整理成了笔记,不知道对大家有没有点帮助啊,呵呵...第一章主要是讲了些概念上的东西,让大家对基本的概念有点理解,没有摘完全,只是选了我觉得有概括性的语句。现在,来写写第二章的笔记吧,Ready??GO!     第二章 工作场所中的数据库建模   ......
  • 《数据库设计入门经典》之第三章笔记
        上一次写了一点第二章的笔记,强调了在做数据库模型的设计时要注意“人”的作用,这一次,来说点正题。第三章的主题目是:数据库建模构件块,看过了以后觉得有些还是在讲数据库的概念性东西,不过,就算是学过了也还是要看一遍,我们总是容易高估自己的记忆,其实很多时候,一些很基础的东西你......
  • 《软件测试》读书笔记(持续更新)
    文章目录#第一部分软件测试综述##第一章软件测试的背景###1.1臭名昭著的软件错误用例研究###1.2软件缺陷是什么####1.2.1软件失败的术语确实严重,甚至是危险的情况:故障(fault)、失败(failure)、缺点(defect)不那么尖锐,主要指未按预料运行,而不指全部失败:异常(anomaly)、事件,插曲(inc......
  • 2.Redis的安装与配置-动力节点Redis7笔记
    2Redis的安装与配置这里是要将Redis安装到Linux系统中。2.1Redis的安装2.1.1克隆并配置主机修改主机名:/etc/hostname修改网络配置:/etc/sysconfig/network-scripts/ifcfg-ens332.1.2安装前的准备工作2.1.2.1安装gcc由于Redis是由C/C++语言编写的,而从官网下载的Redis......