Professional Documents
Culture Documents
& ARCHITECTURE 2
MODULE 4
SYSTEM
INTEGRATION
• To understand the overall framework for system integration management as it
relates to the other project management knowledge areas and the system life
cycle
• To explain project plan execution, its relationship to project planning, the
factors related to successful results, and tools and techniques to assist in
project plan execution
SUBTOPIC 1
• The term “integration” refers to the software-development
activity in which you combine separate software
components into a single system.
• For small projects, integration might be shorter as compare
to larger projects that takes weeks or months
• Order of building classes or components affects the order
in which you can integrate them.
• Construction and integration of software should be done in a
correct order.
• When it is done in a wrong order, its harder to code, harder
to test and harder to debug
• None of it will work until all of it works, it can seem as though
it will never be finished
• Easier defect diagnosis
• Fewer defects
• Less scaffolding
• Shorter time to first working product
• Shorter overall development schedules
• Better customer relations
• Improved morale
• Improved chance of project completion
• More reliable schedule estimates
• More accurate status reporting
• Improved code quality
• Less documentation
• Service-oriented Architecture (SOA) is a way of
developing distributed system consisting a stand-alone
web services that may be executing on distributed
computers in different geographical regions
• What is distributed systems?
• A Distributed system is a collection of computers that
appears to be a single system
• It allows hardware and software resources to be shared
• Supports concurrency with multiple processors running
on different computers on the network
Figure 4.1 Distributed System
• SOA is an approach to create an architecture based
upon the use of services, where a service may carry
out some small functions such as producing data or
validating a customer
• A Web service is a computational or information
resource that may be used by another program, and it
allows a service provider to provide a service to an
application (service requestor) that wishes to use the
service.
Figure 4.2 Service Oriented Architecture
SERVICE-ORIENTED ARCHITECTURE IS AN
ARCHITECTURAL STYLE
• Derived from the client-server architectural style.
• Clients (service consumers or requesters) and servers
(service providers) connected by a service “bus”.
• Services defined using formal interfaces (contracts).
Slide 13 of 28
• Service bus supports point-to-point and messaging
styles of communication.
• Support for system qualities, e.g., security and
transaction management.
WEB SERVICES
• Services provided in a SOA deployed over the web.
Slide 14 of 28
1960 - 1980 1990 - 2000 2010 – 2050
Slide 16 of 28
• A Service is a reusable component.
• A Service changes business data from one state to another.
• A Service is the only way how data is accessed.
• If you can describe a component in Web Service Description
Language (WSDL), it is a Service.
Slide 17 of 28
)
• The service interface is defined in a service description
expressed in WSDL.
The WSDL specification defines:
• What operations the service supports and the format of the
messages that are sent and received by the service.
Slide 18 of 28
• How the service is accessed - that is, the binding maps
the abstract interface onto a concrete set of protocols.
• Where the service is located. This is usually expressed
as a URI (Universal Resource Identifier).
Slide 19 of 28
WSDL service definition
Type declarations
Abstract interface Interface declarations
Message declarations
Slide 20 of 28
• A WSDL documents describes a web service.
• It specifies the location of the service, and the methods of the service
using these major elements:
Element Description
<types> Defines the (XML Schema) data types used by the web service
<message> Defines the data elements for each operation
<portType> Describes the operations that can be performed and the messages
involved.
<binding> Defines the protocol and data format for each port type
Slide 21 of 28
Slide 22 of 28
Slide 23 of 28
• The <portType> element defines a web service, the operations that
can be performed, and the messages that are involved.
• The request-response type is the most common operation type, but
WSDL defines four types:
Type Definition
One-way The operation can receive a message but will not return a response
Request-response The operation can receive a request and will return a response
Solicit-response The operation can send a request and will wait for a response
Notification The operation can send a message but will not wait for a response
• One-way operation example:
• A request-response operation example:
• WSDL bindings defines the
message format and
protocol details for a web
service.
• A request-response
operation example:
• SOAP is an application communication protocol
• Is a format for sending and receiving messages
• Is platform independent
• Is based on XML
Slide 29 of 28
• Deployment involves publicizing the service using
UDDI and installing it on a web server. Current servers
provide support for service installation.
Slide 30 of 28
• is an XML-based standard for describing, publishing, and
finding web services
• stands for Universal Description, Discovery, and Integration
• Is specification for a distributed registry of web services
Slide 31 of 28
• Is a platform-independent, open framework
• Can communicate via SOAP, COBRA, Java RMI Protocol
• Uses WSDL to describe interfaces to web services
• Is seen with SOAP and WSDL as one of the three foundation
standards of web services
• Is an open industry initiative, enabling businesses to discover
each other and define how they interact over the Internet
Slide 32 of 28
SUBTOPIC 2
STANDARDS FOR WEB SERVICE
COMPOSITION
WEB SERVICE COMPOSITION
• Is the mechanism for combining and reusing existing Web
services to create new Web services.
Slide 34 of 28
STANDARDS FOR WEB SERVICE
COMPOSITION
SERVICE ORCHESTRATION
• WS-BPEL is an XML-based language for workflow specification.
• WS-BPEL is an “orchestration” language.
• Service orchestration defines the sequence and conditions in
which one Web service invokes other Web services.
• Can be used to create a composite service out of other
services.
Slide 35 of 28
STANDARDS FOR WEB SERVICE
COMPOSITION
SERVICE CHOREOGRAPHY
• WS-CDL is an XML-based language for describing service
“choreography”.
• Choreography defines the allowable message exchanges between
services.
• It is targeted for composing interoperable, peer-to-peer collaborations
between any type of participant
Slide 36 of 28
ORCHESTRATION VS. CHOREOGRAPHY
ORCHESTRATION CHOREOGRAPHY
A Single Director In Defines Interaction.
Control.
ORCHESTRATION VS. CHOREOGRAPHY
Orchestration
within
services
Choreography
between
services
Slide 38 of 28
CHOREOGRAPHY PERSPECTIVE
ORCHESTRATION PERSPECTIVE
ORCHESTRATION AND CHOREOGRAPHY
LEGACY SYSTEM SERVICES
• Legacy systems are old software systems
• Organizations rely on obsolete technology but are still
essential to the business
• Not cost effective to rewrite or replace these systems
• Many organizations would like to use them in conjunction
with more modern systems
Slide 43 of 28
LEGACY SYSTEM SERVICES
• An important application of services is to provide access to
functionality embedded in legacy systems.
• Legacy systems offer extensive functionality and this can
reduce the cost of service implementation.
• External applications can access this functionality through the
service interfaces.
Slide 44 of 28
LEGACY SYSTEM SERVICES
• Some services provided:
1. A maintenance service. This includes operations to retrieve a
maintenance job according to its job number, priority, and
geographical location and upload details of maintenance.
Slide 54 of 28
PROVEN PRACTICES WITH SYSTEM INTEGRATION
PRACTICE DESCRIPTION
Start earlier development The development of assembly tools and verification and
of means validation tools can be as long as the system itself. It should be
started as early as possible as soon as the preliminary design is
nearly frozen.
Integration means seen as The development of integration means (assembly tools,
enabling systems verification, and validation tools) can be seen as enabling
systems, using system definition and system realization
processes . These projects can be led by the project of the
corresponding system-of-interest, but assigned to specific
system blocks, or can be subcontracted as separate projects.
Use coupling matrix A good practice consists in gradually integrating aggregates in
order to detect faults more easily. The use of the coupling
matrix applies for all strategies and especially for the bottom up
integration strategy.
Integration and design The integration responsible should be part of the design team.
teams
Slide 55 of 28
• Pressman, R. S. (2015). Software engineering: a practitioners approach. New York, NY: McGraw-Hill
• Douglass, B. P. (2016). Agile systems engineering. Waltham, MA: Morgan Kaufmann.
• Leach, R. J. (2016). Introduction to software engineering. Boca Raton: Chapman & Hall/CRC.
• Laplante, P. A. (2018). Requirements engineering for software and systems. Boca Raton: CRC Press.