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.

thousands of concurrent users. This is what databasemanagement systems were built <strong>for</strong>. Smart engineers buildWeb applications so that if the database is up and running,the Web site will be up and running. Period. Adding moreusers to the site will inevitably require adding capacity to thedatabase management system, no matter what othersoftware is employed. The thoughtful engineer will realizethat a provably scalable site is one that relies on no othersoftware besides the database management system and thethinnest of software layers on top, such as Apache,AOLserver, or Microsoft IIS.Semantic TagThe most popular Web markup language is HTML, whichprovides <strong>for</strong> <strong>for</strong>matting tags, e.g., "this is a headline" or "thisshould be rendered in italics." This is useful <strong>for</strong> humansreading Web pages. What would be more useful <strong>for</strong>computer programs trying to read Web pages is a semantictag, e.g., "the following numbers represent the price of theproduct in dollars", or "the following characters represent thedate this document was initially authored". More:http://www.w3.org/RDF/.SOAPSimple Object Access Protocol. A way <strong>for</strong> a Web server tocall a procedure on another, physically separate Webserver, and get back a machine-readable result in astandardized XML <strong>for</strong>mat. Useful <strong>for</strong> building a Web pagethat combines dynamic in<strong>for</strong>mation pulled from multiple<strong>for</strong>eign sites. Also useful <strong>for</strong> building a single Web <strong>for</strong>m thatcan per<strong>for</strong>m multiple actions at <strong>for</strong>eign sites on behalf of auser. See http://msdn.microsoft.com/soap/ andhttp://www.w3.org/TR/SOAP/.SGMLStandard Generalized Markup Language, standardized in1980. A language <strong>for</strong> marking up documents so that theycould be parsed by computer programs. Each community ofpeople that wishes to author and parse documents mustagree on a Document Type Definition (DTD), which it itself amachine-parsable description of what tags a marked-updocument must or may have. HTML is an example of anSGML DTD. XML is a simplified descendant of SGML.Soft LaunchPlacing a server on the public <strong>Internet</strong> but only telling ahandful of people about it gives the developers a chance tosee how real users interact with the system, fix bugs, andsee how the servers handle a gradually increasing load. Asoft launch like this is much safer than a Big Bang-style324looks at the ".html" extension and adds a MIME header to tell theuser's browser that this document is of type "text/html".The element here is useful mostly so that the element can be used to give this document a name. Whatever textyou place between and will appear at the top ofthe user's browser window, on the Go (Netscape) or Back (MSIE)menu, and in the bookmarks menu should the user bookmark thispage. After closing the head with a , we open the body ofthe document with a element, to which are added someparameters that set the background to white and the text to black.Some Web browsers default to a gray background, and the resultinglack of contrast between background and text is so tough on usersthat it may be worth changing the colors manually. This is a violationof interface design principles since it potentially introduces aninconsistency in the user's experience of the Web. However, we do itat photo.net without feeling too guilty about it because (1) a lot ofbrowsers use a white background by default, (2) enough otherpublishers set a white background that our pages won't seeminconsistent, and (3) it doesn't affect the core user interface the waythat setting custom link colors would.Just below the body, we have a headline, size 2, wrapped in an element. This will be displayed to the user at the top of the page. Weprobably should use but browsers typically render that in afrighteningly huge font. Underneath the headline, the phrase "PhilipGreenspun" is a hypertext anchor which is why it is wrapped in an Aelement. The

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

Saved successfully!

Ooh no, something went wrong!