đïž FileMaker (Claris) â RAD Desktop/Web pour PME
Type : RAD Desktop/Web âą Cible : PME / Ă©quipes mĂ©tiers (ops, finance, admin, logistique) âą Positionnement : âWinDev simplifiĂ©â (productivitĂ© maximale sur CRUD + workflows simples + reporting). LâADN : construire vite des apps data-centric via layouts, scripts et droits â puis les publier en desktop, mobile et web selon le mode dâhĂ©bergement.
FileMaker â dĂ©finition + promesse
Plateforme low-code âdata-centricâ : tables/relations + layouts UI + scripts + privilĂšges â app prĂȘte rapidement.
RADCRUDPMEArchitecture & déploiement
Clients (Desktop/Mobile/Web) â hĂ©bergement (Server/Cloud). Web = WebDirect ; intĂ©grations = Data API / OData.
Server/CloudWebDirectRESTUltra rapide sur CRUD
Layouts, champs, listes, formulaires, navigation, recherche⊠tu vas trÚs vite, surtout pour apps internes.
Time-to-AppLayoutsFormsCourbe dâapprentissage faible
Approche âmĂ©tier-friendlyâ : on pense en Ă©crans + donnĂ©es + rĂšgles, avant de penser frameworks web complexes.
PMECitizen-devPro-devModÚle de données & relations
SchĂ©ma logique (tables/relations) + âcontextâ par layout. La qualitĂ© du modĂšle dĂ©termine la maintenabilitĂ©.
SchemaRelationsContextScripts & logique métier
Automatisation : validations, workflows, imports, notifications, calculs. Discipline : âdomain scriptsâ centralisĂ©s.
AutomationWorkflowsRulesWebDirect (Web)
Publier une app FileMaker sur le web via navigateur, hébergée sur Server/Cloud. Pratique pour portails internes.
BrowserDeploymentPMEIntégrations (REST / OData / Admin API)
Data API (REST JSON) pour lire/Ă©crire ; OData pour clients âdataâ ; Admin API pour automatiser lâadmin.
Data APIODataAdmin APISécurité (vraie)
Auth (AD/OAuth), privilege sets (RBAC), chiffrement au repos, SSL/TLS, durcissement Server/Cloud.
RBACOAuth/ADEncryptOps / exploitation
Backups, upgrades, monitoring, SSL, disponibilité, gouvernance des accÚs. Cloud vs self-hosted.
RunbookBackupUpgradesALM / gouvernance
Versioning, environnements, releases, âno-touch-prodâ, standards de scripts/layouts. RĂ©duire lâeffet âbricolageâ.
DEV/TEST/PRODStandardsQualityUse-cases & anti-usecases
Quand FileMaker est imbattable (PME) + quand il faut benchmarker (produit public, UX extrĂȘme, contraintes web hard).
Back-officePortalsBenchmarkTradeoffs (réalistes)
Vitesse vs architecture ; web âquasi appâ via WebDirect vs web âframework natifâ ; lock-in plateforme.
TradeoffsLock-inScalingQuickstart (POC 5 jours)
Plan âPMEâ : modĂšle data, 6 layouts, droits, scripts, publication web, intĂ©gration REST, runbook.
POCCRUDDeploymentCheat-sheet opérationnel
Les rĂšgles âanti-galĂšreâ : structure des scripts, droits, web, intĂ©grations, release, sauvegardes.
ChecklistRunbookStandardsMental model (Ă retenir)
Pourquoi les PME adorent
| Facteur | Effet | Ce que ça remplace |
|---|---|---|
| Time-to-CRUD | app utilisable trĂšs vite | Excel/Access + scripts âmaisonâ |
| Ăvolutif | on ajoute Ă©crans/rĂšgles progressivement | dĂ©veloppement web âfull stackâ lourd |
| Métier-friendly | collab métier/dev plus fluide | spécifications longues et rigides |
Le positionnement âWinDev simplifiĂ©â (trĂšs concret)
Si WinDev = RAD puissant + riche + large spectre,
FileMaker = RAD orienté "PME & data apps" :
- On va trĂšs vite sur CRUD + workflows simples
- UX correcte sans front web complexe
- Publication Desktop/Mobile/Web (WebDirect)
- Intégrations via REST/OData si besoin
FileMaker est âredoutableâ quand le besoin = outil mĂ©tier internalisĂ© (ops, admin, suivi, planning, stock), pas quand tu veux un produit web public ultra sur-mesure.
Décision rapide (go / no-go)
- Go si : PME, besoins CRUD + reporting + workflows, time-to-market prioritaire.
- Benchmark si : UX web extrĂȘme, contraintes API-first strictes, volumĂ©trie trĂšs Ă©levĂ©e, microservices imposĂ©s.
DĂ©finition âengineeringâ
FileMaker (Claris) est une plateforme RAD/low-code pour construire des apps data-centric : on dĂ©finit le modĂšle de donnĂ©es, on construit des layouts (Ă©crans), on automatise via scripts, et on gouverne par privilege sets. Ensuite on dĂ©ploie en desktop/mobile/web selon lâhĂ©bergement.
Les âbriquesâ Ă connaĂźtre
| Brique | RÎle | Erreur fréquente |
|---|---|---|
| Tables/Relations | source de vĂ©ritĂ© | relations âmagiquesâ non documentĂ©es |
| Layouts | UX + contexte de données | tout mettre sur 1 écran énorme |
| Scripts | logique & automatisation | copier/coller de scripts partout |
| Privilege sets | sécurité RBAC | dépÎts en prod sans durcissement |
| Hosting | publier & partager | pas de runbook (backup/SSL) |
Promesse (bien cadrée)
Promesse FileMaker :
- Un outil métier utilisable trÚs vite (CRUD + recherche + reporting)
- Un cycle âitĂ©ratifâ : on ajoute tables/Ă©crans/rĂšgles au fil de lâeau
- Une publication multi-canal : desktop, mobile, web (selon hosting)
- Une intégration possible avec le SI (REST/OData) quand nécessaire
Condition de réussite :
- modĂšle data propre
- scripts centralisés (pas spaghetti)
- droits (privilege sets) cadrés
- exploitation (backup/SSL/upgrade) maßtrisée
Sans gouvernance, FileMaker peut devenir un âExcel++â : rapide⊠puis fragile.
Forces (PME / SI interne)
| Force | Pourquoi | Résultat |
|---|---|---|
| Time-to-CRUD | layouts + champs + navigation | outil interne prĂȘt en jours |
| Courbe faible | concepts proches du métier | collab métier/dev fluide |
| ItĂ©ratif | on ajoute sans âbig bangâ | ROI rapide |
| Multi-canal | desktop/mobile/web | adoption terrain |
| Intégrable | REST/OData + admin API | connexion au SI |
Ce que tu construis âtrĂšs viteâ
- Base ârĂ©fĂ©rentielâ (clients, produits, fournisseurs)
- Gestion dâinterventions (tickets, statut, planning)
- Suivi stock / inventaire (entrées/sorties)
- Back-office administratif (demandes, validations)
- Reporting simple (listes, exports)
- Portail interne web (WebDirect) pour consultation/édition
Limites / risques
- Web : WebDirect est pratique, mais ce nâest pas âun framework web natifâ (UX trĂšs custom = coĂ»t â).
- Spaghetti scripts : trop de scripts dispersés = maintenance difficile.
- ModÚle data : relations mal pensées = bugs logiques + lenteur + incohérences.
- Ops : sans runbook (backup/SSL/upgrades), tu crées un risque prod.
- Lock-in : modĂšle et runtime liĂ©s Ă la plateforme (Ă gĂ©rer par contrats dâintĂ©gration).
Anti-pattern #1 (classique PME)
SymptĂŽmes :
- 1 fichier unique gigantesque
- scripts copiĂ©s/collĂ©s (pas de âservicesâ)
- droits trop larges
- pas dâenvironnements (dev=prod)
- backups non testés
Résultat :
- bug critique = panique
- impossible de refactor
RemĂšde
- structurer : "domain scripts" + conventions de nommage
- privilege sets stricts
- dev/test/prod (au minimum)
- runbook : backup/restore drill + SSL + upgrade plan
Décision (checklist)
| Question | Si âOuiâ | Sinon |
|---|---|---|
| App interne PME data-centric ? | FileMaker trĂšs bon choix | benchmark |
| Time-to-market prioritaire ? | ROI rapide | web custom possible mais + cher |
| Web principalement ? | WebDirect OK selon besoin | si UX extrĂȘme â framework web |
| SI intĂ©grations ? | REST/OData possibles | API-first strict â architecture dĂ©diĂ©e |
Topologie âtypiqueâ
[Clients]
- Desktop (FileMaker Pro)
- Mobile (FileMaker Go)
- Web (WebDirect via navigateur)
|
v
[Hosting]
- FileMaker Server (self-hosted)
ou
- FileMaker Cloud (managed)
Le choix clĂ© : âoĂč on hĂ©bergeâ (Server/Cloud) et âcomment on accĂšdeâ (desktop/mobile/web).
Pourquoi ça marche en PME
- Tu peux dĂ©marrer en petit (Ă©quipe) puis ouvrir Ă plus dâutilisateurs via hosting.
- Tu gardes une UX âappâ en desktop et tu ajoutes le web si besoin (WebDirect).
- Tu ajoutes des intégrations SI quand le besoin arrive (REST/OData).
Risque majeur : architecture âsans garde-fousâ
- pas de séparation environnements
- pas de runbook
- pas de gouvernance scripts/droits
=> la prod devient fragile
WebDirect â âFileMaker dans un navigateurâ
WebDirect permet dâinteragir avec une app FileMaker via navigateur,
en hĂ©bergeant lâapp sur FileMaker Server ou FileMaker Cloud.
Bon pour :
- portails internes
- consultation/Ă©dition âsimpleâ
- déploiement rapide sans coder un site web
Ă cadrer :
- UX trĂšs custom = efforts CSS/JS/archi â
- dimensionnement serveur + SSL + monitoring
Data API (REST JSON) â lecture/Ă©criture
Use-cases :
- synchroniser avec un SI (ERP/CRM)
- exposer des opérations à une app web externe
- automatiser import/export
Principe :
- token auth
- opérations CRUD + find
- échanges JSON via HTTP(S)
OData + Admin API (automation)
OData :
- accĂšs âdata-centricâ (clients BI / outils data)
Admin API :
- automatiser tĂąches dâadmin (selon hosting)
- utile pour ops / provisioning / monitoring
Cloud vs self-hosted (PME)
| Option | Avantages | Inconvénients |
|---|---|---|
| Cloud | moins dâops, rapide | moins de contrĂŽle infra |
| Self-hosted | contrÎle, intégrations réseau | runbook obligatoire (backup/SSL/upgrade) |
Le âpipelineâ FileMaker (PME)
1) Créer tables + champs
2) Créer relations (si nécessaire)
3) Construire layouts :
- Liste (list view)
- Fiche (detail/form)
- Recherche / filtre
4) Ajouter scripts :
- validations
- navigation
- actions (create/update/close)
5) Définir droits (privilege sets)
6) Publier (Server/Cloud) + Web (WebDirect)
Le temps gagnĂ© vient du fait que lâUI âdata appâ est nativement prĂ©vue.
Quality gates (sinon tu paies plus tard)
- Conventions : noms de tables/champs/scripts/layouts.
- Scripts centralisĂ©s : Ă©viter â20 scripts presque identiquesâ.
- Droits : RBAC strict dĂšs le dĂ©part (ne pas âouvrir toutâ).
- Runbook : sauvegarde/restauration testées.
Astuce :
- séparer "UI scripts" (navigation)
et "domain scripts" (rĂšgles)
=> maintenabilité ++
Onboarding en 3 couches
| Couche | Objectif | Livrable | Durée |
|---|---|---|---|
| 1) MĂ©tier | dĂ©finir les Ă©crans & rĂšgles | workflow + maquettes | 1â2 jours |
| 2) Data | modĂšle propre | tables/relations + dictionnaire | 1â2 jours |
| 3) Build | layouts + scripts + droits | POC utilisable | 2â5 jours |
Standard PME (simple et efficace)
- 1 layout "LIST" par entité
- 1 layout "FORM" par entité
- 1 script "SAVE" (domain) par entité
- 1 script "NAV" (UI) commun
- privilege sets : ADMIN / MANAGER / USER / READONLY
- exports & backups planifiés
RĂšgle #1 : le modĂšle data prime sur lâUI
- champs typés + validations
- clés stables (ID)
- relations explicites (pas "magiques")
- dictionnaire de données (document)
Si ton schéma est propre, tout le reste devient simple (scripts, droits, layouts).
Le âcontexteâ des layouts
Un layout a un contexte (table/occurrence).
Conséquence :
- un champ affiché dépend du contexte
- les scripts doivent ĂȘtre disciplinĂ©s
- sinon : bugs logiques âincomprĂ©hensiblesâ
Patterns PME (pratiques)
Pattern 1 â Master/Detail
Client (master)
-> Commandes (detail)
-> Factures (detail)
Layouts :
- CLIENT_LIST / CLIENT_FORM
- CMD_LIST (portal) / CMD_FORM
Scripts :
- client.save
- cmd.save
Pattern 2 â Workflow par statuts
Ticket.status :
- NEW -> IN_PROGRESS -> DONE -> ARCHIVED
RĂšgles :
- transitions autorisées selon rÎle
- audit : qui a changé quoi
- validations : champs requis selon statut
Quality gates (anti-futur chaos)
- Conventions : tables (T_), layouts (L_), scripts (S_), privilege sets (PS_).
- Ăviter les dĂ©pendances implicites : documenter relations & scripts.
- Refactoring : 1 fois/sem (scripts communs, duplication).
- Tests : scĂ©narios mĂ©tiers âgolden pathâ + droits.
Architecture de scripts (recommandée)
1) Domain scripts (source de vérité)
- entity.save
- entity.validate
- entity.transition_status
2) UI scripts (navigation/UX)
- nav.open_form
- nav.go_list
- ui.toast
3) Integration scripts (imports/exports/API)
- sync.pull_from_api
- sync.push_to_api
SĂ©parer âmĂ©tierâ et âUIâ = le truc le plus rentable sur 12 mois.
Workflows (statuts + validations)
Approche :
- Table: T_TICKET (status, owner, due_date, ...)
- Script: ticket.transition(new_status)
- check rights
- check required fields
- write audit
- apply state change
- Layouts: list + form + admin
Contrat dâerreurs (simple PME)
- user_message : message affichable
- tech_message : logs
- code : VALIDATION | AUTH | CONFLICT | TECH
- corr_id : pour support (si possible)
But :
- support plus rapide
- moins de âbugs fantĂŽmesâ
Ce que WebDirect apporte
- AccÚs via navigateur à une app FileMaker hébergée
- ExpĂ©rience proche dâune âappâ (pas juste des pages HTML)
- Déploiement rapide pour utilisateurs internes/externes contrÎlés
WebDirect = accĂ©lĂ©rateur : tu nâĂ©cris pas un site web, tu publies une âapp dataâ.
Bonnes pratiques (PME)
- PrĂ©voir des layouts âweb-friendlyâ (simplicitĂ©, champs visibles, navigation claire).
- Limiter les écrans trop chargés.
- Soigner lâhĂ©bergement (SSL, dimensionnement, monitoring).
- Tester : scénarios métiers + droits + performance.
Data API (REST JSON) â lâessentiel
- API REST pour accéder aux bases hébergées (Server/Cloud)
- opérations : create/update/delete/get/find
- auth par token
- payloads JSON
Use-cases :
- synchroniser ERP/CRM
- app web externe (front séparé)
- automatisations (imports batch)
Conseils dâarchitecture
- DĂ©finir un âcontratâ : endpoints/objets/erreurs.
- Limiter la surface dâĂ©criture (droits + validations).
- Journaliser les opérations critiques (audit).
- Prévoir rate limiting cÎté infra si exposé.
OData â pourquoi câest utile
OData sert souvent Ă brancher :
- des outils data/BI
- des clients qui parlent OData nativement
Idéal quand tu veux "consommer de la donnée"
plutÎt que coder une intégration sur mesure.
Admin API â automatiser lâadministration
Admin API (REST) :
- tĂąches dâadministration FileMaker Server/Cloud (selon pĂ©rimĂštre)
- utile pour ops : provisioning, scripts, monitoring, intégrations outillage
Patterns dâintĂ©gration (PME)
Pattern 1 â Sync âpullâ
- une tùche planifiée récupÚre données ERP
- écrit/merge dans FileMaker
- journalise
- alerte si conflit
Pattern 2 â UI FileMaker + portail web externe
- FileMaker = back-office (ops)
- Web externe = front public
- Data API = contrat REST
- gouvernance : RBAC + audit + rate limit
Carte sĂ©curitĂ© (PME âcleanâ)
Authentication (options)
Approches (selon plateforme) :
- comptes internes
- intégration annuaire (ex: AD) ou fournisseurs OAuth
- Cloud : accÚs géré via comptes/identités selon politique
But :
- simplifier lâaccĂšs
- centraliser la gestion des identités
Privilege sets (RBAC) â indispensable
Exemple PME :
- PS_ADMIN : admin + maintenance
- PS_MANAGER : lecture/écriture + validations
- PS_USER : écriture limitée
- PS_READONLY : consultation
RĂšgle :
- tout ce qui est sensible est interdit par défaut
- on ouvre seulement ce qui est requis
Chiffrement (au repos / en transit)
Objectif :
- protéger les fichiers/bases sur disque (encryption at rest)
- protéger les échanges réseau (TLS/SSL)
Ă cadrer :
- politiques de clés
- accĂšs admin
- backups chiffrés si requis
SSL/TLS â non nĂ©gociable si accĂšs rĂ©seau
Bonnes pratiques :
- activer SSL/TLS
- certificat valide (ou Let's Encrypt selon setup)
- forcer TLS sur accĂšs web / API
- documenter rotation/renouvellement
Checklist sĂ©curitĂ© âprodâ
- RBAC : privilege sets définis + testés.
- Auth : annuaire/OAuth si besoin, sinon comptes robustes.
- Chiffrement : au repos + en transit selon exigences.
- SSL/TLS activé + certificats gérés.
- Backups planifiés + tests de restauration.
- API : tokens + droits + audit + rate limiting si exposé.
- Upgrades : plan et fenĂȘtre de maintenance.
Runbook minimal (Ă avoir)
- backups : fréquence + rétention
- restore drill : test mensuel (au minimum)
- upgrades : stratégie (dev/test/prod)
- SSL : installation + renouvellement
- monitoring : disponibilité + erreurs + perf
- gestion accĂšs admin
Le plus gros risque PME, ce nâest pas le dev : câest lâexploitation sans discipline.
Cloud vs self-host (ops)
| Point | Cloud | Self-host |
|---|---|---|
| Maintenance | réduite | à gérer |
| SSL | souvent simplifié | runbook obligatoire |
| Backups | cadrés | à concevoir/tester |
| ContrĂŽle | moins | plus |
DEV / TEST / PROD (mĂȘme en PME)
Minimum viable :
- DEV : construction + refactor
- TEST : validation métier + droits + perf de base
- PROD : stabilité + backups + monitoring
RĂšgle :
- jamais dâĂ©dition âdirecteâ en prod
Standards (anti-spaghetti)
Conventions : - Tables : T_* - Layouts : L__LIST / L_ _FORM - Scripts domain : S_ _SAVE / S_ _VALIDATE - Scripts UI : S_UI_* - Privilege sets : PS_ADMIN / PS_MANAGER / PS_USER / PS_READONLY Quality gates : - revue scripts (duplications) - test droits - test restore
Release simple (PME)
1) figer version DEV
2) tester (scénarios + droits)
3) sauvegarde complĂšte PROD
4) déployer
5) smoke tests
6) monitoring post-release
Use-cases (PME)
- Outils internes : suivi dossiers, logistique, planning, interventions, inventaires.
- Back-office admin : demandes/validations, référentiels, reporting basique.
- Portails internes (WebDirect) : consultation + édition contrÎlée.
- Prototypage rapide dâun processus mĂ©tier avant industrialisation.
Anti-usecases / benchmark
- Produit web public avec UX âpixel-perfectâ complexe + SEO + front trĂšs custom.
- API-first strict : microservices, contrats trÚs industrialisés (possible, mais prévoir architecture dédiée).
- VolumĂ©trie extrĂȘme + exigences de performance web natives (faire un POC perf).
RĂšgle : si âoutil mĂ©tier PMEâ, FileMaker est souvent un choix gagnant.
Tradeoffs (trĂšs concrets)
| Choix | Gains | Coûts | Mitigation |
|---|---|---|---|
| Low-code rapide | time-to-app | risque spaghetti | standards + scripts centralisés |
| WebDirect | web sans réécrire | UX trĂšs custom = coĂ»t â | layouts web-friendly + POC |
| Plateforme | productivité | lock-in | contrats REST/OData + découplage |
Plan 5 jours (dense et efficace)
| Jour | Objectif | Livrable | CritĂšre |
|---|---|---|---|
| J1 | ModĂšle data | tables + relations + dictionnaire | cohĂ©rence âmĂ©tierâ |
| J2 | Layouts CRUD | 6 layouts (LIST/FORM x 3 entités) | UX claire |
| J3 | Scripts domain | save/validate + workflow statuts | rÚgles centralisées |
| J4 | Sécurité + Web | privilege sets + WebDirect | droit & accÚs ok |
| J5 | API + Ops | Data API POC + runbook backup/SSL | prod-like minimal |
Smoke tests (PME)
- créer/modifier/supprimer (3 entités)
- workflow : transitions + droits
- WebDirect : accÚs + édition simple
- backups : déclencher + restaurer sur un environnement de test
- API : read + write sur 1 objet, audit minimal
20 rĂšgles âprodâ
- ModÚle data propre (ID, validations, relations documentées).
- Layouts simples (pas âmonolithesâ).
- Scripts centralisés (domain vs UI).
- Conventions de nommage strictes.
- Privilege sets (RBAC) dÚs le début.
- Ne jamais accepter âadmin pour tout le mondeâ.
- DEV/TEST/PROD mĂȘme en PME.
- Pas dâĂ©dition directe en PROD.
- Backups planifiés + restore drills (testés).
- SSL/TLS activé pour accÚs réseau.
- WebDirect : layouts web-friendly, charge contrÎlée.
- API : limiter surface dâĂ©criture, auditer.
- Rate limit si API exposée.
- Plan dâupgrade + rollback.
- Monitoring disponibilité + erreurs + perf de base.
- Audit des changements de statuts (workflows).
- Refactor scripts hebdo (duplications).
- Documentation légÚre : dictionnaire data + runbook.
- Support : corrId/erreurs standardisées si possible.
- POC perf si volumétrie importante.
Résumé (à coller dans IDEO-Lab)
FileMaker (Claris) = RAD Desktop/Web pour PME
- ultra rapide sur CRUD + outils internes
- apprentissage facile, approche "écrans + données + rÚgles"
- web via WebDirect (hosting Server/Cloud)
- intégrations via Data API (REST JSON), OData, Admin API
- succÚs = modÚle data + scripts centralisés + RBAC + runbook ops
