Using the Application Discovery Assistant to create applications and projects

AppScan® Source includes a powerful Application Discovery Assistant which allows you to quickly create and configure applications and projects for Java source code and Microsoft Visual Studio solutions. The Application Discovery Assistant also allows you to locate Eclipse or Rational® Application Developer for WebSphere® Software (RAD) workspaces that contain Java projects. The Application Discovery Assistant allows you to point to your source, solution, or workspace directory - and then AppScan® Source handles the rest.

About this task

You can use the Application Discovery Assistant to search a location that contains a combination of Java source, Microsoft Visual Studio solutions, and/or Eclipse workspaces. The final panel of the Application Discovery Assistant allows you to specify application/project structure preferences for Java only. This panel has no bearing on the placement of application and project files for Microsoft Visual Studio solution or Eclipse workspaces - where application files are automatically placed in the root of the solution or workspace - and project files are automatically placed in the root of individual solution or workspace projects.

Procedure

  1. Complete one of these actions to launch the Application Discovery Assistant:
    • Select File > Add Application > Discover Applications from the main menu bar.
    • In the Explorer view Quick Start section, select Discover Applications.
    • In the Explorer view toolbar, click the Add application menu down-arrow button and select Discover Applications from the menu.
    • In the Explorer view, right-click All Applications and then select Add Application > Discover Applications from the menu.
  2. In the Search Location panel, specify the location that contains the source code, solutions, or workspaces that you want to scan. In addition, you can set the scan to begin immediately after completing application discovery.

    From here, you can click Next to set additional Application Discovery Assistant options (such as external dependency specification, exclusion rules, and Java application/project structure preferences) - or you can click Start to begin application discovery. If you click Start:

    • No external dependency locations will be set. If your application has external dependencies and they are not specified, scan results will be negatively impacted.
    • Out-of-the box exclusion rules will be used (see Default Application Discovery Assistant exclusion rules for a list of the default rules).
    • If you are locating Java source, one project and application will be created (the single project will contain all source roots that are found).

    If you click Next, proceed to the next step.

  3. In the External Dependencies panel, set a path for each external dependency that your application has (for example, a path to a JDK or web server). To complete this panel, follow these instructions:
    1. To add an external dependency, click inside the table or click Add - and then type in or browse for the external dependency path. To accept a path that you have entered by keyboard, press the keyboard Enter key.
      Tip: Typing into the dependency path field while it is being edited causes directories to be listed that you can select. You must at least type in a drive letter. For the path that is specified, all folders that it contains will be listed.
    2. To remove an external dependency path, select it and click Delete.
    3. To modify an external dependency path, click inside the path and then type in or browse for the external dependency path.

    From here, you can click Next to set additional Application Discovery Assistant options - or you can click Start to begin application discovery. If you click Start:

    • Out-of-the box exclusion rules will be used (see Default Application Discovery Assistant exclusion rules for a list of the default rules).
    • If you are locating Java source, one project and application will be created (the single project will contain all source roots that are found).

    If you click Next, proceed to the next step.

  4. In the Exclusion Rules panel, specify rules for filtering out files and directories. Rules are set by PERL, Grep, EGrep, or exact match regular expression. For example, if you want to exclude a directory named temp from the Application Discovery search, you could add a PERL .*[\\/]temp exclusion rule.

    By default, a set of PERL regular expressions are provided for excluding some common directories (see Default Application Discovery Assistant exclusion rules for the complete list). To modify this list or create new rules, follow these instructions:

    1. To modify an existing exclusion rule, click inside the rule to activate the rule editor. Once you are finished editing the rule, click away from it or press the keyboard Enter key.

      To modify the regular expression type of an existing rule, click inside the Regex Type cell of the rule and then select the regular expression type from the menu.

    2. To add an exclusion rule, click Add. This adds a new rule to the table, which you can alter by following the above instructions for modifying rules.
    3. To remove an exclusion rule, select it and click Delete (or click Delete All to remove all exclusion rules currently listed in the panel).
    Important: Valid exclusion rules are denoted by check mark in the table - and invalid rules are denoted by a red X. You will not be able to start Application Discovery or continue in the Application Discovery Assistant until all rules are valid.

    From here:

    • If you are searching for Java source only, you can click Next to set Application Discovery Assistant application/project structure preferences - or you can click Start to run the assistant.
    • If you are only searching for Microsoft Visual Studio solutions or Eclipse workspaces, click Start to run the assistant. Clicking Next will cause the assistant to proceed to a panel that applies only to Java source discovery.

    If you click Next, proceed to the next step.

  5. The Application and Project Creation panel applies only to Java source discovery. In it, specify the structure of the applications and projects that will be created:
    1. To create a single project for all source roots that are found, select Create a single project in the Projects menu. With this selection, you will only have the option of creating a single application.
    2. To create a separate project for each source root that is found, select Create a project for each source root found in the Projects menu. With this selection, you can choose to create one application or multiple applications. To create a single application that contains all projects that are created, select Create a single application in the Applications menu. To create an application for each project that is created, select Create an application per project in the Applications menu.

    In addition, choose a location to store the application and project definition files.

    If you choose Organize the files for me:

    • If you are creating a single project, the project and application files will be created in the search location.
    • If you are creating a project for each source root in a single application, the project file for each source root will be created in the directory above the source root - and the application file will be created in the search location.
    • If you are creating a project for each source root and an application for each project, the project and application files for each source root will be created in the directory above the source root.

    If you specify a directory, all application and project files will be created in that directory.

  6. If you want to change any of the settings made in previous panels, click Back. When you are satisfied with the Application Discovery settings, click Start to scan the search location for source roots.

Results

When Application Discovery is complete, new applications and projects that were created as a result of Application Discovery appear in the Explorer view, ready for scanning (if you set the scan to begin immediately after completing application discovery, the scan will begin).

If problems were encountered during discovery, the Application Discovery Assistant provides a discovery report upon completion. For example, if your application has external dependencies that were not specified in the External Dependencies panel, the report will contain warnings indicating that external dependencies cannot be resolved. In the discovery report:

  • Click Finish to create the applications and projects. If Ignore warnings and scan anyway is selected, the applications and projects will be scanned immediately.
  • Click Back to alter Application Discovery Assistant settings or run Application Discovery again.
  • Click Cancel to close the discovery report without creating applications or projects.