Brian Duff Principal Engineer JDeveloper Team Oracle Corporation.

Slides:



Advertisements
Similar presentations
Requirements for a UI Test Framework Stanislaw Wozniak Bernie Miles.
Advertisements

Stephen Vance - CM and the Principles of Agile Software Development
© 2007 IBM Corporation Demo Shimon Nir, Rational Technical & Service Manager, IBM Southwest Europe.
6th European Banking Supervisors XBRL Workshop Madrid 4, 5 October 2006 Version Control Pablo Santos Códice Software
Configuration Management
Page 1 October 31, 2000 An Introduction to Large-Scale Software Development Steve Varnau Core HP-UX Operation October 31, 2000.
Software Configuration Management Donna Albino LIS489, December 3, 2014.
CS 325: Software Engineering April 7, 2015 Software Configuration Management Task Scheduling & Prioritization Reporting Project Progress Configuration.
Oracle Fusion Middleware 11g Abhishek Khanolkar. What is Oracle Fusion? “Oracle Fusion Middleware is a ‘preintegrated’ portfolio of customer- proven software.
CS 5521 Configuration Management the problem Not a simple task! –Different versions of software usually is in the field during the life cycle –Different.
1 Software Configuration Management METU Computer Engineering CEng 492 Spring'2004.
CS 501 : An Introduction to SCM & GForge An Introduction to SCM & GForge Lin Guo
Nov. 6, 2003CS WPI1 CS 509 Design of Software Systems Lecture #10 Thursday, Nov. 6, 2003.
Low level CASE: Source Code Management. Source Code Management  Also known as Configuration Management  Source Code Managers are tools that: –Archive.
The Basic Tools Presented by: Robert E., & Jonathan Chase.
Page 1 11/6/2005 A Change Model in a SCM Tool Author: IvicaCrnkovic ABB Industrial Products. Wenbin Xiang.
Source Code Management Or Configuration Management: How I learned to Stop Worrying and Hate My Co-workers Less.
Configuration Management
1 CMPT 275 Software Engineering Revision Control.
Source Control Repositories for Enabling Team Working Svetlin Nakov Telerik Corporation
Software Configuration Management CSC-532 Chandra Shekar Kandi Chandra Shekar Kandi.
Software Configuration Management
Introduction to Continuous Integration Mike Roberts.
Continuous Integration Demonstration. Agenda 1.Continuous Integration Basics 2.Live Demonstration 3.Bamboo Concepts 4.Advantages 5.Version 2.0 Features.
CONTINUOUS INTEGRATION, DELIVERY & DEPLOYMENT ONE CLICK DELIVERY.
Software Configuration Management (SCM)
Craig Berntson Chief Software Gardener Mojo Software Worx Branches and Merges are Bears, Oh My!
Multi Duty Tool for Smallworld™ solution providers.
© 2012 IBM Corporation Rational Insight | Back to Basis Series SCM introduction Chu Shu June 2012.
AUTOBUILD Build and Deployment Automation Solution.
Software Engineering Modern Approaches
Sumedha Rubasinghe October,2009 Introduction to Programming Tools.
Software Configuration Management
Computing and SE II Chapter 18: Tools and Environments Er-Yu Ding Software Institute, NJU.
Automated Testing Tips Copyright © 2000 Compuware Corporation Mark Nesslar July 15, 2000.
Understanding Eclipse Development Environment Hen-I Yang July 7, 2006
1 ©equinox limited 2005 What the hell is Configuration Management anyway? Martin White Equinox Software Architects August 2005.
1 Lecture 19 Configuration Management Software Engineering.
1 Software Development Configuration management. \ 2 Software Configuration  Items that comprise all information produced as part of the software development.
Design and Programming Chapter 7 Applied Software Project Management, Stellman & Greene See also:
1 SEG4912 University of Ottawa by Jason Kealey Software Engineering Capstone Project Tools and Technologies.
Software Quality Assurance
Distributed Java Programming Distributed Java Programming Setting up a Java Development Environment.
DEV-8: OpenEdge® Architect – Extensibility & Third Party Integration Sunil Belgaonkar Principal Software Engineer Architect Phillip Magnay.
| JavaOne 2003 | Session #1870 Massive Scale Deployments Tips, Tricks, & Pitfalls Stephen Davidson Principal Associate Stephen Davidson & Associates, Inc.
Presentation Name / 1 Visual C++ Builds and External Dependencies NAME.
Dive Into Java A Roadmap to Effective Java Programming.
Confidential Continuous Integration Framework (CIF) 5/18/2004.
Management of Software Project CSM Software Configuration Management (SCM)
(1) Introduction to Continuous Integration Philip Johnson Collaborative Software Development Laboratory Information and Computer Sciences University of.
(1) Introduction to Continuous Integration Philip Johnson Collaborative Software Development Laboratory Information and Computer Sciences University of.
CASE Tools CSC 532 : Advance Topics CSC 532 : Advance Topics Software Engineering Software Engineering Dr. box Dr. box Moayad Almohaishi Moayad Almohaishi.
JRA1 Meeting – 09/02/ Software Configuration Management and Integration EGEE is proposed as a project funded by the European Union under contract.
Source Control Repositories for Enabling Team Working Doncho Minkov Telerik Corporation
SG scmGalaxy Author: KaliPrasad / Rajesh Kumar
Code/Project Management On Screwdrivers and Hammers.
Configuration Management
Software Configuration Management CSC-532
Software Configuration Management
Managing Changes in the Real World
Chapter 11: Software Configuration Management
Trends like agile development and continuous integration speak to the modern enterprise’s need to build software hyper-efficiently Jenkins:  a highly.
Configuration Management
CS 325: Software Engineering
X in [Integration, Delivery, Deployment]
JENKINS TIPS Ideas for making your life with Jenkins easier
Chapter 11: Software Configuration Management
Continuous Integration Tool
The Most Popular Android UI Automation Testing Tool Andrii Voitenko
Presentation transcript:

Brian Duff Principal Engineer JDeveloper Team Oracle Corporation

Team Development Best Practices With Oracle JDeveloper 10 g

Team Development Process  Change control  Day to day development  Testing and auditing  Building and releasing

Change Control  Essential for most teams – Safety – Accountability – Flexibility  Use version control software – CVS, Oracle SCM, ClearCase, SourceSafe  JDeveloper team uses ClearCase – Moving to Oracle SCM in next twelve months

Components  Main division of a product  Should have well defined dependencies  Organize for future growth  Don’t be afraid to reorganize as they grow – Helps to have a version control system that makes this easy

JDeveloper Components

Files  Logically structured – Primary organization by type or subcomponent – Use “parallel source tree” pattern for unit testing  Version control almost everything  Derived objects – Usually better not to version control – Can use a derived object cache in large products

JDeveloper Files  A bit messy…  Newer components (e.g. adfc_modelers) have a more organized internal structure  8,990.java files in “java”  2.2M Lines of code

Parallel Development  Developers can work on tasks concurrently  Developers control when their workspace picks up changes  Developers can use micro-versioning within a task

Unit Testing  Run unit tests before checking in  Essential part of refactoring – Refactoring without unit testing is just “moving stuff around” – Only way to prove that refactoring is just reorganizing code without altering functionality  Important metric of tip quality for a team – Automate unit testing after each check in

Code Auditing and Metrics  Use a coding standard – Structural changes can be distracting when comparing files – Developers have a natural aversion to changing messy files (including large files)  Automate auditing and metrics – After each check in, or during builds  Make it easy for developers to audit

Building Code  Build frequently and automatically – After each check in is ideal  Developers should be able to verify they won’t break the build by checking in – Use a build tool such as ant or make – Version control third party libraries  Label successful builds – Any successful build should be reproducible – Provides a branch point for release branching

JDeveloper Build System  Automated system using Java, JMS, EJB  Builds several releases of the product at once in parallel – Multiple “workhorse” build machines – A single controller & scheduler – Highly parallel, e.g. debug build happens at same time as nondebug build  After build, check in comments are mailed to team

Further Reading  Configuration Management Best Practices Wiki –  Streamed Lines –  Ed Saikali’s J2EE Environment Article, OTN – ticles/saikali_jdev.html ticles/saikali_jdev.html

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