`

技术解决过程域 [Technicl Solution]

阅读更多
技术解决过程域 [Technical Solution]

技术实现包括以下内容:
    设计产品和产品组件
    管理产品组件之间的接口
    编译和调度产品组件
    产品的集成、发布
    确保需求是能被满中的
    产品交付使用 [测试团队、外部客户]

设计
    高阶设计阶段
        架构设计
    详细设计
        界面设计
        数据库设计
        模块设计
        数据结构与算法
    
    架构设计原则:
        合适性
        结构稳定性
        可扩展性
        可复用性
        
        --------------------------
        合适性:
            适合功能、非功能需求
            市场决定产品命运,而不是技术
            没有最好的,只有最合适的
            开发多个候选方案,选择最合适的
            
        稳定性:
            稳定的需求决定体系结构
            易变的需求决定体系可扩展性
            
        可扩展性:
            变化是永恒不变的主题,是否适应变化决定了产品的前途
            稳定与扩展的关系:辩证的关系
                只是稳定,不可扩展,则产品没有前途
                稳定是可扩展的基础,结构稳定才能可持续的扩展
            预留接口
            
        可复用性:
            可复用性是设计出来的
                公共部分
                抽象
            复用提高生产率
            
            
    用户界面设计原则:
        易用性
            操作简单
            容易使用
            风格一致
            及时反馈信息
            出错处理
        美观
            布局合理
            色彩搭配适当
            
    数据库设计原则:
        选择合适的数据库
        数据库优化
            优化表结构
                规范化(第三范式)
            优化数据环境参数
                增强硬件性能,内在、CPU等
    
    模块设计原则:
        透明
            接口公开,内部实现隐藏
        高内聚
            一个模块内部各元素之间的关联度要高
        低耦合
            模块之间的依赖程度要低
    [
        模块的性能决定了系统的性能
            单个模块的性能决定了系统某个功能的性能
            模块间的协作性能决定了系统的整体性能
    ]    
        
编码
    编码规范
    单元测试
    代码评审
    ----------------------
    
    编码规范
        基本的编码规范
            排版
            注释
            命名
        高级的编码规范
            针对特定语言的经验总结 [c\c++\Java]
    
    单元测试
        作用及价值:
            增加我们对程序的信心
                测试可以让我们相信程序做了我们期望做的事情
            尽早发现BUG
                一个BUG被隐藏的时间越长,修复这个BUG的代价就越大
            做回归测试的根本
        
        单元测试的需要:
            学习测试工具
            学习测试方法
            写测试用例
            
        测不出BUG的可能性:
            代码质量高[可能性较低]
            测试方法、测试策略不对、测试用例质量不高、覆盖率低
        
        编写单元测试
            利用工具
            测试方法
                等价类、边界值、逻辑覆盖
            测试策略
                根据逻辑复杂度确定是否值得编写测试用例[循环、判断层次]
            使用断言而不是打印
            测试覆盖率:代码覆盖、分支覆盖、路径覆盖
            
        不写单元测试可能出现的后果:
            项目不断播延期
            无休的加班
            对项目失去信心
            大量开发人员离职
            产品不能推向市场
        
审计
    QA 审计要点
        是否写了测试用例
        测试用例是否达到了组织要求的覆盖率
        是否记录了测试的BUG
        是否分析了BUG的原因,类型分布
    
    代码评审
        类型:
            正式审查
            非正式走查
                自查
                交叉检查
                四眼走查
                会议走查
    
    代码评审可能出现的问题:
        编码规范
            排版
            命名
            注释
        设计需求满足的问题
            编码是否符合设计、需求
    
    代码评审策略
        每日/每周走查
        新手必查
        核心代码必查
        
    如何保证代码评审效果
        引入代码静态检查工具
        运用代码评审检查单
            检查单要更新、维护
            检查单数据要统计
        编程高手
            经验
            培训
            指导
            标杆
    
重构[单元测试用例是重构的保证]
    定义:不改变软件外部行为的前提下,调整程序结构,搞高可理解性,可维护性
        优化软件结构
        找出BUG
    重构时机:
        修改BUG的时
        代码评审时
        添加新功能时
    
分享到:
评论

相关推荐

    05 技术解决方案 (Technical Solution, TS).pdf

    技术解决方案 (Technical Solution, TS).pdf

    CMMI-DEV V1.2支持过程域

    - **技术解决方案(Technical Solution)**:此过程域关注于选择合适的技术解决方案来满足项目的需求,包括设计、开发和实现等方面的工作。 - **产品集成(Product Integration)**:该过程域着重于将不同的组件或子...

    CMMI-DEV V1.2工程过程域

    - **技术解决方案(Technical Solution)**:设计和实现解决方案的技术方面。 - **产品集成(Product Integration)**:确保不同组件能够有效地协同工作。 - **验证(Verification)**:确保产品符合规范和技术要求...

    CMMI-DEV 1[1].2过程域解析

    5. **技术解决方案(Technical Solution, TS)**:此过程域关注于开发技术解决方案来实现需求,可能包括算法选择、编程和原型制作。它强调创新和使用最佳实践来解决技术挑战。 6. **验证(Verification, VER)**:...

    我们公司的过程域考核.doc

    9. **技术解决 (TS, Technical Solution)**:技术解决涵盖系统设计、详细设计和编码阶段,旨在创建满足需求的技术解决方案。 10. **产品集成 (PI, Product Integration)**:产品集成涉及将各个组件组合成一个完整...

    CMMI3级项目 OPF,OPD,OT .技术解决方案(TS).验证(VER)和确认(VAL) 过程域培训

    4. **技术解决方案(TS,Technical Solution)**:TS过程域关注于如何设计和实现满足需求的技术解决方案。它包括需求分析、系统设计、详细设计、编码、测试和技术评审等活动,确保解决方案的质量和技术上的可行性。 ...

    CMMI_DEV_1.3中的过程域相关整理

    2. **技术解决方案(Technical Solution, TS)**:TS关注的是设计和实现过程,它指导如何基于需求开发出符合规格的技术解决方案,包括架构设计、详细设计、编码和单元测试。 3. **验证(Verification)**:验证过程域...

    CMMI3认证培训 技术解决方案.doc

    技术解决方案(Technical Solution,TS)是CMMI模型中的一个重要过程域,属于工程类过程域的成熟度第三级。它的主要目的是设计、开发并实施针对需求的解决方案,涵盖了产品、产品组件以及与产品相关的生命周期过程。...

    020_CMMI_TS_PRS技术解决方案过程.doc

    TS_PRS(Technical Solution Process,技术解决方案过程)是CMMI模型中的一个重要过程域,它关注于如何为项目开发出满足客户需求的技术解决方案。 1.1 目的 TS_PRS过程的主要目的是确保项目团队能够有效地分析客户...

    CMMI-DEV V1.2 项目管理过程域

    Technical Solution(技术解决方案) 技术解决方案关注的是如何将需求转化为具体的技术实现方案。这包括设计、实现、测试等环节,确保技术解决方案既满足功能性需求,又能达到质量标准。 ##### 4. Product ...

    CMMI-DEVV1[1][1]2项目管理过程域.pptx

    5. **技术解决方案(Technical Solution)**:这涉及到选择合适的技术、方法和工具来实现项目需求,包括设计、编码和集成等技术活动。 6. **产品集成(Product Integration)**:这一过程确保所有组件能够正确地...

    HCS-Solution.rar

    华为的HCS(Huawei Certified Specialist)认证是一个旨在认可个人在特定技术领域内专业能力的认证体系,其中HCS-Solution专注于华为的IT解决方案,是对技术专家在产品应用、方案设计、实施规划等方面能力的全面评估...

    HUAWEIHCS-Solution-IT-华为服务器虚拟化解决方案-01云计算基础知识

    云计算解决方案的设计和应用,不仅包括了服务模式和部署模式的选择,还需要关注与之相关的多项关键技术,比如云业务开发技术、云业务运营技术、并行数据分析与挖掘技术、分布式数据库技术、分布式消息队列技术、网格...

    概率随机变量与随机过程Solution manul.rar

    通过阅读《概率随机变量与随机过程》的Solution manul,学习者可以更好地理解并掌握这些概念,通过解决实际问题来提升分析和解决问题的能力。这不仅有助于深化理论知识,也为实际问题的解决提供了有力工具。

    SAPProduct Management SAP Solution Manager教材

    ### SAP Solution Manager 3.2 – 新特性与产品管理 #### 概述 SAP Solution Manager作为SAP软件生态系统中...无论是从战略层面还是技术层面,SAP Solution Manager都展现出了其在企业级解决方案管理领域的强大实力。

    SAP Solution Manager 培训资料3

    综上所述,SAP Solution Manager通过EGI方法论、基础配置以及对工作中心的介绍,为企业提供了一套全面的解决方案,有助于优化SAP项目的实施过程并提升整体运维效率。通过深入学习和实践,企业能够更好地利用这些工具...

    LJM1005_Full_Solution.rar

    "LJM1005_Full_Solution.rar"正是针对这一需求提供的综合解决方案,它包含了打印机驱动的完整安装包,旨在为用户带来便捷、快速的安装体验。下面我们将深入探讨这款解决方案的各个方面。 首先,我们要理解“LJM1005...

    hp_LJM1005_Full_Solution

    本文将详细探讨“hp_LJM1005_Full_Solution”这一解决方案,它专为惠普LJM1005多功能一体机设计,集打印、扫描和复印功能于一体,旨在提供全面、稳定的操作体验。 惠普LJM1005是一款高效的一体机,它的设计目标是...

    Solution Manager Key 的 ABAP 程序

    在SAP系统中,Solution Manager Key是一种用于认证和授权的密钥,它在安装或配置SAP解决方案时起着至关重要的作用。通常情况下,这个密钥是通过SAP官方提供的Solution Manager服务器生成的,但考虑到Solution ...

    HCS-Solution-IT-华为服务器虚拟化解决方案-02技术培训

    ### 华为服务器虚拟化解决方案关键技术知识点 #### 一、华为云操作系统FusionSphere概览 **华为FusionSphere**是华为公司推出的一款云操作系统,主要用于实现服务器虚拟化,提供全面的云服务功能。该系统集成了...

Global site tag (gtag.js) - Google Analytics