Plataforma web open source para ingeniería de sistemas basada en Eclipse SysON, Sirius Web y SysML v2.
MBSE Workbench conserva el modelador SysON y añade una capa de trabajo para proyectos MBSE: resumen del proyecto, requisitos, trazabilidad y un ejemplo reproducible de sistema sonar. PostgreSQL es la persistencia nativa de la aplicación; Docker se utiliza únicamente para servicios auxiliares de pruebas.
No es una implementación independiente ni completa de SysML v2. El metamodelo, la semántica, los editores y el intercambio textual pertenecen a Eclipse SysON y a sus dependencias oficiales. Las extensiones del Workbench consumen esas APIs y objetos reales, sin crear un metamodelo paralelo.
MBSE Workbench
↓
Eclipse SysON
↓
Eclipse Sirius Web
↓
SysML v2 / KerML
↓
PostgreSQL
La arquitectura comprobada, los puntos de extensión y las decisiones están en
docs/ARCHITECTURE.md,
docs/UPSTREAM_ARCHITECTURE.md y
docs/adr/.
- Git.
- Java 21.
- Maven 3.6.3 o posterior.
- Node 22.16.0 y npm 10.9.2.
- PostgreSQL 15 o 16 en
localhost:5432. - GitHub CLI autenticado con
read:packagespara dependencias de Sirius Web alojadas en GitHub Packages. - Docker Desktop solo para pruebas upstream que usan Testcontainers.
El bootstrap portable está validado en macOS Intel. En otras plataformas, instala las versiones anteriores con el gestor local y usa los mismos comandos de diagnóstico/build.
git clone https://github.com/hightechlog/mbse-workbench.git
cd mbse-workbench
scripts/bootstrap
. scripts/toolchain-env
gh auth login --web --scopes read:packages
scripts/setup-postgresql
cp .env.example .env
scripts/dev-doctorNo guardes tokens en .npmrc, settings.xml ni .env. Para instalar y
compilar el frontend, suministra la credencial de GitHub Packages solo durante
el proceso según la documentación de desarrollo del proyecto.
scripts/npm-ci
npm run build
cp -R frontend/syson-frontend/dist/. \
backend/application/syson-application/src/main/resources/static/
mvn -B package --settings settings.xml -DskipTests
set -a; . ./.env; set +a
java -jar backend/application/syson-application/target/syson-application-*.jarAbre http://localhost:8080. Para confirmar el proceso:
curl http://localhost:8080/actuator/health/liveness
curl http://localhost:8080/actuator/health/readinessAmbos endpoints deben responder {"status":"UP"}. El health agregado puede
estar DOWN si Elasticsearch no está levantado; no es necesario para editar
modelos localmente.
code .Instala las extensiones recomendadas cuando VS Code las ofrezca. Cada nueva
terminal debe cargar . scripts/toolchain-env. Ejecuta scripts/dev-doctor
antes de diagnosticar errores de build. Consulta el baseline reproducido y sus
límites conocidos en docs/BASELINE.md.
scripts/npm-ci
npm run build
mvn -B verify --settings settings.xml
jshell scripts/check-coverage.jshLas pruebas de integración requieren Docker Desktop. En equipos con recursos limitados conviene aislar clases de integración o limitar la caché de contextos Spring, como se explica en el baseline.
El flujo normal es: fork/clone, rama corta, commits enfocados, pruebas locales y
pull request. Lee CONTRIBUTING.md antes de modificar código
y UPSTREAM.md antes de sincronizar Eclipse SysON.
- v0.1: baseline, overview, requisitos, trazabilidad, ejemplo sonar, CI y distribución desde código fuente.
- v0.2–v0.4: núcleo MBSE, versionado y documentación de ingeniería.
- v0.5–v0.7: análisis, simulación y colaboración.
- v0.8–v1.0: extensiones/API, asistencia opcional y versión estable.
El detalle está en docs/ROADMAP.md. El alcance actual se
detiene en v0.1.0.
El código heredado de Eclipse SysON mantiene EPL-2.0, avisos y encabezados. Las
bibliotecas estándar SysML v2/KerML incluidas tienen los términos indicados por
upstream. Revisa LICENSE, LICENSE-LGPL,
NOTICE, UPSTREAM.md y
docs/THIRD_PARTY_LICENSES.md.
SysML® es una marca de OMG; consulta sus directrices de uso de marcas.