什么是软件project?
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?的更多相关文章
- 备战“软考”之软件project
说到"软件project"就有一种非常纠结的感觉!为什么呢?由于刚进入软考复习阶段,大家都把它放到了"比較"次要的地位,由于已经学过两遍,再加上它没有非常难理解 ...
- 软件project师的属性与发展
工作近十年了.[软件project师] 一直是我职业 title 的中心词,仅仅是前面的修饰语在不断变化,从0基础.中级.高级到资深. 事实上 [软件project师] 是一个非常泛化的定义.工作现实 ...
- 《软件project》课程报告 —国土资源执法监察管理信息系统建模
***********************************************声明*************************************************** ...
- 项目之软件project(我专业四年都未曾知道这四个字的含义,几句话便懂了)
潘鹏在CSDN上原创.如其它站点转载请注意排版和写明出处: 软件project的本质 一级标题 控制 质量 二级标题 成本 扩展 高内聚低耦合 效率 控制: 成本:企业要求的是以最快的速度完毕可 ...
- 面向对象的软件project——面向对象分析
为了解决软件危机.一些IT前辈国产软件project这个词汇,软件project它被引入到整个软件开发过程的维护. 软件project从程序的设计角度能够分为两类.一类是面向结构的软件project. ...
- 软件project(六)——需求分析
需求分析是软件开发期的第一个阶段,是关系到软件开发成败的关键步骤.需求分析的任务就是明白系统必须完毕那些工作,以下是对需求分析这一章做的简要总结. 导图: 解释说明: 我将 ...
- (UML总结三)UML与软件project
学习完UML.我们要把它和之前的软件project结合起来.软件project是从总体的角度说了软件开发的步骤.保证了所开发软件的质量.而UML作为一种统一建模语言.是用来设计软件蓝图的可视化建模语言 ...
- 软件project(一)——宏观总结
曾经看视频,看过去就忘.不想再这样子下去了,所以总结了好久.想让自己忘不了.这个过程花费时间有点长,可是假设让自己忘不了.一切都值了. 以下先来一张导图来总结一下<软件project>这门 ...
- 【软件project】——软工视频总结
软件project是一门研究用project化方法构建和维护有效的.有用的和高质量的软件的学科.它涉及程序设计语言.数据库.软件开发工具.系统平台.标准.设计模式等方面. 软工,基本的六阶段:制定计划 ...
随机推荐
- Spring整合junit测试
本节内容: Spring整合junit测试的意义 Spring整合junit测试 一.Spring与整合junit测试的意义 在没整合junit之前,我们在写测试方法时,需要在每个方法中手动创建容器, ...
- Spark(四)Spark之Transformation和Action
Transformation算子 基本的初始化 java static SparkConf conf = null; static JavaSparkContext sc = null; static ...
- Web前端开发最佳实践(10):JavaScript代码不好读,不好维护?你需要改变写代码的习惯
前言 这篇文章本应该在上一篇文章:使用更严格的JavaScript编码方式,提高代码质量之前发布,但当时觉得这篇文章太过基础,也就作罢.后来咨询了一些初级的开发者,他们觉得有必要把这篇文章也放上来.尽 ...
- Ajax的text/plain、application/x-www-form-urlencoded和application/json
Ajax的text/plain.application/x-www-form-urlencoded和application/json HTTP请求中,如果是get请求,那么表单参数以name=valu ...
- PHP学习日记 Windows配置PHP+Nginx+自动化脚本
Windows配置PHP+Nginx+自动化脚本 安装与配置 PHP 下载PHP:传送门 选择合适的版本下载 尽量选Thread Safe 配置PHP: 解压后在文件夹中找到php.ini-devel ...
- Java控制多线程执行顺序
package net.jasonjiang.thread; import java.io.IOException; public class ThreadTestNew { public stati ...
- 第2天:Django路由与视图
在应用中创建视图定义路由 配置文件说明 静态文件使用 Django解析路由的流程 路由顺序 路由命名与reverse反推 在应用中创建视图定义路由 前面我们已经创建了子应用users,但是这个user ...
- [leetcode tree]98. Validate Binary Search Tree
Given a binary tree, determine if it is a valid binary search tree (BST). Assume a BST is defined as ...
- Python进阶篇:Python简单爬虫
目录 前言 要解决的问题 设计方案 代码说明 小结 前言 前一段一直在打基础,已经学习了变量,流程控制,循环,函数这几块的知识点,就想通过写写小程序来实践一下,来加深知识点的记忆和理解.首先考虑的就是 ...
- 清北冬令营入学测试[ABCDEF]
http://tyvj.cn/Contest/861 [1.2.2017] 像我这种蒟蒻只做了前6道还有道不会只拿了暴力分 A 描述 这是一道有背景的题目,小A也是一个有故事的人.但可惜的是这里纸张太 ...