Ketika perusahaan bertanya berapa biaya membuat aplikasi web enterprise, jawaban berupa satu angka hampir selalu terlalu sederhana. Dua aplikasi sama-sama berbasis web dapat memiliki biaya pengembangan yang sangat berbeda meskipun jumlah halaman atau jumlah user terlihat serupa. Sebuah internal portal dengan master data, form input, dan reporting sederhana tentu mempunyai struktur biaya berbeda dengan application yang mempunyai multi-level approval, complex business rules, role-based access, real-time integration ke ERP, synchronization dengan CRM, data migration, audit trail, security requirement, dan high transaction volume.
Karena itu, biaya aplikasi web enterprise sebaiknya tidak dihitung menggunakan pendekatan “harga per halaman” atau hanya berdasarkan jumlah feature yang terlihat di user interface. Cost lebih banyak ditentukan oleh business logic yang harus dijalankan, dependency antar-module, complexity integration, data yang perlu dimigrasikan, security requirement, quality requirement, dan operational environment setelah application masuk production.
GAO Cost Estimating and Assessment Guide menempatkan software cost estimation sebagai aktivitas yang harus melihat software size, development effort, schedule, infrastructure, risk, dan sustainment. Panduan tersebut juga menekankan bahwa software estimation memiliki complexity tinggi dan dapat mengalami cost maupun schedule overrun jika scope, technical baseline, serta cost driver tidak dipahami dengan baik sejak awal.
Dalam perspective Crocodic, pertanyaan “berapa harga aplikasi web?” perlu diubah menjadi:
“Capability apa yang harus dibangun, seberapa kompleks setiap capability, dan dependency apa yang harus diselesaikan agar application benar-benar dapat menjalankan business process?”
Dari sinilah estimasi menjadi lebih masuk akal.
Aplikasi Web Enterprise Bukan Sekadar Website dengan Login
Istilah web application sering membuat project terlihat lebih sederhana karena application diakses menggunakan browser. Namun browser hanyalah delivery interface. Complexity sebenarnya berada di belakang interface tersebut.
Sebuah application enterprise dapat mempunyai puluhan business roles, workflow lintas divisi, transaction validation, approval matrix, document generation, integration dengan external systems, audit log, notification engine, dashboard, data warehouse, single sign-on, dan data-access policy yang berbeda untuk setiap organizational unit.
Karena itu, enterprise complexity lebih tepat dilihat melalui:
Business Process → Business Rules → Roles → Data → Module → Integration → Security → Operation
bukan melalui:
Jumlah Halaman → Harga
Dua application dengan dua puluh halaman dapat memiliki engineering effort yang sangat berbeda. Halaman approval sederhana yang hanya mempunyai tombol approve atau reject jauh lebih mudah dibandingkan approval module yang menentukan approver berdasarkan nominal transaction, business unit, risk category, delegation, approval history, escalation time, dan segregation of duties.
Interface-nya mungkin hanya satu halaman.
Business logic di belakangnya dapat menjadi salah satu component paling kompleks di seluruh system.
Mengapa Estimasi Berdasarkan Modul Lebih Masuk Akal?
Module merepresentasikan business capability, bukan sekadar screen.
Misalnya perusahaan membutuhkan aplikasi procurement. Module-nya dapat terdiri dari vendor management, purchase request, approval, purchase order, goods receipt, invoice matching, contract management, reporting, dan integration ke finance system.
Masing-masing module mempunyai complexity berbeda.
Master-data module mungkin hanya membutuhkan data entry, validation, search, filter, import, dan export.
Purchase-request module dapat membutuhkan business rule, budget validation, approval routing, attachment, history, notification, dan integration.
Invoice module dapat jauh lebih kompleks karena harus berhubungan dengan purchase order, goods receipt, tax information, finance system, dan reconciliation.
Karena itu, jumlah module saja belum cukup.
Enterprise perlu menghitung:
Module Count × Module Complexity
Dalam working framework Crocodic, module dapat dibaca melalui tiga level: simple, medium, dan complex. Klasifikasi ini bukan industry standard atau rate card, tetapi estimation lens agar perusahaan tidak memperlakukan seluruh module seolah mempunyai effort yang sama.
Simple Module: Data dan Workflow Relatif Langsung
Simple module biasanya mempunyai data model yang cukup jelas, dependency rendah, serta business rule yang terbatas. Contohnya master data department, category, branch, product reference, document template, atau basic configuration.
Typical capability dapat mencakup create, read, update, delete, search, filtering, import/export, basic validation, dan simple role restriction.
Namun istilah “simple” tetap relatif.
Master data employee yang hanya menyimpan nama dan department dapat sederhana. Master employee yang menjadi source of truth untuk payroll, access management, approval hierarchy, organization structure, dan multiple downstream systems sudah tidak sederhana lagi.
Karena itu, complexity tidak berasal dari nama module.
Complexity berasal dari responsibility yang ditanggung module tersebut terhadap system lainnya.
Medium Module: Mulai Memiliki Workflow dan Business Rules
Medium-complexity module biasanya mulai mempunyai state transition, approval, notification, document, dan beberapa business rules.
Contohnya leave request, purchase request, customer onboarding, sales quotation, expense claim, service request, atau internal approval.
Module tidak hanya menyimpan data.
Ia perlu mengetahui:
siapa yang boleh membuat transaction,
siapa yang boleh memproses,
state apa yang valid,
kapan transaction berpindah state,
rule apa yang harus dipenuhi,
siapa approver berikutnya,
dan apa yang harus terjadi jika request ditolak atau dikembalikan.
Semakin banyak state dan decision rule, semakin besar testing surface.
Satu tambahan business rule juga tidak hanya menambah coding effort. Rule tersebut perlu dianalisis, diuji, didokumentasikan, dan diverifikasi interaksinya dengan rule lain.
Complex Module: Menjadi Engine dari Business Process
Complex module biasanya mempunyai banyak dependency, high transaction criticality, complex calculations, configurable workflow, multiple roles, exception handling, dan integration ke system lain.
Contohnya transaction engine, pricing engine, order management, financial reconciliation, multi-level procurement approval, inventory allocation, claims processing, atau compliance workflow.
Complexity meningkat drastis ketika requirement mencakup hal seperti:
dynamic approval,
parallel approval,
delegation,
maker-checker,
cross-entity transaction,
partial processing,
reversal,
exception handling,
real-time calculation,
multiple currencies,
version history,
dan detailed auditability.
Di sini software estimation tidak dapat dilakukan hanya dengan menghitung jumlah form.
Perusahaan perlu memahami business-state model di belakangnya.
Crocodic Enterprise Web Application Cost Framework
Dalam working framework Crocodic, estimasi biaya dapat disusun melalui chain:
Business Process → Required Capability → Base Platform → Module Complexity → Integration Complexity → Data Migration → Security & Compliance → QA & Performance → Infrastructure & Deployment → Delivery Governance → Contingency
Secara konseptual:
Estimated Development Cost = Base Platform + Σ Module Cost + Σ Integration Cost + Data Migration + Security + QA + Infrastructure / DevOps + Delivery Governance + Contingency
Framework ini bukan formula quotation otomatis. Tujuannya adalah memastikan seluruh major cost driver masuk ke discussion sebelum angka budget dianggap final.
Dengan model seperti ini, management juga dapat melihat bagian mana dari budget yang sebenarnya menciptakan complexity.
Jika integration mengambil 30% dari overall development effort, diskusi architecture dan dependency seharusnya mendapat perhatian besar.
Jika sebagian besar budget berasal dari complex workflow, prioritas discovery seharusnya berada pada process dan business rules.
Base Platform: Biaya yang Muncul bahkan Sebelum Module Pertama
Banyak proposal langsung menghitung module tetapi melupakan foundation yang digunakan seluruh application.
Enterprise web application biasanya membutuhkan common capabilities seperti authentication, role-based access, user management, organization structure, navigation, session management, audit mechanism, notification infrastructure, error handling, configuration, logging, file handling, dan administrative functions.
Foundation tersebut dapat disebut Base Platform.
Semakin besar enterprise, base platform dapat semakin kompleks.
Application dengan lima user roles berbeda dari system dengan lima puluh roles.
Application satu legal entity berbeda dari system multi-company.
Login username/password berbeda dari corporate SSO.
General access control berbeda dari segregation of duties dengan approval dan privileged-access restriction.
Karena itu, foundation perlu dihitung terpisah sebelum business modules ditambahkan.
Integrasi Bisa Lebih Mahal daripada Module yang Terlihat oleh User
Salah satu sumber underestimate terbesar adalah integration.
Management melihat requirement:
“Hubungkan aplikasi baru ke ERP.”
Kalimatnya pendek.
Engineering consequence-nya bisa besar.
Integration perlu menjawab:
Data apa yang ditukar?
Siapa source of truth?
One-way atau two-way?
Real-time atau batch?
Apa authentication mechanism-nya?
Apakah API sudah tersedia?
Bagaimana data mapping dilakukan?
Apa yang terjadi ketika ERP tidak tersedia?
Apakah transaction perlu retry?
Bagaimana duplicate transaction dicegah?
Bagaimana reconciliation dilakukan?
Bagaimana error diketahui operation team?
Apakah tersedia sandbox?
Apakah API mempunyai rate limit?
Apakah legacy system mempunyai documentation?
Microsoft Azure Architecture Center menjelaskan bahwa enterprise integration dapat melibatkan direct API calls, asynchronous messaging, event-driven communication, maupun workflow orchestration tergantung requirement sistem. Pemilihan pattern juga perlu mempertimbangkan performance, resiliency, security, dan cara system saling bergantung.
Karena itu, integrasi bukan sekadar:
System A → API → System B
Ia dapat membutuhkan architecture untuk authentication, data transformation, retry, queue, reconciliation, monitoring, dan exception handling.
Crocodic membahas architecture layer ini dalam API-First Architecture: Fondasi Integrasi Sistem Bisnis serta pembahasan budget spesifik pada Berapa Biaya Integrasi ERP dan CRM?.
Cara Mengklasifikasikan Kompleksitas Integrasi
Seperti module, integration dapat dibaca dalam tingkat complexity.
Simple Integration biasanya mempunyai API yang mature, documentation lengkap, authentication standard, data mapping sederhana, dan komunikasi one-way.
Medium Integration mulai melibatkan two-way synchronization, multiple objects, transformation, webhook, scheduled synchronization, serta error handling.
Complex Integration dapat melibatkan legacy system, undocumented interface, high transaction criticality, asynchronous processing, reconciliation, multiple downstream systems, strict consistency requirement, atau dependency terhadap system yang tidak dapat dengan mudah diubah.
Satu integration dengan legacy ERP dapat lebih mahal daripada tiga integration dengan modern SaaS yang mempunyai documented APIs.
Karena itu:
Number of Integrations ≠ Integration Cost
Yang lebih tepat:
Integration Cost = Connectivity Complexity + Data Complexity + Business Rule + Reliability Requirement + Security + Exception Handling
Data Migration Sering Dianggap “Tinggal Import”
Project baru sering membutuhkan data dari system lama.
Pada proposal awal, requirement dapat ditulis sederhana:
“Import existing customer data.”
Namun actual migration dapat memunculkan duplicate data, inconsistent format, missing values, invalid reference, different identifiers, outdated records, dan conflicting business definitions.
Sebelum migration, team perlu menentukan:
data apa yang dipindahkan,
data apa yang tidak diperlukan,
bagaimana mapping dilakukan,
bagaimana data dibersihkan,
bagaimana referential integrity dijaga,
bagaimana migration diuji,
dan bagaimana hasil migration divalidasi.
Data migration menjadi lebih kompleks ketika system baru menggantikan application yang sudah digunakan bertahun-tahun.
Crocodic membahas problem ini secara khusus dalam Data Migration: Risiko Terbesar Saat Ganti Sistem.
Karena itu, data migration sebaiknya mempunyai workstream dan budget sendiri.
Jangan memasukkannya secara implisit ke dalam “development”.
Security Requirement Menambah Scope, tetapi Mengabaikannya Lebih Mahal
Enterprise application biasanya menyimpan atau memproses data yang lebih critical dibandingkan simple public website.
Security requirement dapat mencakup role-based access, MFA, encryption, audit trail, secret management, secure API, session control, vulnerability management, secure development, penetration testing, dan security monitoring.
NIST Secure Software Development Framework merekomendasikan secure-development practices diintegrasikan ke dalam SDLC, bukan ditambahkan hanya pada akhir project. Framework tersebut mencakup preparation, protection terhadap software, production software yang lebih secure, dan response terhadap vulnerabilities.
Artinya, security mempunyai effort.
Security requirement perlu dianalisis.
Code perlu direview.
Dependency perlu dikelola.
Access perlu dirancang.
Testing perlu dilakukan.
Semakin sensitive system, semakin besar requirement tersebut.
Tetapi menghapus security dari initial budget bukan berarti cost hilang.
Cost hanya berpindah ke masa depan sebagai remediation atau risk exposure.
QA Cost Bertambah Lebih Cepat daripada Jumlah Feature
QA tidak hanya memastikan setiap feature bekerja secara individual.
Team juga perlu memastikan feature baru tidak merusak process existing.
Jika system mempunyai enam module yang saling independen, testing relatif straightforward.
Jika enam module mempunyai strong dependency, test scenario bertambah karena transaction dapat berpindah dari satu module ke module lain.
Misalnya Order → Approval → Inventory → Delivery → Invoice.
Perubahan pada order validation dapat memengaruhi downstream process.
Inilah sebabnya complexity testing meningkat seiring dependency.
Selain functional testing, enterprise application mungkin membutuhkan regression testing, integration testing, performance testing, security testing, user acceptance testing, dan recovery testing.
Jumlah code bukan satu-satunya cost driver.
Jumlah relationship antar-capability juga menentukan effort.
Performance Requirement Harus Ditentukan sebelum Development
Requirement:
“Application harus cepat.”
tidak cukup.
Berapa concurrent users?
Berapa transaction per day?
Berapa response-time target?
Berapa expected growth?
Apakah terdapat peak traffic?
Apakah report perlu menghasilkan jutaan rows?
Apakah transaction harus real-time?
Tanpa angka tersebut, architecture team hanya dapat membuat assumption.
Dan assumption yang salah dapat menghasilkan dua kondisi: application terlalu mahal karena over-engineered, atau terlalu lemah karena under-designed.
Inilah mengapa scope enterprise sebaiknya mempunyai non-functional requirements selain feature.
Security, availability, performance, scalability, recovery, and observability adalah bagian dari product scope.
Bukan catatan tambahan.
Infrastructure Bukan Development Cost Sekali Bayar
Web application enterprise membutuhkan development environment, staging, production, database, storage, backup, monitoring, networking, log management, dan kadang disaster-recovery environment.
Cloud memungkinkan infrastructure mengikuti consumption, tetapi cost tetap perlu direncanakan.
AWS Well-Architected Cost Optimization Pillar menyarankan organisasi mengukur business output serta cost yang diperlukan untuk menghasilkan output tersebut dan terus mengoptimalkan resources sepanjang lifecycle workload.
Karena itu, perusahaan perlu membedakan:
One-Time Development Cost
dan
Recurring Operating Cost
Development quotation Rp1 miliar belum tentu berarti total year-one cost hanya Rp1 miliar.
Masih dapat ada cloud infrastructure, monitoring, third-party services, domain/certificate, support, dan maintenance.
Crocodic membahas layer lebih luas ini melalui Biaya Sistem Enterprise: Cara Menyusun Budget yang Realistis.
Contoh Perhitungan: Aplikasi Web Enterprise dengan 6 Modul dan 3 Integrasi
Agar framework lebih konkret, anggap sebuah perusahaan ingin membangun Operational Management Web Application untuk menggantikan beberapa spreadsheet dan application terpisah.
Requirement utamanya:
base platform dengan authentication, RBAC, user management, dan audit,
6 business modules,
3 external integrations,
data migration dari system existing,
security,
QA,
cloud deployment,
dan training.
Berikut simulasi estimasi, bukan rate card Crocodic dan bukan benchmark universal harga software di Indonesia. Angkanya digunakan untuk menunjukkan bagaimana budget dapat dibangun berdasarkan struktur scope.
| Komponen | Illustrative Estimate |
| Discovery & Solution Architecture | Rp60 juta |
| Base Platform: Auth, RBAC, User & Admin | Rp90 juta |
| Module 1 – Master Data | Rp45 juta |
| Module 2 – Customer / Supplier Management | Rp55 juta |
| Module 3 – Transaction / Order Management | Rp130 juta |
| Module 4 – Approval Workflow | Rp85 juta |
| Module 5 – Dashboard & Reporting | Rp70 juta |
| Module 6 – Document & Notification | Rp45 juta |
| ERP Integration | Rp110 juta |
| CRM Integration | Rp85 juta |
| Corporate SSO Integration | Rp45 juta |
| Data Migration | Rp65 juta |
| Security & Hardening | Rp55 juta |
| QA, Regression & Performance Testing | Rp70 juta |
| DevOps & Cloud Setup | Rp50 juta |
| UAT, Documentation, Training & Delivery Governance | Rp75 juta |
| Estimated Base Project Cost | Rp1,135 miliar |
Untuk project dengan uncertainty tertentu, management kemudian dapat menambahkan contingency sekitar 10–15% sebagai planning assumption, bukan sebagai markup otomatis.
Dengan contingency tersebut:
Rp1,135 miliar + 10% ≈ Rp1,249 miliar
hingga
Rp1,135 miliar + 15% ≈ Rp1,305 miliar
Dengan demikian, initial planning range menjadi sekitar:
Rp1,25–1,31 miliar
sekali lagi, untuk scope illustrative yang dijelaskan di atas, bukan harga standar setiap application web enterprise.
Ini penting karena artikel “berapa harga aplikasi” sering menghasilkan range terlalu luas seperti Rp100 juta sampai Rp5 miliar tanpa menjelaskan apa yang membuat angka berpindah dari ujung bawah ke ujung atas.
Module-and-integration model membuat perbedaannya lebih terlihat.
Bagaimana Jika Budget Hanya Rp700 Juta?
Pertanyaan berikutnya bukan langsung mencari vendor yang bersedia membuat scope Rp1,25 miliar dengan Rp700 juta.
Pendekatan lebih sehat adalah melakukan scope prioritization.
Misalnya dari enam module, hanya empat yang benar-benar dibutuhkan untuk menghasilkan first business outcome.
Dashboard advanced dapat menggunakan reporting existing sementara.
CRM integration dapat dibuat pada phase berikutnya.
Notification dapat dimulai dengan email sebelum omni-channel notification dikembangkan.
Data migration dapat dibatasi pada active records dibandingkan seluruh historical data.
Dengan demikian, project dapat diubah dari:
Full Scope → Rp1,25 miliar
menjadi:
Phase 1 → Critical Capability → Rp700 juta
kemudian Phase 2 dibiayai berdasarkan actual adoption dan remaining business gap.
GAO Cost Estimating Guide juga membahas software development melalui shorter delivery efforts dan iterative approaches yang memungkinkan user feedback terhadap functionality yang telah delivered memandu development berikutnya.
Budget constraint tidak selalu harus diselesaikan dengan menurunkan quality.
Sering kali lebih sehat dengan mengecilkan scope, mempertahankan engineering quality, dan mengirim capability secara bertahap.
Feature Murah Bisa Menjadi Mahal karena Dependency
Misalnya management meminta satu feature baru:
“Tambahkan approval manager.”
Secara interface hanya menambah satu approval step.
Namun ternyata approval tersebut perlu:
membaca organization hierarchy dari HRIS,
menentukan manager berdasarkan branch,
mengakomodasi acting manager,
mencatat delegation,
mengirim notification,
mengubah SLA calculation,
mempengaruhi dashboard,
dan tetap dapat direkonstruksi untuk audit.
Request yang terlihat sebagai satu tombol dapat menyentuh lima systems.
Karena itu, estimate sebaiknya bertanya:
“Berapa dependency yang disentuh?”
bukan hanya:
“Berapa screen yang dibuat?”
Inilah alasan architecture dan integration map sangat berguna sebelum quotation final.
Customization Juga Mempunyai Complexity Curve
Enterprise sering mempunyai process khusus.
Customization memang salah satu alasan utama perusahaan memilih Custom Enterprise Software.
Namun setiap customization mempunyai cost of ownership.
Jika customization mencerminkan strategic differentiation atau mandatory process, investment dapat sangat layak.
Jika customization hanya mempertahankan historical habit yang sebenarnya dapat distandardisasi, company membayar development dan maintenance untuk complexity yang tidak menghasilkan strategic value.
Karena itu, sebelum memasukkan requirement ke scope, klasifikasikan:
Mandatory
Strategic
atau
Preference
Mandatory requirement harus ada.
Strategic requirement menghasilkan differentiation atau material business value.
Preference dapat dipertimbangkan setelah core capability berjalan.
Pendekatan tersebut sering mengurangi budget tanpa mengurangi business impact.
Jangan Membuat Estimasi dari Feature List yang Belum Mempunyai Process Definition
Requirement seperti:
“ada procurement,”
“ada CRM,”
“ada dashboard,”
“ada approval,”
belum cukup untuk quotation yang akurat.
Vendor tetap perlu mengetahui process.
Approval satu tingkat atau lima tingkat?
CRM hanya contact management atau sampai sales pipeline dan commission?
Dashboard hanya aggregation atau membutuhkan data dari lima system?
Procurement berhenti di PO atau sampai receiving, invoice, dan finance integration?
Semakin vague requirement, semakin besar range uncertainty.
Vendor biasanya merespons uncertainty dengan salah satu dari dua cara.
Pertama, memberikan harga rendah berdasarkan assumption minimal, lalu scope bertambah melalui change request.
Kedua, memberikan contingency tinggi untuk melindungi project risk.
Keduanya membuat initial quotation sulit dibandingkan.
Karena itu, accuracy estimation berbanding lurus dengan scope clarity.
Mengapa Dua Vendor Dapat Memberikan Harga Sangat Berbeda?
Misalnya Vendor A memberikan Rp650 juta dan Vendor B Rp1,2 miliar.
Perbedaannya tidak otomatis berarti Vendor A murah dan Vendor B mahal.
Bandingkan scope responsibility.
Apakah keduanya memasukkan discovery?
Apakah integration mencakup error handling?
Apakah data migration sudah dibersihkan?
Apakah security testing termasuk?
Apakah performance test termasuk?
Apakah deployment automation termasuk?
Apakah monitoring tersedia?
Apakah dokumentasi architecture termasuk?
Apakah training dan hypercare termasuk?
Apakah support setelah go-live termasuk?
Jika tidak, dua angka tersebut membeli produk yang berbeda.
Crocodic membahas cara membandingkan proposal lebih lanjut melalui Biaya Custom Software: Cara Membandingkan Quotation Vendor.
Prinsipnya:
Compare Responsibility, Not Only Price.
Dari Estimasi ke Business Case
Setelah estimated development cost tersedia, pertanyaan berikutnya bukan hanya apakah perusahaan mempunyai budget.
Pertanyaannya:
Business value apa yang harus dihasilkan agar Rp1,25 miliar tersebut masuk akal?
Misalnya system diharapkan mengurangi manual workload, mempercepat order cycle, menghindari additional hiring, mengurangi error, mempercepat billing, atau meningkatkan transaction capacity.
Investment decision kemudian dapat dibandingkan dengan:
Baseline → Expected Improvement → Annual Benefit → Investment → Time-to-Value → Lifecycle Cost
Dengan begitu, software project tidak hanya menjadi:
IT membutuhkan Rp1,25 miliar.
Tetapi:
Perusahaan mempertimbangkan Rp1,25 miliar untuk memperoleh capability yang diharapkan memperbaiki KPI tertentu.
Ini membuat conversation antara IT, finance, dan business lebih sehat.
Budget juga Harus Memperhitungkan Apa yang Terjadi Setelah Go-Live
Development adalah first investment.
Setelah go-live, terdapat hosting, maintenance, monitoring, support, security updates, dependency upgrades, minor enhancements, dan future integrations.
Perusahaan sebaiknya membuat dua budget terpisah:
Build Budget
dan
Run & Change Budget
Jika project hanya mampu dibangun tetapi tidak mampu dibiayai untuk dioperasikan secara sehat, investment planning belum selesai.
AWS juga menempatkan cost optimization sebagai continuous process sepanjang workload lifecycle, bukan aktivitas satu kali saat architecture dibangun.
Karena itu, RAB enterprise yang baik minimal mempunyai view tahun pertama dan operating assumption untuk tahun berikutnya.
Crocodic Application Cost Estimation Assessment
Jika perusahaan sudah mempunyai ide aplikasi tetapi belum mempunyai scope yang cukup jelas untuk meminta quotation yang comparable, Crocodic dapat melakukan Application Cost Estimation Assessment sebelum development dimulai.
Assessment menggunakan chain:
Business Problem → Process → Required Capability → Module Map → Complexity → Integration Map → Data → Security → Non-Functional Requirement → Delivery Scope → Cost Range
Assessment dapat menghasilkan enam output.
1. Business Capability Map
Menentukan capability apa yang benar-benar dibutuhkan untuk menyelesaikan business problem.
2. Module Breakdown
Memecah application menjadi base platform, simple modules, medium modules, dan complex modules berdasarkan business logic.
3. Integration Map
Mengidentifikasi system yang perlu dihubungkan, data flow, direction, frequency, API readiness, dan potential dependency.
4. Technical Scope
Memetakan migration, security, performance, audit, infrastructure, deployment, monitoring, serta operational requirement.
5. Cost & Risk Model
Menghasilkan estimated range beserta assumptions dan items yang masih mempunyai uncertainty tinggi.
6. Phasing Recommendation
Membedakan capability yang harus berada pada Phase 1, yang dapat ditunda, serta feature yang belum cukup mempunyai business justification.
Output akhirnya berupa:
Business Requirement → Module → Complexity → Integration → Technical Requirement → Estimate → Assumption → Risk → Phase
Dengan begitu, management mempunyai baseline sebelum membandingkan software-house quotation.
Jika perusahaan sedang merencanakan aplikasi web enterprise dan masih mendapat estimasi vendor yang berbeda jauh, diskusikan Application Cost Estimation Assessment dengan Crocodic.
Tujuannya bukan menghasilkan angka paling murah.
Tujuannya adalah memastikan setiap rupiah dalam budget dapat ditelusuri kembali ke capability, complexity, dan dependency yang memang dibutuhkan bisnis.
Crocodic Perspective: Jangan Tanyakan “Berapa Harga Aplikasi?”, Tanyakan “Apa yang Membuatnya Kompleks?”
Dalam perspective Crocodic, biaya software tidak seharusnya muncul sebagai angka misterius dari vendor.
Management seharusnya dapat melihat bagaimana angka tersebut terbentuk.
Working framework-nya:
Business Process → Required Capability → Module → Business Logic → Dependency → Integration → Data → Security → Quality → Operation → Cost
Dari framework tersebut, beberapa prinsip muncul.
Jumlah halaman bukan ukuran complexity.
Jumlah feature bukan ukuran business value.
Jumlah integration bukan ukuran integration effort.
Harga development bukan Total Cost of Ownership.
Dan quotation termurah bukan otomatis cost paling rendah.
Estimasi yang sehat mempunyai traceability antara:
What the Business Needs → What Must Be Built → Why It Is Complex → What It Costs
Dengan traceability tersebut, management dapat melakukan sesuatu yang jauh lebih penting daripada negosiasi rate.
Management dapat mengubah scope dengan sadar.
Jika budget perlu turun, management tahu capability mana yang dapat dipindahkan ke phase berikutnya.
Jika requirement baru muncul, impact terhadap budget dapat dilihat.
Jika vendor memberikan angka berbeda, assumption-nya dapat dibandingkan.
Software estimation akhirnya berubah dari negotiation menjadi decision tool.
Kesimpulan
Tidak ada harga tunggal untuk aplikasi web enterprise karena tidak ada dua enterprise applications dengan responsibility yang benar-benar sama.
Cost ditentukan oleh lebih dari jumlah screen atau jumlah developer.
Enterprise perlu melihat:
Base Platform
Module Complexity
Workflow & Business Rules
Integration Complexity
Data Migration
Security
Quality Assurance
Performance & Scalability
Infrastructure & Deployment
Delivery Governance
Contingency
GAO Cost Estimating and Assessment Guide menunjukkan bahwa software cost estimation perlu mempertimbangkan development, risk, schedule, infrastructure, dan sustainment. Microsoft Azure Architecture Center menunjukkan bahwa integration sendiri dapat membutuhkan berbagai architecture pattern dari direct API sampai asynchronous messaging dan orchestration. Sementara NIST Secure Software Development Framework memperlihatkan bahwa security perlu menjadi bagian dari software-development lifecycle, bukan add-on setelah development selesai.
Karena itu, sebelum bertanya:
“Berapa harga membuat aplikasi web?”
perusahaan sebaiknya menjawab lebih dahulu:
“Berapa module yang dibutuhkan, seberapa kompleks business logic-nya, system apa yang perlu diintegrasikan, data apa yang perlu dipindahkan, dan standard operation apa yang harus dipenuhi?”
Barulah angka budget mempunyai konteks.
Pada akhirnya, estimasi software enterprise yang baik bukan estimasi yang menghasilkan angka paling rendah.
Ia adalah estimasi yang membuat management memahami apa yang sedang dibangun, mengapa bagian tersebut membutuhkan biaya, risiko apa yang masih belum diketahui, dan business capability apa yang akan diperoleh sebagai imbalannya.

Discussion