视频监控软件开发的需求管理

摘要:项目需求管理的目的是确保各方对需求的一致理解,管理和控制需求的变更,从需求到最终产品的双向追踪。项目的需求管理可以在很大程度上影响项目的成败。本文以“××职业技术学院视频监控软件系统”中需求管理经验为实例,从制定需求管理计划、需求变更管理、需求跟踪三方面阐述了需求管理中应实施的活动和方法。

关键词:视频监控 需求管理计划 变更管理 需求跟踪

一、项目描述

1.项目背景

随着我国“平安城市”、“平安校园”等各类安防项目工程在全国大量的展开,公共安全产品应用普及。其中以学校安全工作为重点,加强学校管理,共建和谐校园,已成为当前构建和谐社会的整体建设目标之一。加之近期校园事件的频发,数字视频监控在校园中的应用剧增,已广泛成为数字化校园建设的一个主要部分。××职业技术学院,拥有教职工10000余人,占地110万余平方米,拥有现代化的教学楼、图书馆、实验大楼、行政大楼、教职工宿舍等设施。创建一套视频监控系统,通过先进的技防手段,有效提高安全防范的力度,保障校园内师生、工作人员的生命财产安全。我们受校方委托,于2009年,定制开发了一套数字视频监控软件,采用模块化的软件设计理念,以网络集中管理和网络传输为核心,完成信息采集、传输、控制、管理和存储的全过程,达到了工程设计目标,取得了良好的效益。

2.项目分析

采用厂家提供的编码器SDK、解码器SDK、视频播放SDK进行第二次开发,采用IT业界最新的.Net、WebService、XML等技术完成项目的总体设计,满足了校方对系统提出的集中存储、视频预览、录像回放和云镜控制功能,具有良好的可操作性、可定制性和稳定性。

二、制定需求管理计划

软件需求分析是准确确定软件开发范围的基础,为了保证用户需求分析的全面,准确。在向用户进行需求分析调研时,我们首先制定需求管理计划,明确规定需求调研时间、用户参加人员、调研内容、实施人员;同时要求各个实施人员依据项目背景资料及以前其他项目的开发经验做好需求调研准备,认真编制需求分析问询表,详细列出调研问题提纲。以避免在调研过程中遗漏相关内容;在调研过程中分析人员对用户进行启发和诱导,使用户能有条理,系统地描述需求,并在调研中详细记录调研问题的答案。在此基础上编制用户需求说明书。以《GB-T 8567-1988计算机软件产品开发文件指南》为标准,从引言、任务概述、需求规定、运行环境规定等四个大的方面,编写软件需求说明书,并进行适当的具体化。该文档按照公司文档管理办法,标注文档版本号,完成时间,编制人,审核人,批准人和顾客代表。

从校方调查出客户对软件的要求,概况起来主要有简单、实用、稳定和清晰。

1)简单:校园安防操作人员多是校园内部的保安人员,同时学校没有专职的校园安防系统管理维护人员。

2)实用:操控性要好,无论是安保人员还是校内的教师员工都可以在自己独立的计算机上运行,不同职权人员实现不同的功能。

3)稳定:软件系统能在三五年之内保持相对的稳定性,在长期24小时运行中,故障率要低,免去很多的售后服务。

4)清晰:在关键监控点,图像质量要清晰,可以看清人的面孔及动作,为保安人员提供安全防范依据。

从校方获取的需求是感性的,是模糊的,大粒度的,是从使用者的角度提出的基本要求,包含较多的隐性要求。我们在项目开发中需要进行理解和适当转换,经过整理和归纳后的需求有如下内容。

1)软件概述:视频监控软件是安防系统中的重要组成部分,是人机交互界面的体现,设计的好坏直接影响使用效果,同时它必须是网络型的,具备自我诊断、备份恢复功能,为其它系统提供远程接口。

2)软件功能:

普通功能:实时视频监控、云台PTZ控制、电子地图、报警联动、录像回放

中级功能:语音对讲、视频抓拍、手动录像、录像下载、视频参数微调、群组播放、群组轮巡播放、用户认证、权限管理、控制优先级、系统内搜索、动态域名解析、远程管理硬件设备、设备运行状态监控与报警、实时在线用户统计、日志查询、灾难恢复。

高级功能:流媒体转发、数字矩阵、电视墙大屏显示、集中存储、双屏显示、多页面显示。

3)用户类特征

用户区分管理员和普通用户权限,只有管理员可以进行远程配置、设置权限。

普通用户可拥有网络预览、云镜控制、视频调节、远程回放、本地录像、日志查询功能。管理员可拥有网络预览、云镜控制、视频调节、远程回放、本地录像、日志查询、语音对讲、远程配置、集中存储设置,电视墙参数设置等功能。

4)运行环境

描述软件的运行环境,包括硬件平台、操作系统和版本,还有其它的软件组件或与其共存的应用程序。本系统中具体要求如下:

操作系统:Microsoft Windows 2000或以上版本

CPU:Intel Pentium IV 2.4 GHz或以上型号

内存:1GB或更高

显示器:支持1024×768或更高分辨率

5)设计和实现上的限制

因为本系统的编码器与解码器设备是由数字硬盘录像机厂家提供,视频处理相关软件必须在该公司提供的SDK基础上开发,受其限制。因为大屏拼接控制单元是外购设备,设备控制通讯必须满足控制单元控制协议。

6)内部接口

系统各功能模块之间通过数据库以及TCP、IP协议进行联系。系统中的监控图像信息都是经由网络进行发送与接收,而编码器各通道信息、设备运行状态信息、用户信息则是由数据库中的信息表列进行存、取操作。

7)性能要求

选择列表到显示列表最大时延小于3秒,实时预览图像延时小于1秒,图像清晰度满足H.264编码规范,分辨率为704×576,正常工作视频存储控制服务器CPU使用率小于70%,可同时进行的视频操作和回放窗口数为4个。

8)安全性要求

采用完善的集中用户认证管理模式,采用合理的优先级及冲突检测机制以满足系统中多用户的监控、管理需求。系统的使用者必须有密码才能控制设备,不同用户赋予不同权限。系统遵循账号唯一性原则,任意用户在任意位置登录,同时帐号可与计算机网卡物理地址进行绑定,实现帐号在指定的计算机上登录,不能重复登录。

三、需求变更管理

在软件开发过程中,一个校方的用户向他所认识的一个项目开发人员抱怨系统软件中的一项功能问题,并且表示希望能够进行修改,如果不加控制而直接进行修改会带来很多问题,如没有对变更进行控制,没有修改记录,容易造成软件版本的管理混乱,没有把变更的结果通知到所有的项目干系人,容易造成信息不一致,软件文档没有得到及时的更新。我们在项目开发过程中要求客户提出书面要求,然后把客户的需求理解转化后,填写需求变更请求表(如表1所示),并找相关人员签字确认。

项目名

××职业技术学院视频监控

变更请求标识

QRE-2010025

变更请求

云台操作控制方式

请求人及日期

刘××,2010.9.3

变更

理由

客户提出

用鼠标直接控制云台满足人性化的操作要求

变更

描述

对正处于预览状态的通道进行云台控制操作

用户可以通过在播放窗口中点击和拖动鼠标进行云台转动。

实现云台左、右、上、下、自动操作

影响

范围

影响窗口的双击,全屏和恢复

变更优先性考虑

低优先级

估计变更工作量

1个工程师7个工作日内完成

分析与评估意见

变更范围在客户端程序内,可控制、可实现,不涉及后台和数据库,同意变更

分析者

及日期

李××

2010.9.8

审批意见

同意变更

审批人及日期

蔡×× 2010.9.9

顾客签字

谢×× 2010.9.10

执行情况: 经过单元测试,鼠标在播放窗口的5个区域,能够控制云台对应的5个操作,光标有明显的提示功能,达到了变更要求。 余××, 2010.9.30。

表1:需求变更请求表

此表中反映出了变更的提出者,变更内容,变更理由,变更影响范围,变更优先性考虑、设计部门意见、领导意见、顾客签字及执行情况。全面的反映了需求变更从申请->评估->批准->实施->验证->配置归档的全过程控制流程。

四、需求跟踪管理

   对项目中所有需求功能进行统一编号,建立需求管理基线,记录功能名称、创建时间、创建人和变更记录。变更记录中记录了变更时间、提出人、变更内容、对应的需求变更请求表编号,以便于跟踪管理(如表2所示)。

需求编号

功能名称及描述

创建时间

创建人

变更记录

001

通过双击设备树通道结点或者将通道结点拖动到播放窗口中开始实时播放

高××

2010.6.20

①2010.8.1 刘×× 提出

保存窗口分割模式,窗口对应的通道关系等,下次启动时自动进行播放。需求变更请求表编号:QRE-2010002。

②2010.9.1 刘××提出

当网络中断,实时播放停止后,应给出报错提示。需求变更请求表编号:QRE-2010006。

002

可对正处于预览状态的通道进行云台控制操作

高××

2010.7.1

①2010.8.5 刘×× 根据客户意见提出另外一种云台控制方式——屏幕云台控制。用户可以通过在播放窗口中点击和拖动鼠标进行云台转动。需求变更请求表编号:QRE-2010025。

②2010.9.3 刘××提出,用户可以通过键盘按键进行云台转动,键盘的定义可按用户帐号保持。需求变更请求表编号:QRE-2010029。

(省略)

表2:需求跟踪管理表

当项目完成后,重新修订软件需求规格说明,将软件项目中的最终需求进行合并统一,以便质量管理部门进行软件质量检查和验证。查看软件的所有功能是否满足需求说明中的规定。

五、总结分析:

在视频监控软件项目开发过程中,需求管理计划和控制是非常重要的一个环节,有效的需求管理能对项目进度、质量和成本起到很好的控制作用,需求变更的过度蔓延有可能带来项目的混乱、失控甚至项目的最终失败。以上方法只是我们在实践中朴素的管理手段和经验总结,存在不足之处,希望同行批评指正。

参考文献:

1. 软件需求 机械工业出版社 2005年

2. 软件质量管理指南 北京 :电子工业出版社 2009年7月 第1版

3.张友生 系统分析师技术指南 北京 :清华大学出版社2009年6月

作者简介:

刘祥喜(1977-),男,湖北武汉人,系统分析师,软件设计师,长期致力于软件开发与应用、企业信息系统及业务架构、信息系统项目管理方面的工作研究和实践。

视频监控软件开发的需求管理相关推荐

  1. 最优视频监控软件开发的实现方法

    在开发视频监控系统应用软件时,大家往往把关注的焦点集中于数字音/视频的编解码的实现上,而忽略了视频监控系统应用软件的整体架构.当然视频监控的核心也是在于音视频编解码上,佰锐的Anychat SDK 主 ...

  2. 软件开发与过程管理——需求定义

    目录 一. 需求概述 1.1 需求的定义 1.2 需求错误的高昂代价 1.3 需求的三个层次及关系 1.4 需求工程 1.5 需求工程的基本活动 二. 需求定义的产物和要素 软件开发与过程管理专栏 一 ...

  3. 音视频开发(18)---视频监控客户端开发(IP Camera)总结

    视频监控客户端开发(IP Camera)总结 首先看下项目需求:   1.最多同时支持16路高清音视频同时显示.   2.窗口模式,全屏,1窗口,4窗口,9窗口,16窗口.   3.播放控制,开始播放 ...

  4. 软件项目中需求管理工作的重要性

    开发一个软件项目,如果采用瀑布模型(或改进型瀑布模型)的话,通常会包括以下几个开发阶段,即:需求分析.系统设计.系统编码.系统测试.系统交付(及后续维护).在项目管理过程域中,主要包括:项目规划.立项 ...

  5. 视频监控客户端开发(IP Camera)总结

    做了将近三年时间的视频监控客户端开发,当然期间也做个一些其他开发.在开发期间,经对系统不断进行重构优化积累了一些经验,现向大家分享一下.希望以此抛砖引玉,有这方面经验的朋友也发表一下看法和见解: 首先 ...

  6. 2022-2028全球视频监控软件行业调研及趋势分析报告

    据恒州诚思调研统计,2021年全球视频监控软件市场规模约 亿元,2017-2021年年复合增长率CAGR约为 %,预计未来将持续保持平稳增长的态势,到2028年市场规模将接近 亿元,未来六年CAGR为 ...

  7. 视频直播软件开发需要什么?

    直播行业因为强硬的技术支撑,走的越来越稳,给大家介绍一些视频直播软件开发的需要! 对于视频直播软件开发首先的就是系统开发语言,我们来看下有哪些开发语言!我们用云豹直播为例. 云豹直播互动系统由 WEB ...

  8. 视频直播软件开发关于亚马逊s3接入方式,视频直播源码创建存储桶方法

    一.登录亚马逊账户,进入S3 建立新的存储桶,用于视频直播源码的文件存储. 注册 Amazon S3 后,您就可以开始使用 AWS 管理控制台 创建存储桶.Amazon S3 中的每个对象都存储在存储 ...

  9. 视频教程-高级软件需求分析与需求管理实践-需求分析

    高级软件需求分析与需求管理实践 近二十年软件开发.软件设计.需求分析.项目管理.部门管理.公司管理及过程改进等经十五年的需求分析及需求管理工作经验,负责数十个大型项目的需求分析和需求管理工作,涉猎建筑 ...

最新文章

  1. Oracle物化视图
  2. zookeeper节点类型CreateMode
  3. 本地IDC机房数据库容灾解决方案
  4. Dubbo 源码分析 - 自适应拓展原理
  5. 小分子蛋白Western blot 检测
  6. C/C++程序设计IDE推荐
  7. 为什么两层3*3卷积核效果比1层5*5卷积核效果要好?
  8. mysql top 1效率_TOP 1比不加TOP慢的疑惑
  9. python字典求平均值_Python - 字典中各个键的每个值的均值
  10. 嘀嗒出行被曝五一活动虚假宣传,官方回应:为打击黑产
  11. Python爬取抖音用户相关数据(目前最方便的方法)
  12. [转载] python中日期和时间格式化输出的方法
  13. 文本匹配工具正式开源
  14. Qt之QTimeEdit时间控件
  15. [单片机框架][bsp层][N32G4FR][bsp_flash] flash配置和使用
  16. 日期格式化时候yyyy-MM-dd HH:mm:ss大小写区分
  17. CVE-2015-1427(Groovy 沙盒绕过 代码执行漏洞)
  18. 用python画钢铁侠图片_Photoshop快速把钢铁侠图片转为素描水墨风格教程
  19. exponential backoff algorithm
  20. 子进程及时知道父进程已经退出的最简单方案

热门文章

  1. 端午将至,VR全景奉上别开生面的“云上”端午节
  2. ghelper上网助手和谷歌浏览器安装,支付宝支付方式
  3. C语言输出字符的ASCII码
  4. java职业发展之路
  5. 嵌入式软件开发培训笔记——Linux下SQLite3数据库编程
  6. android视频开发倍速播放,调整视频播放速度
  7. 【Grub2】制作UEFI版本Grub2引导
  8. 自适应滤波算法(LMS算法)
  9. 个人永久性免费-Excel催化剂功能第59波-快速调用Windows内部常用工具命令
  10. 【总结】1272- 基于 Yarn 的 Monorepo 实践