软件产品设计中如何进行需求分析?
软件产品是指软件开发商根据市场需要开发的、具有一定适用性和潜在客户的、可销售的软件成品。
它区别于应特定客户需求或根据订单开发的软件商品,通常应具有更高的通用性和适应性。
但它的通用性和适应性不是轻而易举就能达到的。
要实现软件的产品化,就必须在软件产品的设计上下一番功夫。
本文结合一个"多媒体远程教学系统"实例,探讨软件产品设计中的一些经验与看法。
一、软件产品设计的重要意义 所谓软件产品设计,在本文中指对软件产品的功能与架构进行设计。
用传统的软件工程术语来说,它覆盖软件工程的可行性研究、需求分析、系统设计几个阶段。
用RUP(Rational Unified Process-统一软件过程)术语来说,它是需求定义与软件构架设计的结果。
软件产品设计包括了需求分析、功能定义、技术方案以及需求管理的策略。
我们可以看见很多这样的例子:企业做完一个产品后,便不得不长期甚至永久地投入几个人(通常还是曾参与研发的技术骨干)对产品进行维护、跟踪和服务;企业在做同类项目时,还不得不投入几乎相等的资源;系统集成企业或以管理类项目为主的研发企业长期为工程所困,良好的市场需求并不能带来利润回报的规模增加,等等。
造成以上现象,一是由于企业的软件过程成熟度不高,另一个原因,就是缺乏清晰、深入的软件产品设计。
优秀的产品设计可能是软件企业发展的重要契机。
好的产品设计可能使企业走向产品系列化、服务规范化、内部管理规范化的良性发展之路;而差的产品设计不仅将造成现实的资源浪费,甚至有可能使产品从此成为软件企业的一个枷锁。
其实,产品设计的来源最终都是市场。
设计的好与不好,反映了设计者对技术、业务、以及用户需求诸方面的现状以及变化规律把握的结果。
下面从功能定位入手,探讨怎样进行产品设计。
我们所举的例子的主体假设是一个典型的系统集成企业,在多媒体系统集成项目上有较多的工程经验,在软件研发上也小有积累,市场研究认为多媒体技术在培训、教学领域将大有可为。
二、软件产品的分类及定位 与一般的针对用户明确需求的软件项目的需求分析稍有不同,软件产品的功能定义更多的是一种"定义",而不象面向特定用户的系统,其需求定义是一种记录、归纳和分析的过程。
它看起来的自由度比较大。
正是这种自由度可以带来产品的升华,使工程产品化。
即使对于特定用户的软件需求,我们也有必要在满足特定用户的特定需求的同时,对相关技术和业务进行适当的分析和预期,使得项目的成果具有更好的适用性和重用价值。
软件产品可以分为两种:面向最终用户的和面向软件开发或集成商的。
第一种主要指面向不限于计算机技术人员、完成一定应用功能的系统;后者指供专业的软件开发人员使用、用于构造第一种产品的"中间"产品,它可能是一个完整的系统平台,也可能是一个开发包或一个小的程序工具。
不同种类的产品具有不同的特性要求:面向集成商/开发商的产品要求可靠、可扩充、有详尽的技术说明、有一定的技术适应性;面向最终用户的产品则要求功能完整、可靠、可维护、有较好的应用适应性。
其实,设计人员还可以根据市场形式开发介于以上二者之间的"半产品",即通过简单定制可以"生产"出应用系统的"半成品",但又不同于严格意义上的开发平台或是零散的开发工具包。
这种"半成品"很实用,不仅可以提高本企业的生产率,为产品系列化打好伏笔,还可以在适当的市场时机作为商品提供给系统集成商,为企业带来额外的利益。
到底要开发什么类型的产品,是软件产品设计的第一个重要决策。
我们假设的"多媒体远程教学系统"定位在"半成品"上,希望开发出能直接用于某种应用场合(如企业培训),但可以根据应用需要进行定制、扩充,广泛应用于其他相关应用,如专业培训机构、网络化学校教育等。
三、软件产品的非功能性需求定义 软件产品的需求可以分为功能性需求和非功能性需求。
其中软件产品的非功能性需求是常常被轻视、甚至被忽视的一个重要方面。
其实,软件产品非功能性定义不仅决定产品的质量,还在很大程度上影响产品的功能需求定义。
如果事先缺乏很好的非功能性需求定义,结果往往是使产品在非功能性需求面前捉襟见肘,甚至淹没功能性需求给用户带来的价值。
所谓非功能性需求,是指软件产品为满足用户业务需求而必须具有的、除功能需求以外的特性。
软件产品的非功能性需求包括系统的性能、可靠性、可维护性、可扩充性、对技术和对业务的适应性,等等。
下面对其中的某些指标加以说明。
1、系统的完整性 指为完成业务需求和系统正常运行本身要求而必须具有的功能,这些功能往往是用户不能提出的。
典型的功能有:联机帮助、数据管理、用户管理、软件发布管理、在线升级,等等。
并不是所有的系统都必须包括以上所有的功能,而是可以根据产品的使用环境和企业的产品发展决策进行挑选。
例如,在线升级、软件发布管理适用于具有因特网或内网环境的软件产品;而数据管理对于产生数据存储的产品则是必须的,设计人员不应假设用户同时是一个合格的DBA,而且系统所产生...
软件工程用户界面设计用什么软件
从心理学意义来分,界面可分为感觉(视觉、触觉、听觉等)和情感两个层次。
用户界面设计是屏幕产品的重要组成部分。
界面设计是一个复杂的有不同学科参与的工程,认知心理学、设计学、语言学等在此都扮演着重要的角色。
用户界面设计的三大原则是:置界面于用户的控制之下;减少用户的记忆负担;保持界面的一致性。
用户界面设计在工作流程上分为结构设计、交互设计、视觉设计三个部分。
结构设计 Structure Design结构设计也成概念设计 (Conceptual Design),是界面设计的骨架。
通过对用户研究和任务分析,制定出产品的整体架构。
基于纸质的的低保真原型(Paper Prototype)可提供用户测试并进行完善。
在结构设计中,目录体系的逻辑分类和语词定义是用户易于理解和操作的重要前提。
如西门子手机的设置闹钟的词条是“重要记事”,让用户很难找到。
交互设计 Interactive Design交互设计的目的是使产品让用户能简单使用。
任何产品功能的实现都是通过人和机器的交互来完成的。
因此,人的因素应作为设计的核心被体现出来。
交互设计的原则如下:1)有清楚的错误提示。
误操作后,系统提供有针对性的提示。
2)让用户控制界面。
“下一步”、“完成”,面对不同层次提供多种选择,给不同层次的用户提供多种可能性。
3)允许兼用鼠标和键盘。
同一种功能,同时可以用鼠标和键盘。
提供多种可能性。
4)允许工作中断。
例如用手机写新短信的时候,收到短信或电话,完成后回来仍能够找到刚才正写的新短信。
5)使用用户的语言,而非技术的语言。
6)提供快速反馈。
给用户心理上的暗示,避免用户焦急。
7)方便退出,如手机的退出,是按一个键完全退出,还是一层一层的退出。
提供两种可能性。
8)导航功能。
随时转移功能,很容易从一个功能跳到另外一个功能。
视觉设计Visual Design 在结构设计的基础上,参照目标群体的心理模型和任务达成进行视觉设计。
包括色彩、字体、页面等。
视觉设计要达到用户愉悦使用的目的。
视觉设计的原则如下:。
1)界面清晰明了。
允许用户定制界面。
2)减少短期记忆的负担。
让计算机帮助记忆,例:User Name,、Password、IE进入界面地址可以让机器记住。
3) 依赖认知而非记忆。
如打印图标的记忆、下拉菜单列表中的选择。
4)提供视觉线索。
图形符号的视觉的刺激;GUI(图形界面设计):Where, What, Next Step。
5)提供默认(default)、撤销(undo)、恢复(redo)的功能6)提供界面的快捷方式。
7)尽量使用真实世界的比喻。
如:电话、打印机的图标设计,尊重用户以往的使用经验。
8)完善视觉的清晰度。
条理清晰;图片、文字的布局和隐喻不要让用户去猜。
9)界面的协调一致。
如手机界面按钮排放,左键肯定;右键否定;或按内容摆放。
10)同样功能用同样的图形。
11)色彩与内容。
整体软件不超过5个色系,尽量少用红色、绿色。
近似的颜色表示近似的意思。
西门子6688:“确定”按键设计的不一致性用户界面设计构筑了产品设计的基础。
如只有首先确定了手机菜单的交互形式,才能在造型设计上决定是采用五项键或上下键。
在国外,用户界面设计人员有了一个新的称谓:Information Architecture,信息建筑师。
它不仅仅是指美工,而是具有心理学、软件工程学、设计学等综合知识的人。
产品经理数据分析主要用什么软件
1.概念需求的定义包括从用户角度(系统的外部行为),以及从开发者角度(一些内部特性)来阐述需求.关键的问题是一定要编写需求文档.我曾经目睹过一个项目中途更换了所有的开发者,客户被迫与新的需求分析者坐到一起.系统的分析人员说:"我们想与你谈谈你的需求."客户的第一反应便是:"我已经将我的要求都告诉你们前任了,现在我要的就是给我编一个系统".百事通而实际上,UGGs,需求并未编写成文档,因此新的分析人员不得不从头做起.所以如果只有一堆邮件、会谈记录或一些零碎的未整理的对话,你就确信你已明白用户的需求,那完全是自欺欺人.需求的另外一种定义认为需求是"用户所需要的并能触发一个程序或系统开发工作的说明".有些需求分析专家拓展了这个概念:"从系统外部能发现系统所具有的满足于用户的特点、功能及属性等".这些定义强调的是产品是什么样的,而并非产品是怎样设计、构造的.而下面的定义则从用户需要进一步转移到了系统特性:需求是指明必须实现什么的规格说明.它描述了系统的行为、特性或属性,是在开发过程中对系统的约束.从上面这些不同形式的定义不难发现:并没有一个清晰、毫无二义性的"需求"术语存在,真正的"需求"实际上在人们的脑海中,这个人们主要是指客户,但一般情况下,用户并不能描述自己的需要,只就需要系统分析人员根据用户的自己语言的描述整理出相关的需要再进一步和客户核对.系统分析员和客户需要确保所有项目风险承担者在描述需求的那些名词的理解上务必达成共识.任何文档形式的需求(例如如下将要描述的需求规格说明书)仅是一个模型,一种描述.2.需求分析的任务开发软件系统最为困难的部分就是准确说明开发什么.最为困难的概念性工作便是编写出详细技术需求,这包括所有面向用户、面向机器和其它软件系统的接口.同时这也是一旦做错,将最终会给系统带来极大损害的部分,并且以后再对它进行修改也极为困难.目前,国内产品的庞杂,一家企业可能有几个系统并立运行,它们之间接口是系统开发人员最头痛的问题.对于商业最终用户应用程序,企业信息系统和软件作为一个大系统的一部分的产品是显而易见的.但是对于我们开发人员来说,并没有编写出客户认可的需求文档,我们如何知道项目于何时结束?而如果我们不知道什么对客户来说是重要的,那我们又如何能使客户感到满意呢?然而,即便并非出于商业目的的软件需求也是必须的.例如库、组件和工具这些供开发小组内部使用的软件.当然你可能偶尔勿需文档说明就能与其他人意见较为一致,但更常见的是出现重复返工这种不可避免的后果,而重新编制代码的代价远远超过重写一份需求文档的代价,这些血的教训正在国内的软件开发者身上发生.近来,我遇到一个开发小组开发包括代码编辑器在内的一套内部使用的计算机辅助软件.不幸的是,当他们开发完这个工具后,发现这个工具不能打印出源代码文件,使用者当然希望有这个功能.结果这个小组只好手工抄写源代码文档以供代码检查.这说明那怕需求明确无误并构思准确,如果我们没有编写文档,软件达不到期望目标也只能是咎由自取了.相反的情况,我曾见一个要集成到"错误跟踪系统"中的简单界面写了一页需求说明.而操作系统系统管理员在为处理脚本时发现简单的一张需求清单竟是如此有用.他们依据需求对系统进行测试时,此系统不仅非常清晰地实现了所有必需功能,而且未发现任何错误.事实上,需求文档在开发过程中一直起指导作用.3.需求分析过程可把整个软件需求工程研究领域划分为需求开发和需求管理两部分更合适,如图4-1所示:图4-1 需求工程域的层次分解示意图需求开发可进一步分为:问题获取、分析、编写规格说明和验证四个阶段.这些子项包括软件类产品中需求收集、评价、编写文档等所有活动.需求开发活动包括以下几个方面:确定产品所期望的用户类别.获取每个用户类的需求.了解实际用户任务和目标以及这些任务所支持的业务需求.分析源于用户的信息以区别用户任务需求、功能需求、业务规则、质量属性、建议解决方法和附加信息.将系统级的需求分为几个子系统,并将需求中的一部份分配给软件组件.了解相关质量属性的重要性.商讨实施优先级的划分.将所收集的用户需求编写成文档和模型.评审需求规格说明,确保对用户需求达到共同的理解与认识,并在整个开发小组接受说明之前将问题都弄清楚.需求管理需要"建立并维护在软件工程中同客户达成的合同" .这种合同都包含在编写的需求文档与模型中.客户的接受仅是需求成功的一半,开发人员也必须能够接受他们,并真正把需求应用到产品中.通常的需求管理活动包括:定义需求基线(迅速制定需求文档的主体).评审提出的需求变更、评估每项变更的可能影响从而决定是否实施它.以一种可控制的方式将需求变更融入到项目中.使当前的项目计划与需求一致.估计变更需求所产生影响并在此基础上协商新的承诺,这种承诺具体体现在项目解决方案上.让每项需求都能与其对应的设计、源代码和测试用例联系起来以实现跟踪.在整个项目过程中跟踪需求状态及其变更情况.以上几点说...
数据分析软件有哪些
铭太“E审通”——社会审计协同作业系统基本信息 :《E审通》具备“审计数据实时自动采集;审计风险实时自动预警;审计证据实时查证分析;审计作业团队联网协同”鲜明特点,智能协同的《E审通》软件,将引领你进入一个高质量、低风险的全新审计模式!作用:1、简单易用,审计操作方便实用。
软件直接解压后即可运行;系统支持浏览器方式运行,操作系统就像上网一样简单方便,审计流程操作只需轻点鼠标就轻松实现;底稿操作和OFFICE完全一致,并可自动过入数据,无需再为数据分析整理录入而烦恼,操作犹如傻瓜相机般的方便简单2、 财务数据采集方便灵活。
采集手段多样丰富,包括自动采集、直接采集、备份采集、EXCEL采集等方式;数据采集使用简便:用户只需要提供一些必须的设置信息,数据采集程序就可以正常工作;采集技术含量高,采集速度快,能满足审计人员现场快速获得数据的需求;采集软件借口类型广泛,支持目前市面主流的财务软件接口采集。
3、 安全绿色软件,确保用户系统及数据安全。
业界第一个采用免安装的网络版绿色审计软件,简单拷贝解压即可完成系统安装,无需更改电脑系统注册表,没有任何文件碎片,对原有系统没有任何影响,免除用户担心由于安装所带来的种种问题。
如何写互联网产品分析报告,从哪些方面入手
1、行业概述结合产品所在行业,介绍互联网背景(可以展现大局观、战略思维)介绍产品对应市场情况(市场规模、用户群体、产品组成及竞争情况、有何新趋势等);2、产品概述产品简单描述(可以按照why,what,where,when,who,how,how much的5W2H的思路来选择性简单描述);产品定位与目标(定位:不是你对产品做的事,而是你对预期客户要做的事。
换句话说,你要在预期客户的头脑里给产品定位,它的基本概念应包括在合适的环境中和合适的时间对合适的人说合适的话-即满足合适的需求;目标:实现什么效果);产品形态(比如在终端类型、用户种类等等方面有多种已有的产品形式,为后面延伸思考还可以有哪些形式,或者已有形式之间的整合精简或者形成闭环等);产品发展规划(产品的远景目标以及实施的战略过程。
可以细写到产品各类别结构规划及定位,产品生命周期规划等);3、用户需求分析用户分析(用户地域分布、用户人群分布:性别、年龄、职业、学历等、用户使用客观场合和主观场景,这里个人觉得使用场景和使用所处的客观场合的分析很重要,可以保证你在思考的过程不脱离用户本身);需求分析(需求整理罗列,然后整理哪些被很好满足,哪些被很坏满足,哪些可以更好满足);4、产品功能分析(功能模块框架及简单描述、主要业务流程,产品界面布局交互等);5、产品非功能分析(安全性、软硬件环境、运营推广方面等等);6、产品SWOT分析内部条件分析-S:优势分析(需求满足、交互、视觉、技术性能、资源平台等方面分析用户体验,可以结合竞品来考虑)W:劣势分析(同上)外部条件分析--O:机会分析(新产品,新市场,新需求,市场发展趋势优势,竞争对手失误等)T: 威胁分析(新的竞争对手,市场挑战,替代产品,行业政策,用户不稳定或改变,突发风险事件等)7、改善建议可针对上面提出的劣势或者功能、非功能分析提出具体的改进思路或方案,如果能有交互设计更好。
数据分析软件有哪些,他们分别的特点是什么
EXCEL:最常见的数据分析软件,会的人比较多,功能也比较齐全,操作比较简单,可以分析,可以制图(图表类型也不少)等等,不过一旦数据量大了,EXCEL比较卡,确实有点浪费时间。
SPSS:可以分析数据,可以做一些数据模型,但需要企业人员有一定的数据和统计基础,上手相对难些,用好了很不错。
BDP个人版:有数据接入、数据处理、可视化分析等功能,操作简单,功能也比较齐全,数据图表效果也很好,主要数据可以实时更新,节省了很多重复分析的工作。
不过BDP免费版接入的数据容量有限,这也是一个问题,除非要花费买容量咯。
可以根据这些特点,选择适合企业的~
审计软件的产品介绍
鼎信诺审计作业系统一、简介《鼎信诺审计系统》针对社会审计行业设计开发的,它符合2006年财政部颁布的《中国注册会计师执业准则》、《中国注册会计师执业准则指南》和《2006年企业会计准则》的规定,并且兼顾到中国证监会的相关要求及新近颁布的财会法规。
《鼎信诺审计前端》是用于采集财务电子账套,可导入的财务软件包括:金蝶、用友、速达、安易、浪潮、新中大、远光、远方、久其、博科等等。
《鼎信诺审计系统》的主要功能分为:财务数据、会计报表、数据分析、工作底稿和审计调整五个部分:底稿向导中包括业务综合类、符合性测试、实质性测试、须关注重要事项和备查类等五大类工作底稿。
二、 主要功能 1. 前端数据采集 审计前端能够从金蝶K3、金蝶KIS、用友7系列、用友8系列、用友通系列、速达3000、速达5000、新中大、久其、安易、博科、浪潮、远光、远方、小蜜蜂等常见财务软件中取出数据;并且不需要安装可直接运行;前端是完全免费,可以直接从公司网站上下载;对于定制的或者不常见的财务软件,可通过粘贴数据到EXCEL取数模板的方式采集数据。
2. 生成未审会计报表(账表核对) 未审会计报表中,未审数是由科目得到的,报表数是由企业提供的。
如果账表之间存在差异,以红色字体显示。
用户可以据此进行账表差异调整,例如:往来款科目的负值调整。
3. 自动生成实质性工作底稿 所有的实质性工作底稿都是自动生成的,实质性工作底稿包括:审计程序、审定表、明细表、检查表等等。
对于往来款中有核算项目的,也可自动在明细表中列示。
4. 审计调整 输入一次审计调整后,该调整分录涉及到的底稿、报表、附注都能自动更新数据。
调整分录,自动生成汇总表和审计会计报表。
5. 审计抽样 审计人员凭经验和职业判断手工抽取样本;也可以依据审计人员选择的抽样方法(随机、由大到小或由小到大)和条件(抽取笔数或金额),由计算机计算出各种统计数据(包括:样本总量、已选样本量、剩余样本量、所占比例大小等等);同时保留审计轨迹,并与抽样结果一起反映到检查表中。
对于已抽出的凭证还可以生成凭证并打印出来。
6. 生成银行函证和往来单位函证 在实质性工作底稿中选择要发送函证的银行或往来单位,修改系统提供的函证模板后,系统自动生成一页一页WORD格式的函证。
7. 往来款账龄计算 往来款的实质性工作底稿中,系统可以依据多年的账套数据计算出账龄。
8. 存货和固定资产的测试 存货或固定资产的实质性工作底稿中,系统可以自动提取前端已采集的相关数据,依据用户选择的不同方法进行测试。
9. 索引号的增删改及打开联接 实质性工作底稿中,用户可以修改底稿的索引号,并可以在底稿中的任意单元格中添加或删除索引号,也可直接打开索引联接的底稿。
10. 批注的的增删改及打开联接 编制底稿或审核的过程中,某单元格需要添加说明或提示的文字,可以使用书签功能完成,一个项目中的书签全部汇集在书签管理中,双击即可打开对应底稿的单元格。
11. 三级复核的控制 按照2006年审计准则的要求,底稿三级复核包括:编制人、复核人和项目质量控制复核人,系统提供了相应的用户权限来控制三级复核,同时底稿格式也相应作出调整。
12. 自动生成会计报表附注 系统提供了财政部和国资委颁布的会计报表附注模版,会计报表附注的内容和格式是可以修改的。
修改后的附注能够一次性全部刷新到WORD文档中。
13. 集团公司审计(汇总会计报表) 系统根据集团公司关系自动汇总各层级资产负债表以及利润表。
14. 数据分析 数据分析有报表分析、图表分析和指标分析三种,从不同的角度分析审计风险。
15. 相关搜索(交叉索引) 相关搜索也称交叉索引,它提供了统计某一科目或某些科目在凭证中的对方科目有那些,并统计对方科目的发生额合计数,和凭证笔数。
16. 套打工作底稿(自动排版) 一次性打印出全部已完成的底稿。
系统自动对底稿索引进行编号。
17. 导出EXCEL文件 系统可一次性把已完成的底稿导出为Excel文件。
18. 项目重用 由于审计具有连续性,去年审过的企业今年再审。
用户以去年的项目为模板,直接采用去年项目底稿的格式、计算公式等,最大限度地减少工作量、提高工作效率。
该功能也可作为类似项目的模板使用。
19. 数据查询 在多年的集团项目中,用户可以查询到任何一个年度的任何一家公司的财务数据;系统提供了三级跳的查询方式,由总账双击进入到明细账,明细账双击到凭证,双击凭证的相应科目又可以看到对应的明细账。
20. 底稿管理 系统归集了各种审计常用的文档(例如:审计业务约定书、审计计划、审计策略、实质性底稿、审计报告等等)。
用户也可以自行添加、修改或删除文档。
21. 自动备份 退出系统时根据系统设置自动完成备份。
备份策略可以根据需求进行设置。
可以设置为按天或按次等进行备份。
并且可以把项目备份到指定的服务器中。
三、 系统特点 1. 设计规范,专业性强 在深入分析审计行业需求和特点的基础上,按照国家财政部2006年颁布的《中国注册会计师执业准则》、《中国注册会计师执业准则指南》和《2006年企业会计...
少时_