Good article here

And a few highlights from that article:

10 Questions Developers May Have Forgot to Ask

So here are some of the questions that developers may not have thought to ask and a little bit of commentary around each question.

1. eCommerce – Is this subscription?  If so, how many kinds of subscriptions? What are the rules for subscriptions?  Discount support?  Free-trials?  Bundling?  Coupons?  Often this ties to marketing support.  In other words, you want to offer a discount to a given group to provide incentive. Is it pay-to-play? Do you transact immediately or on delivery of some product or service? Do you have a merchant account already set up? Do you have a payment gateway?

2. Targets – Is this browser only?  How concerned are we about design for mobile?  Which devices? Native mobile apps?  Obviously, it’s far simpler to aim for browser-based systems and basically aim your design to work okay on mobile devices with some additional effort on the part of the user.

3. Registration – will you support Facebook Connect or similar authentication?  Will you also have a separate login?  See also – When to Use Facebook Connect – Twitter Oauth – Google Friend Connect for Authentication.  Do you need to round trip an email to validate the email?  Captcha? How much member profile information do you need before allowing a user to login?

4. Member Profiles – What data is included?  Is there a step-by-step wizard?  Pictures?

5. Social Integration/Viral Outreach – are you integrating in some way with social networks?  Is your integration limited to login and “like” buttons or are you building a presence within the social networks themselves? Messaging?  Any other kind of viral outreach?  See Branchout an Example of Viral Spread Opportunity for Startups.  Refer a friend?  Cloudsponge for email invites to large group?

6. Communication/Forums – are there discussion forums? Commenting?  Messaging?  Flagging? Moderation?

7. Social Interaction – how do you represent users/members to one another?  Is there interaction?  What kinds?  Friends?  I would actually suggest that asking if you want friending/connections is a bit of a trick question.  Generally, the answer should be “no.” How, if at all, are users grouped by the system? By background (employer, university)? By preferences?

8. Location/Geography – are you using geographic information?  How?  Is your application location-aware? Will you tap into geolocation services provided by the browser or license a third-party lookup table? How does the application behave when location data is not available?

9. Gamification/Scoring – any kind of scoring and/or gamification to encourage participation? Are there achievements and badges? A leaderboard among users or groups?

10. Video (and Audio) – if you have video, are you hosting it or can we use YouTube, Vimeo?  Do you need to process user-contributed media?  What about reporting and moderation? Do you want Flash video, HTML 5 video, or both? Does it need to playback on mobile devices?