Skip to main content

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:

ModuleDescriptionKey Responsibilities
BOBack OfficeMajor Module. Managing strict business operations (finance/admin).
OMGTOrder ManagementThe largest module (745 items). Handles the core booking lifecycle. See OrderFee Specs.
CRMWepNG_CRMCustomer relationship logic, likely shared with the CRM MVC app.
WepAccessCollaborator PortalExternal portal for Interviewers, Coordinators, and Host Families.
MNTMaintenance / MastersConfiguration tables, master data (Countries, Currencies, Products).
CMSContent ManagementLogic for managing website content (News, Articles).
FormsForms ManagementLegacy forms handling logic.
FRONTFrontend LogicBusiness rules specific to the public website.
WAWork & TravelSpecific domain logic for "Work Abroad" programs.
INETIntranetInternal tools and staff functionalities.
MyWepStudent PortalBackend logic for the "MyWep" student area.
CommonShared KernelCross-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).