Technical features


Build Features

  • Support for multiple projects
  • ContinuousIntegration: temporal scheduling of project builds
  • Ability to manually initiate a build
  • Build/Rebuild any project version
  • Build/Rebuild on multiple environments
  • Customizable Build workflow: adapt the flow of sub-processes (Phases) to be executed for a Build
  • Dynamic and secured build parameters, may be edited just before build
  • Configurable VCR tagging: template-based tagging, defined for each Project Stream (with variables such as project name, build number, date/time, branch prefix, suffix ...). The default (template-based) tagging may also be overwritten at build creation, e.g. to enable applying labels like “RC1” or “BaseLine4.0”
  • Project dependency:
    • include the latest result, a specific result or the production build result of a dependent project
    • include and build the latest source or a specific or production source version of a dependent project
  • Incremental Build:
    • only build the modified sources comparing to the previous build
    • only build the modified sources comparing to the build in production
    • only build the modified sources comparing to a specific VCR tag
  • Tag-based build: Build based on a specific tag instead of on the latest code

Deploy Features

  • Deployment of successful builds
  • Temporal scheduling of project deployment
  • Ability to manually initiate a deployment
  • Deployment of any Project Version
  • Deployment on multiple environments, in sequence or in parallel
  • Customizable Deploy workflow: adapt the flow of sub-processes (Phases) to be executed for a Deploy
  • Dynamic and secured deploy parameters, may be edited just before deploy
  • Partial deploy: deploy only the modified result files comparing to the previous build result

Support for Life Cycle Management

  • Rebuild of previous builds on other target platform
  • Deployment of previously executed builds to other target servers
  • Define process flow: how builds migrate from BUILD to TEST to PRODUCTION environments (called Levels in IKAN ALM language)
  • Customize the Build and Deploy steps for delivering to a Level
  • Possibility to define hierarchical approval process after and/or before build/deployment towards a Level
  • Possibility to define required notification after and/or before build/deployment towards a Level
  • Deliver/Redeliver/Rollback functionality of built/deployed software
  • Freeze functionality blocks the continuous build process or any other new build on the build level
  • Optional Levels: possibility to skip a Level in a Lifecycle
  • “Milestone” Levels: levels with no associated environments to support an advanced Approval and Notification process
  • Define one or more physical environments (Windows, Linux, Mainframe,...) for each level

User Interface

  • Web-based user interface allows configuration of the entire system (no need to manually edit configuration files)
  • History log of all administrative changes ensuring maximum traceability
  • Convenient list of all the projects and color coded results of their last builds (succeeded/failed)
  • Overview pages with enhanced search capabilities to quickly find the status and history of a Project’s lifecycle.
  • Customizable desktop providing a clear status view of the users’ projects
  • Two-way overview of Build dependencies.
  • Convenient interface for approving, rejecting and searching approvals.
  • Project intranet with javadocs, JUnit test results, metrics, and downloadable artifacts
  • Interface to quickly identify and delete obsolete build artifacts
  • Internationalization: the interface language can be defined through the user definition
  • Context sensitive help is available in HTML format
  • Convenient interface to easily re-use defined build or deploy parameters through cloning of parameters and environments, or by defining machine parameters that are inherited by the environments

Version Control Systems Support

  • Subversion
  • Git
  • Microsoft Team Foundation Version Control (TFVC)
  • CVS
  • IBM Rational ClearCase (UCM and Base)
  • Microsoft Visual SourceSafe
  • Serena PVCS Version Manager
  • Support for any Version Control System can be made available via the API interface

Version Control System Interaction

  • Performs checkout or sync of project sources
  • Applies a label with the current project version number
  • Diff with the previous built/deployed software
  • Show Sources (with version info) related to a build or deploy
  • Ability to select and move individual files or components through a lifecycle (Subversion, TFVC and ClearCase)
  • Subversion meta properties are automatically retrieved during the "Retrieve code" phase and can be used by the build or deploy scripting tool

Ant/Gradle/NAnt/Maven 2 Builder/Deployer

  • Ability to execute any Ant/Gradle/NAnt/Maven 2 script to build/deploy the project
  • No intrusion into the build/deploy script
  • Ability to pass extra Ant/Gradle/NAnt/Maven 2 properties and change them right before build/deploy
  • Wrap an Ant/Gradle/Nant/Maven script in a Custom Phase with specific properties and easily distribute and reuse it in different Projects or IKAN ALM installations
  • Ability to specify JVM options like -Xms and -Xmx
  • Support for Multiple Versions of Ant/Gradle/NAnt/Maven 2
  • Configurable Ant/Maven 2 Classpath
  • Ability to run Ant via the “Ant Launcher”
  • Support for Multiple JDKs or .NET frameworks

Supported transfer protocols

  • FileCopy using Windows shares and Linux mounts
  • Secured file transfer using secure copy (SSH)
  • FTP

Issue Tracking

  • Link builds with issues, manually or automatically
  • Possibility to link issues with builds manually
  • Synchronize issue properties (status, description, etc…) with external Issue Tracking System
  • Automatically add comments to issues each time a build moves through the lifecycle
  • View details of issues from within the IKAN ALM GUI
  • Built-in integration with JIRA, Team Foundation Server, HP Quality Center and CollabNet TeamForge
  • Integration with any 3rd party Issue Tracking System via API

Package-based Build and Deployment

  • Ability to select and move individual files or components through a lifecycle (Subversion, TFVC and ClearCase). Supports mainframe way of development
  • Specific revisions/versions of individual files can be chosen
  • A history log is maintained, allowing auditing the changes in the content of a Package (files added/removed/modified)
  • A Package Build Group concept handles dependencies between Packages

Build/Deploy Notification

  • Support for:
    • SMTP
    • NetSend
    • RSS
  • Customizable, internationalized templates for plain text or HTML format e-mails
  • Send out e-mails informing interested parties of build/deploy results
  • Receive e-mails for every build/deploy, only failed build/deploy or only successful build/deploy
  • Notification when build/deployment is requested/executed
  • Notification when approval is requested/executed
  • E-mails contain hyperlink which automatically forward to detailed information in the user interface
  • RSS Feeds for displaying data about the last 10 builds/deploys that meet specified criteria

Audit Trail

  • All administrative changes get a version log
  • Build/Deploy logs for every build/deploy of every project
  • Status overview of which build is residing at which machine/level
  • History of built/deployed software through the life-cycle of a project
  • Source-to-load relationship: overview of which sources have been used to make the build result, and which binaries have been deployed

Modular Architecture

  • Agent/Server Architecture enabling distributed builds and/or deploys
  • Possibility to define multiple build servers
  • Possibility to define multiple deployment agents
  • Command Line Interface enabling creation of builds and/or deploys on external triggers


  • Graphical or text-based installer for the full product

Security - Integration with JAAS

  • Integrates with operational security system
  • User Authentication
  • Passwords and Passphrases in all IKAN ALM settings (System Settings, VCR definition, Secure Shell...) cannot be read by any IKAN ALM user
  • All secure values are encrypted before they are stored in the database for maximum security
  • Possibility to encrypt all communication between IKAN ALM components
  • User Authorization:
    • For requesting builds
    • For requesting deliveries to levels
    • For approving/rejecting builds and/or deploys
    • For administering projects
    • For administering IKAN ALM

Commandline Interface

  • Execute a build or deploy from a command prompt
  • Allows scheduling builds and deploys with an external scheduling tool (Task Scheduler, Cron, …)
  • Generate a report from a command prompt
  • Create a package from a command prompt

Customizable Reporting

  • The build and deploy overview is available as a customizable report in several formats (pdf, csv, xls, rtf). These reports can be launched from the User Interface or Command Line Interface. Command Line reporting enables the integration with other tools (e.g. planning) or the creation of reports in batch.
  • The ALM Reports tool allows generating several other administration or follow-up reports using a wide range of selection criteria.

Technical requirements

Read about the technical requirements to run IKAN ALM.