1 emerging trends in software engineering prof. r. mall dept. of cse, iit, kharagpur
TRANSCRIPT
![Page 1: 1 Emerging Trends in Software Engineering Prof. R. Mall Dept. of CSE, IIT, Kharagpur](https://reader035.vdocuments.mx/reader035/viewer/2022081504/56649d965503460f94a7f9de/html5/thumbnails/1.jpg)
1
Emerging Trends in Software Engineering
Prof. R. MallDept. of CSE, IIT, Kharagpur
![Page 2: 1 Emerging Trends in Software Engineering Prof. R. Mall Dept. of CSE, IIT, Kharagpur](https://reader035.vdocuments.mx/reader035/viewer/2022081504/56649d965503460f94a7f9de/html5/thumbnails/2.jpg)
2
Introduction Technology developments occur:
To adapt to new environments To respond to new challenges
Few important developments that have occurred over the last decade or so: Desktops have become more powerful
and at the same time more affordable. Internet has become widely accepted. Mobile computing. Outsourcing has become prevalent.
![Page 3: 1 Emerging Trends in Software Engineering Prof. R. Mall Dept. of CSE, IIT, Kharagpur](https://reader035.vdocuments.mx/reader035/viewer/2022081504/56649d965503460f94a7f9de/html5/thumbnails/3.jpg)
3
Background Software market has two parts:
Products (General purpose software)
Services (custom software) Total business – appx. $1 Trillion
Half in products and half services Services segment is growing fast
![Page 4: 1 Emerging Trends in Software Engineering Prof. R. Mall Dept. of CSE, IIT, Kharagpur](https://reader035.vdocuments.mx/reader035/viewer/2022081504/56649d965503460f94a7f9de/html5/thumbnails/4.jpg)
4
Background cont…
SE goal is to develop software to satisfy user needs. Either generic or one-off.
Customer needs are considered sacrosanct and fixed: Vendor has to find the solution.
![Page 5: 1 Emerging Trends in Software Engineering Prof. R. Mall Dept. of CSE, IIT, Kharagpur](https://reader035.vdocuments.mx/reader035/viewer/2022081504/56649d965503460f94a7f9de/html5/thumbnails/5.jpg)
5
Background: A Constraint on Software Engineering
Process
Business Process
Implementation in IT
Time required = T1
Change in Business Process
Change in the IT solution supporting
the business process
Time required = T2
![Page 6: 1 Emerging Trends in Software Engineering Prof. R. Mall Dept. of CSE, IIT, Kharagpur](https://reader035.vdocuments.mx/reader035/viewer/2022081504/56649d965503460f94a7f9de/html5/thumbnails/6.jpg)
6
Background: Desired Goals
A. Reduce T1 (and improve quality) B. Reduce T2 A requires:
Process should efficiently capture requirements of the business and then efficiently convert it to code.
B requires: Implementation should be such that
business process changes can be easily accommodated in the software solution.
![Page 7: 1 Emerging Trends in Software Engineering Prof. R. Mall Dept. of CSE, IIT, Kharagpur](https://reader035.vdocuments.mx/reader035/viewer/2022081504/56649d965503460f94a7f9de/html5/thumbnails/7.jpg)
7
Challenges Being Faced
Delivery time requirements are shortening: High business velocity requires this. Software is becoming a bottleneck in
implementing business process changes.
Businesses are getting tired of software cost, late deliveries, poor quality, risk,… Hardware and software cost
differentials are becoming more and more glaring.
![Page 8: 1 Emerging Trends in Software Engineering Prof. R. Mall Dept. of CSE, IIT, Kharagpur](https://reader035.vdocuments.mx/reader035/viewer/2022081504/56649d965503460f94a7f9de/html5/thumbnails/8.jpg)
8
Challenges Being Faced
cont… Software sizes are further increasing.
How software is to be effectively developed in following contexts is not clear: Distributed platforms Working with Internet Distributed development teams
![Page 9: 1 Emerging Trends in Software Engineering Prof. R. Mall Dept. of CSE, IIT, Kharagpur](https://reader035.vdocuments.mx/reader035/viewer/2022081504/56649d965503460f94a7f9de/html5/thumbnails/9.jpg)
9
Noticeable Software Engineering Technology
Trends Following software engineering trends are easily noticeable: Client-server (or Component-based) development
Service-Oriented Architecture (SOA)
Software as a Service (SaaS)
![Page 10: 1 Emerging Trends in Software Engineering Prof. R. Mall Dept. of CSE, IIT, Kharagpur](https://reader035.vdocuments.mx/reader035/viewer/2022081504/56649d965503460f94a7f9de/html5/thumbnails/10.jpg)
10
Client-Server Technology
Both clients and servers are pieces of software.
Concepts of Clients and Servers are nothing new --- have existed for ages: Clients are consumers of service. Servers are providers of service.
Why is then a sudden interest seen in client-server software architecture?
![Page 11: 1 Emerging Trends in Software Engineering Prof. R. Mall Dept. of CSE, IIT, Kharagpur](https://reader035.vdocuments.mx/reader035/viewer/2022081504/56649d965503460f94a7f9de/html5/thumbnails/11.jpg)
11
Advantages of Client-Server Compared to Traditional
Software Flexibility:
Clients and servers can be easily attached and removed.
Modularity Concurrency Fault-tolerance Clients are cheap computers:
Servers are expensive computers tucked away in some AC rooms.
To use a software you not need not buy expensive server hardware and software.
![Page 12: 1 Emerging Trends in Software Engineering Prof. R. Mall Dept. of CSE, IIT, Kharagpur](https://reader035.vdocuments.mx/reader035/viewer/2022081504/56649d965503460f94a7f9de/html5/thumbnails/12.jpg)
12
Client-Server versus Traditional Software
The following two factors are possibly the most relevant:
Component-based software development: To develop a hardware solution an
electronic engineer does not solder transistors and resistors on a PCB --- uses off-the-shelf ICs.
Why not do the same for software. Current trend of mobile computing:
Handhelds can only be clients due to low processing and memory capabilities.
![Page 13: 1 Emerging Trends in Software Engineering Prof. R. Mall Dept. of CSE, IIT, Kharagpur](https://reader035.vdocuments.mx/reader035/viewer/2022081504/56649d965503460f94a7f9de/html5/thumbnails/13.jpg)
13
Component Architectures
Two tier architecture: Most obvious
But does not work.
Server 1 Server m
Client 1 Client n
Internet
![Page 14: 1 Emerging Trends in Software Engineering Prof. R. Mall Dept. of CSE, IIT, Kharagpur](https://reader035.vdocuments.mx/reader035/viewer/2022081504/56649d965503460f94a7f9de/html5/thumbnails/14.jpg)
14
What are the Problems with the 2-tier Architecture?
Servers can be bottleneck.How to locate servers?Client-Server incompatibility: Analogy: House hunting in Bangalore.
![Page 15: 1 Emerging Trends in Software Engineering Prof. R. Mall Dept. of CSE, IIT, Kharagpur](https://reader035.vdocuments.mx/reader035/viewer/2022081504/56649d965503460f94a7f9de/html5/thumbnails/15.jpg)
15
Middleware
Solution: 3-tier Architecture
Server 1
Server m
Client 1
Client n
InternetMiddleware
![Page 16: 1 Emerging Trends in Software Engineering Prof. R. Mall Dept. of CSE, IIT, Kharagpur](https://reader035.vdocuments.mx/reader035/viewer/2022081504/56649d965503460f94a7f9de/html5/thumbnails/16.jpg)
16
Middleware Standards
CORBA versus COM/DCOM CORBA (common object request broker architecture) Being advocated by OMG
COM/DCOM: Being advocated by Microsoft
![Page 17: 1 Emerging Trends in Software Engineering Prof. R. Mall Dept. of CSE, IIT, Kharagpur](https://reader035.vdocuments.mx/reader035/viewer/2022081504/56649d965503460f94a7f9de/html5/thumbnails/17.jpg)
17
CORBA Architecture
ORB
Server 1 Server m
Skeleton Skeleton
Client 1 Client n
Stub Stub
Object Adapter
DSI DSI
![Page 18: 1 Emerging Trends in Software Engineering Prof. R. Mall Dept. of CSE, IIT, Kharagpur](https://reader035.vdocuments.mx/reader035/viewer/2022081504/56649d965503460f94a7f9de/html5/thumbnails/18.jpg)
18
CORBA Architecture
Skeleton: Marshalls client requests
The servers register themselves with the object-adapter.
The ORB delivers the client request to the server.
The Skeleton marshalls the server response.
DII/DSI for dynamic service invocation.
![Page 19: 1 Emerging Trends in Software Engineering Prof. R. Mall Dept. of CSE, IIT, Kharagpur](https://reader035.vdocuments.mx/reader035/viewer/2022081504/56649d965503460f94a7f9de/html5/thumbnails/19.jpg)
19
IDL: Interface Development
Language Interfaces between clients and servers can be specified.
Similar to C++ or Java: But no executable statements.
Interface clock{
set-time(int hh, int mm, int ss);
get-time(int hh, int mm, int ss);
}
![Page 20: 1 Emerging Trends in Software Engineering Prof. R. Mall Dept. of CSE, IIT, Kharagpur](https://reader035.vdocuments.mx/reader035/viewer/2022081504/56649d965503460f94a7f9de/html5/thumbnails/20.jpg)
20
How to Develop Component-Based
Applications? Divide application into components.
Determine component interfaces: Define using IDL.
Get available components: Build the ones not available
Integrate the components and test
![Page 21: 1 Emerging Trends in Software Engineering Prof. R. Mall Dept. of CSE, IIT, Kharagpur](https://reader035.vdocuments.mx/reader035/viewer/2022081504/56649d965503460f94a7f9de/html5/thumbnails/21.jpg)
21
CORBA Implementations
VisigenicIonaOrbixJava IDL …
![Page 22: 1 Emerging Trends in Software Engineering Prof. R. Mall Dept. of CSE, IIT, Kharagpur](https://reader035.vdocuments.mx/reader035/viewer/2022081504/56649d965503460f94a7f9de/html5/thumbnails/22.jpg)
22
COM/DCOM COM used when application runs
on a single machine: DCOM for distributed machine.
Concepts are similar to CORBA: Though terminologies are different. Proxy on client side. More usable than CORBA.
What is a component in COM/DCOM? A .exe or .dll component Created using VB or VC++
![Page 23: 1 Emerging Trends in Software Engineering Prof. R. Mall Dept. of CSE, IIT, Kharagpur](https://reader035.vdocuments.mx/reader035/viewer/2022081504/56649d965503460f94a7f9de/html5/thumbnails/23.jpg)
23
COM/DCOM versus CORBA
COM/DCOM strong on client side: CORBA on server side. Java Beans an attempt to bridge
this gap. COM/DCOM more usable:
If your application is to run only on Microsoft operating systems, better use COM/DCOM.
If your application needs to run on heterogeneous platforms, better use CORBA.
![Page 24: 1 Emerging Trends in Software Engineering Prof. R. Mall Dept. of CSE, IIT, Kharagpur](https://reader035.vdocuments.mx/reader035/viewer/2022081504/56649d965503460f94a7f9de/html5/thumbnails/24.jpg)
24
Service-Oriented Architecture
(SOA)
![Page 25: 1 Emerging Trends in Software Engineering Prof. R. Mall Dept. of CSE, IIT, Kharagpur](https://reader035.vdocuments.mx/reader035/viewer/2022081504/56649d965503460f94a7f9de/html5/thumbnails/25.jpg)
25
SOA: Introduction
Service-orientation principles have their roots in the object-oriented designing.
Many claim that service-orientation will replace object-orientation: Others think the two are complementary paradigms.
![Page 26: 1 Emerging Trends in Software Engineering Prof. R. Mall Dept. of CSE, IIT, Kharagpur](https://reader035.vdocuments.mx/reader035/viewer/2022081504/56649d965503460f94a7f9de/html5/thumbnails/26.jpg)
26
What is SOA? Build applications by composing
software services. What is a software service?
Essentially software components. Typically implement functionality most
humans would recognize as a service. Examples of services:
Filling out an online application Viewing an online bank-statement Placing an online booking
![Page 27: 1 Emerging Trends in Software Engineering Prof. R. Mall Dept. of CSE, IIT, Kharagpur](https://reader035.vdocuments.mx/reader035/viewer/2022081504/56649d965503460f94a7f9de/html5/thumbnails/27.jpg)
27
Service: More Formally
A service is a contractually defined behavior: Implemented and provided by a component for use by an application developer.
![Page 28: 1 Emerging Trends in Software Engineering Prof. R. Mall Dept. of CSE, IIT, Kharagpur](https://reader035.vdocuments.mx/reader035/viewer/2022081504/56649d965503460f94a7f9de/html5/thumbnails/28.jpg)
28
SOA vs. Component Model
Several things common between services and components: Multiple-use Non-context-specific Composable Encapsulated i.e., non-investigable through its interfaces
A unit of independent deployment and versioning
Loose coupling
![Page 29: 1 Emerging Trends in Software Engineering Prof. R. Mall Dept. of CSE, IIT, Kharagpur](https://reader035.vdocuments.mx/reader035/viewer/2022081504/56649d965503460f94a7f9de/html5/thumbnails/29.jpg)
29
SOA vs. Component Model
cont…Several things different.Compared to components:
SOA's atomic-level objects are often 100 to 1,000 times larger.
Services may be developed and hosted separately. Possibly pay per use.
![Page 30: 1 Emerging Trends in Software Engineering Prof. R. Mall Dept. of CSE, IIT, Kharagpur](https://reader035.vdocuments.mx/reader035/viewer/2022081504/56649d965503460f94a7f9de/html5/thumbnails/30.jpg)
30
SOA vs. Component Model
cont… Instead of services embedding
calls to each other in their source code: They use defined protocols which
describe how services can talk to each other.
This architecture relies on a business process expert: Links and sequences services, in a
process known as orchestration, to meet a new business requirement.
![Page 31: 1 Emerging Trends in Software Engineering Prof. R. Mall Dept. of CSE, IIT, Kharagpur](https://reader035.vdocuments.mx/reader035/viewer/2022081504/56649d965503460f94a7f9de/html5/thumbnails/31.jpg)
31
SOA vs. Component Model
cont… SOA targets fairly large chunks of
functionality to be strung together to form new services: Built almost entirely from existing
software services. The larger the chunks:
The fewer the interfacings required; Faster development; However, very large chunks may
not prove easy to reuse.
![Page 32: 1 Emerging Trends in Software Engineering Prof. R. Mall Dept. of CSE, IIT, Kharagpur](https://reader035.vdocuments.mx/reader035/viewer/2022081504/56649d965503460f94a7f9de/html5/thumbnails/32.jpg)
32
SOA: Nitty Gritty SOA is a collection of services:
That communicate with each other.
The services are self-contained: Do not depend on the context or state of the other service.
Each service works within a distributed-system architecture.
![Page 33: 1 Emerging Trends in Software Engineering Prof. R. Mall Dept. of CSE, IIT, Kharagpur](https://reader035.vdocuments.mx/reader035/viewer/2022081504/56649d965503460f94a7f9de/html5/thumbnails/33.jpg)
33
SOA : Nitty Gritty cont…
A paradigm for utilizing distributed capabilities: May be under the control of different ownership domains.
Provides a uniform means: To offer, discover, interact with and use capabilities to achieve desired results.
![Page 34: 1 Emerging Trends in Software Engineering Prof. R. Mall Dept. of CSE, IIT, Kharagpur](https://reader035.vdocuments.mx/reader035/viewer/2022081504/56649d965503460f94a7f9de/html5/thumbnails/34.jpg)
34
SOA: Nitty Gritty cont…
SOA would fundamentally change the way we construct software systems. SOA involves statically and
dynamically plugging-in services to build software.
SOA players: BEA Aqua logic, Oracle Web services
manager, HP Systinet Registry, MS .Net, IBM Web Sphere, Iona Artrix, Java composite application suite.
![Page 35: 1 Emerging Trends in Software Engineering Prof. R. Mall Dept. of CSE, IIT, Kharagpur](https://reader035.vdocuments.mx/reader035/viewer/2022081504/56649d965503460f94a7f9de/html5/thumbnails/35.jpg)
35
SOA: Nitty Gritty cont…
Views software as providing a set of services: Each service composed of smaller services.
Leverages the Internet and emerging standardization on it for interoperability
Hopes that a market place for different predefined services can emerge: Not tied to any specific vendor
An app can be built using these services: And building the “missing” ones.
![Page 36: 1 Emerging Trends in Software Engineering Prof. R. Mall Dept. of CSE, IIT, Kharagpur](https://reader035.vdocuments.mx/reader035/viewer/2022081504/56649d965503460f94a7f9de/html5/thumbnails/36.jpg)
36
Principles of Service-Orientation: Services
Services: Abstract the underlying data and logic
Composable Autonomous Share a formal contract Loosely coupled Stateless Discoverable
![Page 37: 1 Emerging Trends in Software Engineering Prof. R. Mall Dept. of CSE, IIT, Kharagpur](https://reader035.vdocuments.mx/reader035/viewer/2022081504/56649d965503460f94a7f9de/html5/thumbnails/37.jpg)
37
Service Consumer
Service Provider
Contract Registry
SOA Entities
![Page 38: 1 Emerging Trends in Software Engineering Prof. R. Mall Dept. of CSE, IIT, Kharagpur](https://reader035.vdocuments.mx/reader035/viewer/2022081504/56649d965503460f94a7f9de/html5/thumbnails/38.jpg)
38
SOA Implementation Web services can implement a service-oriented architecture.
Web services make functional building blocks Accessible over standard Internet protocols
Independent of platforms and programming languages.
![Page 39: 1 Emerging Trends in Software Engineering Prof. R. Mall Dept. of CSE, IIT, Kharagpur](https://reader035.vdocuments.mx/reader035/viewer/2022081504/56649d965503460f94a7f9de/html5/thumbnails/39.jpg)
39
Service Orchestration
Requires metadata in sufficient detail to describe: The characteristics of the services, Also the data that drives them.
The services are typically described by WSDL.
Communications protocols by SOAP.
Data and meta data by XML
![Page 40: 1 Emerging Trends in Software Engineering Prof. R. Mall Dept. of CSE, IIT, Kharagpur](https://reader035.vdocuments.mx/reader035/viewer/2022081504/56649d965503460f94a7f9de/html5/thumbnails/40.jpg)
40
SOA Vision Have a marketplace for services: It will automatically improve quality and reduce prices.
To build an application: Use off-the-shelf services and possibly build some.
Cost of building reduces; Also cost of ownership (which is quite large for regular software) reduces.
![Page 41: 1 Emerging Trends in Software Engineering Prof. R. Mall Dept. of CSE, IIT, Kharagpur](https://reader035.vdocuments.mx/reader035/viewer/2022081504/56649d965503460f94a7f9de/html5/thumbnails/41.jpg)
41
Great Promise of SOA
The cost of creating the n-th application is near-zero, As all of the software services required already exists.
Only orchestration required to produce a new application.
![Page 42: 1 Emerging Trends in Software Engineering Prof. R. Mall Dept. of CSE, IIT, Kharagpur](https://reader035.vdocuments.mx/reader035/viewer/2022081504/56649d965503460f94a7f9de/html5/thumbnails/42.jpg)
42
SOA Challenges Building services and
infrastructure Composing services – formal
theory and algebra, languages, semantics
Testing and verification Trust Non Functional properties Changes Business level modeling and
translation Developing the marketplace
![Page 43: 1 Emerging Trends in Software Engineering Prof. R. Mall Dept. of CSE, IIT, Kharagpur](https://reader035.vdocuments.mx/reader035/viewer/2022081504/56649d965503460f94a7f9de/html5/thumbnails/43.jpg)
43
Software as a Service (SaaS)
![Page 44: 1 Emerging Trends in Software Engineering Prof. R. Mall Dept. of CSE, IIT, Kharagpur](https://reader035.vdocuments.mx/reader035/viewer/2022081504/56649d965503460f94a7f9de/html5/thumbnails/44.jpg)
44
Challenge Faced Owning software is very expensive:
An Rs. 50 Lakh software running on an Rs. 1 Lakh computer is common place.
As with hardware, owning software is the business tradition: Both products and services bought
and used. Most of IT budget now goes in
supporting the software assets.
![Page 45: 1 Emerging Trends in Software Engineering Prof. R. Mall Dept. of CSE, IIT, Kharagpur](https://reader035.vdocuments.mx/reader035/viewer/2022081504/56649d965503460f94a7f9de/html5/thumbnails/45.jpg)
45
Background To have water supply at home:
Do you install system to pump water from river directly to your home?
To get electricity supply: Do you install a thermal or hydro
electric generator? It would lead to wastage:
You do not need to have all the water pipes open all the time.
Unnecessarily expensive proposition.
![Page 46: 1 Emerging Trends in Software Engineering Prof. R. Mall Dept. of CSE, IIT, Kharagpur](https://reader035.vdocuments.mx/reader035/viewer/2022081504/56649d965503460f94a7f9de/html5/thumbnails/46.jpg)
46
Background cont…
Should you own Rational Suite paying Rs. 50 Lakhs: If you use it only 10 hours every month
One hour of usage costs Rs. 100/-
Also frees use from maintenance and data storage costs --- Given that maintenance is usually a severe overhead.
![Page 47: 1 Emerging Trends in Software Engineering Prof. R. Mall Dept. of CSE, IIT, Kharagpur](https://reader035.vdocuments.mx/reader035/viewer/2022081504/56649d965503460f94a7f9de/html5/thumbnails/47.jpg)
47
SaaS Lets customers pay for what they need and when: With price reflecting market place supply and demand.
SaaS includes: Elements of outsourcing and Application service provisioning
![Page 48: 1 Emerging Trends in Software Engineering Prof. R. Mall Dept. of CSE, IIT, Kharagpur](https://reader035.vdocuments.mx/reader035/viewer/2022081504/56649d965503460f94a7f9de/html5/thumbnails/48.jpg)
48
SaaS SaaS is a model of software delivery: Software owner provides maintenance, daily technical operation, and support for the software.
Services are provided to the clients on amount of usage basis.
![Page 49: 1 Emerging Trends in Software Engineering Prof. R. Mall Dept. of CSE, IIT, Kharagpur](https://reader035.vdocuments.mx/reader035/viewer/2022081504/56649d965503460f94a7f9de/html5/thumbnails/49.jpg)
49
SaaS vs. SOA SaaS is a software delivery model: SOA is a software construction model.
SaaS counters the concept of a user as the owner: Owner is a vendor who hosts the software and lets the users execute on-demand charges per usage units.
![Page 50: 1 Emerging Trends in Software Engineering Prof. R. Mall Dept. of CSE, IIT, Kharagpur](https://reader035.vdocuments.mx/reader035/viewer/2022081504/56649d965503460f94a7f9de/html5/thumbnails/50.jpg)
50
SaaS versus SOA Despite significant differences:
Espouse closely related architecture models.
SaaS and SOA complement each other: SaaS helps to offer components for
SOA to use. SOA helps to help quickly realize SaaS.
Main enabler of SaaS and SOA: Internet and web services
technologies.
![Page 51: 1 Emerging Trends in Software Engineering Prof. R. Mall Dept. of CSE, IIT, Kharagpur](https://reader035.vdocuments.mx/reader035/viewer/2022081504/56649d965503460f94a7f9de/html5/thumbnails/51.jpg)
51
Key Characteristics
Network-based access and management of commercially available (not custom) software.
Activities managed from central location and not at customer site, Enabling customers to access applications
remotely via the Web. Application delivery follows a one-to-
many model (single instance, multi-tenant architecture): In contrast to a one-to-one model.
![Page 52: 1 Emerging Trends in Software Engineering Prof. R. Mall Dept. of CSE, IIT, Kharagpur](https://reader035.vdocuments.mx/reader035/viewer/2022081504/56649d965503460f94a7f9de/html5/thumbnails/52.jpg)
52
Business Model Shift "ownership" of the software:
From the customer to a service provider. Shift responsibility for hardware and
software management: From the customer to the provider
Reduce the cost of providing software services: Through specialization and economy of
scale. Target the "long tail" of small customers
![Page 53: 1 Emerging Trends in Software Engineering Prof. R. Mall Dept. of CSE, IIT, Kharagpur](https://reader035.vdocuments.mx/reader035/viewer/2022081504/56649d965503460f94a7f9de/html5/thumbnails/53.jpg)
53
Current Business Model
![Page 54: 1 Emerging Trends in Software Engineering Prof. R. Mall Dept. of CSE, IIT, Kharagpur](https://reader035.vdocuments.mx/reader035/viewer/2022081504/56649d965503460f94a7f9de/html5/thumbnails/54.jpg)
54
SaaS Business Model
![Page 55: 1 Emerging Trends in Software Engineering Prof. R. Mall Dept. of CSE, IIT, Kharagpur](https://reader035.vdocuments.mx/reader035/viewer/2022081504/56649d965503460f94a7f9de/html5/thumbnails/55.jpg)
55
SaaS Architecture…
Meta-Model
Data
Player
Designer
Application Instance
Play/Edit
Edit
Client 1
Client 2
Client n
![Page 56: 1 Emerging Trends in Software Engineering Prof. R. Mall Dept. of CSE, IIT, Kharagpur](https://reader035.vdocuments.mx/reader035/viewer/2022081504/56649d965503460f94a7f9de/html5/thumbnails/56.jpg)
56
Summary Some of the basic assumptions of
software are changing This is leading to some different
paradigms for software delivery. Component-based development:
Expected to reduce development time, cost and at the same time improve quality.
SaaS is changing the way software is delivered.
SOA conceives a component based assembly model with independent component vendors.