Food Waste Reduction
food waste reduction
High Level Design Diagram
-
ProjectManager
-
Attributes:
-
managerID: String: Identifier for the project manager.
-
-
Methods:
-
assignService(client: Client, service: Service): void: Assigns a specific service to a client.
-
overseeProject(client: Client): void: Oversees the project for a specific client.
-
-
Relationships:
-
Coordinates with the Client.
-
-
-
Client
-
Attributes:
-
clientID: String: Identifier for the client.
-
name: String: Name of the client.
-
email: String: Email of the client.
-
-
Methods:
-
requestService(service: String): void: Allows the client to request a specific service.
-
-
Relationships:
-
Managed by the ProjectManager.
-
Requests services from the Service.
-
-
-
Service
-
Attributes:
-
serviceID: String: Identifier for the service.
-
serviceName: String: Name of the service.
-
description: String: Description of the service.
-
-
Methods:
-
executeService(client: Client): void: Executes the service for a specific client.
-
-
Relationships:
-
Requested by the Client.
-
Serves as a parent class for specialized services (AdvertisingService, WebDesignService, MarketingService).
-
-
-
AdvertisingService (inherits from Service)
-
Attributes:
-
platform: String: Specifies the platform for advertising.
-
-
Methods:
-
createAdCampaign(details: String): void: Creates an ad campaign based on given details.
-
-
-
WebDesignService (inherits from Service)
-
Attributes:
-
designTemplate: String: Specifies the design template for a website.
-
-
Methods:
-
createWebsite(client: Client): void: Creates a website for the client.
-
-
-
MarketingService (inherits from Service)
-
Attributes:
-
strategyType: String: Specifies the type of marketing strategy.
-
-
Methods:
-
executeMarketingPlan(client: Client): void: Executes a marketing plan for the client.
-
-