SlideShare une entreprise Scribd logo
1  sur  23
Zen and the Art of ILS Migration Or, How to Migrate your ILS Without Losing Any Sleep What to Expect When You're Expecting (an ILS Migration) Or, D Ruth Bavousett Lead Migration Specialist
Who Is This Chick, Anyway? Googling for me won't find much;  look for J. David Bavousett, instead (but don't call me that, please!) BA/Computer Science, Abilene Christian University, 1993 5 years administering DRA Classic ILS 4 years outside the field (clinical labs & aerospace) Led migration project: DRA Classic -> Sirsi Unicorn, 2002 6 years administering SirsiDynix Unicorn (now Symphony) 3 years working on Koha 16 go-lives so far in 2011.
Basic Principles This doesn't have to take months and months.  Don't let anyone tell you otherwise, without calling them out on it. If you're going through a vendor, chances are pretty good that they've dealt with your legacy ILS before.  If you're going it alone, odds are someone else has, too.  Ask around! I have dealt with nine different ILSes since December, plus one home-brewed system. Goals: Maximum data, minimum time, zero patron-services disruption, and minimal staff disruption. “ Complexity is not always your enemy, but it is never, ever your friend.” --D Ruth Bavousett
Assemble a Toolkit MARCEdit: http://people.oregonstate.edu/~reeset/marcedit/html/index.php  Libre Office—a Swiss Army Can Opener for data: http://www.libreoffice.org/ Some Perl is REALLY handy.  Grab these modules: Text::CSV_XS  Text::CSV::Simple MARC::Record  MARC::Field http://www.cpan.org/ Caffeine, angry-sounding music, whatever suits you. Programming Perl , by Wall, Christiansen, & Orwant (2000) Perl Best Practices , by Damian Conway (2005) O'Reilly Media
Obligatory Cute Cat Reference  (blame Liz Rea—she started it)
Let's Cover the Hard Part First, Shall We? PEOPLE are the biggest challenge your ILS migration will face! Commonest complaint: “ I cannot handle CHANGE!” Eliminate the unknowns that they  really  fear, and the fear goes away.
Other Non-Technical Matters--Vendors RFP:  Does anyone really like these things? Talk to other libraries.  Use LibWebCats. http://www.librarytechnology.org/libwebcats/ Treat it like a job interview! Ask other community players about them.
This is the Part You're Really Here To See... How do you convert all that data? Take advice from Shel Silverstein: Have you heard of tiny Melinda Mae, Who ate a monstrous whale? She thought she could, She said she would, So she started in right at the tail. And everyone said, “You're much too small,” But that didn't bother Melinda at all, She took little bites and she chewed very slow, Just like a good girl should... –  from “Melinda Mae”,  by Shel Silverstein (1930-1999)
Migrating the Data First decide what you want to move. “ Everything” is frequently an invalid answer. “ Gotta have it” vs. “nice to have.” Think about the relationships between the data.
Overall Strategy Now that you know most of what you need to know about the data, think about a migration strategy and timeline. Plan for two full extracts, done just  exactly  the same way.  One for testing, and the final one on go-live weekend. Write down extracting method—reports, whatever—and the scripts you use to migrate and import the data.  Wash, Rinse, Repeat. TO BE AVOIDED, IF AT ALL POSSIBLE: Cataloging “freeze” Patron “freeze” They aren't necessary, and they don't serve you or your patrons, at all. All they do is increase complexity.
Data Manipulations—Bibliographic/Item Records Do you  really  want to carry over system designator numbers from legacy systems?  If your answer is yes, please think again.  If the answer is still yes, plan to strip them out when you are done with migration. Most systems provide mechanisms for exporting MARC or MARCXML with item records included.  Barcodes Are Your Friend. Use MARCEdit, or Perl scripts, to rearrange item fields. Let Koha ingest these naturally.  Use bulkmarcimport.pl, or stage-and-import.
Item “Code” Mapping Consider the “coded” values that your current system uses:  “item type”, “collection codes”, “holding codes”, “item categories”...whatever they are called. Four places for that sort of thing in Koha:  Branch code, item type, shelving location, and collection code.  Only the first two affect circulation! Create a CSV map in Libre Office: Holding Code Branch Itype Location Collection WANF WEAVER BOOK NONFIC ADULT WAF WEAVER BOOK FIC ADULT CANF CENTER BOOK NONFIC ADULT CVHS CENTER MOVIE MEDIA VHS CDVD CENTER MOVIE MEDIA DVD
Data Manipulations—Patron Records Some fields kept by some systems (i.e. “total amount owed”) do not migrate..ignore them. Try to create a CSV that looks like what Koha's Patron Import wants.  It Just Works. While the data is in CSV, take a little time for cleanup:  City/State/Zips, phones, address formatting Use Koha's Patron Import tool.  Yes, it's slow, but it works, and it's quite accurate.
Data Manipulations—Everything Else Barcodes Are Your Friend—use them for linking,  not  system-generated numbers from legacy system. Issues/Checkouts:  Barcode of the borrower and item, date it went out, date it is due.  Options: Number of renewals, date of last renewal Holds:  Barcode of the borrower, and barcode pointing at a biblio (for title level holds) or item (for item level), date it was placed, whether item is on the holds shelf, and current place in the queue (or sort by date later). Fines/Fees: Barcode of the borrower, amount originally charged, current amount due, and why we're billing—barcode of related item, if possible.
Some Thoughts on Imports and Edits Use Koha's native tools as much as possible.  For instance, use  C4::Items::ModItem instead of SQL:  UPDATE items SET …  Try to do imports in such a way that if one phase goes wrong, you can TRUNCATE exactly one table to back up one step. Do some basic checking at each step, so you don't end up back at the beginning after you've already loaded the final steps—that's really frustrating.  Trust me on this.  I know. In your Perl scripts, make sure you give yourself some kind of indicator that it's doing something.  Watching the blinking cursor is stress-inducing (and also boring).
Some Thoughts on Imports and Edits Don't make manual edits.  Fix the script, and reload, instead. If you ignore that bit of advice, then write down your manual edits, so you can repeat them for the go-live load. I have basic scripts that do everything normal for a given ILS:  (Unicorn/biblio_masher.pl), then a Site/ folder, with specific “manual” edits that the site needs, that the default script won't do. Computer memory is way, way better than yours.  Use it.
Don' Configuring the system Koha cleverly has the most-important configuration stuff in order on the Administration menu. Don't spend too much time fretting over configurations.  Almost all of it can be changed later, if needed. Ask questions, particularly about obscure system preferences.  For go-live, the most important bits are: Libraries Item Types Patron Categories Circulation and Fine Rules
Back to the People The more that folks have a chance to “just play with it,” the better they'll feel about how their job changes will work on go-live day. ...but not too long.  Otherwise, they'll play with it for a week, then forget about it, then panic on go-live day.  Two or three weeks—MAX—works. Your vendor—if any—will have some testing/training regimen for you to walk through.  Try out sample transactions, just like the real deal.  No vendor can tell you that they know perfectly well what happens in your library.  If they do, they're lying—they don't work in a library, and they don't work in  your  library.  Call them on it.  Then go practice the things that really do happen in your library.
Don' Go-Live Weekend After the library closes, re-run your extracts, just the same way you did before. Wipe out biblios, items, borrowers, issues, etc, but leave configuration stuff! Use your scripts to load the data, just as before. Test, test, test, each step of the way, just as you did for the initial test load.
Don' Get Involved With Koha At first, you'll have a lot of questions—that's okay. Later, if you stick around, you can give back! Even good ideas, enhancement requests, or a question answered for some other library counts as “giving back.” http://koha-community.org
Don' Questions?
Photo Credits: Flickr users sclsjo,nengard,4nitsick, assorted Facebook users, plus odds and ends from elsewhere. What's the Best Thing About Koha? (not an exhaustive list—not even close)
Don' Thanks for being here. Namaste. Slides available at:  http://www.librarygeekgirl.net/

Contenu connexe

Similaire à Zen and the Art of ILS Migration--KUDOSCon 2011

Coaching teams in creative problem solving
Coaching teams in creative problem solvingCoaching teams in creative problem solving
Coaching teams in creative problem solvingFlowa Oy
 
Puppet for Sys Admins
Puppet for Sys AdminsPuppet for Sys Admins
Puppet for Sys AdminsPuppet
 
Near realtime analytics - technology choice (@pavlobaron)
Near realtime analytics - technology choice (@pavlobaron)Near realtime analytics - technology choice (@pavlobaron)
Near realtime analytics - technology choice (@pavlobaron)Pavlo Baron
 
Big Data - JAX2011 (Pavlo Baron)
Big Data - JAX2011 (Pavlo Baron)Big Data - JAX2011 (Pavlo Baron)
Big Data - JAX2011 (Pavlo Baron)Pavlo Baron
 
Rethinking reference
Rethinking referenceRethinking reference
Rethinking referenceBrian Herzog
 
Using Cassandra with your Web Application
Using Cassandra with your Web ApplicationUsing Cassandra with your Web Application
Using Cassandra with your Web Applicationsupertom
 
Puppet Camp Chicago 2014: Puppet at backstop another year of lessons
Puppet Camp Chicago 2014: Puppet at backstop another year of lessonsPuppet Camp Chicago 2014: Puppet at backstop another year of lessons
Puppet Camp Chicago 2014: Puppet at backstop another year of lessonsPuppet
 
Software Development Whats & Whys
Software Development Whats & Whys Software Development Whats & Whys
Software Development Whats & Whys Harun Yardımcı
 
Digitization Projects Tech Con 2006
Digitization Projects Tech Con 2006Digitization Projects Tech Con 2006
Digitization Projects Tech Con 2006Regina Koury
 
Making & Breaking Machine Learning Anomaly Detectors in Real Life by Clarence...
Making & Breaking Machine Learning Anomaly Detectors in Real Life by Clarence...Making & Breaking Machine Learning Anomaly Detectors in Real Life by Clarence...
Making & Breaking Machine Learning Anomaly Detectors in Real Life by Clarence...CODE BLUE
 
How I Learned to Stop Worrying and Love Legacy Code - Ox:Agile 2018
How I Learned to Stop Worrying and Love Legacy Code - Ox:Agile 2018How I Learned to Stop Worrying and Love Legacy Code - Ox:Agile 2018
How I Learned to Stop Worrying and Love Legacy Code - Ox:Agile 2018Mike Harris
 
The Lost Tales of Platform Design (February 2017)
The Lost Tales of Platform Design (February 2017)The Lost Tales of Platform Design (February 2017)
The Lost Tales of Platform Design (February 2017)Julien SIMON
 
Puppet for SysAdmins
Puppet for SysAdminsPuppet for SysAdmins
Puppet for SysAdminsPuppet
 
Dapper Tool - A Bundle to Make your ECL Neater
Dapper Tool - A Bundle to Make your ECL NeaterDapper Tool - A Bundle to Make your ECL Neater
Dapper Tool - A Bundle to Make your ECL NeaterHPCC Systems
 
Avoiding big data antipatterns
Avoiding big data antipatternsAvoiding big data antipatterns
Avoiding big data antipatternsgrepalex
 
Prophet - Beijing Perl Workshop
Prophet - Beijing Perl WorkshopProphet - Beijing Perl Workshop
Prophet - Beijing Perl WorkshopJesse Vincent
 
SQL or NoSQL, that is the question!
SQL or NoSQL, that is the question!SQL or NoSQL, that is the question!
SQL or NoSQL, that is the question!Andraz Tori
 
Software Development is Upside Down
Software Development is Upside DownSoftware Development is Upside Down
Software Development is Upside Downallan kelly
 

Similaire à Zen and the Art of ILS Migration--KUDOSCon 2011 (20)

Coaching teams in creative problem solving
Coaching teams in creative problem solvingCoaching teams in creative problem solving
Coaching teams in creative problem solving
 
Puppet for Sys Admins
Puppet for Sys AdminsPuppet for Sys Admins
Puppet for Sys Admins
 
Near realtime analytics - technology choice (@pavlobaron)
Near realtime analytics - technology choice (@pavlobaron)Near realtime analytics - technology choice (@pavlobaron)
Near realtime analytics - technology choice (@pavlobaron)
 
Big Data - JAX2011 (Pavlo Baron)
Big Data - JAX2011 (Pavlo Baron)Big Data - JAX2011 (Pavlo Baron)
Big Data - JAX2011 (Pavlo Baron)
 
Rethinking reference
Rethinking referenceRethinking reference
Rethinking reference
 
Using Cassandra with your Web Application
Using Cassandra with your Web ApplicationUsing Cassandra with your Web Application
Using Cassandra with your Web Application
 
Deduplication
DeduplicationDeduplication
Deduplication
 
Puppet Camp Chicago 2014: Puppet at backstop another year of lessons
Puppet Camp Chicago 2014: Puppet at backstop another year of lessonsPuppet Camp Chicago 2014: Puppet at backstop another year of lessons
Puppet Camp Chicago 2014: Puppet at backstop another year of lessons
 
Software Development Whats & Whys
Software Development Whats & Whys Software Development Whats & Whys
Software Development Whats & Whys
 
Digitization Projects Tech Con 2006
Digitization Projects Tech Con 2006Digitization Projects Tech Con 2006
Digitization Projects Tech Con 2006
 
Making & Breaking Machine Learning Anomaly Detectors in Real Life by Clarence...
Making & Breaking Machine Learning Anomaly Detectors in Real Life by Clarence...Making & Breaking Machine Learning Anomaly Detectors in Real Life by Clarence...
Making & Breaking Machine Learning Anomaly Detectors in Real Life by Clarence...
 
How I Learned to Stop Worrying and Love Legacy Code - Ox:Agile 2018
How I Learned to Stop Worrying and Love Legacy Code - Ox:Agile 2018How I Learned to Stop Worrying and Love Legacy Code - Ox:Agile 2018
How I Learned to Stop Worrying and Love Legacy Code - Ox:Agile 2018
 
The Lost Tales of Platform Design (February 2017)
The Lost Tales of Platform Design (February 2017)The Lost Tales of Platform Design (February 2017)
The Lost Tales of Platform Design (February 2017)
 
Puppet for SysAdmins
Puppet for SysAdminsPuppet for SysAdmins
Puppet for SysAdmins
 
Dapper Tool - A Bundle to Make your ECL Neater
Dapper Tool - A Bundle to Make your ECL NeaterDapper Tool - A Bundle to Make your ECL Neater
Dapper Tool - A Bundle to Make your ECL Neater
 
Avoiding big data antipatterns
Avoiding big data antipatternsAvoiding big data antipatterns
Avoiding big data antipatterns
 
Prophet - Beijing Perl Workshop
Prophet - Beijing Perl WorkshopProphet - Beijing Perl Workshop
Prophet - Beijing Perl Workshop
 
Nosql
NosqlNosql
Nosql
 
SQL or NoSQL, that is the question!
SQL or NoSQL, that is the question!SQL or NoSQL, that is the question!
SQL or NoSQL, that is the question!
 
Software Development is Upside Down
Software Development is Upside DownSoftware Development is Upside Down
Software Development is Upside Down
 

Dernier

Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyKhushali Kathiriya
 
Navi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Navi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot ModelNavi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Navi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot ModelDeepika Singh
 
AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024The Digital Insurer
 
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...apidays
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?Igalia
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businesspanagenda
 
Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...
Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...
Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...apidays
 
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesrafiqahmad00786416
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoffsammart93
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Scriptwesley chun
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAndrey Devyatkin
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Miguel Araújo
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProduct Anonymous
 
Manulife - Insurer Transformation Award 2024
Manulife - Insurer Transformation Award 2024Manulife - Insurer Transformation Award 2024
Manulife - Insurer Transformation Award 2024The Digital Insurer
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Drew Madelung
 
Apidays Singapore 2024 - Modernizing Securities Finance by Madhu Subbu
Apidays Singapore 2024 - Modernizing Securities Finance by Madhu SubbuApidays Singapore 2024 - Modernizing Securities Finance by Madhu Subbu
Apidays Singapore 2024 - Modernizing Securities Finance by Madhu Subbuapidays
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc
 
Ransomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdfRansomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdfOverkill Security
 
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWEREMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWERMadyBayot
 

Dernier (20)

Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : Uncertainty
 
Navi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Navi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot ModelNavi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Navi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot Model
 
AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024
 
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
 
Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...
Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...
Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...
 
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challenges
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
Manulife - Insurer Transformation Award 2024
Manulife - Insurer Transformation Award 2024Manulife - Insurer Transformation Award 2024
Manulife - Insurer Transformation Award 2024
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
Apidays Singapore 2024 - Modernizing Securities Finance by Madhu Subbu
Apidays Singapore 2024 - Modernizing Securities Finance by Madhu SubbuApidays Singapore 2024 - Modernizing Securities Finance by Madhu Subbu
Apidays Singapore 2024 - Modernizing Securities Finance by Madhu Subbu
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
Ransomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdfRansomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdf
 
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWEREMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
 

Zen and the Art of ILS Migration--KUDOSCon 2011

  • 1. Zen and the Art of ILS Migration Or, How to Migrate your ILS Without Losing Any Sleep What to Expect When You're Expecting (an ILS Migration) Or, D Ruth Bavousett Lead Migration Specialist
  • 2. Who Is This Chick, Anyway? Googling for me won't find much; look for J. David Bavousett, instead (but don't call me that, please!) BA/Computer Science, Abilene Christian University, 1993 5 years administering DRA Classic ILS 4 years outside the field (clinical labs & aerospace) Led migration project: DRA Classic -> Sirsi Unicorn, 2002 6 years administering SirsiDynix Unicorn (now Symphony) 3 years working on Koha 16 go-lives so far in 2011.
  • 3. Basic Principles This doesn't have to take months and months. Don't let anyone tell you otherwise, without calling them out on it. If you're going through a vendor, chances are pretty good that they've dealt with your legacy ILS before. If you're going it alone, odds are someone else has, too. Ask around! I have dealt with nine different ILSes since December, plus one home-brewed system. Goals: Maximum data, minimum time, zero patron-services disruption, and minimal staff disruption. “ Complexity is not always your enemy, but it is never, ever your friend.” --D Ruth Bavousett
  • 4. Assemble a Toolkit MARCEdit: http://people.oregonstate.edu/~reeset/marcedit/html/index.php Libre Office—a Swiss Army Can Opener for data: http://www.libreoffice.org/ Some Perl is REALLY handy. Grab these modules: Text::CSV_XS Text::CSV::Simple MARC::Record MARC::Field http://www.cpan.org/ Caffeine, angry-sounding music, whatever suits you. Programming Perl , by Wall, Christiansen, & Orwant (2000) Perl Best Practices , by Damian Conway (2005) O'Reilly Media
  • 5. Obligatory Cute Cat Reference (blame Liz Rea—she started it)
  • 6. Let's Cover the Hard Part First, Shall We? PEOPLE are the biggest challenge your ILS migration will face! Commonest complaint: “ I cannot handle CHANGE!” Eliminate the unknowns that they really fear, and the fear goes away.
  • 7. Other Non-Technical Matters--Vendors RFP: Does anyone really like these things? Talk to other libraries. Use LibWebCats. http://www.librarytechnology.org/libwebcats/ Treat it like a job interview! Ask other community players about them.
  • 8. This is the Part You're Really Here To See... How do you convert all that data? Take advice from Shel Silverstein: Have you heard of tiny Melinda Mae, Who ate a monstrous whale? She thought she could, She said she would, So she started in right at the tail. And everyone said, “You're much too small,” But that didn't bother Melinda at all, She took little bites and she chewed very slow, Just like a good girl should... – from “Melinda Mae”, by Shel Silverstein (1930-1999)
  • 9. Migrating the Data First decide what you want to move. “ Everything” is frequently an invalid answer. “ Gotta have it” vs. “nice to have.” Think about the relationships between the data.
  • 10. Overall Strategy Now that you know most of what you need to know about the data, think about a migration strategy and timeline. Plan for two full extracts, done just exactly the same way. One for testing, and the final one on go-live weekend. Write down extracting method—reports, whatever—and the scripts you use to migrate and import the data. Wash, Rinse, Repeat. TO BE AVOIDED, IF AT ALL POSSIBLE: Cataloging “freeze” Patron “freeze” They aren't necessary, and they don't serve you or your patrons, at all. All they do is increase complexity.
  • 11. Data Manipulations—Bibliographic/Item Records Do you really want to carry over system designator numbers from legacy systems? If your answer is yes, please think again. If the answer is still yes, plan to strip them out when you are done with migration. Most systems provide mechanisms for exporting MARC or MARCXML with item records included. Barcodes Are Your Friend. Use MARCEdit, or Perl scripts, to rearrange item fields. Let Koha ingest these naturally. Use bulkmarcimport.pl, or stage-and-import.
  • 12. Item “Code” Mapping Consider the “coded” values that your current system uses: “item type”, “collection codes”, “holding codes”, “item categories”...whatever they are called. Four places for that sort of thing in Koha: Branch code, item type, shelving location, and collection code. Only the first two affect circulation! Create a CSV map in Libre Office: Holding Code Branch Itype Location Collection WANF WEAVER BOOK NONFIC ADULT WAF WEAVER BOOK FIC ADULT CANF CENTER BOOK NONFIC ADULT CVHS CENTER MOVIE MEDIA VHS CDVD CENTER MOVIE MEDIA DVD
  • 13. Data Manipulations—Patron Records Some fields kept by some systems (i.e. “total amount owed”) do not migrate..ignore them. Try to create a CSV that looks like what Koha's Patron Import wants. It Just Works. While the data is in CSV, take a little time for cleanup: City/State/Zips, phones, address formatting Use Koha's Patron Import tool. Yes, it's slow, but it works, and it's quite accurate.
  • 14. Data Manipulations—Everything Else Barcodes Are Your Friend—use them for linking, not system-generated numbers from legacy system. Issues/Checkouts: Barcode of the borrower and item, date it went out, date it is due. Options: Number of renewals, date of last renewal Holds: Barcode of the borrower, and barcode pointing at a biblio (for title level holds) or item (for item level), date it was placed, whether item is on the holds shelf, and current place in the queue (or sort by date later). Fines/Fees: Barcode of the borrower, amount originally charged, current amount due, and why we're billing—barcode of related item, if possible.
  • 15. Some Thoughts on Imports and Edits Use Koha's native tools as much as possible. For instance, use C4::Items::ModItem instead of SQL: UPDATE items SET … Try to do imports in such a way that if one phase goes wrong, you can TRUNCATE exactly one table to back up one step. Do some basic checking at each step, so you don't end up back at the beginning after you've already loaded the final steps—that's really frustrating. Trust me on this. I know. In your Perl scripts, make sure you give yourself some kind of indicator that it's doing something. Watching the blinking cursor is stress-inducing (and also boring).
  • 16. Some Thoughts on Imports and Edits Don't make manual edits. Fix the script, and reload, instead. If you ignore that bit of advice, then write down your manual edits, so you can repeat them for the go-live load. I have basic scripts that do everything normal for a given ILS: (Unicorn/biblio_masher.pl), then a Site/ folder, with specific “manual” edits that the site needs, that the default script won't do. Computer memory is way, way better than yours. Use it.
  • 17. Don' Configuring the system Koha cleverly has the most-important configuration stuff in order on the Administration menu. Don't spend too much time fretting over configurations. Almost all of it can be changed later, if needed. Ask questions, particularly about obscure system preferences. For go-live, the most important bits are: Libraries Item Types Patron Categories Circulation and Fine Rules
  • 18. Back to the People The more that folks have a chance to “just play with it,” the better they'll feel about how their job changes will work on go-live day. ...but not too long. Otherwise, they'll play with it for a week, then forget about it, then panic on go-live day. Two or three weeks—MAX—works. Your vendor—if any—will have some testing/training regimen for you to walk through. Try out sample transactions, just like the real deal. No vendor can tell you that they know perfectly well what happens in your library. If they do, they're lying—they don't work in a library, and they don't work in your library. Call them on it. Then go practice the things that really do happen in your library.
  • 19. Don' Go-Live Weekend After the library closes, re-run your extracts, just the same way you did before. Wipe out biblios, items, borrowers, issues, etc, but leave configuration stuff! Use your scripts to load the data, just as before. Test, test, test, each step of the way, just as you did for the initial test load.
  • 20. Don' Get Involved With Koha At first, you'll have a lot of questions—that's okay. Later, if you stick around, you can give back! Even good ideas, enhancement requests, or a question answered for some other library counts as “giving back.” http://koha-community.org
  • 22. Photo Credits: Flickr users sclsjo,nengard,4nitsick, assorted Facebook users, plus odds and ends from elsewhere. What's the Best Thing About Koha? (not an exhaustive list—not even close)
  • 23. Don' Thanks for being here. Namaste. Slides available at: http://www.librarygeekgirl.net/

Notes de l'éditeur

  1. Consider open-sourcing your tool scripts. ByWater Solutions will be putting my toolkit out on a public repository, probably this week. I don't write closed code.
  2. TLC systems usually put item barcode in $g of the item record, which is usually 949. You need it in 952 $p. Also, TLC systems use a “holding code” which encompasses the concepts in Koha's branch, item type, location code, and collection code. Create a map. (More about this in a moment.) You might want to steal data from the bib to put in the item—prices or callnumbers especially. This is a good time to re-think past insanity.
  3. This <Klix> is what makes Koha great! I've said it over and over again, that Koha people are the best people in the world, and you are. Day in and day out, from around the world, people show up who care about their libraries, who care about others' libraries, and work in large and small ways on this wonderful bit of code that we have. And the proprietary ILS vendors are starting to feel the pain, as libraries forsake them, and go it alone, or come to one of the many Koha vendors. They're fighting back...but faceless corporations, placed head-to-head with caring people like these and many more, will fail!