Building for 'Group Edition' and 'Professional Edition' there are some things to keep in mind:
Professional Edition doesn't support web service calls unless the org is API enabled (although this is possible it's not well documented)
Permission sets are not available in in PE, and including them in a package can cause issues uninstalling a package from a PE org.
Use of
@RemoteAction
calls aren't limited in the same way, so they're advisable for supporting PE.Some types of
Dashboards
aren't supported in GE and can limit the user from installing into their org.Sharing rules and
Profiles
are not supported in the same way in PESome objects such as
Campaigns
are not included in these editions by default.
You should always attempt to install your orgapp into a PE and GE edition org before releasing it to the AppExchange in order to confirm it's interoperability so that users coming in from the AppExchange don't encounter issues.
I'm giving a presentation at DEDreamforce '12 that Includes notes on supporting and testing multiple editions. It's called Team Development on the Force.com Platform for ISVs