Domain Map: WepNG Business Logic
Overview
The core business logic resides in WepNG_Business.Model.Business.
Unlike a clean DDD architecture, it seems to mix Business Logic, MVC Controllers, and Management tools.
Major Functional Areas (Inferred)
1. Core Business Logic (WepBusiness)
The WepBusiness namespace is segmented by functional area:
| Module | Description | Key Responsibilities |
|---|---|---|
| BO | Back Office | Major Module. Managing strict business operations (finance/admin). |
| OMGT | Order Management | The largest module (745 items). Handles the core booking lifecycle. See OrderFee Specs. |
| CRM | WepNG_CRM | Customer relationship logic, likely shared with the CRM MVC app. |
| WepAccess | Collaborator Portal | External portal for Interviewers, Coordinators, and Host Families. |
| MNT | Maintenance / Masters | Configuration tables, master data (Countries, Currencies, Products). |
| CMS | Content Management | Logic for managing website content (News, Articles). |
| Forms | Forms Management | Legacy forms handling logic. |
| FRONT | Frontend Logic | Business rules specific to the public website. |
| WA | Work & Travel | Specific domain logic for "Work Abroad" programs. |
| INET | Intranet | Internal tools and staff functionalities. |
| MyWep | Student Portal | Backend logic for the "MyWep" student area. |
| Common | Shared Kernel | Cross-cutting domain logic used by all modules. |
Visual Dependency Map
2. Infrastructure & Shared Kernel
Foundational libraries upon which the business modules depend.
- Data Access:
WEPV2DataContext(Entity Framework). - Core Libraries:
EITWEP.Business: Legacy business objects and EF entities.EITWEP.WEPUtils: Shared utilities, helpers, and extensions.
- Infrastructure Services: Emailing, PDF Generation, and File Storage logic.
3. Application Components (Components, WepMvcControllers)
- Components: Shared UI/Business components.
- WepMvcControllers: Business logic tightly coupled to MVC controllers (an anti-pattern common in legacy systems).
4. Products & Catalogs (WepProduct)
Specific logic for the diverse product catalog (High School, Languages, Jobs, etc.).
Evolution Strategy
This map serves as a starting point to decouple the monolith.
Ideal Future State: Extract WepBusiness into distinct bounded contexts (e.g., SalesContext, ProductCatalogContext).