Use Cases : Use cases are prepared pretty good. Especially explaining what everything is beforehand is pretty helpful to understand concepts in upcoming sections. Everything is detailed pretty good as well but I think at some parts it is too detailed, at some parts simplicity should not be forgotten in order to make it easy to understand. Also the number of use cases is not enough in my humble opinion.
Sequence Diagram: The graphs are not big enough. I cannot see what is written on them.I tried to click them to make them bigger but it didn't work. I couldn't find a way to look at the graphs actually. In the search sequence diagram the word 'keyword' should be explained to prevent any confusion. Also the explanations are not long enough in preconditions and step sections.
Activity Diagram: The graphs are pretty good and big enough. In 'search for a topic or post' activity diagram, in the most right one it does not say 'optional' but there is an arrow at the most left part without saying anything. I think it is confusing because the ones in between have a label 'optional', but the most left arrow implies that we can go directly from there, in which we are not using the most right part. Therefore 'optional' label should be added to the right most arrow, or the most left arrow without any label should be removed to remove the confusion from the activity diagram. The rest is pretty good.
Class Diagram: The function 'get topic with name' should not return just a string because more than one topic or post can have the same name, in fact the change of returning a list is much more than returning just a single string, therefore it should return a list. Likewise other functions that return to just a single string should be replaced with a list of strings. Rate does not have to be an integer, i.e 3.2, though 'setRate' method is okay with integer type. 'GradeAPost' and 'setRate' basically do the same thing. One of them looks like redundant.
Use Cases : Use cases are prepared pretty good. Especially explaining what everything is beforehand is pretty helpful to understand concepts in upcoming sections. Everything is detailed pretty good as well but I think at some parts it is too detailed, at some parts simplicity should not be forgotten in order to make it easy to understand. Also the number of use cases is not enough in my humble opinion.
Sequence Diagram: The graphs are not big enough. I cannot see what is written on them.I tried to click them to make them bigger but it didn't work. I couldn't find a way to look at the graphs actually. In the search sequence diagram the word 'keyword' should be explained to prevent any confusion. Also the explanations are not long enough in preconditions and step sections.
Activity Diagram: The graphs are pretty good and big enough. In 'search for a topic or post' activity diagram, in the most right one it does not say 'optional' but there is an arrow at the most left part without saying anything. I think it is confusing because the ones in between have a label 'optional', but the most left arrow implies that we can go directly from there, in which we are not using the most right part. Therefore 'optional' label should be added to the right most arrow, or the most left arrow without any label should be removed to remove the confusion from the activity diagram. The rest is pretty good.
Class Diagram: The function 'get topic with name' should not return just a string because more than one topic or post can have the same name, in fact the change of returning a list is much more than returning just a single string, therefore it should return a list. Likewise other functions that return to just a single string should be replaced with a list of strings. Rate does not have to be an integer, i.e 3.2, though 'setRate' method is okay with integer type. 'GradeAPost' and 'setRate' basically do the same thing. One of them looks like redundant.