Component-Based Software Engineering Dr R Bahsoon 1 Revision Session Component-Based Software Dr. Rami Bahsoon School of Computer Science The University.

Slides:



Advertisements
Similar presentations
Software Engineering Dr R Bahsoon 1 Lecture 1. Introduction Software Engineering (Second Year) Dr. Rami Bahsoon School of Computer Science The University.
Advertisements

Unit 2. Software Lifecycle
A Brief Introduction. Acknowledgements  The material in this tutorial is based in part on: Concurrency: State Models & Java Programming, by Jeff Magee.
® IBM Software Group © 2006 IBM Corporation Rational Software France Object-Oriented Analysis and Design with UML2 and Rational Software Modeler 04. Other.
Using UML, Patterns, and Java Object-Oriented Software Engineering Royce’s Methodology Chapter 16, Royce’ Methodology.
©Ian Sommerville 2006Software Engineering, 8th edition. Chapter 8 Slide 1 System models.
Secure Middleware (?) Patrick Morrison 3/1/2006 Secure Systems Group.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 5 Slide 1 Review 2.
Component-Based Software Engineering Dr R Bahsoon 1 Announcement 1: Presentations Component-Based Software Dr. Rami Bahsoon School of Computer Science.
Modified from Sommerville’s originalsSoftware Engineering, 7th edition. Chapter 8 Slide 1 System models.
Tutorials 1 1.What is the definition of a distributed system? 1.A distributed system is a collection of independent computers that appears to its users.
1/31 CS 426 Senior Projects Chapter 1: What is UML? Chapter 2: What is UP? [Arlow and Neustadt, 2005] January 22, 2009.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 5 Slide 1 Review 1.
Unit 3. Engineering Component-Based Software: Processes and lifecycle
1 CS 426 Senior Projects Chapter 1: What is UML? Chapter 2: What is UP? [Arlow and Neustadt, 2002] January 26, 2006.
Architectural Design Establishing the overall structure of a software system Objectives To introduce architectural design and to discuss its importance.
Component-Based Software Engineering Dr R Bahsoon 1 Lecture 1. Introduction Component-Based Software Dr. Rami Bahsoon School of Computer Science The University.
©Ian Sommerville 2006Software Engineering, 8th edition. Chapter 18 Slide 1 Software Reuse.
Software Engineering Muhammad Fahad Khan
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 18 Slide 1 Software Reuse.
What is UML? What is UP? [Arlow and Neustadt, 2005] January 23, 2014
1 Introduction to Modeling Languages Striving for Engineering Precision in Information Systems Jim Carpenter Bureau of Labor Statistics, and President,
Slide 1 Wolfram Höpken RMSIG Reference Model Special Interest Group Second RMSIG Workshop Methodology and Process Wolfram Höpken.
©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 7 Slide 1 System models l Abstract descriptions of systems whose requirements are being.
Chapter 4 System Models A description of the various models that can be used to specify software systems.
System models Abstract descriptions of systems whose requirements are being analysed Abstract descriptions of systems whose requirements are being analysed.
Integrating Security Design Into The Software Development Process For E-Commerce Systems By: M.T. Chan, L.F. Kwok (City University of Hong Kong)
Database Application Security Models Database Application Security Models 1.
UML Diagrams: Class Diagrams The Static Analysis Model Instructor: Dr. Hany H. Ammar Dept. of Computer Science and Electrical Engineering, WVU.
Dr. Mohamed Osman Hegazi 1 Database Systems Concepts Database Systems Concepts Course Outlines: Introduction to Databases and DBMS. Database System Concepts.
Object Management Group (OMG) Specifies open standards for every aspect of distributed computing Multiplatform Model Driven Architecture (MDA)
Information System Development Courses Figure: ISD Course Structure.
University of Southern California Center for Systems and Software Engineering Model-Based Software Engineering Supannika Koolmanojwong Spring 2013.
Chapter 7 System models.
System models l Abstract descriptions of systems whose requirements are being analysed.
Software Engineering, Lecture 4 Mohamed Elshaikh.
Software Engineering Prof. Ing. Ivo Vondrak, CSc. Dept. of Computer Science Technical University of Ostrava
Modeling Component-based Software Systems with UML 2.0 George T. Edwards Jaiganesh Balasubramanian Arvind S. Krishna Vanderbilt University Nashville, TN.
Performance evaluation of component-based software systems Seminar of Component Engineering course Rofideh hadighi 7 Jan 2010.
Fall 2010 CS4310 Requirements Engineering A Brief Review of UML & OO Dr. Guoqiang Hu Department of Computer Science UTEP 1.
Model-Driven Engineering of Behaviors in User Interfaces Efrem Mbaki & Jean Vanderdonckt Université catholique de Louvain (UCL) Louvain School of Management.
Chapter 2 Database System Concepts and Architecture Dr. Bernard Chen Ph.D. University of Central Arkansas.
Rational Unified Process Fundamentals Module 7: Process for e-Business Development Rational Unified Process Fundamentals Module 7: Process for e-Business.
Slide 1 Wolfram Höpken RMSIG Reference Model Special Interest Group Third RMSIG Workshop Basic Modeling Concepts Wolfram Höpken.
UML: A notation for capturing work products
Slide 1 Service-centric Software Engineering. Slide 2 Objectives To explain the notion of a reusable service, based on web service standards, that provides.
Chapter 14 Advanced Architectural Styles. Objectives Describe the characteristics of a distributed system Explain how middleware supports distributed.
XASTRO-2 Presentation CCSDS SAWG th November 2004.
IB Computer Science Content developed by Dartford Grammar School Computer Science Department Objects as a programming concept.
Requirement Analysis SOFTWARE ENGINEERING. What are Requirements? Expression of desired behavior Deals with objects or entities, the states they can be.
Yu, et al.’s “A Model-Driven Development Framework for Enterprise Web Services” In proceedings of the 10 th IEEE Intl Enterprise Distributed Object Computing.
Design and implementation Chapter 7 – Lecture 1. Design and implementation Software design and implementation is the stage in the software engineering.
Fundamentals of Software Engineering. Instructor: Dr. Kal Bugrara Office: Snell Engineering, Rm 267 Office Hours: Sat: 12:00-2:00 pm Phone
Chapter 5 – System Modeling Lecture 1 1Chapter 5 System modeling.
Engineering, 7th edition. Chapter 8 Slide 1 System models.
Software Reuse. Objectives l To explain the benefits of software reuse and some reuse problems l To discuss several different ways to implement software.
IS301 – Software Engineering V:
What is UML? What is UP? [Arlow and Neustadt, 2005] October 5, 2017
Abstract descriptions of systems whose requirements are being analysed
Team members: Project Manager: Facilitator: Customer Liason:
Service-centric Software Engineering
Tools for Composing and Deploying Grid Middleware Web Services
UML profiles.
Software Design Lecture : 14.
Practical Software Engineering
Software Engineering (Second Year) Dr
Chapter 5 Architectural Design.
COMPONENT – BASED SOFTWARE ENGINEERING MODULE 2 – SECOND SEMESTER MKHIZE, BSC HONS COMPUTER SCIENCES, DIP IT, ICDL.
Information system analysis and design
Presentation transcript:

Component-Based Software Engineering Dr R Bahsoon 1 Revision Session Component-Based Software Dr. Rami Bahsoon School of Computer Science The University Of Birmingham Office 112 Y9- Computer Science

Component-Based Software Engineering Dr R Bahsoon 2 Assessment & Exam Structure Examination 80% Group Presentations & Group Coursework 20% Exam Structure – 1.5 hrs exam –Part I – Content Questions [32%] Answer FOUR Questions out of SEVEN Provide BRIEF AND PRECISE answers 8% Each –Question 1 to Question 7 –Part II – Modeling Questions [68%] Three Main Questions –Question 8 [9%] –Question 9 [26%] –Question 10 [33%]

Component-Based Software Engineering Dr R Bahsoon 3 Exam Content – Part I Part I- Questions are mainly derived from –Unit 1: Essentials to CBS Components, characteristics, Interfaces, Specification, Interface Description Language (IDL), Components vs. objects, architectures, Components as services, composition, Component Models, Frameworks, Middleware software-componentshttp:// software-components –Unit 2: Reflection on the modeling of objects and components –Unit 3: Engineering CBS – Process & Lifecycle –Rational Unified Process –Model-driven development –Reuse-driven software development and landscape –Component-based software lifecycle

Component-Based Software Engineering Dr R Bahsoon 4 Part I- Sample Question Briefly explain the concept of Model-Driven Architectures (MDA) and highlight a major advantage of adopting such a paradigm for engineering components-based software systems. [8%] Answer?

Component-Based Software Engineering Dr R Bahsoon 5 Part I – Sample Question - Answer A model is a description of a system. A PIM describes a system without any knowledge of the final implementation platform. A PSM describes a system with full knowledge of the final implementation platform. A transformation definition describes how a model in a source language can be transformed into a model in a target language. A transformation tool performs a transformation for a specific source model according to a transformation definition. Advantages?

Component-Based Software Engineering Dr R Bahsoon 6 Part II – Modeling Modeling Objects and Components using UML –Interpreting UML diagrams –Modeling –In the spirit of your Coursework

Component-Based Software Engineering Dr R Bahsoon 7 Part II – Sample 1 Interpreting UML diagrams –In FEW words, explain the relation in the below diagrams.

Component-Based Software Engineering Dr R Bahsoon 8 Answer Composed of 64 squares

Component-Based Software Engineering Dr R Bahsoon 9 Part II – Sample 1 Draft a use case diagram for an online library system. Make use of both > and > stereotypes. State any necessary assumptions you make. Answer?

Component-Based Software Engineering Dr R Bahsoon 10 Part II – Sample 2 Use UML to model the components and interfaces corresponding to the given Scenario –Assume that Bob wants to book a holiday Bob will book his holiday, where –He provides the following data: His origin airport, his destination, his dates of departure/return, and any other preference information (e.g., budget, luxury, etc) Bob is interested in promotional offers for the period of his holiday –He wants to rent a car at his destination. –He wants to get good hotel deals during his stay.

Component-Based Software Engineering Dr R Bahsoon 11 Part II – Sample 2 Flight Booking service Hotel Promotional Service Car Hire Promotional Service Sketch the components and interfaces corresponding to the given services

Component-Based Software Engineering Dr R Bahsoon 12 Software Systems Requirements After you book a holiday, the company shall provide the holidaymaker with promotional services, which include hotel deals and car rent promotional service at the destination and for the duration of her/his stay

Component-Based Software Engineering Dr R Bahsoon 13 Answer: Flight Booking Provides Requires Flight Booking Flight Information Customer Preference Information Customer data

Component-Based Software Engineering Dr R Bahsoon 14 Promotional Hotel Booking Service.. Provides Requires Promotional Hotel Booking Service List of available Hotels Flight Information Customer Preference Information

Component-Based Software Engineering Dr R Bahsoon 15 You can even provide more services.. Provides Requires Promotional Hotel Booking Service List of available Hotels List of Budget Hotel List of Five stars List of B&B List of 3 stars Flight Information Customer Preference Information

Component-Based Software Engineering Dr R Bahsoon 16 Car Hire Promotional Service Provides Requires Car Hire Promotional Service List of available Car agents Flight Information Customer Preference Information List of cars deals

Component-Based Software Engineering Dr R Bahsoon 17 Gluing the Components Provides Requires Flight Booking Flight Information Customer Preference Information Customer data Provides Requires Car Hire Promotional Service List of available Car agents Flight Information Customer Preference Information List of cars deals Provides Requires Promotional Hotel Booking Service List of available Hotels List of Budget Hotel List of Five star List of B&B List of 3 stars Flight Information Customer Preference Information

Component-Based Software Engineering Dr R Bahsoon 18 Sketch a sequence diagram for self-service machine, three objects do the work we're concerned with –the front: the interface the self-service machine presents to the customer –the money register: part of the machine where moneys are collected –the dispenser: which delivers the selected product to the customer Derive your collaboration diagram Part II - Sample 3

Component-Based Software Engineering Dr R Bahsoon 19 Part II- Sample 4 Sketch a three-tier architecture for online banking system Sketch a client-server architecture for online inventory system

Component-Based Software Engineering Dr R Bahsoon 20 Example of Three-Tiers Architectures Many of real life web applications have three tier architectures

Component-Based Software Engineering Dr R Bahsoon 21 Deployment Diagrams for Three Tiers UML 1.4 Components deployed in an architecture

Component-Based Software Engineering Dr R Bahsoon 22 Example: Client Server Architectures

Component-Based Software Engineering Dr R Bahsoon 23 Example: Deployment Diagram for a Client Server Architecture UML 2.0

Component-Based Software Engineering Dr R Bahsoon 24 Q&A Question and Answer Session Flipping through the slides?