13.07.2015 Views

Software Engineering for Internet Applications - Student Community

Software Engineering for Internet Applications - Student Community

Software Engineering for Internet Applications - Student Community

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

environment, we identify users by their full names. Such heavyweightauthentication is at odds with the practicalities of running a publiconline community. For example, would it be practical to scheduleface-to-face meetings with each potential registrant of photo.netwhere the new user would show an ID? On the other hand, asdiscussed in the "User Registration and Management" chapter, wecan take a stab at authentication in a public online community byrequiring email verification and by requiring alternative authentication<strong>for</strong> people with Hotmail-style email accounts. In both public andprivate communities, we can enhance accountability simply bymaking each user's name a hyperlink to the complete record of theircontributions to the site.In the face-to-face world a speaker gets a chance to gauge audiencereaction as he or she is speaking. Suppose that you're a politicianspeaking to a women's organization, the WAGC ("Women AgainstGun Control", www.wagc.com). Your schedule is so heavy that youcan't recall what you aides told you about this organization, so youplan to trot out your standard speech about how you've alwaysworked to ensure higher taxes, more government intervention inindividuals' lives, and, above all, to make it more difficult <strong>for</strong>Americans to own guns. Long be<strong>for</strong>e you get going on your part inthe assault rifle ban, you'd probably have noticed that the audiencedid not seem very receptive to your brand of paternalism andmodified your planned speech. Typical computer-mediatedcommunication systems make it easy to broadcast your ideas toeveryone else in the service, but without an opportunity to get usefulfeedback on how your message is being received. You can send thelong email to the big mailing list. You'll get your first inkling as towhether people liked it or not after the first 500 have it in their inbox.You can post your reply to an emotionally charged issue in adiscussion <strong>for</strong>um but you won't get any help from other communitymembers, at least not through the same software, be<strong>for</strong>e you finalizethat reply.Perhaps you can craft your software so that a user can expose aresponse to a test audience of 1 percent of the ultimate audience, geta reaction back from those sample recipients, and refine themessage be<strong>for</strong>e authorizing it <strong>for</strong> delivery to the whole group.When groups too large <strong>for</strong> effective discussion assemble in the offlineworld there is often a provision <strong>for</strong> breaking out into smaller groupsand then reassembly. For example, academic conferences usuallyare about half "one to very many" lectures and half breaks and mealsduring which numerous "handful to handful" discussions are held.218You'll get new and different insights from your client by showing thema partially finished site than you did at the beginning of the project.Record your client's answers to the following questions:1. What changes would you like to see in the plan, now thatyou've tried out the prototype?2. What will be the fastest way to fill this site with real content?3. Are we collecting the right amount of in<strong>for</strong>mation on initialuser registration?6.23 Presenting Your WorkIf you're enrolled in a course using this textbook you'll probably beasked at this point to give a four-minute presentation of your work onthe content management system and skeletal implementation of thesite.Four minutes isn't very long so you'll need to rehearse and you'll wantto make sure that all team members know what they're supposed todo. As a general rule the person speaking should be addressing theaudience, not typing at a computer. Team Member A talks; TeamMember B drives. Perhaps at some point in the presentation theyswitch but nobody is ever talking and driving a computer at the sametime.Open with an "elevator pitch", i.e., the kind of 30-second explanationthat you'd give to someone you met during an elevator ride. The pitchshould explain what problem you're solving and why your system willbe better than existing mechanisms available to people.Create one or more users ahead of time so that you don't have toshow your user registration pages. Everyone who has used the<strong>Internet</strong> has registered at sites. They'll assume that you copied thebest practices from amazon.com and other popular sites. If you did,the audience will be bored. If you didn't, the audience will be appalledby your sloppiness. Either way it is best to log in as alreadyregisteredusers. In fact, sometimes you can arrange to prepare twobrowsers, e.g., Mozilla and MSIE, one of which is logged in as a newuser of the service and one of which is logged in as a siteadministrator or some other role that you want to demonstrate.It is best not to refer to "users" during your talk. Instead talk about theroles by name. If, <strong>for</strong> example, you are building a service around131

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!