Designing a system of connected points and icons

How to create plug-in systems of dots and icons that are easy to turn on and off, as well as easy to turn into a native module?

After many trials and errors, I came to the conclusion that dots and icons are just too intertwined in the only business logic of the application, that they cannot be extraordinary in a simple form (many rules imply understanding the basic structure of the application, which makes things already quite connected)

Currently, I am doing everything as simple as possible - I excluded all business logic (validation, persistence, hamamization, notifications) in the class of service methods. These methods, however, have already become rather inhibited, and I am very afraid. There is no easy way to simply disable any of the underlying systems.

+4
source share
1 answer

As an idea, how about decoupling the events of the business logic that you care about, from how you consider them as points, badges, levels for the user? So you can sell walnuts in one place, such as the Ball Buzz badge to buy coffee for three consecutive Mondays during the football season.

Conceptually think about sending a message to all potentially interesting transactions and interactions with this reward module, which encapsulates (and hides from accountants) this fun functionality.


After further consideration of SO, there was already a substantial discussion of the subject. Of particular note are the “Best Way to Store Icon Criteria”, covering event notification and “Database Architecture for the Icon system with the overall architecture .

The relative merits of relational versus nosql / Mongodb for such a function, as well as the breakdown of business logic into stored procedures, were discussed.

It seems to me that there are many inventive wheels. Does anyone know the OSS framework or the Github projects arising in this area? Also, any useful articles or articles on the subject of badges specifically and gamification in general?

+5
source

All Articles