GB/T 12505-90 Specification for Computer Software Configuration Management 中华人民共和国国家标准 1. 主题内容与适用范围 本规范规定了在制订软件配置管理计划时应该遵循的统一的基本要求。 本规范适用于软件特别是重要软件的配置管理计划的制订工作。对于非重要软件或已开发好的软件,可以采用本规范规定的要求的子集。 2. 引用标准 GB/T 11457 软件工程术语 GB 8566 计算机软件开发规范 GB 8567 计算机软件产品开发文件编制指南 GB/T 12504 计算机软件质量保证计划规范 3. 术语 下面给出在本规范中用到的一些术语的定义,其它术语的定义按GB/T 11457。在引用时,特别要注意线(baseline)、配置控制(configuration)、配置控制组(configuration control board)、配置检查(configuration audit)、配置标识(configuration identification)和配置状态记录(configuration status accounting)等术语的定义。 3.1项目委托单位 project entrust organization 项目委托单位是指为产品开发提供资金并通常也是(但有时也未必)确定产品需求的单位或个人。 3.2 项目承办单位 project undertaking organization 项目承办单位是指为项目委托单位开发、购置或选用软件产品的单位或个人。 3.3 软件开发单位 software development organization 软件开发单位是指直接或间接受项目委托单位委托而直接负责开发软件的单位或个人。 3.4 用户 user 用户是指实际使用软件来完成某项计算、控制或数据处理等任务的单位或个人。 3.5 软件 software 软件是指计算机程序及其有关的数据和文档,也包括固化了的程序。
对于项目管理来说,文档非常重要,如果是传统的工程行业项目的话,仅仅标书就是几百上千页的。相对来说,其实信息系统开发项目已经好很多了。另外就是配置项,它是比文档更大的一个概念,项目文档是包含在配置项中的,除了文档之外,它还包括源程序、计划、报告等。今天我们就主要来看一看在信息系统项目中的这些文档和配置项相关的内容。今天的内容比较长,但是只是说明项比较多,重点内容其实还好。其它的相关了解知识也都是非常有用的内容,大家可以好好看看哦。
在项目管理中,软件配置管理(Software Configuration Management,SCM)是管理和控制软件开发过程中软件配置项的活动。软件配置项是指软件产品中独立管理和可识别的组成部分,例如源代码、可执行文件、文档、测试脚本等。
老实说,不同的工作经历的人,对配置管理的理解和定位也各不相同。下面我从几个不同领域,大概阐述下我的理解。
游戏开发中的程序开发,感觉比一般的软件研发中的流程管理, 开发实践,项目管理,成熟度都要低一档。这是为什么?游戏开发中的程序开发不重要?还是就是发展慢?为啥认识的人都反应没钱,没地位,各种不规范?
今日洞见 文章作者、图片来自ThoughtWorks:窦衍森。封面图片来自网络。 本文所有内容,包括文字、图片和音视频资料,版权均属ThoughtWorks公司所有,任何媒体、网站或个人未经本网协议授权不得转载、链接、转贴或以其他方式复制发布/发表。已经本网协议授权的媒体、网站,在使用时必须注明"内容来源:ThoughtWorks洞见",并指定原文链接,违者本网将依法追究责任。 >>>>前言 CI/CD的精髓在于持续,持续意味着自动化。我们希望自己的程序可以无缝的自动部署在各种环境各个机器上,然而环境的不一
软件产品配置管理是一个非常重要的概念,它确保软件产品的完整性和可追溯性,特别是在产品开发和维护过程中。配置管理涉及多个关键概念,其中包括配置项、基线配置项、非基线配置项、版本管理和变更管理。下面是对这些概念的简单解释:
项目配置管理中,产品配置是指一个产品在其生命周期各个阶段所产生的各种形 式和各种版本的文档、计算机程序、部件及数据的集合。该集合中的每一个元素 称为该产品配置中的 一个配置项, ( )不属于产品组成部分工作成果的配置项。 A需求文档 B设计文档 C 工作计划 D源代码
熟读吧,根据案例中出现的情况,使用不同的话术 可研过程中可能出现的问题 项目经理的技术经验不足 没有正式、书面的新产品研发项目建议书就开展可行性研究工作 新产品研发的可行性研究工作不充分,尤其缺少技术可行性分析和论证 研发过程中对人才缺乏、竟争对手等带来的风险缺乏充分的分析,没有合理有效的应对方案 没有新产品的初步设计方案就开始研发工作 新产品的需求和技术指标不应由领导把关,应进行外部评审 在项目启动前缺少对项目成本的估算或成本估算工作未到位 可行性研究报告缺少必要的内部论证或外部评估环节 没有制订综合、全
项目范围定义不清往往是导致项目失败的首要原因,项目范围管理是项目各项计划、控制的基础,项目范围管理确定了项目的具体工作任务,有助于清楚的责任划分和任务分派。范围定义的输入包括项目章程、项目范围管理计划、组织过程资产、批准的变更申请。
范围管理 时间管理 时间管理—前导图法(单代号网络图,PDM) 时间管理—关键路径法 关键路径法是在制订进度计划时使用的一种进度网络分析技术 关键路径法、法沿着项进度网络路线进行正向与反向分析,从而
第 2 章 配置管理 2.1 引言 配置管理是指一个过程,通过该过程,所有与项目相关的产物,以及它们之间的关系都被唯一定义、修改、存储和检索 配置管理策略将决定如何管理项目中发生的一切变化。它记录了你的系统以及应用程序的演进过程。另外,它也是对团队成员协作方式的管理 ---- 2.2 使用版本控制 版本控制系统的目的有两个 它要保留每个文件的所有版本的历史信息,并使之易于查找 它让分布式团队(无论是空间上不在一起,还是不同的时区)可以愉快地协作 2.2.1 对所有内容进行版本控制 每个与所开发的软件相关的产
也叫进度管理,就是采用科学的方法,确定进度目标,编制进度计划和资源供应计划,进行进度控制,在与质量、成本目标协调的基础上,实现工期目标。
CMDB是运维的基础核心系统,所有的元数据和共享数据管理源,类似于业务中的账号平台的作用。本篇文章,我将从概念篇、模型篇、到实现与实施篇具体的进行阐述。
配置管理是指一个过程,通过该过程,所有与项目相关的产物,以及它们之间的关系都被唯一定义、修改、存储和检索。
目前的功能主要有:注册,登陆,绑定卡密,绑定机器,取软件版本,软件留言,修改密码,取卡密期限,rsa算法加密登陆,取软件信息
在软件成本造价过程中,软件项目的工作量是很多开发组织进行估算的主要对象。那么,什么是软件项目的工作量呢?它都包括哪些内容呢? 一个软件项目的工作量所表达的含义是完成某个项目或系统开发所需的全部工作量,包括从项目立项开始到项目完成验收之间开发方的需求、设计、构建(包括编码、集成)、测试、实施及相关的项目管理、支持活动的工作量。 需求活动包括:需求调研,需求分析,原型开发,编制各种需求文档,需求评审,需求变更等活动; 设计活动包括:架构设计,技术方案选择,概要设计,详细设计,设计评审,设计变更等活动; 构建活动包括:编码,代码走查,集成等活动; 测试活动包括:测试计划,测试用例编写,测试用例评审,测试用例变更,测试环境准备及验证,单元测试,集成测试,系统测试等活动; 实施活动包括:用户支持文档编写及验证,验收测试,系统安装部署,用户培训等活动; 其他活动:是指在上述活动中没有包含的项目中的其他活动,例如项目管理,质量保证,配置管理,项目组内部培训,技术讨论及交流等活动。 项目成员包括参与该项目研发过程的所有研发或支持人员,如项目经理、需求分析人员、设计人员、开发人员、测试人员、部署人员、用户文档编写人员、质量保证人员、配置管理人员等。此处需要注意的是,项目组成员包括该项目的QA及配置管理人员,但不包括客户或用户。因此,项目组工作量的统计也不包括客户、用户或其它项目组外人员的工作量。 进行软件项目工作量估算,是估算软件成本的基础。工作量与软件成本存在直接的联系。同时,开发组织内部也需要合理的工作量估算来进行项目计划,编制WBS等工作。
配置管理是个简单的小话题,程序员都已经非常熟悉,咋就跟微服务挂上钩了呢? 前些年没提微服务架构的时候,大家也都会做配置管理相关的事情,比如我接触过的很多项目都做有配置,做得有好有坏。大多是手工作坊,修改配置、重启服务... … 好像也能凑合。其实不论有没有微服务,把配置管理好的手段和方法都差不多,只是微服务架构重分布式的特点凸显了这个问题的重要性,再不管好配置,还想继续凑合就行不通了。本文目的是跟大家一起梳理配置管理的一些思路和方法,一起打好微服务架构的基础。 目录: 一、什么是配置 二、配置与程序的关系
第4章 项目整合管理 ---- 整合管理说的是什么 有很多工具、方法我们重新梳理 整合什么? 资源分配:搭团队、分工 平衡竞争性需求:摆平冲突、矛盾 研究各种备选方法:收益、风险整合 为项目目标裁剪过程:49个过程取舍、怎么搭? 知识领域之间的关系:进度、成本、质量…… 整合管理的过程 4.1 制定项目章程 4.2 制定项目管理计划 4.3 指导与管理项目工作 4.4 管理项目知识:新增加的过程 4.5 监控项目工作 4.6 实施整体变更控制 4.7 结束项目或阶段 是项目管理的总则,给整个项目定了一个规矩
持续集成(Continuous Integration)与持续交付(Continuous Delivery )、持续部署(ContinuousDeployment)作为敏捷开发实践,可以及早发现、解决问题,从而更早地将产品交付给客户。及早地从客户那里得到反馈,就可以及早地对产品进行修复和完善,交付更加完美的产品给客户,最终形成了良好的可以持续的闭环。
Git 是 Linus Torvalds 为了帮助管理 Linux 内核开发而开发的一个开放源码的版本控制软件。大神就是大神,在开发了Linux之后,Git 是又一抗鼎之作。这是唯一的理由么?
虽然大家都在说软件研发,实际上软件研发有很多细分的岗位,比如研发工程师、测试工程师、质量保证工程师、质量控制工程师、配置管理工程师、文档工程师、项目经理等等。为什么有这么多细分的岗位?社会在进步,在软件行业发展的过程中发现某些人负责某些方面时做得非常不错,而且公司在扩大的同时可以允许有这样一个人来专职做这件事情,于是一个细分的职业就出现了。有人专职来作,权责清晰、效率也高。同时我们发现每个人都脾气秉性不同,适应自己的岗位也不同。渐渐地我们发现做某一类职位的人都有些共同的特质。物以类聚,人以群分嘛。大家想想身边的人?仔细体会下他们身上的特质。
无事在家,闲得发慌,上周六面试华为的配置管理工程师,让我明白了在社会大行业里配置管理其实是个更为专业的岗位,涉及到软件开发的各个流程,数据的产生,规范的定义,代码的持续集成,基线管理,当然也涉及到供应链的一些东西,在工作中发现问题,解决问题,推动一些流程规范的制订,对流程中出现的问题进行修正等等。而我在原公司的配置管理更多是个兼职,是为软件工程师+配置管理工程师,特别是在软件部改革后,配置方向更多的边缘化,更多是DD会议召开,BUG发布及合并,代码审核数据汇总。也难怪配置管理会是一个兼职,软件上做的工作仅仅是配置管理(CM)这个岗位很小的一部分,也不可能花大价钱养一个人在这个岗位上了。
配置管理(CM)的目的是通过使开发或部署过程可控且可重复,来确保产品或系统在其整个生命周期中的完整性,从而创建更高质量的产品或系统。CM 流程允许有序管理系统信息和系统更改,以便:
可追溯性,是指任何人在获得授权的前提下,能够找到该软件的任何变更历史,即对任何一次软件变更,都可以准确地回答 5W1H ,即谁(who)、什么时间(when)、做了什么(what)、为什么(why)、如何做的(how)。例如,源代码版本管理系统就属于软件配置管理工具,它包含代码仓库中所有代码的修订信息。
在软件开发和IT运维领域,配置管理一直是不可或缺的一环。随着技术的发展,配置管理经历了多个时期,涌现出了各种工具和方法。本文将探讨配置管理的历史,并重点关注以下四个方面:版本控制、应用配置、系统配置以及云化的资源配置。
Netflix的Chaos工程团队的高级软件工程师,曾在SendGrid实验室担任高级软件工程师、在Nimbis Services担任云服务首席架构师,还曾是加州大学信息科学院计算机科学家。他在麦吉尔大学取得计算机工程学学士学位,在波士顿大学取得电子工程学硕士学位,在马里兰大学取得计算机科学的博士学位。
答:尽管DevOps与敏捷方法(这是最流行的SDLC[Software Development Life Cycle]方法之一)有一些相似之处,但两者在软件开发方面都是根本不同的方法。以下是两者之间的各种基本差异:
Consul 是一个由 HashiCorp 公司开发的开源软件,最初发布于2014年5月。HashiCorp 公司是一个专注于云基础设施自动化领域的公司,其产品包括 Terraform、Vault、Nomad 和 Consul 等。
春节前与同事讨论CD(持续交付)的技术方案,发现主流的技术方案是软件交付最后一公里的“AD”(自动化部署)。站在本系列文章提到四个关键价值的“提升交付速度”这个运维价值看,单纯的自动化部署主要将部署/回切工作从1小时提升到5分钟的效率能力上。而在端到端的IT交付价值链中,部署是其中一个节点,所提升的55分钟只占整个IT交付链路中的一部分,更大的消耗是在节点与节点之间的协同。所以,“持续交付”应该跳出“部署”,站在整个IT交付链路,关注节点的自动化、节点与节点之间的连接线,通过标准化、流水线、自动化、相关工具链打通等工程性工作的落地,提升整个IT效能。
puppet是一种Linux、Unix、windows平台的集中配置管理系统,使用自有的puppet描述语言,可管理配置文件、用户、cron任务、软件包、系统服务等。puppet把这些系统实体称之为资源,puppet的设计目标是简化对这些资源的管理以及妥善处理资源间的依赖关系。
懒是一种病,反思不到,就会病入膏肓。眼盲是假象,心盲才是药石罔效。 从09年8月进入创想空间,接触CMMI3流程,那一年半没有学习到太多配置管理真正的技能,但是标准化的工作流程,为我的配置管理职业生涯浇筑了坚实的理论基础。11年5月借着公司搬家的时机,辞职出来换个公司,换个公司验证下自己学到的东西,看有没有机会找个师傅从技术上带一带自己。 11年10月进入窝窝团,知道到了什么是野战军,以及所谓的互联网公司,以及办公室政治。 在工作中,真正的开始学习使用hudson、各种插件、an
配置管理(CM)的目的是通过使开发或部署过程可控和可重复,从而创建更高质量的产品或系统,来确保产品或系统在其整个生命周期中的完整性。CM流程允许对系统信息和系统更改进行有序管理,以实现以下目的:
近期正在探索前端、后端、系统端各类常用组件与工具,对其一些常见的组件进行再次整理一下,形成标准化组件专题,后续该专题将包含各类语言中的一些常用组件。欢迎大家进行持续关注。
DevOps的诞生极大的推动了云计算行业的快速发展。因为使用正确的工具,现在可以进行从配置、代码部署到服务器配置和自动化的所有工作。而选择的工具主要取决于现有的基础设施和你希望实现的目标,所以为基础架
译者点评: 微服务的运用,小型化团队(Two-pizza team)理念的倡导使更多的公司采用研制周期(Lead Time)来衡量DevOps团队的执行效率。在实际项目研发结束后,服务的部署频率(Deploy Frequency)不仅说明了运维的稳定性,还能折射出业务的繁荣程度。这一切的背后都离不开运维工具强有力的保障。 让我们一起学习下Puppet,Chef, Ansible等工具的前世今生,花五分钟明白如何在容器化的今天,选择一个靠谱的配置管理工具。 原著作者介绍: Viktor Farcic Clo
前面几篇文章,分别从devops的定义和价值、落地路线图以及落地三要素进行了分析。
接触测试以来,一件事一直困扰着小编: 如何做到测试任务中测试过程的受控,即测试计划、测试周期、测试进展、测试结果等各阶段的可控、可见。
目的:验证软件有或没有问题。 原则:以客户为中心,遵循软件测试的规范、流程、标准和要求。
Ansible 的编排引擎可以完成配置管理、流程控制、资源部署等工作。 Ansible 基于 Python语言实现,由 Paramiko 和 PyYAML 两个关键模块构建。
DevOps工具越来越多,了解它们以及知道在什么时候使用他们越来越重要。因此,我尝试做一些研究,以便我们可以将DevOps产品分类为大家都熟悉的类别或用途。
上周,我们发布了帮助公司改善安全状况的最佳实践系列的第1节。安全不再仅仅是安全专家的领域,公司中的每个人,不论其角色如何,都应该秉承践行安全最佳实践的观念。
在本文的两个部分中,我将介绍Team Foundation Server的一些核心特征,重点介绍在本产品的日常应用中是怎样将这些特性结合在一起使用的。
针对CMDB这个主题,之前一直想写一篇文章来表达我的看法,但是之前一直不敢写,为什么?因为CMDB这个主题属于一提大家都懂,但是深入讨论大家都晕菜的一个话题;在2018年实施了几十个自动化运维项目后,我对CMDB的理解又进一步加深,因此想谈谈我对CMDB的看法。
当一开始担任一家零售企业的信息安全管理者时,处理IT安全问题还是相对简单的。但是随着社会的发展,传统行业逐渐向数字经济、云平台、物联网靠拢,以支持企业的数字化商业,随之而来的还有网络安全问题。
本文翻译并节选自《DevOps2.0的工具集(DevOps黑宝书)——打造自动化的持续交付流程》一书,转自译者CSDN博客,转载请注明出处,译者:胡帅。
基于SOA组件模型设计,用户可自由选择所需的功能与服务,量体裁衣,按需付费。同时,平台还支持公有云、私有云、专属空间等多种交付方式,帮助企业构建起一体化、标准化、智能化的资产服务监管体系。以ITIL V3、ITSS信息服务为标准,为企业提供以服务监管为核心,集资产管理、资产监控、环境监控、运维管理、外包管理、项目管理为一体的创新资产服务监管生态圈。
领取专属 10元无门槛券
手把手带您无忧上云