微软的软件开发管理哲学和spec文化

国科大学习资料--自然语言处理(宗成庆)-2019期末考试题 国科大学习资料–自然语言处理(宗成庆)-2019期末考试题 国科大学习资料–自然语言处理(宗成庆)-2019期末考试题 国科大学习资料–自然语言处理(宗成庆)-2019期末考试题 阅读详情

     微软的软件开发管理一直是实用主义至上,检验一个项目管理人员水平高低或者软件开发方法优劣的唯一标准就是看团队是否能够在规定的时间内开发出高质量的软件产品。

  在微软,对项目管理的要求非常细致,也积累了很多的经验,看得出微软十分重视经验的累积,成功的经验往往能够得到非常多的重复使用,所以很多时候对某些做法他们也讲不出一个所以然来,只是说这是通过实践经验得到的。比如office开发团队的朱敏博士在“大规模软件开发: 过程与研发管理, 项目管理研发与测试团队的相互关系”中谈到,在微软做项目计划时,工时一般都是由开发人员估计的,如果对同一个任务两个人的估计结果不同,往往以经验丰富的人估计的为准(没有经验的开发人员往往需要到其他人那里寻求帮助,或者加班L);而且微软奉行一个“7X24”原则,就是说原则上,一个功能的开发在计划中不超过7个工作日,而一个任务的计划不超过24个小时,如果超了,就需要分解;另外,微软认为一个开发人员每周实际的编程时间不是40个小时,而是24个小时,其它16个小时会被各种会议、review等活动占据,因此在微软,需要开发人员参加会议会尽量安排在每周一和周五,而完整地留出每周二、三、四让开发人员写代码。微软内部也没有统一的项目管理方法,MSF似乎是微软给业界其它公司特别开发的,他们自己不用(难道微软不属于软件开发业界?);基本上每个比较大的产品团队都有自己的一套做法(比如Office团队和Windows团队的很多做法都不相同),同时很多团队也在尝试一些新的做法,比如office团队最近就引入了敏捷开发理论中的Scrum方法,实际操作中碰到了一些问题,现在也还在摸着石头过河。

微软的项目开始阶段,不管是使用叠代开发还是敏捷开发,项目管理人员写的spec都是整个项目成功的关键,开发人员制定开发计划,测试人员制定测试计划和方案等工作都严重依赖于项目的spec,因此spec的质量很大程度上决定了产品的质量。微软对spec的要求非常高,spec里除了要非常详细的写出用户需求,还要把重要的操作步骤作非常详细的描述,同时要使用诸如Photoshop等工具对软件的界面进行详细的设计,开发人员和测试人员都会对spec进行详细的review。而且在微软,当spec中软件的功能定下来以后,一般不会在往上加新的功能,只会根据项目进展的情况往下减。

http://web.mblogger.cn/spiderman/

二极管钳位电路、限幅电路和检波电路Multisim电路仿真 本文系统介绍了二极管钳位、限幅和检波三种基础电路的工作原理及Multisim仿真验证。钳位电路通过电容-二极管配合实现波形整体平移,将波峰或波谷固定在指定电压;限幅电路利用二极管导通特性削除信号超出设定阈值的部分;检波电路则通过半波整流和电容滤波从调幅波中提取音频信号。三种电路均通过Multisim仿真验证了理论分析结果,展示了二极管在信号处理中的关键作用。这些基础电路广泛应用于信号调理、电平保护和通信解调等领域。 阅读详情

相关推荐

工业异常检测评价指标(I-AUROC、PRO等)

模型评价指标:TPR、FPR、Recall、ROC、AUC、AUROC、IoU、PRO、AUPRO等

qq_1532145264的博客 7434

《Linux内核修炼之道》精华分享与讨论(13)——驱动开发三件宝:spec、datasheet与内核源码

推荐博文: Linux内核“问题门”——学习问题、经验集锦推荐下载:《Linux内核修炼之道》精华版之方法论 设备模型之外,对于驱动程序的开发者来说,有三样东西是不可缺少的:第一是协议或标准的spec,也就是规范,比如usb协议规范;第二是硬件的datasheet,即你的驱动要支持的硬件的手册;第三就是内核里类似驱动的源代码,比如你要写触摸屏驱动的话,就可以参考内核里已经有的一

1万+

谷粒商城篇章9 ---- P248-P261/P292-P294 ---- 消息队列【分布式高级篇六】

RabbitMQ消息队列、RabbitMQ延时队列。

weixin_48568302的博客 1550

01-Docker入门与核心概念

要真正理解Docker,我们不能仅仅停留在"它是一个工具"的层面。任何一项技术的诞生都不是凭空而来的,它是对前人智慧的继承与发展,是对现实问题的回应。容器化技术同样如此——它有着超过四十年的技术积淀,经历了从chroot到LXC,再到Docker和Kubernetes的漫长演进。本章将带你穿越时光,梳理容器化技术的发展脉络,让你明白Docker为什么会出现在这个时代,以及它解决了前人没有解决好的哪些问题。软件交付方式的演进,本质上是人类对计算资源利用率和管理效率不断追求的过程。我们可以将这个过程分为三个主要

Na2SiO3Glue的博客 688

Qwen3-Embedding选型指南:0.6B/4B/8B三版本性能对比与场景匹配建议

本文深入解析阿里开源的Qwen3-Embedding系列模型(0.6B/4B/8B)的性能差异与适用场景,提供从边缘计算到云端部署的实战选型建议。通过实测数据对比响应延迟、内存占用和多语言精度等核心指标,帮助技术团队根据业务需求选择最优模型版本,并分享边缘设备优化与云端成本测算策略。

qsc901234567的博客 892

从零构建Carsim线控转向仿真:模型搭建、算法集成与整车联动实战

本文详细介绍了从零开始基于Carsim和Simulink搭建线控转向仿真模型的完整实战流程。内容涵盖RWA前轮执行器动力学建模与PID控制、卡尔曼滤波器估算齿条力、HWA方向盘手感模拟算法设计,以及最终实现HWA与RWA闭环联动并进行整车仿真调试。通过分步拆解,帮助读者深入理解线控转向系统的核心原理与工程实现。

weixin_29158413的博客 251

做测试是否有前途

前半句话我认同,国内的确有这种情况;但我觉得具体跟国内大多公司软件水平还比较低有关系,他们对软件工程的理解还是浮于表面,没有真正理解软件工程实质。而且我觉得国内对软件开发的理解还是停留在上世纪八十年代九十年代初的时候。尤其是软件观念上的落后。很多人即使读过软件工程,读过中文英文版的,但若没有正规经历过大型项目,对软件工程还是理解很浅的。软件开发是实践性的,不是教出来的,不是看书看出来的,而是动手做

2025

Solidworks曲面建模学习(三)——样条曲线

本文主要演示平面的空间样条曲线的一些绘制。

东东不熬夜的博客 6503

微软中的软件测试

  在微软,测试人员可以说是团队前进的最大动力,可以说是测试人员在不断推动着整个团队朝着既定目标前进。  在微软,测试人员和开发人员在一个团队中的比率差不多,而且开发人员和测试人员的联系非常紧密,有点儿部分彼此的感觉。测试人员随时可以访问团队的代码库,开发人员也可以运行一些测试脚本来验证自己的开发,而且开发中的许多问题也都是双方共同努力解决的。  在微软,软件测试的自动化水平非常高,许多测

1808

HFSS线圈仿真避坑指南:从建模到寄生参数分析的完整流程

本文详细介绍了HFSS线圈仿真的完整流程,从精准建模到寄生参数优化,特别针对Ansys Electronics Desktop用户提供实用指南。涵盖线圈几何构建、材料属性配置、端口激励设置及寄生电阻与电感分析等关键步骤,帮助工程师避免常见错误,提升仿真精度与效率。

weixin_29209801的博客 549

3DE重客户端安装

3DE重客户端安装

m0_48170265的博客 9429

Best Practices in Software Test Automation

1: Know your objective2: Test Automation requires a manual test process3: The earlier the involvement in the Software Development Life Cycle (SDLC) the greater the benefits4: Test Automation is

1146

python实现DoIP基本通信(收发报文)

python实现DoIP基本通信(收发报文)

天赐好车的博客 897

脚本语言:21世纪的高级编程语言

1.简介    在过去的十五年里,人们编写计算机程序的方法发生了根本的转变。这种转变是从c或c++等系统程序设计语言到Perl或Tcl等脚本语言的过渡。虽然很多人参与了转变,却很少有人意识到它的发生,更不用说知道为什么会发生。这篇文章是我关于为什么在下个世纪脚本语言可以比系统程序设计语言更好的处理许多编程工作的一点看法。   与系统程序设计语言相

1072

Devexpress16.2.6破解工具

Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具

大中型超市收银系统(可直接运行)

光步前台收银系统系统功能:商品销售、商品退货、挂单、收银员权限、会员销售、单品取消、整单取消、商品查询、脱机销售、脱机数据上传,基本资料下载,开钱箱、小票打印、收款结算,支持多币种付款方式(现金、储值卡、礼券、微信等),支持多种促销。运行环境:.net 4.0登陆信息用户名:1001 密码:123456内置商品信息,商品编码可输入00001000 - 00010000,测试效果相关功能键F5 结算 F9挂单 F11商品查询 F8退货 Insert单品取消 Del整单取消 F12开钱箱F2 会员 Ctrl+Z退出系统 Home 锁屏 相关源码待公开

中美两国软件开发管理的比较与启示-杨锦方

在美国学习和工作期间,我注意比较了中美两国软件公司在软件开发管理和技术方面的不同之处。下面以我在硅谷一家从事企业语音识别平台软件开发的公司工作的经历为例, 介绍我的一些观点。第一,软件工程师年龄和经验的反差。我工作过的是一家NASDAQ上市公司,公司 只有5年时间,但是近一半的软件工程师、软件项目经理和软件设计师都不算很年轻,并有着5年以上的软件开发经验(不包括在校期间的经验)

1000

visio安装包

Microsoft Office Visio 是一款专业的制图软件。利用经过更新的形状、协作工具和数据链接图表,创建专业级图表以简化复杂的信息。

软件工程过程

GB、CMM、RUP、XP一、 GB二、 CMM三、 RUP(rational unified process)------软件3.1 RUP项目生命周期的四个阶段 初始 细化 构造 提交3.2 RUP的九个核心工作流程1) 业务建模2) 需求3) 分析设计4) 实现5) 测试6) 部署 7) 配置管理8) 项目管理

917

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

关于软件开发管理的一些思考

几个概念1 项目与产品项目只是一次性验收,不投入实际的使用,不必过多考虑质量问题产品要投入市场,质量是其生命,一切必须以质量为首要因素开发项目跟开发产品是不同的。开发项目,就是要在最少的资源之下,提供给客户一个可以接受的烂货。可以花100万就让客户愿意结案,绝对不要花101万,让客户拥有一个比较好用的系统。越好用的东西越难做,出槌的机率也越高,为什么要这样做呢?一、 软

882

系统分析员基本功

系统分析员思想全局观念是系统分析员必须具备的观念。如果系统分析员设计时太注重细节,往往会陷入在某个问题上纠缠不清的泥潭。(93年,我论文指导老师的一席话影响了我随后几年对软件开发的理解——今后计算机会越来越快,多写几行代码少写代码无关紧要,最重要的是整体;一开始就错了,某个部份编得再好,也是没有用的)  系统分析员要有面向用户的思想。系统分析员应当有能力将自己扮演成用户,来了解要交付的项目看起来想

782

从瀑布到流水线:DevOps 入门与 GitLab + Jenkins + Docker 落地实践

先看清软件开发生命周期(SDLC)的全貌,再对比瀑布模型与敏捷开发,随后进入持续集成与 CI/CD 的机制内核;最后落到实操——在 GitLab、Jenkins、Docker 组成的四机实验环境里,走完源码托管、自动化构建、镜像封装与远程部署,直到参数化构建与版本回滚。概念与命令并重,既是入门地图,也是操作手册。

年轻的时候很穷,经过我多年的努力,终于不再年轻。 272

训练数据示例

针对“规格书生成测试用例脚本”的任务,在 LLaMA-Factory 中使用即可。关键是把“规格书内容”放进input字段,把“期望的脚本输出”放进output字段。

liuxs2009的专栏 59

DNS 不是把域名翻译成 IP:递归解析、TTL 缓存、CNAME 与报文排错实战

本文通过离线Python实验,拆解DNS递归解析、缓存机制与报文结构,揭示“DNS不是全局映射表”的本质。重点解析递归器角色、TTL衰减、CNAME链处理、负缓存隔离及修改记录延迟生效等核心问题,结合实战排错案例,阐明缓存层级、事务匹配、截断处理与安全边界,强调从应用到权威的逐层排查逻辑,实现可复现、可验证的DNS教学系统。

此人很懒,什么都没有写~~ 348

Java EE 进阶:8.MyBatis 操作数据库(入门)(第一弹)

Java EE 进阶:8.MyBatis 操作数据库(入门)(第一弹)

要努力去发光,而不是被照亮~ 130

【LTE L3 笔记 09】LTE物理信道-PRACH

课程来源:B站《【2022】华为HCIA-LTE无线工程师认证学习中级视频》笔记为个人整理,含课件截图,仅供学习交流。

lyouhuan的博客 189

密码存储不是 MD5 加盐:PBKDF2、scrypt、参数升级与安全验证实战

本文通过实战演示密码存储的正确做法:摒弃MD5加盐,采用PBKDF2与scrypt等高成本密钥派生函数,结合随机盐、版本化记录与严格解析,确保离线破解成本可控。模块实现安全验证、参数校验、透明升级与统一错误处理,强调算法选择需兼顾安全性与可维护性,提供教学级密码存储方案,助力构建可迁移、可审计的认证边界。

此人很懒,什么都没有写~~ 236

软件测试用例模板怎么写:从用例设计到执行记录的全套指南

测试用例是测试工作的核心产出,它决定测试覆盖了多少、漏掉了什么。但大多数人的测试用例写得像流水账——只有正常路径,没有异常场景;只有操作步骤,没有预期结果;只有功能测试,没有非功能测试。本文拆解测试用例的标准结构,说明每个字段的含义和写法,给出覆盖功能测试、性能测试、安全测试的完整用例范例,并列出测试用例设计的五个高频遗漏点。

wuwangzhiduoshao的博客 150

【鸿蒙专题与实战】测试体系:单元测试、组件测试与 UI 测试

本文系统讲解鸿蒙开发中的三层测试实践:底层单元测试(用Hypium框架,优先覆盖纯函数、边界与异常)、中层ViewModel逻辑、顶层仅测3-5条关键UI路径。强调测试应“越往下写得越多”,因单元测试快且成本低,而UI测试慢易出错。通过实例说明断言拆分提升定位效率,结合覆盖率报告(hvigorwtest --coverage)发现盲区,核心是“用覆盖率找漏测,而非追求数字”。附五步落地清单:建测试文件、按优先级补用例、精简UI测试、生成报告、定位未覆盖行。下一篇将开启实战项目:从需求到上架全流程。

信息安全领域优质创作者|操作系统领域专家 180
上一篇: 做测试是否有前途
下一篇: 微软中的软件测试
lphpc
博客等级 码龄22年 32粉丝 86原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值