The goal of this project is to create an online sport community network with well-known and popular IT technologies. A community network is complex enough to present and highlight the power and the weakness of these technologies in different situations.
The java language has become one of the most worldwide programming language over the years. It is famous for not only the object orientation, and desktop applications but it has powerful features on the server side. Spring framework is one of the main theme of this thesis which is a java-based solution for enterprise applications.
In enterprise applications it is very important that the data model fits to the business processes. If the application has a lot of data to handle data access and database operation must be efficient. The data model of a community network based on relationships and the structure changes all the time. The greatest weakness of the relational data model is the huge amount of relationships. Join operations can make queries really slow if we have millions of records in the tables. In opposite a graph model can be very suitable if there are a lot of relations in the data. The social network will have two implementations with the two data model in order to compare the main differences.
Besides the two different data access layer I focus on the typical challenges of enterprise applications. A social network cannot exist without authentication, authorization a user friendly web frontend, and testability is also necessary.