Jean Piaget's theory of cognitive development is composed of four stages. The theory suggests that individuals move through various stages of mental development and is focused on understanding how children acquire knowledge and the nature of intelligence.
The first stage is the sensorimotor stage. That stage goes from birth to about 2 years old. This stage explains that the child learns about the world around him or her through movements and sensations, and the child also learns that his/her actions can cause things to happen around them.
The second stage is the preoperational stage and goes from 2 to 7 years of age. In this stage, children begin to think symbolically. They learn to use words and read, but the child also tends to struggle with seeing things from the perspective of another person. This is a very concrete thinking stage.
The third stage is the concrete operational stage. It goes from age 7 to 11. The child is capable of much more logical thought in this stage and reasoning skills are developing. Children at this stage are also capable of better empathizing with other people or kids.
The final stage is the formal operational stage. This stage goes from age 12 to adulthood. Abstract thinking is now possible as well as deductive logic and reasoning.
The second half of the question is subjective. Feel free to discuss strengths and weaknesses as you see them. Personally, a strength that I see is that Piaget does identify that certain types of learning and thinking are not possible for children of specific ages. It doesn't do any good to put a logic class in elementary school, but it does make sense for older children. A weakness of the theory is the defined ages. Some children simply develop faster or slower than others. You can't lock all children into those specific age groupings and expect them all to perform at equal levels of cognitive development.