Tuesday, September 8, 2009

Exercise 7




1. Why is the perception getting stronger that integration will become a critical factor in coming days?

:

The Internet is showing more businesses to a global customer base which means that organisations are faced with a heterogeneous environment as customers have different types of operating systems, applications, and hardware. In order to remain business competition, they must be able to operate across distributed systems by having a greater integrated architecture, customers can gain access to a wider variety of information and services (Oracle, 2007). The application and web service standards such as XML and SOAP integration will become an increasing requirement for the business to participate over divided systems

2. What is the relationship of AJAX to JQuery (jquery.com) and the lightweight Web 2.0 javascript framework called MooTools (mootools.net) within the enterprise software architecture?

Nowadays, many people is getting start with JavaScript with which we have two options that is JQuery and Web2.0 javascript called MooTools.

Generally, jQuery is at least a dozen JavaScript frameworks. The Web 2.0 has called upon JavaScript that defines any Web 2.0 site. This huge increase of workload for JavaScript has been called for JavaScript frameworks which do common Web 2.0 tasks for us about visual effects like fading, DOM traversal or manipulation. Ajax to jQuery has become one of the most popular JavaScript framework, because of its small footprint, and it focus on the core tasks shared through any Web 2.0 project.

MooTools is a lightweight framework, however MooTools is not another lightweight framework which stack-up. MooTools divide the codes by developing functions in small code bases.

In detail, jQuery focuses on expressiveness, quick and easy coding, and the DOM during MooTools focuses on inheritance, extension, legibility, and maintainability. jQuery is easy to get started and see quick results, but it can turn into code which is hard to keep, meantime MooTools takes longer to require you to write more code upfront before user see results. Both frameworks maintain their cores rather lean, leaving it to users to write extensions. MooTools gives users tools to code anything, and gives user extensibility and holistic approach of a superset of jQuery’s features, but jQuery focus on a slick DOM API that does not interfere user from using the native methods of JavaScript like MooTools


Reference

AJAXwith.(n.d.). MooTools – A Review. Retrieved August 29, 2009, from http://www.ajaxwith.com/MooTools-A-Review.html

JavaScriptKit.(n.d.). "Learning jQuery" Book review. Retrieved August 29, 2009, from http://www.javascriptkit.com/javatutors/learningjquerybookस.html


3. What are the similarities between the object-oriented development using model-view-controller (MVC) in Ruby on Rails 2.0 and Action Script 2.0 (Flash animations)?

:

Ruby and ActionScript are similar in which both applications are object-oriented languages. Usually, ActionScript is used as the frontend of applications while Ruby on Rail is used as the backend (Zhang, 2008). They use the Model-View-Controller (MVC) model in application development, even if there is the difference in the structure way. However, the general functions based on the model are common.

It is generally believed that each components of the model is self contained, in this case, if one component changes, it would not influence other two components. So it reduce coding and errors. The generic elements both Ruby on Rails and ActionScript of the three elements that makes the MVC model.

Model
Handles both the data that needs to be retrieved from the database and applies business rules or logic so it acts as a gatekeeper and data store. Instructions come from the controller.

View
The view
produces the interface data from the model.

Controller
The controller accepts user input usually from the browser.
Decides how to
control a particular request.
Combine information from the browser request and creates, or updates data

Finally, these two frameworks there have been tried to organise on Ruby on Rails “convention over configuration” via a development project which is called JumpShip that is based on an ActionScript. The main purpose is to remove Flash Remote and replace it with Ruby on Rails and Rails Gateway (Scanlon, 2008)

Sources:

Zhang, M. (2008). ActionScript Framework JumpShip 3.1 Released with Extensive Ruby on Rails Support. InfoQ.com. Retrieved
September 3, 2009, \from http://www.infoq.com/news/2008/06/jumpship-31-released

Scanlon, J. (2008). JumpShip Retrieved September 3, 2009, from http://osflash.org/projects/jumpship

4. What does it mean to develop RESTful practices into our web applications?

A RESTful web service is a implemented simple web service using HTTP. Web service can be thought about as a collection of resources.A RESTFul design appropriate when the web services are absolutely stateless। A good test is to consider whether the interaction can survive a restart of the server.If the web service return is not smoothly run, then the caching infrastructure that web servers and other mediators essentially provide can be enforced to improve performance. However, the developer should take care, because caches are limited to the HTTP GET method for many servers.

In RESTFul web service, there is a mapping between the HTTP methods. The following guidelines are enough:

  • GET is used to recover data on a resource.
  • POST is used to create a new resource.
  • PUT is used to update existing data.
  • DELETE is used to remove a data.

Reference

Peej.(n.d.). A RESTful Web service, an example. Retrieved September 2, 2009, from http://www.peej.co.uk/articles/restfully-delicious.html


Workshop 2

1. Setup a focus group to work on the Ruby on Rails workshop via interact tools as a class.

There is no doubt that in order to communicate between students and lecturer Professor, Peter Dalmaris, have made google group webpage to focus the our studying. It is generally provide that students are able to interact with each other during subject schedule. ITC594-382 is based on GoogleGroups that is powered by Google. Using this group webpage, every student will discuss on e-business study and any problems. The group page is the following:

http://groups.google.com/group/itc594-382










2. What is meant by “convention over configuration” and how does it reduce coding?


Convention over configuration means the programmer needs to identify configuration that is unconventional. The Programming is a making decision to make such as how to organize your files, what conventions to adopt, and how to treat database access. If user decided to use a database abstraction layer, user will need to write it. Users need to do all this before user go to the business of modelling. However, Ruby on Rails lets them get started right away by encompassing a set of intelligent decisions about how your program have to work, alleviating the amount of low level decisions (Fisher, 2008). Hence, users could focus on any problems


Reference
Fisher, T. (2008). Ruby on Rails Bible. John Wiley and Sons Press


3
Further work on understanding MVC:
a. See the wiki at http://wiki.rubyonrails.org/rails/pages/UnderstandingMVC
b. Do the MVC tutorial at http://wiki.squeak.org/squeak/1767

a
.

The topic is no longer exists.
b
.

The tutorial summarizes the Model-View-Controller pattern, such as the developer of MVC model and MVC design pattern. Smalltalk-80 that is a classic standard ClassBuilder language had overlapping Windows and MAC. MVC has been accepted a better way to construct software applications. MVC is a better way, because it makes easier to understand, develop, and maintain an application(Smalltalk-80, 2006).



References
Smalltalk-80. (2006). Retrieved March 10, 2009, from http://wiki.squeak.org/squeak/373
4
Got a spare hour or so? I recommend the UC Berkeley RAD lab’s Ruby on Rails Short course at http://youtube.com/watch?v=LADHwoN2LMM

This
Youtube video explain the followings;

-Web applications

- MVC design pattern

-SQL

-Hello World
-Rails
-AJAX
-Configure

-Deploy

First of all, there is a review of web applications, such as how it works, how it interacts with others, and how HTTP and HTML works. After that, he tells about SQL table structure and relation among web application and data base. And he talks Rails through basic starting “Hello World”, and guide the MVC design pattern. And then, he explains the term of "Convention over Configuration", and illustrates the example again to clarify the new terms. At the end, he finalize the speech by explaining Ruby and the properties of Rails framework. Finally, the terms of "Ruby" and "Rails" and programming structure are mentioned. Thus, Strength of the Ruby on Rails understands me as clearly and concisely.


5 Read the Flash article using ActionScript by Colin Moock titled “The Model-View-Controller Design Pattern “at http://www.adobe.com/devnet/flash/articles/mv_controller.html

The Model-View-Controller Design Pattern used with MVC pattern. Basically, we can separate the Model that holds the data of the application, the view that is the visual presentation, and the Controller that is interaction. Therefore, the most important thing is the how model, view and controller. Moreover, it provides the basic services for the Model-View relationship.

The concept of the Model-View-Controller (MVC) design pattern of this article is essentially separates into three distinct classes:


Model: Implements the observer pattern and sends reports to the view

View: Holds a reference to the Model and the Controller
Controller: Holds a reference to the Model and updates via the view

The all of the above knowledge is about basic architecture of MVC. Moreover, this allows developers to work on an application together more efficiently.




Challenge Problems

1) How is Rails structured to follow the MVC pattern?
2) Apply the MVC design approach to our Project: Online Taxi Booking System.

In this part of the workshop, I am going to show you how can a MVC pattern be constructed on Rails framework. So we need to create a sample application to introduce details and online taxi booking system will be a good example for it. On this project, there will be two tables to hold user data and instant rails will be quite enough to complete the requirements.

First of all, we need to construct application file structure based on MVC pattern.

Open a command prompt and go to C:\InstantRails-2.0-win\rails_apps

Command "rails taxi" and you will see that it will create all required file structrure like below

We need to enter the "rails taxi" on command।


















And then enter "cd taxi" on command
































Create the taxi sqlite3 database using “rake db:create RAILS_ENV='development'” command। After that talk to the cmd command as "rake db:migrate".














Then we can see taxi file on application folder in C ड्राइव















Here, we require to make elements like destination, time, passenger, origin। We enter "ruby script/generate scaffold destination suburb:string no_of_passengers:integer taxi_type:string time_required:time origin_id:integer" into command. After that, we command "rake db:migrate". And input “ruby script/server” to run it and display online taxi booking system on browser.















To start form type “http://localhost:3000/” into address bar















Add “destinations” -http://localhost:3000/destinations। And it will represent from of taxi booking system that we have made before.















A browser display “New destination” ,and we fill up all category















Result
















Edit page



Monday, September 7, 2009

Exercise 5

Case A: Microsoft SQL server
The relational DBMS uses Structured Query Language (SQL) as a standard. Microsoft SQL Server 2008 has support for .NET Framework, so that stored procedures can used be in any of the .NET languages. Microsoft Dreamspark at dreamspark.com is an interesting site for the student/developer using Microsoft products.

1. Investigate the. SQL Server 2008 architecture available from the Dreamspark website.

Component Architecture
The diagram below shows the three-tier architecture of a Reporting Services system. It shows the report database and data sources for the data tier, and components in the middle tier, and the client applications and built-in or custom tools in the presentation tier. Thus, it describes not only the flow of requests and data among the server components, but also components sending and retrieving contents from the data store.




















Applications
There are three applications which run in the same Windows service:
• Report Manager: It is illustrated by the Report Manager component in the diagram. This is a browser application which assists front-end access to the Reporting Services Web service.
• Reporting Services Web service: it is described as the Web service components in the diagram. This handles on-demand, interactive report processing.
• Background processing application: It is described by the Windows service components in the diagram. This application progresses reports triggered from a schedule and delivers reports to target destinations.

Data Storage
The report server is a server which stores all properties, objects, and metadata in a database. Stored data involves reports, report models, and the folder hierarchy which supplys the addressing for every managed items. A report server database can provide internal storage either a single Reporting Services installation or multiple report servers.

Extensions
The report server provides custom authentication extensions, data processing extensions, report processing extensions, rendering extensions, and delivery extensions. A report server requires at least one authentication extension, data processing extension, and rendering extension. Delivery and custom report processing extensions are optional, but necessary when a user wants to support report distribution or custom controls. There are six parts in this area.
Security Extension: Security extension is used to authenticate and authorize users and groups to a report server. Thus, one security extension is able to be only used in a single Reporting Services installation. A user can replace the default Windows Authentication security extension.
Data Processing Extensions: Data Processing extensions are used to query a data source and return a flattened row set. A user can have the extensions which are involved in Reporting Services.
HTML Rendering Extension: When a user request a report from a server via a Web browser, the report server database uses the HTML rendering extension to render the report. And the HTML rendering extension generates every HTML by UTF-8 encoding.
Excel Rendering Extension: The Excel rendering extension renders reports is able to be fixed and viewed in Microsoft Excel.
The Comma-Separated Value (CSV) Rendering Extension:CSV rendering extension renders reports in comma-delimited plain text files, without any formatting.
XML Rendering Extension: The XML rendering extension renders reports in XML files. These XML files can be stored or read by other programs.
Image Rendering Exstension: The Image rendering extension renders reports to bitmaps or metafiles.
PDF Rendering Extension: The PDF rendering extension renders reports in PDF files
Microsoft Word Rendering Extension: It renders a report as a Word document
Delivery Extensions: The background of processing application uses delivery extensions to deliver reports to various areas.

Reference
http://msdn.microsoft.com/en-us/library/bb522673.aspx

2. Test out the SQL Server Express as a lightweight application development tool. SQL Server 2008 Express Edition and report your findings.

Test steps are below:













Installation center














Select Database Engine Services and Management













Installing after every configuration












This is a server management studio that manages all kind of business data












Integrate with Visual Basic file

Microsoft SQL Server 2008 Express Edition is a free development application. It supports development, involving SQL server2008 database engine and SQL Server Management Studio Express.

The features of Microsoft SQL 2008 Express Edition are the following:
-Reporting capabilities, full-text search, and a graphical management tool
- Compatible with all SQL server 2008 editions
- Can store all kinds of business data
- High performance and compatibility in product
- Work with Visual Basic Studio 2008 and ASP.NET for easy to work
with all development process
-Reporting with Microsoft office application
-Access data with PHP through SQL server drive
-Manage any kind of structured data such as XML

Thus, Microsoft SQL server 2008 Express is designed to work easily with many development application.

References:
Microsoft Dreamspark.(n.d.). Mircosoft SQL server 2008. Retrieved August 30, 2009, from www.dreamspark.com
Microsoft.(n.d.). Retrieved September 1, 2009, from
http://www.microsoft.com/express/sql/default.aspx