Sie sind auf Seite 1von 28

BUSINESS PROCESS PROVISIONING SERVICES USING CLOUD COMPUTING

1. INTRODUCTION
1.1 PROJECT SUMMARY Cloud Computing is the most emerging technology for sharing resources that include infrastructures, software, applications, and business processes. For the customized resource provisioning and data center environments we are implementing the concept of Resource Virtualization. However, most existing Cloud Computing platforms have not formally adopted the service-oriented architecture (SOA) that would make them not more flexible, extensible, and reusable. By bridging the power of SOA and visualization in the context of Cloud Computing ecosystem, in this project we proposed a seven architectural principles and derives ten interconnected architectural modules to form a reusable and customizable Cloud Computing Open Architecture (CCOA). Two case studies on Infrastructure and Business Cloud are used to deliver business and practical value of infrastructure and business process provisioning services over the Internet. in these project We also present some potential value added services of the proposed CCOA to guide strategic planning and other consulting practices of Cloud Computing. In the proposed solution we are going to maintain a user application, viewer application and moderator part to perform the cloud computing process. 1.2 SCOPE The scope of the proposed system is to create a service-oriented architecture (SOA) that

would make the resource sharing more flexible, extensible, and reusable. By this project we are going to share the resources for an application from appropriate distributed database.

Three objectives defining a good open architecture for Cloud Computing.


i. Reusable way of creating scalable and configurable provisioning platform for Cloud Computing (SSOA, virtualization). ii. The second objective is to propose a set of common and shared services for building Cloud Computing platforms. iii. To maximize the potential business value of Cloud Computing based on an extensible IT infrastructure and management system. 1.3 ABBREVIATIONS SOA OSI ISV SaaS
CPB

- Service-oriented architecture - Open Systems Interconnection - Independent software vendor - Software as a service
- Cloud Publishing Business

CCOA - Cloud Computing Open Architecture

2. SYSTEM STUDY
2.3 PROJECT MODULES
The various modules in the project are 1. Authentication 2. Uploading bulk images 3. Cloud maintenance 4. Image Verification & giving access permission. 5. Image viewer 1. Authentication This is the module in which the user (ie customer) and moderator going to perform the authentication. Here the new customers going to register into the site and perform the respected functionality. In case of existing customers, they will directly login into their application. For identifying the customers are human being we are going to use the concept of captcha image. In case of moderators they have a inbuilt authentication attribute. By using those attribute they login in to the system and performing their appropriate tasks. 2. Uploading bulk images

This is the customer part module in the cloud computing environment. Here, after performing authentication the customers going to update their profiles and upload the images based on the respective category. Here the customers can upload images as much he/she needed in a same time. These would be maintained at the customers database and the moderators sub database. 3. Cloud maintenance This is the main module in the cloud computing project. In this module we are going to handle with various resources available in the project. This is done by using resource virtualization concept. Here we are going to maintain three separate databases for the user (customer), moderator and the viewer. The moderators have full permission for handling the clouds. Also in this cloud part the databases of various applications going to be analyzed and provide a combined result.

4. Image Verification & Giving access permission. This is the module in which the moderator going to verify the images uploaded by the various customers. All the images are verified and check is all images are following the rights of the system. It follows means the images are transferred to permanent database and else those were rejected from the temporary database. At here based on the images the category going to be verified by the moderator. The comments that are posted by the viewer also verified at this module and giving permission for them. 5. Image viewer This is the front view of the cloud computing operation. At this module the images that are uploaded by the customers can be viewed and search based on the viewers choice. here the viewers have the option for posting comments for the respective images.

DATA FLOW DIAGRAM LEVEL 0

Login

Image upload

Moderator

Viewer

LEVEL 1

User

Uploadi ng images

Moderator

Verifying images

Viewer

View the images

Following rights Accepte d Stored in database

Reject

Post comment s

Customers

Moderator

Is a Authenticated User? Yes Upload photos

Perform registration No

Is a Authenticated Moderator? Yes Verify the photos From temporary database

Load into Customer Database

Load into Moderator temporary Database

Cloud

Following rights?

No

Reject

Yes Storing into moderator db

Viewer

View the Images

Post Comments

4.1 ARCHITECTURE DIAGRAM

Login

Uploading photos through cloud

Viewing the images That are verified by moderator

File Up loader

Viewer

Maintaining the database by keeping image selected/Rejected Transforming images from temporary database to permanent database Moderator Moderator

DIAGRAMS

Sequence Diagram

Up loader Performing authentication Uploading photos to Their database Uploading photos to Moderator temporary database

Moderator

Viewer

Performing authentication Verifying Uploading photos Viewing photos

Database design: cloud_temporary: tmp_cmdupload

tmp_imgupload

cloud_Admin: ad_login:

category:

User_view_image

Cloud_User: registration:

Conclusion
we have proposed the Cloud Computing Open Architecture (CCOA) based on seven architectural principles and ten architectural modules, by integrating the power of service-oriented architecture (SOA) and virtualization technology of hardware and software. We have also presented an Infrastructure Cloud as a case study to illustrate how to use CCOA to enable infrastructure-level resource sharing as a cloud offering. We have also studied a business cloud to illustrate how to use CCOA to separate the concern of business design from infrastructure enablement through Cloud Publishing Business.

REFERENCES
1.Business Cloud:Bringing The Power of SOA and Cloud Computing, 2008 IEEE International
Conference on Services Computing (SCC 2008), July 2008 2.Amazon Elastic Compute Cloud (Amazon EC2),http://aws.amazon.com/ec2/, 2009 3.On-demand business collaboration enablement with web services, Decision Support System 4."S3: A Service-Oriented Reference Architecture," IT Professional, vol. 9

5.http://www.st.ewi.tudelft.nl/~pawel/pub/virtualization.pdf 6.Introducing the windows azure platform , an early look at windows azure, sql azure, and .net services 7.http://en.wikipedia.org/wiki/Virtualization 8.http://www.microsoft.com/windowsazure/ 9.http://www.box.net/pricing 10.http://forums.juniper.net/t5/Architecting-the-Network/Parting-the-Mists-of-Cloud-Computing/bap/28183;jsessionid=42999FF798233CE8754524BC4F3D3B6C 11.http://www-03.ibm.com/procurement/proweb.nsf/objectdocswebview/file3++ibm+gto+overview+-+agerwala/$file/3+-+ibm+gtooverview+-+agerwala.pdf

Coding:
using System; using System.Data; using System.Configuration; using System.Web; using System.Web.Security; using System.Web.UI; using System.Web.UI.WebControls; using System.Web.UI.WebControls.WebParts; using System.Web.UI.HtmlControls; using localhost; public partial class _Default : System.Web.UI.Page { Service sr = new Service(); protected void Page_Load(object sender, EventArgs e) { if (!IsPostBack) { capchacode(); } } public void capchacode() { lblerror_captcha.Visible = false; Random ran = new Random(); int no = ran.Next(1000, 9999); Session["Captcha"] = no.ToString(); Image2.ImageUrl = "~/captcha.aspx"; } protected void btnsubmit_Click(object sender, EventArgs e) { int i = 0; string[] val = new string[10]; val[i++] = txtusername.Text; val[i++] = txtpassword.Text; val[i++] = txtname.Text; val[i++] = txtdistrict.Text; val[i++] = txtstate.Text; val[i++] = txtcountry.Text; val[i++] = txtcontactno.Text; val[i++] = txthintquestion.Text; val[i++] = txtanswer.Text; val[i++] = txtcaptcha.Text; if (txtcaptcha.Text == Session["Captcha"].ToString()) { lblerror_captcha.Visible = false; bool ans = sr.insert(val); if (ans == true) //Response.Write("<script>alert('Successfully Registered')</script>"); Response.Redirect("Login.aspx"); else Response.Write("<script>alert('Failed')</script>"); } else

{ lblerror_captcha.Visible = true; txtcaptcha.Text = ""; capchacode(); } } }

using System; using System.Data; using System.Configuration; using System.Collections; using System.Web; using System.Web.Security; using System.Web.UI; using System.Web.UI.WebControls; using System.Web.UI.WebControls.WebParts; using System.Web.UI.HtmlControls; using localhost; public partial class Login : System.Web.UI.Page { Service sr = new Service(); protected void Page_Load(object sender, EventArgs e) { } protected void btnlogin_Click(object sender, EventArgs e) { string[] log = new string[2]; int i = 0; log[i++] = txtusername.Text; log[i++] = txtpassword.Text; string chk= sr.login(log); if (chk != "Invalid User Name And Password") { Session["uname"] = chk; Response.Redirect("UserView.aspx"); } else Response.Write(chk); } protected void btnlogin_Click(object sender, ImageClickEventArgs e) { string[] log = new string[2]; int i = 0; log[i++] = txtusername.Text; log[i++] = txtpassword.Text; string chk = sr.login(log); if (chk != "Invalid User Name And Password") { Session["uname"] = chk; Response.Redirect("UserView.aspx"); } else Response.Write(chk); } }

using System; using System.Data; using System.Configuration; using System.Collections; using System.Web; using System.Web.Security; using System.Web.UI; using System.Web.UI.WebControls; using System.Web.UI.WebControls.WebParts; using System.Web.UI.HtmlControls; //using System.Drawing; using localhost; using System.Data.SqlClient; public partial class UserView : System.Web.UI.Page { Service sr = new Service(); static int j = 0; DataSet ds; protected void Page_Load(object sender, EventArgs e) { if (!IsPostBack) { databind(); } } public void databind() { j = 0; ds = new DataSet(); ds = sr.userview(); DataList1.DataSource = ds; DataList1.DataBind(); } protected void DataList1_ItemDataBound(object sender, DataListItemEventArgs e) { if (e.Item.ItemType == ListItemType.Item || e.Item.ItemType == ListItemType.AlternatingItem) { ((Image)e.Item.FindControl("imgbtn")).Height = Convert.ToUInt16(ds.Tables[0].Rows[j][4]); ((Image)e.Item.FindControl("imgbtn")).Width = Convert.ToUInt16(ds.Tables[0].Rows[j++][5]); } } protected void DataList1_ItemCommand(object source, DataListCommandEventArgs e) { if (e.CommandName == "ViewImage") { System.Drawing.Image im = System.Drawing.Image.FromFile(Server.MapPath(((Image)e.Item.FindControl("imgbtn")).ImageUrl.ToString())); if (im.Height > 400) imgbtn_full.Height = 400; else imgbtn_full.Height = ((Image)e.Item.FindControl("imgbtn")).Height; if (im.Width > 400) imgbtn_full.Width = 400; else

imgbtn_full.Width = ((Image)e.Item.FindControl("imgbtn")).Width; ltluserviewcmt.Text = ((Literal)e.Item.FindControl("ltlcommand")).Text; imgbtn_full.ImageUrl = ((Image)e.Item.FindControl("imgbtn")).ImageUrl.ToString(); ModalPopupExtender1.Show(); } } protected void lbtn_postcommand_Click(object sender, EventArgs e) { lbtn_postcommand.Visible = false; lbtncommand.Visible = true; lblcommand.Visible = true; txtcomment.Visible = true; txtcomment.Text = ""; ModalPopupExtender1.Show(); //ModalPopupExtender1.Hide(); } protected void lbtncommand_Click(object sender, EventArgs e) { sr.tmp_commant_post(txtcomment.Text, imgbtn_full.ImageUrl.ToString()); lbtn_postcommand.Visible = true; lbtncommand.Visible = false; lblcommand.Visible = false; txtcomment.Visible = false; ModalPopupExtender1.Hide(); } protected void imgbtn_close_Click(object sender, ImageClickEventArgs e) { lbtn_postcommand.Visible = true; lbtncommand.Visible = false; lblcommand.Visible = false; txtcomment.Visible = false; ModalPopupExtender1.Hide(); } }

using System; using System.Data; using System.Configuration; using System.Collections; using System.Web; using System.Web.Security; using System.Web.UI; using System.Web.UI.WebControls; using System.Web.UI.WebControls.WebParts; using System.Web.UI.HtmlControls; using localhost; using System.IO; using System.Text; using System.Drawing; public partial class ImageUpLoad : System.Web.UI.Page { Service sr = new Service(); static HttpPostedFile[] img = new HttpPostedFile[10]; static int count = 0; protected void Page_Load(object sender, EventArgs e) { if (!IsPostBack) { httpnull(); } } public void httpnull() { for (int i = 0; i < 10; i++) img[i] = null; count = 0; } protected void btnupload_Click(object sender, EventArgs e) { string height, width; if (fulimage.HasFile) lbaddfile_Click(sender, e); string outval = null; outval = sr.checkpersonalcode(Session["uname"].ToString(), txtcapchacode.Text); if (outval == "Valid") { for (int i = 0; i < 10; i++) { if (img[i] != null) { FileInfo fi = new FileInfo(img[i].FileName); string type = img[i].FileName.Substring(img[i].FileName.LastIndexOf(".") + 1); string imgname = sr.asignname(); fi.CopyTo(Server.MapPath("~/Tmp_Image/") + imgname + "." + type); string filepath = "~/Tmp_Image/" + imgname + "." + type;

System.Drawing.Image im = System.Drawing.Image.FromFile(Server.MapPath(filepath)); if (im.Height > 120) height = "120"; else height = im.Height.ToString(); if (im.Width > 120) width = "120"; else width = im.Width.ToString(); ; outval = sr.imgupload(filepath, Session["uname"].ToString(),height ,width); } } } if (outval != "Invalid" && count > 1) Response.Write(count + " Images " + outval); else if (outval != "InValid" && count == 1) Response.Write("Image " + outval); else Response.Write(outval); } protected void lbaddfile_Click(object sender, EventArgs e) { if (fulimage.HasFile) { lblerror.Visible = false; count++; string filename = fulimage.FileName; if (CheckBox1.Visible == false) { img[0] = fulimage.PostedFile; Panel1.Visible = true; con_ck(CheckBox1, true); con_lnb(LinkButton1, true, filename, 0); } else if (CheckBox2.Visible == false) { img[1] = fulimage.PostedFile; con_ck(CheckBox2, true); con_lnb(LinkButton2, true, filename, 1); } else if (CheckBox3.Visible == false) { img[2] = fulimage.PostedFile; con_ck(CheckBox3, true); con_lnb(LinkButton3, true, filename, 2); } else if (CheckBox4.Visible == false) { img[3] = fulimage.PostedFile; con_ck(CheckBox4, true); con_lnb(LinkButton4, true, filename, 3); } else if (CheckBox5.Visible == false) { img[4] = fulimage.PostedFile; con_ck(CheckBox5, true);

con_lnb(LinkButton5, true, filename, 4); } else if (CheckBox6.Visible == false) { img[5] = fulimage.PostedFile; con_ck(CheckBox6, true); con_lnb(LinkButton6, true, filename, 5); } else if (CheckBox7.Visible == false) { img[6] = fulimage.PostedFile; con_ck(CheckBox7, true); con_lnb(LinkButton7, true, filename, 6); } else if (CheckBox8.Visible == false) { img[7] = fulimage.PostedFile; con_ck(CheckBox8, true); con_lnb(LinkButton8, true, filename, 7); } else if (CheckBox9.Visible == false) { img[8] = fulimage.PostedFile; con_ck(CheckBox9, true); con_lnb(LinkButton9, true, filename, 8); } else if (CheckBox10.Visible == false) { img[9] = fulimage.PostedFile; con_ck(CheckBox10, true); con_lnb(LinkButton10, true, filename, 9); lbaddfile.Text = "End Limit"; lbaddfile.Enabled = false; } if (count == 10) { lbaddfile.Text = "End Limit"; lbaddfile.Enabled = false; } } else lblerror.Visible = true; } protected void chk_CheckedChanged(object sender, EventArgs e) { CheckBox ch_box = (CheckBox)sender; con_ck(ch_box, false); } public void con_ck(CheckBox contr, bool tf) { contr.Visible = tf; contr.Checked = tf; lbaddfile.Enabled = true; lbaddfile.Text = "Attach Another File";

if (tf == false) { count--; string id = contr.ID.ToString(); if (id == "CheckBox1") { img[0] = null; LinkButton1.Visible = tf; } else if (id == "CheckBox2") { img[1] = null; LinkButton2.Visible = tf; } else if (id == "CheckBox3") { img[2] = null; LinkButton3.Visible = tf; } else if (id == "CheckBox4") { img[3] = null; LinkButton4.Visible = tf; } else if (id == "CheckBox5") { img[4] = null; LinkButton5.Visible = tf; } else if (id == "CheckBox6") { img[5] = null; LinkButton6.Visible = tf; } else if (id == "CheckBox7") { img[6] = null; LinkButton7.Visible = tf; } else if (id == "CheckBox8") { img[7] = null; LinkButton8.Visible = tf; } else if (id == "CheckBox9") { img[8] = null; LinkButton9.Visible = tf; } else if (id == "CheckBox10") { img[9] = null; LinkButton10.Visible = tf; } } } public void con_lnb(LinkButton contr, bool tf, string fn, int index) {

contr.Visible = tf; contr.Text = fn + " (" + img[index].ContentType + ") " + Math.Round(img[index].ContentLength / 1024f, 1) + "k"; lbaddfile.Text = "Attach Another File"; } }

using System; using System.Data; using System.Configuration; using System.Web; using System.Web.Security; using System.Web.UI; using System.Web.UI.WebControls; using System.Web.UI.WebControls.WebParts; using System.Web.UI.HtmlControls; using System.Data.SqlClient; using System.IO; /// <summary> /// Summary description for Datalayer /// </summary> public class Datalayer { SqlConnection con = new SqlConnection(ConfigurationManager.AppSettings["user"]); SqlCommand cmd; FindNames fndnames = new FindNames(); int i = 0; public Datalayer() { // // TODO: Add constructor logic here // } public bool insert(Details ds) { cmd = new SqlCommand("s_userregistration", con); cmd.CommandType = CommandType.StoredProcedure; cmd.Parameters.AddWithValue("@us_name", ds[i++]); cmd.Parameters.AddWithValue("@pwd", ds[i++]); cmd.Parameters.AddWithValue("@frdname", ds[i++]); cmd.Parameters.AddWithValue("@dt", ds[i++]); cmd.Parameters.AddWithValue("@st", ds[i++]); cmd.Parameters.AddWithValue("@ctry", ds[i++]); cmd.Parameters.AddWithValue("@mno", ds[i++]); cmd.Parameters.AddWithValue("@h_qus", ds[i++]); cmd.Parameters.AddWithValue("@h_ans", ds[i++]); cmd.Parameters.AddWithValue("@cpt_cd", ds[i++]); con.Open(); cmd.ExecuteNonQuery(); con.Close(); return true; } public string login(Details ds)

{ cmd = new SqlCommand("sp_login", con); cmd.CommandType = CommandType.StoredProcedure; cmd.Parameters.AddWithValue("@uname", ds[i++]); cmd.Parameters.AddWithValue("@pwd", ds[i++]); cmd.Parameters.Add("@rt", SqlDbType.VarChar, 50).Direction = ParameterDirection.Output; con.Open(); cmd.ExecuteNonQuery(); con.Close(); object tr = cmd.Parameters["@rt"].Value.ToString(); return tr.ToString(); } public string checkpersonalcode(ImageUpload imgupld) { cmd = new SqlCommand("sp_checkcode", con); cmd.CommandType = CommandType.StoredProcedure; cmd.Parameters.AddWithValue("@uname", imgupld.username); cmd.Parameters.AddWithValue("@cap_code", imgupld.cap_code); cmd.Parameters.Add("@rt", SqlDbType.VarChar, 20).Direction = ParameterDirection.Output; con.Open(); cmd.ExecuteNonQuery(); con.Close(); object rtval = cmd.Parameters["@rt"].Value.ToString(); return rtval.ToString(); } }

Das könnte Ihnen auch gefallen