Normal
0

7.8 pt
0
2

false
false
false

MicrosoftInternetExplorer4


/* Style Definitions */
table.MsoNormalTable
{mso-style-name:"Table Normal";
mso-tstyle-rowband-size:0;
mso-tstyle-colband-size:0;
mso-style-noshow:yes;
mso-style-parent:"";
mso-padding-alt:0pt 5.4pt 0pt 5.4pt;
mso-para-margin:0pt;
mso-para-margin-bottom:.0001pt;
mso-pagination:widow-orphan;
font-size:10.0pt;
font-family:"Times New Roman";
mso-ansi-language:#0400;
mso-fareast-language:#0400;
mso-bidi-language:#0400;}

今天将“软件測试和质量专栏”改为“软件project专栏”,意味着自己的博客将扩展到一个更广的范围,尽管核心还环绕測试和质量,但包含软件需求project、系统设计和项目管理等。所以特写一篇文章,作为开头和备忘。

什么是软件project?

从上世纪90年代初起,计算学科(Computing)的发展远远超越了计算机科学的边界,形成了计算机科学、计算机project、软件project、信息系统与信息技术等若干独立学科。计算机project从电子project学科中分离出来,旨在研究计算机硬件的相关project问题,而软件project从计算机科学中的一个学科方向发展成为与之并重的一门独立学科,重点研究怎样以系统的、可控的、高效的方式开发和维护高质量软件的问题。

1.软件project的定义

软件project学科诞生后,人们为软件project给出了不同的定义,比如最早的定义是由F.L. Bauer给出的,即“软件project是为了经济地获得可以在实际机器上高效执行的、可靠的软件而建立和应用一系列坚实的软件project原则”。而美国梅隆卡耐基大学软件project研究所(SEI)给出的定义则是软件project是以project的形式应用计算机科学和数学原理,从而经济有效地解决软件问题。但眼下普遍使用的软件project定义是由IEEE给出的,即软件project是将系统性的、规范化的、可定量的方法应用于软件的开发、执行和维护。

软件project概念实际存在两层含义,从狭义概念看,软件project着重体如今软件过程中所採用的project方法和管理体系,比如,引入成本核算、质量管理和项目管理等,即将软件产品开发看作是一项project项目所须要的系统project学和管理学。从广义概念看,软件project涵盖了软件生命周期中所有的project方法、技术和工具,包含需求project、设计、编程、測试和维护的所有内容,即完毕一个软件产品所必备的思想、理论、方法、技术和工具。

2.软件project的内涵

软件project学科包括为完毕软件需求、设计、构建、測试和维护所需的知识、方法和工具。软件project不局限在理论之上,更重要在实践上,可以帮助软件组织协调团队、运用有限的资源,遵守已定义的软件project规范,通过一系列可复用的、有效的方法,在规定的时间内达到预先设定的目标。针对软件project的实施,不管是採用什么样的方法和工具,先进的软件project思想始终是最重要的。仅仅有在正确的project思想指导下,才干制定正确的技术路线,才干正确地运用方法和工具达到软件project或项目管理的既定目标。

3.软件project是一门交叉性学科

软件project是一门交叉性的project学科,它是将计算机科学、数学、project学和管理学等基本原理应用于软件的开发与维护中,其重点在于大型软件的分析与评价、规格说明、设计和演化,同一时候涉及管理、质量、创新、标准、个人技能、团队协作和专业实践等。从这个意义上看,软件project能够看作由下列3部分组成。

  • 计算机科学和数学用于构造软件的模型与算法;
  • project科学用于制定规范、设计范型、评估成本以及确定权衡等;
  • 管理科学用于计划、资源、质量、成本等管理。

比如,计算机辅助软件project(Computer Aided Software Engineering,CASE)是一组工具和方法的集合,能够辅助软件生命周期各阶段进行的软件开发活动。CASE吸收了CAD(计算机辅助设计)、软件project、操作系统、数据库、网络和更多计算机领域的原理和技术。这个样例也体现了这一点——软件project是学科交叉的、集成和综合的领域。

4.软件project学科范围

假设从知识领域看,软件project学科是以软件方法和技术为核心,涉及计算机的硬件体系、系统基础平台等相关领域,同一时候还要涉及一些应用领域和通用的管理学科、组织行为学科。比如,通过应用领域的知识帮助我们理解用户的需求,从而能够依据需求来设计软件的功能。
在软件project中必定要涉及组织中应用系统的部署和配置所面临的实际问题,同一时候又必须不断促进知识的更新和理论的创新。为了真正解决实际问题,须要在理论和应用上获得最佳平衡。

 先进、成熟的软件project思想有哪些?

 代码评审的最佳实践

什么是软件project?的更多相关文章

  1. 备战“软考”之软件project

    说到"软件project"就有一种非常纠结的感觉!为什么呢?由于刚进入软考复习阶段,大家都把它放到了"比較"次要的地位,由于已经学过两遍,再加上它没有非常难理解 ...

  2. 软件project师的属性与发展

    工作近十年了.[软件project师] 一直是我职业 title 的中心词,仅仅是前面的修饰语在不断变化,从0基础.中级.高级到资深. 事实上 [软件project师] 是一个非常泛化的定义.工作现实 ...

  3. 《软件project》课程报告 —国土资源执法监察管理信息系统建模

    ***********************************************声明*************************************************** ...

  4. 项目之软件project(我专业四年都未曾知道这四个字的含义,几句话便懂了)

    潘鹏在CSDN上原创.如其它站点转载请注意排版和写明出处: 软件project的本质 一级标题 控制 质量 二级标题  成本  扩展  高内聚低耦合 效率 控制: 成本:企业要求的是以最快的速度完毕可 ...

  5. 面向对象的软件project——面向对象分析

    为了解决软件危机.一些IT前辈国产软件project这个词汇,软件project它被引入到整个软件开发过程的维护. 软件project从程序的设计角度能够分为两类.一类是面向结构的软件project. ...

  6. 软件project(六)——需求分析

           需求分析是软件开发期的第一个阶段,是关系到软件开发成败的关键步骤.需求分析的任务就是明白系统必须完毕那些工作,以下是对需求分析这一章做的简要总结. 导图: 解释说明:        我将 ...

  7. (UML总结三)UML与软件project

    学习完UML.我们要把它和之前的软件project结合起来.软件project是从总体的角度说了软件开发的步骤.保证了所开发软件的质量.而UML作为一种统一建模语言.是用来设计软件蓝图的可视化建模语言 ...

  8. 软件project(一)——宏观总结

    曾经看视频,看过去就忘.不想再这样子下去了,所以总结了好久.想让自己忘不了.这个过程花费时间有点长,可是假设让自己忘不了.一切都值了. 以下先来一张导图来总结一下<软件project>这门 ...

  9. 【软件project】——软工视频总结

    软件project是一门研究用project化方法构建和维护有效的.有用的和高质量的软件的学科.它涉及程序设计语言.数据库.软件开发工具.系统平台.标准.设计模式等方面. 软工,基本的六阶段:制定计划 ...

随机推荐

  1. NOIP2018初赛 解题报告(C++普及)

    第24届全国青少年信息学奥林匹克联赛初赛 普及组C++语言试题 竞赛时间:2018 年 10 月 13 日 14:30~16:30 选手注意: 1.试题纸共有 7 页,答题纸共有 2 页,满分 100 ...

  2. Spark介绍及安装部署

    一.Spark介绍 1.1 Apache Spark Apache Spark是一个围绕速度.易用性和复杂分析构建的大数据处理框架(没有数据存储).最初在2009年由加州大学伯克利分校的AMPLab开 ...

  3. Filebeat配置paths里,不支持递归所有子目录

    这个知识点要牢记哟,不然,牛B吹大了,收不回哈. 官方文档为证: Currently it is not possible to recursively fetch all files in all ...

  4. bzoj 4552

    4552 思路: 二分线段树: 代码: #include <bits/stdc++.h> using namespace std; #define maxn 100005 #define ...

  5. js的等值比较规则

    https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Equality_comparisons_and_sameness ES2015中有四种 ...

  6. 8-4 Fabled Rooks uva11134

    题意:你的任务是在n*n的棋盘上放 n 小于5000 个车 使得任意两个车不互相攻击 且第i个车在一个给定的矩形ri之内  给出该矩形左上角坐标和右下角坐标四个点  必须满足放车的位置在矩形内  边上 ...

  7. ref:如何将自定义异常的信息显示在jsp页面上

    ref:https://blog.csdn.net/tao_ssh/article/details/53486449 在项目中,经常会抛出异常,输出比较友好的信息来提示用户,并指导用户行为.大体思路: ...

  8. 50个必备jQuery代码段

    0. 如何创建嵌套的过滤器: 1 2 3 4 5 //允许你减少集合中的匹配元素的过滤器, //只剩下那些与给定的选择器匹配的部分.在这种情况下, //查询删除了任何没(:not)有(:has) // ...

  9. 支撑大规模公有云的Kubernetes改进与优化 (3)

    这一篇我们来讲网易为支撑大规模公有云对于Kubernetes的定制化. 一.总体架构 网易的Kubernetes集群是基于网易云IaaS平台OpenStack上面进行部署的,在外面封装了一个容器平台的 ...

  10. leetcode 202. 快乐数 python实现

    思想: 对输入数据 把每个位数平方求和 得到结果如果是1 就返回真 否则 对这个结果递归 啥时候事后返回假: 返回假 说明进入无限循环了. 啥时候会无限循环? 某一次求平方和的结果,之前得到过这个结果 ...