Development Process A case study

Size: px
Start display at page:

Download "Development Process A case study"

Transcription

1 Development Process A case study Author: Adrian Krummenacher Copyright 2005 bbv Software Services AG

2 Legal disclaimer While we have made every attempt to ensure that the information in this publication has been obtained from reliable sources, bbv Software Services AG (bbv) is not responsible for any errors or omissions, or for the results obtained from the use of this information. All information is provided with no guarantee of completeness or accuracy, and without warranty of any kind. In no event will bbv or its employees thereof be liable to you or anyone else for any decision made or action taken in reliance on the information in this publication. The information in this publication should not be used as a substitute for consultation with professional bbv advisers. Before making any decision or taking any action, you should consult a bbv professional. The names of actual companies and products (e. g. Microsoft, bbv Software Services AG,.Net) mentioned in the publication may be the trademarks of their respective owners. Copyright 2005, bbv Software Services AG 2

3 Table of contents 1 Overview Introduction The Project The Map 5 2 Source and version control Do we really need it? Experiences with SourceSafe Branches Token 8 3 Database 9 4 Testing Unit tests Basic Sanity Tests The test database 12 5 Automation Build tool Update the database Check in Daily Build Release Build 15 6 Test system 16 7 Release Cycle 17 8 Hotfix 18 9 Putting all together 19 Copyright 2005, bbv Software Services AG 3

4 1 Overview 1.1 Introduction There are a lot of documents describing conceptual software development processes. They usually divide the process itself in phases and describe these phases and their particular organization in depth. What is missing or sometimes just hidden beneath a lot of specification details are the answers to questions like these: Some software development processes Top-down and Bottom-up Waterfall model Evolutionary prototyping (Code and fix) Unified Process RUP (Rational Unified Process) Extreme Programming How is software development within a team organized, so that the developers do not get in each others way? How to ensure the quality of the software during its development? How to organize continuous development of software, which is already installed at the customer s site? How to avoid tedious, repetitive work? How to prevent the release management from going to hell? There are a lot of other desperate calls for help of frustrated software developers where the questions above are coming from. Of course, like with all the big questions in life simple answers are rare. Unfortunately there is no religion we know of, which fills the gap and provides salvation for the nagging thoughts of so many that anywhere out there might be the ideal way to develop software. Now and then there is one who tells us he has found the ultimate answer and promptly gets a group of faithful believers. But time shows us that the right way to do it in one situation will be the wrong in another. What is left is to take the experience with real life projects, find the approaches that worked out well and use them again the next time. And this is exactly where this booklet jumps in. At the end of a three year development process of an invoicing system in the medical business our team looks back at a lot of ups and downs. Now, instead of just using what we learned for the next project, we decided to share our ideas and insights. But please keep in mind, that this is just the way we finally did it. Take what you think are the good parts and for what is left, it s up to you to find a better way. 1.2 The Project A detailed project description is not necessary to understand the concepts we applied, but some background information might be helpful: The goal of the project was an invoicing system for medical services with a capacity of up to four million invoices per year. It replaced a sixteen years old application with a character based user interface running on a Novell server. It had to be replaced because of new country specific standards for invoicing medical services and because the database of the old application had reached its limits some years ago and data was constantly reorganized into backup databases. The new system is a Server-Client application based on.net Technologies and SQL Server as Database. Invoices are entered manually, are digitally sent directly from the provider of the medical service to the application or are imported from different file formats (the most important one is XML). The application sends the invoice electronically to the insurance or prints invoices ready for mailing. It also provides a web interface where medical service providers can enter their invoices themselves or update patient data. Additionally it takes care of the business process specific accounting before the condensed accounts are transferred to the actual accounting software. Copyright 2005, bbv Software Services AG 4

5 The development team consisted of one project manager, three to six developers and one to three testers. The first deadline was given by the day, when the standards for invoicing medical services were to change and we had to meet this deadline even if hell froze. Unfortunately, we had less than half a year and it was impossible to replace the whole application in this time. Therefore we had to deliver a first release, which consisted just of the utmost important parts, so that the business of the customer could continue. The old system ran in parallel and we had to implement several interfaces between the two worlds. Because the first release was, as mentioned, everything else than complete, we had to provide the missing functionality as fast as possible, which lead to a two week release cycle. This booklet tells you how we coped with this tricky situation. 1.3 The Map Customer Test database Customer database Every night: - Get the latest source code and diff scripts from the source repository. - Build a test database - Update the customer database - Build the application - Run the unit tests - Run the basic sanity tests Release Build: - Branches the Release in the source repository - Updates the assembly versions of the release - Get the latest source code and diff scripts from the source repository to a directory with the name of the release. - Build the application VPN Hotfix: Add description here Daily Build Server Release Server Test system Check out for daily build Build Release Hotfix Install Release on test system Source Repository Check In - Get latest source code and diff scripts - Run diff scripts on test database - Build the application - Run diff scripts Resembles the customers system as exact as possible. Run unit tests Test database Developer Workstations Release stays on test system at least one week before installed at customers site. Testing department executes release tests on test system. Tourist guides sometimes start the chapter about a particular city with a map and then tell you about all the interesting places where you can go. Just looking on the map does not help you very much. But just reading the text without having seen the map before or being able to look places up on it, will give you a hard time to find, where you actually are. For this reason we start this booklet with a map too. It is a map of the final situation in our project. The following sections will show you parts of it to describe a specific problem or solution but you can always go back to The Map to get the big picture. Copyright 2005, bbv Software Services AG 5

6 2 Source and version control Source Repository Check Out Check In 2.1 Do we really need it? There are still development teams out there, which manage their source and release versions by hand. Some of them even have it organized well and with enough discipline they get the upper hand over the threatening chaos. Still, it is the hard way to do it. Nowadays you can choose from a wide range of source and version controlling applications. There are free ones like CVS, which have entered the scene quite some time ago and can easily swim with the big fish in the pound. So if you ever had a mess if multiple developers worked on the same code or if more than one version of your Software had to be maintained at the same time, its worth to consider using a source and version control system. Examples for source and version control systems CVS SubVersion Visual Source Safe Rational Clear Case Suround SCM BitKeeper SuperVersion Perforce SourceGear Vault SourceOffsite Experiences with SourceSafe In our project we used Microsoft Source Safe 6.0 but we do not recommend it. SourceSafe is the typical software, which comes with a bigger package, so that you have at least something. But at least something is normally not enough if you have to get serious work done. Here some disadvantages of SourceSafe we encountered during the project: SourceSafe does not support branching very well (for the importance of branching for your version management see below). It only supports branching at file level, which simply creates a copy of the file in the repository. If you have to branch the project for a release version, you are actually creating a copy of your project in the repository tree (bloating your repository in size every time). Merging of branches is not supported by SourceSafe. Workaround for branching with SourceSafe Create a share of the project in the repository. Pin the version of the shared files. If changes have to be applied both in the branch and the current version, you can just move the pin. If the change has only to be applied in the branch, use the Branch function of Source Safe to create an independent copy. Copyright 2005, bbv Software Services AG 6

7 Using SourceSafe only files that are explicitly checked out from the repository can be changed. This is an acceptable behavior also implemented by other source control applications. Still, it is problematic if more than one developer is working on the same code (even if you have configured Source Save for multiple Checkout). Example: Developer A has to implement a new functionality. He gets all the source files from the repository to work on the most current version. Developer A does not yet know which files exactly have to be changed. So, he checks them out along the way. Meanwhile, developer B works in the same area on another problem. He finishes his changes and puts them back into the repository (check in). Now, developer A has to check out a file, which has been changed by developer B. SourceSafe provides him with the newest version. Here we have the Problem: The newest version of this file belongs to all the code, developer B has checked in recently. So, there is a major chance that after a check out developer A has code, which is not compiling anymore. True, this is solved simply by getting all the sources form the repository, but the developer is unnecessarily interrupted in his workflow. SourceSafe terminology Check Out Users check out files to make changes to them. In the default configuration, VSS allows only one user at a time to check out a file but multiple Check Out can also be configured. Checking out a file copies its latest version into the user's working folder. Check In Files are stored in the VSS database and are unavailable for modification Branching Process of sharing a file with another project and then separating it into two or more branches. Once a branch has been created, two files (the file in the project and its counterpart in other projects) will have a shared history up to a certain point and divergent histories after that time. Sharing In VSS, one file can be shared among multiple projects. Changes to the file from one project are automatically seen by other projects sharing the file. Pin a file If you pin a file, you cannot thereafter make changes to it. Pinning is not the same as branching. You are not making a copy of the file. If the file is shared first, and then pinned in one project, other projects can still change and update the file. SourceSafe knows no atomic check in. If you check in a bunch of files back into the source save repository and in the middle of the process you have a problem with merging a file, which cannot be immediately solved, you end up with half of your files checked. The rest of the team cannot get the latest version of the code until you have solved the problem. SourceSafe has an Analyze and Fix function. Now, how trustworthy is an application, which already assumes, that it will finally corrupt its data? There is even a chance that the analyzer tool will tell you that the SourceSafe repository is corrupted beyond repair and you have to start over. It happened once during our project, so it is something you really have to expect. Copyright 2005, bbv Software Services AG 7

8 2.3 Branches By creating a branch of a project in your source control repository you create a copy of the project, so that parallel development can proceed simultaneously on two independent versions of the project. You may create a branch of your application to add changes exclusively for one customer or to use it as the base for a new application. Two teams can work on two branches of the project in parallel and merge them together if a certain milestone is reached. Finally, you can (and should) use branching for your release management. Every release, which is installed at the customer site, has to be branched. Like this, you can easily fix bugs in the customer version while rest of the team is already developing new features. In our project we used branching mainly for the release management (described in the sections Release and Hotfix). But there was also a time, when we had two branches for parallel development. As mentioned in the The Project, the existing application and its replacement, which we were developing, had to run hand in hand for some time. Now, a milestone was about to come, where a major part of the old application was going to be disabled. The corresponding changes in our application made it impossible to deliver another release before this milestone. At the same time, there were still a lot of urgent feature requests for the version currently installed. So, we created a branch for the current version and for the milestone version. Like this, we still could deliver releases on the current version, while already developing the milestone version. Unfortunately, SourceSafe does not support the merging of branches and so when we reached the milestone and had to merge the two branches mostly manually, we had quite a hard time. Another reason to use another tool the next time. 2.4 Token As mentioned in 2.2 Experiences with SourceSafe SourceSafe does not have an atomic check in. If one developer is getting the latest Version of the code, while another one is checking in some changes, the first developer may receive an incompletely updated repository, normally resulting in code, which is not running. Because in our project a check in consisted of more steps than just updating the repository (see 5.3 Check in), even if the check in of the source control system had been atomic, we would have had the same problem. So, we had to serialize the access to the repository somehow. We finally did it with what we called The Token. It was actually a cuddly toy of the children of our project manager, which was not in use anymore. A developer, who was about to check in, had to get the token first. Like this, only one developer was checking in at the same time. Getting the latest version from the repository while the token was with a developer was not exactly forbidden, but you were doing it on your one risk. Copyright 2005, bbv Software Services AG 8

9 3 Database If your application accesses a database, you may also have to develop the database schema. We know how to manage code changes but what about database changes? If you add a new table to the database and write code, which reads from this table, other developers, which are to run this code, have to have an updated database too. Additionally, the customer database has also to be updated, when a release is installed but only up to the state the developer database had, when the release was created. You could create a lot of SQL scripts with the changes and then run them manually if you need an updated database. But which script has to be run and in which order? Manually running them is tedious and mistakes are easily made. On the other hand, one single SQL script, where the developers add their changes individually is not a better solution at all. The script has to be run on a specific state of the database. So, if one developer changes the single script, all developers have to restore this state and run the complete script again. Additionally, for both solutions you do not know when the database has to be updated, if you are not informed about every change. Confronted with this problem, we have developed the following concept: The developer creates a SQL script for all database changes necessary for his next update into the source control repository. We call it a diff script. Diff scripts are numerated (e.g Diff.sql) and stored in the same directory. A new diff script gets the next available number (e.g Diff.sql, next one 00101Diff.sql). The database contains a table VersionInfo, where the last executed diff script is stored. The ExecuteDiffScripts tool (written for this project) runs all diff scripts in the directory. It begins with the next diff script after the LastExecutedDiffScript value in the database (e.g. LastExecutedDiffScript 00235Diff.sql -> ExecuteDiffScripts starts with script 00236Diff.sql). If the diff scripts are finished successfully, the LastExecutedDiffScript value is updated. This gives us an incremental and automated update of the database. When a release version is branched, the diff script directory is branched too. So, we can create the exact state of the database that corresponds to the release version. Copyright 2005, bbv Software Services AG 9

10 Now let s improve the concept: The database table VersionInfo contains also a database version number. The application checks the expected database version on startup. If the table VersionInfo does not contain the expected version, the startup is aborted with a corresponding error message. If the developer writes a diff script, which has depending code, he increases the database version in the VersionInfo table and the application. If developer gets the new code without updating the database or updates the database with out getting the new code, a start of the application will tell the developer that the expected and the actual database version are different. You could do without the LastExecutedDiffscript value and use only the database version number, but then the developer would have to recompile after every new Diffscript. With two separate values you can apply changes to the database, which do not directly affect the code (like creating an index) without increasing the database version. Other developers do not have to execute the (perhaps time consuming) Diffscript to run Application. But there is still another improvement: You can set a file filter when running ExecuteDiffScripts (e.g. ExecuteDiffScripts db:demodb p:*diff.sql) Diff scripts that do not match the filter criteria (e.g Test.sql) are not executed. Like this, you can create diff scripts that should not be executed on the productive database of the customer (e.g. inserting test data). We used this feature to populate our test database (see below). Copyright 2005, bbv Software Services AG 10

11 4 Testing 4.1 Unit tests Unit tests are a great asset to the quality assurance of your application. By writing unit tests the developer checks the quality while developing. Unit tests serve as examples for other developers how to use the code and they are good protection against the dreaded side effect bug. Unit testing In computer programming, a unit test is a method of testing the correctness of a particular module of source code. The side effect bug occurs, if a developer adds an innocent little change in code, which is called from different locations. The developer checks the change from the user interface or writes a unit test but normally this check is just to verify if the developer s immediate goal is fulfilled. Then, some time later, perhaps after installing the next release at the The idea is to write test cases for every non-trivial function or method in the module so that each test case is separate from the others if possible (Wikipedia). customers site, a nasty bug appears, which after a long search is pin-pointed to a small side effect the deliberate change of the developer has caused. Even with average unit test coverage of this code, the bug would most probably have been discovered, the next time all unit tests were run. In our project we used NUnit to write and execute unit tests. It works well with NAnt(see Automation) and was therefore easily integrated into our build process. The most important problem with unit tests: They cost time and money. Of course, every book about unit testing tells us that more money is saved with better quality than spent by writing unit tests. But project managers usually do not trust anything that costs you now and may or may not save you money in the future. So you will end up with the choice to write code simply without bugs or to try fitting the unit tests into the original time estimation. In your project we had a compromise: As much unit tests as the budget allows. Always a unit test for a fixed bug. Another problem was the database. According to the rules it should not be part of any unit tests. It resembles a separate unit and is therefore to be replaced by a stub. We tried database stubs but finally abandoned the idea because it was just too expensive. Because the database can be accessed in succession or by writing data, which changes its state, it is extremely difficult to create the correct stub reaction for every situation. Some unit test tools for.net NUnit NUnitForms csunit MbUnit dotunit Zanebug ClrUnit... Additionally, we d liked to test the SQL statements, which are passed from the application to the database. This was impossible with a stub. Therefore, we allowed unit tests with access to the database with one condition: After the unit test has finished (successfully or failed) the database has to be in the same state as before the unit test. So, we placed every unit test, which changed the contents of the database, inside of a transaction and caused a rollback at the end. Today there are already unit test frameworks, which handle this problem by themselves. Copyright 2005, bbv Software Services AG 11

12 4.2 Basic Sanity Tests With unit tests it s easy to test the basic elements of your application. But what about a system test, which checks if the application itself shows the expected behavior. Unit tests are not supposed to be applied in this situation. Because of the short release cycle, we needed as much automatic tests as possible, to ensure that the application would still be completely functional after every installation on the customers system. Because unit test could not test the overall workflow of the application, we came up with what we called Basic Sanity Tests. Other than with unit tests, the Basic Sanity Tests are executed on a running System. They feed the application with test input (medical invoices from different sources), trigger the different workflow steps and check the file output and the database contents. To get this working, you need to fulfill the following requirements: Every night: - Get the latest source code and diff scripts from the source repository. - Build a test database - Update the customer database - Build the application - Run the unit tests - Run the basic sanity tests Daily Build Server The tests run on a database with a defined state. The database has to be restored before running the Basic Sanity Tests because they will change the database and you cannot enclose them in transactions like the unit tests. Because the database has to be restored before the Basic Sanity tests, it should only contain the most necessary data. Although a copy of the customer s database would produce more realistic tests, it is normally just too big. The application has to provide a non-graphical interface to execute basic operations, which can be operated by an automatic build tool. The build tool can execute queries on the database, for example with the help of a tool like osql. Based on this we created a build target, which run a basic system test. Because the Basic Sanity Tests where automatically started once every day on the most current source, we had an almost immediate feedback if changes unintentionally affected the major functions of the application. 4.3 The test database Test database Both our unit tests and our Basic Sanity tests needed a small database with a defined state to be executed on. Therefore, we created a test database, which was filled manually with the data specifically needed by basic sanity and unit tests. The concept of the test diff scripts came in handy. Whereas the normal diff scripts run on both the test database and the customer database, we could use the test diff scripts to update the test database only. But when our database model grew more complex, it got more and more difficult to fill the test database with consistent data. Although a copy of the customer s database with productive data was available, it was a painstaking work to move new data to the test database and mistakes were almost unavoidable. Copyright 2005, bbv Software Services AG 12

13 Although there are tools, which help you to copy data between databases, most of them were not selective enough for our need. The suffering of our project team together with an article of bbv in the Dot.Net Magazine finally lead to the internal development of a tool called CloneDB. CloneDB checks the dependencies on the database to find all tables to copy along with your selected data. Then the user can decide up to which level these dependencies should be applied. Finally, the tool creates insert scripts based on the configured values and the selected database, which then can be run on the test database (see Database, diff scripts).

14 5 Automation 5.1 Build tool We used the command line build tool NAnt to create application builds outside of the Visual Studio Environment. With a build tool you are not just limited to compiling your code. We used build targets to update the source repository, to run basic sanity tests, to update the database and so on. If you still have repetitive tasks, which you are doing by hand, consider using a build tool or something similar to automate the process. 5.2 Update the database We used two kinds of databases during the development: The test database and a copy of the customer s database with productive data. Changes were applied with diff scripts, so you had to run them on your local database regularly to update the database you were working with. Instead of having every developer running the ExecuteDiffScripts tool manually for every new diff script, we had the two databases on a server, where the diff scripts in the source repository were executed automatically every night. The test database was set up from scratch where as on the customer database only the new diff scripts since the pervious night were executed. The developer could update his local databases with one build target, which copied the server version and ran any remaining diff scripts from the current day. Of course, for efficiency, there was also a build target, which just ran the diff scripts from the repository if you still hat a working database, which was just not up-to-date. 5.3 Check in In our project, you were only allowed to check in if all unit tests succeeded. For this step we used a build target called Integrate, which consisted of the following steps: Clean Build Unit tests Source Repository Check In - Get latest source code and diff scripts - Run diff scripts on test database - Build the application - Run diff scripts So, a developer, which was about to check in, would first get the latest source from the repository, then update the test database and finally run Integrate. If the build succeeded, the developer could check in his changes. Run unit tests Test database

15 5.4 Daily Build Another way to check the quality of your code is the Daily Build. We had a server, which did the following steps every night: Delete any project data at the build destination. Get the latest source code and diff scripts from the source repository. Build a test database Update the customer database Build the application Run the unit tests Run the basic sanity tests Test database Customer database Daily Build Server Check out for daily build If such a Daily Build finishes successfully, you know that No files necessary for a build are missing in the source repository. All diff scripts in the repository can be executed without error on the test as well as on the customer database. The application can be built. All unit and basic sanity tests succeed in the current version. Source Repository Check In In the beginning of the project, we did not have a daily build. Instead, during the week every developer checked out the sources he was working on at will. Finally, on Friday (also called the integration day) all developers checked in and one poor soul had to get the application running again. If you are still doing it like this, replace the process with a daily build. It s like Stone Age compared with the 21st century. 5.5 Release Build Creating a release to be delivered to the customer does not just mean compiling a release build instead of a debug build of the application. Our process of getting a release consisted of the following steps: Create a branch in the source repository. Update the release numbers of the assemblies in the branch. Build the release version of the application. Install the release on the test system. Create a delivery CD for the customer. First we did all these steps manually. But tasks, which have to be done repeatedly, are always subject to automation. We moved everything apart form creating the delivery CD to a build target. So, if we had to create a new release we just executed this target and after patiently waiting (branching in SourceSafe is not very fast) we finally had an updated source repository and the resulting release already installed on the release server. Copyright 2005, bbv Software Services AG 15

16 6 Test system The customers system was far more complex than the typical setup on a developer s workstation. Two instances of the server application ran at the same time on different servers cooperatively. The user did start the client application through a terminal server. Printing and communication with the partners outside the company were placed on separate servers too. Because we had a very short release cycle and there was no way to check the application on the customers system without running it in productive mode, we set up a test system, which resembled the customers system as much as possible. After creating a release, it was installed on the test system and tested by the testing department for at least a week. Additionally, it could by used after installing the release on the customers system to reproduce bugs reported by the customer on the actual release instead of the working version on the developers platform. ` Release Server Test system Install Release on test system Resembles the customers system as exact as possible. Release stays on test system at least one week before installed at customers site. Testing department executes release tests on test system. Copyright 2005, bbv Software Services AG 16

17 7 Release Cycle Because almost from the beginning we were developing on a productive system, which as far from complete, the release cycle was very short and every release absolutely urgent. To cope with this rigid timetable, we had to plan the release process in detail. Developers Developer test day. Final build of current release. Create delivery CD. 16:00 Installation of the release at the customers site 12:00 13:00 Branch release. Install on test system MO TU WE TH FR SA SU MO TU WE TH FR SA SU Development of next Release Testing All release bugs closed. Testing gives OK for Installation. 12:00 MO TU WE TH FR SA SU MO TU WE TH FR SA SU Release testing starts. Developers are fixing bugs in the release branch. Regression tests. Tests of completed features on developer version. Hotfixtests. Because the application was complex and the customer did not provide exact requirements, it was difficult for the testers to come up with in depth tests in the short time given. Therefore, we decided to support them with what we called the developer test day. The day after the internal release was created, every developer had to check part of the changes listed in the release notes (of course not his own changes). Together with the work of the official testers, this resulted in quite good test coverage. The down side: The development team is occupied with testing for at least half a day every two weeks, which is quite expensive. Copyright 2005, bbv Software Services AG 17

18 8 Hotfix Even with the two weeks release cycle, some bugs could not wait until the next release to be fixed. Any bug which prevented the customer s employees to do their job meant constantly loosing money and set the clock ticking for us developers. This is what we call a hotfix. First the bug is reproduced on the working branch. If it cannot be reproduced, it may already have been fixed for the next release. In this case, you just had to merge the fix from the working branch into the release branch. It is also possible that the bug just cannot be reproduced on the developer s workstation. So, the next step is to check the bug on the test system. If the bug can be Customer reproduced, it has to be fixed on both the working and the release branch. Then a new release with an updated release number for the affected assemblies is created on the release server and hotfixed to the test system, so that it can be verified by the testing department. Finally, if everything is OK, the hotfix is applied to the customer system. We were fortunate because we had a VPN connection to the customer. So, installing a hotfix was quite easy as long as no shutdown of the server was necessary. 2. Create a new release build VPN 5. Install Hotfix on the customer s system Test system 3. Install Hotfix on test system 1. Fix the bug in the working branch and the release branch 4. Verification of the bug fix by the testing department Copyright 2005, bbv Software Services AG 18

19 9 Putting all together Now have another look on The Map we started with. The decisions we made and the roads we took might not all have been the one-and-only ones. But for our team most of them work quite well and will be also applied for future projects. We hope this booklet gave you some insights or ideas for your next project or was at least an interesting look at the way other developers cope with some of the everyday-problems. Customer Test database Customer database Every night: - Get the latest source code and diff scripts from the source repository. - Build a test database - Update the customer database - Build the application - Run the unit tests - Run the basic sanity tests Release Build: - Branches the Release in the source repository - Updates the assembly versions of the release - Get the latest source code and diff scripts from the source repository do a directory with the name of the release. - Build the application VPN Hotfix: Add description here Daily Build Server Release Server Test system Check out for daily build Build Release Hotfix Install Release on test system Source Repository Check In - Get latest source code and diff scripts - Run diff scripts on test database - Build the application - Run diff scripts Resembles the customers system as exact as possible. Run unit tests Test database Developer Workstations Release stays on test system at least one week before installed at customers site. Testing department executes release tests on test system. Copyright 2005, bbv Software Services AG 19

Essential Visual Studio Team System

Essential Visual Studio Team System Essential Visual Studio Team System Introduction This course helps software development teams successfully deliver complex software solutions with Microsoft Visual Studio Team System (VSTS). Discover how

More information

Continuous Integration

Continuous Integration Continuous Integration Collaborative development issues Checkout of a shared version of software ( mainline ) Creation of personal working copies of developers Software development: modification of personal

More information

Getting Started with the Ed-Fi ODS and Ed-Fi ODS API

Getting Started with the Ed-Fi ODS and Ed-Fi ODS API Getting Started with the Ed-Fi ODS and Ed-Fi ODS API Ed-Fi ODS and Ed-Fi ODS API Version 2.0 - Technical Preview October 2014 2014 Ed-Fi Alliance, LLC. All rights reserved. Ed-Fi is a registered trademark

More information

5 barriers to database source control and how you can get around them

5 barriers to database source control and how you can get around them WHITEPAPER DATABASE CHANGE MANAGEMENT 5 barriers to database source control and how you can get around them 91% of Fortune 100 companies use Red Gate Content Introduction We have backups of our databases,

More information

Continuous integration for databases using Red Gate tools

Continuous integration for databases using Red Gate tools Whitepaper Continuous integration for databases using Red Gate tools A technical overview Continuous Integration source control develop Dev Dev Dev build test Automated Deployment Deployment package Testing

More information

What Is Specific in Load Testing?

What Is Specific in Load Testing? What Is Specific in Load Testing? Testing of multi-user applications under realistic and stress loads is really the only way to ensure appropriate performance and reliability in production. Load testing

More information

Software Configuration Management (SCM)

Software Configuration Management (SCM) Software Configuration Management (SCM) SCM actually consists of several separate yet cumulative disciplines. Version Management is an entry point for SCM T M Abstract : Software Configuration Management

More information

Technical Notes. EMC NetWorker Performing Backup and Recovery of SharePoint Server by using NetWorker Module for Microsoft SQL VDI Solution

Technical Notes. EMC NetWorker Performing Backup and Recovery of SharePoint Server by using NetWorker Module for Microsoft SQL VDI Solution EMC NetWorker Performing Backup and Recovery of SharePoint Server by using NetWorker Module for Microsoft SQL VDI Solution Release number 9.0 TECHNICAL NOTES 302-001-760 REV 01 September, 2015 These technical

More information

Subversion Integration for Visual Studio

Subversion Integration for Visual Studio Subversion Integration for Visual Studio VisualSVN Team VisualSVN: Subversion Integration for Visual Studio VisualSVN Team Copyright 2005-2008 VisualSVN Team Windows is a registered trademark of Microsoft

More information

Global Software Change Management for PVCS Version Manager

Global Software Change Management for PVCS Version Manager Global Software Change Management for PVCS Version Manager... www.ikanalm.com Summary PVCS Version Manager is considered as one of the leading versioning tools that offers complete versioning control.

More information

Source Control Systems

Source Control Systems Source Control Systems SVN, Git, GitHub SoftUni Team Technical Trainers Software University http://softuni.bg Table of Contents 1. Software Configuration Management (SCM) 2. Version Control Systems: Philosophy

More information

using version control in system administration

using version control in system administration LUKE KANIES using version control in system administration Luke Kanies runs Reductive Labs (http://reductivelabs.com), a startup producing OSS software for centralized, automated server administration.

More information

Authoring for System Center 2012 Operations Manager

Authoring for System Center 2012 Operations Manager Authoring for System Center 2012 Operations Manager Microsoft Corporation Published: November 1, 2013 Authors Byron Ricks Applies To System Center 2012 Operations Manager System Center 2012 Service Pack

More information

How To Restore From A Backup In Sharepoint

How To Restore From A Backup In Sharepoint Recovering Microsoft Office SharePoint Server Data Granular search and recovery means time and cost savings. An Altegrity Company 2 Introduction 3 Recovering from Data Loss 5 Introducing Ontrack PowerControls

More information

ibolt V3.2 Release Notes

ibolt V3.2 Release Notes ibolt V3.2 Release Notes Welcome to ibolt V3.2, which has been designed to deliver an easy-touse, flexible, and cost-effective business integration solution. This document highlights the new and enhanced

More information

IDERA WHITEPAPER. The paper will cover the following ten areas: Monitoring Management. WRITTEN BY Greg Robidoux

IDERA WHITEPAPER. The paper will cover the following ten areas: Monitoring Management. WRITTEN BY Greg Robidoux WRITTEN BY Greg Robidoux Top SQL Server Backup Mistakes and How to Avoid Them INTRODUCTION Backing up SQL Server databases is one of the most important tasks DBAs perform in their SQL Server environments

More information

SOE. managing change in system development projects: configuration management

SOE. managing change in system development projects: configuration management SOE managing change in system development projects: configuration management 2 3 understanding the problem of change change is one of the most fundamental characteristics in any software development process

More information

The Association of System Performance Professionals

The Association of System Performance Professionals The Association of System Performance Professionals The Computer Measurement Group, commonly called CMG, is a not for profit, worldwide organization of data processing professionals committed to the measurement

More information

Implementing Continuous Integration Testing Prepared by:

Implementing Continuous Integration Testing Prepared by: Implementing Continuous Integration Testing Prepared by: Mr Sandeep M Table of Contents 1. ABSTRACT... 2 2. INTRODUCTION TO CONTINUOUS INTEGRATION (CI)... 3 3. CI FOR AGILE METHODOLOGY... 4 4. WORK FLOW...

More information

Moving the TRITON Reporting Databases

Moving the TRITON Reporting Databases Moving the TRITON Reporting Databases Topic 50530 Web, Data, and Email Security Versions 7.7.x, 7.8.x Updated 06-Nov-2013 If you need to move your Microsoft SQL Server database to a new location (directory,

More information

10 Things DBAs Probably Don t Know LiteSpeed Can Do. written by Brent Ozar, SQL Server DBA

10 Things DBAs Probably Don t Know LiteSpeed Can Do. written by Brent Ozar, SQL Server DBA 10 Things DBAs Probably Don t Know LiteSpeed Can Do written by Brent Ozar, SQL Server DBA Copyright Quest Software, Inc. 2007. All rights reserved. This guide contains proprietary information, which is

More information

Pharos Uniprint 8.4. Maintenance Guide. Document Version: UP84-Maintenance-1.0. Distribution Date: July 2013

Pharos Uniprint 8.4. Maintenance Guide. Document Version: UP84-Maintenance-1.0. Distribution Date: July 2013 Pharos Uniprint 8.4 Maintenance Guide Document Version: UP84-Maintenance-1.0 Distribution Date: July 2013 Pharos Systems International Suite 310, 80 Linden Oaks Rochester, New York 14625 Phone: 1-585-939-7000

More information

Ensure Merge Accuracy in Continuous Integration Development Environments

Ensure Merge Accuracy in Continuous Integration Development Environments Ensure Merge Accuracy in Continuous Integration Development Environments 2 Defect Challenges in Continuous Integration Development Modern software development is rapidly moving to incremental development

More information

Promotion Model. CVS SUITE QUICK GUIDE 2009 Build 3701 February 2010. March Hare Software Ltd

Promotion Model. CVS SUITE QUICK GUIDE 2009 Build 3701 February 2010. March Hare Software Ltd CVS SUITE QUICK GUIDE 2009 Build 3701 February 2010 March Hare Software Ltd Legal Notices Legal Notices There are various product or company names used herein that are the trademarks, service marks, or

More information

System Planning, Deployment, and Best Practices Guide

System Planning, Deployment, and Best Practices Guide www.novell.com/documentation System Planning, Deployment, and Best Practices Guide ZENworks Application Virtualization 9.0 February 22, 2012 Legal Notices Novell, Inc., makes no representations or warranties

More information

Zoom Plug-ins for Adobe

Zoom Plug-ins for Adobe = Zoom Plug-ins for Adobe User Guide Copyright 2010 Evolphin Software. All rights reserved. Table of Contents Table of Contents Chapter 1 Preface... 4 1.1 Document Revision... 4 1.2 Audience... 4 1.3 Pre-requisite...

More information

Integrated Virtual Debugger for Visual Studio Developer s Guide VMware Workstation 8.0

Integrated Virtual Debugger for Visual Studio Developer s Guide VMware Workstation 8.0 Integrated Virtual Debugger for Visual Studio Developer s Guide VMware Workstation 8.0 This document supports the version of each product listed and supports all subsequent versions until the document

More information

Support Document: Microsoft SQL Server - LiveVault 7.6X

Support Document: Microsoft SQL Server - LiveVault 7.6X Contents Preparing to create a Microsoft SQL backup policy... 2 Adjusting the SQL max worker threads option... 2 Preparing for Log truncation... 3 Best Practices... 3 Microsoft SQL Server 2005, 2008, or

More information

SOS Suite Installation Guide

SOS Suite Installation Guide SOS Suite Installation Guide rev. 8/31/2010 Contents Overview Upgrading from SOS 2009 and Older Pre-Installation Recommendations Network Installations System Requirements Preparing for Installation Installing

More information

Leveraging Rational Team Concert's build capabilities for Continuous Integration

Leveraging Rational Team Concert's build capabilities for Continuous Integration Leveraging Rational Team Concert's build capabilities for Continuous Integration Krishna Kishore Senior Engineer, RTC IBM Krishna.kishore@in.ibm.com August 9-11, Bangalore August 11, Delhi Agenda What

More information

Backing up and restoring HP Systems Insight Manager 6.0 or greater data files in a Windows environment

Backing up and restoring HP Systems Insight Manager 6.0 or greater data files in a Windows environment Technical white paper Backing up and restoring HP Systems Insight Manager 6.0 or greater data files in a Windows environment Table of contents Abstract 2 Introduction 2 Saving and restoring data files

More information

PRESENTS... Reasons to Switch from SourceSafe: How to Make Your Life Easier with SourceAnywhere Standalone

PRESENTS... Reasons to Switch from SourceSafe: How to Make Your Life Easier with SourceAnywhere Standalone Standalone PRESENTS... Reasons to Switch from SourceSafe: How to Make Your Life Easier with SourceAnywhere Standalone Most developers are familiar with Visual SourceSafe. It's a popular version control

More information

CPSC 491. Today: Source code control. Source Code (Version) Control. Exercise: g., no git, subversion, cvs, etc.)

CPSC 491. Today: Source code control. Source Code (Version) Control. Exercise: g., no git, subversion, cvs, etc.) Today: Source code control CPSC 491 Source Code (Version) Control Exercise: 1. Pretend like you don t have a version control system (e. g., no git, subversion, cvs, etc.) 2. How would you manage your source

More information

Eclipse Help

Eclipse Help Software configuration management We ll start with the nitty gritty and then get more abstract. Configuration and build Perdita Stevens School of Informatics University of Edinburgh 1. Version control

More information

Solving the Source Control Issue David Shannon, Amadeus Software Limited

Solving the Source Control Issue David Shannon, Amadeus Software Limited Solving the Source Control Issue David Shannon, Amadeus Software Limited ABSTRACT The administration of SAS code frequently depends on the file management and good practice of the individual developer.

More information

Key Benefits of Microsoft Visual Studio Team System

Key Benefits of Microsoft Visual Studio Team System of Microsoft Visual Studio Team System White Paper November 2007 For the latest information, please see www.microsoft.com/vstudio The information contained in this document represents the current view

More information

Integrating with BarTender Integration Builder

Integrating with BarTender Integration Builder Integrating with BarTender Integration Builder WHITE PAPER Contents Overview 3 Understanding BarTender's Native Integration Platform 4 Integration Builder 4 Administration Console 5 BarTender Integration

More information

Working with a Version Control System

Working with a Version Control System Working with a Version Control System Summary Tutorial TU0114 (v2.4) March 18, 2008 This tutorial looks at how you can use Altium Designer s built-in version control capabilities to check project files

More information

Spector 360 Deployment Guide. Version 7.3 January 3, 2012

Spector 360 Deployment Guide. Version 7.3 January 3, 2012 Spector 360 Deployment Guide Version 7.3 January 3, 2012 Table of Contents Deploy to All Computers... 48 Step 1: Deploy the Servers... 5 Recorder Requirements... 52 Requirements... 5 Control Center Server

More information

Hands-On Lab. Embracing Continuous Delivery with Release Management for Visual Studio 2013. Lab version: 12.0.21005.1 Last updated: 12/11/2013

Hands-On Lab. Embracing Continuous Delivery with Release Management for Visual Studio 2013. Lab version: 12.0.21005.1 Last updated: 12/11/2013 Hands-On Lab Embracing Continuous Delivery with Release Management for Visual Studio 2013 Lab version: 12.0.21005.1 Last updated: 12/11/2013 CONTENTS OVERVIEW... 3 EXERCISE 1: RELEASE MANAGEMENT OVERVIEW...

More information

PRESENTS... Maintaining a version control system is resource intensive. Look at what experts say:

PRESENTS... Maintaining a version control system is resource intensive. Look at what experts say: Hosted PRESENTS... Reasons to Switch from SourceSafe: Why SourceAnywhere Hosted Makes Life Easier for Systems Administrators and Developers Maintaining a version control system is resource intensive. Look

More information

WinDeveloper Message Recall v2.0

WinDeveloper Message Recall v2.0 WinDeveloper Message Recall v2.0 Contents 1. Message Recalling Works! Here is how...... 3 2. WinDeveloper vs Native Exchange Message Recalling... 4 3. System Setup... 6 3.1 Minimum Requirements... 6 3.2

More information

Using InstallAware 7. To Patch Software Products. August 2007

Using InstallAware 7. To Patch Software Products. August 2007 Using InstallAware 7 To Patch Software Products August 2007 The information contained in this document represents the current view of InstallAware Software Corporation on the issues discussed as of the

More information

SourceAnywhere Service Configurator can be launched from Start -> All Programs -> Dynamsoft SourceAnywhere Server.

SourceAnywhere Service Configurator can be launched from Start -> All Programs -> Dynamsoft SourceAnywhere Server. Contents For Administrators... 3 Set up SourceAnywhere... 3 SourceAnywhere Service Configurator... 3 Start Service... 3 IP & Port... 3 SQL Connection... 4 SourceAnywhere Server Manager... 4 Add User...

More information

Automatic promotion and versioning with Oracle Data Integrator 12c

Automatic promotion and versioning with Oracle Data Integrator 12c Automatic promotion and versioning with Oracle Data Integrator 12c Jérôme FRANÇOISSE Rittman Mead United Kingdom Keywords: Oracle Data Integrator, ODI, Lifecycle, export, import, smart export, smart import,

More information

CISC 275: Introduction to Software Engineering. Lab 5: Introduction to Revision Control with. Charlie Greenbacker University of Delaware Fall 2011

CISC 275: Introduction to Software Engineering. Lab 5: Introduction to Revision Control with. Charlie Greenbacker University of Delaware Fall 2011 CISC 275: Introduction to Software Engineering Lab 5: Introduction to Revision Control with Charlie Greenbacker University of Delaware Fall 2011 Overview Revision Control Systems in general Subversion

More information

SolarWinds Migrating SolarWinds NPM Technical Reference

SolarWinds Migrating SolarWinds NPM Technical Reference SolarWinds Migrating SolarWinds NPM Technical Reference Copyright 1995-2015 SolarWinds Worldwide, LLC. All rights reserved worldwide. No part of this document may be reproduced by any means nor modified,

More information

Deploying System Center 2012 R2 Configuration Manager

Deploying System Center 2012 R2 Configuration Manager Deploying System Center 2012 R2 Configuration Manager This document is for informational purposes only. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED, OR STATUTORY, AS TO THE INFORMATION IN THIS DOCUMENT.

More information

Horizon Debt Collect. User s and Administrator s Guide

Horizon Debt Collect. User s and Administrator s Guide Horizon Debt Collect User s and Administrator s Guide Microsoft, Windows, Windows NT, Windows 2000, Windows XP, and SQL Server are registered trademarks of Microsoft Corporation. Sybase is a registered

More information

FortiAuthenticator Agent for Microsoft IIS/OWA. Install Guide

FortiAuthenticator Agent for Microsoft IIS/OWA. Install Guide FortiAuthenticator Agent for Microsoft IIS/OWA Install Guide FortiAuthenticator Agent for Microsoft IIS/OWA Install Guide February 5, 2015 Revision 1 Copyright 2015 Fortinet, Inc. All rights reserved.

More information

Test What You ve Built

Test What You ve Built Test What You ve Built About Your Presenter IBM i Professional for 16 Years. Primary Focus is IBM i Engineering / Programming Well Versed in 2E. Well Versed in RPG (All Flavors) Well Versed in CM Products

More information

MiSync Personal for Beams

MiSync Personal for Beams Using MiSync Personal for Beams V4.3.1.0 by Metisc Copyright Printed: 16 January 2015 2014 by Metisc. All rights reserved. Notice This user guide and the software it describes are furbished under a license

More information

How to protect, restore and recover SQL 2005 and SQL 2008 Databases

How to protect, restore and recover SQL 2005 and SQL 2008 Databases How to protect, restore and recover SQL 2005 and SQL 2008 Databases Introduction This document discusses steps to set up SQL Server Protection Plans and restore protected databases using our software.

More information

Novell ZENworks 10 Configuration Management SP3

Novell ZENworks 10 Configuration Management SP3 AUTHORIZED DOCUMENTATION Software Distribution Reference Novell ZENworks 10 Configuration Management SP3 10.3 November 17, 2011 www.novell.com Legal Notices Novell, Inc., makes no representations or warranties

More information

StreamServe Persuasion SP5 Control Center

StreamServe Persuasion SP5 Control Center StreamServe Persuasion SP5 Control Center User Guide Rev C StreamServe Persuasion SP5 Control Center User Guide Rev C OPEN TEXT CORPORATION ALL RIGHTS RESERVED United States and other international patents

More information

Software Configuration Management Best Practices for Continuous Integration

Software Configuration Management Best Practices for Continuous Integration Software Configuration Management Best Practices for Continuous Integration As Agile software development methodologies become more common and mature, proven best practices in all phases of the software

More information

Software configuration management

Software configuration management Software Engineering Theory Software configuration management Lena Buffoni/ Kristian Sandahl Department of Computer and Information Science 2015-09-30 2 Maintenance Requirements System Design (Architecture,

More information

Instructions for update installation of ElsaWin 5.00

Instructions for update installation of ElsaWin 5.00 Instructions for update installation of ElsaWin 5.00 Page 1 of 21 Contents 1. Requirements... 3 2. Updating to version 5.00... 4 3. Client update... 19 Page 2 of 21 1. Requirements ElsaWin 4.10 must be

More information

Sage Intelligence Financial Reporting for Sage ERP X3 Version 6.5 Installation Guide

Sage Intelligence Financial Reporting for Sage ERP X3 Version 6.5 Installation Guide Sage Intelligence Financial Reporting for Sage ERP X3 Version 6.5 Installation Guide Table of Contents TABLE OF CONTENTS... 3 1.0 INTRODUCTION... 1 1.1 HOW TO USE THIS GUIDE... 1 1.2 TOPIC SUMMARY...

More information

VMware vcenter Discovered Machines Import Tool User's Guide Version 5.3.0.25 for vcenter Configuration Manager 5.3

VMware vcenter Discovered Machines Import Tool User's Guide Version 5.3.0.25 for vcenter Configuration Manager 5.3 VMware vcenter Discovered Machines Import Tool User's Guide Version 5.3.0.25 for vcenter Configuration Manager 5.3 This document supports the version of each product listed and supports all subsequent

More information

25 Backup and Restoring of the Database

25 Backup and Restoring of the Database 25 Backup and Restoring of the Database Introduction 4D includes a full database backup and restore module. This module allows backing up a database currently in use without having to exit it. Each backup

More information

Version Uncontrolled! : How to Manage Your Version Control

Version Uncontrolled! : How to Manage Your Version Control Version Uncontrolled! : How to Manage Your Version Control Harold Dost III, Raastech ABSTRACT Are you constantly wondering what is in your production environment? Do you have any doubts about what code

More information

ElectricCommander. Technical Notes MS Visual Studio Add-in Integration version 1.5.0. version 3.5 or higher. October 2010

ElectricCommander. Technical Notes MS Visual Studio Add-in Integration version 1.5.0. version 3.5 or higher. October 2010 ElectricCommander version 3.5 or higher Technical Notes MS Visual Studio Add-in Integration version 1.5.0 October 2010 This document contains information about the ElectricCommander integration with the

More information

Levels of Software Testing. Functional Testing

Levels of Software Testing. Functional Testing Levels of Software Testing There are different levels during the process of Testing. In this chapter a brief description is provided about these levels. Levels of testing include the different methodologies

More information

Universal Management Service 2015

Universal Management Service 2015 Universal Management Service 2015 UMS 2015 Help All rights reserved. No parts of this work may be reproduced in any form or by any means - graphic, electronic, or mechanical, including photocopying, recording,

More information

How To Back Up Your Pplsk Data On A Pc Or Mac Or Mac With A Backup Utility (For A Premium) On A Computer Or Mac (For Free) On Your Pc Or Ipad Or Mac On A Mac Or Pc Or

How To Back Up Your Pplsk Data On A Pc Or Mac Or Mac With A Backup Utility (For A Premium) On A Computer Or Mac (For Free) On Your Pc Or Ipad Or Mac On A Mac Or Pc Or Parallels Plesk Control Panel Copyright Notice ISBN: N/A Parallels 660 SW 39 th Street Suite 205 Renton, Washington 98057 USA Phone: +1 (425) 282 6400 Fax: +1 (425) 282 6444 Copyright 1999-2008, Parallels,

More information

Recovering Microsoft Office SharePoint Server Data. Granular search and recovery means time and cost savings.

Recovering Microsoft Office SharePoint Server Data. Granular search and recovery means time and cost savings. Recovering Microsoft Office SharePoint Server Data Granular search and recovery means time and cost savings. 2 Introduction 5 Recovering from Data Loss 6 7 Introducing Ontrack PowerControls for SharePoint

More information

Coveo Platform 7.0. Microsoft Dynamics CRM Connector Guide

Coveo Platform 7.0. Microsoft Dynamics CRM Connector Guide Coveo Platform 7.0 Microsoft Dynamics CRM Connector Guide Notice The content in this document represents the current view of Coveo as of the date of publication. Because Coveo continually responds to changing

More information

Working with SQL Server Agent Jobs

Working with SQL Server Agent Jobs Chapter 14 Working with SQL Server Agent Jobs Microsoft SQL Server features a powerful and flexible job-scheduling engine called SQL Server Agent. This chapter explains how you can use SQL Server Agent

More information

Version control. HEAD is the name of the latest revision in the repository. It can be used in subversion rather than the latest revision number.

Version control. HEAD is the name of the latest revision in the repository. It can be used in subversion rather than the latest revision number. Version control Version control is a powerful tool for many kinds of work done over a period of time, including writing papers and theses as well as writing code. This session gives a introduction to a

More information

RFID Tracking System Installation

RFID Tracking System Installation RFID Tracking System Installation Installation Guide Version 3.x 3M Track and Trace Solutions 3M Center, Building 225-4N-14 St. Paul, Minnesota 55144-1000 78-8123-9919-0, Rev. E 2003-2009, 3M. All rights

More information

Monitoring Symantec Backup Server. eg Enterprise v6

Monitoring Symantec Backup Server. eg Enterprise v6 Monitoring Symantec Backup Server eg Enterprise v6 Restricted Rights Legend The information contained in this document is confidential and subject to change without notice. No part of this document may

More information

Programming in Access VBA

Programming in Access VBA PART I Programming in Access VBA In this part, you will learn all about how Visual Basic for Applications (VBA) works for Access 2010. A number of new VBA features have been incorporated into the 2010

More information

Gentran Integration Suite. Archiving and Purging. Version 4.2

Gentran Integration Suite. Archiving and Purging. Version 4.2 Gentran Integration Suite Archiving and Purging Version 4.2 Copyright 2007 Sterling Commerce, Inc. All rights reserved. Additional copyright information is located on the Gentran Integration Suite Documentation

More information

Version Control! Scenarios, Working with Git!

Version Control! Scenarios, Working with Git! Version Control! Scenarios, Working with Git!! Scenario 1! You finished the assignment at home! VC 2 Scenario 1b! You finished the assignment at home! You get to York to submit and realize you did not

More information

Setup and Configuration Guide for Pathways Mobile Estimating

Setup and Configuration Guide for Pathways Mobile Estimating Setup and Configuration Guide for Pathways Mobile Estimating Setup and Configuration Guide for Pathways Mobile Estimating Copyright 2008 by CCC Information Services Inc. All rights reserved. No part of

More information

User Guide. Version 3.2. Copyright 2002-2009 Snow Software AB. All rights reserved.

User Guide. Version 3.2. Copyright 2002-2009 Snow Software AB. All rights reserved. Version 3.2 User Guide Copyright 2002-2009 Snow Software AB. All rights reserved. This manual and computer program is protected by copyright law and international treaties. Unauthorized reproduction or

More information

EZManage SQL Pro. Quick guide for installation and implementation

EZManage SQL Pro. Quick guide for installation and implementation EZManage SQL Pro Quick guide for installation and implementation The purpose of this document is to guide you through the process of implementing EZManage SQL using SQL Server Databases. EZManage SQL is

More information

Continuous Integration (CI) for Mobile Applications

Continuous Integration (CI) for Mobile Applications Continuous Integration (CI) for Mobile Applications Author: Guy Arieli, CTO, Experitest Table of Contents: What Continuous Integration Adds to the Mobile Development Process 2 What is Continuous Integration?

More information

Continuous integration for databases using

Continuous integration for databases using Continuous integration for databases using Red Wie Sie Gate die tools Microsoft SQL An overview Continuous integration for databases using Red Gate tools An overview Contents Why continuous integration?

More information

[Handout for L6P2] How to Avoid a Big Bang: Integrating Software Components

[Handout for L6P2] How to Avoid a Big Bang: Integrating Software Components Integration [Handout for L6P2] How to Avoid a Big Bang: Integrating Software Components Timing and frequency: Late and one time vs early and frequent Integrating parts written by different team members

More information

Dell NetVault Backup Plug-in for SharePoint 1.3. User s Guide

Dell NetVault Backup Plug-in for SharePoint 1.3. User s Guide Dell NetVault Backup Plug-in for 1.3 2014 Dell Inc. ALL RIGHTS RESERVED. This guide contains proprietary information protected by copyright. The software described in this guide is furnished under a software

More information

Configure SQL database mirroring

Configure SQL database mirroring App Orchestration 2.0 Configure SQL database mirroring Prepared by: Mohit Menghnani Commissioning Editor: Linda Belliveau Version: 4.0 Last Updated: December 12, 2013 Page 1 Contents Overview... 3 Configure

More information

How To Backup A Database In Navision

How To Backup A Database In Navision Making Database Backups in Microsoft Business Solutions Navision MAKING DATABASE BACKUPS IN MICROSOFT BUSINESS SOLUTIONS NAVISION DISCLAIMER This material is for informational purposes only. Microsoft

More information

Change Manager 5.0 Installation Guide

Change Manager 5.0 Installation Guide Change Manager 5.0 Installation Guide Copyright 1994-2008 Embarcadero Technologies, Inc. Embarcadero Technologies, Inc. 100 California Street, 12th Floor San Francisco, CA 94111 U.S.A. All rights reserved.

More information

Developing Solutions for Microsoft Dynamics AX in a Shared AOS Development Environment

Developing Solutions for Microsoft Dynamics AX in a Shared AOS Development Environment Microsoft Dynamics AX 2012 Developing Solutions for Microsoft Dynamics AX in a Shared AOS Development Environment White Paper This document provides guidance for developing solutions when multiple development

More information

Software Engineering Process. Kevin Cathey

Software Engineering Process. Kevin Cathey Software Engineering Process Kevin Cathey Where are we going? Last Week iphone Application Technologies Workshop This Week Software Engineering Process Thanksgiving Break Write some code, yo 2 Dec Options:

More information

Web Service for SKF @ptitude Observer. Installation Manual. Part No. 32179700 Revision A

Web Service for SKF @ptitude Observer. Installation Manual. Part No. 32179700 Revision A Web Service for SKF @ptitude Observer Part No. 32179700 Revision A Copyright 2009 by SKF Reliability Systems All rights reserved. Aurorum 30, 977 75 Luleå Sweden Telephone: +46 (0) 920 758 00, Fax: +46

More information

Continuous Integration. CSC 440: Software Engineering Slide #1

Continuous Integration. CSC 440: Software Engineering Slide #1 Continuous Integration CSC 440: Software Engineering Slide #1 Topics 1. Continuous integration 2. Configuration management 3. Types of version control 1. None 2. Lock-Modify-Unlock 3. Copy-Modify-Merge

More information

Novell Identity Manager

Novell Identity Manager Password Management Guide AUTHORIZED DOCUMENTATION Novell Identity Manager 3.6.1 June 05, 2009 www.novell.com Identity Manager 3.6.1 Password Management Guide Legal Notices Novell, Inc. makes no representations

More information

Source Control and Team-Based Design in System Generator Author: Douang Phanthavong

Source Control and Team-Based Design in System Generator Author: Douang Phanthavong Application Note: All Virtex and Spartan FPGA Families XAPP498 (v1.0) January 15, 2010 Source Control and Team-Based Design in System Generator Author: Douang Phanthavong Summary This application note

More information

Software Testing. Knowledge Base. Rajat Kumar Bal. Introduction

Software Testing. Knowledge Base. Rajat Kumar Bal. Introduction Software Testing Rajat Kumar Bal Introduction In India itself, Software industry growth has been phenomenal. IT field has enormously grown in the past 50 years. IT industry in India is expected to touch

More information

Commander. The World's Leading Software for Label, Barcode, RFID & Card Printing

Commander. The World's Leading Software for Label, Barcode, RFID & Card Printing The World's Leading Software for Label, Barcode, RFID & Card Printing Commander Middleware for Automatically Printing in Response to User-Defined Events Contents Overview of How Commander Works 4 Triggers

More information

Metalogix SharePoint Backup. Advanced Installation Guide. Publication Date: August 24, 2015

Metalogix SharePoint Backup. Advanced Installation Guide. Publication Date: August 24, 2015 Metalogix SharePoint Backup Publication Date: August 24, 2015 All Rights Reserved. This software is protected by copyright law and international treaties. Unauthorized reproduction or distribution of this

More information

for Networks Installation Guide for the application on a server September 2015 (GUIDE 2) Memory Booster version 1.3-N and later

for Networks Installation Guide for the application on a server September 2015 (GUIDE 2) Memory Booster version 1.3-N and later for Networks Installation Guide for the application on a server September 2015 (GUIDE 2) Memory Booster version 1.3-N and later Copyright 2015, Lucid Innovations Limited. All Rights Reserved Lucid Research

More information

Continuous Integration (CI)

Continuous Integration (CI) Introduction A long standing problem for software development teams has been to maintain the stability of an application while integrating the changes made by multiple developers. The later that integration

More information

RentMaster Frequently Asked Questions

RentMaster Frequently Asked Questions RentMaster Frequently Asked Questions How do I...? How do I do my end of month procedure as a property manager. At the end of the month a property manager normally pays their landlord clients. Prior to

More information

Dell InTrust 11.0. Preparing for Auditing Microsoft SQL Server

Dell InTrust 11.0. Preparing for Auditing Microsoft SQL Server 2014 Dell Inc. ALL RIGHTS RESERVED. This guide contains proprietary information protected by copyright. The software described in this guide is furnished under a software license or nondisclosure agreement.

More information

Technical Notes TECHNICAL NOTES. Release number 8.2 Service Pack 1 302-001-239 REV 01. January, 2015

Technical Notes TECHNICAL NOTES. Release number 8.2 Service Pack 1 302-001-239 REV 01. January, 2015 EMC NetWorker Module for Microsoft: Exchange Server Granular Level Recovery (GLR) using EMC NetWorker Module for Microsoft with Ontrack PowerControls Release number 8.2 Service Pack 1 TECHNICAL NOTES 302-001-239

More information

HP Quality Center. Software Version: 9.20. Version Control Add-in Guide

HP Quality Center. Software Version: 9.20. Version Control Add-in Guide HP Quality Center Software Version: 9.20 Version Control Add-in Guide Document Number: QCGENVC9.2/01 Document Release Date: May 2007 Software Release Date: May 2007 Legal Notices Warranty The only warranties

More information