Combining Static and Dynamic Impact Analysis for Large-scale Enterprise Systems

Save this PDF as:
 WORD  PNG  TXT  JPG

Size: px
Start display at page:

Download "Combining Static and Dynamic Impact Analysis for Large-scale Enterprise Systems"

Transcription

1 Combining Static and Dynamic Impact Analysis for Large-scale Enterprise Systems The 15th International Conference on Product-Focused Software Process Improvement, Helsinki, Finland. Wen Chen, Alan Wassyng, Tom Maibaum McMaster Centre for Software Certification (McSCert) Department of Computing and Software McMaster University Hamilton, Ontario, Canada December, / 29

2 Outline 1 Large-scale Enterprise Systems Introduction Characteristics Changes Are Inevitable 2 Conventional Impact Analysis Introduction Static Analysis Dynamic Analysis 3 Combining Static and Dynamic Analysis 4 The Approach at a Glance 5 Empirical Study 6 References 2 / 29

3 Large-scale Enterprise Systems Introduction Enterprise systems (ES) are large-scale application software packages that support business processes, information flows, reporting, and data analytics in complex organizations. Types of ES include but not limit to: Example Enterprise Resource Planning (ERP) Systems Customer Relationship Management (CRM) Systems Supply Chain Management (SCM) Systems Oracle E-Business Suite, SAP ERP, Red Hat JBoss 3 / 29

4 Large-scale Enterprise Systems Characteristics Scalable. Complex. Critical. Costly. Example Total number of MODULES in SAP ERP: 241. Total number of CLASSES in Oracle E-Biz: 230 thousand. Total number of METHODS in Oracle E-Biz: 4.6 million. Large companies can spend $50 million to $100 million on software upgrades. 4 / 29

5 Large-scale Enterprise Systems Changes Are Inevitable System upgrade User requirement change Environment change Performance issue Other customized changes The latest IT Key Metrics Data from Gartner (gartner12, 2011) report that in 2011 some 16% of application support activity was devoted to technical upgrades, rising to 24% in the banking and financial services sector. While making changes, current blind testing strategy is very expensive and time-consuming, however, the actual effect of a change may in fact be minimal. 5 / 29

6 Large-scale Enterprise Systems Changes Are Inevitable A well-defined change impact analysis is required to: reduce risks of unintended changes reduce costs minimize human efforts focus testing help identify uncovered false negatives 6 / 29

7 Software Change Impact Analysis Introduction Software Change: Operations {add, modify, delete...} on software entities {function, field, logic, module, database objects...} Change Impact Analysis: Estimates WHAT will be affected in software and related documentation if a proposed software change is made (Bohner, 1996). 7 / 29

8 Software Change Impact Analysis Static Analysis Static analysis is to identify a subset of affected elements of the program by analysing the code abstract all possible software behaviors by graphs (call graph, dependency graph...) or other static representations Static analysis is safe and complete, but it often comes up with too large impact sets due to the over conservative assumptions: the actual dependencies may turn out to be considerably smaller than the possible ones. Additionally, it usually requires long execution time. 8 / 29

9 Software Change Impact Analysis Dynamic Analysis Dynamic analysis is to identify a subset of affected elements of the program by analysing runtime information collect dynamic information such as: event traces, test coverages, executions in the fields Dynamic analysis is precise and efficient, but it often comes up with incomplete analysis due to under-estimation. 9 / 29

10 Combining Static and Dynamic Analysis Aspect-oriented programming (AOP) The hierarchical modularity mechanisms in object-oriented languages are extremely powerful, but they are inherently unable to modularize all concerns of interest in complex systems. (Kiczales et al., 2001) Aspect-oriented programming (AOP) does for concerns that are naturally crosscutting what OOP does for concerns that are naturally hierarchical, it provides language mechanisms that explicitly capture crosscutting structure. (Kiczales et al., 2001) 10 / 29

11 Combining Static and Dynamic Analysis AspectJ AspectJ adds to Java a new concept, joint point, and some constructs: pointcuts pick out certain joint points in the program flow; After pointcuts pick out join points, we use advice to implement crosscutting behaviour. Advice brings together a pointcut (to pick out join points) and a body of code (to run at each of those join points); 11 / 29

12 Combining Static and Dynamic Analysis AspectJ Inter-type declarations in AspectJ are declarations that cut across classes and their hierarchies. They may declare members that cut across multiple classes, or change the inheritance relationship between classes; The definition of aspects is very similar to classes, which wrap up pointcuts, advice, and inter-type declarations in a a modular unit of crosscutting implementation. 12 / 29

13 Combining Static and Dynamic Analysis AspectJ Example Code Figure : Aspect Trace 13 / 29

14 Combining Static and Dynamic Analysis AspectJ Example Output Sample Figure : Output Sample for MGPAPP.class 14 / 29

15 Combining Static and Dynamic Analysis Benefits integrates with our safe static analysis (Chen et al., 2013); provides precise estimation of impacts; works at bytecode level; does not alter system behaviour in any ways; saves efforts in learning the application logic; efficient in both time and space (seconds/class and kilobytes/class). 15 / 29

16 The Approach at a Glance Analysis Overview input Atomic Changes (AC) Change Analysis Changes (C) Reverse Search Reachability Analysis Static Analysis Access Dependency Graph Static Impacts (S) subtract Potential False- Positives (PO) Alias Analysis output Dynamic Analysis Dynamic Impacts (D) union Impact Set (I) Enterprise System Figure : Analysis Process Overview 16 / 29

17 The Approach at a Glance Analysis Overview Steps in our approach include(chen et al., 2013) (Chen, Wassyng, & Maibaum, 2014): (i) Static analysis to abstract a representation of the target program P. A full dependency graph G is built for the system at functions level. (ii) Change analysis to identify direct and indirect changes. The identification of indirect changes may require String Analysis. 17 / 29

18 The Approach at a Glance Analysis Overview (iii) Graph searching algorithm is employed to extract a static impact set S. The static impact set S is conservative but safe, we will be cutting off false positives from within this set. (iv) Instrumenting the program P to collect a dynamic impact set D. The dynamic impact set D contains real execution information that we should keep in the static impact set S. 18 / 29

19 The Approach at a Glance Analysis Overview (v) Reachability analysis to filter out other unidentified paths in dynamic analysis that are false positives. Paths taken into account in this step are those that haven t been executed in dynamic analysis but have the potential of reaching a direct/indirect change. Paths filtered out in this analysis are considered as infeasible paths (mis-matched calls and returns). (vi) Pointer/aliasing analysis to further filter out unidentified paths. If there isn t any variable along a particular path aliased to any variable within a changed method, this path can be regarded as a false positive. Different from the infeasible paths identified in reachability analysis, paths filtered out in this analysis are feasible but won t be affected by the changes. Note that, step (v) and step (vi) are continued research appeared in (Chen et al., 2014). 19 / 29

20 Empirical Study Target system: Oracle E-Business Suite Version 11.5 Source of changes: Oracle patch # , , Objective: identify the impact set of the patches Physical environment: Quad core 3.2GHz CPU, 32GB RAM, 64-bit Red Hat Linux Enterprise version 20 / 29

21 Empirical Study Cont d Figure : Oracle E-Business Suite System Architecture Modules: CRM, CSM, Financials, SCM, HRMS / 29

22 Empirical Study Cont d Oracle E-Business Suite V11.5: Number of classes: Number of entities (functions and fields): Patches will be affecting both application tier and database tier. Patches Size Number of direct changes Patch # MB Patch # KB 0 Patch # MB / 29

23 Empirical Study Empirical Results Oracle E-Biz Numbers Classes Entities Static dependencies Dynamic dependencies Reduced dependencies after reachability analysis and aliasing analysis 23 / 29

24 Empirical Study Results Figure : Oracle E-Business Suite 11.5, Patch and its impacts. 24 / 29

25 Empirical Study Empirical Results Patches Size 212MB 10KB 99MB Number of direct changes Affected functions Affected functions % 22% 0% 7.3% Affected top functions Affected top functions % 5.1% 0% 2.2% Static Analysis Dynamic Analysis Reachability and Alias Analysis hours Mapping Build access Extract changes dynamic Build Instrumentation Compute CFG dependency and compute impacts and supergraph Gather results graph static impacts Compute aliasing information Figure : Analysis Time for Patch # / 29

26 Summary Achievements We have developed a multi-tasking, aspect-oriented instrumentor to adequately instrument large-scale systems and collect traces at bytecode level. We have successfully combined static analysis and dynamic analysis. Static analysis was used as the input to dynamic analysis, providing a safety guarantee whenever full potential impacts are needed. We have empirically demonstrated the practical applicability of the improved approach on a very large enterprise system involving hundreds of thousands of classes. Such systems are perhaps 2 orders of magnitude larger than the systems analyzed by other approaches. 26 / 29

27 Summary Future Work Running time still needs to be improved; The impacts identified by dynamic analysis was only a small portion of the static impacts (0.015%), though they were executed hundreds of thousands of times. Need to include customized code. 27 / 29

28 Bibliography Bohner, S. A. (1996). Software Change Impact Analysis. In Proceedings of the 27th annual nasa goddard/ieee software engineering workshop (sew-27 02). Chen, W., Iqbal, A., Abdrakhmanov, A., Parlar, J., George, C., Lawford, M.,... Wassyng, A. (2013). Large-scale enterprise systems: Changes and impacts. In Enterprise information systems (Vol. 141, p ). Springer Berlin Heidelberg. Chen, W., Wassyng, A., & Maibaum, T. (2014). Impact analysis via reachability and alias analysis. In U. Frank, P. Loucopoulos,. Pastor, & I. Petrounias (Eds.), The practice of enterprise modeling (Vol. 197, p ). Springer Berlin Heidelberg. Retrieved from 19 doi: / IT Key Metrics Data (2011, December). Gartner, Inc. Kiczales, G., Hilsdale, E., Hugunin, J., Kersten, M., Palm, J., & Griswold, W. G. (2001). An overview of aspectj. In Ecoop 2001object-oriented programming (pp ). Springer. 28 / 29

29 Thank you! 29 / 29

A Hybrid Software Change Impact Analysis for. Large-scale Enterprise Systems

A Hybrid Software Change Impact Analysis for. Large-scale Enterprise Systems A Hybrid Software Change Impact Analysis for Large-scale Enterprise Systems A HYBRID SOFTWARE CHANGE IMPACT ANALYSIS FOR LARGE-SCALE ENTERPRISE SYSTEMS BY WEN CHEN, B.Sc, M.Sc. a thesis submitted to the

More information

Coordinated Visualization of Aspect-Oriented Programs

Coordinated Visualization of Aspect-Oriented Programs Coordinated Visualization of Aspect-Oriented Programs Álvaro F. d Arce 1, Rogério E. Garcia 1, Ronaldo C. M. Correia 1 1 Faculdade de Ciências e Tecnologia Universidade Estadual Paulista Júlio de Mesquita

More information

Aspect-Oriented Programming

Aspect-Oriented Programming Aspect-Oriented Programming An Introduction to Aspect-Oriented Programming and AspectJ Niklas Påhlsson Department of Technology University of Kalmar S 391 82 Kalmar SWEDEN Topic Report for Software Engineering

More information

Automated Validation & Verification of Software Paper Presentation

Automated Validation & Verification of Software Paper Presentation Regression Test Selection for Java Software Salvador Valencia Rodríguez Automated Validation & Verification of Software Paper Presentation Paper authors Mary Jean Harrold James A. Jones Tongyu Li Donglin

More information

Keywords Aspect-Oriented Modeling, Rule-based graph transformations, Aspect, pointcuts, crosscutting concerns.

Keywords Aspect-Oriented Modeling, Rule-based graph transformations, Aspect, pointcuts, crosscutting concerns. Volume 4, Issue 5, May 2014 ISSN: 2277 128X International Journal of Advanced Research in Computer Science and Software Engineering Research Paper Available online at: www.ijarcsse.com Functional and Non-Functional

More information

Remote Pointcut - A Language Construct for Distributed AOP

Remote Pointcut - A Language Construct for Distributed AOP Remote Pointcut - A Language Construct for Distributed AOP Muga Nishizawa (Tokyo Tech) Shigeru Chiba (Tokyo Tech) Michiaki Tatsubori (IBM) 1 Pointcut-advice model Joinpoints Program execution is modeled

More information

APPLE: Advanced Procedural Programming Language Elements

APPLE: Advanced Procedural Programming Language Elements APPLE: Advanced Procedural Programming Language Elements Christian Heinlein Dept. of Computer Structures, University of Ulm, Germany heinlein@informatik.uni ulm.de Abstract. Today s programming languages

More information

Aspect-Oriented Web Development in PHP

Aspect-Oriented Web Development in PHP Aspect-Oriented Web Development in PHP Jorge Esparteiro Garcia Faculdade de Engenharia da Universidade do Porto jorge.garcia@fe.up.pt Abstract. Aspect-Oriented Programming (AOP) provides another way of

More information

The Log Analysis in an Automatic Approach

The Log Analysis in an Automatic Approach The Log Analysis in an Automatic Approach THE LOG ANALYSIS IN AN AUTOMATIC APPROACH BY JIANHUI LEI, B.A.Sc. a thesis submitted to the department of computing and software and the school of graduate studies

More information

Aspects for Testing Aspects?

Aspects for Testing Aspects? Aspects for Testing Aspects? Dehla Sokenou, Stephan Herrmann Technische Universität Berlin Software Engineering Group Sekr. FR 5-6, Franklinstr. 28/29, D-10587 Berlin [dsokenou stephan]@cs.tu-berlin.de

More information

Toward Configurable Access Control for. Healthcare Information Systems

Toward Configurable Access Control for. Healthcare Information Systems Toward Configurable Access Control for Healthcare Information Systems Kung Chen a and Da-Wei Wang b a Department of Computer Science, National Chengchi University b Institute of Information Science, Academia

More information

Integration of Application Business Logic and Business Rules with DSL and AOP

Integration of Application Business Logic and Business Rules with DSL and AOP Integration of Application Business Logic and Business Rules with DSL and AOP Bogumiła Hnatkowska and Krzysztof Kasprzyk Wroclaw University of Technology, Wyb. Wyspianskiego 27 50-370 Wroclaw, Poland Bogumila.Hnatkowska@pwr.wroc.pl

More information

TOWARDS SELF-ADAPTABLE MONITORING FRAMEWORK FOR SELF-HEALING

TOWARDS SELF-ADAPTABLE MONITORING FRAMEWORK FOR SELF-HEALING TOWARDS SELF-ADAPTABLE MONITORING FRAMEWORK FOR SELF-HEALING Javier Alonso and Jordi Torres Technical University of Catalonia Barcelona Supercomputing Center Barcelona, Spain. alonso@ac.upc.edu, torres@ac.upc.edu

More information

Enhancement of Java Access Control using Spring with AOP and AspectJ

Enhancement of Java Access Control using Spring with AOP and AspectJ Enhancement of Java Access Control using Spring with AOP and AspectJ K. Vinod Kumar 1, Dr. A. P. Siva Kumar 2, K.Thyagarajan 3 1 Department of CSE, JNTUA, India, cse. 2 Assistant Professor, Department

More information

TOWARDS THE USE OF PROGRAM SLICING IN THE CHANGE IMPACT ANALYSIS OF ASPECT ORIENTED PROGRAMS

TOWARDS THE USE OF PROGRAM SLICING IN THE CHANGE IMPACT ANALYSIS OF ASPECT ORIENTED PROGRAMS TOWARDS THE USE OF PROGRAM SLICING IN THE CHANGE IMPACT ANALYSIS OF ASPECT ORIENTED PROGRAMS Imad BOUTERAA *, Nora BOUNOUR ** ** Laboratoire LRI, *,** Département d'informatique Université Badji-Mokhtar,

More information

Informatica Data Director Performance

Informatica Data Director Performance Informatica Data Director Performance 2011 Informatica Abstract A variety of performance and stress tests are run on the Informatica Data Director to ensure performance and scalability for a wide variety

More information

Progress Report Aspect Oriented Programming meets Design Patterns. Academic Programme MSc in Advanced Computer Science. Guillermo Antonio Toro Bayona

Progress Report Aspect Oriented Programming meets Design Patterns. Academic Programme MSc in Advanced Computer Science. Guillermo Antonio Toro Bayona Progress Report Aspect Oriented Programming meets Design Patterns Academic Programme MSc in Advanced Computer Science Guillermo Antonio Toro Bayona Supervisor Dr. John Sargeant The University of Manchester

More information

Generating Aspect Code from UML Models

Generating Aspect Code from UML Models Generating Aspect Code from UML Models Iris Groher Siemens AG, CT SE 2 Otto-Hahn-Ring 6 81739 Munich, Germany Iris.Groher@fh-hagenberg.at Stefan Schulze Siemens AG, CT SE 2 Otto-Hahn-Ring 6 81739 Munich,

More information

Chapter 18 Emerging Technologies

Chapter 18 Emerging Technologies Lecture Software Engineering Chapter 18 Emerging Technologies Lecture Software Engineering Topics Introduction Aspect-Oriented Technology Model-Driven Technology Component-Based Technology Service-Oriented

More information

An Aspect-Oriented Product Line Framework to Support the Development of Software Product Lines of Web Applications

An Aspect-Oriented Product Line Framework to Support the Development of Software Product Lines of Web Applications An Aspect-Oriented Product Line Framework to Support the Development of Software Product Lines of Web Applications Germán Harvey Alférez Salinas Department of Computer Information Systems, Mission College,

More information

Commercial Database Software Development- A review.

Commercial Database Software Development- A review. Commercial Database Software Development- A review. A database software has wide applications. A database software is used in almost all the organizations. Over 15 years many tools have been developed

More information

OASIS: Organic Aspects for System Infrastructure Software Easing Evolution and Adaptation through Natural Decomposition

OASIS: Organic Aspects for System Infrastructure Software Easing Evolution and Adaptation through Natural Decomposition OASIS: Organic Aspects for System Infrastructure Software Easing Evolution and Adaptation through Natural Decomposition Celina Gibbs and Yvonne Coady University of Victoria Abstract It is becoming increasingly

More information

Component-Based Software Development with Aspect-Oriented Programming

Component-Based Software Development with Aspect-Oriented Programming Vol. 4, No. 3 Special issue: GPCE Young Researchers Workshop 2004 Component-Based Software Development with Aspect-Oriented Programming Michael Eichberg, Departement of Computer Science, Darmstadt University

More information

Aspect Mining in Procedural Object-Oriented Code

Aspect Mining in Procedural Object-Oriented Code Aspect Mining in Procedural Object-Oriented Code Muhammad Usman BHATTI 1 Stéphane DUCASSE 2 Awais RASHID 3 1 CRI, Université de Paris 1 Sorbonne, France 2 INRIA - Lille Nord Europe, France 3 Computing

More information

An Aspect Oriented Performance Analysis Environment

An Aspect Oriented Performance Analysis Environment An Aspect Oriented Performance Analysis Environment Jonathan Davies, Cambridge University, jjd27@hermes.cam.ac.uk Nick Huismans, Imperial College, nick@huismans.com Rory Slaney, Edinburgh University, rss@dcs.ed.ac.uk

More information

Open source business rules management system

Open source business rules management system JBoss Enterprise BRMS Open source business rules management system What is it? JBoss Enterprise BRMS is an open source business rules management system that enables easy business policy and rules development,

More information

Implementing COOL in JAMI

Implementing COOL in JAMI Implementing COOL in JAMI Steven te Brinke s.tebrinke@student.utwente.nl ABSTRACT JAMI aims to be a generic aspect interpreter framework which can be used to prototype a wide range of AOP languages. However,

More information

Performance Analysis of Web based Applications on Single and Multi Core Servers

Performance Analysis of Web based Applications on Single and Multi Core Servers Performance Analysis of Web based Applications on Single and Multi Core Servers Gitika Khare, Diptikant Pathy, Alpana Rajan, Alok Jain, Anil Rawat Raja Ramanna Centre for Advanced Technology Department

More information

A COMPARISON OF AOP BASED MONITORING TOOLS

A COMPARISON OF AOP BASED MONITORING TOOLS STUDIA UNIV. BABEŞ BOLYAI, INFORMATICA, Volume LVI, Number 3, 2011 A COMPARISON OF AOP BASED MONITORING TOOLS GRIGORETA S. COJOCAR AND DAN COJOCAR Abstract. The performance requirements of a software system

More information

Adaptable Access Control for Electronic Medical Records

Adaptable Access Control for Electronic Medical Records Adaptable Access Control for Electronic Medical Records Kung Chen a, Yuan-Chun Chang a, and Da-Wei Wang b a Department of Computer Science, National Chengchi University b Institute of Information Science,

More information

Idea: Measuring the Effect of Code Complexity on Static Analysis Results

Idea: Measuring the Effect of Code Complexity on Static Analysis Results Idea: Measuring the Effect of Code Complexity on Static Analysis Results James Walden, Adam Messer, and Alex Kuhl Department of Computer Science Northern Kentucky University Highland Heights, KY 41099

More information

Case Study Towards Implementation of Pure Aspect-oriented Factory Method Design Pattern

Case Study Towards Implementation of Pure Aspect-oriented Factory Method Design Pattern Case Study Towards Implementation of Pure Aspect-oriented Factory Method Design Pattern Žilvinas Vaira Vilnius University Institute of Mathematics and Informatics Akademijos 4, LT-01108 Vilnius, Lithuania

More information

What are the benefits of Aspect Oriented Programming to project iterations developed using Agile Processes?

What are the benefits of Aspect Oriented Programming to project iterations developed using Agile Processes? What are the benefits of Aspect Oriented Programming to project iterations developed using Agile Processes? Joseph Muller ABSTRACT Aspect Oriented Programming (AOP) is a software development programming

More information

Francisco J. Garcia COMBINED VISUALIZATION OF STRUCTURAL AND ANALYSIS

Francisco J. Garcia COMBINED VISUALIZATION OF STRUCTURAL AND ANALYSIS Antonio Gonzalez, Roberto Theron, AlexandruTeleaand Francisco J. Garcia COMBINED VISUALIZATION OF STRUCTURAL AND METRIC INFORMATION FOR SOFTWARE EVOLUTION ANALYSIS Combined Visualization of Structural

More information

Aspect-Oriented Software Development

Aspect-Oriented Software Development Aspect-Oriented Software Development Dr. Awais Rashid Computing Department Lancaster University, UK Awais Rashid, 2005. Fundamental to Next Generation Software AOSD is vital to our [IBM Software Group

More information

Harmless Advice. Daniel S Dantas Princeton University. with David Walker

Harmless Advice. Daniel S Dantas Princeton University. with David Walker Harmless Advice Daniel S Dantas Princeton University with David Walker Aspect Oriented Programming Aspect Oriented Programming IBM - 2004 IBM reports positive results in aspect-oriented programming experiments

More information

ADOPTION OF OPEN SOURCE AND CONVENTIONAL ERP SOLUTIONS FOR SMALL AND MEDIUM ENTERPRISES IN MANUFACTURING. Mehran G. Nezami Wai M. Cheung Safwat Mansi

ADOPTION OF OPEN SOURCE AND CONVENTIONAL ERP SOLUTIONS FOR SMALL AND MEDIUM ENTERPRISES IN MANUFACTURING. Mehran G. Nezami Wai M. Cheung Safwat Mansi Proceedings of the 10 th International Conference on Manufacturing Research ICMR 2012 ADOPTION OF OPEN SOURCE AND CONVENTIONAL ERP SOLUTIONS FOR SMALL AND MEDIUM ENTERPRISES IN MANUFACTURING Mehran G.

More information

Chapter 2 Why Are Enterprise Applications So Diverse?

Chapter 2 Why Are Enterprise Applications So Diverse? Chapter 2 Why Are Enterprise Applications So Diverse? Abstract Today, even small businesses operate in different geographical locations and service different industries. This can create a number of challenges

More information

Glassbox: Open Source and Automated Application Troubleshooting. Ron Bodkin Glassbox Project Leader ron.bodkin@glasssbox.com

Glassbox: Open Source and Automated Application Troubleshooting. Ron Bodkin Glassbox Project Leader ron.bodkin@glasssbox.com Glassbox: Open Source and Automated Application Troubleshooting Ron Bodkin Glassbox Project Leader ron.bodkin@glasssbox.com First a summary Glassbox is an open source automated troubleshooter for Java

More information

Aspect Refactoring Verifier

Aspect Refactoring Verifier Aspect Refactoring Verifier Charles Zhang and Julie Waterhouse Hans-Arno Jacobsen Centers for Advanced Studies Department of Electrical and IBM Toronto Lab Computer Engineering juliew@ca.ibm.com and Department

More information

8.0 System Requirements

8.0 System Requirements 8.0 System Requirements Console Supported Platforms Vendor OS Patch Level Microsoft Windows Server 2008 Windows Server 2003 Windows XP Red Hat Enterprise Linux 4 (v2.6 Linux kernel) Enterprise Linux 5

More information

Decomposition into Parts. Software Engineering, Lecture 4. Data and Function Cohesion. Allocation of Functions and Data. Component Interfaces

Decomposition into Parts. Software Engineering, Lecture 4. Data and Function Cohesion. Allocation of Functions and Data. Component Interfaces Software Engineering, Lecture 4 Decomposition into suitable parts Cross cutting concerns Design patterns I will also give an example scenario that you are supposed to analyse and make synthesis from The

More information

WEB ORIENTED APPLICATIONS GENERATOR

WEB ORIENTED APPLICATIONS GENERATOR DAAAM INTERNATIONAL SCIENTIFIC BOOK 2007 pp 443-458 CHAPTER 39 WEB ORIENTED APPLICATIONS GENERATOR DEVELOPMENT THROUGH REENGINEERING PROCESS RADOSEVIC, D; OREHOVACKI, T & KONECKI, M Abstract: Development

More information

System Requirements. SAS Profitability Management 2.3. Deployment Options. Supported Operating Systems and Versions. Windows Server Operating Systems

System Requirements. SAS Profitability Management 2.3. Deployment Options. Supported Operating Systems and Versions. Windows Server Operating Systems System Requirements SAS Profitability Management 2.3 This document provides the requirements for installing and running SAS Profitability Management. You must update your computer to meet the minimum requirements

More information

Discussion on Systematic Detection of Capability Leaks in Stock Android Smartphones. By William Ng

Discussion on Systematic Detection of Capability Leaks in Stock Android Smartphones. By William Ng Discussion on Systematic Detection of Capability Leaks in Stock Android Smartphones By William Ng Android permission security system Smartphone has been used to store and handle more and more personal

More information

IBM InfoSphere Optim Test Data Management Solution

IBM InfoSphere Optim Test Data Management Solution IBM InfoSphere Optim Test Data Management Solution Highlights Create referentially intact, right-sized test databases Automate test result comparisons to identify hidden errors Easily refresh and maintain

More information

Hardware, Software and Training Requirements for DMFAS 6

Hardware, Software and Training Requirements for DMFAS 6 Hardware, Software and Training Requirements for DMFAS 6 DMFAS6/HardwareSoftware/V5 May 2015 2 Hardware, Software and Training Requirements for DMFAS 6 Contents ABOUT THIS DOCUMENT... 4 HARDWARE REQUIREMENTS...

More information

Aspect-oriented Refactoring of a J2EE Framework for Security and Validation Concerns

Aspect-oriented Refactoring of a J2EE Framework for Security and Validation Concerns Aspect-oriented Refactoring of a J2EE Framework for Security and Validation Concerns CS 586 Aspect-Oriented Software Development Project Group Members : Başak Çakar, Elif Demirli, Şadiye Kaptanoğlu Bilkent

More information

Chapter 5 Aspect Oriented Programming

Chapter 5 Aspect Oriented Programming 2I1AC3 : Génie logiciel et Patrons de conception Chapter 5 Aspect Oriented Programming J'ai toujours rêvé d'un ordinateur qui soit aussi facile à utiliser qu'un téléphone. Mon rêve s'est réalisé. Je ne

More information

Using an Aspect Oriented Layer in SOA for Enterprise Application Integration

Using an Aspect Oriented Layer in SOA for Enterprise Application Integration 19 Using an Aspect Oriented Layer in SOA for Enterprise Application Integration Chinthaka D. Induruwana School of Computer Science, University of Manchester, Kilburn Building, Oxford Road M13 9PL induruwc@cs.man.ac.uk

More information

On Type Restriction of Around Advice and Aspect Interference

On Type Restriction of Around Advice and Aspect Interference On Type Restriction of Around Advice and Aspect Interference Hidehiko Masuhara Graduate School of Arts and Sciences, University of Tokyo masuhara@acm.org Abstract. Statically typed AOP languages restrict

More information

Automated Data Collection for Usability Evaluation in Early Stages of Application Development

Automated Data Collection for Usability Evaluation in Early Stages of Application Development Automated Data Collection for Usability Evaluation in Early Stages of Application Development YONGLEI TAO School of Computing and Information Systems Grand Valley State University Allendale, MI 49401 USA

More information

Keywords: Regression testing, database applications, and impact analysis. Abstract. 1 Introduction

Keywords: Regression testing, database applications, and impact analysis. Abstract. 1 Introduction Regression Testing of Database Applications Bassel Daou, Ramzi A. Haraty, Nash at Mansour Lebanese American University P.O. Box 13-5053 Beirut, Lebanon Email: rharaty, nmansour@lau.edu.lb Keywords: Regression

More information

A Preliminary Study of Quantified, Typed Events

A Preliminary Study of Quantified, Typed Events A Preliminary Study of Quantified, Typed Events Robert Dyer 1, Mehdi Bagherzadeh 1, Hridesh Rajan 1 and Yuanfang Cai 2 1 Iowa State University 2 Drexel University {rdyer,mbagherz,hridesh}@cs.iastate.edu

More information

Introducing a Graduate Course on. called Aspect-Oriented Software Development

Introducing a Graduate Course on. called Aspect-Oriented Software Development Int. J. Engng Ed. Vol. 21, No. 2, pp. 361±368, 2005 0949-149X/91 $3.00+0.00 Printed in Great Britain. # 2005 TEMPUS Publications. Introducing a Graduate Course on Aspect-Oriented Software Development*

More information

A Modular Representation of a Business Process Planner

A Modular Representation of a Business Process Planner A Modular Representation of a Business Process Planner Shahab Tasharrofi and Evgenia Ternovska School of Computing Science Simon Fraser University Canada 1st International Workshop on Knowledge-intensive

More information

Perspectives on Automated Testing of Aspect-Oriented Programs

Perspectives on Automated Testing of Aspect-Oriented Programs Perspectives on Automated Testing of Aspect-Oriented Programs ABSTRACT Tao Xie Department of Computer Science North Carolina State University Raleigh, NC 27695 xie@csc.ncsu.edu Aspect-oriented software

More information

System Requirements and Platform Support Guide

System Requirements and Platform Support Guide Foglight 5.6.7 System Requirements and Platform Support Guide 2013 Quest Software, Inc. ALL RIGHTS RESERVED. This guide contains proprietary information protected by copyright. The software described in

More information

Oracle Primavera P6 Enterprise Project Portfolio Management Performance and Sizing Guide. An Oracle White Paper October 2010

Oracle Primavera P6 Enterprise Project Portfolio Management Performance and Sizing Guide. An Oracle White Paper October 2010 Oracle Primavera P6 Enterprise Project Portfolio Management Performance and Sizing Guide An Oracle White Paper October 2010 Disclaimer The following is intended to outline our general product direction.

More information

ERP as a Living System The Power of Community-Driven Product Enhancement

ERP as a Living System The Power of Community-Driven Product Enhancement Whitepaper ERP as a Living System The Power of Community-Driven Product Enhancement At a Glance: This paper demonstrates how today s manufacturer is unlocked from static ERP in which a vendor annually

More information

SAP HANA In-Memory Database Sizing Guideline

SAP HANA In-Memory Database Sizing Guideline SAP HANA In-Memory Database Sizing Guideline Version 1.4 August 2013 2 DISCLAIMER Sizing recommendations apply for certified hardware only. Please contact hardware vendor for suitable hardware configuration.

More information

Visualizing Information Flow through C Programs

Visualizing Information Flow through C Programs Visualizing Information Flow through C Programs Joe Hurd, Aaron Tomb and David Burke Galois, Inc. {joe,atomb,davidb}@galois.com Systems Software Verification Workshop 7 October 2010 Joe Hurd, Aaron Tomb

More information

ONTOLOGY FOR MOBILE PHONE OPERATING SYSTEMS

ONTOLOGY FOR MOBILE PHONE OPERATING SYSTEMS ONTOLOGY FOR MOBILE PHONE OPERATING SYSTEMS Hasni Neji and Ridha Bouallegue Innov COM Lab, Higher School of Communications of Tunis, Sup Com University of Carthage, Tunis, Tunisia. Email: hasni.neji63@laposte.net;

More information

CATS 2012 EIM ENTERPRISE INCENTIVE SOFTWARE, INC. COMPENSATION ACTIVITY TRACKING SYSTEM

CATS 2012 EIM ENTERPRISE INCENTIVE SOFTWARE, INC. COMPENSATION ACTIVITY TRACKING SYSTEM ENTERPRISE INCENTIVE SOFTWARE, INC. CATS 2012 EIM COMPENSATION ACTIVITY TRACKING SYSTEM THE LEADING PRODUCTIVITY TOOL FOR ENTERPRISE INCENTIVE MANAGEMENT (EIM) CATS 2012 Microsoft Windows.Net based family

More information

SQL Development Using Oracle

SQL Development Using Oracle SQL Development Using Oracle Course Summary Identify the major structural components of the Oracle Database 11g Create reports of aggregated data Write SELECT statements that include queries Retrieve row

More information

How to Model Aspect-Oriented Web Services

How to Model Aspect-Oriented Web Services How to Model Aspect-Oriented Web Services Guadalupe Ortiz Juan Hernández gobellot@unex.es juanher@unex.es Quercus Software Engineering Group University of Extremadura Computer Science Department Pedro

More information

Oracle Products on SUSE Linux Enterprise Server 11

Oracle Products on SUSE Linux Enterprise Server 11 Oracle Products on SUSE Linux Enterprise Server 11 Technical Introduction Arun Singh Sr. Technical Manager Arun.Singh@suse.com Agenda Introduction SUSE Products Oracle Products Road Map Question and Answer

More information

Refactoring and AOP under Scrutiny

Refactoring and AOP under Scrutiny Computer Science and Engineering 2014, 4(1): 7-16 DOI: 10.5923/j.computer.20140401.02 Refactoring and AOP under Scrutiny Sandra Casas *, Cecilia Fuentes Zamorano GISP, Instituto de Tecnología Aplicada,

More information

Verifying Semantic of System Composition for an Aspect-Oriented Approach

Verifying Semantic of System Composition for an Aspect-Oriented Approach 2012 International Conference on System Engineering and Modeling (ICSEM 2012) IPCSIT vol. 34 (2012) (2012) IACSIT Press, Singapore Verifying Semantic of System Composition for an Aspect-Oriented Approach

More information

Speeding ETL Processing in Data Warehouses White Paper

Speeding ETL Processing in Data Warehouses White Paper Speeding ETL Processing in Data Warehouses White Paper 020607dmxwpADM High-Performance Aggregations and Joins for Faster Data Warehouse Processing Data Processing Challenges... 1 Joins and Aggregates are

More information

Clouds on the Horizon: What s the Best Oracle Fusion Strategy for Those Still on Oracle 11i or R12.0?

Clouds on the Horizon: What s the Best Oracle Fusion Strategy for Those Still on Oracle 11i or R12.0? Clouds on the Horizon: What s the Best Oracle Fusion Strategy for Those Still on Oracle 11i or R12.0? Gustavo Gonzalez -Oracle ACE at IT Convergence Abstract The general availability of Oracle Fusion,

More information

Open Source Business Rules Management System Enables Active Decisions

Open Source Business Rules Management System Enables Active Decisions JBoss Enterprise BRMS Open Source Business Rules Management System Enables Active Decisions What is it? JBoss Enterprise BRMS provides an open source business rules management system that enables active

More information

A Content-Based Load Balancing Algorithm for Metadata Servers in Cluster File Systems*

A Content-Based Load Balancing Algorithm for Metadata Servers in Cluster File Systems* A Content-Based Load Balancing Algorithm for Metadata Servers in Cluster File Systems* Junho Jang, Saeyoung Han, Sungyong Park, and Jihoon Yang Department of Computer Science and Interdisciplinary Program

More information

Verifying Business Processes Extracted from E-Commerce Systems Using Dynamic Analysis

Verifying Business Processes Extracted from E-Commerce Systems Using Dynamic Analysis Verifying Business Processes Extracted from E-Commerce Systems Using Dynamic Analysis Derek Foo 1, Jin Guo 2 and Ying Zou 1 Department of Electrical and Computer Engineering 1 School of Computing 2 Queen

More information

Guidelines for Aspect-Oriented Design

Guidelines for Aspect-Oriented Design Guidelines for Aspect-Oriented Design Christina von Flach G. Chavez 1 Carlos J.P. Lucena 2 1 UFBA, Computer Science Department Av. Adhemar de Barros, s/n 40170-110, Salvador, BA, Brazil 2 PUC-Rio, Computer

More information

HECTOR a software model checker with cooperating analysis plugins. Nathaniel Charlton and Michael Huth Imperial College London

HECTOR a software model checker with cooperating analysis plugins. Nathaniel Charlton and Michael Huth Imperial College London HECTOR a software model checker with cooperating analysis plugins Nathaniel Charlton and Michael Huth Imperial College London Introduction HECTOR targets imperative heap-manipulating programs uses abstraction

More information

Aspects of Lyee Configuration Management

Aspects of Lyee Configuration Management Aspects of Lyee Configuration Management Volker GRUHN, Raschid IJIOUI, Dirk PETERS, Robert QUECK, Clemens SCHÄFER Chair for Applied Telematics / e-business, Universität Leipzig, Klostergasse 3, D-04109

More information

Ques 1. Define dbms and file management system? Ans- Database management system (DBMS) A file management system

Ques 1. Define dbms and file management system? Ans- Database management system (DBMS) A file management system UNIT-1 Ques 1. Define dbms and file management system? Ans- Database management system (DBMS) is a collection of interrelated data and a set of programs to access those data. Some of the very well known

More information

International Journal of Web & Semantic Technology (IJWesT) Vol.3, No.3, July 2012. Vishnuvardhan Mannava 1 and T. Ramesh 2

International Journal of Web & Semantic Technology (IJWesT) Vol.3, No.3, July 2012. Vishnuvardhan Mannava 1 and T. Ramesh 2 COMPOSITE DESIGN PATTERN FOR FEATURE- ORIENTED SERVICE INJECTION AND COMPOSITION OF WEB SERVICES FOR DISTRIBUTED COMPUTING SYSTEMS WITH SERVICE ORIENTED ARCHITECTURE Vishnuvardhan Mannava 1 and T. Ramesh

More information

What is it? What does it do? Benefits

What is it? What does it do? Benefits JBoss Enterprise SOA Platform What is it? The JBoss Enterprise SOA Platform includes serviceoriented architecture (SOA) open source middleware such as JBoss Enterprise Service Bus (ESB), JBoss jbpm, JBoss

More information

CONSTRAINTS AND UPDATES CHAPTER 3 (6/E) CHAPTER 5 (5/E)

CONSTRAINTS AND UPDATES CHAPTER 3 (6/E) CHAPTER 5 (5/E) 1 CONSTRAINTS AND UPDATES CHAPTER 3 (6/E) CHAPTER 5 (5/E) 3 LECTURE OUTLINE Constraints in Relational Databases Update Operations Brief History of Database Applications (from Section 1.7) 4 RELATIONAL

More information

Measuring the Effect of Code Complexity on Static Analysis Results

Measuring the Effect of Code Complexity on Static Analysis Results Measuring the Effect of Code Complexity on Static Analysis Results James Walden, Adam Messer, and Alex Kuhl Department of Computer Science Northern Kentucky University Highland Heights, KY 41099 Abstract.

More information

IBM InfoSphere Optim Test Data Management

IBM InfoSphere Optim Test Data Management IBM InfoSphere Optim Test Data Management Highlights Create referentially intact, right-sized test databases or data warehouses Automate test result comparisons to identify hidden errors and correct defects

More information

ebusiness Web Hosting Alternatives Considerations Self hosting Internet Service Provider (ISP) hosting

ebusiness Web Hosting Alternatives Considerations Self hosting Internet Service Provider (ISP) hosting ebusiness Web Hosting and E-Business Software Web Hosting Alternatives Self hosting Internet Service Provider (ISP) hosting Commerce Service Provider (CSP) hosting Shared hosting Dedicated hosting Considerations

More information

The Concern-Oriented Software Architecture Analysis Method

The Concern-Oriented Software Architecture Analysis Method The Concern-Oriented Software Architecture Analysis Method Author: E-mail: Student number: Supervisor: Graduation committee members: Frank Scholten f.b.scholten@cs.utwente.nl s0002550 Dr. ir. Bedir Tekinerdoǧan

More information

Oracle EBS Interface Connector User Guide V1.4

Oracle EBS Interface Connector User Guide V1.4 Oracle EBS Interface Connector User Guide V1.4 Contents Oracle EBS Interface Connector User Guide V1.4... 1 1. Introduction... 3 2. Technologies... 4 3. High level Architectural Diagram... 4 4. About Oracle

More information

Utilization aspect oriented approach and local data in the development of adaptive user interface for Android

Utilization aspect oriented approach and local data in the development of adaptive user interface for Android POSTER 2016, PRAGUE MAY 24 1 Utilization aspect oriented approach and local data in the development of adaptive user interface for Android Jiří Šebek 1 Dept. of Comp. Science and Engineering, Czech Technical

More information

Monitoring Goals With Aspects

Monitoring Goals With Aspects Monitoring Goals With Aspects Andrew Dingwall-Smith Department of Computer Science University College London Gower Street London, WC1E 6BT, UK A.Dingwall-Smith@cs.ucl.ac.uk Anthony Finkelstein Department

More information

Is my site ready for upgrade to v7.6?

Is my site ready for upgrade to v7.6? Is my site ready for upgrade to v7.6? 6 answers in 6 minutes Web Filter and Web Security Web Security Gateway Web Security Gateway Anywhere web security data security email security 2011 Websense, Inc.

More information

Integrating basic Access Control Models for efficient security along with encryption for the ERP System

Integrating basic Access Control Models for efficient security along with encryption for the ERP System Integrating basic Access Control Models for efficient security along with encryption for the ERP System Prof. Swapnaja A. Ubale Research Scholar (Computer Science & Engineering Department) Research Center

More information

Distributed Systems Development: Can we Enhance Evolution by using AspectJ?

Distributed Systems Development: Can we Enhance Evolution by using AspectJ? Distributed Systems Development: Can we Enhance Evolution by using AspectJ? Cormac Driver Siobhán Clarke Distributed Systems Group, Computer Science Department, Trinity College Dublin, Ireland {Cormac.Driver,

More information

Losing Control: Controls, Risks, Governance, and Stewardship of Enterprise Data

Losing Control: Controls, Risks, Governance, and Stewardship of Enterprise Data Losing Control: Controls, Risks, Governance, and Stewardship of Enterprise Data an eprentise white paper tel: 407.290.6952 toll-free: 1.888.943.5363 web: www.eprentise.com Author: Helene Abrams Published:

More information

Cost-Effective Business Intelligence with Red Hat and Open Source

Cost-Effective Business Intelligence with Red Hat and Open Source Cost-Effective Business Intelligence with Red Hat and Open Source Sherman Wood Director, Business Intelligence, Jaspersoft September 3, 2009 1 Agenda Introductions Quick survey What is BI?: reporting,

More information

Chapter 1 Databases and Database Users

Chapter 1 Databases and Database Users Chapter 1 Databases and Database Users Copyright 2011 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Chapter 1 Outline Introduction An Example Characteristics of the Database Approach Actors

More information

Incorporating Aspects into the UML

Incorporating Aspects into the UML Incorporating Aspects into the UML Mark Basch University of North Florida Department of Computer and Information Sciences Jacksonville, FL 32224-2645 (904) 620-2985 basm0001@unf.edu Arturo Sanchez University

More information

Component visualization methods for large legacy software in C/C++

Component visualization methods for large legacy software in C/C++ Annales Mathematicae et Informaticae 44 (2015) pp. 23 33 http://ami.ektf.hu Component visualization methods for large legacy software in C/C++ Máté Cserép a, Dániel Krupp b a Eötvös Loránd University mcserep@caesar.elte.hu

More information

Introducing Formal Methods. Software Engineering and Formal Methods

Introducing Formal Methods. Software Engineering and Formal Methods Introducing Formal Methods Formal Methods for Software Specification and Analysis: An Overview 1 Software Engineering and Formal Methods Every Software engineering methodology is based on a recommended

More information

Regression Test Selection for Java Software

Regression Test Selection for Java Software Proc. of the ACM Conf. on OO Programming, Systems, Languages, and Applications (OOPSLA ), ACM Copyright. Regression Test Selection for Java Software Mary Jean Harrold harrold@cc.gatech.edu Alessandro Orso

More information

ORACLE 11g RDBMS Features: Oracle Total Recall Oracle FLEXCUBE Enterprise Limits and Collateral Management Release 12.1 [December] [2014]

ORACLE 11g RDBMS Features: Oracle Total Recall Oracle FLEXCUBE Enterprise Limits and Collateral Management Release 12.1 [December] [2014] ORACLE 11g RDBMS Features: Oracle Total Recall Oracle FLEXCUBE Enterprise Limits and Collateral Management Release 12.1 [December] [2014] Table of Contents 1. INTRODUCTION... 2 2. REQUIREMENT /PROBLEM

More information