5.2.1 Ant, indispensable Ant
|
|
- Ronald Antony Singleton
- 5 years ago
- Views:
Transcription
1 5.2.1 Ant, indispensale Ant Apahe s Ant produt ( is a uild tool that lets you easily ompile and test appliations (among other things). It is the de fato standard for uilding Java appliations. One reason for Ant s popularity is that it is more than a tool: Ant is a framework for running tools. In addition to using Ant to onfigure and launh a Java ompiler, you an use it to generate ode, invoke JDBC queries, and, as you will see, run JUnit test suites. Like many modern projets, Ant is onfigured through an XML doument. This doument is referred to as the uildfile and is named uild.xml y default. The Ant uildfile desries eah task that you want to apply on your projet. A task might e ompiling Java soure ode, generating Javados, transferring files, querying dataases, or running tests. A uildfile an have several targets, or entry points, so that you an run a single task or hain several together. Let s look at using Ant to automatially run tests as part of the uild proess. If (gasp!) you don t have Ant installed, see the following sidears. For full details, onsult the Ant manual ( Installing Ant on Windows To install Ant on Windows, follow these steps: 1 Unzip the Zip distriution file to a diretory on your omputer system (for example, C:\Ant). 2 Under this diretory, Unzip reates a sudiretory for the Ant distriution you downloaded for example, C:\Ant\jakarta-ant Add an ANT_HOME variale to your environment with this diretory as the value. For example: Variale Name: ANT_HOME Variale Value: C:\Ant\jakarta-ant Edit your system s PATH environment variale to inlude the ANT_HOME\in folder: Variale Name: PATH Variale Value: %ANT_HOME%\in;
2 92 CHAPTER 5 Automating JUnit Installing Ant on Windows (ontinued) 4 We reommend that you also speify the loation of your Java Developer s Kit (JDK) as the JAVA_HOME environment variale: Variale Name: JAVA_HOME Variale Value: C:\j2sdk1.4.2 This value, like the others, may vary depending on where you installed the JDK on your system. 5 To enale Ant s JUnit task, you must put junit.jar in the ANT_HOME\li folder. Installing Ant on UNIX (ash) To install Ant on UNIX (or Linux), follow these steps: 1 Untar the Ant tarall to a diretory on your omputer system (for example, /opt/ant). 2 Under this diretory, tar reates a sudiretory for the Ant distriution you downloaded for example, /opt/ant/jakarta-ant Add this sudiretory to your environment as ANT_HOME. For example: export ANT_HOME=/opt/ant/jakarta-ant Add the ANT_HOME/in folder to your system s ommand path: export PATH=${PATH}:${ANT_HOME}/in 4 We reommend that you also speify the loation of your JDK as the JAVA_HOME environment variale: export JAVA_HOME=/usr/java/j2sdk To enale Ant s JUnit task, you must put junit.jar in the ANT_HOME/ li folder Ant targets, projets, properties, and tasks When you uild a software projet, you are often interested in more than just inary ode. For a final distriution, you may want to generate Javados along with the inary lasses. For an interim ompile during development, you may skip that step. Sometimes, you want to run a lean uild from srath. Other times, you want to uild the lasses that have hanged. To help you manage the uild proess, Ant lets you reate a uildfile for eah of your projets. The uildfile may have several targets, enapsulating the different
3 Running tests from Ant 93 tasks needed to reate your appliation and related resoures. To make the uildfiles easier to onfigure and reuse, Ant lets you define dynami property elements. These Ant essentials are as follows: Buildfile Eah uildfile is usually assoiated with a partiular development projet. Ant uses the projet XML tag as the outermost element in uild.xml. The projet element defines a projet. It also lets you speify a default target, so you an run Ant without any parameters. Target When you run Ant, you an speify one or more targets for it to uild. Targets an also delare that they depend on other targets. If you ask Ant to run one target, the uildfile might run several others first. This lets you reate a distriution target that depends on other targets like lean, ompile, javado, and war. Property elements Many of the targets within a projet will share the same settings. Ant lets you reate property elements to enapsulate speifi settings and reuse them throughout your uildfile. If a uildfile is arefully written, the property elements an make it easy to adapt the uildfile to a new environment. To refer to a property within a uildfile, you plae the property within a speial notation: ${property}. To refer to the property named target.dir, you would write ${target.dir}. As mentioned, Ant is not so muh a tool as a framework for running tools. You an use property elements to set the parameters a tool needs and a task to run the tool. A great numer of tasks ome undled with Ant, and you an also write your own. For more aout developing with Ant, we highly reommend Java Development with Ant. 2 Listing 5.1 shows the top of the uildfile for the sampling projet from hapter 3. This segment of the uildfile sets the default target and the properties your tasks will use. Listing 5.1 The Ant uildfile projet and property elements <projet name="sampling" default="test"> <property file="uild.properties"/> <property name="sr.dir" loation="sr"/> <property name="sr.java.dir" loation="${sr.dir}/java"/> d 2 Erik Hather and Steve Loughran, Java Development with Ant (Greenwih, CT: Manning, 2003);
4 94 CHAPTER 5 Automating JUnit <property name="sr.test.dir" loation="${sr.dir}/test"/> <property name="target.dir" loation="target"/> <property name="target.lasses.java.dir" loation="${target.dir}/lasses/java"/> <property name="target.lasses.test.dir" loation="${target.dir}/lasses/test"/> [...] e d e Give the projet the name sampling and set the default target to test. (The test target appears in listing 5.3.) You inlude a uild.properties file. This file ontains Ant properties that may need to e hanged on a user s system eause they depend on the exeuting environment. For example, these properties an inlude the loations of redistriutale jars. Beause programmers may store jars in different loations, it is good pratie to use a uild.properties file to define them. Many open soure projets provide a uild.properties.sample file you an opy as uild.properties and then edit to math your environment. For this projet, you won t need to define any properties in it. As you will see, your targets need to know the loation of your prodution and test soure ode. You use the Ant property task to define these values so that they an e reused and easily hanged. At d, you define properties related to the soure tree; at e, you define those related to the output tree (where the uild-generated files will go). Notie that you use different properties to define where the ompiled prodution and tests lasses will e put. Putting them in different diretories is a good pratie eause it allows you to easily pakage the prodution lasses in a jar without mixing test lasses. An interesting thing aout Ant properties is that they are immutale one they are set, they annot e modified. For example, if any properties are redefined after the uild.properties file is loaded, the new value is ignored. The first definition always wins The java task For simple jos, running the Java Compiler (java) from the ommand line is easy enough. But for multipakage produts, the are and feeding of java and your lasspath eomes a Herulean task. Ant s java task tames the ompiler and its lasspath, making uilding projets effortless and automati.
5 Running tests from Ant 95 The Ant java task is usually employed from within a target with a name like ompile. Before and after running the java task, you an perform any needed file management as part of the target. The java task lets you set any of the standard options, inluding the destination diretory. You an also supply a list of paths for your soure files. The latter is handy for projets with tests, eause you may tend to keep prodution lasses in one folder and test lasses in another. Listing 5.2 shows the ompile targets that all the Java Compiler for the sampling projet, oth for the prodution ode and for the test ode. Listing 5.2 The uildfile ompile targets <target name="ompile.java"> <mkdir dir="${target.lasses.java.dir}"/> <java destdir="${target.lasses.java.dir}"> <sr path="${sr.java.dir}"/> </java> <target name="ompile.test" depends="ompile.java"> <mkdir dir="${target.lasses.test.dir}"/> <java destdir="${target.lasses.test.dir}"> <sr path="${sr.test.dir}"/> <lasspath> <pathelement loation="${target.lasses.java.dir}"/> </lasspath> </java> d e <target name="ompile" depends="ompile.java,ompile.test"/> f g h d e f Delare the target to ompile the java prodution soures, naming it ompile.java. Ensure that the diretory where you will generate your prodution lass files exists. Ant resolves the property you set at the top of the uildfile (see listing 5.1) and inserts it in plae of the variale notation ${target.lasses.java.dir}. If the diretory already exists, Ant quietly ontinues. Call the Java Compiler (java) and pass it the destination diretory to use. Tell the java task what soures to ompile. Compile the test soures exatly the same way you just did for the prodution soures. Your ompile.test target has a dependeny on the ompile.java target, so you must add a depends element to that ompile.test target definition (depends="ompile.java"). You may have notied that you don t expliitly add the JUnit jar to the lasspath. Rememer that when you installed Ant, you put the JUnit
6 96 CHAPTER 5 Automating JUnit g h jar in ANT_HOME/li (this is neessary in order to use the junit Ant task). As a onsequene, junit.jar is already on your lasspath, and you don t need to speify it in the java task to properly ompile your tests. You need to add a nested lasspath element in order to add the prodution lasses you just ompiled to the lasspath. This is eause test lasses all prodution lasses. Create a ompile target that automatially alls the ompile.java and ompile.test targets The JUnit task In hapter 3, you ran the DefaultController tests y hand. That meant etween any hanges, you had to Compile the soure ode Run the TestDefaultController test ase against the ompiled lasses You an get Ant to perform oth these steps as part of the same uild target. Listing 5.3 shows the test target for the sampling uildfile. Listing 5.3 The uildfile test target <target name="test" depends="ompile"> <junit printsummary="yes" haltonerror="yes" haltonfailure="yes" fork="yes"> <formatter type="plain" usefile="false"/> d <test name="junitook.sampling.testdefaultcontroller"/> e <lasspath> f <pathelement loation="${target.lasses.java.dir}"/> <pathelement loation="${target.lasses.test.dir}"/> </lasspath> </junit> </projet> Give the target a name and delare that it relies on the ompile target. If you ask Ant to run the test target, it will run the ompile target efore running test. Here you get into the JUnit-speifi attriutes. The printsummary attriute says to render a one-line summary at the end of the test. By setting fork to yes, you fore Ant to use a separate Java Virtual Mahine (JVM) for eah test. This is always a good pratie as it avoids interferenes etween test ases. The haltonfailure and haltonerror attriutes say that the uild should stop if any test returns a
7 Running tests from Ant 97 d e f failure or an error (an error is an unexpeted error, whereas a failure happens if one of the test asserts does not pass). Configure the junit task formatter to use plain text and output the test result to the onsole. Provide the lass name of the test you want to run. Extend the lasspath to use for this task to inlude the lasses you just ompiled Putting Ant to the task Now that you ve assemled the uildfile, you an run it from the ommand line y hanging to your projet diretory and entering ant. Figure 5.1 shows what Ant renders in response. You an now uild and test the sampling projet all at the same time. If any of the tests fail, the haltonfailure/haltonerror settings will stop the uild, ringing the failure to your attention. Figure 5.1 Running the uildfile from the ommand line
8 98 CHAPTER 5 Automating JUnit Running optional tasks The junit task is one of several omponents undled in Ant s optional.jar. The optional.jar file should already e in your ANT_HOME/li diretory. Ant does not undle a opy of JUnit, so you must e sure that junit.jar is on your system lasspath or in the ANT_HOME/li diretory. (The optional.jar file is for tasks that depend on another pakage, like JUnit.) For more aout installing Ant, see the sidears on pages If you have any troule running the Ant uildfiles presented in this hapter, make sure the Ant optional.jar is in the ANT_HOME/li folder and junit.jar is either on your system lasspath or also in the ANT_HOME/li folder. The empty lasspath Given a tool like Ant, many developers don t other with a system lasspath anymore: You an let Ant take are of all that. Ant s lasspath element makes it easy to uild the lasspath you need when you need it. The only lind spot is the jars you need in order to run one of the optional Ant tasks, like junit. To provide the flexiility you need for other irumstanes, Ant uses Sun s delegation model to reate whatever lasspath you need at runtime. In the ase of the optional tasks, there s a ootstrap issue. To employ a task, whatever liraries a task needs must e on the same lasspath as the ode for the task. This means you need to load junit.jar in the same plae you load optional.jar. Meanwhile, you also need to load the task (and any external liraries) efore you an use the task in your uildfile. In short, you an t speify the path to junit.jar as part of the junit task. The simplest solution is to move junit.jar to ANT_HOME/li. There are alternative onfigurations, ut they are usually more troule than they are worth. 3 So, to keep a lean lasspath and use optional tasks like JUnit, you should move the jar for the external lirary to ANT_HOME/li. Ant will then automatially load optional.jar and the external liraries together, enaling use of the optional tasks in your uildfiles. Just rememer to update junit.jar in ANT_HOME/li whenever you install a new version of either Ant or JUnit Pretty printing with JUnitReport A report like the one in figure 5.1 is fine when you are running tests interatively. But what if you want to run a test suite and review the results later? For 3 Ant 1.6 will let you put optional task jars in plaes other than ANT_HOME/li.
9 Running tests from Ant 99 Figure 5.2 Output of the junitreport Ant task example, the tests might e run automatially every day y a ron jo (whether you liked it or not!). Another optional Ant task, junitreport, is designed to output the result of the tests as XML. To finish the jo, junitreport renders the XML into HTML using an XSL stylesheet. The result is an attrative and funtional report that you (or your oss) an peruse with any rowser. A junitreport page for the sampling projet is shown in figure 5.2. Listing 5.4 shows the hanges (in old) neessary in the uildfile to generate this report. To exeute the sript, type ant report on the ommand line in the sampling projet. Listing 5.4 Adding a JUnitReport task to the uildfile <projet name="sampling" default="test"> [...] <property name="target.report.dir" loation="${target.dir}/report"/> [...] <target name="test" depends="ompile"> <mkdir dir="${target.report.dir}"/> <junit printsummary="yes" haltonerror="yes" haltonfailure="yes" fork="yes"> <formatter type="plain" usefile="false"/> <formatter type="xml"/> d <test name="junitook.sampling.testdefaultcontroller"
10 100 CHAPTER 5 Automating JUnit todir="${target.report.dir}"/> <lasspath> <pathelement loation="${target.lasses.java.dir}"/> <pathelement loation="${target.lasses.test.dir}"/> </lasspath> </junit> <target name="report" depends="test"> <mkdir dir="${target.report.dir}/html"/> <junitreport todir="${target.report.dir}"> <fileset dir="${target.report.dir}"> <inlude name="test-*.xml"/> </fileset> <report todir="${target.report.dir}/html"/> </junitreport> </projet> e i f g h j d e f g h i j Define a property holding the target loation where your reports will e generated. Create that diretory. You need to modify the junit task so that it outputs the test results as XML. The junitreport task works y transforming the XML test result into an HTML report. Tell the junit task to reate a report file in the ${target.report.dir} diretory. Introdue a new report target that generates the HTML report. You egin y reating the diretory where the HTML will e generated. Call the junitreport task to reate the report. The junitreport task works y sanning the list of XML test results you speify as an Ant fileset. Tell the junitreport task where to generate the HTML report Automatially finding the tests to run The uildfile you have written is using the test element of the junit task to tell JUnit what test to exeute. Although this is fine when there are only a few test ases, it eomes tiresome when your test suite grows. The iggest issue then eomes ensuring that you haven t forgotten to inlude a test in the uildfile. Fortunately, the junit task has a onvenient athtest element that lets you speify test ases using wildards. Listing 5.5 shows how to use it (hanges from listing 5.4 are shown in old).
11 Running tests from Ant 101 Listing 5.5 A etter uildfile using athtest <projet name="sampling" default="test"> [...] <target name="test" depends="ompile"> <mkdir dir="${target.report.dir}"/> <property name="tests" value="test*"/> <junit printsummary="yes" haltonerror="yes" haltonfailure="yes" fork="yes"> <formatter type="plain" usefile="false"/> <formatter type="xml"/> <athtest todir="${target.report.dir}"> <fileset dir="${sr.test.dir}"> <inlude name="**/${tests}.java"/> <exlude name="**/test*all.java"/> </fileset> </athtest> <lasspath> <pathelement loation="${target.lasses.java.dir}"/> <pathelement loation="${target.lasses.test.dir}"/> </lasspath> </junit> [...] <target name="lean"> <delete dir="${target.dir}"/> d </projet> You may wonder why you define a property here when you ould have put the wildards diretly into the fileset element at. Using this trik, you an define the tests property on the ommand line and run a single test (or a speifi set of tests) instead. This is an easy way to run a test against the lass you are working on right now. Of ourse, one it s working, you still run the full test suite to e sure everyone is on the same page. Here is an example that only exeutes the TestDefaultController test ase: d ant Dtests=TestDefaultController test You improve the uildfile y making the test target more flexile. Whereas efore you had to expliitly name the different tests you wanted to exeute, here you leverage the junit task s nested athtest element. With athtest, you an speify the test to run as a fileset, thus allowing the use of wildards. Add the always-useful lean target to remove all uild-generated files. Doing so lets you start with a fresh uild with no side effets from osolete lasses. Typially, a dist target that generates the projet distriutale depends on the lean target.
12 102 CHAPTER 5 Automating JUnit Are automated unit tests a panaea? Asolutely not! Automated tests an find a signifiant numer of ugs, ut manual testing is still required to find as many ugs as possile. In general, automated regression tests ath 15 30% of all ugs found; manual testing finds the other 70 85% ( Are you sure aout that? Some test-first design / unit testing enthusiasts are now reporting remarkaly low numers of ug ounts, on the order of one or two per month or fewer. But these results need to e sustantiated y formal studies and repliated y other teams. Your mileage will definitely vary.
Connection Guide. Installing the printer locally (Windows) What is local printing? Installing the printer using the Software and Documentation CD
Connetion Guide Page 1 of 5 Connetion Guide Installing the printer loally (Windows) Note: If the Software and Doumentation CD does not support the operating system, you must use the Add Printer Wizard.
More informationXML Data Streams. XML Stream Processing. XML Stream Processing. Yanlei Diao. University of Massachusetts Amherst
XML Stream Proessing Yanlei Diao University of Massahusetts Amherst XML Data Streams XML is the wire format for data exhanged online. Purhase orders http://www.oasis-open.org/ommittees/t_home.php?wg_abbrev=ubl
More informationConnection Guide. Installing the printer locally (Windows) What is local printing? Installing the printer using the Software and Documentation CD
Page 1 of 7 Connetion Guide Installing the printer loally (Windows) Note: When installing a loally attahed printer, if the operating system is not supported y the Software and Doumentation CD, then the
More informationOvidSP Quick Reference Card
OvidSP Quik Referene Card Searh in any of several dynami modes, ombine results, apply limits, use improved researh tools, develop strategies, save searhes, set automati alerts and RSS feeds, share results...
More informationConnection Guide. Supported operating systems. Installing the printer using the Software and Documentation CD. Connection Guide
Connetion Guide Page 1 of 6 Connetion Guide Supported operating systems Using the software CD, you an install the printer software on the following operating systems: Windows 8.1 Windows Server 2012 R2
More informationCSE 403 Lecture 11. Static Code Analysis. Reading: IEEE Xplore, "Using Static Analysis to Find Bugs"
CSE 403 Lecture 11 Static Code Analysis Reading: IEEE Xplore, "Using Static Analysis to Find Bugs" slides created by Marty Stepp http://www.cs.washington.edu/403/ FindBugs FindBugs: Java static analysis
More informationCA Agile Requirements Designer 2.x Implementation Proven Professional Exam (CAT-720) Study Guide Version 1.0
Exam (CAT-720) Study Guide Version 1.0 PROPRIETARY AND CONFIDENTIAL INFORMATION 2017 CA. All rights reserved. CA onfidential & proprietary information. For CA, CA Partner and CA Customer use only. No unauthorized
More informationPath Sharing and Predicate Evaluation for High-Performance XML Filtering*
Path Sharing and Prediate Evaluation for High-Performane XML Filtering Yanlei Diao, Mihael J. Franklin, Hao Zhang, Peter Fisher EECS, University of California, Berkeley {diaoyl, franklin, nhz, fisherp}@s.erkeley.edu
More informationMachine Vision. Laboratory Exercise Name: Student ID: S
Mahine Vision 521466S Laoratory Eerise 2011 Name: Student D: General nformation To pass these laoratory works, you should answer all questions (Q.y) with an understandale handwriting either in English
More informationCA Release Automation 5.x Implementation Proven Professional Exam (CAT-600) Study Guide Version 1.1
Exam (CAT-600) Study Guide Version 1.1 PROPRIETARY AND CONFIDENTIAL INFORMATION 2016 CA. All rights reserved. CA onfidential & proprietary information. For CA, CA Partner and CA Customer use only. No unauthorized
More informationIncremental Mining of Partial Periodic Patterns in Time-series Databases
CERIAS Teh Report 2000-03 Inremental Mining of Partial Periodi Patterns in Time-series Dataases Mohamed G. Elfeky Center for Eduation and Researh in Information Assurane and Seurity Purdue University,
More informationLearning Convention Propagation in BeerAdvocate Reviews from a etwork Perspective. Abstract
CS 9 Projet Final Report: Learning Convention Propagation in BeerAdvoate Reviews from a etwork Perspetive Abstrat We look at the way onventions propagate between reviews on the BeerAdvoate dataset, and
More informationWORKSHOP 20 CREATING PCL FUNCTIONS
WORKSHOP 20 CREATING PCL FUNCTIONS WS20-1 WS20-2 Problem Desription This exerise involves reating two PCL funtions that an be used to easily hange the view of a model. The PCL funtions are reated by reording
More informationCOMP 181. Prelude. Intermediate representations. Today. Types of IRs. High-level IR. Intermediate representations and code generation
Prelude COMP 181 Intermediate representations and ode generation November, 009 What is this devie? Large Hadron Collider What is a hadron? Subatomi partile made up of quarks bound by the strong fore What
More informationMATH STUDENT BOOK. 12th Grade Unit 6
MATH STUDENT BOOK 12th Grade Unit 6 Unit 6 TRIGONOMETRIC APPLICATIONS MATH 1206 TRIGONOMETRIC APPLICATIONS INTRODUCTION 3 1. TRIGONOMETRY OF OBLIQUE TRIANGLES 5 LAW OF SINES 5 AMBIGUITY AND AREA OF A TRIANGLE
More informationOutline. CS38 Introduction to Algorithms. Administrative Stuff. Administrative Stuff. Motivation/Overview. Administrative Stuff
Outline CS38 Introdution to Algorithms Leture 1 April 1, 2014 administrative stuff motivation and overview of the ourse stale mathings example graphs, representing graphs graph traversals (BFS, DFS) onnetivity,
More informationCA Test Data Manager 4.x Implementation Proven Professional Exam (CAT-681) Study Guide Version 1.0
Implementation Proven Professional Study Guide Version 1.0 PROPRIETARY AND CONFIDENTIAL INFORMATION 2017 CA. All rights reserved. CA onfidential & proprietary information. For CA, CA Partner and CA Customer
More informationrepresent = as a finite deimal" either in base 0 or in base. We an imagine that the omputer first omputes the mathematial = then rounds the result to
Sientifi Computing Chapter I Computer Arithmeti Jonathan Goodman Courant Institute of Mathemaial Sienes Last revised January, 00 Introdution One of the many soures of error in sientifi omputing is inexat
More informationReading Object Code. A Visible/Z Lesson
Reading Objet Code A Visible/Z Lesson The Idea: When programming in a high-level language, we rarely have to think about the speifi ode that is generated for eah instrution by a ompiler. But as an assembly
More informationChapter 2: Introduction to Maple V
Chapter 2: Introdution to Maple V 2-1 Working with Maple Worksheets Try It! (p. 15) Start a Maple session with an empty worksheet. The name of the worksheet should be Untitled (1). Use one of the standard
More informationDirectory structure and development environment set up
Directory structure and development environment set up 1. Install ANT: Download & unzip (or untar) the ant zip file - jakarta-ant-1.5.1-bin.zip to a directory say ANT_HOME (any directory is fine) Add the
More information1 Disjoint-set data structure.
CS 124 Setion #4 Union-Fin, Greey Algorithms 2/20/17 1 Disjoint-set ata struture. 1.1 Operations Disjoint-set ata struture enale us to effiiently perform operations suh as plaing elements into sets, querying
More informationthe machine and check the components Basic User s Guide
Quik Setup Guide Start Here MFC-7860DW Please read the Safety and Legal ooklet first efore you set up your mahine. Then, please read this Quik Setup Guide for the orret setup and installation. To view
More information1. The collection of the vowels in the word probability. 2. The collection of real numbers that satisfy the equation x 9 = 0.
C HPTER 1 SETS I. DEFINITION OF SET We begin our study of probability with the disussion of the basi onept of set. We assume that there is a ommon understanding of what is meant by the notion of a olletion
More informationReading Object Code. A Visible/Z Lesson
Reading Objet Code A Visible/Z Lesson The Idea: When programming in a high-level language, we rarely have to think about the speifi ode that is generated for eah instrution by a ompiler. But as an assembly
More informationExploring the Commonality in Feature Modeling Notations
Exploring the Commonality in Feature Modeling Notations Miloslav ŠÍPKA Slovak University of Tehnology Faulty of Informatis and Information Tehnologies Ilkovičova 3, 842 16 Bratislava, Slovakia miloslav.sipka@gmail.om
More informationEXODUS II: A Finite Element Data Model
SAND92-2137 Unlimited Release Printed November 1995 Distribution Category UC-705 EXODUS II: A Finite Element Data Model Larry A. Shoof, Vitor R. Yarberry Computational Mehanis and Visualization Department
More informationUnit Tests. Unit Testing. What to Do in Unit Testing? Who Does it? 4 tests (test types) You! as a programmer
Unit Tests Unit Testing Verify that each program unit works as it is intended and expected along with the system specification. Units to be tested: classes (methods in each class) in OOPLs User requirements
More informationCA PPM 14.x Implementation Proven Professional Exam (CAT-222) Study Guide Version 1.2
CA PPM 14.x Implementation Proven Professional Exam (CAT-222) Study Guide Version 1.2 PROPRIETARY AND CONFIDENTIAL INFMATION 2016 CA. All rights reserved. CA onfidential & proprietary information. For
More informationRuntime Support for OOLs Part II Comp 412
COMP 412 FALL 2017 Runtime Support for OOLs Part II Comp 412 soure IR Front End Optimizer Bak End IR target Copright 2017, Keith D. Cooper & Linda Torzon, all rights reserved. Students enrolled in Comp
More informationPathRings. Manual. Version 1.0. Yongnan Zhu December 16,
PathRings Version 1.0 Manual Yongnan Zhu E-mail: yongnan@umb.edu Deember 16, 2014-1 - PathRings This tutorial introdues PathRings, the user interfae and the interation. For better to learn, you will need
More informationInterconnection Styles
Interonnetion tyles oftware Design Following the Export (erver) tyle 2 M1 M4 M5 4 M3 M6 1 3 oftware Design Following the Export (Client) tyle e 2 e M1 M4 M5 4 M3 M6 1 e 3 oftware Design Following the Export
More informationA Compressed Breadth-First Search for Satisfiability
A Compressed Breadth-First Searh for Satisfiaility DoRon B. Motter and Igor L. Markov Department of EECS, University of Mihigan, 1301 Beal Ave, Ann Aror, MI 48109-2122 dmotter, imarkov @ees.umih.edu Astrat.
More informationAccelerating Multiprocessor Simulation with a Memory Timestamp Record
Aelerating Multiproessor Simulation with a Memory Timestamp Reord Kenneth Barr Heidi Pan Mihael Zhang Krste Asanovi Marh, 5 Massahusetts Institute of Tehnology Intelligent sampling gives est speed-auray
More informationRS485 Transceiver Component
RS485 Transeiver Component Publiation Date: 2013/3/25 XMOS 2013, All Rights Reserved. RS485 Transeiver Component 2/12 Table of Contents 1 Overview 3 2 Resoure Requirements 4 3 Hardware Platforms 5 3.1
More informationEfficient and scalable trie-based algorithms for computing set containment relations
Effiient and salale trie-ased algorithms for omputing set ontainment relations Yongming Luo #1, George H. L. Flether #2, Jan Hidders 3, Paul De Bra #4 # Eindhoven University of Tehnology, The Netherlands
More informationTest Case Generation from UML State Machines
Test Case Generation from UML State Mahines Dirk Seifert Loria Université Nany 2 Campus Sientifique, BP 239 F-54506 Vandoeuvre lès Nany edex Dirk.Seifert@Loria.fr inria-00268864, version 2-23 Apr 2008
More informationStarter Kit B80 User Guide. Version: 01 DocId: Starter_Kit_B80_v01. User Guide
Starter Kit B80 User Guide Version: 01 DoId: Starter_Kit_B80_v01 User Guide User Guide: Starter Kit B80 User Guide Version: 01 Date: 2012-08-14 DoId: Status Starter_Kit_B80_v01 GENERAL NOTE THE USE OF
More informationGraphs in L A TEX. Robert A. Beeler. January 8, 2017
Graphs in L A TEX Robert A. Beeler January 8, 2017 1 Introdution This doument is to provide a quik and dirty guide for building graphs in L A TEX. Muh of the doument is devoted to examples of things that
More informationCA Privileged Identity Manager r12.x (CA ControlMinder) Implementation Proven Professional Exam (CAT-480) Study Guide Version 1.5
Proven Professional Exam (CAT-480) Study Guide Version 1.5 PROPRIETARY AND CONFIDENTIAL INFORMATION 2016 CA. All rights reserved. CA onfidential & proprietary information. For CA, CA Partner and CA Customer
More informationSystem-Level Parallelism and Throughput Optimization in Designing Reconfigurable Computing Applications
System-Level Parallelism and hroughput Optimization in Designing Reonfigurable Computing Appliations Esam El-Araby 1, Mohamed aher 1, Kris Gaj 2, arek El-Ghazawi 1, David Caliga 3, and Nikitas Alexandridis
More informationAutomated Test Generation from Vulnerability Signatures
Automated Test Generation from Vulneraility Signatures Adulaki Aydin, Muath Alkhalaf, and Tevfik Bultan Computer Siene Department University of California, Santa Barara Email: {aki,muath,ultan}@s.us.edu
More informationLesson 2: Right Triangle Trigonometry
Lesson : Right Triangle Trigonometry lthough Trigonometry is used to solve many prolems, historially it was first applied to prolems that involve a right triangle. This an e extended to non-right triangles
More informationZDT -A Debugging Program for the Z80
ZDT -A Debugging Program for the Z80 il I,, 1651 Third Ave.. New York, N.Y. 10028 (212) 860-o300 lnt'l Telex 220501 ZOT - A DEBUGGING PROGRAM FOR THE ZAO Distributed by: Lifeboat Assoiates 1651 Third Avenue
More informationMultiple Assignments
Two Outputs Conneted Together Multiple Assignments Two Outputs Conneted Together if (En1) Q
More informationDSB-Mini User Guide. Version: 02 DocId: dsb-mini_ug_v02. User Guide
DSB-Mini User Guide Version: 02 DoId: dsb-mini_ug_v02 User Guide User Guide: DSB-Mini User Guide Version: 02 Date: 2012-10-09 DoId: Status dsb-mini_ug_v02 GENERAL NOTE THE USE OF THE PRODUCT INCLUDING
More informationPROJECT PERIODIC REPORT
FP7-ICT-2007-1 Contrat no.: 215040 www.ative-projet.eu PROJECT PERIODIC REPORT Publishable Summary Grant Agreement number: ICT-215040 Projet aronym: Projet title: Enabling the Knowledge Powered Enterprise
More informationFigure 1. LBP in the field of texture analysis operators.
L MEHODOLOGY he loal inary pattern (L) texture analysis operator is defined as a gray-sale invariant texture measure, derived from a general definition of texture in a loal neighorhood. he urrent form
More informationMake your process world
Automation platforms Modion Quantum Safety System Make your proess world a safer plae You are faing omplex hallenges... Safety is at the heart of your proess In order to maintain and inrease your ompetitiveness,
More informationPackaging Your Program into a Distributable JAR File
Colin Kincaid Handout #5 CS 106A August 8, 2018 Packaging Your Program into a Distributable JAR File Based on a handout by Eric Roberts and Brandon Burr Now that you ve written all these wonderful programs,
More informationCleanUp: Improving Quadrilateral Finite Element Meshes
CleanUp: Improving Quadrilateral Finite Element Meshes Paul Kinney MD-10 ECC P.O. Box 203 Ford Motor Company Dearborn, MI. 8121 (313) 28-1228 pkinney@ford.om Abstrat: Unless an all quadrilateral (quad)
More informationMining Edge-Weighted Call Graphs to Localise Software Bugs
Mining Edge-Weighted Call Graphs to Loalise Software Bugs Frank Eihinger, Klemens Böhm, and Matthias Huer Institute for Program Strutures and Data Organisation (IPD), Universität Karlsruhe (TH), Germany
More informationCA API Management 8.x Implementation Proven Professional Exam (CAT-560) Study Guide Version 1.1
Exam (CAT-560) Study Guide Version 1.1 PROPRIETARY AND CONFIDENTIAL INFORMATION 2016 CA. All rights reserved. CA onfidential & proprietary information. For CA, CA Partner and CA Customer use only. No unauthorized
More informationTLP 350CV Setup Guide
TLP 350V Setup Guide The Extron TouhLink 3.5 inh able ubby TLP 350V provide users with aess to AV onnetivity using onvenient pullout ables. It also provides simple and versatile onfiguration and ontrol
More informationCA Identity Suite 14.x Implementation Proven Professional Exam (CAT-760) Study Guide Version 1.1
Study Guide Version 1.1 PROPRIETARY AND CONFIDENTIAL INFORMATION 2018 CA. All rights reserved. CA onfidential & proprietary information. For CA, CA Partner and CA Customer use only. No unauthorized use,
More informationSAND Unlimited Release Printed November 1995 Updated November 29, :26 PM EXODUS II: A Finite Element Data Model
SAND92-2137 Unlimited Release Printed November 1995 Updated November 29, 2006 12:26 PM EXODUS II: A Finite Element Data Model Gregory D. Sjaardema (updated version) Larry A. Shoof, Vitor R. Yarberry Computational
More informationCA PPM 15.x Proven Implementation Professional Exam (CAT-223) Study Guide Version 1.3
CA PPM 15.x Proven Implementation Professional Exam (CAT-223) Study Guide Version 1.3 PROPRIETARY AND CONFIDENTIAL INFORMATION 2018 CA. All rights reserved. CA onfidential & proprietary information. For
More informationCA Privileged Access Manager 3.x Proven Implementation Professional Exam (CAT-661) Study Guide Version 1.0
Exam (CAT-661) Study Guide Version 1.0 PROPRIETARY AND CONFIDENTIAL INFMATION 2018 CA. All rights reserved. CA onfidential & proprietary information. For CA, CA Partner and CA Customer use only. No unauthorized
More informationQuality-Driven Build Scripts for Java Applications. Duy (uu-eee) B. Vo Graduate Student San José State University Department of Computer Science
Quality-Driven Build Scripts for Java Applications Duy (uu-eee) B. Vo Graduate Student San José State University Department of Computer Science Some Measures of a Quality Software Product Is the product
More informationIntroductory Programming, IMM, DTU Systematic Software Test. Software test (afprøvning) Motivation. Structural test and functional test
Introdutory Programming, IMM, DTU Systemati Software Test Peter Sestoft a Programs often ontain unintended errors how do you find them? Strutural test Funtional test Notes: Systemati Software Test, http://www.dina.kvl.dk/
More informationIt has been an exciting summer for
Another Look at CGIDEV2 By Martin Cytrynbaum It has been an exiting summer for the CGIDEV2 web toolkit as its support and development has moved from IBM Italy to the iseries Client Tehnology Center in
More informationCompilation Lecture 11a. Register Allocation Noam Rinetzky. Text book: Modern compiler implementation in C Andrew A.
Compilation 0368-3133 Leture 11a Text book: Modern ompiler implementation in C Andrew A. Appel Register Alloation Noam Rinetzky 1 Registers Dediated memory loations that an be aessed quikly, an have omputations
More information1 The Knuth-Morris-Pratt Algorithm
5-45/65: Design & Analysis of Algorithms September 26, 26 Leture #9: String Mathing last hanged: September 26, 27 There s an entire field dediated to solving problems on strings. The book Algorithms on
More informationCA Unified Infrastructure Management 8.x Implementation Proven Professional Exam (CAT-540) Study Guide Version 1.1
Management 8.x Implementation Proven Professional Exam (CAT-540) Study Guide Version 1.1 PROPRIETARY AND CONFIDENTIAL INFORMATION 2017 CA. All rights reserved. CA onfidential & proprietary information.
More informationOutline: Software Design
Outline: Software Design. Goals History of software design ideas Design priniples Design methods Life belt or leg iron? (Budgen) Copyright Nany Leveson, Sept. 1999 A Little History... At first, struggling
More informationAutomatic Physical Design Tuning: Workload as a Sequence Sanjay Agrawal Microsoft Research One Microsoft Way Redmond, WA, USA +1-(425)
Automati Physial Design Tuning: Workload as a Sequene Sanjay Agrawal Mirosoft Researh One Mirosoft Way Redmond, WA, USA +1-(425) 75-357 sagrawal@mirosoft.om Eri Chu * Computer Sienes Department University
More informationCUTTING FORCES AND CONSECUTIVE DEFORMATIONS AT MILLING PARTS WITH THIN WALLS
Proeedings of the International Conferene on Manufaturing Systems ICMaS Vol. 4, 2009, ISSN 1842-3183 University POLITEHNICA of Buharest, Mahine and Manufaturing Systems Department Buharest, Romania CUTTING
More informationAlgorithms for External Memory Lecture 6 Graph Algorithms - Weighted List Ranking
Algorithms for External Memory Leture 6 Graph Algorithms - Weighted List Ranking Leturer: Nodari Sithinava Sribe: Andi Hellmund, Simon Ohsenreither 1 Introdution & Motivation After talking about I/O-effiient
More informationRecursion examples: Problem 2. (More) Recursion and Lists. Tail recursion. Recursion examples: Problem 2. Recursion examples: Problem 3
Reursion eamples: Problem 2 (More) Reursion and s Reursive funtion to reverse a string publi String revstring(string str) { if(str.equals( )) return str; return revstring(str.substring(1, str.length()))
More informationIntroduction to the SQL Server Platform
Chapter 1 Introdution to the SQL Server Platform In This Chapter SQL Server Editions SQL Server What s in the Box? Operating System Platforms SQL Server Doumentation and Sample Databases SQL Server Resoures,
More informationOn - Line Path Delay Fault Testing of Omega MINs M. Bellos 1, E. Kalligeros 1, D. Nikolos 1,2 & H. T. Vergos 1,2
On - Line Path Delay Fault Testing of Omega MINs M. Bellos, E. Kalligeros, D. Nikolos,2 & H. T. Vergos,2 Dept. of Computer Engineering and Informatis 2 Computer Tehnology Institute University of Patras,
More informationAbout the Tutorial. Audience. Prerequisites. Disclaimer & Copyright. Jenkins
About the Tutorial Jenkins is a powerful application that allows continuous integration and continuous delivery of projects, regardless of the platform you are working on. It is a free source that can
More informationTotal 100
CS331 SOLUTION Problem # Points 1 10 2 15 3 25 4 20 5 15 6 15 Total 100 1. ssume you are dealing with a ompiler for a Java-like language. For eah of the following errors, irle whih phase would normally
More informationAn Event Display for ATLAS H8 Pixel Test Beam Data
An Event Display for ATLAS H8 Pixel Test Beam Data George Gollin Centre de Physique des Partiules de Marseille and University of Illinois April 17, 1999 g-gollin@uiu.edu An event display program is now
More informationThe recursive decoupling method for solving tridiagonal linear systems
Loughborough University Institutional Repository The reursive deoupling method for solving tridiagonal linear systems This item was submitted to Loughborough University's Institutional Repository by the/an
More informationHEXA: Compact Data Structures for Faster Packet Processing
Washington University in St. Louis Washington University Open Sholarship All Computer Siene and Engineering Researh Computer Siene and Engineering Report Number: 27-26 27 HEXA: Compat Data Strutures for
More informationTavultesoft Keyboard Manager. User s Guide and Reference. Tavultesoft
Tavultesoft Keyboard Manager User s Guide and Referene VERSION 4.0 Tavultesoft This doumentation may be freely opied, but the opyright notie must not be altered or removed. No part of this doumentation
More information11 Using JUnit with jgrasp
11 Using JUnit with jgrasp jgrasp includes an easy to use plug-in for the JUnit testing framework. JUnit provides automated support for unit testing of Java source code, and its utility has made it a de
More informationMulti-Level Modeling of Concurrent and Distributed Systems
Multi-Level Modeling of Conurrent and Distriuted Systems Peter Taeling Hasso-Plattner-Institute for Software Systems Engineering P.O. Box 90 04 60, 14440 Potsdam, Germany taeling@hpi.uni-potsdam.de strat
More informationCA Single Sign-On 12.x Proven Implementation Professional Exam (CAT-140) Study Guide Version 1.5
Study Guide Version 1.5 PROPRIETARY AND CONFIDENTIAL INFORMATION 2018 CA. All rights reserved. CA onfidential & proprietary information. For CA, CA Partner and CA Customer use only. No unauthorized use,
More informationAN INTRODUCTION TO FORTRAN AND NUMERICAL MODELING
AN INTRODUCTION TO FORTRAN AND NUMERICAL MODELING Dr. L. W. Shwartz Department of Mehanial Engineering University of Delaware September, 2000 INTRODUCTION The first part of this short doument ontains a
More informationAN INTRODUCTION TO PERFORMANCE TESTING USING JMETER
AN INTRODUCTION TO PERFORMANCE TESTING USING JMETER D eveloping online applications? Worried about performance? You should consider adding JMeter to your testing toolbox. In this tutorial, we re going
More informationDesign Patterns. Patterns.mkr Page 223 Wednesday, August 25, :17 AM
Patterns.mkr Page 223 Wednesday, August 25, 1999 2:17 AM Design Patterns n the earlier hapters, we have seen that a entral goal of objet-oriented programming is the support of ode reuse. This hapter examines
More informationCA Service Desk Manager 14.x Implementation Proven Professional Exam (CAT-181) Study Guide Version 1.3
Exam (CAT-181) Study Guide Version 1.3 PROPRIETARY AND CONFIDENTIAL INFORMATION 2017 CA. All rights reserved. CA onfidential & proprietary information. For CA, CA Partner and CA Customer use only. No unauthorized
More information8 Instruction Selection
8 Instrution Seletion The IR ode instrutions were designed to do exatly one operation: load/store, add, subtrat, jump, et. The mahine instrutions of a real CPU often perform several of these primitive
More informationENGINEERING update FOR 2.0 PRINTGEN. A C Page 1 of 120 PRINTGEN. Engineering Update (DAA -170)
o ENGINEERING update FOR 2.0 A-09-01159-01-C Page 1 of 120 Speifiations Subjet to Change. Convergent Tehnologies and NGEN are registered trademarks of Convergent Tehnologies, In. Convergent, CT-DBMS, CT-MAIL,
More informationNONLINEAR BACK PROJECTION FOR TOMOGRAPHIC IMAGE RECONSTRUCTION. Ken Sauer and Charles A. Bouman
NONLINEAR BACK PROJECTION FOR TOMOGRAPHIC IMAGE RECONSTRUCTION Ken Sauer and Charles A. Bouman Department of Eletrial Engineering, University of Notre Dame Notre Dame, IN 46556, (219) 631-6999 Shool of
More informationReducing Runtime Complexity of Long-Running Application Services via Dynamic Profiling and Dynamic Bytecode Adaptation for Improved Quality of Service
Reduing Runtime Complexity of Long-Running Appliation Servies via Dynami Profiling and Dynami Byteode Adaptation for Improved Quality of Servie ABSTRACT John Bergin Performane Engineering Laboratory University
More informationUCSB Math TI-85 Tutorials: Basics
3 UCSB Math TI-85 Tutorials: Basis If your alulator sreen doesn t show anything, try adjusting the ontrast aording to the instrutions on page 3, or page I-3, of the alulator manual You should read the
More informationLukáš Asník. Software Development & Monitoring Tools (NSWI126)
Lukáš Asník Software Development & Monitoring Tools (NSWI126) Contents tasks , , conditionally processed targets attributes if and unless properties in external files dependencies
More informationSCREEN LAYOUT AND HANDLING
Sreen layout & handling SCREEN LAYOUT AND HANDLING Generally, 7-1 Keyboard shortuts, 7-3 Keyboard Must Know, 7-5 Generally It is not intended that the manual or on-line Help should replae knowledge of
More informationBackground/Review on Numbers and Computers (lecture)
Bakground/Review on Numbers and Computers (leture) ICS312 Mahine-Level and Systems Programming Henri Casanova (henri@hawaii.edu) Numbers and Computers Throughout this ourse we will use binary and hexadeimal
More informationEffecting Parallel Graph Eigensolvers Through Library Composition
Effeting Parallel Graph Eigensolvers Through Library Composition Alex Breuer, Peter Gottshling, Douglas Gregor, Andrew Lumsdaine Open Systems Laboratory Indiana University Bloomington, IN 47405 {abreuer,pgottsh,dgregor,lums@osl.iu.edu
More informationActive Compliant Motion Control for Grinding Robot
Proeedings of the 17th World Congress The International Federation of Automati Control Ative Compliant Motion Control for Grinding Robot Juyi Park*, Soo Ho Kim* and Sungkwun Kim** *Daewoo Shipbuilding
More informationOne suite that suits them all
One suite that suits them all Leif Frenzel andrena objects ag leif@andrena.de Marc Philipp andrena objects ag marc@andrena.de Once upon a time Once upon a time... in an IT office... This page is intentionally
More informationThe Happy Ending Problem
The Happy Ending Problem Neeldhara Misra STATUTORY WARNING This doument is a draft version 1 Introdution The Happy Ending problem first manifested itself on a typial wintery evening in 1933 These evenings
More informationAn Introduction to Ant
An Introduction to Ant Overview What is Ant? Installing Ant Anatomy of a build file Projects Properties Targets Tasks Example build file Running a build file What is Ant? Ant is a Java based tool for automating
More informationThis fact makes it difficult to evaluate the cost function to be minimized
RSOURC LLOCTION N SSINMNT In the resoure alloation step the amount of resoures required to exeute the different types of proesses is determined. We will refer to the time interval during whih a proess
More informationAlgorithms, Mechanisms and Procedures for the Computer-aided Project Generation System
Algorithms, Mehanisms and Proedures for the Computer-aided Projet Generation System Anton O. Butko 1*, Aleksandr P. Briukhovetskii 2, Dmitry E. Grigoriev 2# and Konstantin S. Kalashnikov 3 1 Department
More informationCOSSIM An Integrated Solution to Address the Simulator Gap for Parallel Heterogeneous Systems
COSSIM An Integrated Solution to Address the Simulator Gap for Parallel Heterogeneous Systems Andreas Brokalakis Synelixis Solutions Ltd, Greee brokalakis@synelixis.om Nikolaos Tampouratzis Teleommuniation
More information