Constraints

Constraints are big-picture limitations or challenges, that you try to build your game inside. The most common constraint is a set number of components/cards. Others are playtime, amount of rules, and physical space. Various rules themselves can also be constraints.

Not a bad place to start

I used to design within constraints regularly, when I wasn't as serious about board game design. Huge constraints are a very newbie thing to do.

Constraints can force you to be very innovative inside that space. Also, they give you a fun challenge other than creating a great game (which is hard). If you're just designing for your own amusement, constraints are great.

Do not hold on to constraints

If you're serious, you need to let go of constraints. They serve a purpose, but eventually they strangle the game.

My first game was a farming game with the constraint that it had no rules. You just picked up the first card, and it told you to play it. And then, the game unfolded from there. This forced a whole lot of rules, and repetition of those rules, onto the cards. Eventually, it was correct to just have a little rules card. The game still feels super-simple, even though the constraint is gone.
Radlands was an exercise in building a deep card game with very simple rules, and nothing but cards. However, I pushed the limits of this, and the publisher broke out of the constraints. They added tokens, as a memory aid, and added a playmat (in the Deluxe version), as it can be hard for players to visualise the correct arrangement of the cards without one. Despite these additions, the game still feels like a pure card game, and the constraints have made it super-elegant.
My pirate game has ships, and they go on the board. You could carry six little cubes on your ship, and that was it. There was nothing outside the board. It made the game very clear and easy to understand. Eventually, I relented, however. Now there are also money and points tokens, that players keep in front of them.

Drift

Your vision for the game is another big constraint.

Your games are not going to be what you intended them to be. Create them, and then see what's fun. Let them go in that direction. In fact, I just create my game, get the basics hammered out, and then let the game drift. The game ends up not being what I had intended, but it does become a great game. I can still try to achieve the dream another time.

Whatever your great idea was, it was only a means to an end — a great game. That's if you're serious, of course.

I wanted my pirate game to evoke the feeling of sailing free on the high seas, and going on an adventure. It ended up being a game about players chasing each other around on ships, and stealing each other's cargo. It wasn't what I intended, but it was good.

If your game is inspired by another game, which my games often are, drift is a good thing. Some of my games started out much closer to their inspirations, and drifted comfortably far.