improve specification for model

This commit is contained in:
hannes.kuchelmeister
2020-02-06 10:33:08 +01:00
parent 9cd40fdf11
commit 50785d1bb0

View File

@@ -21,9 +21,54 @@ package Manager {
} }
package Model{ package Model{
class ConfigurationModel package ConfigurationModel {
class PreferenceModel class Configuration {
class ProductStructureModel configuration : List<String>
}
class ConfigurationVariable {
}
Configuration *-- ConfigurationVariable : variables
}
package PreferenceModel {
class Preferences {
getAllUserPreferences() : List<UserPreferences>
getAllRatingsByCode(code : String) : List<Ratings>
getRatingValue(code : String, user : String) : float
}
class UserPreference {
user : String
getAllRatings() : List<Rating>
}
class Rating {
code : String
value : float
}
Preferences *-- UserPreference : preferences
UserPreference *-- Rating : ratings
}
package ProductStructure {
class ProductStructureModel {
+ get_list_of_features(self) : List<ProductStructureElementModel>
+ get_list_of_characteristics(self) : List<ProductStructureElementModel>
+ isCharacteristic(code:String) : bool
}
class ProductStructureElementModel {
elementId : String
name : String
}
enum ProductStructureTypeEnum {
CHARACTERISTIC
FEATURE
CLUSTER
VARIABLE
}
ProductStructureModel *-- ProductStructureElementModel
ProductStructureElementModel <-- ProductStructureElementModel:children
ProductStructureElementModel --> ProductStructureTypeEnum:type
}
} }
package DAO { package DAO {
@@ -49,7 +94,7 @@ package Scoring {
class Threshold class Threshold
} }
package Rating { package RatingConverter {
class RatingToListConverter class RatingToListConverter
class FlatToListConverter class FlatToListConverter
class PerUserToListConverter class PerUserToListConverter
@@ -161,9 +206,10 @@ RecommendationManager --> ConfigurationDAO
RecommendationManager --> ScoringFunctionFactory :uses RecommendationManager --> ScoringFunctionFactory :uses
ConfigurationDAO --> ConfigurationModel ConfigurationDAO --> Configuration
ProductStructureDAO --> ProductStructureModel ProductStructureDAO --> ProductStructureModel
Scoring --> Model Scoring --> Model
@enduml @enduml