Topics: Components, interfaces and integration Infrastructure, Middleware and Platforms Techniques – Data warehouses, extending frameworks, wrappers,

Slides:



Advertisements
Similar presentations
Software Quality Assurance Plan
Advertisements

MIS 2000 Class 20 System Development Process Updated 2014.
Chapter 2 – Software Processes
Chapter 7: Key Process Areas for Level 2: Repeatable - Arvind Kabir Yateesh.
ITIL: Service Transition
Documentation Testing
R R R CSE870: Advanced Software Engineering (Cheng): Intro to Software Engineering1 Advanced Software Engineering Dr. Cheng Overview of Software Engineering.
Nov. 14, 2007 Systems Engineering ä System ä A set or arrangement of things so related as to form a unity or organic whole. ä A set of facts, principles,
Software Engineering For Beginners. General Information Lecturer, Patricia O’Byrne. – Times: –See noticeboard outside.
Copyright 2004 Prentice-Hall, Inc. Essentials of Systems Analysis and Design Second Edition Joseph S. Valacich Joey F. George Jeffrey A. Hoffer Chapter.
Pertemuan Matakuliah: A0214/Audit Sistem Informasi Tahun: 2007.
1 Software Requirements Specification Lecture 14.
1 Objective of today’s lesson S oftware engineering occurs as a consequence of a process called system engineering. Instead of concentrating solely on.
DITSCAP Phase 2 - Verification Pramod Jampala Christopher Swenson.
System Engineering Instructor: Dr. Jerry Gao. System Engineering Jerry Gao, Ph.D. Jan System Engineering Hierarchy - System Modeling - Information.
The Software Product Life Cycle. Views of the Software Product Life Cycle  Management  Software engineering  Engineering design  Architectural design.
University of Jyväskylä – Department of Mathematical Information Technology Computer Science Teacher Education ICNEE 2004 Topic Case Driven Approach for.
Introduction to Software Testing
SOFTWARE QUALITY ASSURANCE Asst. Prof. Dr. Selim BAYRAKLI Maltepe University Faculty of Engineering SE 410.
Introduction to Computer Technology
Enterprise Architecture
Copyright 2001 Prentice-Hall, Inc. Essentials of Systems Analysis and Design Joseph S. Valacich Joey F. George Jeffrey A. Hoffer Chapter 1 The Systems.
Effective Methods for Software and Systems Integration
QUALITY MANAGEMENT SYSTEM ACCORDING TO ISO
Introduction to Information System Development.
S/W Project Management
CHAPTER 5 Infrastructure Components PART I. 2 ESGD5125 SEM II 2009/2010 Dr. Samy Abu Naser 2 Learning Objectives: To discuss: The need for SQA procedures.
Database System Development Lifecycle © Pearson Education Limited 1995, 2005.
Overview of the Database Development Process
Introduction to Software Quality Assurance (SQA)
Systems Analysis – Analyzing Requirements.  Analyzing requirement stage identifies user information needs and new systems requirements  IS dev team.
S/W Project Management Software Process Models. Objectives To understand  Software process and process models, including the main characteristics of.
CSI315 Web Applications and Technology Overview of Systems Development (342)
ITEC224 Database Programming
Software System Engineering: A tutorial
Demystifying the Business Analysis Body of Knowledge Central Iowa IIBA Chapter December 7, 2005.
1 Process Engineering A Systems Approach to Process Improvement Jeffrey L. Dutton Jacobs Sverdrup Advanced Systems Group Engineering Performance Improvement.
ITEC 3220M Using and Designing Database Systems
SENG521 (Fall SENG 521 Software Reliability & Testing Software Product & process Improvement using ISO (Part 3d) Department.
Service Transition & Planning Service Validation & Testing
OBJECT ORIENTED SYSTEM ANALYSIS AND DESIGN. COURSE OUTLINE The world of the Information Systems Analyst Approaches to System Development The Analyst as.
SOFTWARE DESIGN.
What is a Business Analyst? A Business Analyst is someone who works as a liaison among stakeholders in order to elicit, analyze, communicate and validate.
Testing Workflow In the Unified Process and Agile/Scrum processes.
Lecture 7: Requirements Engineering
Systems Analysis and Design
Assessing the influence on processes when evolving the software architecture By Larsson S, Wall A, Wallin P Parul Patel.
The System and Software Development Process Instructor: Dr. Hany H. Ammar Dept. of Computer Science and Electrical Engineering, WVU.
9 Systems Analysis and Design in a Changing World, Fourth Edition.
Configuration Management and Change Control Change is inevitable! So it has to be planned for and managed.
Chapter 2 – Software Processes Lecture 1 Chapter 2 Software Processes1.
Software Engineering Lecture # 1.
Lecture 13.  Failure mode: when team understands requirements but is unable to meet them.  To ensure that you are building the right system Continually.
Smart Home Technologies
Process Asad Ur Rehman Chief Technology Officer Feditec Enterprise.
1 Object-Oriented Analysis and Design with the Unified Process Figure 13-1 Implementation discipline activities.
Unit – I Presentation. Unit – 1 (Introduction to Software Project management) Definition:-  Software project management is the art and science of planning.
Software Engineering Lecture 10: System Engineering.
LECTURE 5 Nangwonvuma M/ Byansi D. Components, interfaces and integration Infrastructure, Middleware and Platforms Techniques – Data warehouses, extending.
 System Requirement Specification and System Planning.
AUDIT STAFF TRAINING WORKSHOP 13 TH – 14 TH NOVEMBER 2014, HILTON HOTEL NAIROBI AUDIT PLANNING 1.
MANAGEMENT INFORMATION SYSTEM
Advanced Software Engineering Dr. Cheng
ITIL: Service Transition
Software Project Configuration Management
Introduction to Software Testing
Software life cycle models
Introduction to Systems Analysis and Design Stefano Moshi Memorial University College System Analysis & Design BIT
Software Reviews.
System Analysis and Design:
Presentation transcript:

Topics: Components, interfaces and integration Infrastructure, Middleware and Platforms Techniques – Data warehouses, extending frameworks, wrappers, glue, facades

Core learning outcomes: Define integration in terms of components and interfaces. Give examples of middleware platforms. Discuss some advantages and disadvantages of some middleware platforms. Describe the major considerations for enterprise integration platform selection. Give an example of integration using the “wrapper” approach. Give an example of integration using the “glue code” approach. Give an example of how a framework facilitates integration of components. Explain how the data warehouse concept relates to enterprise information integration. Give examples of how testing and evaluation are impacted by integration choices.

SYSTEM INTEGRATION (SI) Definition It is used for melding existing systems and new technologies to form more capable systems that are intended to take on additional tasks, exhibit improved performance, and/or enhance existing systems.

Definition 2 SI is a logical, objective procedure for applying new and/or expanded performance requirements in an efficient, timely manner to the design, installation, and operation of an operational configuration consisting of distinct modules (or subsystems), each of which may embody inherent constraints or limitations.

Key Terms Logical, Objective Procedure. The SI process is clear to external observers and all steps have a built- in audit trail. Efficient and Timely. The SI process will not be unduly burdened with delays that increase cost to the client and delay deployment of the system. Design, Procurement, Installation, and Operation. The SI process will be employed throughout the entire process.

Key Terms…Cont… Distinct Modules with Inherent Limits or Constraints. The concept of distinct modules with inherent limits or constraints is central to the concept of SI. SI is necessary when the configuration to be deployed includes devices with intimate connections to other devices previously deployed or to be deployed under a later procurement, particularly if these devices were designed and constructed by subcontractors with only partial design responsibility for the overall system.

Objectives of Systems Integration Methodology 1. To support problem understanding and communication between all parties at all stages of development. 2. Enable capture of design and implementation needs early, especially interface and interactive needs associated with bringing together new and existing equipment and software. 3. To support both a top-down and a bottom-up design philosophy.

Methods of integration Vertical Integration Horizontal Integration Star Integration

Vertical Integration Vertical Integration This is a method which integrates subsystems according to their functionality by creating functional entities referred to as silos. The benefit to this system integration method is that the integration is performed quickly and involves only the necessary vendors; vertical integration is thus cheaper in the short term. However, the cost-of-ownership involved is substantially higher than those in other system integration methods..

Vertical Integration This is due to the fact that, in case of new or enhanced functionality, the only way to implement or scale the system would be by means of implementing another silo. Reusing subsystems to create functionality is thus not possible

Horizontal Integration Horizontal Integration This is a method where a specialized subsystem is used for communication between other subsystems. A horizontal integration system cuts the number of connections/interfaces to only one per subsystem; this means the interface will connect directly to the enterprise service bus. The enterprise service bus has the capability to translate the interface into another interface. This allows for the integration costs to be cut, and also provides extreme flexibility

Horizontal Integration. It is thus completely possible to replace one subsystem with another subsystem through the use of a horizontal integration system. Similar functionality is thus provided although different interfaces are exported. The rest of the subsystems can now follow by implementing the new interface between the enterprise service bus and the new subsystem.

Star Integration Star Integration (Spaghetti Integration)This is a system integration method where each system is interconnected to each of the remaining subsystems. When this method is seen from the perspective of the subsystem being integrated the connections look like a star; however, when the overall diagram of the system is presented, the different connections look like spaghetti. The cost of the star integration system varies according to the interfaces which subsystems are exporting.

Star Integration The integration cost can rise substantially in cases where the subsystems are exporting heterogeneous or proprietary interfaces. When adding additional subsystems, time and cost needed to integrate these systems show an exponential increase. This system integration method often seems more preferable due to the extreme flexibility of the reuse of functionality.

SI Personnel Needs and Technical Areas The client must define the SI requirements, specifications, constraints, and variables in a manner so as to provide the means for a SI organization to deliver the necessary systems and services required to fulfill the client mission under the specific contract SI requires personnel who possess sound technical and management skills that combine to provide the ability to integrate technology and operations with technical and managerial direction.

Role of Systems Integration in Large, Complex Engineered Systems Development and utilization of a strategic plan for management and technical aspects of the program; Establishment of a complete audit trail; Assistance in meeting initially unrecognized needs (including changes in system requirements); Avoidance of under- and over-procurement; and utilization of risk management plans; Management of subcontractors to the same specifications as employed on the prime contract; and Provisions for future modification and expansion.

SYSTEMS INTEGRATION LIFE CYCLE Requirements definition and specification Feasibility analysis System architecture development Management plan: program and project plan Systems design: logical and physical design Implementation: design implementation, system tests, and operational deployment Evaluation: system review and plan for replacement/retirement

Requirements Definition and Specifications Definition of requirements by use Review of requirements for ambiguity, conflict, and other issues Development of systems specifications The goal for requirements definition and specification is to completely define and correctly interpret the client's real needs.

Feasibility analysis Determine the likelihood of successful system development and deployment Examine new technologies Assess risk and develop risk strategies

System Architecture Development Describe functional system architecture Specify required technical capabilities

Management Plan: Program and Project Plan Identify technical architecture alternatives Specify required configuration categories Prepare program and project plans (e.g., work breakdown structure) Prepare subcontractor management plan Prepare risk management plan

Systems Design Logical and Physical Design Design approaches (e.g., top-down, bottom-up, etc.) Use of CASE tools and other automated aids

Implementation Design Implementation, System Tests, and Operational Deployment Identify technical configuration Specify required configuration component items Procurement from subcontractors Perform system tests System deployment

SI implementation

Evaluation System Review and Plans for Replacement~retirement Review and evaluate system functioning Obtain, install, test, and accept modified components Maintain, modify, augment, and enhance systems Plan for system retirement/replacement.

Functional Activities of Systems Integrators Conduct general studies of needs to realize improved system performance. Develop detailed specifications and designs. Conduct risk studies and implement risk minimization strategies. Perform system analysis and design. Develop hardware and software design. Employ project planning and control. Perform business management and accounting.

Functional Activities….. Cont.. Develop and nurture relationships with customers and subcontractors. Develop hardware design and specification. Carry out configuration management. Accomplish testing. Implement technology based solutions to business needs. Train users of new systems.

Systems Integration Strategies for Success For SI management, some of the strategies that will be necessary to compete in the SI world of the future include: Strict control of overhead Increased knowledge of client businesses Proactive management to control costs and increase market share

Audit trails The way to embed an audit trail in an SI program, either by the client or the SI organization, is to i. Document system-level requirements into a database; ii. Establish whether or not issues are present and, if so, resolve them; iii. Assign appropriate validation and verification metrics; iv. Establish guidelines for subcontractors; v. Provide solid unambiguous procurement instruments; and vi. Track these activities from specifications through installation and operation.

Quality Assurance in SI Quality Assurance is a planned and systematic pattern of all actions necessary to provide adequate confidence that the item or product conforms to established technical requirements (IEEE) Software quality is the degree to which the attributes of the software enable it to perform its specified end- item use. There is always need to define quality attributes for the system, assess the affect of quality on system performance, and finally determine the metrics that are necessary for evaluation of quality.

Quality Assurance and Testing Can be conducted from either a structural, a functional or a purposeful perspective. Structural perspective, the system would be tested in terms of micro-level details that involve attributes such as hardware processor input-output (I/O) lines, throughput capability, cycle time, and coding particulars. Other quality assurance indicators would include system reliability, availability, maintainability and interoperability or usability

Quality Assurance & Testing… Cont… Functional perspective, quality assurance and testing involves treating the system as a black box and determining whether the performance conforms to the technical requirements specifications. And Purposeful perspective, the system must be tested to determine whether it does what the client really wishes it to do. This is generally known as validation testing.

The Role of Verification and Validation Software verification is the activity of comparing the software product produced at the output of each phase of the life cycle with the product produced at the output of the preceding phase. It is this latter output that serves both as the input to the next phase and as a specification for it. Software validation compares the output product at each stage of the software life cycle, occasionally only the final product phase, to the initial system requirements. Often these activities are performed by people outside of the software dev’t org

Middleware Middleware is a general term for any programming that serves to "glue together" or mediate between two separate and often already existing programs. A common application of middleware is to allow programs written for access to a particular database to access other databases. Computer software that provides services to software applications beyond those available from the operating system. Thus middleware is not obviously part of an operating system, not a database management system, and neither is it part of one software application

Reading on Advantages of using Middleware Disadvantages of using middleware Examples of middleware Also on: The tools and techniques for system integration– Data warehouses, extending frameworks, wrappers, glue, facades