李维关于Together的讲座要点

AI权益加码!Claude Code、Cursor等20+工具免费用! 购周边限时加赠Coding Plan Lite,畅享主流AI工具!学习进阶更高效! 阅读详情

李维关于Together的讲座要点

——UMLChina讲座录音及幻灯20051214李维Together2006UML2.0模型驱动开发

2007-11-11

软件工程越来越重要、普及

越来越多的IDE引入软件工程。开发中所采用的软件工程将决定采用的语言开发工具。

目前各种开发方法还无法涵盖软件开发的整个过程。如MDA应用于designdevelopment阶段。XP关注developmenttest阶段。所以必须了解各种软件工程方法后面的含义,知道每种方法适用的开发阶段。

CMM是未来软件开发的基本要求。

 

软件开发发展的几个阶段:

  • Information technology (technology itself)
  • Software engineering (methodology)
  • Process improvement (s.o.p optimization)
  • People improvement (all of us)

软件开发最终的目的:质量

需要解决的问题

设计模型一定是正确的吗?测试、验证要从设计开始。

 

不同设计模型如何相互转换?设计、开发、测试使用不同的模型,如何保证模型之间的转换没有问题。

如何使用Open source

使用前要考虑几个问题:

  • 为什么要用?
  • 如何选择最好的版本?
  • 能得到什么?

使用open source可以学习软件架构,提升软件技术。为达到这个目的,我们需要工具的帮助。

为什么使用Together2006

跳出UML范畴,更好的利用软件工程。

可以在建模的时候进行测试,验证软件的品质。

方便模型的转换。

对代码进行逆向工程,方便掌握架构,提升能力。

分析评估代码的质量。

模型的转换无处不在

语言, 模型, 系统

 

模型转换的场景:

1) 数据库建模;

2) 重构;

3) UML生成代码。

 

为了能够执行、验证模型,需要定义精确的模型。需要工具提供对模型进行检查,定义准确的、合理的模型。

MDA

基本的思想:集中精力在设计阶段,以模型为中心。

MDAOMG相关规范的集合:UML2.0OCL, MOF, XMI, CWM, QVT

模型是如何转换的:

Model A  ----->  Metamodel A ------>  Metamodel B ------> Model B

Metamodel 用来定义Model,只要定义两种Model之间的Metamodel转换关系,就可以实现两种模型之间的转换。

 

[旧文]来自 Borcon2003 中国开发者大会的现场报道 [旧文]来自 Borcon2003 中国开发者大会的现场报道 这是去年参加中国 Borcon2003 后写的一篇文章,今天偶尔又看到了,拿来充数,算一篇 Blog,也兼作保存自己的一点文字工作。 来自首届 Borland 中国开发者大会的现场报道  2003年11... 阅读详情

相关推荐

Telelogic Tau UML 建模实例过程

Telelogic Tau UML 建模实例过程2007-11-182007-11-25用到的UML图class diagramusecase diagramsequence diagram 描述对象之间的交互state diagram 描述对象内部的动态行为实例步骤1)      为系统创建一个package。2)      创建collaboration

七月南风 2412

《敏捷软件开发》学习笔记:敏捷设计原则

遵循敏捷实践去发现问题;应用设计原则去诊断问题;应用适当的设计模式去解决问题。 软件开发这三个方面件的相互作用就是设计。

七月南风 1024

CppUnit源代码分析总结

TestCase 代表一个测试用例,TestSuit 包含一组测试用例,这两个类使用了Composite Pattern。

七月南风 1103

设计模式学习过程

四月份,又学习了一遍设计模式,对设计模式的理解也更为深入了一些。回顾学习设计模式的过程,大致经历了这么几个阶段。最初听说有设计模式是在2003年,当时买了GoF的书来看。断断续续的看了一些,只了解了一些概念。感觉无法入门,不知道怎么用,不知道为什么这样。去年,看了李建忠讲解的“C#面向对象设计模式纵横谈系列课程”,收获颇深。建立起了设计模式相关概念的总体框架,了解了每个设计模式所解决的问题。最

七月南风 766

关于设计模式的评论

2009年是设计模式出版15年之际,程序员杂志2009.12推出了设计模式15年特别专题。一些关于设计模式的评论摘抄如下:设计模式提供了更高层次的抽象软件开发的的发展史,本质上是程序抽象层次随软件复杂度不断提升。语言、方法、过程、或平台都体现出这个趋势。设计模式也是沿着这个路线出来的。设计模式提供了更高层次的抽象。但是不容易在代码中直观的体现,所以要用UML这样可视化图形描述语言进

七月南风 753

设计模式学习总结

设计模式学习总结2010-5-16  设计模式中的原则核心原则是:开放封闭原则。 实现方法:面向接口编程。对接口的修改封闭,对实现的修改开放。 面向接口编程,遵循的是依赖倒置原则,实现上要求支持里氏替换原则。 对接口的设计要遵循最小接口原则、迪米特法则。  通过组合、聚合复用已有对象的功能。 通过继承隔离变化。 典型模式要点 

七月南风 652

【设计模式精讲】3.统一建模语言(UML)速览

【摘要】:同一段设计,有人用两百条群消息仍说不清,有人用一张图五分钟达成共识。UML 的价值不是把系统画得复杂,而是选择合适视角,准确回答“有哪些角色”“谁依赖谁”“运行时谁先调用谁”“对象经历哪些状态”。本文以 Mermaid 为绘图工具,介绍类图、序列图、状态机图、用例图和活动图,重点讲透前三种。类图部分不再把不同关系硬排成一条强弱链,而是区分使用与整体关系、类型关系,并给出与 C++ 所有权和多态机制一致的代码;随后用订单事件和订单生命周期演示时序与状态表达,最后总结选图方法和常见误区。

码工许师傅 480

面向对象设计中的 UML 类图指南

UML 类图不仅仅是文档;它们是软件设计的关键思维工具。通过掌握类、属性和操作的符号,并理解继承、聚合、组合和依赖之间细微的差异,您可以创建准确反映系统架构的模型。

Warren Lynch 的博客 365

Python里behave和pytest-bdd哪个更适合中大型项目?为什么?

文章浏览阅读36次。behave是独立BDD框架,结构严格、入门简单,步骤全局可用,适合BDD初学者或非技术角色深度参与的轻量项目;但其与pytest生态隔离

2601_96229725的博客 246

宝鸡Java全栈开发培训 Web前端开发 软件测试就业培训班

JA全栈工程师,是指多种技能(包括后端、前端、端、界面设计、产品、设计、运维、等)能利用这些技能完成完整产品的型人才。四大学习特点,让你感受学习路线图的含金量:

2601_96228450的博客 44

基于Python的Web自动化测试PO框架

资源浏览阅读204次。“web_ui_po-master.zip” 是一个基于 Python 语言开发的 Web 自动化测试框架

2601_96229827的博客 219

数据中心BBU备电单元测试架构怎么搭:大倍率放电、负载阶跃、并机均流逐层测

这两年做 AI 算力集群的朋友应该都发现一个事儿:GPU 服务器一满负载跑起来,瞬时吃电流比传统服务器猛太多了,传统 UPS 那套铅酸备电或者直接挂在母线上的方案,越来越顶不住。所以在机房供电架构里,BBU(Battery Backup Unit,机柜级锂电备电单元)开始往上铺——简单说它就是在每个机柜旁边塞一组锂电,市电一掉,它无缝接管给这台柜子的 GPU 服务器供电,撑到柴发起来或者平滑切到集中式备电。

KRASSate的博客 282

软件工程:单元测试

单元测试(Unit Testing)是对软件中的最小可测试单元进行检验的测试方法。所谓"单元",是指软件中不可再分的最小功能模块,通常是一个函数、一个方法或一个类。单元测试的目标是验证每个单元在各种输入条件下的行为是否正确。单元测试概念fill:#333;important;important;fill:none;color:#333;color:#333;important;fill:none;fill:#333;height:1em;单元测试最小测试单元独立验证代码级测试白盒测试函数/方法。

梁辰兴的博客 692

Playwright介绍、特点、小例子还有与传统selenium的区别

Playwright介绍、特点、小例子还有与传统selenium的区别

weixin_44073050的博客 302

Agent开发第10步:异常处理与测试

本文总结Agent开发十步曲的最后一步:异常处理与测试。针对LLM幻觉、工具报错、上下文爆炸等现实问题,提出安全执行、自我修正与系统防御策略。通过SafeToolRegistry实现参数校验与错误回传,使模型可自我调整;引入LLM-as-a-Judge评估机制,结合确定性断言与非确定性评判,有效验证Agent行为。最终构建出稳定、可测、可迭代的智能体框架,为迈向复杂多Agent系统奠定基础。

https://shixuebin.gitee.io/hexo-blog/ 70

从零搭建生产级测试项目:专栏收官实战

测试不是"写完就忘",而是一套可持续演进的工程。

qq_39883927的博客 148

测试用例之正交试验法、功能图法

一个程序的功能说明通常由动态说明和静态说明组成,动态说明描述了输入数据的次序或转移的次序。静态说明描述了输入条件与输出条件之间的对应关系,对于较复杂的程序,由于存在大量的组合情况,因此,仅用静态说明组成的规格说明对于测试来说往往是不够的,必须用动态说明来补充功能说明。功能图方法是用功能图FD形式化地表示程序的功能说明,并机械地生成功能图的测试用例。

huace3740的博客 168

Python自动化测试教程:用Selenium+Pytest搭建测试框架,实现接口与UI自动化

Python自动化测试教程:用Selenium+Pytest搭建测试框架,实现接口与UI自动化引言在当今快速迭代的软件开发环境中,自动化测试已成为保证软件质量的关键环节。

2601_96229558的博客 86
上一篇: eCos学习笔记:安装
下一篇: 最近看了电视剧“士兵突击”
Idleman
博客等级 码龄25年 24粉丝 87原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值