When your site is populated with data and pages you should create a sitemap. This is basically a file called sitemap.xml which is placed in the root of your site. It contains the structure of the URL's of your Joomla website in an XML-file. This helps Google and other search engines to determine the structure of your website and how to reach all parts of it. Actually you could see this as a part of the internal-link-building process. The file looks like this:
<?xml version="1.0" encoding="UTF-8"?>
For smalll sites with relatively little content or sites that don't change too much to generate it manually or using a sitemap generator and just place the file in the root of your site. An example of an XML-sitemap generator is http://www.xml-sitemaps.com/. Just supply the URL of your home page, and the tool will crawl your site just like the Google Bot would do. After crawling, you can download the sitemap in various formats.
For Google, use either the sitemap.xml version, or the G-zipped version sitemap.xml.gz. You can also download a HTML version that you can possibly use to offer on a sitemap page for your users.
Once you have uploaded the sitemap to the root of your site, make sure you submit it to Google, Bing and Yahoo using their Webmaster Tools.
If images are very important for your website you might even add the url's for the images in an image sitemap, though for most sites this might not be necessary. This would look like this:
Of course there are quite a few extensions that can do this for you, though personally for smal sites I prefer to create and submit those manually, one plugin less.
Xmap is a popular extension, but there are some more. If you already use MijoSEF, a sitemap-generation function is already included, use that one.