Development Process A case study
|
|
- Ferdinand Goodwin
- 8 years ago
- Views:
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 Introduction This course helps software development teams successfully deliver complex software solutions with Microsoft Visual Studio Team System (VSTS). Discover how
More informationContinuous 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 informationGetting 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 information5 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 informationContinuous 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 informationWhat 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 informationSoftware 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 informationTechnical 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 informationSubversion 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 informationGlobal 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 informationSource 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 informationusing 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 informationAuthoring 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 informationHow 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 informationibolt 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 informationIDERA 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 informationSOE. 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 informationThe 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 informationImplementing 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 informationMoving 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 information10 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 informationPharos 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 informationEnsure 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 informationPromotion 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 informationSystem 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 informationZoom 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 informationIntegrated 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 informationSupport 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 informationSOS 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 informationLeveraging 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 informationBacking 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 informationPRESENTS... 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 informationCPSC 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 informationEclipse 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 informationSolving 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 informationKey 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 informationIntegrating 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 informationWorking 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 informationSpector 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 informationHands-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 informationPRESENTS... 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 informationWinDeveloper 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 informationUsing 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 informationSourceAnywhere 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 informationAutomatic 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 informationCISC 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 informationSolarWinds 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 informationDeploying 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 informationHorizon 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 informationFortiAuthenticator 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 informationTest 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 informationMiSync 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 informationHow 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 informationNovell 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 informationStreamServe 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 informationSoftware 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 informationSoftware 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 informationInstructions 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 informationSage 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 informationVMware 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 information25 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 informationVersion 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 informationElectricCommander. 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 informationLevels 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 informationUniversal 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 informationHow 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 informationRecovering 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 informationCoveo 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 informationWorking 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 informationVersion 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 informationRFID 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 informationMonitoring 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 informationProgramming 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 informationGentran 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 informationVersion 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 informationSetup 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 informationUser 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 informationEZManage 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 informationContinuous 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 informationContinuous 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
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 informationDell 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 informationConfigure 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 informationHow 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 informationChange 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 informationDeveloping 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 informationSoftware 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 informationWeb 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 informationContinuous 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 informationNovell 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 informationSource 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 informationSoftware 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 informationCommander. 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 informationMetalogix 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 informationfor 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 informationContinuous 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 informationRentMaster 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 informationDell 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 informationTechnical 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 informationHP 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