The Ultimate Guide to Aras Update – Part 2
Preparations
Nach dem Spiel ist vor dem Spiel
“After the game is before the game”
– Sepp Herberger
This is a German saying that means that you concentrate on the next game as soon as the current game is over. Like many popular German sayings the origin of course is football.
Preparation for update actually starts at the moment you have the previous version up and running. This task includes the documentation of your current system, system changes, as well as the creation of suitable test cases.
Keep yourself up to date
Of course, you can always update your system to any existing version of Aras. But keep in mind:
- Not every service pack is a big hit. (Anybody remembers 11SP7? It introduced many cool new technical concepts and included some real milestones. What is most remembered, however, is its incredible slowness.)
- Not every single new Innovator feature will be relevant for your environment. You may have a roadmap in your company to visualize your PLM journey. Does the service pack help you reach the next goal?
- Brand new features or applications may not yet have the functionality you need. Aras offers a helpful support matrix that shows which application is supported by each single service pack.
- Update packages from partner applications might not be supported or fully tested yet. From my POV partner applications are the biggest challenge during the update process. Aras shows supported applications in a well maintained support matrix.
Unfortunately there is no comparable support matrix for partner applications. The support and quality of partner applications can vary a lot. Some partners are certified by Aras. However, these certifications provide little assurance that your purchased product will be well supported over a long period of time.
Stay informed about the features of the latest Innovation version or service packs.
The roadmap, release notes and demos are a good source. A test installation of the new package can also help answer open questions.
Get an overview of your system
First, you need to gather some basic information about your system:
- Currently used Innovator version
- Target Innovator version
- Innovator applications, e.g. PE, PM, CE, EPDM, QMS, RM, MPP, Office Connector, TechDocs, Aras CAD to PDF Converter, Aras HTML to PDF Converter, Aras PDFViewer,..
- Community projects
- Primary functionalities that you use in your system, e.g.
- BOM Management with Parts, Approved Manufacturers, Files, Documents
- CMII Change Management (PR, ECR, ECN, custom processes)
- MCAD document management through xy connector of partner yz
- Visual Collaboration
- Bribery management (ISO 37001) – custom solution
- …
- Browsers used in your environment
- Language packs
- Version of SQL server
- Version of operating system used on application server
- Vault setup, especially when you use replicated Vaults
Keep yourself organized
Codetree
- Especially write down changes to files in the codetree. From my experience, codetree changes have the highest risk to get lost/overwritten during update. Luckily you most of the time don’t have to change much stuff in the codetree at all.
- Document these changes, build adequate test cases and pass the info to the update team. If you don’t tell them, they will never know.
- If you want to add custom icons, html or scripts into your codetree, use the ..\Innovator\Client\Customer folder whenever possible.
Datasbase
- Tag your own components (ItemTypes, Methods, Lists…) with a custom prefix.
- If you want to customize default Items check whether it makes sense to work with your own copy of the Item. For example, instead of modifying the existing Express ECO ImpactMatrixGrid, build your own version. Especially when you plan to rewrite original code more or less completely.
- At PLM Underground the custom version of this Method would be called UG_Express ECO ImpactMatrixGrid. Thus, you have better separated your own Items and OOTB components. In addition, in the event of error a simple fallback to the original version can be achieved just by relinking the original version of the item.
- Enter your company name in the code comments when customizing OOTB methods. This way you can later search for your customized Methods with the fabulous Method search (Link).
- Write detailed test cases for each modification. And take this task serious!
Have a test system
When you occasionally adjust something in your system, you will have a test system anyway. But this one may not fit the update requirements.
Tip: Ask Aras before what kind of test system you will need for update. In the past a test system for update was represented by a 1:1 copy of the main application and database. The current approach (2019) requires a blank new installation of Innovator on an independent test server.
Both variants are not complicated to implement. It would only be a pity if you mistakenly choose the wrong one and waste around 1.5 hours of time. Maybe Aras will one day publish a more detailed update requirements guide by themselves that covers this kind of topics. Until then: Ask!
Have a test plan
What to test: (list sorted by ascending priority)
- Aras standard functionality
- Aras applications
- Aras features customized by you
- Partner applications
- Your applications and customizations
We will take a closer look at testing in a later chapter of this guide.
Check data protection restrictions
It is likely that several Aras sites are involved in your Aras update. For example the update work can be done at Aras US or the Aras Development Center in Minsk.
This is particularly relevant for EU companies, since data processing outside the EU is subject to legal requirements. For regular customers the update process requires that you send your database and codetree to Aras. Both may contain data that you don’t want to share. But luckily this is most of the time data, that isn’t relevant for the update at all.
We will have a couple of tasks to solve:
- Task 1: Identify critical data
- Task 2: Protect your affected data according to the privacy requirements of your company
Task 1: Identify critical data
On a very basic level, we can differentiate two categories of data:
- Confidential data like product and/or company specific information
- Personal data and personal identifiable data (consider GDPR)
These kind of data can be found on codetree and database level. Of course also your file Vault may contain restricted data, but this one is not relevant for update.
To give you an idea of the data that may be affected in your environment, here is a brief and incomplete overview:
- ItemTypes that may contain personal data on database level
- USER (keyed_name, first_name, last_name, email, login_name, working_directory, telephone, user_no, password)
- IDENTITY (keyed_name, name, description)
- CUSTOMER (keyed_name, address, address_state, city, contact_name, country, main_phone, web_site, zip_code, name, main_fax,…)
- SYSTEMEVENTLOG (ip_address, login_name, session_id, maybe browser information if you log that one)
- TEAM (keyed_name, description, name)
- MANUFACTURER (keyed_name, address, address_state, city, contact_name, country, description, main_fax, main_phone, web_site, zip_code, name)
- VENDOR (keyed_name, contact_name, country, city, main_fax, main_phone, web_site,…)
- TEAM (name, keyed_name, description)
- ItemTypes related to Visual Collaboration, Log-Files…
- …
- ItemTypes that may contain confidential data on database level
- PART (name, description, cost)
- PART_GOAL (actual_value, estimated_value, calculated_value)
- DOCUMENT (name, keyed_name)
- CAD_DOCUMENT (name, keyed_name)
- MANUFACTURER_PART (item_number, keyed_name, name, description, unit_price)
- MANUFACTURER_PART_FILE (keyed_name)
- FILE (filename, comments)
- MESSAGE (text)
- METHOD
- PR (title, description, change_reason)
- ECR (title, description, change_reason)
- ECN (title, description, change_reason)
- EXPRESS_ECO (title, description, change_reason)
- SIMPLE_MCO (title, description, change_reason)
- SIMPLE_ECO (title, description, change_reason)
- MPP_PROCESSPLAN (name, description)
- MPP_OPERATION (name, description, wi_details)
- MPP_STEP (name, description, wi_details)
- ItemTypes related to other applications like RM, TechDocs, QMS, Federation,..
- …
- Codetree files and folders that may contain confidential data
- ..\Innovator\Client\Customer
- ..\InnovatorServerConfig.xml
- ..\SelfServiceReportConfig.xml
- ..\VaultServerConfig.xml
- ..\ConversionServerConfig.xml
- ..\Innovator\Client\OAuth.config
- ..\AgentService\conversion.config
- ..\AgentService\Aras.Server.Agent.Service.exe.config
- ..\Scheduler\InnovatorServiceConfig.xml
- …
- Codetree files and folders that may contain personally identifying information
- Server Log files
- ..\Innovator\Client\Customer
- …
Task 2: Protect your data
The list above shows various areas in Innovator that could (!) contain data that is problematic from a data protection point of view. The overview is not complete and we give no guarantee of correctness. Which data is relevant in your particular case depends on your type of business and local laws.
Depending on your needs, the following solutions might be an option for you:
- Ignore it. If your innovator does not contain anything to worry about, why worry?
- Consult your lawyer and sign relevant agreements (NDA, DPA,..).
- Encrypt critical data in database provided for update.
- Remove or encrypt critical data in codetree copy provided for update. For example the config files are most of the time not necessary for update at all.
- Change passwords (codetree + database) after the update, especially if your Innovator is hosted online.
- Inhouse update (I assume this will work well for Fortune Global 500)
In addition, find a way to pass data to Aras that meet your company requirements. As far as I know, Aras doesn’t care how you pass the data. Possible options are e.g. FTP/SFTP or your own file hosting platform.
Conclusion
The above points represent my own opinion and I hope that some of them can be helpful. However, you should not just rely on this article. This is just one possible approach to preparing an Aras update. The shown approach may not necessarily work for you.
What´s your opinion? Anything else that should be considered? I would be happy to hear about your experience!
For information purposes only. Use at your own risk!