软件工程

软件工程实践2019第三次作业

安稳与你 提交于 2019-11-30 11:04:54
1.Guthub项目地址: https://github.com/cai0326/hello-world 2..PSP表格 PSP2.1 Personal Software Process Stages 预估耗时(分钟) 实际耗时(分钟) Planning 计划 30 30 Estimate 估计这个任务需要多少时间 765 1065 Development 开发 60 60 Analysis 需求分析 (包括学习新技术) 120 180 Design Spec 生成设计文档 60 60 Design Review 设计复审 30 30 Coding Standard 代码规范 (为目前的开发制定合适的规范) 45 45 Design 具体设计 30 60 Coding 具体编码 120 300 Code Review 代码复审 30 30 Test 测试 (自我测试,修改代码,提交修改) 30 60 Reporting 报告 60 60 Test Repor 测试报告 60 60 Size Measurement 计算工作量 30 30 Postmortem & Process Improvement Plan 事后总结, 并提出过程改进计划 60 60 合计 765 1065 3.计算模块接口的设计与实现过程 文件输入输出 刚开始思考这道题目的时候,就感觉从文件中提取信息

软件工程第三次作业——关于软件质量保障初探

半城伤御伤魂 提交于 2019-11-30 10:53:14
博文软件质量保障初探 192401-陈雪健-20194585 - (1)对教材与参考资料阅读后关于软件质量保障你的体会是什么? 质量在软件的研发领域几乎可以说是重过其他一切,开发进度来不及可以延期,方案搞不定可以变更,裁决不做,唯有质量不可妥协。 (1) 质量是一个企业的代名词,质量都做不好,客户肯定会有不好的体验,并质疑你的能力。 (2) 对于大型的软件工程活动,如果前期版本到处挖坑,那么后期版本将会越做越痛苦,而且定位和解决问题所消耗的时间和金钱将会更多。 (3) 从软件开发的角度来看,越早引入问题,带来的人力消耗和经济损失就越大。 如果开发阶段,引入一个和其他地方关联性比较强问题,一直没被发现,然后几个版本之后发现,那么可能很多代码都是基于这个错误的逻辑继续开发的,到时候修改起来,很可能会牵一发而动全身。 再比如,需求分析没做好,或软件架构设计不合理,开发完之后才发现,那代价就会更大。 - (2)如果你是一个项目的QA,那么你认为你的工作职责范围是什么? - QA是对整个公司的一个质量保证,包括成品,原辅料等的放行,质量管理体系正常运行等。 - QA主要职能为质量体系的建立\完善,以及成品质量的保证.并对市场状况的追踪。 - QA偏重于质量管理体系的建立和维护,客户和认证机构质量体系审核工作,质量培训工作等。 - QA的工作涉及公司的全局,各个相关职能,覆盖面比较宽广。 -

软件工程第三次作业——博文软件质量保障初探

随声附和 提交于 2019-11-30 10:52:51
软件质量保障初探 软件质量保障的体会 软件质量=程序质量+软件工程质量 程序的质量体现在外在功能的质量。软件功能的质量主要体现在 l 软件开发过程的可见性(visibility) l 软件开发过程中的风险控制(Rise Management) l 软件内部模块,项目中间阶段的交付质量,项目管理工具因素 l R软件开发成本控制(Cost Control) l 内部质量指标的完成情况(Internal Benchmarks) 软件功能的质量对最终软件的质量有举足轻重的意义,软 件工程的质量有一套成熟的理论—CMMI。CMMI的实施能够提高企业的管理水平,姜迪企业成本。 CMMI有五个等级,一级初始级、二级管理级、三级明确级、四级量化管理级、五级优化级。 由上诉五个等级可以看出,内个等级都是更高一级的基石,要上高层台阶必须踏上较低一层台阶。 要达到一定的软件质量,是要付出成本的。主要包括,预防、审评、内部故障、外部故障、流程分析改进、提高职业技能、技术投资这几个方面。 如果你是一个项目的QA,那么你认为你的工作职责范围是什么? 1。根据公司质量目标、质量方针,负责制定本部门的工作目标,按时向质量总监提交年、月度工作计划和总结。 2。负责建立公司质量保证体系,并组织其正常运行。 3。负责组织建立公司GMP文件系统,进行文件的编码、复制、发放、收回、归档、销毁等文件管理工作。

软件工程第三次作业——关于软件质量保障初探

*爱你&永不变心* 提交于 2019-11-30 10:08:37
一、对教材与参考资料阅读后关于软件质量保障你的体会是什么? 软件质量保障工作是软件团队为了让软件达到事先定义的质量标准而进行的所有活动,包括测试工作。软件质量保证是建立一套有计划,有系统的方法,来向管理层保证拟定出的标准、步骤、实践和方法能够正确地被所有项目所采用。软件质量保证的目的是使软件过程对于管理人员来说是可见的。它通过对软件产品和活动进行评审和审计来验证软件是合乎标准的。软件质量保证组在项目开始时就一起参与建立计划、标准和过程。这些将使软件项目满足机构方针的要求。而软件测试是运用一定的流程和工具,验证软件能实现预先设计的功能和特性,工作的流程和结果通常是可以量化的。软件的质量保障和软件测试有很大的区别。 一个好的软件的质量保障是满足期望,其中包括用户的期望、客户的期望、产品的期望、文化的期望等。 一个好的软件质量保障实施的五个步骤: 目标:以用户需求和开发任务为依据,对质量需求准则、质量设计准则的质量特性设定质量目标进行评价,研发出符合用户需求的软件。 计划:设定适合于待开发软件的评测检查项目,一般设定20-30个。 执行:在开发标准和质量评价准则的指导下,制作高质量的规格说明书和程序。 检查:以计划阶段设定的质量评价准则进行评价,算出得分,以图形的形式表示出来,比较评价结果的质量得分和质量目标,确定是否合格,通过一定的软件流程,在预计的时间内发布 “足够好” 的软件 改进

软件工程实践2019第三次作业

我只是一个虾纸丫 提交于 2019-11-30 09:56:38
代码地址 GitHub: https://github.com/JiuSiZhang/021700827 PSP表格 PSP2.1 Personal Software Process Stages 预估耗时(小时) 实际耗时(小时) Planning 计划 1h 0.5h Estimate 估计这个任务需要多少时间 15h 12.5h Development 开发 1h 1h Analysis 需求分析 (包括学习新技术) 3h 2h Design Spec 生成设计文档 1h 0.5h Design Review 设计复审 1h 0.5h Coding Standard 代码规范 (为目前的开发制定合适的规范) 1h 0.5h Design 具体设计 1h 1h Coding 具体编码 1h 1h Code Review 代码复审 1h 1h Test 测试(自我测试,修改代码,提交修改) 1h 1h Reporting 报告 1h 1h Test Repor 测试报告 1h 1h Size Measurement 计算工作量 0.5h 0.5h Postmortem & Process Improvement Plan 事后总结, 并提出过程改进计划 0.5h 1h 合计 15h 12.5h 解题思路 这个题目其实很简单,本质就是搜索+回溯

软件工程第三次作业——关于软件质量保障初探

♀尐吖头ヾ 提交于 2019-11-30 09:56:23
(1)对教材与参考资料阅读后关于软件质量保障你的体会是什么?   在教材和资料中都清晰的表达的一个概念: 软件质量=程序质量+软件工程质量 。不管是从邹欣的角度还是陈皓的博文, 我们都能了解到他们两个共同的观点为软件的质量的保障是否需要在全职的QA的加入下,怎么样才能更加有效的控制项目 质量,避免冗杂的错误出现。   我们都能知道程序的质量体现在软件外在功能的质量。而软件工程的质量,我们需要满足3个特性:“好”、“快”、“便宜”。 同时在考虑软件质量的时候,是需要付出成本的。作者认为软件成本包括:预防、评审、内部故障、外部故障、流程分析改 进、投资改进等成本。         下一个阶段我们又需要开始考虑软件质量和软件测试,关于QA和Test的分工是我们业内热烈讨论的问题,软件质量的保 障需要我们在各种改进中找到最适合我们的一种方法。 业内讨论的是一种可以覆盖全行业全公司的一种方法 ,所以他们各自 讨论的方法一直处于讨论中,测试人员不会敲代码,那么测试人员就会和code人员出现分歧,导致项目延期。但是如果想要 程序员都自己全部测试外加构建代码,那么他们的工作量则十分的繁重因此软件质量的保障一直是我们需要处理的事情,但 是我们又不能完全的解决这个问题。进而该问题则需要根据你所在公司的规模和软件大小因地制宜。 (2)如果你是一个项目的QA,那么你认为你的工作职责范围是什么?  

软件工程第三次作业——关于软件质量保障初探

走远了吗. 提交于 2019-11-30 09:55:49
一、对教材与参考资料阅读后关于软件质量保障你的体会: 质量保障(QA)是软件团队为了让软件达到事先定义的质量标准而进行的所有活动,包括软件测试(Text)。质量保证是质量体系中非常重要而又特殊的组成部分,质量保证的工作涉及软件研发流程的各个环节,且涉及到每一位参与研发的人员,但质量保证工作又不涉及具体的软件研发细节。 什么是软件质量?书中写道:“软件质量=程序质量+软件工程质量” 程序质量 : 程序的质量体现在软件外在功能的质量 软件工程质量 : 1:软件开发过程的可见性 2:软件开发过程的风险控制 3:软件内部模块,项目中间阶段的交付质量,项目管理工具的因素 4:软件开发成本的控制 5:内部质量指标的完成情况 二、如果你是一个项目的QA,那么你认为你的工作职责范围是什么? 1. qa必须懂开发 2. qa必须了解需求 3. qa必须了解项目的上下游的结构 4. qa为整个项目的质量负责 qa存在的价值不是来找更多地bug, 而是监督和保证从需求一直到项目上线的质量。也就是说,qa不是证明项目实现的错误性,而是确认实现的正确性。 三、如果你是一个项目经理,那么你认为这你的项目中需要专职的QA么?还是只需有Test即可?如果一旦出现问题,你如何界定由谁担责? 要看观点里的这个“专职QA”是怎么定义的,有些专门做测试的技术人员,仅测试不开发,这些QA对于软件开发技术并不熟悉

初识Git

非 Y 不嫁゛ 提交于 2019-11-30 08:35:13
应软件技术基础课老师的要求,我近期粗略地了解了一下Git系统。我原本认为通过对Git的了解,可以对软件工程的知识有一个初步的了解——事实上Git的确做到了。但是了解的过程中,我感到更加苦恼,因为Git让我感觉到软件工程是的水远比我想象的要深得多…… Git,作为一种开源的分布式版本控制系统,对于项目的管理可谓是高效、强力。在我看来,它最重要的一个功能就是实现同一项目对不同用户的共享,并为这些用户提供能修改同一项目的平台——我认为,这在一项软件工程中极其重要,关乎项目的生命力。听说Git相比于它的前辈,更加快速、灵活,对服务器压力较小,并且还能实现离线工作……不过对于我这种没有经验的小白来说,这些优点很难让我有实感。另外,前段时间不是还发生过疑似B站源代码被前程序员在Github泄露的事情嘛?所以我觉得,让大家都能这么简单拿到源代码的话,Git或许并没有那么安全、保密。然而说到底,Git是提供了开源的条件与规则,而条件与规则的存在总比混乱好。同时,看起来表面上Git的使用并没有那么麻烦的样子……也许只是我还没看到麻烦的情况吧…… 说起来,我在了解Git以及Github之前,一直觉得它们应该是类似C语言的一种汇编语言而已,现在想来觉得自己真是图样图森破。既然只要“add”与“commit”就能把项目文件上传,那么我想对于项目的管理实际上还是需要主工程师来规划啊……如果要当程序员

软件工程第三次作业——博文软件质量保障初探

爱⌒轻易说出口 提交于 2019-11-30 08:33:28
(1)对教材与参考资料阅读后关于软件质量保障你的体会是什么? 谈到软件质量保障,首先不得不明确的一个认知就是;什么是软件质量?书中写道:“软件质 量=程序质量+软件工程质量”,在我看来其定义简单来说,就是整个软件从功能到外部整体需求能否正常实现,是否已经满足用户的需求,以及对开发成本的掌控和开发过程中各种环节的掌控。其程序质量体现在通过软件外在功能的质量、复杂的多维度特性的综合指标要以上内等可量化指标来表现。软件工程的质量则体现在其过程的可见性、风险控制、软件内部模块,项目中间阶段的交付质量,项目管理工具的因素、软件开发成本的控制、内部质量指标的完成情况。软件质量保障内容得到充分实现,就需要通过一定的成本来支持。书中也提到了软件质量成本的的组成部分:包括内部故障、外部故障、预防、评审、流程分析改进、投资改进等。只有在开发时不断增加对于质量保障成本的投入,最后整个产品成型发布上线后才能使得产品更加经得起时间和用户的推敲。如同那句话所说的那样:“磨刀不误砍柴功”,只有在“磨刀”上下了苦功夫,才能在最后的“砍柴”阶段实现最高的回报。对于软件的质量保障与测试的关系来说,test仅仅是其中的一部分,软件的质量保障工作是一个庞大、复杂、繁琐的工程 ,包含了使程序和软件工程都能达到事先定义的质量标准的所有活动,但它和test相辅相成,不可分割。并且QA和test的工作人员之间的关系也是相辅相成的

第一周作业

蹲街弑〆低调 提交于 2019-11-30 08:31:30
1. 你对软件工程专业或者计算机科学与技术专业了解是怎样? 我认为软件工程这个专业是研究大规模软件开发方法、工具和管理的一门工程科学,其特点是按工程化的原则和方法来组织和规范软件开发过程,软件工程技术则主要研究与软件开发各个工作流程相关的、先进实用的软件开发方法、技术和工具;软件工程技术专业面向国民经济电子信息化建设和发展的需要,培养具有扎实的软件理论和知识基础,对整个软件过程有整体了解、掌握软件工程领域的前沿技术,具有国际竞争能力,能从事大型软件项目系统分析、设计、编程、测试和软件项目管理等工作的复合型、实用型的高层次软件工程技术人才;主要涵盖软件工程学科和计算机学科的基本理论、基础知识、基本技能的研究,软件的分析与开发,计算机应用系统、计算机网络系统的设计与开发等专业内容。这是我的了解。 2 你了解C语言么?C语言主要应用有哪些? 对于C语言,我并不是太了解,只知道它是计算机语言,跟我们的专业有很大的关系,有很大的影响。C语言的应用领域分两大块:系统软件开发和应用软件开发。其中C语言最主要用于编写系统软件,其操作系统主要是Linux,所以说它的安保性有着很大的保障,驱动程序主要是用C语言和汇编语言写的,而C++ 在这方面稍弱。对于应用软件开发,有办公软件、图形图像多媒体、以及嵌入式软件开发和游戏开发。 3 你希望在这个专业学到哪些内容? 我希望可以从软件工程的本质出发,系统