功能分析

测试基础

巧了我就是萌 提交于 2020-01-16 01:58:57
软件测试 定义: 在规定的条件下对程序进行操作,以发现程序错误,衡量软件质量,并对其是否能满足设计要求进行评估的过程。 目的: 为了发现程序中的错误,而不是去证明程序中不存在缺陷。 测试流程: 1、对要执行测试的产品/项目/需求进行分析,确定测试策略,制定测试计划。 2、针对测试计划书进行评审(测试经理、测试负责人员、需求人员、软件开发人员等) 3、设计测试用例。越详细越好。若在测试的过程中发现用例中没有的软件缺陷,可以将该软件缺陷补录入测试用例中。 4、执行测试用例。执行前,要将测试过程中所需要的环境及数据准备好。 5、提交软件缺陷bug。 6、验证软件缺陷。 7、编写测试报告。对测试进行分析,总结本次的经验教训。 测试方法: 1、等价类 1)定义:是把所有可能的输入数据,即程序的输入域划分成若干部分(子集),然后从每一个子集中选取少数具有代表性的数据作为测试用例。等价类分为有效等价类和无效等价类。 2)如何划分等价类 1]在输入条件规定了取值范围或值的个数的情况下,则可以确立一个有效等价类和两个无效等价类。 如:输入值是学生成绩,范围是0~100。 2]在输入条件规定了输入值的集合或者规定了"必须如何"的条件的情况下,可确立一个有效等价类和一个无效等价类。 2、边界值 1)定义:边界值分析法就是对输入或输出的边界值进行测试的一种黑盒测试方法

01《软件需求分析教程》

為{幸葍}努か 提交于 2020-01-15 04:19:58
本书分为三大部分:   第一部分先介绍了一些基本的需求工程定义和一些优秀的需求分析所具有的特性。我希望你与你的重要客户能一起阅读第 2章(关于客户与开发者之间的伙伴关系);第 3章介绍了许多需求开发和管理的改进熟练程度的好方法(良好的习惯做法)。第 4章有助于计划怎样将新的策略融入小组的开发过程中。方法是基于对附录中当前需求实践自我测试的回答。第 5章则介绍了一些通常与需求相关的项目风险。   第二部分介绍了许多关于需求开发的技术。首先是定义项目的业务需求,项目视图(vision)及涉及的范围(scope)。接下来的章节介绍怎样为项目寻找合适的客户代表,获取(elicit)用户需求,编写功能需求文档及质量属性文档。第 10章介绍了一些分析模型,这些模型可用于不同范围的需求分析。第 12章介绍了软件原型的结构和应用。第二部分中的其它章节还探讨了定义需求优先级的方法及验证需求分析是否正确的方法。   第三部分的主题是需求管理的原则和策略。这部分还特别介绍了处理需求变更和评价每项变更对项目影响的技术。第 18章介绍了怎样把需求跟踪能力和单个需求相关的内容需求来源到与需求相关的设计、代码等)联系起来。第三部分的内容包括一些商业工具的说明,这些工具能增强你管理项目需求的能力。   你一定知道:一个不能让你进行一项基本操作的软件产品是多么令人烦恼。你不会感谢开发者

什么是软件需求

穿精又带淫゛_ 提交于 2020-01-15 04:16:43
对大多数人来说,若要建一幢数百万元的房子,他一定会与建房者详细讨论各种细节,他们都明白完工以后的修改会造成损失,以及变更细节的危害性。然而,涉及到软件开发,人们却变得“大大咧咧”起来。软件项目中百分之四十至百分之六十的问题都是在需求分析阶段埋下的“祸根” (Leffingwell 1997) 。可许多组织仍在那些基本的项目功能上采用一些不合规范的方法,这样导致的后果便是一条鸿沟 ( 期望差异 ) —开发者开发的与用户所想得到的软件存在着巨大期望差异。 在软件工程中,所有的风险承担者 (stakeholder)( 这个词很有意思,原义是赌金保管者。我看过很多的翻译,有翻译成涉众的,也有的翻译成参与者的,但是我想他的主要意思就是和这个项目有密切相关利益的人 ) 都感兴趣的就是需求分析阶段。这些风险承担者包括客户、用户、业务或需求分析员 ( 负责收集客户需求并编写文档,以及负责客户与开发机构之间联系沟通的人 ) 、开发人员、测试人员、用户文档编写者、项目管理者和客户管理者。这部分工作若处理好了,能开发出很出色的产品,同时会使客户感到满意,开发者也倍感满足、充实。若处理不好,则会导致误解、挫折、障碍以及潜在质量和业务价值上的威胁。因为需求分析奠定了软件工程和项目管理的基础,所以所有风险承担者最好是采用有效的需求分析过程。软件需求的定义 IEEE 软件工程标准词汇表 (1997 年 )

1.一个WEB应用的开发流程

你说的曾经没有我的故事 提交于 2020-01-14 13:42:49
先说项目开发过程中团队人员的分工协作。    一、人员安排   毕业至今的大部分项目都是独立完成,虽然也有和其他同事协作的时候,但自认为对团队协作的了解和认知都还有所欠缺。很清楚团队协作的重要性,但尚未有很好的机会在相对成熟的团队中锻炼实践。   先抛开 软件开发 团队中人员的具体安排不讲,单纯的看软件开发工作的分工。在上面设想的开发架构中,宏观上可将一个项目划分为前端、程序、 数据库 三个模块。由此可推导出团队中需要的成员:美工、程序员和项目经理。   认为理想的软件开发团队由四个专业技能过硬的成员组成:一个美工,熟悉UI的设计并具备将效果图转换成前端页面的能力,也就是得同时精通PhotoShop、HTML、CSS、jQuery等前端知识;一个程序员,熟练掌握代码的编写重构;一个项目经理,具备 需求分析 的能力、数据库设计维护的能力、架构设计的能力、程序编写的能力、前端样式脚本编写的能力,最重要的是对业务流程有精准的把握;一个部门经理,和前三位不一样,部门经理只具备领导能力即可,他是兼职,不需要把全部时间投入到团队中。   大部分中小型项目可以由这样的四人团队完成,可如果项目较大,已经大大超出了四个人可完成的工作量,可以再加一个前端开发人员。也就是说两个前端开发者,一个负责UI设计,做出完整的效果图,这个人的设计功底应该比较强;一个负责将效果图转换成页面,并完成样式、脚本等的编写

《软件需求与分析》阅读笔记

99封情书 提交于 2020-01-13 04:00:28
一、我们应当如何做需求分析? 通过阅读《我们应当怎么做需求分析》我了解了需求分析需要进行的阶段,以及需要掌握的内容。 需要掌握的内容如下: ( 1 )需求调研:其中包括如何与客户交流、建立良好的合作关系、通过研讨会与客户交流获得项目的原始需求并对需求进行研讨,并采用迭代的方式进行需求的不断完善。 ( 2 )需求分析:分析用例、分析业务流程、构建用例说明、其他例如查询功能的分析、子用例及扩展用例的分析、行动图和状态图、业务领域分析、原文分析、非功能需求分析。 ( 3 )需求确认:列出需求列表得到用户确认、利用快速原型法得到用户的确认、构建需求规格说明书。 一、需求调研 1 、与客户初识: 要树立良好的职业威信。不要在客户面前唯命是从,要适当地提出自己的见解,这样不但会让客户对自己有信心,而且自己也可以规范化客户的需求,不至于客户提出什么我们就按照客户说的做什么。 进行详细的角色分析,对号入座。客户方有很多的角色,每一个角色都有自己独特关注的地方,要合理地进行角色分析,让他们了解他们所希望了解的问题,对于需求的调研分析非常地重要。 从宏观上制定目标。在将角色进行分析后,要对每一个角色进行特定地分析,与各个角色进行详细地业务分析,详细了解业务的流程,对于需求的分析非常重要。 2 、拜访客户 需求分析需要与客户进行交流,与人交流就要处理好与他人的关系

我们应当怎样做需求分析

北战南征 提交于 2020-01-11 16:04:32
阅读笔记1 读了这篇关于软件需求分析的博客之后,令我大有感触。我觉得这篇文章写得实在是太好了,完全可以绘制成一本关于软件需求分析的书。 此书主要从客户的一些需求分析作为出发点,对用户的需求作大量的研究,从不同的角度做分析。一个需求分析的是否彻底决定了项目的成功与否。但是从现实中来说,很难做到不停的调研,对用户的需求能够彻底的了解,直至到达用户需要的场景。对于一些基层人员,像这种专门做软件开发设计的,在开展一个项目之前,必须要了解用户的需求,用户在什么样的工作环境下的需求,对于最基层工作人员的工作情况了解,不能让此系统软件给工作人员造成了负担。要做到好的需求结果,我认为需要,大胆和用户沟通不要怕说错、有不懂业务问题一定要问用户不要怕打扰别人了、多写各类软件文档不要怕麻烦、多百度一下很多 问题能解决、多推敲在用户需求上能否在扩展更有用的东西、系统界面一定要美观,很多开发人员都不太重视界面,只注重一些功能的实现,每次先完成一些项目的功能之后,可以先让用户看看,是否按着他的一些思路,对于一些对此专业一窍不通的用户,可能会有一些天马行空的想法,在这个时候你不能拒绝用户的想法,这样会让用户感到反感。对于这种情况分析人员只能调查为什么用户会有这样的想法,这种想法对于用户的利益,然后分析人员 可以通过其他的解决方法进行解决。 我们应当怎样做需求分析:子用例与扩展用例 这部分里用例图中

胡泽锐:移动开发即服务——腾讯云移动开发平台技术分享

一曲冷凌霜 提交于 2020-01-11 09:09:57
欢迎大家前往 腾讯云+社区 ,获取更多腾讯海量技术实践干货哦~ 作者:胡泽锐,2010 年毕业加入腾讯,先后负责过QQ空间、网页应用、移动应用、移动游戏相关的工作,有着丰富的平台产品经验以及大前端开发经验,目前在腾讯云负责前端以及终端相关的工作,提出并推动移动开发平台产品的落地。 很高兴能和大家分享移动开发的历史、现状、以及未来,一起探索面向云端的全新模式——移动开发即服务。正因为有了移动开发即服务的理念,才有了移动开发平台这个产品。传统模式下,大家都是以单个产品或者能力的方式提供服务,比如推送的就提供推送的服务,分析的就提供分析的服务。也许在单个产品下,能做到体验的极致,在接入使用,或者管理上能做到很方便。但对整个移动开发来讲,这种单品的割裂会导致整个移动开发体验的不流畅、不完善,各个产品之间的割裂会导致整个移动开发的节奏也是割裂的,我们无法完整地做到一件事情从头到尾只在一个平台上做,所以腾讯云提出一个全新的模式——移动开发即服务。 这里面包含两个概念,一是要做移动开发整体的事,我们要服务移动开发整个的生命周期。二是做服务的事,服务这里也包含两点:一是我们的开发体验必须要做到完善,二是使用体验也要尽力做到最好。 移动开发平台 下图是腾讯云和腾讯内的各个产品合作,深度整合各个产品,联合推出的全新的移动开发平台。如果只是看功能的话,这些产品都不是什么特别新的东西,比如移动分析

商业智能学习笔记

好久不见. 提交于 2020-01-11 02:29:32
商业智能 ,又称 商务智能 ,英文为 Business Intelligence ,简写为 BI 。 商业智能通常被理解为将企业中现有的数据转化为知识,帮助企业做出明智的业务经营决策的工具 。这里所谈的数据包括来自企业业务系统的订单、库存、交易账目、客户和供应商等来自企业所处行业和竞争对手的数据以及来自企业所处的其他外部环境中的各种数据。而 商业智能能够辅助的业务经营决策,既可以是操作层的,也可以是战术层和战略层的决策 。为了 将数据转化为知识 ,需要利用 数据仓库 、 联机分析处理( OLAP )工具 和 数据挖掘 等技术。因此,从技术层面上讲,商业智能不是什么新技术,它 只是数据仓库、 OLAP 和数据挖掘等技术的综合运用 。 商业智能的概念于 1996 年最早由加特纳集团( Gartner Group )提出,加特纳集团将商业智能定义为: 商业智能描述了一系列的概念和方法,通过应用基于事实的支持系统来辅助商业决策的制定 。 商业智能技术提供使企业迅速分析数据的技术和方法,包括收集、管理和分析数据,将这些数据转化为有用的信息,然后分发到企业各处 。 可以认为, 商业智能是对商业信息的搜集、管理和分析过程,目的是使企业的各级决策者获得知识或洞察力( insight ),促使他们做出对企业更有利的决策 。商业智能一般由数据仓库、联机分析处理、数据挖掘、数据备份和恢复等部分组成

软件测试需求分析

亡梦爱人 提交于 2020-01-09 17:29:14
一、什么是软件测试需求(定义) 1、测试需求主要解决“测什么”的问题,一般来自需求规格说明书的原始需求(客户直接给出) 2、测试需求应该全部覆盖已定义的业务流程,以及功能和非功能方面的需求。(eg:假设我们要设计一个购物网站,我们从原始需求中就可以知道需要包括:注册、登录、浏览商品、购买商品、支付等功能,如果没有注册直接就可以登录那么这个测试就没有全部覆盖已经定义的流程。) 二、为什么需要软件测试需求 1、软件测试需求是设计测试用例的依据。 2、有助于保证测试的质量和进度。 3、软件测试需求是衡量测试覆盖率的重要指标。 三、如何进行软件测试需求分析 软件测试需求分析的一般步骤: 1、列出需求文档中具有可测性(原始需求中提到的可以验证的功能)的原始需求。 2、对每一条测试点进行细化,形成可测试的分层描述的测试点。 3、对形成的测试点从软件产品质量需求来分析,确定测试执行需要实施的测试类型。 4、建立测试需求跟踪矩阵,对测试需求进行管理。 测试需求分析的主要目的 :找出测试点 测试点的分析 : --通过描述需求分析中的输入、输出、处理、限制约束等,给出对应的验证内容:(功能性测试) --通过分析各个模块之间的业务顺序,和各个模块传递的业务信息和数据对存在功能交互的功能项,给出对应的验证内容。(功能交互测试) --考虑需求的完整性,要充分覆盖软件需求的各个特征,包含隐形需求验证

python的库有多少个?python有多少个模块?

守給你的承諾、 提交于 2020-01-08 13:42:17
这里列举了大概500个左右的库: ! Chardet字符编码探测器,可以自动检测文本、网页、xml的编码。 colorama主要用来给文本添加各种颜色,并且非常简单易用。 Prettytable主要用于在终端或浏览器端构建格式化的输出。 difflib,[Python]标准库,计算文本差异 Levenshtein,快速计算字符串相似度。 fuzzywuzzy,字符串模糊匹配。 esmre,正则表达式的加速器。 shortuuid,一组简洁URL/UUID函数库。 ftfy,Unicode文本工具7 unidecode,ascii和Unicode文本转换函数。 xpinyin,将汉字转换为拼音的函数库 pangu.py,调整对中日韩文字当中的字母、数字间距。 pyfiglet,Python写的figlet程序,使用字符组成ASCII艺术图片 uniout,提取字符串中可读写的字符 awesome slugify,一个Python slugify库,用于处理Unicode。 python-slugify,转换Unicode为ASCII内码的slugify函数库。 unicode-slugify,生成unicode内码,Django的依赖包。 ply,Python版的lex和yacc的解析工具 phonenumbers,解析电话号码,格式,存储和验证的国际电话号码。 python