ICEPAK培训
   
 

软件领域驱动设计课程

 
   班级规模及环境--热线:4008699035 手机:15921673576/13918613812( 微信同号)
       坚持小班授课,为保证培训效果,增加互动环节,每期人数限3到5人。
   上课时间和地点
上课地点:【上海】:同济大学(沪西)/新城金郡商务楼(11号线白银路站) 【深圳分部】:电影大厦(地铁一号线大剧院站)/深圳大学成教院 【北京分部】:北京中山/福鑫大楼 【南京分部】:金港大厦(和燕路) 【武汉分部】:佳源大厦(高新二路) 【成都分部】:领馆区1号(中和大道) 【沈阳分部】:沈阳理工大学/六宅臻品 【郑州分部】:郑州大学/锦华大厦 【石家庄分部】:河北科技大学/瑞景大厦 【广州分部】:广粮大厦 【西安分部】:协同大厦
近开课时间(周末班/连续班/晚班):2024年11月18日......(欢迎您垂询,视教育质量为生命!)
   实验设备
     ☆资深工程师授课
        
        ☆注重质量 ☆边讲边练

        ☆合格学员免费推荐工作
        ★实验设备请点击这儿查看★
   质量保障

        1、培训过程中,如有部分内容理解不透或消化不好,可免费在以后培训班中重听;
        2、课程完成后,授课老师留给学员手机和Email,保障培训效果,免费提供半年的技术支持。
        3、培训合格学员可享受免费推荐就业机会。

课程大纲
1  培训目标
需求分析人员和领域专家无法与团队的设计人员和开发人员进行有效沟通。需求分析人员不了解软件设计,软件设计人员常常会曲解需求内容,这是软件开发中容易出现的第一病症。它带来的后果是设计频繁变更,设计的软件不满足客户需求。
需求分析虽然明白无误,设计人员却无法准确地抽象领域模型,从而不能开展有效的软件设计,这是软件开发中容易出现的第二病症。它带来的后果是设计质量糟糕,开发的代码不具有良好的可读性,增加了软件的开发与维护成本。
系统的业务需求复杂多变,设计人员却总是喜欢从实现角度以及数据库层面思考业务问题,这是软件开发中容易出现的第三病症。它会导致开发的系统过于复杂,且可扩展性差,无法有效应对需求发生的变化。
本次培训的内容——领域驱动设计正好是解决这三种常见病症的佳药方。
2  培训计划
课题 内容
第一单元
领域建模的方法 1、领域建模与设计的关系
优秀的软件系统与好的软件设计息息相关,但关键的还是在于对需求的理解。如果不能正确的理解软件需求,那么再好的设计也不能设计出好的软件。正确的做事情固然重要,更重要的是要做正确的事。然而,需求到设计存在巨大的鸿沟,因为需求是站在业务角度来考虑,而设计往往会站在实现角度。领域建模就是为这二者搭建一个沟通与转换的桥梁。

2、统一语言(Ubiquitous Language)
为了更好的理解需求,我们需要与领域专家一起梳理目标领域的统一语言,从而就领域术语达成一致,并有利于领域建模。
第二单元
领域驱动设计的战略设计
1、限界上下文(Bounded Context)

若要进行领域建模,并将业务需求逐步演化为架构设计,则需要引入DDD(领域驱动设计)的战略设计作为指导。场景图与限界上下文可以很好地结合,帮助架构师很好地识别各个子领域的概念边界与设计边界。如此则可以运用“分而治之”的思想识别出整个系统的业务逻辑边界与物理边界。

2、场景驱动
场景驱动设计的核心在于识别场景,它需要设计者结合具体的业务场景,分析业务流程,以此驱动出用例;再以用例驱动对业务逻辑的建模。场景驱动设计的核心模型为6W模型,即Who,Why,When,What,Where与hoW。它将对应职责模型的业务价值、业务功能与业务实现,并从角色的角度思考对象之间的协作以及设计边界。

3、用例方法 (Use Case)
通过利用传统的用例方法来帮助我们驱动出领域的限界上下文。

可视化演练:识别电子商务系统的限界上下文

4、上下文映射图 (Context Map)
本部分内容会讲解限界上下文之间主要存在的组织模式与集成模式,这其中包括防腐层,开放服务调用等。利用上下文映射图,有助于识别上下文之间的关系,思考处于上下文内领域模型之间的通信方式,从而帮助架构师驱动出终的应用逻辑架构。

可视化演练:电子商务系统的应用逻辑架构
第三单元
领域驱动设计的架构设计 1、分层架构 (Layered Architecture)
分层架构模式是应用为广泛的架构模式,它根据关注点分离的架构原则,针对表现层、领域层和基础设施层进行层次分离。本次培训将以全新视角审视分层架构,针对大型软件系统分析该如何进行分层架构设计。
案例分析:网上银行的分层架构,根据基本的业务流程对系统进行关注点分离,绘制系统的分层架构,并通过时序图展现各层之间的协作。

2、六边形架构 (Hexagonal Architecture)
虽然分层架构仍然是运用为广泛的架构模式,同时更是诸多架构模式的基础,但它已不足以描述越来越复杂的分布式系统架构。由Cockburn提出的六边形架构(Hexagonal Architecture)是一种具有对称性特征的架构风格。在这种架构中,不同的客户通过“平等”的方式与系统交互。该架构中存在两个区域,分别是“外部区域”和“内部区域”。这种界定了明确内外边界的架构风格,更有利于架构师实现关注点分离,并将关注重心放在适配器与通信端口上。

演练:六边形架构的通信边界
案例:大型金融系统的客户管理

3、CQRS
CQRS风格,即命令查询职责分离(Command Query Responsibility Segregation),它结合了消息处理、事件处理的架构风格,是对多种设计模式的综合运用,适用于处理读写比例高,需要支持可伸缩性的大型系统。

案例:AxonFramework对CQRS的支持

4、事件驱动架构 (Event-Driven Architecture)
事件驱动架构(Event-Driven Architecture,EDA)是一种用于处理事件生成、发现和处理等任务的软件架构。事件往往对应于软件系统的状态机,状态的迁移就是用事件来触发的。因而,事件能够很好地体现这样的业务模型。同时,基于事件的软件架构可以帮助我们更好地建立松散耦合的模块化架构。

第四单元
领域驱动设计的战术设计 1、领域模型
通过限界上下文,可以帮助我们分析系统的领域模型,包括系统的核心领域与子领域。确定系统的核心领域与子领域可以帮助架构师合理分配资源(包括时间资源与人力资源)。而对子领域的进一步识别,可以帮助架构师更好地识别可重用资源,包括可重用的功能模块,确定技术栈,决定构建还是购买的架构战略。

3、四色建模法
首先以满足管理和运营的需要为前提,寻找需要追溯的事件。根据这些需要追溯,寻找足迹以及相应的时标性对象。寻找时标对象周围的人/事/物。从中抽象角色,把一些信息用描述对象补足。
案例分析:配送管理系统的四色建模

2、实体(Entity)与值对象(Value Object)
这两个概念都是领域对象的体现,二者的主要区别在于对“标识”的运用。本部分的内容深入展开对实体标识的讨论,揭示实体的本质特征,挖掘实体的关键行为。通过识别角色与职责对实现进行分析。
本部分内容还将通过深入讲解值对象的特征帮助我们分辨值对象与实体,使得我们可以在领域驱动设计中有效地运用实体与值对象。本部分内容还包括持久化值对象,以及领域驱动设计与ORM之间的关系。
3、领域服务 (Domain Service)
通过讲解什么是领域服务,什么不是领域服务理清领域服务的概念,并讲解如何建模领域服务。讨论领域服务和面向接口设计思想。
4、领域事件 (Domain Event)
事件驱动架构的主要对象即为领域事件,我们要分清在何时以及为什么要使用领域事件,并对领域事件进行建模。通过讲解发布者-订阅者模式讲解如何在领域模型和限界上下文中发布领域事件。同时,针对事件进行存储的Event Source也与CQRS架构风格直接相关。
演练:寻找领域事件
5、聚合 (Aggregation)
聚合是领域驱动设计为重要的领域概念。本部分内容将深入探讨聚合的设计原则,并辨别在聚合设计中可能出现的坏味道,并提出针对性的解决方案。这些原则和方案包括:在一致性边界之内建模真正的不变量,设计小的聚合,通过唯一标识引用其他聚合,在边界外满足终一致性。
6、工厂(Factory)和资源库(Repository)
工厂和资源库都是管理领域对象(实体、值对象和服务)生命周期的对象。工厂主要针对内存中对象从无到有的创建过程,与设计模式的工厂模式基本相似。
资源库则分为面向集合的资源库与面向持久化的资源库。本部分内容将重点讲解与资源库直接相关的技术细节,包括如何选择资源库的方式,如何针对聚合持久化资源库,如何管理事务,以及分辨资源库与数据访问对象(DAO)之间的异同。
7、应用层(Application Layer)设计
作为为UI提供的应用服务,其目的在于管理和协调领域对象,并为领域对象提供横切关注点的内容。好的应用服务设计不应该承担任何与领域逻辑有关的职责。应用层是架构层面的外观与适配器模式的体现。它可以提高软件系统架构的可用性与简单性,也能够更好地与面向服务架构或RESTful架构风格结合。

第五单元
DCI 1、 讨论
Transaction Script与Domain Model之争
贫血模型与充血模型之争
Service废存的争论

2、DCI(Data Context Interation)
DCI是领域驱动设计的一个分支,更加关注系统的行为,从而提高代码的可读性。该范式将Data Model(data)从Use Cases(context)以及对象扮演的Role(Interaction)中分离出来。

第六单元
实战演练 1、 基于多租户的社交网络系统以及项目管理系统的领域驱动设计
这是领域驱动设计过程的完整案例分析,从需求开始着手,开展对整个系统的架构分析、领域概念识别与分析,并对建立的领域模型进行迭代与演化,核心领域概念的演进,扫清领域设计过程中的认知障碍,并总结了领域驱动设计过程的一些经验教训。
本实战演练包含了真实的案例需求,以及符合领域驱动设计各种知识点的案例病症分析,从对比入手来探讨好的领域驱动设计方法。同时,还将引入大量的可视化图形、设计图与代码帮助学员理解如何在真实项目中运用领域驱动设计的思想,指导设计人员进行良好的设计。




 

android开发板
linux_android开发板
fpga图像处理
曙海培训实验设备
fpga培训班
 
本课程部分实验室实景
曙海实验室
实验室
曙海培训优势
 
  合作伙伴与授权机构



Altera全球合作培训机构



诺基亚Symbian公司授权培训中心


Atmel公司全球战略合作伙伴


微软全球嵌入式培训合作伙伴


英国ARM公司授权培训中心


ARM工具关键合作单位
  我们培训过的企业客户评价:
    曙海的andriod 系统与应用培训完全符合了我公司的要求,达到了我公司培训的目的。 特别值得一提的是授课讲师针对我们公司的开发的项目专门提供了一些很好程序的源代码, 基本满足了我们的项目要求。
——上海贝尔,李工
    曙海培训DSP2000的老师,上课思路清晰,口齿清楚,由浅入深,重点突出,培训效果是不错的,
达到了我们想要的效果,希望继续合作下去。
——中国电子科技集团技术部主任 马工
    曙海的FPGA 培训很好地填补了高校FPGA培训空白,不错。总之,有利于学生的发展, 有利于教师的发展,有利于课程的发展,有利于社会的发展。
——上海电子,冯老师
    曙海给我们公司提供的Dsp6000培训,符合我们项目的开发要求,解决了很多困惑我 们很久的问题,与曙海的合作非常愉快。
——公安部第三研究所,项目部负责人李先生
    MTK培训-我在网上找了很久,就是找不到。在曙海居然有MTK驱动的培训,老师经验 很丰富,知识面很广。下一个还想培训IPHONE苹果手机。跟他们合作很愉快,老师很有人情味,态度很和蔼。
——台湾双扬科技,研发处经理,杨先生
    曙海对我们公司的iPhone培训,实验项目很多,确实学到了东西。受益无穷 啊!特别是对于那种正在开发项目的,确实是物超所值。
——台湾欧泽科技,张工
    通过参加Symbian培训,再做Symbian相关的项目感觉更加得心应手了,理 论加实践的授课方式,很有针对性,非常的适合我们。学完之后,很轻松的就完成了我们的项目。
——IBM公司,沈经理
    有曙海这样的DSP开发培训单位,是教育行业的财富,听了他们的课,茅塞顿开。
——上海医疗器械高等学校,罗老师
  我们新培训过的企业客户以及培训的主要内容:
 

广州航天航空 POWERPC培训
桂林航天工 DSP培训
江苏五维电子科技 达芬奇培训
无锡步进电机自动控制技术 DSP培训
江门市安利电源工程 DSP培训
长江力伟股份 CADENCE 培训
爱普生科技(无锡 ) 数字模拟电路
河南平高 电气 DSP培训
中国航天员科研训练中心 A/D仿真
常州易控汽车电子 WINDOWS驱动培训
南通大学 DSP培训
上海集成电路研发中心 达芬奇培训
北京瑞志合众科技 WINDOWS驱动培训
江苏金智科技股份 FPGA高级培训
中国重工第710研究所 FPGA高级培训
芜湖伯特利汽车安全系统 DSP培训
厦门中智能软件技术 Android培训
上海科慢车辆部件系统EMC培训
中国电子科技集团第五十研究所,软件无线电培训
苏州浩克系统科技 FPGA培训
南京南瑞集团技术 FPGA培训
西安爱生技术集团 FPGA培训,DSP培训
成都熊谷加世电气 DSP培训
福斯赛诺分析仪器(苏州) FPGA培训
南京国电工程 FPGA培训
北京环境特性研究所 达芬奇培训
中国科微系统与信息技术研究所 FPGA高级培训
重庆网视只能流技术开发 达芬奇培训
无锡力芯微电子股份 IC电磁兼容
河北科研究所 FPGA培训
上海微小卫星工程中心 DSP培训

上海申达自动防范系统 FPGA培训
四川长虹佳华信息 MTK培训
公安部第三研究所--FPGA初中高技术开发培训以及DSP达芬奇芯片视频、图像处理技术培训
上海电子信息职业技术--FPGA高级开发技术培训
上海点逸网络科技有限公司--3G手机ANDROID应用和系统开发技术培训
格科微电子有限公司--MTK应用(MMI)和驱动开发技术培训
南昌航空大学--fpga 高级开发技术培训
IBM 公司--3G手机ANDROID系统和应用技术开发培训
上海贝尔--3G手机ANDROID系统和应用技术开发培训
中国双飞--Vxworks 应用和BSP开发技术培训

一汽海马汽车 DSP培训
苏州金属研究院 DSP培训

台湾欧泽科技--iPhone开发技术培训
宝康电子--Allegro Candence PCB 仿真和信号完整性技术培训
上海天能电子有限公司--Allegro Candence PCB 仿真和信号完整性技术培训
上海亨通光电科技有限公司--andriod应用和系统移植技术培训
上海智搜文化传播有限公司--Symbian开发培训
先先信息科技有限公司--brew 手机开发技术培训
鼎捷集团--MTK应用(MMI)和驱动开发技术培训
傲然科技--MTK应用(MMI)和驱动开发技术培训
浙江理工大学--Dsp6000图像/视频处理技术培训
台湾双阳科技股份有限公司--MTK应用(MMI)和驱动开发技术培训
滚石移动--MTK应用(MMI)和驱动开发技术培训
冠捷半导体--Linux系统开发技术培训
奥波--CortexM3+uC/OS开发技术培训
迅时通信--WinCE应用与驱动开发技术培训
海鹰医疗电子系统--DSP6000图像处理技术培训
博耀科技--Linux系统开发技术培训
华路时代信息技术--VxWorks BSP开发技术培训
中软国际--Linux系统开发技术培训
龙旗控股集团--MTK应用(MMI)和驱动开发技术培训
研祥智能股份有限公司--MTK应用(MMI)和驱动开发技术培训
罗氏诊断--Linux应用开发技术培训
西东控制集团--DSP2000应用技术及DSP2000在光伏并网发电中的应用与开发
科大讯飞--MTK应用(MMI)和驱动开发技术培训
东北农业大学--IPHONE 苹果应用开发技术培训
中国电子科技集团--Dsp2000系统和应用开发技术培训
中国船舶重工集团--Dsp2000系统开发技术培训
晶方半导体--FPGA初中高技术培训
肯特智能仪器有限公司--FPGA初中高技术培训
哈尔滨大学--IPHONE 苹果应用开发技术培训
昆明电器科学研究所--Dsp2000系统开发技术
奇瑞汽车股份--单片机应用开发技术培训

东华大学--Dsp6000系统开发技术培训
上海理工大学--FPGA高级开发技术培训
同济大学--Dsp6000图像/视频处理技术培训
上海医疗器械高等专科学校--Dsp6000图像/视频处理技术培训
中航工业无线电电子研究所--Vxworks 应用和BSP开发技术培训
北京交通大学--Powerpc开发技术培训

上海水务建设工程有限公司--Alter/Xilinx FPGA应用开发技术培训
恩法半导体科技--Allegro Candence PCB 仿真和信号完整性技术培训
中国计量--3G手机ANDROID应用和系统开发技术培训
冠捷科技--FPGA芯片设计技术培训
芬尼克兹节能设备--FPGA高级技术开发培训
川奇光电--3G手机ANDROID系统和应用技术开发培训

 
  曙海企业  
  备案号:沪ICP备08026168号 .(2014年7月11)...................
友情链接:Cadence培训 ICEPAK培训 EMC培训 电磁兼容培训 sas容培训 罗克韦尔PLC培训 欧姆龙PLC培训 PLC培训 三菱PLC培训 西门子PLC培训 dcs培训 横河dcs培训 艾默生培训 robot CAD培训 eplan培训 dcs培训 电路板设计培训 浙大dcs培训 PCB设计培训 adams培训 fluent培训系列课程 培训机构课程短期培训系列课程培训机构 长期课程列表实践课程高级课程学校培训机构周末班培训 南京 NS3培训 OpenGL培训 FPGA培训 PCIE培训 MTK培训 Cortex训 Arduino培训 单片机培训 EMC培训 信号完整性培训 电源设计培训 电机控制培训 LabVIEW培训 OPENCV培训 集成电路培训 UVM验证培训 VxWorks培训 CST培训 PLC培训 Python培训 ANSYS培训 VB语言培训 HFSS培训 SAS培训 Ansys培训 短期培训系列课程培训机构 长期课程列表实践课程高级课程学校培训机构周末班 曙海 教育 企业 培训课程 系列班 长期课程列表实践课程高级课程学校培训机构周末班 短期培训系列课程培训机构 曙海教育企业培训课程 系列班
在线客服