23、敏捷软件开发:原理、因素与挑战

敏捷软件开发:原理、因素与挑战

1. 敏捷软件开发的核心特点

1.1 与客户协作而非合同谈判

在传统的瀑布式开发中,客户在项目开始前详细协商产品需求,客户仅参与开发的开始和结束阶段,中间阶段参与度低。而敏捷开发中,开发者能更轻松地满足客户需求,因为整个过程与客户的互动更加密切。

1.2 适应变化而非坚持计划

以往,项目开发中视变化为成本,会尽量避免。但在敏捷开发里,变化总能为项目带来新价值。由于敏捷迭代周期短,优先级可以调整,新功能也能在迭代中不断添加。

2. 敏捷宣言的十二项原则

序号 原则内容 说明
1 通过早期和频繁的产品交付实现客户满意度 客户能频繁收到可用的软件,而非长时间等待一次发布
2 在开发过程中及时响应需求变更 需求或功能变更时,不产生延迟
3 频繁交付可工作的项目 Scrum方法支持这一理念,通过软件冲刺或迭代定期交付可用软件
4 开发者与业务利益相关者全程协作 业务和技术团队达成共识,做出更好决策
5 激励、支持并信任参与者 快乐的团队更有可能表现出色
6 允许面对面交流 团队成员直接交流更有效
7 向客户交付可用软件是衡量进度的最重要指标 为客户提供功能软件是评估进度的关键
8 支持稳定的开发节奏 团队确定可重复和可控的节奏,迭代发布产品
9 关注技术设计和细节可提高敏捷性 具备合适技能和出色设计的团队能跟上产品更新节奏
10 保持简单 仅进行必要的更新以完成手头工作
11 自组织团队支持优秀的架构、需求和设计 有能力和积极性的团队成员能做出决策、承担责任、定期沟通和交流想法,从而产出高质量产品
12 定期反思以提高效率 团队成员可提高自我认知、改进流程、获取新技能和方法

3. 敏捷在软件质量保证中的应用

3.1 质量保证的重要性

在软件开发中,质量至关重要。质量保证(QA)是确保产品和服务达到最高质量水平的系统过程。

3.2 敏捷项目中的质量保证

敏捷项目中,QA应尽早介入,以便预见问题、开发和执行测试用例、识别需求差距。与瀑布式方法将测试推迟到项目结束不同,敏捷方法将质量保证融入项目生命周期的每个阶段,提高了沟通和透明度。

3.3 每日会议的作用

在敏捷开发的冲刺阶段,每日会议有助于使冲刺过程更顺畅,提高团队沟通效率。团队成员需沟通困难或潜在问题,以增强个人和团队的透明度。项目领导者通过每日状态会议了解关键项目信息。QA工程师会随着新功能的添加对产品进行测试和再测试,早期和频繁的测试能节省时间和成本。

4. 敏捷开发的文献综述

项目团队的积极性和其他资源会影响软件开发过程。当项目开发技术和业务环境发生变化时,软件开发会面临重大挑战。不同地区对政府和商业领域的敏捷项目进行了研究,涉及社会学和项目相关等多个方面。不同学者也从不同角度对敏捷软件开发进行了研究,如Tore Dyba对1996年的相关论文进行分类研究,Harnsen讨论了文化、稳定性等多种问题,Mahanti在四个项目审查中确定了敏捷方法的六个关键标准。

5. 敏捷质量保证的因素

5.1 成功因素

敏捷开发的成功因素可分为组织、人员、流程、项目和技术五个关键领域。具体如下表所示:
|衡量维度|成功因素|成功因素的子因素|
|----|----|----|
|组织|工作场所文化|高管支持、团队成员合作|
|人员|客户沟通|管理业务需求和约束、合作者政治|
|人员|团队能力|高效的项目管理技能、良好的沟通和反馈、处理复杂问题的智慧技能|
|流程|项目管理流程|需求变更最小化、简单的项目流程、定期状态更新|
|流程|项目定义流程|时间管理、风险分析和管理、资源需求估算、主动测试、项目主动审查|
|项目|清晰的目标和目标|项目类型、项目性质、清晰的需求和规范、务实的预算、团队划分、团队规模|
|技术|敏捷方法选择|必要工具和技术的配置、先进技术的利用、使用先进技术所需的技能|

5.2 失败因素

调查显示,44%的受访者认为敏捷项目失败主要是由于培训不足和缺乏敏捷实践经验。当团队能力不足、无法使用基本敏捷方法时,就会陷入困境,而且培训敏捷方法和提供足够的指导成本高昂。失败因素如下表所示:
|衡量维度|失败因素|失败因素的子因素|
|----|----|----|
|组织|工作场所文化|管理承诺不明确、组织文化传统、组织内政治情况、组织可扩展性困难、后勤安排不足|
|人员|客户沟通|项目经理缺乏挑战性和能力、客户关系紧张|
|人员|团队能力|缺乏所需能力、不鼓励团队合作、个人或团体抵制变革|
|流程|项目管理流程|需求频繁变更、项目开发流程复杂、状态更新不规律、资源缺乏|
|流程|项目定义流程|时间管理不善、风险分析和管理不佳、项目需求和范围不明确、测试延迟、项目审查和测试延迟|
|项目|模糊的目标和目标|项目类型不明确、项目性质定义不清、需求和规范模糊、预算不务实、团队划分不均、团队规模不合适|
|技术|敏捷方法选择|敏捷方法使用不当|
|技术|先进技术利用|所使用的工具和技术无效|

6. 质量保证技术

6.1 质量保证的定义和目标

质量可定义为决定实体满足客户需求程度的一组因素。质量保证(QA)是确保高质量产品和服务的有效方法,其重要目标是防止交付给客户的产品和服务出现错误和缺陷。软件质量保证(SQA)用于确保软件的完整性和可靠性。

6.2 质量保证技术分类

软件质量保证技术可分为静态和动态两类。静态技术是在项目结束时由个人和团队检查文档,动态技术包括重构、模拟测试驱动开发、客户反馈等。瀑布模型同时使用静态和动态策略,而敏捷方法主要采用动态策略。

6.3 敏捷开发中的质量保证技术

  • 重构 :代码重构是在不改变代码外部行为的前提下,有纪律地改变现有代码内部结构的方法,可改善软件的设计、结构或实现,同时保持功能不变。
  • 持续集成 :是敏捷项目的支柱技术,代码持续集成,而非一两次集成,可减少查找和解决错误的时间。
  • 验收测试 :将新功能、特性或系统与预定义的验收标准进行测试。敏捷方法比瀑布方法更早、更频繁地进行验收测试。
  • 结对编程 :两名程序员(驾驶员和观察员)在同一工作站同时工作,驾驶员负责编写代码,观察员负责逐行审查,有助于快速产出高质量代码。
  • 系统隐喻 :敏捷社区将其作为软件开发的核心组成部分,能以非技术方式简化与客户、利益相关者和用户讨论系统的过程,促进团队进行架构评估。
  • 频繁的客户反馈 :敏捷方法的关键特性,通过在项目中频繁获取客户反馈,敏捷团队可将大部分新变更融入后续产品迭代中,因为质量就是满足客户需求。

7. 敏捷技术的挑战和局限性

7.1 常见挑战

  • 资源规划不足 :敏捷项目开始时难以预测成本、时间和资源,因为团队在项目进行到一半时才知道最终产品的样子。
  • 输出碎片化 :产品的增量交付虽能加快上市速度,但团队在不同周期开发不同组件时,结果可能碎片化,缺乏连贯性。
  • 项目无明确终点 :由于敏捷项目前期规划少,容易因交付新的、未预期的功能而偏离方向,且“最终结果”不明确,项目难以结束。
  • 难以衡量成功 :敏捷以块为单位运作,衡量成功需要回顾多个周期,难度较大。
  • 难以保持高水平协作 :习惯传统项目管理的IT公司在采用敏捷开发时会面临挑战。

7.2 其他挑战

还包括财务冲突、因准备不足而抵制敏捷变革、遗留的人力资源程序、采用瀑布式方法进行敏捷推广、因敏捷导致的倦怠、结构障碍、对敏捷的狂热、职位职责不明确以及为了敏捷而敏捷等问题。

8. 结论与展望

敏捷不仅仅是在单个项目中使用特定策略或框架,它基于迭代式软件开发,每个迭代都会产生一个可用的模块。敏捷方法适用于变化的环境,能让团队在短时间内开发出产品。在开启敏捷之旅前,需有充分的理由,不能盲目跟风。要明确自己为何需要敏捷,得到公司管理层和经验丰富的团队成员的支持也至关重要。目前,敏捷质量保证的研究多集中在测试方面,为了提高质量、规范和组织敏捷项目的开发流程,需要有深入了解质量问题的专家参与。

9. 敏捷开发的优势总结

9.1 灵活性与适应性

敏捷开发以其短周期迭代的特点,能够快速响应需求的变化。在当今快速发展的市场环境中,客户需求不断变化,技术也在不断更新。敏捷开发允许团队根据这些变化及时调整项目方向,添加或修改功能,确保产品始终符合市场需求。例如,在一个软件开发项目中,如果客户在项目进行到一半时提出了新的功能需求,敏捷团队可以在后续的迭代中轻松地将这些需求纳入开发计划,而不会像传统瀑布式开发那样面临巨大的成本和时间压力。

9.2 客户满意度提升

通过早期和频繁的产品交付,客户能够在项目的各个阶段都参与进来,及时看到产品的进展,并提供反馈。这种持续的互动使得开发团队能够更好地理解客户的需求和期望,不断优化产品,从而提高客户满意度。比如,在一个移动应用开发项目中,开发团队可以每隔几周就向客户交付一个新版本的应用,客户可以在使用过程中发现问题并及时反馈,开发团队则可以在下一次迭代中解决这些问题,确保最终交付的产品能够满足客户的需求。

9.3 团队协作与沟通

敏捷开发强调团队成员之间的密切协作和沟通。每日会议、面对面交流等方式促进了信息的及时共享和问题的快速解决。团队成员能够更好地了解彼此的工作进展和面临的挑战,共同寻找解决方案。此外,自组织团队的模式赋予了团队成员更多的自主权和责任感,激发了他们的积极性和创造力。例如,在一个跨职能的敏捷团队中,开发人员、测试人员、业务分析师等可以紧密合作,共同完成项目目标。

9.4 质量保证

敏捷开发将质量保证贯穿于整个项目生命周期。通过持续集成、频繁的测试和重构等技术手段,能够及时发现和解决软件中的缺陷和问题,确保软件的质量和可靠性。同时,频繁的客户反馈也有助于确保产品满足客户的需求和期望。例如,在一个大型软件项目中,开发团队可以通过持续集成工具每天自动集成代码,并运行一系列的测试用例,及时发现代码中的问题并进行修复。

10. 应对敏捷开发挑战的策略

10.1 资源规划优化

虽然敏捷项目在开始时难以准确预测资源需求,但可以通过经验积累和历史数据来进行大致的估算。在项目进行过程中,根据实际进展情况及时调整资源分配。例如,可以采用滚动式规划的方法,在每个迭代开始时,根据上一个迭代的结果和当前的需求,对下一个迭代的资源进行详细规划。同时,建立灵活的资源调配机制,以便在需要时能够快速调配资源。

10.2 解决输出碎片化问题

为了避免产品输出的碎片化,团队需要加强整体规划和协调。在项目开始前,制定清晰的产品架构和设计方案,确保各个组件之间的兼容性和一致性。在开发过程中,加强团队成员之间的沟通和协作,定期进行集成和测试,及时发现和解决组件之间的冲突和问题。例如,可以建立一个统一的代码库和版本控制系统,确保团队成员使用的是最新的代码版本,并能够及时同步代码变更。

10.3 明确项目终点

在项目开始时,明确项目的目标和范围,并制定详细的项目计划。虽然敏捷开发允许一定的灵活性,但也需要有一个明确的框架来确保项目不会偏离方向。同时,在项目进行过程中,定期对项目目标进行评估和调整,确保项目始终朝着预期的方向前进。例如,可以设定一些里程碑和验收标准,当项目达到这些里程碑时,进行严格的验收,确保项目符合预期。

10.4 改进衡量方法

为了更好地衡量敏捷项目的成功,可以采用多种指标进行综合评估。除了传统的项目进度、成本和质量指标外,还可以考虑客户满意度、团队协作效率、产品的市场反馈等指标。例如,可以定期进行客户满意度调查,了解客户对产品的评价和意见;通过团队绩效评估,了解团队成员的工作表现和协作情况。

10.5 提升团队协作能力

加强团队培训,提高团队成员的敏捷意识和技能水平。同时,建立良好的团队文化,鼓励团队成员之间的沟通和协作。例如,可以组织团队建设活动,增强团队成员之间的信任和默契;开展敏捷实践分享会,让团队成员分享自己的经验和心得。

11. 敏捷开发的未来发展趋势

11.1 与新兴技术的融合

随着人工智能、大数据、云计算等新兴技术的不断发展,敏捷开发将与这些技术进行更深入的融合。例如,人工智能可以用于自动化测试、代码审查等环节,提高开发效率和质量;大数据可以为项目管理提供更准确的决策支持;云计算可以提供灵活的资源调配和部署方式。

11.2 跨行业应用的拓展

敏捷开发最初主要应用于软件开发领域,但现在已经逐渐拓展到其他行业,如制造业、金融、医疗等。在这些行业中,敏捷开发的灵活性和适应性能够帮助企业更好地应对市场变化,提高产品和服务的质量。例如,在制造业中,敏捷开发可以用于新产品的研发和生产流程的优化;在金融行业中,敏捷开发可以用于开发新的金融产品和服务。

11.3 敏捷文化的普及

随着敏捷开发的广泛应用,敏捷文化将逐渐深入人心。企业将更加注重团队的协作、创新和快速响应能力,鼓励员工积极参与项目管理和决策。例如,企业可以建立敏捷转型团队,推动整个组织的敏捷化变革;开展敏捷文化培训,让员工了解敏捷开发的理念和方法。

12. 总结

敏捷软件开发以其独特的特点和优势,在当今软件开发领域占据了重要的地位。它强调与客户的协作、适应变化、持续交付和团队协作,能够提高客户满意度、提升产品质量和开发效率。然而,敏捷开发也面临着一些挑战和局限性,如资源规划不足、输出碎片化等。为了应对这些挑战,需要采取相应的策略,如优化资源规划、加强团队协作等。未来,敏捷开发将与新兴技术融合,拓展到更多行业,并推动敏捷文化的普及。在选择敏捷开发时,需要根据项目的特点和需求,权衡其利弊,合理应用敏捷方法,以实现项目的成功。

以下是一个简单的mermaid流程图,展示敏捷开发的基本流程:

graph LR
    A[需求收集] --> B[迭代计划]
    B --> C[开发与测试]
    C --> D[客户反馈]
    D --> E{是否满足需求}
    E -- 是 --> F[产品交付]
    E -- 否 --> B

这个流程图展示了敏捷开发从需求收集开始,经过迭代计划、开发与测试,再到客户反馈的循环过程,直到产品满足客户需求后进行交付。

相关推荐

COCOMO II 模型实战:3种项目类型下30KLOC代码量成本估算对比分析

本文深入解析COCOMO II模型在软件项目管理中的实际应用,通过有机型、半嵌入型和嵌入型三种项目类型的30KLOC代码量成本估算对比,揭示不同开发环境下的成本差异。详细阐述模型核心公式、参数设置及17个成本驱动因子的影响,提供实战计算示例和决策框架,帮助项目经理科学预测开发工作量,优化成本管理策略。

weixin_33858336的博客 740

【信息科学与工程学】计算机科学与自动化——第十六篇 GPU 05 工艺(3)

序号工艺工序名称工艺步骤核心参数其他参数关键部件及原材料控制指标加工设备类型加工工艺/技巧1衬底准备​1.1 硅晶圆清洗 1.2 热氧化生长薄SiO₂层(1-5nm) 1.3 衬底温度稳定温度: 600-800°C 厚度: 1-5nm 表面粗糙度: <0.2nm晶向: (100) 晶圆尺寸: 300mm 掺杂浓度: 1-10 Ω·cm p型Si晶圆、O₂气体、清洗液(SC1/SC2)氧化层厚度均匀性(±0.1nm) 界面态密度(Dit)<1e10 cm⁻²eV⁻¹清

weixin_49199313的博客 1328

【信息科学与工程学】【解决方案体系】企业知识库知识内容涵盖系列

1.2 知识领域分层 (D: 01-20) 1.3 尺度层次分类 (S: 01-10) 二、物理科学知识体系 (01-XX-XXX-XXXXX) 2.1 基础理论层次 编码名称理论描述数学表达式特征/定理关联编码01-01-001-00001​量子力学基础微观粒子行为理论薛定谔方程: iħ∂ψ/∂t = Ĥψ波粒二象性, 不确定性原理01-02-101-0000101-01-001-00002​量子电动力学电磁相互作用理论拉氏量: L = ψ̄(iγᵐ∂ₘ -

weixin_49199313的博客 1033

【信息科学与工程学】计算机科学与自动化——第二十篇 计算机体系架构00

路径选择与流量调度是网络优化中的核心环节,它们通过一系列算法来提升网络效率、降低延迟,并有效利用资源。

weixin_49199313的博客 803

【信息科学与工程学】【数据科学】第五十一篇 数据仓库00 基础设计01

数据仓库设计的系统性解决方案,涵盖架构模式、分层设计、百万级访问支撑、海量数据配置及与数据库/数据湖的对接策略: ​​ODS(操作数据层)​​:原始数据镜像,保留历史快照 ​​DWD(明细数据层)​​:清洗、标准化、维度退化 ​​DWS(汇总数据层)​​:主题宽表、轻度聚合 ​​ADS(应用数据层)​​:高度聚合,面向报表/API ​​二、百万用户访问架构设计​​ ​​1. 核心架构组件​​ ​​2. 关键配置参数(以Snowflake为例)​​ ​​3. 性能优化措

weixin_49199313的博客 1202

【信息科学与工程学】【云计算】计算机科学与自动化——第十五篇 云计算10 云计算领域架构

​:作为前端请求的统一入口,负载均衡器基于预设算法(如轮询、最小连接数)动态分配流量至后端服务器集群。​:通过IP哈希或Cookie绑定,保障同一用户请求由同一服务器处理(如电商购物车场景)。​:Nginx(HTTP/HTTPS反向代理)、HAProxy(TCP层负载均衡)。​:实时监控服务器状态(如响应时间、连接数),自动剔除故障节点,确保服务连续性。​:本地资源满载时,将流量分流至公有云(如AWS + 私有云混合架构)。​:LSTM预测流量峰值,强化学习动态调整权重(如阿里云智能负载均衡)。

weixin_49199313的博客 1856

【信息科学与工程学】【产品体系】第十二篇 制造业生产加工05 控制算法 ——飞行(1)

航空航天控制的高级主题,包括先进飞行控制、航天器高级控制、无人机集群、航空发动机控制和飞行管理。

weixin_49199313的博客 1907

【管理科学】第六十三篇 企业管理者招聘与人才博弈战略02

编号类型领域问题问题的数学分析(含逐步推理与数值范围)方法/手段/步骤/流程/话术/策略/行为/时序的所有内容和步骤(含数学表达式与数值分析)时序数学表达式及周期行动的数学表达式(含数值范围)关联知识和法律法规651组织博弈成本控制如何在保证质量的前提下有效控制成本?逐步推理: 1. 成本控制模型:成本每降低10%,利润可提升15%~25%。但过度降本可能影响质量和员工士气。 2. 控制效果:有效的成本控制可使利润率提升5%~10%。 3. 法律风险:需遵守劳动法和产品质量法。步骤与数学表

weixin_49199313的博客 470

【管理科学】第三十五篇 企业经营中的管理科学01 权力、风险、运营、物流、人力资源、库存、合同、品牌、业绩、项目

编号类型领域子领域/内容问题问题的数学分析(电磁/信息论/数学物理/数学化学/界面科学/表面科学 + 几何/拓扑/代数/集合论/图论/数论/函数评估/数值估计/概率/统计/向量/张量/矩阵/矢量 + 其他)算法逐步推理思考的数学表达式及实现步骤及时序流程 参数列表及参数的数值范围及数值分析及常量/常数1管理科学问题运营管理生产计划如何分配有限资源生产多种产品以最大化利润?线性代数、凸优化、单纯形法;向量与矩阵目标函数 max c^T x,约束 Ax ≤ b, x ≥ 0。步骤:①标准化引入松弛变量;②构建初

weixin_49199313的博客 247

YOLO26算法心电图十二导联目标检测+训练好的模型+368张数据集+pyqt可视化界面.zip

附训练好的 YOLO 权重与 PyQt 可视化检测界面,页面底部含可视化效果预览,毕设/课设开箱即用。 【数据集概况】 · 检测类别(中文):[导联I(I), 导联II(II), 导联III(III), 胸导联V1(V1), 胸导联V2(V2), 胸导联V3(V3), 胸导联V4(V4), 胸导联V5(V5), 胸导联V6(V6), 加压肢体导联aVF(aVF), 加压肢体导联aVL(aVL), 加压肢体导联aVR(aVR)] · 训练集:313 张 · 验证集:37 张 · 测试集:18 张 · 总计:368 张 该数据集聚焦于临床心电图信号的精准识别与定位,其核心检测目标为标准12导联心电图中的各个独立导联波形区域,涵盖肢体导联(I、II、III)与加压肢体导联(aVR、aVL、aVF),以及胸前导联(V1至V6),适用于心电图自动分析系统中对各导联位置的快速准确标注与分类。数据采集场景真实还原了医院心电图室或急诊监护环境下的标准心电图记录纸,波形清晰、基线稳定,具有高度临床参考价值。... 【训练曲线与评估图】 【模型训练配置】 参数 | 值 模型 | yolo26n 训练轮数 | 100 epochs 输入尺寸 | 640x640 批次大小 | 24 优化器 | auto 初始学习率 | 0.01 训练设备 【关键指标汇总】 训练了 57 个 epoch,最终轮指标: 指标 | 数值 mAP50 | **0.9708** mAP50-95 | 0.6344 Precision | 0.8990 Recall | 0.9191 train/box_loss | 1.2231 train/cls_loss | 0.9703 val/box_loss | 1.2779 val/cls_loss | 0.... 使用场景:毕业设计、课程设计、深度学习入门、工业场景落地验证。

别再死记硬背了!用‘瞬时极性法’5分钟搞定三极管反馈电路类型判断

本文介绍了使用‘瞬时极性法’快速判断三极管反馈电路类型的高效技巧。通过假设输入信号变化并追踪传递路径,该方法能准确区分正负反馈、电压电流反馈、串联并联反馈及交直流反馈,避免传统死记硬背的弊端,显著提升电路分析效率。

weixin_42524708的博客 181

Visual Tracker Benchamark傻瓜式教程(二)

问题  1 1  在调用main.m跑TRE和SRE时,因为会生成相应的.mat数据文件,如果跑完以后发现自己算法生成的.mat文件有问题,那么要把该文件删除,待找到错误原因后,重新生成相应的.mat文件。因为程序中写的是如果已经存在了.mat文件,例如已经存在car4_STC.mat文件,即使该文件中的数据有错误,但是重新跑时会默认该文件中的数据写完,不会重新写入数据 问题  2  b

mingbujingren的专栏 9928

为什么你的PROFINET IRT同步性能不达标?等时模式常见配置误区盘点

本文深入剖析了PROFINET IRT等时模式同步性能不达标的常见原因。文章直击痛点,系统盘点了从硬件兼容性、拓扑组态、过程映像分区分配,到同步OB配置、时序参数调校及带宽管理等关键环节的配置误区,并提供了实用的诊断思路与性能优化清单,帮助工程师精准定位并解决同步抖动、时序混乱等难题。

ujm5678901的博客 457

Carla自动驾驶仿真一:快速安装与运行Carla

网上有不少的Windows版本的Carla的安装教程,这里简单记录下自己安装过程,写的也比较详细,基本不用看其他文章。

zataji的博客 2万+

Ubuntu22环境下Xinference与RAGFLOW集成:构建高效rerank模型服务【实战指南】

本文详细介绍了在Ubuntu22.04系统上,通过部署Xinference模型推理服务来加载bge-reranker-base等rerank模型,并将其与RAGFLOW框架集成的完整实战指南。该方案实现了模型服务的解耦与灵活管理,有效提升RAG系统的检索精度与答案相关性,并提供了从环境配置、服务启动、网络连接到性能调优及常见问题排查的全流程解决方案。

pluto的博客 499

ComfyUI-controlnet控制出图

提供加载预处理器节点。

Bu2n的博客 5494

结构优化软件:OptiStruct_(11).拓扑优化

在OptiStruct中,设计空间可以通过定义设计区域来实现。设计区域是结构中可以进行材料变化的部分。几何区域:通过几何选择工具选择特定的区域。网格区域:通过网格选择工具选择特定的单元。假设我们有一个简单的梁结构模型,网格文件为beam.fem。我们希望在梁的中部进行拓扑优化,以减轻重量并保持刚度。

kkchenjj的博客 1366

记录Android Studio连接华为(nova)手机鸿蒙系统踩过的坑

鸿蒙系统的华为老机子比较麻烦,坑有点多,兄弟们加油!

沉迷单车的追风少年 7921

Data-Structures-and-Algorithm-Analysis-in-Java.pdf

作者: Weiss, Mark A. 出版社: Addison Wesley Data Structures and Algorithm Analysis in Java is an “advanced algorithms” book that fits between traditional CS2 and Algorithms Analysis courses. In the old ACM Curriculum Guidelines, this course was known as CS7. This text is for readers who want to learn good programming and algorithm analysis skills simultaneously so that they can develop such programs with the maximum amo...

Devexpress16.2.6破解工具

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

最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版

Part-E1-SDIO-Specification-Ver4.00-Final-120220.pdf:最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版,包括SDIO 接口的外设,SDIO 接口官方协议等。

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

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

上一篇: 5、树莓派Scratch 3编程入门与实践
下一篇: 24、基于用户故事的分布式敏捷软件开发风险因素分类
lambda
博客等级 码龄23年 49粉丝 1303原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符  | 博主筛选后可见
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值