PageSourceSearch

https://reflektlab.ai/component---src-components-blog-post-tsx-con…us-metier-index-mdx-d10e8a0947a7b1789843.js

js reflektlab.ai collected 2026-10-05 12:30:43 UTC 32,819 bytes, 2 lines download raw bytes

1"use strict";(self.webpackChunkreflektlab_ai=self.webpackChunkreflektlab_ai||[]).push([[4987],{1910:function(e,t,a){a.r(t),a.d(t,{DEFAULT_FOOTER:function(){return A},Head:function(){return P},default:function(){return O},footerFor:function(){return j},pickRelated:function(){return C}});var l=a(8453),n=a(6540);function s(e){const t=Object.assign({p:"p",strong:"strong",ul:"ul",li:"li",a:"a",h2:"h2",ol:"ol",img:"img",em:"em"},(0,l.RP)(),e.components);return n.createElement(n.Fragment,null,n.createElement(t.p,null,"Modeling a business process means describing it precisely enough that everyone understands it the same way: the steps, the decisions, who does what, and what triggers the next step. It's the first rung of any process digitization effort. But a diagram never ran a company. Here's a simple method, a concrete commented example, and — most importantly — what happens once the diagram is done."),"\n",n.createElement(t.p,null,n.createElement(t.strong,null,"Contents")),"\n",n.createElement(t.ul,null,"\n",n.createElement(t.li,null,n.createElement(t.a,{href:"#what-is-business-process-modeling"},"What is business process modeling?")),"\n",n.createElement(t.li,null,n.createElement(t.a,{href:"#how-do-you-model-a-business-process"},"How do you model a business process?")),"\n",n.createElement(t.li,null,n.createElement(t.a,{href:"#what-are-the-different-types-of-business-process"},"What are the different types of business process?")),"\n",n.createElement(t.li,null,n.createElement(t.a,{href:"#a-business-process-modeling-example"},"A business process modeling example")),"\n",n.createElement(t.li,null,n.createElement(t.a,{href:"#what-is-the-best-tool-for-modeling-processes"},"What is the best tool for modeling processes?")),"\n",n.createElement(t.li,null,n.createElement(t.a,{href:"#what-does-a-business-process-analyst-do"},"What does a business process analyst do?")),"\n",n.createElement(t.li,null,n.createElement(t.a,{href:"#from-the-diagram-to-the-app-that-runs"},"From the diagram to the app that runs")),"\n",n.createElement(t.li,null,n.createElement(t.a,{href:"#frequently-asked-questions"},"Frequently asked questions")),"\n"),"\n",n.createElement(t.h2,{id:"what-is-business-process-modeling"},"What is business process modeling?"),"\n",n.createElement(t.p,null,"A business process is a sequence of steps that turns an input into a result: an order that becomes a delivery, a quote that becomes a contract, an invoice that becomes a payment. Business process modeling means representing that flow (the steps, the actors, the decisions, the exceptions) in a clear, shared way."),"\n",n.createElement(t.p,null,"The goal isn't the pretty diagram. It's getting everyone to agree on how the work actually happens, before trying to improve or automate it. A poorly understood process that you computerize is still a bad process — just faster."),"\n",n.createElement(t.h2,{id:"how-do-you-model-a-business-process"},"How do you model a business process?"),"\n",n.createElement(t.p,null,"In four steps, in this order."),"\n",n.createElement(t.ol,null,"\n",n.createElement(t.li,null,n.createElement(t.strong,null,"Map the real flow, not the ideal one.")," Follow a real request end to end and note every step as it happens today, including the spreadsheets, emails, and phone calls. That's usually where you discover the official process and the real process no longer have much in common."),"\n",n.createElement(t.li,null,n.createElement(t.strong,null,"Name the actors and the decisions.")," For each step: who acts, on what information, and which decision branches the flow. A missed decision point is an exception that blows up in your face later."),"\n",n.createElement(t.li,null,n.createElement(t.strong,null,"Spot the friction and the exceptions.")," Where does work wait? Where is the same data re-typed twice? Which edge cases break the tidy linear diagram? Exceptions aren't details — they decide whether an automation will hold up."),"\n",n.createElement(t.li,null,n.createElement(t.strong,null,"Decide what should be automated, and what shouldn't.")," Not everything belongs on autopilot. A step of human judgment often beats a rigid rule. Good software suggests and flags; it doesn't take the pen out of the team's hand."),"\n"),"\n",n.createElement(t.p,null,"One piece of field advice: model with the people who do the work, not only with the people who describe it. The gap between the two accounts is exactly the information you're after."),"\n",n.createElement(t.h2,{id:"what-are-the-different-types-of-business-process"},"What are the different types of business process?"),"\n",n.createElement(t.p,null,"Three families are usually distinguished, and the split matters because they aren't steered the same way."),"\n",n.createElement(t.ul,null,"\n",n.createElement(t.li,null,n.createElement(t.strong,null,"Core processes")," (or operational) directly produce the value sold to the customer: taking an order, manufacturing, delivering, invoicing. These suffer most from spreadsheets, and their automation pays back fastest."),"\n",n.createElement(t.li,null,n.createElement(t.strong,null,"Support processes")," make the previous ones possible without being visible to the customer: purchasing, hiring, IT, maintenance. Often ski
1pped at modeling time, they are nonetheless the source of a good share of the waiting time."),"\n",n.createElement(t.li,null,n.createElement(t.strong,null,"Management processes")," exist to decide and to control: setting objectives, performance reviews, risk management. They consume data produced by the other two families, which is why reliable reporting depends first on clean operational processes."),"\n"),"\n",n.createElement(t.p,null,"A single department usually spans all three. Modeling a core process while ignoring the support process that feeds it is the most common way to produce a diagram that looks right and doesn't hold."),"\n",n.createElement(t.h2,{id:"a-business-process-modeling-example"},"A business process modeling example"),"\n",n.createElement(t.p,null,"Take a case we know well: a wine estate's annual pricing. It looks simple from a distance. Once modeled, it looks like this."),"\n",n.createElement(t.img,{src:"/images/business-process-modeling-example-pricing.svg",alt:"Business process modeling example: a wine estate's annual pricing, with a decision gateway on the distribution channel and an exception path for out-of-stock cuvées"}),"\n",n.createElement(t.p,null,"Each cuvée is broken out by format, delivery zone, and channel (wholesale or delivered), then split again per distribution agent, with each agent seeing only their own producers. A decision (does this agent cover this zone?) branches the flow at every node, and an exception (a cuvée that's out of stock) has to be hidden without being deleted."),"\n",n.createElement(t.p,null,"The diagram says three useful things the spoken description hid. There's a ",n.createElement(t.strong,null,"decision gateway")," mid-flow, so two sets of pricing rules to maintain. There's ",n.createElement(t.strong,null,"partitioning")," at the end of the journey, so an access-rights constraint and not just a layout one. And there's an ",n.createElement(t.strong,null,"exception")," that can't be handled by deleting a row, so a need for history."),"\n",n.createElement(t.p,null,"On a whiteboard, that process fits on one page. Lived inside a 90-tab Excel workbook, it swallowed weeks every January. The modeling did one thing: it made visible what the spreadsheet hid, so it could finally be replaced. That's exactly what we describe in our ",n.createElement(t.a,{href:"/case-studies/wine-estate-pricing-app/"},"case study on that pricing app"),"."),"\n",n.createElement(t.h2,{id:"what-is-the-best-tool-for-modeling-processes"},"What is the best tool for modeling processes?"),"\n",n.createElement(t.p,null,"The honest answer: the one your team will actually re-read. Most teams start with a process modeling tool (a BPMN app, an online whiteboard, or even Excel) and the choice matters less than the time spent with the right people around the diagram."),"\n",n.createElement(t.p,null,"BPMN 2.0 does have a real advantage: a standard vocabulary (tasks, gateways, events) that everyone can read, including the engineering team that will implement it afterward. It earns its keep as soon as the process has to be handed over or discussed across several months. For a first exploratory pass, a whiteboard and some photos are enough, and faster."),"\n",n.createElement(t.p,null,"But the tool matters less than you'd think. A perfect BPMN diagram that stays in a PDF has changed no one's day. The diagram is a way to reach agreement, not a deliverable that, on its own, saves time. The real question isn't \"which tool do we draw the process with,\" but \"what's going to run it tomorrow morning.\""),"\n",n.createElement(t.h2,{id:"what-does-a-business-process-analyst-do"},"What does a business process analyst do?"),"\n",n.createElement(t.p,null,"A business process analyst bridges the teams that do the work and the teams that build the tools. In practice: running the workshops, mapping the real flow, flushing out the exceptions nobody volunteers, quantifying the friction (waiting time, double entry, error rate), and proposing a target process along with what should stay manual."),"\n",n.createElement(t.p,null,"In a large organization that's a full-time role. In a smaller company it's usually carried by whoever knows the business best, with outside help for method and write-up. It's the role we play during the scoping phase, and it has a limit worth stating: an analyst who delivers a diagram and leaves has done half the job. The value of the role comes from it continuing into the tool."),"\n",n.createElement(t.h2,{id:"from-the-diagram-to-the-app-that-runs"},"From the diagram to the app that runs"),"\n",n.createElement(t.p,null,"That's where our difference lies. We don't sell a modeling tool. We model the process with you, then build the custom application that actually runs 
1it: a real data model, the business rules in code, the exceptions handled, and an interface where the team works instead of copying cells around."),"\n",n.createElement(t.p,null,"The diagram says what should happen. The app makes sure it does: it applies the rules, flags the drift, keeps the history, and leaves human judgment where it belongs. That's precisely what we do when we replace a fragile spreadsheet or an aging ERP with ",n.createElement(t.a,{href:"/solutions/custom-erp-tooling/"},"custom business software"),", wired into your existing systems and built around your ",n.createElement(t.a,{href:"/data/"},"real data"),"."),"\n",n.createElement(t.p,null,"One clarification, because it saves disappointment: not every modeled process deserves an application. If the process runs three times a year, fits on one sheet, and nobody complains, leave it alone. Custom development earns its place when the process is frequent, expensive in time, carrying rules you can no longer enforce, or blocking growth."),"\n",n.createElement(t.h2,{id:"frequently-asked-questions"},"Frequently asked questions"),"\n",n.createElement(t.p,null,n.createElement(t.strong,null,"What is process modeling?")),"\n",n.createElement(t.p,null,"Process modeling means representing how an activity actually unfolds: the steps, the actors, the decisions that branch the flow, and the exceptions. The point isn't the diagram itself but getting everyone to agree on how the work really happens, before trying to improve or automate it."),"\n",n.createElement(t.p,null,n.createElement(t.strong,null,"What is business modeling?")),"\n",n.createElement(t.p,null,"Business modeling is the broad term for representing a company's activity: its processes, but also its data and its business rules. Business process modeling is the part that describes the sequences of steps. In a software project the three go together: a process only runs if the data model and the business rules follow."),"\n",n.createElement(t.p,null,n.createElement(t.strong,null,"What is the difference between BPMN and a plain flowchart?")),"\n",n.createElement(t.p,null,"A flowchart shows boxes and arrows with no imposed vocabulary. BPMN 2.0 is a standard notation: a task, a decision gateway, an event, and a flow each have a precise symbol everyone reads the same way. BPMN is therefore stricter and more verbose. For a first pass a whiteboard is often enough; BPMN earns its keep once the process has to be handed over, discussed over months, or implemented by an engineering team."),"\n",n.createElement(t.p,null,n.createElement(t.strong,null,"How long does it take to model a process?")),"\n",n.createElement(t.p,null,"For a single, well-bounded business process, plan half a day to two days of workshops, plus about as much again to write it up and validate it. What blows the schedule is never the drawing: it's the exceptions nobody mentioned and the disagreements about who decides what, which surface precisely because you're modeling. A process that needs three weeks of mapping is usually several processes badly separated."),"\n",n.createElement(t.p,null,n.createElement(t.strong,null,"Should you model before building custom software?")),"\n",n.createElement(t.p,null,"Yes, but lightly. A modeling pass stops you coding a misunderstanding, and it surfaces the exceptions that will drive the architecture. A fifty-page spec frozen before the first line of code ages badly, though: the real questions appear when the team sees a first screen. Model enough to agree, then move in iterations."),"\n",n.createElement(t.h2,{id:"the-takeaway"},"The takeaway"),"\n",n.createElement(t.p,null,"Modeling a business process is essential, but it's only a starting point. The diagram gets you aligned; the app gets you time back. If you've already mapped a process (or it still lives in a spreadsheet no one dares touch), send it over — we'll tell you honestly what's worth automating and what the tool that runs it would look like. ",n.createElement(t.a,{href:"/contact/"},"Let's talk"),"."),"\n",n.createElement(t.p,null,n.createElement(t.em,null,"Related: ",n.createElement(t.a,{href:"/solutions/custom-erp-tooling/"}
1,"what custom software actually is and when it's worth it"),", and ",n.createElement(t.a,{href:"/blog/cahier-des-charges-logiciel/"},"how to scope the project without a 50-page spec"),".")))}var r=function(e={}){const{wrapper:t}=Object.assign({},(0,l.RP)(),e.components);return t?n.createElement(t,e,n.createElement(s,e)):s(e)},o=a(4506),i=a(4755),c=a(7746),m=a(4823),d=a(7093),u=a(6585),h=a(6085),p=a(5367),g=a(4368),b=a(1840),f=a(6388),y=a(7891),x=a(7414),w=a(5515),E=a(5996);const v={h2:e=>n.createElement("h2",Object.assign({className:"text-2xl sm:text-3xl font-bold text-gray-1 mt-8 mb-4"},e)),h3:e=>n.createElement("h3",Object.assign({className:"text-xl sm:text-2xl font-bold text-gray-1 mt-6 mb-3"},e)),p:e=>n.createElement("p",Object.assign({className:"text-base sm:text-lg text-gray-2 leading-relaxed mb-4"},e)),ul:e=>n.createElement("ul",Object.assign({className:"pl-6 sm:pl-8 list-disc text-base sm:text-lg text-gray-2 leading-relaxed my-4"},e)),ol:e=>n.createElement("ol",Object.assign({className:"pl-6 sm:pl-8 text-base sm:text-lg text-gray-2 list-decimal leading-relaxed my-4"},e)),li:e=>n.createElement("li",Object.assign({className:"mb-3"},e)),img:e=>n.createElement("img",Object.assign({className:"w-full h-auto rounded-lg my-8 sm:my-12"},e)),a:e=>n.createElement("a",Object.assign({className:"text-dark-blue"},e)),strong:e=>n.createElement("strong",Object.assign({className:"font-bold text-gray-1"},e)),hr:()=>n.createElement("hr",{className:"border-t border-gray-3 my-8"}),blockquote:e=>n.createElement("blockquote",Object.assign({className:"border-l-4 border-light-blue pl-4 sm:pl-6 my-4 text-base sm:text-lg text-gray-2 italic"},e)),table:e=>n.createElement("div",{className:"overflow-x-auto my-6"},n.createElement("table",Object.assign({className:"min-w-full text-sm sm:text-base text-gray-2 border-collapse"},e))),thead:e=>n.createElement("thead",Object.assign({className:"border-b-2 border-gray-3"},e)),th:e=>n.createElement("th",Object.assign({className:"text-left font-bold text-gray-1 px-3 py-2 sm:px-4 sm:py-3"},e)),td:e=>n.createElement("td",Object.assign({className:"px-3 py-2 sm:px-4 sm:py-3 border-b border-gray-3"},e)),ArchitectureDiagram:g.A,ToolDistributionChart:b.A,DryRunFlow:f.A,InArticleCTA:w.A,SpecList:y.A,ChatPreview:x.A},k={to:"/solutions/custom-erp-tooling/",titleKey:"blog_next_custom_title",descKey:"blog_next_custom_desc"},N={to:"/solutions/reprise-de-code/",titleKey:"blog_next_takeover_title",descKey:"blog_next_takeover_desc"},_={to:"/solutions/technical-due-diligence/",titleKey:"blog_next_tdd_title",descKey:"blog_next_tdd_desc"},F={to:"/case-studies/",titleKey:"blog_next_cases_title",descKey:"blog_next_cases_desc"},A={links:[{to:"/data/",titleKey:"blog_next_data_title",descKey:"blog_next_data_desc"},{to:"/reflekt-crm/",titleKey:"blog_next_crm_title",descKey:"blog_next_crm_desc"},{to:"/technology/",titleKey:"blog_next_tech_title",descKey:"blog_next_tech_desc"}],titleKey:"blog_cta_title"},T=[["code-audit",{links:[N,_,F],titleKey:"blog_cta_title_takeover",topic:"code-takeover"}],["fractional-cto",{links:[{to:"/solutions/fractional-cto/",titleKey:"blog_next_cto_title",descKey:"blog_next_cto_desc"},_,F],titleKey:"blog_cta_title_cto"}],["custom-software",{links:[k,N,F],titleKey:"blog_cta_title_custom",topic:"custom-software"}],["ai-strategy",{links:[{to:"/solutions/audit-ia/",titleKey:"blog_next_audit_title",descKey:"blog_next_audit_desc"},F,k],titleKey:"blog_cta_title_audit",topic:"audit-ia"}]],j=e=>{const t=new Set(null!=e?e:[]),a=T.find(([e])=>t.has(e));return a?a[1]:A},C=(e,t,a,l=3)=>{const n=e.filter(e=>e.fields.slug!==t),s=(0,o.A)(n).sort((e,t)=>{var a,l;return(null!==(a=t.frontmatter.date)&&void 0!==a?a:"").localeCompare(null!==(l=e.frontmatter.date)&&void 0!==l?l:"")}),r=null!=a?a:[];if(0===r.length)return s.slice(0,l);const i=new Set(r),c=s.map(e=>{var t;return{post:e,shared:(null!==(t=e.frontmatter.tags)&&void 0!==t?t:[]).filter(e=>i.has(e)).length}}).filter(e=>e.shared>0).sort((e,t)=>t.shared-e.shared).map(e=>e.post);if(c.length>=l)return c.slice(0,l);const m=new Set(c.map(e=>e.fields.slug));return[].concat((0,o.A)(c),(0,o.A)(s.filter(e=>
1!m.has(e.fields.slug)))).slice(0,l)},P=({data:e,pageContext:t})=>{var a,l,s,r,o,i,m,d,u;const h=null===(a=e.mdx)||void 0===a?void 0:a.frontmatter;if(!h)return n.createElement("title",null,"Reflekt Lab - Blog");const{slug:p,language:g,i18n:b}=t,f=null!==(l=null==b?void 0:b.defaultLanguage)&&void 0!==l?l:"en",y=null!==(s=null==b?void 0:b.languages)&&void 0!==s?s:[g],x=e=>e===f?`/blog/${p}/`:`/${e}/blog/${p}/`,w=x(g),E=y.map(e=>({lang:e,path:x(e)})),v=(null!==(r=h.faq)&&void 0!==r?r:[]).filter(e=>(null==e?void 0:e.q)&&(null==e?void 0:e.a)),k=v.length>0?{"@context":"https://schema.org","@type":"FAQPage",mainEntity:v.map(e=>({"@type":"Question",name:e.q,acceptedAnswer:{"@type":"Answer",text:e.a}}))}:null;return n.createElement(n.Fragment,null,n.createElement(c.A,{article:!0,title:h.seoTitle||`${h.title} | Reflekt Lab`,description:h.description||h.subtitle||h.title,image:null!==(o=null===(i=h.image)||void 0===i||null===(m=i.childImageSharp)||void 0===m||null===(d=m.original)||void 0===d?void 0:d.src)&&void 0!==o?o:void 0,pathname:w,language:g,alternateLanguages:E,datePublished:h.date,author:null===(u=h.author)||void 0===u?void 0:u.name}),k&&n.createElement("script",{type:"application/ld+json"},JSON.stringify(k)))},K=({data:{mdx:e,relatedPosts:t},pageContext:a,children:s})=>{var r;const{t:o}=(0,i.useTranslation)(),{slug:c}=a,g=j(e.frontmatter.tags),b=g.links,f=g.topic?{to:(0,E.y2)(g.topic),label:o("blog_cta_describe")}:{to:"/contact",label:o("blog_cta_sample")},y=C(null!==(r=null==t?void 0:t.nodes)&&void 0!==r?r:[],c,e.frontmatter.tags);return n.createElement(u.A,null,n.createElement("div",{className:"w-full flex justify-center py-8 sm:py-12 md:py-16"},n.createElement("article",{className:"w-full max-w-3xl lg:max-w-4xl xl:max-w-5xl px-4 sm:px-6 md:px-8 lg:px-12 flex flex-col gap-6 sm:gap-8 text-gray-1"},n.createElement("header",{className:"flex flex-col gap-3 sm:gap-4"},n.createElement(m.A,{as:"h1"},e.frontmatter.title),e.frontmatter.subtitle&&n.createElement(d.A,{className:"text-gray-2"},e.frontmatter.subtitle),n.createElement("div",{className:"flex flex-col sm:flex-row sm:items-center gap-2 sm:gap-4 text-sm text-gray-2"},e.frontmatter.author&&n.createElement("div",{className:"flex items-center gap-2"},e.frontmatter.author.avatar&&n.createElement("img",{src:e.frontmatter.author.avatar,alt:e.frontmatter.author.name,className:"w-8 h-8 rounded-full object-cover"}),n.createElement("p",null,e.frontmatter.author.link?n.createElement("a",{href:e.frontmatter.author.link,target:"_blank",rel:"noopener noreferrer",className:"text-dark-blue hover:underline"},e.frontmatter.author.name):n.createElement(n.Fragment,null,e.frontmatter.author.name))),n.createElement("p",null," ",(e=>{const t=new Date(e);return`${["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"][t.getMonth()]} ${t.getDate()}, ${t.getFullYear()}`})(e.frontmatter.date)))),n.createElement("div",{className:"prose prose-lg max-w-none"},n.createElement(l.xA,{components:v},s)),n.createElement("aside",{"aria-label":o("blog_next_title"),className:"mt-8 sm:mt-12 pt-8 border-t border-gray-3"},n.createElement("h2",{className:"text-2xl sm:text-3xl font-bold text-gray-1 mb-4"},o("blog_next_title")),n.createElement("div",{className:"grid gap-4 sm:grid-cols-3"},b.map(e=>n.createElement(i.Link,{key:e.to,to:e.to,className:"block bg-gray-4 border border-gray-3 rounded-lg px-5 py-4 hover:border-dark-blue transition-colors"},n.createElement("span",{className:"block font-semibold text-dark-blue mb-1"},o(e.titleKey)),n.createElement("span",{className:"block text-sm text-gray-2 leading-snug"},o(e.descKey))))),n.createElement("div",{className:"mt-6 flex flex-col sm:flex-row sm:items-center sm:justify-between gap-4 bg-gradient-to-br from-indigo-800 to-teal-700 rounded-lg px-6 py-5"},n.createElement("p",{className:"text-white font-semibold text-lg"},o(g.titleKey)),n.createElement("div",{className:"flex flex-col sm:flex-row gap-3 shrink-0"},n.createElement(h.Ay,{variant:"primary",placement:"blog",className:"inline-block text-center whitespace-nowrap bg-white text-dark-blue font-semibold rounded-lg px-5 py-3 hover:bg-gray-4 transition-colors"}),n.createElement(i.Link,{to:f.to,onClick:()=>(0,p.UA)(f.label,f.to,{location:"blog-footer"}),className:"inline-block text-center whitespace-nowrap border border-white/70 text-white font-semibold rounded-lg px-5 py-3 hover:bg-white/10 transition-colors"},f.label)))),y.length>0&&n.createElement("nav",{"aria-label":"Related articles",className:"mt-8 sm:mt-12 pt-8 border-t border-gray-3"},n.createElement("h2",{className:"text-2xl sm:text-3xl font-bold text-gray-1 mb-4"},"Related articles"),n.createElement("ul",{className:"flex flex-col gap-3"},y.map(e=>n.createElement("li",{key:e.id},n.createElement(i.Link,{to:`/blog/${e.fields.slug}/`,className:"text-lg text-dark-blue hover:underline"},e.frontmatter.title))))))))};function O(e){return n.createElement(K,e,n.createElement(r,e))}},7093:function(e,t,a){var l=a(6540);t.A=({children:e,className:t})=>l.createElement("h3",{className:`text-m font-semibold text-gray-1 ${null!=t?t:""}`},e)},4823:function(e,t,a){var l=a(6540);t.A=({children:e,className:t,as:a="h2",id:n})=>l.createElement(a,{id:n,className:`text-3xl md:text-5xl font-extrabold tracking-tight text-gray-900 ${null!=t?t:""}`},e)},4368:function(e,t,a){var l=a(6540);const n=({x:e,y:t,w:a,h:n,label:s,sublabel:r,fill:o="#F7FAFC",textColor:i="#1F2933"})=>l.createElement("g",null,l.createElement("rect",{x:e,y:t,width:a,height:n,rx:8,fill:o,stroke:"#E2E8F0",strokeWidth:1.5}),l.createElement("text",{x:e+a/2,y:r?t+n/2-6:t+n/2+1,textAnchor:"middle",dominantBaseline:"middle",fill:i,fontSize:13,fontWeight:600,fontFamily:"Montserrat, sans-serif"},s),r&&l.createElement("text",{x:e+a/2,y:t+n/2+12,textAnchor:"middle",dominantBaseline:"middle",fill:"#4A5568",fontSize:10,fontFamily:"Montserrat, sans-serif"},r)),s=({x1:e,y1:t,x2:a,y2:n})=>l.createElement("g",null,l.createElement("line",{x1:e,y1:t,x2:a,y2:n,stroke:"#E2E8F0",strokeWidth:1.5}),l.createElement("polygon",{points:`${a},${n} ${a-4},${n-7} ${a+4},${n-7}`,fill:"#E2E8F0"}));t.A=()=>l.createElement("div",{className:"my-8 rounded-lg border border-gray-3 bg-white p-4 sm:p-6 overflow-x-auto"},l.createElement("p",{className:"text-sm font-bold text-gray-1 mb-4 uppercase tracking-wide"},"Architecture overview"),l.createElement("svg",{viewBox:"0 0 680 360",className:"w-full max-w-2xl mx-auto",xmlns:"http://www.w3.org/2000/svg"},l.createElement(n,{x:10,y:10,w:120,h:44,label:"Claude Desktop",sublabel:"stdio proxy",fill:"#e0f2fe"}),l.createElement(n,{x:145,y:10,w:120,h:44,label:"Claude Code",sublabel:"HTTP",fill:"#e0f2fe"}),l.createElement(n,{x:280,y:10,w:120,h:44,label:"Cursor",sublabel:"HTTP",fill:"#e0f2fe"}),l.createElement(n,{x:415,y:10,w:120,h:44,label:"Telegram Bot",sublabel:"HTTP",fill:"#e0f2fe"}),l.createElement(n,{x:550,y:10,w:120,h:44,label:"Classifier",sublabel:"HTTP",fill:"#e0f2fe"}),l.createElement(s,{x1:70,y1:54,x2:70,y2:95}),l.createElement(s,{x1:205,y1:54,x2:205,y2:95}),l.createElement(s,{x1:340,y1:54,x2:340,y2:95}),l.createElement(s,{x1:475,y1:54,x2:475,y2:95}),l.createElement(s,{x1:610,y1:54,x2:610,y2:95}),l.createElement("rect",{x:40,y:95,width:600,height:75,rx:10,fill:"#2979FF",fillOpacity:.08,stroke:"#2979FF",strokeWidth:1.5}),l.createElement("text",{x:340,y:117,textAnchor:"middle",fill:"#2979FF",fontSize:13,fontWeight:700,fontFamily:"Montserrat, sans-serif"},"MCP Server"),l.createElement(n,{x:80,y:125,w:130,h:34,label:"Auth Middleware",fill:"#FFFFFF"}),l.createElement(n,{x:275,y:125,w:130,h:34,label:"Tool Registry",fill:"#FFFFFF"}),l.createElement(n,{x:470,y:125,w:130,h:34,label:"Router",fill:"#FFFFFF"}),l.createElement(s,{x1:340,y1:170,x2:340,y2:210}),[{label:"CRM",sub:"43 tools",x:15},{label:"ERP",sub:"23 tools",x:125},{label:"Sheets",sub:"7 tools",x:235},{label:"Linear",sub:"6 tools",x:345},{label:"Products",sub:"6 tools",x:455},{label:"Bank",sub:"6 tools",x:565}].map(e=>l.createElement(n,{key:e.label,x:e.x,y:210,w:100,h:44,label:e.label,sublabel:e.sub,fill:"#42A5F5",textColor:"#FFFFFF"})),[65,175,285,395,505,615].map((e,t)=>l.createElement(s,{key:t,x1:e,y1:254,x2:e,y2:295})),[{label:"PostgreSQL",x:15},{label:"REST API",x:125},{label:"Sheets API",x:235},{label:"GraphQL",x:345},{label:"Local XLSX",x:455},{label:"Local XLSX",x:565}].map(e=>l.createElement(n,{key:e.label+e.x,x:e.x,y:295,w:100,h:40,label:e.label,fill:"#F7FAFC"}))))},7414:function(e,t,a){var l=a(6540);t.A=({title:e,lines:t,actions:a})=>l.createElement("figure",{className:"my-8 mx-0 max-w-xl"},l.createElement("div",{className:"rounded-lg rounded-tl-none border border-gray-3 bg-white shadow-card px-4 py-4 sm:px-5 sm:py-5"},l.createElement("p",{className:"text-base sm:text-lg font-bold text-gray-1 m-0"},e),l.createElement("ul",{className:"list-none pl-0 mt-3 mb-0 flex flex-col gap-2"},t.map((e,t)=>l.createElement("li",{key:`${e}-${t}`,className:"flex items-start gap-2 text-base text-gray-2 leading-relaxed"},l.createElement("span",{"aria-hidden":"true",className:"text-indigo-700 shrink-0"},"•"),l.createElement("span",null,e)))),a&&a.length>0&&l.createElement("div",{className:"mt-4 pt-4 border-t border-gray-3 flex flex-wrap gap-2"},a.map((e,t)=>l.createElement("span",{key:`${e}-${t}`,className:"rounded px-3 py-1.5 text-sm font-semibold "+(0===t?"bg-indigo-700 text-white":"border border-gray-3 text-gray-2")},e)))))},6388:function(e,t,a){var l=a(6540);const n=[{icon:"1",label:"AI calls tool",detail:"dry_run: true",color:"#2979FF"}
1,{icon:"2",label:"Server previews",detail:"No data written",color:"#42A5F5"},{icon:"3",label:"User reviews",detail:"Confirm or cancel",color:"#0ea5e9"},{icon:"4",label:"AI commits",detail:"dry_run: false",color:"#10b981"}];t.A=()=>l.createElement("div",{className:"my-8 rounded-lg border border-gray-3 bg-gray-4 p-4 sm:p-6"},l.createElement("p",{className:"text-sm font-bold text-gray-1 mb-5 uppercase tracking-wide"},"Dry-run confirmation flow"),l.createElement("div",{className:"flex flex-col sm:flex-row items-stretch sm:items-center gap-3 sm:gap-0"},n.map((e,t)=>l.createElement(l.Fragment,{key:e.icon},l.createElement("div",{className:"flex sm:flex-col items-center gap-3 sm:gap-2 flex-1"},l.createElement("div",{className:"w-10 h-10 rounded-full flex items-center justify-center text-white text-sm font-bold shrink-0",style:{backgroundColor:e.color}},e.icon),l.createElement("div",{className:"sm:text-center"},l.createElement("p",{className:"text-sm font-bold text-gray-1"},e.label),l.createElement("p",{className:"text-xs text-gray-2"},e.detail))),t<n.length-1&&l.createElement("div",{className:"hidden sm:flex items-center px-2 text-gray-3 text-lg"},"→")))))},5515:function(e,t,a){var l=a(6540),n=a(4755),s=a(6085),r=a(5367);t.A=({heading:e,body:t,to:a,linkLabel:o,placement:i="blog-inline"})=>l.createElement("aside",{className:"my-10 rounded-xl border border-indigo-100 bg-indigo-50/70 px-6 py-6"},l.createElement("div",{className:"mb-4"},l.createElement("p",{className:"text-lg font-bold text-gray-1"},e),t&&l.createElement("p",{className:"mt-1 text-gray-2 leading-snug"},t)),l.createElement("div",{className:"flex flex-col sm:flex-row sm:items-center gap-3"},l.createElement(s.Ay,{variant:"primary",placement:i}),a&&o&&l.createElement(n.Link,{to:a,onClick:()=>(0,r.UA)(o,a,{location:i}),className:"text-dark-blue underline font-semibold text-sm"},o)))},7891:function(e,t,a){var l=a(6540);t.A=({items:e,title:t,numbered:a=!0,separator:n="—"})=>{const s=a?"ol":"ul";return l.createElement("div",{className:"my-8 rounded-lg border border-gray-3 bg-gray-4 p-4 sm:p-6"},t&&l.createElement("p",{className:"text-sm font-bold text-gray-1 mb-5 uppercase tracking-wide"},t),l.createElement(s,{className:"flex flex-col gap-4 list-none pl-0 m-0"},e.map((e,t)=>l.createElement("li",{key:`${e.label}-${t}`,className:"flex items-start gap-3 sm:gap-4"},a?l.createElement("span",{className:"mt-0.5 w-7 h-7 shrink-0 rounded-full bg-indigo-700 text-white text-sm font-bold flex items-center justify-center"},t+1):l.createElement("span",{"aria-hidden":"true",className:"mt-2.5 w-2 h-2 shrink-0 rounded-full bg-indigo-700"}),l.createElement("p",{className:"text-base sm:text-lg text-gray-2 leading-relaxed m-0"},l.createElement("span",{className:"font-bold text-gray-1"},e.label),e.text?l.createElement(l.Fragment,null," ",n," ",e.text):null)))))}},1840:function(e,t,a){var l=a(6540);const n=[{name:"CRM",tools:43,color:"#2979FF"},{name:"ERP Connector",tools:23,color:"#42A5F5"},{name:"Google Sheets",tools:7,color:"#38bdf8"},{name:"Linear",tools:6,color:"#7dd3fc"},{name:"Product DB",tools:6,color:"#0ea5e9"},{name:"Bank Statements",tools:6,color:"#e0f2fe"}];t.A=()=>l.createElement("div",{className:"my-8 rounded-lg border border-gray-3 bg-gray-4 p-4 sm:p-6"},l.createElement("p",{className:"text-sm font-bold text-gray-1 mb-4 uppercase tracking-wide"},"Tool distribution by module"),l.createElement("div",{className:"flex flex-col gap-3"},n.map(e=>l.createElement("div",{key:e.name,className:"flex items-center gap-3"},l.createElement("span",{className:"text-sm text-gray-2 w-32 sm:w-36 text-right shrink-0"},e.name),l.createElement("div",{className:"flex-1 flex items-center gap-2"},l.createElement("div",{className:"flex-1 h-7 bg-gray-3 rounded overflow-hidden"},l.createElement("div",{className:"h-full rounded transition-all",style:{width:e.tools/43*100+"%",backgroundColor:e.color}})),l.createElement("span",{className:"text-sm font-bold text-gray-1 w-8"},e.tools))))),l.createElement("p",{className:"text-xs text-gray-2 mt-4 text-center"},"91 tools total across 6 modules"))},5996:function(e,t,a){a.d(t,{Jj:function(){return r},Kj:function(){return s},y2:function(){return n}});const l=["audit-ia","custom-software","code-takeover"];function n(e){return`/contact/?topic=${e}`}function s(e){const t=new URLSearchParams(e).get("topic");return l.includes(null!=t?t:"")?t:null}function r(e,t){return`topic_${e.replace(/-/g,"_")}_${t}`}},8453:function(e,t,a){a.d(t,{RP:function(){return s},xA:function(){return o}});var l=a(6540);const n=l.createContext({});function s(e){const t=l.useContext(n);return l.useMemo(()=>"function"==typeof e?e(t):{...t,...e},[t,e])}const r={};function o({components:e,children:t,disableParentContext:a}){let o;return o=a?"function"==typeof e?e({}):e||r:s(e),l.createElement(n.Provider,{value:o},t)}}}]);
2//# sourceMappingURL=component---src-components-blog-post-tsx-content-file-path-blog-modelisation-processus-metier-index-mdx-d10e8a0947a7b1789843.js.map

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.