Subversion Training:

Objectives of the course can be described as follows:

This course will give you a detailed overview how to work with Subversion and how to use the different Subversion features. It covers typical day-to-day scenarios when working in a team. You will learn how to edit and merge files in parallel and how to lock/unlock files to serialize your work. Imagine working with non ASCII files like MS-Word or any other kind of binary files that just can't be merged. The course will teach you best practices when working with branches. It describes how and when to use branches. You will learn how to prepare a release branch, the benefit of bug fixing branches and how to merge a branch into another line of development. After the course you know how to mark different stages in a project and how to identify project configurations in an easy way by using tags. You will be familiar with the different subversion commands as the course is designed as a hands-on training. Your knowledge will be deepened by many different exercises to be realized on your own machines .

Topics:

1. Architecture of Subversion: architecture, access to the repository, repository Layout
2. The Working Cycle: typical tasks when working with subversion
3. Team work I: Working on a single development line
4. Locking: optimistic locking, pessimistic locking
5. Tagging: why tags are needed, How to create tags
6. Branching: working with branches
7. Merging: merging of bug fixes and changes
8. Team work II: Working with developer branches
9. Properties: Meta data in Subversion
10. Do's and don’ts

Subversion 1.5 items
12. Sparse Checkouts
13. Change-List
14. Interactive conflict resolution
15. Enhancements
16. Merge tracking
17. New svn:externals Syntax
18. Server Enhancements
19. Subversion configuration

Duration: 1 day. Cost: 2500Eur per day + VAT, max 10 trainees per day

Maven/2 workshop:

Description and Objectives:

Maven is a software project management and comprehension tool. Based on the concept of a project object model (POM), Maven can manage a project's build, reporting and documentation from a central piece of information. Trainees will be able to build at least a HELLO WORLD java program, consisting of one "utility library jar" that uppercases a given string, and a main application jar which uses the library to uppercase the word and then print it.

Topics:

1. Maven Basics: Repositories, Lifecycle, Project Object Model (POM),The Coordinates, POM Inheritance/aggregation, Archetypes
2. Dependencies: Defining dependencies, Transitive dependencies, include/exclude dependencies
3. Example Project: Simplest POM, Packaging, Unit Tests, Resources
4. Site generation: How to generate, How to deploy, Documentation, apt, fmt, xdoc, Reports
5. Reactor builds: Multiple Modules, Mvn install, Integration Test, Packaging
6. Assemblies: Default assemblies, Archive types, Component Descriptors, Creating test-jars
7. Release Cycle: What it does, How to use the release cycle, Signing of artifacts within release cycle
8. Best Practice, POM's, Modules
9. Properties: Why and how to use them, Filterting of resources, Defining and usage of our own properties
10. The settings.xml file: Defining servers, Secrects, Deploy server
11. Profiles: Settings.xml, Profiles in POM, Activations of profiles, Environment, Compatibility, Refactoring POM's
12. Different Plugins: Compiler, Jar, Changes, Assembly, Appassembler, Buildnumber plugin, War, Cargo, Dependency, Antrun

Course requirements: Software Maven >= 2.2.1 Subversion 1.6.X (Command Line incl. svnadmin) TortoiseSVN 1.6.X

Hardware: Local Machines or participants laptops with the above software downloaded. Installation will be done during the hands-on section.

Classroom / environment : Course level this workshop has - Intermediate

Duration: 1 day. Cost: 2600Eur per day + VAT, max 10 trainees per day