11 Jul Week 10 Discussion Week 10 DiscussionThis is a required assignment worth 15 points (15-points/1000-points). Assignment must be submitted by the due date. No late assignm
Week 10 DiscussionThis is a required assignment worth 15 points (15-points/1000-points). Assignment must be submitted by the due date. No late assignments are allowed. Please discuss the following topics and provide substantive comments to at least two other posts. Select from the following list four (4) topics and discuss. Use only 50-words max per topic to discuss and present your answer. The discussion questions this week are from Chapter 11 (Jamsa, 2013).Chapter 11 topics:
- Define software architecture.
- Define and describe SOA.
- Compare and contrast a web page and a web service.
- Search the Web for companies that offer web services and then describe three to five web services that programmers might integrate into the applications they create.
- Discuss what it means for a web service to be interoperable.
Note: You are required to use at least two-peer reviewed sources (besides your textbook) to answer the above questions. The initial post is due by Wednesday at 11:59pm ET. You must engage on at least three separate days (by Wednesday for the first post and two additional days of peer engagement). Do not wait until Sunday to engage with peers, this should be an active conversation with your peers. When replying to peers be sure to engage with substantial posts that add to the conversation.
School of Computer & Information Sciences
ITS-532 Cloud Computing
Chapter 11 – Service Oriented Architecture
Learning Objectives • Define and describe SOA. • Compare and contrast the roles of web services and web
pages. • List common examples of web services. • Discuss the benefits of treating a web service as a black box. • Discuss governance challenges in using web services. • Discuss the role of the Web Service Description Language
(WSDL) to describe a web service and its methods.
Services Oriented Architecture (SOA)
• Describes the major components that comprise a system, their relationships, and the information the components exchange.
• The distributed nature of the cloud has provided an ideal platform to support service-oriented architecture (SOA), an architectural approach to building solutions through the integration of services.
SOA and Web Services • Within SOA, programs make remote-procedure calls to services that reside on servers distributed
across the Web.
Web Services Are Not Web Pages • A web service is program code that resides on the Web and
performs a specific task that other programs, not people, use. The following are examples of tasks performed by a web service: – Return the weather conditions for a specific zip code – Return real-time traffic conditions for a road or highway – Return a stock price for a particular company – Return driving directions to a specific location – Return the country associated with an IP address
Message Passing to a Web Service • A program exchanges messages with a web service to call a specific method and then normally
waits for the web service to return its result.
Real World: Xmethods.com • As programmers develop web services, often they will
share them with others—sometimes free, sometimes not.
• At the XMethods website, you can find a wide variety of web services available for use within programs.
• Even if you are not a developer, you should visit the site to gain a better understanding of the types of tasks performed by web services.
Advantages of Web Services • Primarily because of their distributed nature, web services
provide advantages to developers, the most important of which is ease of code reuse.
• When programmers develop code, they break large, complex operations into smaller, more manageable tasks.
• Then they implement the well-defined tasks as functions. Ideally, each function should perform one task only.
Advantages of Web Services Continued • Programmers can reuse the function code in other programs, which saves
development and testing time and ultimately reduces costs. • A common rule of programming is not to “reinvent the wheel,” which
means that if another programmer has written code that performs the task that your program needs, you should reuse that code.
• Web services are ideal for code reuse. • Disadvantage:
– Because web services require network operations, a web service will be considerable slower than a program’s call to a function that resides on the same computer.
Scaling a Web Service • Using a load-balancing model, developers can scale a web service solution.
Coupling • Describes the degree of dependence between a calling program and the
web service. • Ideally, to use a web service, a program only needs to know the location
of the web service (its URL), the name of the functions (methods) the web service provides, and parameters the program can pass to the functions.
• In this way, programs and web services are said to be loosely coupled. • Because of a program’s loosely coupled relationship to a web service, it is
possible for a developer to update a web service with a newer version (perhaps a faster version) and for programs that use the service to use the new version immediately without requiring any modifications.
Web Services as Black Boxes • The term black box describes a module for which the
software developer does not care how the processing is performed, but instead, knows that the code, when provided valid inputs, will produce predictable results.
• Developers should treat the web service as a black box, and not worry about how it performs a task. Instead, the developer trusts that, with valid input, the web service will function consistently.
Web Services and Interoperability
• One of the biggest advantages of web services is their interoperability.
• In other words, they can be called from programs using a variety of programming languages.
• Meaning, the same web service can be called by PHP, Java, or C#.
Web Service Description Language (WSDL)
• A web service consists of one or more functions, each of which performs a specific task and normally returns a specific result.
• Within the web service, each function has a unique name and may receive zero or more parameter values.
• Behind the scenes, the web service uses a Web Service Description Language (WSDL) file to describe the web service and its methods.
• Programs that use the web service will use the WSDL file to determine the available functions, parameter types, and more.
Governing Web Services
• Before a developer uses a web service within an application, the company’s IT staff should ensure that the web service implementation and deployment satisfies their policies and procedures.
Considerations for Web Services • The solution must be developed and deployed by a
reputable company. • The solution cannot be dynamically changed without the
company’s notification/approval. • The solution must provide secure communications to avoid
threats such as a man-in-the-middle attack. • The solution must be scalable to meet potential demand. • The solution must be able to be validated.
• Jamsa, K. A. (2013). Cloud computing: SaaS, PaaS, IaaS, virtualization, business models, mobile, security and more. Burlington, MA: Jones & Bartlett Learning.
Our website has a team of professional writers who can help you write any of your homework. They will write your papers from scratch. We also have a team of editors just to make sure all papers are of HIGH QUALITY & PLAGIARISM FREE. To make an Order you only need to click Ask A Question and we will direct you to our Order Page at WriteDemy. Then fill Our Order Form with all your assignment instructions. Select your deadline and pay for your paper. You will get it few hours before your set deadline.