Sunteți pe pagina 1din 10

Web Application Development Assignment # 1 Due Date: Saturday, March 24, 2012

This is an individual assignment. Answer the following questions,

Q1: Briefly describe different Web Application Architectures and Key Components used in it.
Ans: Following are the different Web Application Architectures and their key components. Client/Server --Segregates the system into two applications, where the client makes requests to the server. In many cases, the server is a database with application logic represented as stored procedures. SOA - Refers to applications that expose and consume functionality as a service using contracts and messages. N-Tier / 3-Tier -- Segregates functionality into separate segments in much the same way as the layered style, but with each segment being a tier located on a physically separate computer. The three tiers are Web server, Application server and Database. MVC ArchitectureModel-view-Controller. It separates the software application into three distinct elements. The Model is how the underlying data is structured. The View is what is presented to user and the Controller is the element that performs the processing. This allows more flexibility and achieve loose coupling. MVP Architecture Model-view-Presenter. It is an interactive application architecture pattern used to separate the concerns of an applications data, presentation, and user input into specialized components. Model encapsulates all Business Logic and data in the application. View component represents the applications Presentation layer. The Presenter component is responsible for acting upon the model and the view.

Institute of Business Administration

Spring 2012

Q2: Compare and Contrast the merits and demerits of Object Oriented and Markup Languages.
Markup Language (standard) Long-term viability as an ISO standard Non-proprietary and platform-independent Supports user-defined tags reflecting the richness of documents

Disadvantages. Costly to set up, requiring real expertise SGML tools are expensive, compared to those for HTML Creating DTDs with SGML is expensive - especial labor SGML has a steep learning curve

Object Oriented Languages Responsive to changes Encapsulation Simplify Testing, debugging Easy to understand Avoid reinventing the wheel Easier to manage, to maintain Off-the-shelf software

Disadvantages Over generalization Articial class relations Unnecessary complications

Version 1.0

Institute of Business Administration

Spring 2012

Q3: Compare and contrast merits and demerits of HTML and XML Languages.

The most salient difference between HTML and XML is that HTML describes presentation and XML describes content. XML was designed to transport and store data, with focus on what data is HTML was designed to display data, with focus on how data looks

HTML Advantage: HTML is the base of a webpage. It is the language that truly "builds" the page with tables, divisions, and outputting text in certain formats, such as bold and underlined fonts. It's presence is dominating the web - it is the most widely accepted language for web design. Disadvantage: HTML is a simple language to most, but poor (Or even the best) markup structure by the user / webmaster can result in multiple browsers displaying the markup differently (Though that's not always the case). XHTML is a new form of HTML that combines some characteristics of XML and the actual language of HTML (Meaning, XHTML is just HTML with new rules). XHTML, along with Document Type Declarations, can fix the problem of multiple browsers displaying markup differently. XML Advantages: XML is used for organizing. It has a language markup just like HTML, using tags and whatnot. The tags are made up by the user (So <testing> is a real tag in XML), thus not much memorization is required. It is commonly used for RSS feeds, and other feeds accepting XML. It is a simple way to streamline news and updates. Disadvantages: XML does not "build" like HTML does. It is just a bunch of tags and words until put into a feed that churns XML into user-friendly data. Also, therefore, CSS cannot design XML, since XML does not initially "output" anything but the raw source.

Version 1.0

Institute of Business Administration

Spring 2012

Q4: Briefly describe SOAP, REST, RPC and HTTP,HTTPS Protocols used in web technologies
SOAP Simple Object Access Protocol. SOAP is an XML-based messaging protocol that can be used with any communication protocol, including HTTP. REST Representational State Transfer. It is an approach for getting information content from a Web site by reading a designated Web page that contains an XML file that describes and includes the desired content. RPC Remote Procedure Call. A type of protocol that allows a program on one computer to execute a program on a server computer. Using RPC, a system developer need not develop specific procedures for the server. The client program sends a message to the server with appropriate arguments and the server returns a message containing the results of the program executed. HTTP The underlying protocol used by the World Wide Web. HTTP defines how messages are formatted and transmitted, and what actions Web servers and browsers should take in response to various commands. HTTPS -- is the use of Secure Socket Layer (SSL) or Transport Layer Security (TLS) as a sub layer under regular HTTP application layering.

Q5: Briefly describe Different WEB/WAP technologies used in Web Engineering.


CSS3, HTML5 : They together are responsible for giving styling content and layouts in the web paradigm Web 2.0: Allows users to interact and collaborate via different medium like social media. JavaScript: it was present on web for a long time but the introduction of HTML5 has allowed it to enter the territory of Flash. Mobile devices are now capable of running Flash and JavaScript thanks to high processing power now available in them. Flash, Video & Audio Streaming: these technologies have been responsible for the increase in participation of users via internet. They enable quick media sharing via different services like YouTube. Content Management System: They have made the process of creating and managing content very easy and manageable. Software like Joomla have allowed novice users to create website and share their ideas and news with the world.

Version 1.0

Institute of Business Administration

Spring 2012

Q6: What is the difference between web based and internet based applications.
Web based application -- an application that is accessed over a network such as the Internet or an intranet. Internet based application an application that is only accessible from the internet.

Q7: Briefly describe the roles/functions of Web Server, Application Server, Content Server, File server, Email Server, Database Server, MQ Server, CA Server and Network Management Server
Web server it can be the hardware or software that helps us in delivering content to the users who access them via internet. Application server An application server is a server which provides software applications with
services such as security, data services, transaction support, load balancing, and management of large distributed systems.

Content server The server that is responsible for the management of the content that is displayed on the website. Filer server is a computer attached to a network that has the primary purpose of providing a
location for shared disk access

Email server is a program responsible for receiving, routing, and delivering e-mail messages. Database server is used for storing and managing the data. MQ server provides queuing services to the client. CA server Certificate servers validate, or certify, keys as part of a Public key infrastructure. Network management server used for managing the network and bandwidth control.

Version 1.0

Institute of Business Administration

Spring 2012

Q8: Briefly describe synchronous and asynchronous messaging used in Web Applications.
In synchronous messaging, there is real-time communication and collaboration for example Skype audio conferencing. In Asynchronous messaging, communication and collaboration takes place over a period of time. Email applications are a good example.

Q9: Briefly describe Thin client, Thick Client and Smart Client Web Applications.
A thin client (sometimes also called a lean or slim client) is a computer or a computer program which depends heavily on some other computer (its server) to fulfill its traditional computational roles. A thick client is a computer (client) in clientserver architecture or networks that typically provides rich functionality independent of the central server. Smart Client Web applications have specific functionality for users in web environment and can be updated automatically. Examples can include Facebook applications.

Q10: Briefly Describe the roles of W3C and IETF in Web Technologies.
World Wide Web Consortium (W3C) is an international community where Member organizations, a full-time staff, and the public work together to develop Web standards. Internet Engineering Task Force (IETF) develops and promotes Internet standards, cooperating closely with the W3C and ISO/IEC standards bodies and dealing in particular with standards of the TCP/IP and Internet protocol suite.

Q11: Prepare your detailed resume using simple HTML with maximum features available in it.
Attached

Version 1.0

Institute of Business Administration

Spring 2012

Q12: Briefly describe the merits and demerits of using CSS and XSL based technologies.
Advantages of CSS
Bandwidth - A stylesheet will usually be stored in the browser cache, and can therefore be used on multiple pages without being reloaded, increasing download speeds and reducing data transfer over a network. Reformatting or Progressive Enhancement With a simple change of one line, a different stylesheet can be used for the same page. Consistency - When CSS is used effectively, in terms of inheritance and "cascading," a global stylesheet can be used to affect and style elements site-wide.

Disadvantages of CSS
Lack of Variables - CSS contains no variables. This makes it necessary to do a "replace-all" when one desires to change a fundamental constant, such as the color scheme or various heights and widths. Inconsistent Browser Support - Different browsers will render CSS layout differently as a result of browser bugs or lack of support for CSS features. Poor Layout Controls for Flexible Layouts - While new additions to CSS3 provide a stronger, more robust layout feature-set, CSS is still very much rooted as a styling language, not a layout language.

Advantages of XML It is a simultaneously human- and machinereadable format.

Disadvantages of XML
XML syntax is redundant or large relative to binary representations of similar data.

It can represent the most general computer No intrinsic data type support: XML provides science data structures: records, lists and no specific notion of integer, string, trees. Boolean, date, and so on. It is platform-independent, thus relatively The hierarchical model for representation is immune to changes in technology. limited in comparison to the relational model or an object oriented graph. Forward and backward compatibility are XML namespaces are problematic to use and relatively easy to maintain despite changes in namespace support can be difficult to DTD or Schema. correctly implement in an XML parser. The hierarchical structure is suitable for most XML is commonly depicted as self(but not all) types of documents. documenting but this depiction ignores critical ambiguities.

Version 1.0

Institute of Business Administration

Spring 2012

Q13: Compare the merits and demerits of using J2EE N-Tier and SOA Architectures.
J2EE N-Tier Architecture The advantages of the multiple-layered design are found in the maintenance and evolution stage of the applications lifetime. As technologies and functionality requirements change over time it is easier to adapt the multi-layered application than it is a single layered design. The level of componentization achieved will directly influence the amount of effort needed to adapt the application the new requirements.

Disadvantages of N-Tier Since the design is more complex than the single or two layer design, the implementation will also be more complex. When compared to pure VFP single layered design data access performance may be affected. Because of the nature of the data access mechanisms the presentation layers user interface design may be affected. Although these are listed as disadvantages, they can be more accurately described as effects of the multiple layered architecture. This is because they may or may not have a negative impact, in fact, their impact may be positive.

SOA Architecture Reusability Ease of maintenance Reduced development cost Maintainability Total cost of ownership Standard

Disadvantages of SOA
SOA Architecture would not be suitable for applications with GUI functionalities. Those applications would become more complex if they use SOA architecture which requires heavy data exchange In case of standalone and short lived applications implementations, SOA will become an added burden

The SOA model does not involve programs that are object oriented.

Version 1.0

Institute of Business Administration

Spring 2012

Q14: Briefly describe key features of any 10 Web Application Development tools.
1. Accelerator Development Solutions provides end-to-end RAD generation and other productivity frameworks for C# and for cross platform support C. 2. Smartface Platform: A cross platform tool for Windows used to create mobile applications for J2ME, Symbian S60, BlackBerry and Android, using drag-and-drop tools and action editing. 3. Code::Blocks is a cross-platform C/C++ RAD IDE using wxWidgets; the latest developmental builds have a built-in form designer wxSmith, so it's similar to Embarcadero C++ Builder and Microsoft Visual C++/MFC now. 4. HyperNext is a freeware cross-platform software development system for Mac OS X & Mac OS 9, and Microsoft Windows XP & Vista. It has many similarities with HyperCard and can compile to both stand alone applications and stacks for the cross-platform HyperNext Player. 5. Ebase Xi is a commercial rapid application development platform that combines web browserbased user interface development, business process management and data integration into a single-technology IDE. 6. IBM Rational Business Developer Extension is a cross-platform, Rapid Application Development IDE for creating enterprise and web applications and services for Windows, Linux, Unix (Solaris, HPUX, AIX), System z and System i 7. IBM Rational Application Developer is a cross-platform, Rapid Application Development IDE for creating enterprise and web applications and services for Windows, Linux and Unix (Solaris, HPUX, AIX) 8. LANSA is a development environment for generating applications on multiple platforms. One of the main features of LANSA is its high level programming language, called RDML (Rapid Development and Maintenance Language). It is classified as a 4GL (4th generation language). LANSA-developed applications run on many systems including MS Windows, IBM i and Linux. 9. Lazarus is a cross-platform IDE similar to Embarcadero Delphi. 10. m-Power is a Software Development tool which automates application development and rapidly creates enterprise-class Web applications over any database or platform. 11. MyEclipse is a Rapid Application Development environment, focusing on enterprise Java and Web application development. The specialty MyEclipse "Blue Edition" is most similar to IBM Rational Application Developer. 12. NetBeans is a cross-platform, RAD IDE for creating visual desktop, mobile, web, and SOA applications for Linux, Windows and Mac OS X. The IDE officially supports Java, PHP, JavaScript and C/C++ programming languages. 13. Omnis Studio is a cross-platform, Rapid Application Development tool or IDE for creating enterprise and web applications for Windows, Linux, Solaris, and Mac OS X. 14. OpenROAD is a cross-platform IDE for Linux/Unix, Windows with embedded SQL support

Version 1.0

Institute of Business Administration

Spring 2012

Q15: Briefly describe merits and demerits of using Client-Server Application Software Models.
Advantages of Client/Server Centralized Resources All data stored in one location Easier to backup files and data Easier to find files and data

Efficient Software optimized for multiple users Hardware optimized for multiple users

Security One machine can secure entire network One central login

Scalability Easy to add new resources

Disadvantages of Client/Server If the server goes down, it takes part or the whole network with it. It is more expensive to install. Needs to be maintained by staff with high IT skills.

Version 1.0

S-ar putea să vă placă și