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.

9.6 Keypad HyperlinksLet's look at a page with hyperlinks:<strong>Student</strong> LifeCalendarGradesUrgentMessagesFraternityPartiesNewsA numbered series of choices is presented in a list, with each choicehyperlinked to the appropriate target. We take advantage of theanchor tag's accesskey attribute to improve usability by letting theuser link to any of the choices with a single keypress.180none of the current responses are truly adequate, posts herown authoritative answer.• A week later Joe returns to world-o-cichlids.org and findsthat his list of "open" questions has gotten quite long andthat in fact many of these questions are no longer relevant<strong>for</strong> him. He clicks on the "close" button next to a questionand the server asks him "Which of the responses actuallyanswered the question <strong>for</strong> you." Joe clicks on a responsefrom Ned Malawinut and the database records (1) that thequestion has been adequately answered and should nolonger appear in a mentor's workspace, and (2) that NedMalawinut has contributed an answer that was seen asuseful by another member.• Joe has a question that he thinks might be ridiculous and isafraid to try it out on the community at large. When postinghe checks the "initially show only to my mentor" option andthe question gets sent via email to Jane and appears in herworkspace.• Jane returns to the server and decides that Joe's question isnot so easy to answer. She marks it <strong>for</strong> release to thegeneral membership.• Two weeks later Jane gets an email from the world-ocichlids.orgserver. A summary of some discussion threadsthat she has been following constitutes the bulk of her emailbut right at the top is a note "You haven't logged in <strong>for</strong> morethan a week and Joe, whom you're supposed to bementoring, has accumulated three questions that haven'tbeen adequately answered after five days." [This proddingmechanism addresses the issue revealed when a largemanagement consulting firm surveyed its employees asking"Whom are you mentoring?" and "Who is mentoring you?"When matching the responses there was surprisingly littleoverlap!]How can you estimate the ef<strong>for</strong>t required in building the full userexperience example? Start by looking at the number of new tablesand columns that you'd be adding to the system and the number ofnew URLs to which the server would be responding. Then try to finda subsystem that you've already built <strong>for</strong> this project with a similarnumber of tables and page scripts. The implementation ef<strong>for</strong>t shouldbe comparable.Let's start with the data model first. To support requests <strong>for</strong> andassignment of mentors you'll need at least one table,mentor_mentee_map with the following columns: mentee,169

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

Saved successfully!

Ooh no, something went wrong!