Impact of Web 2.0 and Cloud Computing Platform on Software Engineering
Abstract—Current time of Web 2.0 is empowering new plans of action for utilizing the semantic web. One such plan of action is renting out processing stage of equipment and programming over the web to the occupants furthermore, is named as Cloud Computing. The foreseen future pattern of figuring is accepted to be this cloud registering as it guarantees a ton of advantages like no capital use, speed of utilization arrangement, shorter time to advertise, bring down expense of activity and simpler support for the occupants. This paper investigations how distributed computing on the foundation of Web 2.0 is going to affect the product building procedure to create quality programming. As the cloud supplier is an outer substance or outsider, how troublesome will be the association with them? Step by step instructions to isolate the jobs of SW engineers what’s more, cloud suppliers? SW building ought to incorporate structure exercises to use every one of the advantages of cloud figuring methodically and deliberately. This paper broadens the customary dexterous process display named Outrageous Programming (XP) and coordinates communication with the cloud supplier to encourage acknowledgment of cloud.
In the period of semantic web or Web 2.0 , , ,  development of a few web innovations are empowering inventive utilization of the web. In Web 2.0, metadata written in XML (extensible markup dialect) depicting the web substance can be perused and handled by the PCs consequently. Other XML based web conventions like administration arranged design (SOA), basic item get to convention (Cleanser), web benefit portrayal dialect (WSDL) and widespread portrayal, disclosure and incorporation (UDDI) of web are equipped for incorporating applications created on heterogeneous processing stages, working frameworks and with varieties of programming dialects. With this capacity of information incorporation and information trade between heterogeneous applications, new plans of action of application sending and conveyance over the web have been conceptualized. Applications can be facilitated on the web what’s more, got to by means of the web by topographically scattered customers. These interoperable applications facilitated on the web for use by numerous customers remotely are called Web Services which can even be found on the fly with no earlier learning of their reality. As a similar administration will be taken into account different customers they can even be redone as per customers’ preferences Application engineering and conveyance design will be two separate layers for giving this adaptability.
Applications like Hadoop and Mashup , , which join information and functionalities from various outer sources facilitated as web administrations are delivering significant total new data and making new web administrations. Hadoop and Mashup can bolster elite processing including disseminated document framework with petabytes of information.
In another plan of action, the application improvement foundation like processors, stockpiling, memory, working framework and application improvement devices and programming can all be conveyed as utility to the customers over the web. This is what is named as distributed computing where a tremendous pool of physical assets facilitated on the web will be shared by various customers as and when required. As a result of the numerous advantages of this plan of action like no capital consumption, speed of use organization, shorter time to advertise, bring down expense of activity and simpler support of assets for the customers, distributed computing might be the predominant processing stage of things to come. This paper breaks down effect of Web 2.0 and cloud figuring stage on programming designing procedure to create quality programming (SW). Economies of all created nations rely upon quality SW and SW cost is more than equipment (HW) cost. In addition on account of the inclusion of numerous gatherings, SW advancement is naturally a complex process and the vast majority of the SW venture falls flat in light of absence of correspondence and coordination between every one of the gatherings included.
If you need assistance with writing your essay, our professional essay writing service is here to help!Essay Writing Service
The primary proposition of this paper is that the predominant SW process models ought to include the cloud supplier in each ventures of basic leadership in programming advancement life cycle to make the product venture a triumph. In Section II, foundation writing on distributed computing and programming building is reviewed. How the product designer is adapting to the changing pattern of utilization advancement with Web 2.0 conventions and application arrangement over the web is accounted for. In Section III, difficulties of cloud registering stage for programming designing is broke down. In Segment IV and V, a spry procedure demonstrate which joins connection with cloud supplier is proposed and investigated. Area VI finishes up the paper.
II. LITERATURE SURVEY
- Cloud Computing
Distributed computing , ,  is the future pattern of registering. Distributed computing is leasing server, stockpiling, arrange, programming advancements, devices and applications as utility or administration over the web as and at the point when required rather than owning them for all time. Contingent upon what assets are shared and conveyed to the clients, there are 4 kinds of distributed computing. In distributed computing wording when equipment, for example, processors, stockpiling and system are conveyed as an administration it is called framework as an administration (IaaS). Instances of IaaS are Amazon’s Elastic Cloud (EC2) and Simple Storage Administration (S3). When programming stages and instruments like Java, Python, .Net, MySQL and APIs are conveyed as a benefit it is called stage as an administration (PaaS). At the point when applications are conveyed as an administration it is called software as a service (SaaS).
Figure: Cloud Computing Platform
Contingent upon the measure of self administration or control on assets by the inhabitant there are 3 sorts of cloud like interior or private cloud, outside or open cloud and half breed cloud (Figure 1). In private cloud an undertaking possesses all the assets on location and offers them between various applications. In broad daylight cloud the undertaking will lease the assets from an off-site cloud supplier and these assets will be shared between various occupants. Cross breed cloud is in the center where an undertaking claims a few assets and leases some different assets from an outsider. Distributed computing depends on administration situated engineering (SOA) of Web 2.0 and virtualization ,  of equipment furthermore, programming assets (Figure 2). In light of the virtualization system, physical assets can be connected progressively to various applications running on various working frameworks. In view of the virtualization method, physical assets can be shared among all clients and there is effective asset the executives which can give higher asset use and on-request versatility. Expanded asset use cuts down the expense of floor space and cost of intensity and cooling. Power funds is the most appealing element of distributed computing and is the restored activity of condition inviting green figuring or green IT development of today. Cloud processing lessens cost of use of assets as well as decreases upkeep cost of assets for the clients.
Figure: Virtual Infrastructure
Distributed computing can bolster on-request versatility. An application with periodic interest for higher assets will pay for the higher assets just the time it is utilized rather than renting every one of the assets from the earliest starting point fully expecting future need. This fine-grained (hourly) pay-by-utilize model of distributed computing will be very appealing to the clients. There are numerous different advantages of distributed computing. Cloud foundation can bolster numerous conventions and change in plan of action for applications all the more quickly. It can likewise handle expanded execution necessities like administration scaling, reaction time and accessibility of the application, as the cloud framework is a colossal pool of assets like servers, stockpiling and organize and give versatility of development to the end clients. With this plan of action of providing food numerous customers with shared assets, world’s driving IT organizations like Microsoft, Google, IBM, SalesForce, HP and Amazon are conveying mists [Figure 1]. Web administrations, applications like Hadoop and Mashup can keep running on these mists. Due to all its focal points, this distributed computing model might be the pervasive registering model of things to come. In the following areas we initially dive into programming advancement strategies to create quality programming items in conventional condition not including web administrations and distributed computing stage. We at that point break down the difficulties of the present plan of action of use advancement and arrangement including web 2.0 and cloud registering stage. At last we propose systems to create quality SW that will push forward advances of the distributed computing stage.
B. Software Engineering
In the course of the last 50 years quick advances of equipment innovation, for example, PCs, memory, stockpiling, correspondence systems, cell phones and inserted frameworks is pushing the requirement for bigger and increasingly unpredictable programming. Programming improvement not just includes numerous diverse equipment advances, it likewise includes numerous diverse gatherings like clients, end clients and programming designers. That is the reason SW improvement is an intrinsically complex method. Since 1968 programming engineers needed to embrace the building disciplines for example deliberate, restrained furthermore, quantifiable way to deal with make programming improvement increasingly sensible to deliver quality programming items. The achievement or nature of a SW venture is estimated by whether it is created inside time and spending plan and by its proficiency, ease of use, constancy and viability , . Programming building begins with an express procedure demonstrate having structure of exercises which are synchronized in a characterized way. This procedure show depicts or endorses step by step instructions to manufacture programming with middle of the road noticeable work items (reports) and the last completed item for example the working SW. The entire advancement procedure of SW from its conceptualization to task and retirement is called the product advancement life cycle (SDLC).
SDLC experiences a few structure exercises like necessities gathering, arranging, plan, coding, testing, arrangement, upkeep and retirement. These exercises are synchronized in agreement to the procedure show embraced for a specific programming advancement. There are many process models to look over like water fall show, fast application improvement (RAD) model, and winding display contingent upon the extent of the task, conveyance time necessity and sort of the undertaking. As advancement of a flight inserted framework will receive a distinctive process demonstrate from advancement of a web application.
- How SW development industry is surviving in the cloud computing age?
This area studies how SW improvement industry is endeavouring to get by in the period of Web 2.0 with web administrations and distributed computing. In reference , they present structure exercises for planning applications dependent on revelation of semantic web benefit utilizing programming designing approachs. They propose creating self-loader semantic portrayal of utilizations misusing the current approaches and instruments of web designing. This builds plan productivity and diminishes manual exertion of semantically commenting on the new application made from web benefits out of various ventures.
In reference, Salesforce.com finds that agile process that demonstrate works better on distributed computing stage. Previously distributed computing, arrival of the SW to the client required some serious energy also, getting criticism from the client took additional time which upset the specific idea of nimble advancement. Though now another arrivals of the SW can be transferred on the server and utilized by the clients promptly. Fundamentally in this paper what they have portrayed is the advantages of programming as an administration facilitated on the web and how it supplements nimble registering system. They have not thought about the difficulties of distributed computing in creating new business programming.
In the quickly changing registering condition with web administrations and cloud stage, SW advancement will be exceptionally difficult. SW improvement process will include heterogeneous stages, appropriated web benefits, various ventures topographically scattered everywhere throughout the world. Existing programming process models and structure exercises are not going to be sufficient except if communication with cloud suppliers is incorporated. Necessities gathering stage so far included clients, clients and programming engineers. Presently it needs to incorporate the cloud suppliers also, as they will supply the registering framework and keep up them as well. As the cloud suppliers just will know the size, design subtleties, virtualization methodology and asset use % of the foundation, arranging and configuration periods of SW advancement likewise need to incorporate the cloud suppliers. The cloud suppliers can help in noting these inquiries on: 1) What number of engineers are required, 2) Component Reuse, 3) Cost estimation, 4) Schedule Estimation, 5) Risk Management, 6) Configuration Management, 7) Change Management, and 8) Quality Assurance.
As a result of the part reuse of web benefits the size of the product in number of kilo-lines of code (KLOC) or number of capacity focuses (FP) to be recently created by the SW designer will decrease yet multifaceted nature of the undertaking will increment numerous folds as a result of absence of documentations of usage subtleties of web administrations and their reconciliation prerequisites. Just depiction that is destined to be accessible online is the metadata data of the web administrations to be prepared by the PCs consequently. Just coding and testing stages should be possible freely by the product engineers. Coding and testing should be possible on the cloud stage which is an immense advantage as everyone will have simple access to the product being assembled. This will decrease the expense and time for testing and approval. Be that as it may, programming engineers need to utilize the web administrations and open-source programming unreservedly accessible from the cloud of acquiring them. Programming designers ought to have more skill in building programming from promptly accessible segments than composing everything and building a solid application. Refactoring of existing application is required to best use the cloud framework design in an expense viable way. In most recent equipment innovation the PCs are multi-center and organized and the SW designers ought to train themselves in parallel and conveyed figuring to supplement this advances of HW and system innovation. SW designers should prepare themselves in web conventions, XML, web benefit guidelines and layered detachment of worries of SOA design of web to use all the advantages of Web 2.0. Cloud suppliers will demands that programming ought to be as particular as workable for periodic movement starting with one server then onto the next for load adjusting as required by the cloud supplier. Support stage likewise ought to incorporate the cloud suppliers. There is a finished move of obligation of upkeep of the framework from programming designers to cloud suppliers. Presently as a result of the association of the cloud supplier the client needs to sign contract with them also so that the “Product Engineering code of morals” are not damaged by the cloud supplier. Also, assurance and security of the information is of most extreme significance which is under the purview of the cloud supplier now.
Additionally incidental interest of higher asset utilization of CPU time or system from applications may defeat the compensation by use model of distributed computing into peril as numerous applications may require higher asset use all at the equivalent time not foreseen by the cloud supplier initially. Particularly when applications are sent as “Software as a- Service” or “SaaS” display, they may have periodic outstanding burden flood not foreseen ahead of time. Cloud supplier utilizes virtualization of assets system to cook numerous clients on interest in a proficient way. For higher asset use intermittent relocation of application starting with one server then onto the next or from one stockpiling to another might be required by the cloud supplier. This perhaps an irreconcilable circumstance with the client as they need committed assets with high accessibility and unwavering quality of their applications. To maintain a strategic distance from this contention cloud suppliers need to present nature of administration arrangements for high need inhabitants.
Presently we dissect how troublesome will be the association between cloud suppliers and the product engineers? The measure of cooperation between programming engineers and cloud suppliers will rely upon sort of cloud like open, private and mixture cloud associations. In private cloud there is more control or self administration by the client than out in the open cloud. Client ought to likewise think about utilizing private cloud as opposed to utilizing open cloud to guarantee accessibility and dependability of their high need applications. Advantages of private cloud will be less collaboration with cloud supplier, self-administration, high security, dependability, accessibility of information. Be that as it may, less expensive figuring on open cloud will dependably exceed the advantages of less multifaceted nature of SW improvement on private cloud stage what’s more, will be increasingly alluring.
Figure: Economics vs. Complexity of Software Development on Cloud Computing Platform
IV. PROPOSED SWPROCESSMODEL
Inventive programming designing is required to use all the advantages of distributed computing and alleviate its difficulties deliberately to push forward its advances. Here we propose an all-encompassing adaptation of Extreme Programming (XP), a deft process display for distributed computing stage and name it Outrageous Cloud Programming. Every one of the stages like arranging, structure, development, testing furthermore, sending need collaboration with the delegates from cloud supplier. The jobs or exercises by the cloud supplier and SW engineers are isolated and recorded in Table 1. Asset bookkeeping on cloud stage will be done by the cloud supplier in the prerequisite social affair stage. Programming engineering, programming design to equipment engineering mapping, interface structure, information type configuration, cost estimation and timetable estimation of the venture all ought to be done in a joint effort with the cloud supplier. Amid the development period of the application if web administrations are coordinated where a wide range of undertakings are included then mistake ought to be relieved with the intercession of the cloud supplier. Upkeep contract with cloud supplier will accord the Quality of Service understanding.
Figure: Extreme Cloud Programming
A software metric is required for exertion estimation of SW advancement utilizing the new extraordinary cloud programming process show. This measurement is required as American specialist Tom DE Marco appropriately expressed in 1997 in his book about overseeing hazard in programming ventures that “You can’t control what you can’t gauge”. Helpful expense estimation show (COCOMO) is for the most part utilized model for expense estimation of different SW advancement ventures. In COCOMO show three classes of SW ventures have been considered up until now. These SW ventures are named 1) Organic, 2) Semi-withdrew, 3) Embedded by the SW group estimate, their encounters and improvement (HW, SW and tasks) requirements. We broaden this expense estimation display with another class of SW venture for cloud registering stage. In essential COCOMO demonstrate exertion (man month), advancement time (months) and no. of individuals required are given by the accompanying conditions.
Effort Applied = a(KLOC)b [man-months]
Development Time = c(Effort Applied )d [months]
No. of People = Effort Applied/Development Time [no.]
V. RESULTS AND DISCUSSIONS
In this segment we try different things with the run of the mill estimations of a, b, c, d for Cloud Computing class of SW extends in correlation with different classes. The normal estimations of the coefficients a, b, c, d for various classes of SW ventures are recorded in Table 2
Fully expecting additional collaboration multifaceted nature with the cloud suppliers coefficient is expanded to 4 for cloud processing stage. Coefficients a, b for distributed computing are resolved with the goal that the exertion bend is more extreme than the other 3 classes however is straight similar to the next 3 classes. Also coefficients c, d for distributed computing are decided with the goal that the advancement time bend is less more extreme than the other 3 classes yet is direct similar to the next 3 classes. We balanced coefficients a, b, c, d in cloud processing to new estimations of 4, 1.2, 2.5 and .3. As a result of segment reuse, SW advancement with cloud processing will lessen KLOC (kilo lines of code) fundamentally. We reason new KLOC = i*C + (KLOC)*C where C is the % of part reuse and I is the coefficient modification for new interface structure exertion.
Figure: Extended COCOMO for SW effort Estimation
Figure: Extended COCOMO for SW Dev. Time
Figure plots SW exertion estimation for task measure shifting from 10 to 50 KLOC for every one of the 4 classes of tasks. We expected 30% part reuse in distributed computing case. On the off chance that more % of segment reuse is conceivable it will relieve the higher cooperation multifaceted nature in coefficient a furthermore, will be valuable for distributed computing stage. Figure plots the relating SW improvement time estimation for every one of the 4 classes of SW ventures. With 30% segment reuse plausibility, SW improvement on distributed computing stage will take least measure of time.
Distributed computing is a change in perspective over conventional way of creating and sending of programming. This will make programming designing increasingly troublesome as they need to communicate with an outsider called the “cloud supplier”. The sum of work required for creating programming will lessen yet there will be included correspondence and coordination prerequisite with the cloud supplier which makes programming improvement venture progressively mind boggling. The primary proposal of this paper is that the predominant SW process models ought to fuse this new element of collaboration with the cloud supplier and separate jobs of SW specialists and cloud suppliers. Another coordinated procedure demonstrate is proposed in this paper which incorporates the foreseen connection necessity with the cloud supplier which will moderate all the difficulties of programming advancement on distributed computing stage and make it progressively profitable to create and send programming on the distributed computing stage.
- A.Singh, M. Korupolu, D. Mahapatra. Server-Storage Virtualization: Integration and Load Balancing in Data Centers. IEEE/ACM Supercomputing (SC), 2008
- D.Taft. IBM’s M2 Project Taps Hadoop for Massive Mashups. www.eweek.com, February 2010.
- HADOOP. http://en.wikipedia.org/wiki/Hadoop, February 2010.
- J. Banerjee and S. Aziz. SOA: The missing link between Enterprise Architecture and Solution Architecture. SETLabs briefing, Vol. 5, No 2, Pages 69-80, March 2007.
- J. Handler, N. Shadbolt, W. Hall, T. Berners-Lee and D. Weitzner. Web Science: An Interdisciplinary Approach to Understanding the Web. Communications of the ACM, Vol. 51, No.7, July 2008.
- Radha Guha. Toward The Intelligent Web Systems. In Proceedings of IEEE CS, First International Conference on Computational Intelligence, Communication Systems and Network, Pages 459-463, July 2009.
- R. Pressman. Software Engineering: A Practitioner’s Approach.7th Edition. McGraw-Hill Higher Education (2009).
- Salesforce.com. Agile Development Meets Cloud Computing for Extraordinary Results. www.salesforce.com
- Sun Microsystem. Introduction to Cloud Computing architecture. White Paper, 1st Edition, June 2009
- T. DeMarco and T. Lister. Waltzing with Bears: Managing Risk on Software Projects, Dorset House Publishing Company, Incorporated. March 2003.
Cite This Work
To export a reference to this article please select a referencing stye below:
Related ServicesView all
DMCA / Removal Request
If you are the original writer of this essay and no longer wish to have your work published on UKEssays.com then please: