01Czym to jest
RevitCDE to Common Data Environment dla projektów Revit.
Wiąże działania użytkownika z konkretnymi obiektami modelu.
Zbudować audytowalną pętlę cyfrową.
02Dla kogo
RevitCDE obsługuje kilka różnych ról.
Koordynator BIM / kierownik projektu
Widok stanu modelu, zatwierdzeń, dokumentów i zadań.
Autor (projektant)
Pracuje w Revit bez ciągłego przełączania kontekstu.
Zatwierdzający
Przegląda przychodzące wnioski wraz z migawką i dokumentami.
Przeglądający
Dostęp tylko do odczytu w zakresie projektu.
Kosztorysant
Baza kosztorysowa, pozycje, koszty poza modelem.
Inżynier planowania
Harmonogram, czynności, procesy czasowe poza modelem.
Administrator
Serwer, użytkownicy, projekty, bazy danych, zasady.
03Problemy, które rozwiązujemy
Luka między Revit a procesami zarządzania
Zatwierdzenia i zadania funkcjonują oddzielnie od modelu.
Wtyczka przechwytuje dane modelu i wiąże wnioski z obiektami.
Brak jednego źródła prawdy
Pliki, e-maile i arkusze kalkulacyjne rozjeżdżają się między wersjami.
Struktura CDE przechowuje projekty, dokumenty, wersje i historię.
Nieprzejrzyste zatwierdzenia
Decyzje giną, a ścieżki są nieformalne.
ApprovalRequest, wieloetapowe ścieżki, zdarzenia tylko-do-dopisywania, niezmienne migawki.
Status modelu niewidoczny w Revit
Projektant nie widzi, co zostało zatwierdzone, co oczekuje, a co odrzucono.
Statusy są odzwierciedlane w Shared Parameters i Extensible Storage.
Brak połączenia 3D, 4D i 5D
Kosztorys i harmonogram działają osobno; prace niepowiązane z modelem wypadają z pola widzenia.
Oddzielne estimate.db i schedule.db dla każdego projektu, a WorkPackage jako centrum 4D/5D.
Praca offline / lokalna bez serwera
Odłączone modele wymagają lokalnej pamięci danych bez utraty możliwości późniejszego połączenia z serwerem.
Tryb lokalny w Extensible Storage, opcjonalna zewnętrzna baza jednoplikowa, a później migracja na serwer.
04Jak to działa
Trzy warstwy tworzą jedną pętlę danych.
- Użytkownik pracuje w Revit. Wtyczka odczytuje elementy modelu, arkusze, widoki, zestawienia i statusy.
- Model jest powiązany z projektem serwerowym. Powiązanie jest zapisane wewnątrz modelu RVT przez Extensible Storage.
- Wtyczka synchronizuje z serwerem elementy projektu, elementy modelu, zmiany, statusy, wnioski, zadania, czaty i dokumenty.
- Serwer przechowuje dane globalne w głównej bazie, a dane tematyczne w bazach per projekt: model_{guid}.db, disciplines.db, estimate.db, schedule.db.
- Panel WWW udostępnia projekty, dokumenty, zatwierdzenia, zadania, czaty i administrację; aktualizacje czasu rzeczywistego przepływają przez SignalR.
- Decyzje zatwierdzających, zmiany statusu, powiązane dokumenty i zadania wracają do Revit i są widoczne we wtyczce oraz parametrach modelu.
W trybie współpracy serwer jest źródłem prawdy; model nadal przechowuje minimalne powiązanie i dane lokalne, dzięki czemu praca przetrwa ponowne uruchomienie Revit oraz okresy offline.
05Co robi
Mapa funkcjonalna w skrócie.
Projekty
Konfiguracja projektu, członkowie, role, standardy, branże, etapy, pakiety.
Model
Powiązanie RVT, synchronizacja, identyfikatory, odcisk cyfrowy, statusy, śledzenie zmian.
Zatwierdzenia
Wnioski, ścieżki, migawki, decyzje, wycofanie, dziennik, czas rzeczywisty.
Dokumenty
Dokumenty CDE, wersje, przesyłanie/pobieranie, SHA-256, WIP→Shared→Published→Archived.
Zadania
Kanban, Gantt, priorytet, statusy, osoby odpowiedzialne, powiązania zadań.
Komunikacja
Czaty projektowe, wiadomości, reakcje, korespondencja, integracja e-mail.
Administracja
Użytkownicy, role, parametry serwera, bazy danych, stan zdrowia, zasady autoryzacji.
4D/5D
Kosztorys, harmonogram, WorkPackage, migawki ilości, EVM/CPM.
Praca lokalna
Extensible Storage, opcjonalna zewnętrzna lokalna baza danych, migracja na serwer.
Lokalizacja
Scentralizowana lokalizacja interfejsu, 22 języki zgodnie z planem rozwoju.
06Scenariusze użycia
Wysyłanie arkusza lub widoku do zatwierdzenia
- Krok 1
- Krok 2
- Krok 3
- Krok 4
- Krok 5
- Krok 6
Dokument od WIP do publikacji
- Krok 1
- Krok 2
- Krok 3
- Krok 4
- Krok 5
Powiązanie modelu, kosztorysu i harmonogramu
- Krok 1
- Krok 2
- Krok 3
- Krok 4
- Krok 5
07Najczęściej zadawane pytania
Pytanie 1
Odpowiedź 1
Pytanie 2
Odpowiedź 2
Pytanie 3
Odpowiedź 3
Pytanie 4
Odpowiedź 4
Pytanie 5
Odpowiedź 5
Pytanie 6
Odpowiedź 6
Pytanie 7
Odpowiedź 7
Pytanie 8
Odpowiedź 8
Pytanie 9
Odpowiedź 9
Pytanie 10
Odpowiedź 10
Poniżej znajduje się warstwa techniczna dla osób, które chcą zobaczyć, jak zbudowano RevitCDE.
08Skład rozwiązania
| Komponent | Przeznaczenie | Technologia |
|---|---|---|
RevitCDE.Addin | Punkt wejścia dodatku Revit, powiązanie modelu i rejestracja poleceń. | C# /.NET Framework, Autodesk Revit API |
RevitCDE.UI | Panele desktopowe, polecenia i interakcja użytkownika wewnątrz Revit. | WPF / MVVM |
RevitCDE.Core | Usługi aplikacyjne, synchronizacja, pamięć lokalna i komunikacja z serwerem. | Usługi C#, klienci HTTP, SQLite |
RevitCDE.Domain | Współdzielone modele domenowe, identyfikatory, statusy i reguły biznesowe. | Biblioteka netstandard2.0 |
RevitCDE.Server | Centralne API, uwierzytelnianie, dane projektowe i usługi integracyjne. | ASP.NET Core 8, EF Core, PostgreSQL |
RevitCDE.Cabinet | Panel WWW dla projektów, dokumentów, zatwierdzeń, zadań, czatów i administracji. | TypeScript / interfejs webowy React |
RevitCDE.Localization | Centralne słowniki tłumaczeń i przełączanie języka dla całego widocznego interfejsu. | Słowniki JSON, współdzielone klucze i18n |
09Tryb lokalny i serwerowy
RevitCDE obsługuje dwa tryby pracy.
Tryb lokalny
Dane są przechowywane w Extensible Storage modelu.
Zewnętrzny magazyn lokalny
Oddzielny plik bazy danych dla każdego modelu RVT.
Tryb serwerowy
Aktywne dane są przechowywane na serwerze.
Reguły migracji z trybu lokalnego na serwer
10Architektura przechowywania danych
| Magazyn | Co przechowuje | Dlaczego działa to właśnie tak |
|---|---|---|
| Główna baza serwera | Użytkownicy, organizacje, projekty, role, ustawienia globalne i dane licencyjne. | Przechowuje dane międzyprojektowe w jednej autorytatywnej bazie serwerowej. |
| model_{guid}.db | Elementy modelu, arkusze, widoki, zestawienia, ilości i powiązania na poziomie modelu. | Duże dane modelowe są izolowane dla każdego modelu RVT ze względu na wydajność i utrzymanie. |
| disciplines.db | Branże projektu, etapy, pakiety i struktura dokumentacji wynikająca ze standardu. | Standardy projektu mogą się rozwijać bez zmiany globalnego schematu. |
| estimate.db | Dokumenty kosztorysowe, pozycje, koszty niezwiązane z modelem, powiązania ilości i przypisania WorkPackage. | Dane kosztowe mają własny cykl życia i muszą uwzględniać pozycje nieobecne w modelu. |
| schedule.db | Działania harmonogramu, zależności, procesy czasowe niezwiązane z modelem i powiązania WorkPackage. | Dane planistyczne wymagają logiki CPM/Gantt i mogą odwoływać się zarówno do danych modelowych, jak i kosztorysowych. |
| Extensible Storage | Minimalne powiązanie modelu, identyfikatory techniczne i lokalne dane awaryjne wewnątrz RVT. | Model zachowuje własną identyfikowalność także poza środowiskiem serwerowym. |
| Zewnętrzna baza lokalna | Opcjonalna jednoplikowa lokalna baza danych dla czatów, zatwierdzeń, dokumentów, zadań i innych danych lokalnych. | Odłączone lub lokalne modele mogą przechowywać bogatszy zakres danych bez nadmiernego rozbudowywania Extensible Storage. |
11Bezpieczeństwo i dostęp
Bezpieczeństwo opiera się na członkostwie, rolach, JWT i trybach zaufania.
12Zatwierdzenia — od strony technicznej
Sformalizowany i powtarzalny proces.
Wyślij do zatwierdzenia
Tworzy wniosek o zatwierdzenie dla wybranej rewizji modelu lub pakietu dokumentów.
Niezmienny migawka
Zapisuje dokładny stan modelu i dokumentów podlegających przeglądowi, aby decyzja była odtwarzalna.
Ścieżki zatwierdzania
Definiuje uporządkowane lub równoległe etapy przeglądu, odpowiedzialnych uczestników i wymagane decyzje.
Zarejestrowane decyzje
Przechowuje zatwierdzenia, odrzucenia, zwroty i komentarze wraz z autorem i znacznikiem czasu.
Historia zdarzeń
Utrzymuje dziennik append-only obejmujący zgłoszenia, przypisania, decyzje i zmiany statusu.
Synchronizacja statusu
Zwraca potwierdzony status zatwierdzenia do obiektów projektu i połączonego procesu Revit.
Aktualizacje w czasie rzeczywistym
Publikuje zmiany zatwierdzeń do podłączonych klientów bez konieczności ręcznego odświeżania strony.
13WorkPackage — centrum 4D/5D
Centralny obiekt łączący model, ilości, kosztorys, harmonogram i postęp.
ModelElement |
Łączy pakiet roboczy z elementami BIM i ich stabilnymi identyfikatorami. |
QuantityItem |
Przechowuje zmierzone ilości oraz źródło, z którego każda ilość została pozyskana. |
EstimateItem |
Łączy ilości z pozycjami kosztorysowymi, stawkami jednostkowymi i obliczonym kosztem. |
WorkPackage |
Działa jako centralny obiekt łączący zakres, model, koszt, harmonogram, odpowiedzialność i dowody. |
ScheduleActivity |
Łączy pakiet roboczy z planowanymi działaniami, datami, zależnościami i danymi ścieżki krytycznej. |
ProgressSnapshot |
Przechowuje rzeczywisty postęp, wskaźniki wartości wypracowanej i fakty okresu sprawozdawczego. |
Bazy projektowe są rozdzielone według obszarów tematycznych.
14Standardy, branże, etapy, pakiety
Standard projektu określa formaty dokumentacji, kosztorysu i harmonogramu.
ProjectStandard
Definiuje aktywne reguły projektu, konwencje nazewnictwa i wymaganą strukturę informacji.
Branża
Utrzymuje katalog branż projektu i odpowiedzialności przypisane do poszczególnych branż.
PackageType
Definiuje wielokrotnego użytku struktury pakietów dla prac projektowych, zakupowych i budowlanych.
ProjectStage
Steruje etapami projektu, przejściami między etapami i zakresem danych wymaganych na każdym etapie.
ProjectRole
Definiuje odpowiedzialność, uprawnienia i kompetencje zatwierdzające w projekcie.
StandardPreset
Stosuje wielokrotnego użytku zestaw standardów, branż, etapów, ról i typów pakietów.
15REST API — główne grupy
REST API według obszaru tematycznego, uwierzytelniane JWT.
-
`/api/auth/*`· Uwierzytelnianie, sesje konta, odzyskiwanie hasła i tokeny dostępu. -
`/api/approvals/*`· Wnioski o zatwierdzenie, ścieżki, decyzje, komentarze i zmiany statusu. -
`/api/cde/*`· Projekty, modele, dokumenty, zagadnienia i współdzielone dane projektowe. -
`/api/chats/*`· Rozmowy projektowe, uczestnicy, wiadomości i załączniki. -
`/api/tasks/*`· Zadania, osoby odpowiedzialne, terminy, priorytety i stany realizacji. -
`/api/standards/*`· Standardy projektu, branże, etapy, role i presety pakietów. -
`/api/45d/*`· Pakiety robocze, ilości, kosztorysy, działania harmonogramu i postęp. -
`/api/admin/*`· Administracja, konfiguracja, diagnostyka i kontrolowane operacje utrzymaniowe.
16Słownik pojęć
CDE- Common Data Environment — kontrolowana przestrzeń dla informacji projektowych, komunikacji i decyzji.
Extensible Storage- Mechanizm Revit do przechowywania ustrukturyzowanych danych aplikacji wewnątrz modelu.
Parametry współdzielone- Parametry Revit współdzielone między projektami i rodzinami za pomocą wspólnego pliku definicji.
ProjectElement- Rekord po stronie projektu reprezentujący element BIM poza dokumentem Revit.
ModelElement- Stabilne odwołanie do elementu w określonym modelu i konkretnej rewizji modelu.
Migawka- Niezmienny zapis dokładnego stanu danych projektowych użytego do przeglądu lub zatwierdzenia.
ApprovalRequest- Formalny wniosek kierujący określony zakres przez ścieżkę zatwierdzenia.
WorkPackage- Centralny obiekt 4D/5D łączący zakres, ilości, koszty, harmonogram i odpowiedzialność.
EVM- Earned Value Management — pomiar postępu z wykorzystaniem wartości planowanej, wartości wypracowanej i kosztu rzeczywistego.
CPM- Critical Path Method — analiza harmonogramu oparta na zależnościach między działaniami i dostępnym zapasie czasu.
17Co planujemy dalej
Obecna implementacja ma działający rdzeń; poniżej pokazujemy, co rozwijamy w kolejnych krokach.
Rozszerzona lokalizacja
Pełny przegląd terminologii i słownictwa branżowego dla każdej obsługiwanej lokalizacji.
Przepływy pracy dokumentów
Wersjonowane rejestry dokumentów, przekazania, pakiety przeglądowe i łańcuchy dowodowe.
Głębsze 4D/5D
Bardziej szczegółowe planowanie pakietów roboczych, kontrola kosztów, prognozowanie postępu i analiza wartości wypracowanej.
Interoperacyjność BCF
Wymiana zagadnień i punktów widzenia z innymi aplikacjami BIM przez standard BCF.
Koordynacja modeli powiązanych
Koordynacja modeli podłączonych, własności, rewizji i zależności między modelami.
Obserwowalność
Pulpity operacyjne, metryki audytu, diagnostyka i monitoring stanu usług.