Skip to content

Latest commit

 

History

1,592 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

MBSE Workbench

Plataforma web open source para ingeniería de sistemas basada en Eclipse SysON, Sirius Web y SysML v2.

Qué es

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.

Qué no es

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.

Arquitectura

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/.

Requisitos

  • 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:packages para 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.

Instalación reproducible

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-doctor

No 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-*.jar

Abre http://localhost:8080. Para confirmar el proceso:

curl http://localhost:8080/actuator/health/liveness
curl http://localhost:8080/actuator/health/readiness

Ambos endpoints deben responder {"status":"UP"}. El health agregado puede estar DOWN si Elasticsearch no está levantado; no es necesario para editar modelos localmente.

Desarrollo con VS Code

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.

Pruebas

scripts/npm-ci
npm run build
mvn -B verify --settings settings.xml
jshell scripts/check-coverage.jsh

Las 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.

Contribución

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.

Roadmap

  • 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.

Licencias y origen

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.

About

Open-source MBSE workbench based on Eclipse SysON and SysML v2

Topics

Resources

Code of conduct

Contributing

Security policy

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Used by

Contributors

Languages