J2EE Development Best Practices: Improving Code Quality

Size: px
Start display at page:

Download "J2EE Development Best Practices: Improving Code Quality"

Transcription

1

2 Session id: J2EE Development Best Practices: Improving Code Quality Stuart Malkin Senior Product Manager Oracle Corporation

3 Agenda Why analyze and optimize code? Static Analysis Dynamic Analysis SCM, Building, Testing

4 Agenda Why analyze and optimize code? Static Analysis Dynamic Analysis SCM, Building, Testing

5 Why Analyze and Optimize? Catch common problems before entering code base. Extra effort saves time and project cost later Instill best practices/standards across teams Address code quality and performance throughout the entire development cycle

6 Benefits of Using Oracle JDeveloper 10g for Tuning Integrated features means no tool-swapping Increase productivity Easy to incorporate static, dynamic analysis and tuning as part of development Build better applications faster Optimized for real applications We use JDeveloper to tune JDeveloper

7 Agenda Why analyze and optimize code? Static Analysis Dynamic Analysis SCM, Building, Testing

8 Static Analysis Auditing Code Static qualitative analysis of source files Compliance with a set of rules Suggested fixes Metrics Static quantitative analysis of attributes of source files Chidamber-Kemmerer metrics Generally measure code complexity

9 Audit Coding Conventions nvtoc.doc.html Java Doc Rules that verify completeness and correctness of doc comments J2EE specification Your own standards!

10

11 Metrics Chidamber and Kemerer Metrics Cyclomatic Complexity (CC) Source Lines of Code (SLOC) Weighted Methods per Class (WMC) Response for Class (RFC) Lack of Cohesion of Methods (LCOM) Coupling Between Objects (CBO) Depth of Inheritance Tree (DIT) Number of Children (NOC) Other Metrics Number of Statements (NOS) Executable Statements (EXEC) Comment Percentage (CP) Number of Audit Violations (NAV)

12 D E M O N S T R A T I O N Audit and Metrics

13 Agenda Why analyze and optimize code? Static Analysis Dynamic Analysis SCM, Building, Testing

14 Dynamic Analysis Performance Tuning Needs to run application in VM Profilers Debuggers Code Advisors Investigate use case to provide context sensitive results.

15 Performance Network, file Input/Output (I/O), database access Memory footprint CPU usage

16 When to Performance Tune Address performance throughout the entire development cycle Not too early, not too late Tune iteratively 80/20 principle Code Test Tune

17 How to Measure Performance Stopwatch System.currentTimeMillis() Benchmarks Profilers

18 What to measure? Time Elapsed time CPU time Memory Usage Garbage Collection VM events Class loading, Class resolving Application specific events

19 Profilers Local, remote, and distributed profiling Execution time (CPU) Events Memory usage

20 Execution Profiler Where is my program spending time? Takes samples of execution stack at customizable intervals Shows: Time spent in the method Percentage of samples when method is on top of the execution stack Percentage of samples when method is anywhere on the execution stack Calls to other methods and calls from other methods

21 Execution Profiler Measure time spent in methods within execution stack

22 Memory Profiler How is memory being utilized? Takes snapshot of Java heap at customizable intervals Shows: Number of object instances in heap and amount of memory consumed by the objects Difference between number of instances created and freed for each time sample Origins of object allocation (drill-down) Watch memory footprint and detect memory leaks

23 Memory Profiler

24 Event Profiler How often does an event occur and how long does it last? Measures the beginning, end, and duration of events Shows: VM events (loading classes, resolving classes, garbage collecting, etc) BC4J events (loading meta-data, connecting to database, executing queries, etc) Custom events you instrument using a simple API

25 Event Profiler VM Events Class loading Class resolving Garbage Collection Custom Events Execute_Query JDBC_Create_ Statement

26 Debugger Super-fast debugging HotSwap recompilation with popframe Many performance-related features Locate memory leaks View loaded classes and number of instances Examine Java heap usage Find references to object instances in the heap Force garbage collection while debugging Automatically detect deadlocks Examine status of monitors

27 UI Debugger Examine the GUI structure and the event sequences Examine application component hierarchy Display component Info in Watches Window Trace Events generated by components Discover listeners on components

28 UI Debugger

29 Code Advisor--CodeCoach Analyzes code at runtime Identifies (and fixes) common coding pitfalls Modifier and scope definition Unused variables and fields Object sizing Dead code Inefficient instanceof usage Immutable objects with constant parameters

30 CodeCoach Fix issues Scope definition Sizing suggestions Memory suggestions CodeCoach identifies and fixes common coding pitfalls

31 CodeCoach customization

32 D E M O N S T R A T I O N Dynamic Analysis and Tuning

33 Agenda Why analyze and optimize code? Static Analysis Dynamic Analysis SCM, Building, Testing

34 SCM Software Configuration Management (SCM) Contains multiple versions of source code Sometimes called a Version Control System (VCS) Allows Developers to work in parallel Many Commercial and Open Source Tools CVS, Clear Case, Visual Source Safe Oracle SCM, and many others ( too many to list )

35 Building Many ways to build Shell scripts Ant GNU make Perl scripts All end up invoking a Java compiler As a Java developer, you may like Ant

36 Testing with JUnit JUnit is an Open Source white box testing framework and test harness Basic building blocks are test cases Test cases may use test fixtures Reusable logic to be shared among test cases Test cases may be combined into test suites Test runners launch test suites and report the results in various ways (GUI/Console/HTML)

37 D E M O N S T R A T I O N Building and Testing

38 Next Steps. Recommended sessions Using Oracle JDeveloper and Oracle Application Server 10g in Tandem (session 40253) Setting Up Your Java Development Environment on Linux (session 40257) Recommended demos and/or hands-on labs Develop J2EE applications using the new J2EE framework, Oracle Application Development Framework (Oracle ADF) Design, develop, tune, and debug your SQL and PL/SQL applications in Oracle JDeveloper. See Your Business in Our Software Visit the DEMOgrounds and talk 1-on-1 with experts. Relevant web sites to visit for more information

39 otn.oracle.com Join Over 3,000,000 Developers! Free Technical Advice Free Software Downloads

40 FREE Develop your career with Oracle s experts Web services, Forms Upgrade to the Web, TopLink, Business Intelligence, Integration, J2EE, Linux Connect with your peers Sign up at

41 Q U E S T I O N S A N S W E R S

42 Reminder please complete the OracleWorld online session survey Thank you.

43

Technical Metrics for OO Systems

Technical Metrics for OO Systems Technical Metrics for OO Systems 1 Last time: Metrics Non-technical: about process Technical: about product Size, complexity (cyclomatic, function points) How to use metrics Prioritize work Measure programmer

More information

Oracle Developer Day

Oracle Developer Day Oracle Developer Day Sponsored by: Session 3 Familiar Techniques: Modeling and Frameworks Speaker Speaker Title Page 1 1 Agenda Forms as a Framework Mapping Forms to Oracle ADF Familiar Concepts Phases

More information

Effective Modular Design

Effective Modular Design CSC40232: SOFTWARE ENGINEERING Professor: Jane Cleland Huang Metrics sarec.nd.edu/courses/se2017 Department of Computer Science and Engineering Effective Modular Design Modular design Reduces complexity

More information

Borland Optimizeit Enterprise Suite 6

Borland Optimizeit Enterprise Suite 6 Borland Optimizeit Enterprise Suite 6 Feature Matrix The table below shows which Optimizeit product components are available in Borland Optimizeit Enterprise Suite and which are available in Borland Optimizeit

More information

Metrics and OO. SE 3S03 - Tutorial 12. Alicia Marinache. Week of Apr 04, Department of Computer Science McMaster University

Metrics and OO. SE 3S03 - Tutorial 12. Alicia Marinache. Week of Apr 04, Department of Computer Science McMaster University and OO OO and OO SE 3S03 - Tutorial 12 Department of Computer Science McMaster University Complexity Lorenz CK Week of Apr 04, 2016 Acknowledgments: The material of these slides is based on [1] (chapter

More information

J Optimizer 1.0 User Guide

J Optimizer 1.0 User Guide J Optimizer 1.0 User Guide Copyright 1994-2009 Embarcadero Technologies, Inc. Embarcadero Technologies, Inc. 100 California Street, 12th Floor San Francisco, CA 94111 U.S.A. All rights reserved. All brands

More information

Where Do We Go From Here? Why Many IT Staff are Living in the Past

Where Do We Go From Here? Why Many IT Staff are Living in the Past Where Do We Go From Here? Why Many IT Staff are Living in the Past SAGE Computing Services Customised Oracle Training Workshops and Consulting Chris Muir Senior Consultant Agenda Oracle technology latest

More information

Visualizing Software Metrics for increased Refactoring

Visualizing Software Metrics for increased Refactoring Visualizing Software Metrics for increased Refactoring Paul Steneram Bibby ada08pst@student.lu.se Fredrik Palmquist dat11fpa@student.lu.se March 7, 2016 Keywords: Agile Development, Code Complexity, Refactoring

More information

CHAPTER 4 HEURISTICS BASED ON OBJECT ORIENTED METRICS

CHAPTER 4 HEURISTICS BASED ON OBJECT ORIENTED METRICS CHAPTER 4 HEURISTICS BASED ON OBJECT ORIENTED METRICS Design evaluation is most critical activity during software development process. Design heuristics are proposed as a more accessible and informal means

More information

Kostis Kapelonis Athens Greece, March 2010

Kostis Kapelonis Athens Greece, March 2010 Quality Metrics: GTE, CAP and CKJM Kostis Kapelonis Athens Greece, March 2010 Menu More Quality metrics: Google Testability Explorer (Starter) Code Analysis Plugin (Main Course) CKJM metrics (Dessert)

More information

Using Metrics To Manage Software Risks. 1. Introduction 2. Software Metrics 3. Case Study: Measuring Maintainability 4. Metrics and Quality

Using Metrics To Manage Software Risks. 1. Introduction 2. Software Metrics 3. Case Study: Measuring Maintainability 4. Metrics and Quality Using Metrics To Manage Software Risks 1. Introduction 2. Software Metrics 3. Case Study: Measuring Maintainability 4. Metrics and Quality 1 1. Introduction Definition Measurement is the process by which

More information

Oracle JDeveloper/Oracle ADF 11g Production Project Experience

Oracle JDeveloper/Oracle ADF 11g Production Project Experience Oracle JDeveloper/Oracle ADF 11g Production Project Experience Andrejus Baranovskis Independent Oracle Consultant Red Samurai Consulting Oracle ACE Director Outline Project Reference Sample Development

More information

Oracle Fusion Middleware 11g: Build Applications with ADF Accel

Oracle Fusion Middleware 11g: Build Applications with ADF Accel Oracle University Contact Us: +352.4911.3329 Oracle Fusion Middleware 11g: Build Applications with ADF Accel Duration: 5 Days What you will learn This is a bundled course comprising of Oracle Fusion Middleware

More information

<Insert Picture Here> Oracle Application Framework (OAF): Architecture, Personalization, and Extensibility in Oracle E-Business Suite Release 12

<Insert Picture Here> Oracle Application Framework (OAF): Architecture, Personalization, and Extensibility in Oracle E-Business Suite Release 12 Oracle Application Framework (OAF): Architecture, Personalization, and Extensibility in Oracle E-Business Suite Release 12 Sara Woodhull Principal Product Analyst, Oracle Corporation

More information

Jackson Marusarz Software Technical Consulting Engineer

Jackson Marusarz Software Technical Consulting Engineer Jackson Marusarz Software Technical Consulting Engineer What Will Be Covered Overview Memory/Thread analysis New Features Deep dive into debugger integrations Demo Call to action 2 Analysis Tools for Diagnosis

More information

Object Oriented Metrics. Impact on Software Quality

Object Oriented Metrics. Impact on Software Quality Object Oriented Metrics Impact on Software Quality Classic metrics Lines Of Code Function points Complexity Code coverage - testing Maintainability Index discussed later Lines of Code KLOC = 1000 Lines

More information

A- Core Java Audience Prerequisites Approach Objectives 1. Introduction

A- Core Java Audience Prerequisites Approach Objectives 1. Introduction OGIES 6/7 A- Core Java The Core Java segment deals with the basics of Java. It is designed keeping in mind the basics of Java Programming Language that will help new students to understand the Java language,

More information

P17 System Testing Monday, September 24, 2007

P17 System Testing Monday, September 24, 2007 IBM Software Group P17 System Testing Monday, September 24, 2007 Module 8 : IBM Rational Testing Solutions Marty Swafford IBM Rational Software IBM Certified Solution Designer - Rational Manual Tester,

More information

Important Points to Note

Important Points to Note Important Points to Note All Participating colleges are requested to mute your telephone lines during the webinar session. Participants are requested to make note of questions / responses to questions,

More information

Measuring the quality of UML Designs

Measuring the quality of UML Designs Measuring the quality of UML Designs Author: Mr. Mark Micallef (mmica@cs.um.edu.mt) Supervisor: Dr. Ernest Cachia (eacaci@cs.um.edu.mt) Affiliation: University of Malta (www.um.edu.mt) Keywords Software

More information

Zing Vision. Answering your toughest production Java performance questions

Zing Vision. Answering your toughest production Java performance questions Zing Vision Answering your toughest production Java performance questions Outline What is Zing Vision? Where does Zing Vision fit in your Java environment? Key features How it works Using ZVRobot Q & A

More information

Enterprise Architect. User Guide Series. Profiling

Enterprise Architect. User Guide Series. Profiling Enterprise Architect User Guide Series Profiling Investigating application performance? The Sparx Systems Enterprise Architect Profiler finds the actions and their functions that are consuming the application,

More information

Quantify the project. Better Estimates. Resolve Software crises

Quantify the project. Better Estimates. Resolve Software crises Quantify the project Quantifying schedule, performance,work effort, project status Helps software to be compared and evaluated Better Estimates Use the measure of your current performance to improve your

More information

Enabling Application Lifecycle Development in JDeveloper

Enabling Application Lifecycle Development in JDeveloper Enabling Application Lifecycle Development in JDeveloper Susan Duncan Oracle Corporation United Kingdom Keywords: Application Lifecycle Management,ALM, JDeveloper, Team Productivity Center, SCM, Versioning

More information

Enterprise Architect. User Guide Series. Profiling. Author: Sparx Systems. Date: 10/05/2018. Version: 1.0 CREATED WITH

Enterprise Architect. User Guide Series. Profiling. Author: Sparx Systems. Date: 10/05/2018. Version: 1.0 CREATED WITH Enterprise Architect User Guide Series Profiling Author: Sparx Systems Date: 10/05/2018 Version: 1.0 CREATED WITH Table of Contents Profiling 3 System Requirements 8 Getting Started 9 Call Graph 11 Stack

More information

NightStar. NightView Source Level Debugger. Real-Time Linux Debugging and Analysis Tools BROCHURE

NightStar. NightView Source Level Debugger. Real-Time Linux Debugging and Analysis Tools BROCHURE NightStar Real-Time Linux Debugging and Analysis Tools Concurrent s NightStar is a powerful, integrated tool set for debugging and analyzing time-critical Linux applications. NightStar tools run with minimal

More information

Session id: The Self-Managing Database: Guided Application and SQL Tuning

Session id: The Self-Managing Database: Guided Application and SQL Tuning Session id: 40713 The Self-Managing Database: Guided Application and SQL Tuning Lead Architects Benoit Dageville Khaled Yagoub Mohamed Zait Mohamed Ziauddin Agenda SQL Tuning Challenges Automatic SQL Tuning

More information

EVALUATING IMPACT OF INHERITANCE ON OBJECT ORIENTED SOFTWARE METRICS

EVALUATING IMPACT OF INHERITANCE ON OBJECT ORIENTED SOFTWARE METRICS CHAPTER-4 EVALUATING IMPACT OF INHERITANCE ON OBJECT ORIENTED SOFTWARE METRICS 4.1 Introduction Software metrics are essential to software engineering for measuring software complexity and quality, estimating

More information

Essential (free) Tools for DBA!

Essential (free) Tools for DBA! Essential (free) Tools for DBA! Biju Thomas Principal Solutions Architect OneNeck IT Solutions www.oneneck.com @biju_thomas 2 About me! Biju Thomas Principal Solutions Architect with OneNeck IT Solutions

More information

Investigation of Metrics for Object-Oriented Design Logical Stability

Investigation of Metrics for Object-Oriented Design Logical Stability Investigation of Metrics for Object-Oriented Design Logical Stability Mahmoud O. Elish Department of Computer Science George Mason University Fairfax, VA 22030-4400, USA melish@gmu.edu Abstract As changes

More information

Research Article ISSN:

Research Article ISSN: Research Article [Agrawal, 1(3): May, 2012] IJESRT INTERNATIONAL JOURNAL OF ENGINEERING SCIENCES & RESEARCH TECHNOLOGY Use Of Software Metrics To Measure And Improve The Quality Of The Software Design

More information

Risk-based Object Oriented Testing

Risk-based Object Oriented Testing Risk-based Object Oriented Testing Linda H. Rosenberg, Ph.D. Ruth Stapko Albert Gallo NASA GSFC SATC NASA, Unisys SATC NASA, Unisys Code 302 Code 300.1 Code 300.1 Greenbelt, MD 20771 Greenbelt, MD 20771

More information

Toad for Oracle Suite 2017 Functional Matrix

Toad for Oracle Suite 2017 Functional Matrix Toad for Oracle Suite 2017 Functional Matrix Essential Functionality Base Xpert Module (add-on) Developer DBA Runs directly on Windows OS Browse and navigate through objects Create and manipulate database

More information

Chapter 2. Operating-System Structures

Chapter 2. Operating-System Structures Chapter 2 Operating-System Structures 2.1 Chapter 2: Operating-System Structures Operating System Services User Operating System Interface System Calls Types of System Calls System Programs Operating System

More information

Building Mobile Applications. F. Ricci 2010/2011

Building Mobile Applications. F. Ricci 2010/2011 Building Mobile Applications F. Ricci 2010/2011 Wireless Software Engineering Model Mobile User Analysis Scenario Analysis Architectural Design Planning Navigation & User Interface Design Maintenance Implementation

More information

Java SE 7 Programming

Java SE 7 Programming Oracle University Contact Us: Local: 1800 103 4775 Intl: +91 80 4108 4709 Java SE 7 Programming Duration: 5 Days What you will learn This is the second of two courses that cover the Java Standard Edition

More information

1 Copyright 2011, Oracle and/or its affiliates. All rights reserved.

1 Copyright 2011, Oracle and/or its affiliates. All rights reserved. 1 Copyright 2011, Oracle and/or its affiliates. All rights reserved. Fast, but not Furious - ADF Task Flow in 60 Minutes Frank Nimphius, Senior Principal Product Manager Oracle Application Development

More information

Memory & Thread Debugger

Memory & Thread Debugger Memory & Thread Debugger Here is What Will Be Covered Overview Memory/Thread analysis New Features Deep dive into debugger integrations Demo Call to action Intel Confidential 2 Analysis Tools for Diagnosis

More information

Gauging ADF Application Performance: Instrumenting Your Code

Gauging ADF Application Performance: Instrumenting Your Code Gauging ADF Application Performance: Instrumenting Your Code Presented by: John Jay King Download this paper from: http://www.kingtraining.com 1 Session Objectives Learn how Oracle and Oracle WebLogic

More information

Effects of Dependency Injection on Maintainability. Kate Razina

Effects of Dependency Injection on Maintainability. Kate Razina Effects of Dependency Injection on Maintainability Kate Razina Overview Introduction Maintainability Dependency Injection Hypothesis Research Measuring Maintainability Data Collection Results Conclusion

More information

Peter Moskovits Principal Product Manager Oracle Corporation. Sue Vickers Group Manager Oracle Corporation

Peter Moskovits Principal Product Manager Oracle Corporation. Sue Vickers Group Manager Oracle Corporation Peter Moskovits Principal Product Manager Oracle Corporation Sue Vickers Group Manager Oracle Corporation How To Best Leverage J2EE, Struts, and ADF in Your Portal Oracle Application Server 10g Architecture

More information

Task Flow Recorder for CICS

Task Flow Recorder for CICS Task Flow Recorder for CICS Manager s Summary Tel. ++1-734-846-0549 ++972-52-664-1157 info@cicsrecorder.com Copyright 2016, by AlgoriNet, Inc. - 1 - TFR On a Nut Shell CICS Task Flow Recorder (TFR) is

More information

Empirical Evaluation and Critical Review of Complexity Metrics for Software Components

Empirical Evaluation and Critical Review of Complexity Metrics for Software Components Proceedings of the 6th WSEAS Int. Conf. on Software Engineering, Parallel and Distributed Systems, Corfu Island, Greece, February 16-19, 2007 24 Empirical Evaluation and Critical Review of Complexity Metrics

More information

Oracle Middleware 12c: Build Rich Client Applications with ADF Ed 1 LVC

Oracle Middleware 12c: Build Rich Client Applications with ADF Ed 1 LVC Oracle University Contact Us: Local: 1800 103 4775 Intl: +91 80 67863102 Oracle Middleware 12c: Build Rich Client Applications with ADF Ed 1 LVC Duration: 5 Days What you will learn This Oracle Middleware

More information

Build and Deploy Stored Procedures with IBM Data Studio

Build and Deploy Stored Procedures with IBM Data Studio Build and Deploy Stored Procedures with IBM Data Studio December 19, 2013 Presented by: Anson Kokkat, Product Manager, Optim Database Tools 1 DB2 Tech Talk series host and today s presenter: Rick Swagerman,

More information

Profiling & Optimization

Profiling & Optimization Lecture 18 Sources of Game Performance Issues? 2 Avoid Premature Optimization Novice developers rely on ad hoc optimization Make private data public Force function inlining Decrease code modularity removes

More information

HPC Tools on Windows. Christian Terboven Center for Computing and Communication RWTH Aachen University.

HPC Tools on Windows. Christian Terboven Center for Computing and Communication RWTH Aachen University. - Excerpt - Christian Terboven terboven@rz.rwth-aachen.de Center for Computing and Communication RWTH Aachen University PPCES March 25th, RWTH Aachen University Agenda o Intel Trace Analyzer and Collector

More information

PERFVIEW..NET runtime performance and ETW event analysis tool

PERFVIEW..NET runtime performance and ETW event analysis tool PERFVIEW.NET runtime performance and ETW event analysis tool OVERVIEW Formerly from Vance Morrison (.NET performance architect) Open-source Performance-analysis tool Can be used to investigate CPU and

More information

Using Static Code Analysis to Find Bugs Before They Become Failures

Using Static Code Analysis to Find Bugs Before They Become Failures Using Static Code Analysis to Find Bugs Before They Become Failures Presented by Brian Walker Senior Software Engineer, Video Product Line, Tektronix, Inc. Pacific Northwest Software Quality Conference,

More information

DNWSH - Version: 2.3..NET Performance and Debugging Workshop

DNWSH - Version: 2.3..NET Performance and Debugging Workshop DNWSH - Version: 2.3.NET Performance and Debugging Workshop .NET Performance and Debugging Workshop DNWSH - Version: 2.3 8 days Course Description: The.NET Performance and Debugging Workshop is a practical

More information

Intel Parallel Studio 2011

Intel Parallel Studio 2011 THE ULTIMATE ALL-IN-ONE PERFORMANCE TOOLKIT Studio 2011 Product Brief Studio 2011 Accelerate Development of Reliable, High-Performance Serial and Threaded Applications for Multicore Studio 2011 is a comprehensive

More information

Systems software design. Software build configurations; Debugging, profiling & Quality Assurance tools

Systems software design. Software build configurations; Debugging, profiling & Quality Assurance tools Systems software design Software build configurations; Debugging, profiling & Quality Assurance tools Who are we? Krzysztof Kąkol Software Developer Jarosław Świniarski Software Developer Presentation

More information

Memory Allocation. Static Allocation. Dynamic Allocation. Dynamic Storage Allocation. CS 414: Operating Systems Spring 2008

Memory Allocation. Static Allocation. Dynamic Allocation. Dynamic Storage Allocation. CS 414: Operating Systems Spring 2008 Dynamic Storage Allocation CS 44: Operating Systems Spring 2 Memory Allocation Static Allocation (fixed in size) Sometimes we create data structures that are fixed and don t need to grow or shrink. Dynamic

More information

Intro to Flex Debugging and Profiling

Intro to Flex Debugging and Profiling Intro to Flex Debugging and Profiling Jun Heider RealEyes Media 1 About B. C. D. Sr. Developer / Technical Trainer at RealEyes Media, LLC Flex (2-4) and AIR (0.x, 1.x) Developer from the ColdFusion (4-7)

More information

Oracle Database 10g The Self-Managing Database

Oracle Database 10g The Self-Managing Database Oracle Database 10g The Self-Managing Database Benoit Dageville Oracle Corporation benoit.dageville@oracle.com Page 1 1 Agenda Oracle10g: Oracle s first generation of self-managing database Oracle s Approach

More information

ProdDiagNode - Version: 1. Production Diagnostics for Node Applications

ProdDiagNode - Version: 1. Production Diagnostics for Node Applications ProdDiagNode - Version: 1 Production Diagnostics for Node Applications Production Diagnostics for Node Applications ProdDiagNode - Version: 1 2 days Course Description: Node.js, the popular cross-platform

More information

Application of Object Oriented Metrics to Java and C Sharp: Comparative Study

Application of Object Oriented Metrics to Java and C Sharp: Comparative Study International Journal of Computer Applications (9 888) Volume 64 No., February Application of Object Oriented Metrics to Java and C Sharp: Comparative Study Arti Chhikara Maharaja Agrasen College,Delhi,India

More information

Truffle A language implementation framework

Truffle A language implementation framework Truffle A language implementation framework Boris Spasojević Senior Researcher VM Research Group, Oracle Labs Slides based on previous talks given by Christian Wimmer, Christian Humer and Matthias Grimmer.

More information

Fiji VM Safety Critical Java

Fiji VM Safety Critical Java Fiji VM Safety Critical Java Filip Pizlo, President Fiji Systems Inc. Introduction Java is a modern, portable programming language with wide-spread adoption. Goal: streamlining debugging and certification.

More information

A Study of Software Metrics

A Study of Software Metrics International Journal of Computational Engineering & Management, Vol. 11, January 2011 www..org 22 A Study of Software Metrics Gurdev Singh 1, Dilbag Singh 2, Vikram Singh 3 1 Assistant Professor, JIET

More information

profiling Node.js applications

profiling Node.js applications Patrick Mueller @pmuellr, muellerware.org senior node engineer at NodeSource http://pmuellr.github.io/slides/2017/01-profiling-node http://pmuellr.github.io/slides/2017/01-profiling-node/slides.pdf http://pmuellr.github.io/slides/

More information

This assignment requires that you complete the following tasks (in no particular order).

This assignment requires that you complete the following tasks (in no particular order). Construction Objectives The objectives of this assignment are: (1) Implement your FCS design with high-quality code and thorough unit tests (2) Gain experience doing a task breakdown (3) Gain experience

More information

An Introduction to Software Engineering. David Greenstein Monta Vista High School

An Introduction to Software Engineering. David Greenstein Monta Vista High School An Introduction to Software Engineering David Greenstein Monta Vista High School Software Today Software Development Pre-1970 s - Emphasis on efficiency Compact, fast algorithms on machines with limited

More information

Core Java - SCJP. Q2Technologies, Rajajinagar. Course content

Core Java - SCJP. Q2Technologies, Rajajinagar. Course content Core Java - SCJP Course content NOTE: For exam objectives refer to the SCJP 1.6 objectives. 1. Declarations and Access Control Java Refresher Identifiers & JavaBeans Legal Identifiers. Sun's Java Code

More information

Using Automated Network Management at Fiserv. June 2012

Using Automated Network Management at Fiserv. June 2012 Using Automated Network Management at Fiserv June 2012 Brought to you by Join Group Vivit Network Automation Special Interest Group (SIG) Leaders: Chris Powers & Wendy Wheeler Your input is welcomed on

More information

FREQUENTLY ASKED QUESTIONS

FREQUENTLY ASKED QUESTIONS Borland Together FREQUENTLY ASKED QUESTIONS GENERAL QUESTIONS What is Borland Together? Borland Together is a visual modeling platform that enables software teams to consistently deliver on-time, high

More information

CHAPTER 2: SYSTEM STRUCTURES. By I-Chen Lin Textbook: Operating System Concepts 9th Ed.

CHAPTER 2: SYSTEM STRUCTURES. By I-Chen Lin Textbook: Operating System Concepts 9th Ed. CHAPTER 2: SYSTEM STRUCTURES By I-Chen Lin Textbook: Operating System Concepts 9th Ed. Chapter 2: System Structures Operating System Services User Operating System Interface System Calls Types of System

More information

Chapter 2: Operating-System Structures

Chapter 2: Operating-System Structures Chapter 2: Operating-System Structures Chapter 2: Operating-System Structures Operating System Services User Operating System Interface System Calls Types of System Calls System Programs Operating System

More information

IDE for medical device software development. Hyun-Do Lee, Field Application Engineer

IDE for medical device software development. Hyun-Do Lee, Field Application Engineer IDE for medical device software development Hyun-Do Lee, Field Application Engineer Agenda SW Validation Functional safety certified tool IAR Embedded Workbench Code Analysis tools SW Validation Certifications

More information

This presentation is for informational purposes only and may not be incorporated into a contract or agreement.

This presentation is for informational purposes only and may not be incorporated into a contract or agreement. This presentation is for informational purposes only and may not be incorporated into a contract or agreement. The following is intended to outline our general product direction. It is intended for information

More information

ITERATIVE DEVELOPMENT: THE USE OF J2EE BEST PRACTICES

ITERATIVE DEVELOPMENT: THE USE OF J2EE BEST PRACTICES TUTORIAL: WHITE PAPER VERITAS Indepth for the J2EE Platform ITERATIVE DEVELOPMENT: THE USE OF J2EE BEST PRACTICES By Owen Taylor Of The Middleware Company 1 1. Overview... 3 2. Selecting Appropriate Tools...

More information

Java SE 7 Programming

Java SE 7 Programming Oracle University Contact Us: +40 21 3678820 Java SE 7 Programming Duration: 5 Days What you will learn This Java Programming training covers the core Application Programming Interfaces (API) you'll use

More information

Overview. Principal Product Manager Oracle JDeveloper & Oracle ADF

Overview. Principal Product Manager Oracle JDeveloper & Oracle ADF Rich Web UI made simple an ADF Faces Overview Dana Singleterry Dana Singleterry Principal Product Manager Oracle JDeveloper & Oracle ADF Agenda Comparison: New vs. Old JDeveloper Provides JSF Overview

More information

Oracle Fusion Middleware 11g: Build Applications with ADF I

Oracle Fusion Middleware 11g: Build Applications with ADF I Oracle University Contact Us: +966 1 1 2739 894 Oracle Fusion Middleware 11g: Build Applications with ADF I Duration: 5 Days What you will learn This course is aimed at developers who want to build Java

More information

Profiling & Optimization

Profiling & Optimization Lecture 11 Sources of Game Performance Issues? 2 Avoid Premature Optimization Novice developers rely on ad hoc optimization Make private data public Force function inlining Decrease code modularity removes

More information

Advanced Debugging and the Address Sanitizer

Advanced Debugging and the Address Sanitizer Developer Tools #WWDC15 Advanced Debugging and the Address Sanitizer Finding your undocumented features Session 413 Mike Swingler Xcode UI Infrastructure Anna Zaks LLVM Program Analysis 2015 Apple Inc.

More information

Notes of the course - Advanced Programming. Barbara Russo

Notes of the course - Advanced Programming. Barbara Russo Notes of the course - Advanced Programming Barbara Russo a.y. 2014-2015 Contents 1 Lecture 2 Lecture 2 - Compilation, Interpreting, and debugging........ 2 1.1 Compiling and interpreting...................

More information

An Introduction to Runtime Analysis with Rational PurifyPlus

An Introduction to Runtime Analysis with Rational PurifyPlus Copyright Rational Software 2002 http://www.therationaledge.com/content/dec_02/t_runtimepurifyplus_gb.jsp An Introduction to Runtime Analysis with Rational PurifyPlus by Goran Begic Technical Marketing

More information

Oracle Database: Program with PL/SQL

Oracle Database: Program with PL/SQL Oracle University Contact Us: + 420 2 2143 8459 Oracle Database: Program with PL/SQL Duration: 5 Days What you will learn This Oracle Database: Program with PL/SQL training starts with an introduction

More information

Using Intel VTune Amplifier XE and Inspector XE in.net environment

Using Intel VTune Amplifier XE and Inspector XE in.net environment Using Intel VTune Amplifier XE and Inspector XE in.net environment Levent Akyil Technical Computing, Analyzers and Runtime Software and Services group 1 Refresher - Intel VTune Amplifier XE Intel Inspector

More information

Oracle Developer Day

Oracle Developer Day Oracle Developer Day Sponsored by: Session 2 Oracle Application Development Framework Speaker Speaker Title Page 1 1 Agenda Development Environment Expectations Challenges Oracle ADF Architecture Business

More information

E-BOOK // ORACLE 10G SQL EBOOK EBOOK

E-BOOK // ORACLE 10G SQL EBOOK EBOOK 23 February, 2018 E-BOOK // ORACLE 10G SQL EBOOK EBOOK Document Filetype: PDF 480.52 KB 0 E-BOOK // ORACLE 10G SQL EBOOK EBOOK Join over 19,284 People Already Learning Oracle Sql In This 9 Hour Course!.

More information

Quickly Pinpoint and Resolve Problems in Windows /.NET Applications TECHNICAL WHITE PAPER

Quickly Pinpoint and Resolve Problems in Windows /.NET Applications TECHNICAL WHITE PAPER Quickly Pinpoint and Resolve Problems in Windows /.NET Applications TECHNICAL WHITE PAPER Table of Contents Executive Overview...1 Problem Resolution A Major Time Consumer...2 > Inefficiencies of the Problem

More information

Chapter 2: Operating-System Structures. Operating System Concepts 9 th Edit9on

Chapter 2: Operating-System Structures. Operating System Concepts 9 th Edit9on Chapter 2: Operating-System Structures Operating System Concepts 9 th Edit9on Silberschatz, Galvin and Gagne 2013 Chapter 2: Operating-System Structures 1. Operating System Services 2. User Operating System

More information

Oracle ADF: The technology behind project fusion. Lynn Munsinger Principal Product Manager Application Development Tools Oracle Corporation

Oracle ADF: The technology behind project fusion. Lynn Munsinger Principal Product Manager Application Development Tools Oracle Corporation Oracle ADF: The technology behind project fusion Lynn Munsinger Principal Product Manager Application Development Tools Oracle Corporation Agenda Application Development Framework (ADF) Overview Goals

More information

Language Translation. Compilation vs. interpretation. Compilation diagram. Step 1: compile. Step 2: run. compiler. Compiled program. program.

Language Translation. Compilation vs. interpretation. Compilation diagram. Step 1: compile. Step 2: run. compiler. Compiled program. program. Language Translation Compilation vs. interpretation Compilation diagram Step 1: compile program compiler Compiled program Step 2: run input Compiled program output Language Translation compilation is translation

More information

Oracle and Toad Course Descriptions Instructor: Dan Hotka

Oracle and Toad Course Descriptions Instructor: Dan Hotka Oracle and Toad Course Descriptions Instructor: Dan Hotka Give your technical staff that competitive edge with these hands-on workshops. These courses are designed to enhance your staffs skill set to perform

More information

Oracle Developer Studio 12.6

Oracle Developer Studio 12.6 Oracle Developer Studio 12.6 Oracle Developer Studio is the #1 development environment for building C, C++, Fortran and Java applications for Oracle Solaris and Linux operating systems running on premises

More information

ORACLE ENTERPRISE MANAGER 10g ORACLE DIAGNOSTICS PACK FOR NON-ORACLE MIDDLEWARE

ORACLE ENTERPRISE MANAGER 10g ORACLE DIAGNOSTICS PACK FOR NON-ORACLE MIDDLEWARE ORACLE ENTERPRISE MANAGER 10g ORACLE DIAGNOSTICS PACK FOR NON-ORACLE MIDDLEWARE Most application performance problems surface during peak loads. Often times, these problems are time and resource intensive,

More information

Object Oriented Measurement

Object Oriented Measurement Object Oriented Measurement Diego Chaparro González dchaparro@acm.org Student number: 59881P 17th January 2003 Abstract This document examines the state of art in software products measurement, with focus

More information

Tutorial: Analyzing MPI Applications. Intel Trace Analyzer and Collector Intel VTune Amplifier XE

Tutorial: Analyzing MPI Applications. Intel Trace Analyzer and Collector Intel VTune Amplifier XE Tutorial: Analyzing MPI Applications Intel Trace Analyzer and Collector Intel VTune Amplifier XE Contents Legal Information... 3 1. Overview... 4 1.1. Prerequisites... 5 1.1.1. Required Software... 5 1.1.2.

More information

WHITE PAPER: ENTERPRISE AVAILABILITY. Introduction to Adaptive Instrumentation with Symantec Indepth for J2EE Application Performance Management

WHITE PAPER: ENTERPRISE AVAILABILITY. Introduction to Adaptive Instrumentation with Symantec Indepth for J2EE Application Performance Management WHITE PAPER: ENTERPRISE AVAILABILITY Introduction to Adaptive Instrumentation with Symantec Indepth for J2EE Application Performance Management White Paper: Enterprise Availability Introduction to Adaptive

More information

Oracle Database 12c Performance Management and Tuning

Oracle Database 12c Performance Management and Tuning Course Code: OC12CPMT Vendor: Oracle Course Overview Duration: 5 RRP: POA Oracle Database 12c Performance Management and Tuning Overview In the Oracle Database 12c: Performance Management and Tuning course,

More information

PROGRAMMING IN VISUAL BASIC WITH MICROSOFT VISUAL STUDIO Course: 10550A; Duration: 5 Days; Instructor-led

PROGRAMMING IN VISUAL BASIC WITH MICROSOFT VISUAL STUDIO Course: 10550A; Duration: 5 Days; Instructor-led CENTER OF KNOWLEDGE, PATH TO SUCCESS Website: PROGRAMMING IN VISUAL BASIC WITH MICROSOFT VISUAL STUDIO 2010 Course: 10550A; Duration: 5 Days; Instructor-led WHAT YOU WILL LEARN This course teaches you

More information

Java performance - not so scary after all

Java performance - not so scary after all Java performance - not so scary after all Holly Cummins IBM Hursley Labs 2009 IBM Corporation 2001 About me Joined IBM Began professional life writing event framework for WebSphere 2004 Moved to work on

More information

Improving the Productivity of Scalable Application Development with TotalView May 18th, 2010

Improving the Productivity of Scalable Application Development with TotalView May 18th, 2010 Improving the Productivity of Scalable Application Development with TotalView May 18th, 2010 Chris Gottbrath Principal Product Manager Rogue Wave Major Product Offerings 2 TotalView Technologies Family

More information

1 Copyright 2011, Oracle and/or its affiliates. All rights reserved.

1 Copyright 2011, Oracle and/or its affiliates. All rights reserved. 1 Copyright 2011, Oracle and/or its affiliates. All rights The forthcoming is intended to outline our general product direction. It is intended for information purposes only, and may not be incorporated

More information

Software Design & Evolution. Lecture 04. You cannot control what you cannot measure. Metrics & Problem Detection. Michele Lanza

Software Design & Evolution. Lecture 04. You cannot control what you cannot measure. Metrics & Problem Detection. Michele Lanza Software Design & Evolution Lecture 04 Michele Lanza Metrics & Problem Detection Metrics? Don t trust them Michele Lanza & Radu Marinescu Object-Oriented Metrics in Practice Using Software Metrics to Characterize,

More information

WHITE PAPER Application Performance Management. The Case for Adaptive Instrumentation in J2EE Environments

WHITE PAPER Application Performance Management. The Case for Adaptive Instrumentation in J2EE Environments WHITE PAPER Application Performance Management The Case for Adaptive Instrumentation in J2EE Environments Why Adaptive Instrumentation?... 3 Discovering Performance Problems... 3 The adaptive approach...

More information

25. DECUS Symposium THE Application Development Environment for OpenVMS

25. DECUS Symposium THE Application Development Environment for OpenVMS NetBeans THE Application Development Environment for OpenVMS Sunil Kumaran, Thomas Siebold Agenda What is NetBeans some history Major Features / Demonstrations NetBeans on OpenVMS Questions 5/2/2002 DECUS

More information