Case study concerning architecture development Emil Doychev emil

  • Slides: 15
Download presentation
Case study concerning architecture development Emil Doychev, emil. doychev@ecl. pu. acad. bg Georgi Cholakov,

Case study concerning architecture development Emil Doychev, emil. doychev@ecl. pu. acad. bg Georgi Cholakov, georgi. cholakov@ecl. pu. acad. bg University of Plovdiv “Paisii Hilendarski”, e-Commerce Laboratory

The idea • The main idea – to prepare a case study for building

The idea • The main idea – to prepare a case study for building software architectures • To use a real project for this case study, which demonstrates the reverse engineering of a software architecture • In each step of the explanation to put a problem and show a solution

A set of real projects, developed for Deutsche Telekom One (appropriate? ) selected Carrier

A set of real projects, developed for Deutsche Telekom One (appropriate? ) selected Carrier Web Cut Idealized

What we have at the beginning • A huge database, unknown type • Application,

What we have at the beginning • A huge database, unknown type • Application, written in 70’s in COBOL, only way to access the database • The database and the application are not available on the side of the developers • Necessity of modern tools for accessing the business logic of this application

What we must have at the end • Thin client for access to the

What we must have at the end • Thin client for access to the system (browser) • Multilingual: – User interface – Help system – Error messages • Simulator of the COBOL application for the period of the development

? User COBOL Application How to realize it? Database

? User COBOL Application How to realize it? Database

Problems and Solutions Web Browser User HTTP Web Server ? COBOL Application Problem: Thin

Problems and Solutions Web Browser User HTTP Web Server ? COBOL Application Problem: Thin client Solution: Web server DB

Problems and Solutions Web Server JSP Engine User Struts ? COBOL Application Problem: Multilingual

Problems and Solutions Web Server JSP Engine User Struts ? COBOL Application Problem: Multilingual user interface Solution: Dynamic web application, using Struts framework DB

Problems and Solutions JSP Engine User Struts ? COBOL Application Web Server CORBA Wrapper

Problems and Solutions JSP Engine User Struts ? COBOL Application Web Server CORBA Wrapper Problem: Access to the COBOL application using Java Solution: CORBA DB

Problems and Solutions JSP Engine Struts User Local DB ? COBOL Application Web Server

Problems and Solutions JSP Engine Struts User Local DB ? COBOL Application Web Server CORBA Wrapper Problem: Multilingual help system and error messages Solution: Mappings in local database DB

Problems and Solutions Problem: The COBOL application is not available during the development lifecycle

Problems and Solutions Problem: The COBOL application is not available during the development lifecycle Solution: Development of own CORBA test server, considering the IDLs, given by the developers of the original CORBA wrapper. Web Server JSP Engine Struts User Local DB ? CORBA Test Server

Problems and Solutions Problem: Accessing CORBA and database server from web application Solution: Putting

Problems and Solutions Problem: Accessing CORBA and database server from web application Solution: Putting the business logic in an application server Note: Session Façade is used as a pattern. Web Application Session Façade Entity EJBs Local DB Application Server CORBA Façade Bean Test Server

Overall architecture’s view Session Façade JSP Engine CORBA Façade Bean Struts Entity EJBs Local

Overall architecture’s view Session Façade JSP Engine CORBA Façade Bean Struts Entity EJBs Local DB COBOL Application Web Server CORBA Wrapper Application Server DB

The topics, distributed in lections Topic Lection Servlets and Java. Server Pages, Enterprise Java

The topics, distributed in lections Topic Lection Servlets and Java. Server Pages, Enterprise Java Beans Environments and architectures for Internet based development CORBA Enterprise applications integration and web services Frameworks and patterns Elective course

Used software • Local DB – Oracle • Application Server – IBM Web Sphere

Used software • Local DB – Oracle • Application Server – IBM Web Sphere • ORB – Orbix/Visibroker • JSP Engine – Tomcat • Frameworks – Apache Struts