diff --git a/CONTRIBUTING.adoc b/CONTRIBUTING.adoc index 878ed61f70..5ac060877d 100644 --- a/CONTRIBUTING.adoc +++ b/CONTRIBUTING.adoc @@ -122,14 +122,14 @@ git checkout -b gh-pages windup + ---- -mkdir -p docs/2.0.0.Beta6/html +mkdir -p docs/2.0.0.VERSION/html ---- * Copy any new images, stylesheets, and html files from windup-documentation: + ---- -cp ../windup-documentation/*.html ../windup-documentation/*.css ../windup-documentation/images/* docs/2.0.0.Beta6/html/ +cp ../windup-documentation/*.html ../windup-documentation/*.css ../windup-documentation/images/* docs/2.0.0.VERSION/html/ ---- * Add the updated files to GitHub. @@ -153,5 +153,5 @@ git commit -m "HTML docs" git push upstream gh-pages ---- -* View the documentation at +* View the documentation at diff --git a/README.adoc b/README.adoc index 5280b21e81..f003eeb307 100644 --- a/README.adoc +++ b/README.adoc @@ -45,13 +45,13 @@ git checkout -b gh-pages windup * If the directory does not yet exist, create a docs/WINDUP-RELEASE-html/ directory. + ---- -mkdir -p docs/2.0.0.Beta6/html (if it doesn't exist!) +mkdir -p docs/2.0.0.VERSION/html (if it doesn't exist!) ---- * Copy any new images, stylesheets, and html files from windup-documentation: + ---- -cp ../windup-documentation/html/*.html ../windup-documentation/*.css ../windup-documentation/images/* docs/2.0.0.Beta6/html +cp ../windup-documentation/html/*.html ../windup-documentation/*.css ../windup-documentation/images/* docs/2.0.0.VERSION/html ---- * Add the updated files to GitHub. @@ -79,9 +79,9 @@ View the documentation at the following URLs. [cols="2*"] |=== | **Guide** | **URL** -| Windup User Guide | http://windup.github.io/windup/docs/2.0.0.Beta6/html/WindupUserGuide.html -| Windup Rules Development Guide | http://windup.github.io/windup/docs/2.0.0.Beta6/html/WindupRulesDevelopmentGuide.html -| Windup Core Development Guide | http://windup.github.io/windup/docs/2.0.0.Beta6/html/WindupCoreDevelopmentGuide.html +| Windup User Guide | http://windup.github.io/windup/docs/2.0.0.Beta7/html/WindupUserGuide.html +| Windup Rules Development Guide | http://windup.github.io/windup/docs/2.0.0.Beta7/html/WindupRulesDevelopmentGuide.html +| Windup Core Development Guide | http://windup.github.io/windup/docs/2.0.0.Beta7/html/WindupCoreDevelopmentGuide.html | Windup Migration Planning Guide | TBD |=== diff --git a/docs/About-the-WINDUP_HOME-Variable.adoc b/docs/About-the-WINDUP_HOME-Variable.adoc index cec0ebb543..cec1d945dc 100644 --- a/docs/About-the-WINDUP_HOME-Variable.adoc +++ b/docs/About-the-WINDUP_HOME-Variable.adoc @@ -4,4 +4,4 @@ This documentation uses the `WINDUP_HOME` *replaceable* value to denote the path to the Windup distribution. When you encounter this value in the documentation, be sure to replace it with the actual path to your Windup installation. * If you download and install the latest distribution of Windup from the JBoss Nexus repository, `WINDUP_HOME` refers to the `windup-distribution-2.0.0.VERSION` folder extracted from the downloaded ZIP file. -* If you build Windup from GitHub source, `WINDUP_HOME` refers to the `windup-distribution-2.0.0-` folder extracted from the Windup source `dist/target/windup-distribution-2.0.0-VERSION.zip` file. \ No newline at end of file +* If you build Windup from GitHub source, `WINDUP_HOME` refers to the `windup-distribution-2.0.0-VERSION` folder extracted from the Windup source `dist/target/windup-distribution-2.0.0-VERSION.zip` file. \ No newline at end of file diff --git a/docs/Dev-Build-Windup-from-Source.adoc b/docs/Dev-Build-Windup-from-Source.adoc index 52be9f6211..ac35bbd219 100644 --- a/docs/Dev-Build-Windup-from-Source.adoc +++ b/docs/Dev-Build-Windup-from-Source.adoc @@ -2,7 +2,9 @@ === Build Windup from Source This information is provided for new developers who plan to contribute code -to the Windup open source project. If you use Linux and are an experienced Windup developer looking for a quick refresher, jump to: xref:quick-build-review-for-experienced-windup-developers[Quick Build Review for Experienced Windup Developers]. +to the Windup open source project. This section describes how to build Windup from source and how to extract the Windup distribution that is created during the build process. + +If you use Linux and are an experienced Windup developer looking for a quick refresher, jump to: xref:quick-build-review-for-experienced-windup-developers[Quick Build Review for Experienced Windup Developers]. ==== System Requirements to Build Windup @@ -88,6 +90,8 @@ mvn clean install -DskipTests ==== Build Windup Using Red Hat JBoss Developer Studio or Eclipse +If you prefer, you can use an IDE to build Windup. + . Make sure you have configured the Maven installation in your IDE as described here: https://github.com/windup/windup/wiki/Install-and-Configure-Maven[Install @@ -104,6 +108,13 @@ _Incomplete Maven Goal Execution_, ignore it and click `OK` to continue. . In the Project Explorer tab, find the `windup_parent` project in the list, right-mouse, and choose `Run As` --> `Maven install`. +==== Extract the Windup Distribution Source File + +The build process creates a `windup-distribution-2.0.0-SNAPSHOT-offline.zip file` in the Windup source `dist/target/` directory. + +Unzip the `dist/target/windup-distribution-2.0.0-SNAPSHOT-offline.zip` file into a directory of your choice. + + [[quick-build-review-for-experienced-windup-developers]] ==== Quick Build Review for Experienced Windup Developers diff --git a/docs/Dev-Execute-Windup-Built-from-Source.adoc b/docs/Dev-Execute-Windup-Built-from-Source.adoc index d22c77dea1..61621e6228 100644 --- a/docs/Dev-Execute-Windup-Built-from-Source.adoc +++ b/docs/Dev-Execute-Windup-Built-from-Source.adoc @@ -1,117 +1,12 @@ [[Dev-Execute-Windup-Built-from-Source]] === Execute Windup (Built from Windup Source) -_These instructions are for Windup core developers who are new to the project and unfamiliar with the procedures to execute Windup._ +These instructions are for Windup core developers who plan to build Windup from source to test code updates. -Experienced users may jump to xref:quick-execute-review-for-experienced-windup-users[Quick Execute Review for Experienced Windup Users]. +* If you are new to the project and not familiar with the procedures to execute Windup, see link:Execute-Windup[Execute Windup]. It contains complete step-by-step instructions to execute Windup and also provides command line examples. -NOTE: If you used previous versions of Windup, delete the `${user.home}/.forge/addons/` directory. Otherwise you may see errors like the following when you execute Windup: - _Command: windup-migrate-app was not found_ - -==== Unzip the Windup Distribution - -1. Follow the procedures to link:Dev-Build-Windup-from-Source[build Windup from source]. This creates a `windup-distribution-2.0.0-SNAPSHOT-offline.zip` file in the Windup source `dist/target` directory. Note, the version may be different than the one used in these instructions. -2. Unzip the `dist/target/windup-distribution-2.0.0-SNAPSHOT-offline.zip` ZIP file. - -==== Run Windup - -1. Open a terminal and navigate to the unzipped `windup-distribution-2.0.0-SNAPSHOT/` directory. -2. Type the following command to start Windup: -+ ---------------------------------------------------------------------------- -For Linux: $ bin/windup -For Windows: > bin\windup.bat ---------------------------------------------------------------------------- -3. You are presented with the following prompt. -+ ---------------------------------------------------------------------------- -Using Windup at /home/username/windup/dist/target/windup-distribution-2.0.0-SNAPSHOT - - _ ___ __ -| | / (_)___ ____/ /_ ______ -| | /| / / / __ \/ __ / / / / __ \ -| |/ |/ / / / / / /_/ / /_/ / /_/ / -|__/|__/_/_/ /_/\__,_/\__,_/ .___/ - /_/ - -JBoss Windup, version [ 2.0.0-SNAPSHOT ] - JBoss, by Red Hat, Inc. [ http://windup.jboss.org ] - -[windup-distribution-2.0.0-SNAPSHOT]$ ---------------------------------------------------------------------------- - -4. The syntax to evaluate an application using the Windup tool requires that you specify the location of the input archive or folder, the location of a folder to contain the output reporting information, and the application packages to evaluate. At the prompt, type: +* Experienced users who need a refresher can follow the steps below. + ------------- -windup-migrate-app --input INPUT_ARCHIVE_OR_FOLDER --output OUTPUT_REPORT_DIRECTORY --packages PACKAGE_1 PACKAGE_2 PACKAGE_N ------------- -+ -Where: - -* `INPUT_ARCHIVE_OR_FOLDER` is the fully qualified application archive or source path -* `OUTPUT_REPORT_DIRECTORY` is the fully qualified path to the folder that will contain the the report information produced by Windup. -* `PACKAGE_1`, `PACKAGE_2`, `PACKAGE_N` are the packages to be evaluated by Windup. -+ -See xref:windup-command-examples[Windup Command Examples] below for concrete examples of Windup commands using source code directories and archives located in the Windup GitHub repository. - -5. You should see the following result upon completion of the command: -+ ------------- -***SUCCESS*** Windup execution successful! ------------- - -6. To exit Windup, type -+ ------------- -exit ------------- - -7. Open the `OUTPUT_REPORT_DIRECTORY/index.html` file in a browser to access the report. -The following subdirectories in the `OUTPUT_REPORT_DIRECTORY` contain the supporting information for the report: - - OUTPUT_REPORT_DIRECTORY - graph/ - renderedGraph/ - reports/ - stats/ - index.html - -8. For details on how to evaluate the report data, see link:Review-the-Report[Review the Report]. - -==== Run Windup in Batch Mode (for a shell script) - -1. Open a terminal and navigate to the unzipped `windup-distribution-2.0.0-SNAPSHOT/` directory. -2. Type the following command to run Windup in batch mode: -+ ---------------------------------------------------------------------------- -For Linux: $ bin/windup --evaluate "windup-migrate-app --input INPUT_ARCHIVE --output OUTPUT_REPORT --packages PACKAGE_1 PACKAGE_2 PACKAGE_N" -For Windows: > bin\windup.bat --evaluate "windup-migrate-app --input INPUT_ARCHIVE --output OUTPUT_REPORT --packages PACKAGE_1 PACKAGE_2 PACKAGE_N" ---------------------------------------------------------------------------- - -==== Windup Help - -To see the list of available parameters for the `windup-migrate-app` command, execute the following command in the Windup prompt: - - man windup-migrate-app - -[[windup-command-examples]] -==== Windup Command Examples - -The following Windup command examples report against applications located in the https://github.com/windup/windup/tree/master/test-files[Windup source test-files] directory. - -===== Source Code Example - -The following command runs against the https://github.com/windup/windup/tree/master/test-files/seam-booking-5.2[seam-booking-5.2] application source code. It evaluates all `org.jboss.seam` packages and creates a folder named 'seam-booking-report' in the `/home/username/windup-reports/` directory to contain the reporting output. - - windup-migrate-app --input /home/username/windup-source/test-files/seam-booking-5.2/ --output /home/username/windup-reports/seam-booking-report --packages org.jboss.seam - -===== Archive Example - -The following command runs against the https://github.com/windup/windup/blob/master/test-files/jee-example-app-1.0.0.ear[jee-example-app-1.0.0.ear] EAR archive. It evaluates all `com.acme` and `org.apache` packages and creates a folder named 'jee-example-app-1.0.0.ear-report' in the `/home/username/windup-reports/` directory to contain the reporting output. - - windup-migrate-app --input /home/username/windup-source/test-files/jee-example-app-1.0.0.ear/ --output /home/username/windup-reports/jee-example-app-1.0.0.ear-report --packages com.acme org.apache - -[[quick-execute-review-for-experienced-windup-users]] -==== Quick Execute Review for Experienced Windup Users ------------------ mkdir tmp cd tmp @@ -123,13 +18,15 @@ bin/windup.sh ## Execute Windup $ windup-migrate-app --input /home/username/work/Migration/TestApps/_apps/BradApp --output Report --packages org com net -## Exit forge +## Exit Windup $ exit ## View the Report firefox Report/index.html ------------------ +//// +I believe the following is obsolete ==== Execute Windup as an Installed Forge Add-on ------------------ @@ -158,4 +55,4 @@ $ exit ## View the Report firefox Report/index.html ------------------ - +//// diff --git a/docs/Dev-Windup-Documentation-Process.adoc b/docs/Dev-Windup-Documentation-Process.adoc index f292b97cd7..3c5f3951f7 100644 --- a/docs/Dev-Windup-Documentation-Process.adoc +++ b/docs/Dev-Windup-Documentation-Process.adoc @@ -45,13 +45,13 @@ git checkout -b gh-pages windup * If the directory does not yet exist, create a docs/WINDUP-RELEASE-html/ directory. + ---- -mkdir -p docs/2.0.0.Beta6/html (if it doesn't exist!) +mkdir -p docs/2.0.0.VERSION/html (if it doesn't exist!) ---- * Copy any new images, stylesheets, and html files from windup-documentation: + ---- -cp ../windup-documentation/html/*.html ../windup-documentation/*.css ../windup-documentation/images/* docs/2.0.0.Beta6/html +cp ../windup-documentation/html/*.html ../windup-documentation/*.css ../windup-documentation/images/* docs/2.0.0.VERSION/html ---- * Add the updated files to GitHub. @@ -72,4 +72,4 @@ git commit -m "Update message..." git push upstream gh-pages ---- -* View the documentation at http://windup.github.io/windup/docs/2.0.0.Beta6/html/WindupUserGuide.html +* View the documentation at http://windup.github.io/windup/docs/2.0.0.VERSION/html/WindupUserGuide.html diff --git a/docs/Dev-Windup-Project-Information.adoc b/docs/Dev-Windup-Project-Information.adoc index 5f457965ca..2c6de6fdda 100644 --- a/docs/Dev-Windup-Project-Information.adoc +++ b/docs/Dev-Windup-Project-Information.adoc @@ -11,7 +11,7 @@ See the _Core-Developer-Guide_ for details on how to contribute to the Windup pr The Windup documentation is currently located here in the Windup project https://github.com/windup/windup/wiki/[Wiki]. -For additional information, refer to the link:http://windup.github.io/windup/docs/javadoc/2.0.0.Beta2/[Javadoc]. +For additional information, refer to the Windup link:http://windup.github.io/windup/docs/javadoc/latest/index.html[Javadoc]. ==== Website diff --git a/docs/Execute-Windup.adoc b/docs/Execute-Windup.adoc index 15c7b7208e..6416154009 100644 --- a/docs/Execute-Windup.adoc +++ b/docs/Execute-Windup.adoc @@ -1,7 +1,8 @@ [[Execute-Windup]] === Execute Windup -These instructions are for users who run Windup using the tool extracted from the ZIP download. +NOTE: If you used previous versions of Windup, delete the `${user.home}/.forge/addons/` directory. Otherwise you may see errors like the following when you execute Windup: + _Command: windup-migrate-app was not found_ ==== Prerequisites @@ -9,7 +10,8 @@ Before you begin, you must gather the following information. . Windup requires that you specify the fully qualified path of the application archive or folder you plan to migrate. This is passed using the `--input` argument on the command line. -. You must also specify the fully qualified path to a folder that will contain the resulting report information. If the folder does not exist, it is created by Windup. This path is passed using the `--output` argument on the command line. +. You also specify the fully qualified path to a folder that will contain the resulting report information. If the folder does not exist, it is created by Windup. If the folder exists, it is deleted and recreated by Windup, so be careful not to specify a directory that contains important information! +This path is passed using the `--output` argument on the command line. . You must also provide a list of the application packages to be evaluated. @@ -33,7 +35,7 @@ For Windows: C:\WINDUP_HOME\bin> windup . You are presented with the following prompt. + --------------------------------------------------------------------------- -Using Windup at /home/username/windup-distribution-VERSION +Using Windup at WINDUP_HOME _ ___ __ | | / (_)___ ____/ /_ ______ @@ -42,9 +44,9 @@ Using Windup at /home/username/windup-distribution-VERSION |__/|__/_/_/ /_/\__,_/\__,_/ .___/ /_/ -JBoss Windup, version [ VERSION ] - JBoss, by Red Hat, Inc. [ http://windup.jboss.org ] +JBoss Windup, version [ 2.0.0-VERSION ] - JBoss, by Red Hat, Inc. [ http://windup.jboss.org ] -[windup-distribution-VERSION]$ +[windup-distribution-2.0.0-VERSION]$ --------------------------------------------------------------------------- . The syntax to evaluate an application using the Windup tool requires that you specify the location of the input archive or source code folder, the location of a folder to contain the output reporting information, and the application packages to evaluate. To evaluate an application archive, use the following syntax: @@ -98,6 +100,18 @@ The following subdirectories in the `OUTPUT_REPORT_DIRECTORY` contain the suppor . For details on how to evaluate the report data, see link:Review-the-Report[Review the Report]. +==== Run Windup in Batch Mode + +Windup can be also executed in batch mode within a shell or batch script using the `--evaluate` argument as follows. + +. Open a terminal and navigate to the WINDUP_HOME directory. +. Type the following command to run Windup in batch mode: ++ +--------------------------------------------------------------------------- +For Linux: $ bin/windup --evaluate "windup-migrate-app --input INPUT_ARCHIVE --output OUTPUT_REPORT --packages PACKAGE_1 PACKAGE_2 PACKAGE_N" +For Windows: > bin\windup.bat --evaluate "windup-migrate-app --input INPUT_ARCHIVE --output OUTPUT_REPORT --packages PACKAGE_1 PACKAGE_2 PACKAGE_N" +--------------------------------------------------------------------------- + ==== Windup Help To see the list of available parameters for the `windup-migrate-app` command, execute the following command in the Windup prompt: @@ -121,8 +135,18 @@ The following command runs against the https://github.com/windup/windup/blob/mas windup-migrate-app --input /home/username/windup-source/test-files/jee-example-app-1.0.0.ear/ --output /home/username/windup-reports/jee-example-app-1.0.0.ear-report --packages com.acme org.apache +===== Windup Batch Example + +The following Windup batch command runs against the https://github.com/windup/windup/blob/master/test-files/jee-example-app-1.0.0.ear[jee-example-app-1.0.0.ear] EAR archive. It evaluates all `com.acme` and `org.apache` packages and creates a folder named 'jee-example-app-1.0.0.ear-report' in the `/home/username/windup-reports/` directory to contain the reporting output. + +---- +For Linux: $ bin/windup --evaluate "windup-migrate-app --input /home/username/windup-source/test-files/jee-example-app-1.0.0.ear/ --output /home/username/windup-reports/jee-example-app-1.0.0.ear-report --packages com.acme org.apache" +For Windows: > bin\windup.bat --evaluate "windup-migrate-app --input \windup-source\test-files\jee-example-app-1.0.0.ear --output \windup-reports\jee-example-app-1.0.0.ear-report --packages com.acme org.apache +---- + ===== Windup Quickstart Examples For more concrete examples, see the Windup quickstarts located on GitHub here: https://github.com/windup/windup-quickstarts. If you prefer, you can download the https://github.com/windup/windup-quickstarts/releases/tag/2.0.0.Alpha1[2.0.0.Alpha1 release] ZIP or TAR distribution of the quickstarts. -The quickstarts provide examples of Java-based and XML-based rule addons you can run and test using Windup. The README instructions provide a step-by-step guide to run the quickstart example. You can also look through the code examples and use them as a starting point for creating your own rule addons. \ No newline at end of file +The quickstarts provide examples of Java-based and XML-based rule addons you can run and test using Windup. The README instructions provide a step-by-step guide to run the quickstart example. You can also look through the code examples and use them as a starting point for creating your own rule addons. + diff --git a/docs/Get-Involved.adoc b/docs/Get-Involved.adoc index ecd35ed18f..959c3b6a9f 100644 --- a/docs/Get-Involved.adoc +++ b/docs/Get-Involved.adoc @@ -9,20 +9,27 @@ To help us make Windup cover most application constructs and server configuratio * Provide example applications to test migration rules. * Identify application components and problem areas that may be difficult to migrate. ** Write a short description of these problem migration areas. -** Write a brief guide describing how to solve the problem migration areas. +** Write a brief overview describing how to solve the problem migration areas. * link:Execute-Windup[Try Windup] on your application. Be sure to link:Report-Issues-with-Windup[report any issues] you encounter. -* Write an Windup rule to automate the migration process. +* You can contribute Windup rules. +** Write a Windup rule add-on to automate a migration process. ** Create a test for the new rule. -* You can contribute Windup rules. For details, see the _Windup Rules Development Guide_. -* You can also contribute to the project source code. See the _Windup Core Development Guide_ for information about how to configure your environment and set up the project. +** For details, see the _Windup Rules Development Guide_. +* You can also contribute to the project source code. +** Create a core rule. +** Improve performance or efficiency. +** See the_Windup Core Development Guide_ for information about how to configure your environment and set up the project. Any level of involvement is greatly appreciated! -==== Basic links +==== Helpful links * Windup Wiki: https://github.com/windup/windup/wiki -* Windup documentation (generated from above wiki): http://windup.github.io/windup/docs/latest/html/WindupUserGuide.html +* Windup documentation (generated from the Wiki documentation at the link above): +** http://windup.github.io/windup/docs/latest/html/WindupUserGuide.html +** http://windup.github.io/windup/docs/latest/html/WindupRulesDevelopmentGuide.html +** http://windup.github.io/windup/docs/latest/html/WindupCoreDevelopmentGuide.html * Windup Forums: https://community.jboss.org/en/windup * Windup Issue Tracker: https://issues.jboss.org/browse/WINDUP * Windup Users Mailing List: windup-users@lists.jboss.org diff --git a/docs/Install-Windup.adoc b/docs/Install-Windup.adoc index 21074624b2..4459320a7d 100644 --- a/docs/Install-Windup.adoc +++ b/docs/Install-Windup.adoc @@ -1,7 +1,7 @@ [[Install-Windup]] === Install Windup -. Download the latest Windup ZIP distribution from http://repository.jboss.org/nexus/content/groups/public/org/jboss/windup/windup-distribution. This is currently http://repository.jboss.org/nexus/content/groups/public/org/jboss/windup/windup-distribution/2.0.0.Beta6/[windup-distribution-2.0.0.Beta6]. +. Download the latest Windup ZIP distribution from http://repository.jboss.org/nexus/content/groups/public/org/jboss/windup/windup-distribution. This is currently https://repository.jboss.org/nexus/service/local/repositories/releases/content/org/jboss/windup/windup-distribution/2.0.0.Beta7/windup-distribution-2.0.0.Beta7-offline.zip[windup-distribution-2.0.0.Beta7]. . Extract the ZIP file in to a directory of your choice. NOTE: The documentation uses the replaceable value `WINDUP_HOME` to denote the path to the Windup installation. When you encounter this value in the documentation, be sure to replace it with the actual path to your Windup installation. For more information, see link:About-the-WINDUP_HOME-Variable[About the WINDUP_HOME Variable]. diff --git a/docs/Rules-Create-a-Basic-Java-based-Rule-Add-on.adoc b/docs/Rules-Create-a-Basic-Java-based-Rule-Add-on.adoc index 73c745b88c..d161a3b9a9 100644 --- a/docs/Rules-Create-a-Basic-Java-based-Rule-Add-on.adoc +++ b/docs/Rules-Create-a-Basic-Java-based-Rule-Add-on.adoc @@ -28,7 +28,7 @@ Create a new Maven Java Project. These instructions will refer to the project fo UTF-8 1.7 1.7 - 2.0.0.Beta3 + 2.0.0.VERSION 2.12.1.Final ---- diff --git a/docs/Rules-Creating-Rule-Operations.adoc b/docs/Rules-Creating-Rule-Operations.adoc index aa4bedcb13..d1db663049 100644 --- a/docs/Rules-Creating-Rule-Operations.adoc +++ b/docs/Rules-Creating-Rule-Operations.adoc @@ -19,5 +19,5 @@ public class FooOperation extends GraphOperation Existing operations: -image:./img/GraphOperationSubtypes.png["Existing operations"] +image:images/GraphOperationSubtypes.png["Existing operations"] diff --git a/docs/Rules-Rule-Story-Points.adoc b/docs/Rules-Rule-Story-Points.adoc index df8d8ce069..6cb54246cd 100644 --- a/docs/Rules-Rule-Story-Points.adoc +++ b/docs/Rules-Rule-Story-Points.adoc @@ -1,22 +1,35 @@ [[Rules-Rule-Story-Points]] === Rule Story Points - .DRAFT + ==== What are Story Points? Story points are an abstract metric used in Scrum methodology to estimate the level of effort for various tasks. They are based on a http://scrummethodology.com/scrum-effort-estimation-and-story-points/[modified Fibonacci sequence]. In a similar manner, Windup uses story points to express the level of effort needed to migrate particular application constructs, and in a sum, the application as a whole. ==== How to Estimate Story Points in a Rule -TODO: TBD. +Estimating story points for a rule can be tricky. The following are general guidelines or suggestions to use when estimating the level of effort required for a rule. + +[cols="3*", options="header"] +|=== +|Level of Effort +|Story Points +|Description + +|Lift and Shift +|0 +|The code or file is standards-based and requires no effort. + +|Mapped +| 1- 2 per file +|There is a standard mapping algorithm to port the code or file. The number of story points required is small, but dependent on the number of files to port. + +|Custom +|5 - 20 per change or component +a| The number of story points required to modify and rewrite code depends on the complexity of the change, the number of unknown imports, the size of the files, and the number of components. The following are examples of how to estimate story points. -Estimating story points for a rule can be tricky. The following are 'rules of thumb' or suggestions to use when estimating the level of effort required for a rule. +* Port MyBatis to JPA: '20' story points per query. +* Port a web page from one web framework to another depends on the complexity and the number of components involved in the migration. You could estimate '20' story points per component. +|=== -* The level of effort required for "Lift and Shift", which basically means the code or file is standards-based and can be ported to the new environment with no changes, would be '0' story points. -* Changing a parameter name or value of units might be '2' story points. -This could contain relative examples like: -* Porting a web page (or similar concept) from one web framework to another depends on the complexity and the number of components. You could estimate '20' story points per component. -* Porting MyBatis to JPA: '20' story points per query. -* When you don't know if it will need a migration: Could depend on number of unknown imports, size -of the file, ... diff --git a/docs/Rules-Windup-Models.adoc b/docs/Rules-Windup-Models.adoc index ef7c83bb93..b8797d677d 100644 --- a/docs/Rules-Windup-Models.adoc +++ b/docs/Rules-Windup-Models.adoc @@ -7,7 +7,7 @@ They are used to model the data in the graph database to Java objects. This is an overview of the most important models. The complete and up-to-date list of models is in link:http://windup.github.io/windup/docs/javadoc/latest/org/jboss/windup/graph/model/WindupVertexFrame.html[Javadoc]. -image:img/WindupModels-NbScreenshot.png[Windup Models Graphic] +image:images/WindupModels-NbScreenshot.png[Windup Models Graphic] ==== Meta Models diff --git a/docs/Windup-Core-Development-Guide.adoc b/docs/Windup-Core-Development-Guide.adoc index 5c87bda280..6a2d6e1f92 100644 --- a/docs/Windup-Core-Development-Guide.adoc +++ b/docs/Windup-Core-Development-Guide.adoc @@ -32,6 +32,7 @@ include::Install-and-Configure-Maven.adoc[tabsize=4] include::Dev-Get-the-Windup-Source-Code.adoc[tabsize=4] include::Dev-Build-Windup-from-Source.adoc[tabsize=4] include::Dev-Execute-Windup-Built-from-Source.adoc[tabsize=4] +include::Execute-Windup[tabsize=4] include::Review-the-Report.adoc[tabsize=4] == Rules and Rulesets diff --git a/docs/images/GraphOperationSubtypes.png b/docs/images/GraphOperationSubtypes.png new file mode 100644 index 0000000000..8b396a3fd5 Binary files /dev/null and b/docs/images/GraphOperationSubtypes.png differ diff --git a/docs/images/WindupModels-NbScreenshot.png b/docs/images/WindupModels-NbScreenshot.png new file mode 100644 index 0000000000..56d34cbfa0 Binary files /dev/null and b/docs/images/WindupModels-NbScreenshot.png differ diff --git a/html/WindupCoreDevelopmentGuide.html b/html/WindupCoreDevelopmentGuide.html index 18be25a16d..ca9d7efbf6 100644 --- a/html/WindupCoreDevelopmentGuide.html +++ b/html/WindupCoreDevelopmentGuide.html @@ -757,7 +757,7 @@

How can you help?

Write a short description of these problem migration areas.

  • -

    Write a brief guide describing how to solve the problem migration areas.

    +

    Write a brief overview describing how to solve the problem migration areas.

  • @@ -766,20 +766,36 @@

    How can you help?

    Try Windup on your application. Be sure to report any issues you encounter.

  • -

    Write an Windup rule to automate the migration process.

    +

    You can contribute Windup rules.

    • +

      Write a Windup rule add-on to automate a migration process.

      +
    • +
    • Create a test for the new rule.

    • +
    • +

      For details, see the Windup Rules Development Guide.

      +
  • -

    You can contribute Windup rules. For details, see the Windup Rules Development Guide.

    +

    You can also contribute to the project source code.

    +
    +
      +
    • +

      Create a core rule.

    • -

      You can also contribute to the project source code. See the Windup Core Development Guide for information about how to configure your environment and set up the project.

      +

      Improve performance or efficiency.

      +
    • +
    • +

      See the_Windup Core Development Guide_ for information about how to configure your environment and set up the project.

      +
    • +
    +
  • @@ -788,14 +804,27 @@

    How can you help?

    - +
    -

    For additional information, refer to the Javadoc.

    +

    For additional information, refer to the Windup Javadoc.

    @@ -989,7 +1018,7 @@

    Create a JIRA Issue

    If you download and install the latest distribution of Windup from the JBoss Nexus repository, WINDUP_HOME refers to the windup-distribution-2.0.0.VERSION folder extracted from the downloaded ZIP file.

  • -

    If you build Windup from GitHub source, WINDUP_HOME refers to the windup-distribution-2.0.0-<version> folder extracted from the Windup source dist/target/windup-distribution-2.0.0-VERSION.zip file.

    +

    If you build Windup from GitHub source, WINDUP_HOME refers to the windup-distribution-2.0.0-VERSION folder extracted from the Windup source dist/target/windup-distribution-2.0.0-VERSION.zip file.

  • @@ -1539,7 +1568,10 @@

    Fork and Clone the Windup Reposit

    Build Windup from Source

    This information is provided for new developers who plan to contribute code -to the Windup open source project. If you use Linux and are an experienced Windup developer looking for a quick refresher, jump to: Quick Build Review for Experienced Windup Developers.

    +to the Windup open source project. This section describes how to build Windup from source and how to extract the Windup distribution that is created during the build process.

    +
    +
    +

    If you use Linux and are an experienced Windup developer looking for a quick refresher, jump to: Quick Build Review for Experienced Windup Developers.

    System Requirements to Build Windup

    @@ -1673,6 +1705,9 @@

    Build Windup Using Maven Command

    Build Windup Using Red Hat JBoss Developer Studio or Eclipse

    +
    +

    If you prefer, you can use an IDE to build Windup.

    +
    1. @@ -1708,6 +1743,15 @@

      Build Win

    +

    Extract the Windup Distribution Source File

    +
    +

    The build process creates a windup-distribution-2.0.0-SNAPSHOT-offline.zip file in the Windup source dist/target/ directory.

    +
    +
    +

    Unzip the dist/target/windup-distribution-2.0.0-SNAPSHOT-offline.zip file into a directory of your choice.

    +
    +
    +

    Quick Build Review for Experienced Windup Developers

    @@ -1724,195 +1768,15 @@

    Quick Build Review

    Execute Windup (Built from Windup Source)

    -

    These instructions are for Windup core developers who are new to the project and unfamiliar with the procedures to execute Windup.

    -
    -
    -

    Experienced users may jump to Quick Execute Review for Experienced Windup Users.

    -
    -
    - - - - - -
    -
    Note
    -
    -If you used previous versions of Windup, delete the ${user.home}/.forge/addons/ directory. Otherwise you may see errors like the following when you execute Windup: - Command: windup-migrate-app was not found -
    -
    -
    -

    Unzip the Windup Distribution

    -
    -
      -
    1. -

      Follow the procedures to build Windup from source. This creates a windup-distribution-2.0.0-SNAPSHOT-offline.zip file in the Windup source dist/target directory. Note, the version may be different than the one used in these instructions.

      -
    2. -
    3. -

      Unzip the dist/target/windup-distribution-2.0.0-SNAPSHOT-offline.zip ZIP file.

      -
    4. -
    -
    -
    -
    -

    Run Windup

    -
    -
      -
    1. -

      Open a terminal and navigate to the unzipped windup-distribution-2.0.0-SNAPSHOT/ directory.

      -
    2. -
    3. -

      Type the following command to start Windup:

      -
      -
      -
      For Linux:     $ bin/windup
      -For Windows:   > bin\windup.bat
      -
      -
      -
    4. -
    5. -

      You are presented with the following prompt.

      -
      -
      -
      Using Windup at /home/username/windup/dist/target/windup-distribution-2.0.0-SNAPSHOT
      -
      - _       ___           __
      -| |     / (_)___  ____/ /_  ______
      -| | /| / / / __ \/ __  / / / / __ \
      -| |/ |/ / / / / / /_/ / /_/ / /_/ /
      -|__/|__/_/_/ /_/\__,_/\__,_/ .___/
      -                          /_/
      -
      -JBoss Windup, version [ 2.0.0-SNAPSHOT ] - JBoss, by Red Hat, Inc. [ http://windup.jboss.org ]
      -
      -[windup-distribution-2.0.0-SNAPSHOT]$
      -
      -
      -
    6. -
    7. -

      The syntax to evaluate an application using the Windup tool requires that you specify the location of the input archive or folder, the location of a folder to contain the output reporting information, and the application packages to evaluate. At the prompt, type:

      -
      -
      -
      windup-migrate-app --input INPUT_ARCHIVE_OR_FOLDER --output OUTPUT_REPORT_DIRECTORY --packages PACKAGE_1 PACKAGE_2 PACKAGE_N
      -
      -
      -
      -

      Where:

      +

      These instructions are for Windup core developers who plan to build Windup from source to test code updates.

      • -

        INPUT_ARCHIVE_OR_FOLDER is the fully qualified application archive or source path

        +

        If you are new to the project and not familiar with the procedures to execute Windup, see Execute Windup. It contains complete step-by-step instructions to execute Windup and also provides command line examples.

      • -

        OUTPUT_REPORT_DIRECTORY is the fully qualified path to the folder that will contain the the report information produced by Windup.

        -
      • -
      • -

        PACKAGE_1, PACKAGE_2, PACKAGE_N are the packages to be evaluated by Windup.

        -
        -

        See Windup Command Examples below for concrete examples of Windup commands using source code directories and archives located in the Windup GitHub repository.

        -
        -
      • -
      -
      -
    8. -
    9. -

      You should see the following result upon completion of the command:

      -
      -
      -
      ***SUCCESS*** Windup execution successful!
      -
      -
      -
    10. -
    11. -

      To exit Windup, type

      -
      -
      -
      exit
      -
      -
      -
    12. -
    13. -

      Open the OUTPUT_REPORT_DIRECTORY/index.html file in a browser to access the report. -The following subdirectories in the OUTPUT_REPORT_DIRECTORY contain the supporting information for the report:

      -
      -
      -
      OUTPUT_REPORT_DIRECTORY
      -    graph/
      -    renderedGraph/
      -    reports/
      -    stats/
      -    index.html
      -
      -
      -
    14. -
    15. -

      For details on how to evaluate the report data, see Review the Report.

      -
    16. -
    -
    -
    -
    -

    Run Windup in Batch Mode (for a shell script)

    -
    -
      -
    1. -

      Open a terminal and navigate to the unzipped windup-distribution-2.0.0-SNAPSHOT/ directory.

      -
    2. -
    3. -

      Type the following command to run Windup in batch mode:

      -
      -
      -
      For Linux:     $ bin/windup --evaluate "windup-migrate-app --input INPUT_ARCHIVE --output OUTPUT_REPORT --packages PACKAGE_1 PACKAGE_2 PACKAGE_N"
      -For Windows:   > bin\windup.bat --evaluate "windup-migrate-app --input INPUT_ARCHIVE --output OUTPUT_REPORT --packages PACKAGE_1 PACKAGE_2 PACKAGE_N"
      -
      -
      -
    4. -
    -
    -
    -
    -

    Windup Help

    -
    -

    To see the list of available parameters for the windup-migrate-app command, execute the following command in the Windup prompt:

    -
    -
    -
    -
    man windup-migrate-app
    -
    -
    -
    -
    -

    Windup Command Examples

    -
    -

    The following Windup command examples report against applications located in the Windup source test-files directory.

    -
    -
    -
    Source Code Example
    -
    -

    The following command runs against the seam-booking-5.2 application source code. It evaluates all org.jboss.seam packages and creates a folder named 'seam-booking-report' in the /home/username/windup-reports/ directory to contain the reporting output.

    -
    -
    -
    -
    windup-migrate-app --input /home/username/windup-source/test-files/seam-booking-5.2/ --output /home/username/windup-reports/seam-booking-report --packages org.jboss.seam
    -
    -
    -
    -
    -
    Archive Example
    -
    -

    The following command runs against the jee-example-app-1.0.0.ear EAR archive. It evaluates all com.acme and org.apache packages and creates a folder named 'jee-example-app-1.0.0.ear-report' in the /home/username/windup-reports/ directory to contain the reporting output.

    -
    -
    -
    -
    windup-migrate-app --input /home/username/windup-source/test-files/jee-example-app-1.0.0.ear/ --output /home/username/windup-reports/jee-example-app-1.0.0.ear-report --packages com.acme org.apache
    -
    -
    -
    -
    -
    -

    Quick Execute Review for Experienced Windup Users

    +

    Experienced users who need a refresher can follow the steps below.

    mkdir tmp
    @@ -1925,44 +1789,18 @@ 

    Quick Execute Review ## Execute Windup $ windup-migrate-app --input /home/username/work/Migration/TestApps/_apps/BradApp --output Report --packages org com net -## Exit forge +## Exit Windup $ exit ## View the Report firefox Report/index.html

    + +
    -
    -

    Execute Windup as an Installed Forge Add-on

    -
    -
    -
    ## Install Forge
    -wget -O forge.zip https://repository.jboss.org/nexus/service/local/repositories/releases/content/org/jboss/forge/forge-distribution/2.12.0.Final/forge-distribution-2.12.0.Final-offline.zip
    -unzip forge.zip
    -mv forge-distribution-2.12.0.Final Forge
    -
    -## Configure Forge and Install Windup
    -export FORGE_HOME=./Forge/
    -export PATH=$PATH:$FORGE_HOME/bin
    -rm -rf ~/.forge/addons/
    -forge -b --install org.jboss.windup:ui,2.0.0-SNAPSHOT
    -forge -b --install org.jboss.windup.rules.apps:rules-java,2.0.0-SNAPSHOT
    -forge -b --install org.jboss.windup.rules.apps:rules-java-ee,2.0.0-SNAPSHOT
    -
    -## Start Forge
    -forge
    -
    -## Execute Windup
    -$ windup-migrate-app --input /home/username/work/Migration/TestApps/_apps/BradApp --output Report --packages org com net
    -
    -## Exit forge
    -$ exit
    -
    -## View the Report
    -firefox Report/index.html
    -
    -
    +
    +

    Unresolved directive in Windup-Core-Development-Guide.adoc - include::Execute-Windup[tabsize=4]

    @@ -2357,32 +2195,51 @@

    What are Story Points?

    How to Estimate Story Points in a Rule

    -

    TODO: TBD.

    +

    Estimating story points for a rule can be tricky. The following are general guidelines or suggestions to use when estimating the level of effort required for a rule.

    -
    -

    Estimating story points for a rule can be tricky. The following are 'rules of thumb' or suggestions to use when estimating the level of effort required for a rule.

    + +++++ + + + + + + + + + + + + + + + + + + + + + + + + +
    Level of EffortStory PointsDescription

    Lift and Shift

    0

    The code or file is standards-based and requires no effort.

    Mapped

    1- 2 per file

    There is a standard mapping algorithm to port the code or file. The number of story points required is small, but dependent on the number of files to port.

    Custom

    5 - 20 per change or component

    +

    The number of story points required to modify and rewrite code depends on the complexity of the change, the number of unknown imports, the size of the files, and the number of components. The following are examples of how to estimate story points.

    • -

      The level of effort required for "Lift and Shift", which basically means the code or file is standards-based and can be ported to the new environment with no changes, would be '0' story points.

      -
    • -
    • -

      Changing a parameter name or value of units might be '2' story points. -This could contain relative examples like:

      -
    • -
    • -

      Porting a web page (or similar concept) from one web framework to another depends on the complexity and the number of components. You could estimate '20' story points per component.

      +

      Port MyBatis to JPA: '20' story points per query.

    • -

      Porting MyBatis to JPA: '20' story points per query.

      -
    • -
    • -

      When you don’t know if it will need a migration: Could depend on number of unknown imports, size -of the file, …​

      +

      Port a web page from one web framework to another depends on the complexity and the number of components involved in the migration. You could estimate '20' story points per component.

    -
    +
    @@ -2784,7 +2641,7 @@
    Create a Maven Project
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> <maven.compiler.source>1.7</maven.compiler.source> <maven.compiler.target>1.7</maven.compiler.target> - <version.windup>2.0.0.Beta3</version.windup> + <version.windup>2.0.0.VERSION</version.windup> <version.forge>2.12.1.Final</version.forge> </properties>
    @@ -4428,7 +4285,7 @@

    Examples of brea

    Existing operations:

    -

    Existing operations

    +

    Existing operations

    @@ -4889,7 +4746,7 @@

    Windup Models

    The complete and up-to-date list of models is in Javadoc.

    -

    Windup Models Graphic

    +

    Windup Models Graphic

    Meta Models

    @@ -5579,7 +5436,7 @@

    Publish the HTML doc

    If the directory does not yet exist, create a docs/WINDUP-RELEASE-html/ directory.

    -
    mkdir -p docs/2.0.0.Beta6/html (if it doesn't exist!)
    +
    mkdir -p docs/2.0.0.VERSION/html (if it doesn't exist!)
    @@ -5587,7 +5444,7 @@

    Publish the HTML doc

    Copy any new images, stylesheets, and html files from windup-documentation:

    -
    cp ../windup-documentation/html/*.html ../windup-documentation/*.css ../windup-documentation/images/* docs/2.0.0.Beta6/html
    +
    cp ../windup-documentation/html/*.html ../windup-documentation/*.css ../windup-documentation/images/* docs/2.0.0.VERSION/html
    @@ -5616,7 +5473,7 @@

    Publish the HTML doc

  • -

    View the documentation at http://windup.github.io/windup/docs/2.0.0.Beta6/html/WindupUserGuide.html

    +

    View the documentation at http://windup.github.io/windup/docs/2.0.0.VERSION/html/WindupUserGuide.html

  • @@ -5820,7 +5677,7 @@

    Reporting Terms

    diff --git a/html/WindupRulesDevelopmentGuide.html b/html/WindupRulesDevelopmentGuide.html index 7039de36f2..1f32647ef6 100644 --- a/html/WindupRulesDevelopmentGuide.html +++ b/html/WindupRulesDevelopmentGuide.html @@ -787,7 +787,7 @@

    How can you help?

    Write a short description of these problem migration areas.

  • -

    Write a brief guide describing how to solve the problem migration areas.

    +

    Write a brief overview describing how to solve the problem migration areas.

  • @@ -796,20 +796,36 @@

    How can you help?

    Try Windup on your application. Be sure to report any issues you encounter.

  • -

    Write an Windup rule to automate the migration process.

    +

    You can contribute Windup rules.

    • +

      Write a Windup rule add-on to automate a migration process.

      +
    • +
    • Create a test for the new rule.

    • +
    • +

      For details, see the Windup Rules Development Guide.

      +
  • -

    You can contribute Windup rules. For details, see the Windup Rules Development Guide.

    +

    You can also contribute to the project source code.

    +
    +
      +
    • +

      Create a core rule.

      +
    • +
    • +

      Improve performance or efficiency.

    • -

      You can also contribute to the project source code. See the Windup Core Development Guide for information about how to configure your environment and set up the project.

      +

      See the_Windup Core Development Guide_ for information about how to configure your environment and set up the project.

      +
    • +
    +
  • @@ -818,14 +834,27 @@

    How can you help?

    - +
    @@ -961,7 +990,7 @@

    Install Windup

    1. -

      Download the latest Windup ZIP distribution from http://repository.jboss.org/nexus/content/groups/public/org/jboss/windup/windup-distribution. This is currently windup-distribution-2.0.0.Beta6.

      +

      Download the latest Windup ZIP distribution from http://repository.jboss.org/nexus/content/groups/public/org/jboss/windup/windup-distribution. This is currently windup-distribution-2.0.0.Beta7.

    2. Extract the ZIP file in to a directory of your choice.

      @@ -983,8 +1012,18 @@

      Install Windup

    Execute Windup

    -
    -

    These instructions are for users who run Windup using the tool extracted from the ZIP download.

    +
    + + + + + +
    +
    Note
    +
    +If you used previous versions of Windup, delete the ${user.home}/.forge/addons/ directory. Otherwise you may see errors like the following when you execute Windup: + Command: windup-migrate-app was not found +

    Prerequisites

    @@ -997,7 +1036,8 @@

    Prerequisites

    Windup requires that you specify the fully qualified path of the application archive or folder you plan to migrate. This is passed using the --input argument on the command line.

  • -

    You must also specify the fully qualified path to a folder that will contain the resulting report information. If the folder does not exist, it is created by Windup. This path is passed using the --output argument on the command line.

    +

    You also specify the fully qualified path to a folder that will contain the resulting report information. If the folder does not exist, it is created by Windup. If the folder exists, it is deleted and recreated by Windup, so be careful not to specify a directory that contains important information! +This path is passed using the --output argument on the command line.

  • You must also provide a list of the application packages to be evaluated.

    @@ -1041,7 +1081,7 @@

    Start Windup

    You are presented with the following prompt.

    -
    Using Windup at /home/username/windup-distribution-VERSION
    +
    Using Windup at WINDUP_HOME
     
      _       ___           __
     | |     / (_)___  ____/ /_  ______
    @@ -1050,9 +1090,9 @@ 

    Start Windup

    |__/|__/_/_/ /_/\__,_/\__,_/ .___/ /_/ -JBoss Windup, version [ VERSION ] - JBoss, by Red Hat, Inc. [ http://windup.jboss.org ] +JBoss Windup, version [ 2.0.0-VERSION ] - JBoss, by Red Hat, Inc. [ http://windup.jboss.org ] -[windup-distribution-VERSION]$
    +[windup-distribution-2.0.0-VERSION]$
  • @@ -1136,6 +1176,28 @@

    Start Windup

    +

    Run Windup in Batch Mode

    +
    +

    Windup can be also executed in batch mode within a shell or batch script using the --evaluate argument as follows.

    +
    +
    +
      +
    1. +

      Open a terminal and navigate to the WINDUP_HOME directory.

      +
    2. +
    3. +

      Type the following command to run Windup in batch mode:

      +
      +
      +
      For Linux:     $ bin/windup --evaluate "windup-migrate-app --input INPUT_ARCHIVE --output OUTPUT_REPORT --packages PACKAGE_1 PACKAGE_2 PACKAGE_N"
      +For Windows:   > bin\windup.bat --evaluate "windup-migrate-app --input INPUT_ARCHIVE --output OUTPUT_REPORT --packages PACKAGE_1 PACKAGE_2 PACKAGE_N"
      +
      +
      +
    4. +
    +
    +
    +

    Windup Help

    To see the list of available parameters for the windup-migrate-app command, execute the following command in the Windup prompt:

    @@ -1174,6 +1236,18 @@
    Archive Example
    +
    Windup Batch Example
    +
    +

    The following Windup batch command runs against the jee-example-app-1.0.0.ear EAR archive. It evaluates all com.acme and org.apache packages and creates a folder named 'jee-example-app-1.0.0.ear-report' in the /home/username/windup-reports/ directory to contain the reporting output.

    +
    +
    +
    +
    For Linux: $ bin/windup --evaluate "windup-migrate-app --input /home/username/windup-source/test-files/jee-example-app-1.0.0.ear/ --output /home/username/windup-reports/jee-example-app-1.0.0.ear-report --packages com.acme org.apache"
    +For Windows: > bin\windup.bat --evaluate "windup-migrate-app --input \windup-source\test-files\jee-example-app-1.0.0.ear --output \windup-reports\jee-example-app-1.0.0.ear-report --packages com.acme org.apache
    +
    +
    +
    +
    Windup Quickstart Examples

    For more concrete examples, see the Windup quickstarts located on GitHub here: https://github.com/windup/windup-quickstarts. If you prefer, you can download the 2.0.0.Alpha1 release ZIP or TAR distribution of the quickstarts.

    @@ -1710,32 +1784,51 @@

    What are Story Points?

    How to Estimate Story Points in a Rule

    -

    TODO: TBD.

    +

    Estimating story points for a rule can be tricky. The following are general guidelines or suggestions to use when estimating the level of effort required for a rule.

    -
    -

    Estimating story points for a rule can be tricky. The following are 'rules of thumb' or suggestions to use when estimating the level of effort required for a rule.

    + +++++ + + + + + + + + + + + + + + + + + + + + + + + + +
    Level of EffortStory PointsDescription

    Lift and Shift

    0

    The code or file is standards-based and requires no effort.

    Mapped

    1- 2 per file

    There is a standard mapping algorithm to port the code or file. The number of story points required is small, but dependent on the number of files to port.

    Custom

    5 - 20 per change or component

    +

    The number of story points required to modify and rewrite code depends on the complexity of the change, the number of unknown imports, the size of the files, and the number of components. The following are examples of how to estimate story points.

    • -

      The level of effort required for "Lift and Shift", which basically means the code or file is standards-based and can be ported to the new environment with no changes, would be '0' story points.

      +

      Port MyBatis to JPA: '20' story points per query.

    • -

      Changing a parameter name or value of units might be '2' story points. -This could contain relative examples like:

      -
    • -
    • -

      Porting a web page (or similar concept) from one web framework to another depends on the complexity and the number of components. You could estimate '20' story points per component.

      -
    • -
    • -

      Porting MyBatis to JPA: '20' story points per query.

      -
    • -
    • -

      When you don’t know if it will need a migration: Could depend on number of unknown imports, size -of the file, …​

      +

      Port a web page from one web framework to another depends on the complexity and the number of components involved in the migration. You could estimate '20' story points per component.

    -
    +
    @@ -2137,7 +2230,7 @@
    Create a Maven Project
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> <maven.compiler.source>1.7</maven.compiler.source> <maven.compiler.target>1.7</maven.compiler.target> - <version.windup>2.0.0.Beta3</version.windup> + <version.windup>2.0.0.VERSION</version.windup> <version.forge>2.12.1.Final</version.forge> </properties>
    @@ -3783,7 +3876,7 @@

    Windup Models

    The complete and up-to-date list of models is in Javadoc.

    -

    Windup Models Graphic

    +

    Windup Models Graphic

    Meta Models

    @@ -3820,7 +3913,7 @@

    Custom Models (coming from Addons) diff --git a/html/WindupUserGuide.html b/html/WindupUserGuide.html index fedd433af6..11f3b4304d 100644 --- a/html/WindupUserGuide.html +++ b/html/WindupUserGuide.html @@ -739,7 +739,7 @@

    How can you help?

    Write a short description of these problem migration areas.

  • -

    Write a brief guide describing how to solve the problem migration areas.

    +

    Write a brief overview describing how to solve the problem migration areas.

  • @@ -748,20 +748,36 @@

    How can you help?

    Try Windup on your application. Be sure to report any issues you encounter.

  • -

    Write an Windup rule to automate the migration process.

    +

    You can contribute Windup rules.

    • +

      Write a Windup rule add-on to automate a migration process.

      +
    • +
    • Create a test for the new rule.

    • +
    • +

      For details, see the Windup Rules Development Guide.

      +
  • -

    You can contribute Windup rules. For details, see the Windup Rules Development Guide.

    +

    You can also contribute to the project source code.

    +
    +
      +
    • +

      Create a core rule.

    • -

      You can also contribute to the project source code. See the Windup Core Development Guide for information about how to configure your environment and set up the project.

      +

      Improve performance or efficiency.

      +
    • +
    • +

      See the_Windup Core Development Guide_ for information about how to configure your environment and set up the project.

      +
    • +
    +
  • @@ -770,14 +786,27 @@

    How can you help?

    - +
    @@ -913,7 +942,7 @@

    Install Windup

    1. -

      Download the latest Windup ZIP distribution from http://repository.jboss.org/nexus/content/groups/public/org/jboss/windup/windup-distribution. This is currently windup-distribution-2.0.0.Beta6.

      +

      Download the latest Windup ZIP distribution from http://repository.jboss.org/nexus/content/groups/public/org/jboss/windup/windup-distribution. This is currently windup-distribution-2.0.0.Beta7.

    2. Extract the ZIP file in to a directory of your choice.

      @@ -935,8 +964,18 @@

      Install Windup

    Execute Windup

    -
    -

    These instructions are for users who run Windup using the tool extracted from the ZIP download.

    +
    + + + + + +
    +
    Note
    +
    +If you used previous versions of Windup, delete the ${user.home}/.forge/addons/ directory. Otherwise you may see errors like the following when you execute Windup: + Command: windup-migrate-app was not found +

    Prerequisites

    @@ -949,7 +988,8 @@

    Prerequisites

    Windup requires that you specify the fully qualified path of the application archive or folder you plan to migrate. This is passed using the --input argument on the command line.

  • -

    You must also specify the fully qualified path to a folder that will contain the resulting report information. If the folder does not exist, it is created by Windup. This path is passed using the --output argument on the command line.

    +

    You also specify the fully qualified path to a folder that will contain the resulting report information. If the folder does not exist, it is created by Windup. If the folder exists, it is deleted and recreated by Windup, so be careful not to specify a directory that contains important information! +This path is passed using the --output argument on the command line.

  • You must also provide a list of the application packages to be evaluated.

    @@ -993,7 +1033,7 @@

    Start Windup

    You are presented with the following prompt.

    -
    Using Windup at /home/username/windup-distribution-VERSION
    +
    Using Windup at WINDUP_HOME
     
      _       ___           __
     | |     / (_)___  ____/ /_  ______
    @@ -1002,9 +1042,9 @@ 

    Start Windup

    |__/|__/_/_/ /_/\__,_/\__,_/ .___/ /_/ -JBoss Windup, version [ VERSION ] - JBoss, by Red Hat, Inc. [ http://windup.jboss.org ] +JBoss Windup, version [ 2.0.0-VERSION ] - JBoss, by Red Hat, Inc. [ http://windup.jboss.org ] -[windup-distribution-VERSION]$
    +[windup-distribution-2.0.0-VERSION]$
  • @@ -1088,6 +1128,28 @@

    Start Windup

    +

    Run Windup in Batch Mode

    +
    +

    Windup can be also executed in batch mode within a shell or batch script using the --evaluate argument as follows.

    +
    +
    +
      +
    1. +

      Open a terminal and navigate to the WINDUP_HOME directory.

      +
    2. +
    3. +

      Type the following command to run Windup in batch mode:

      +
      +
      +
      For Linux:     $ bin/windup --evaluate "windup-migrate-app --input INPUT_ARCHIVE --output OUTPUT_REPORT --packages PACKAGE_1 PACKAGE_2 PACKAGE_N"
      +For Windows:   > bin\windup.bat --evaluate "windup-migrate-app --input INPUT_ARCHIVE --output OUTPUT_REPORT --packages PACKAGE_1 PACKAGE_2 PACKAGE_N"
      +
      +
      +
    4. +
    +
    +
    +

    Windup Help

    To see the list of available parameters for the windup-migrate-app command, execute the following command in the Windup prompt:

    @@ -1126,6 +1188,18 @@
    Archive Example
    +
    Windup Batch Example
    +
    +

    The following Windup batch command runs against the jee-example-app-1.0.0.ear EAR archive. It evaluates all com.acme and org.apache packages and creates a folder named 'jee-example-app-1.0.0.ear-report' in the /home/username/windup-reports/ directory to contain the reporting output.

    +
    +
    +
    +
    For Linux: $ bin/windup --evaluate "windup-migrate-app --input /home/username/windup-source/test-files/jee-example-app-1.0.0.ear/ --output /home/username/windup-reports/jee-example-app-1.0.0.ear-report --packages com.acme org.apache"
    +For Windows: > bin\windup.bat --evaluate "windup-migrate-app --input \windup-source\test-files\jee-example-app-1.0.0.ear --output \windup-reports\jee-example-app-1.0.0.ear-report --packages com.acme org.apache
    +
    +
    +
    +
    Windup Quickstart Examples

    For more concrete examples, see the Windup quickstarts located on GitHub here: https://github.com/windup/windup-quickstarts. If you prefer, you can download the 2.0.0.Alpha1 release ZIP or TAR distribution of the quickstarts.

    @@ -1528,7 +1602,7 @@

    Reporting Terms

    diff --git a/scripts/windupDocUpdate.sh b/scripts/windupDocUpdate.sh index 0359a2bcfc..2b7a26e22c 100755 --- a/scripts/windupDocUpdate.sh +++ b/scripts/windupDocUpdate.sh @@ -114,6 +114,7 @@ cp ../windup.wiki/Install-and-Configure-Maven.asciidoc docs/Install-and-Configur cp ../windup.wiki/Dev-Get-the-Windup-Source-Code.asciidoc docs/Dev-Get-the-Windup-Source-Code.adoc cp ../windup.wiki/Dev-Build-Windup-from-Source.asciidoc docs/Dev-Build-Windup-from-Source.adoc cp ../windup.wiki/Dev-Execute-Windup-Built-from-Source.asciidoc docs/Dev-Execute-Windup-Built-from-Source.adoc +cp ../windup.wiki/Execute-Windup.asciidoc docs/Execute-Windup.adoc cp ../windup.wiki/Review-the-Report.asciidoc docs/Review-the-Report.adoc ## Understand the Rule Processing