cancel
Showing results for 
Search instead for 
Did you mean: 
cancel
Showing results for 
Search instead for 
Did you mean: 

Community Tip - Learn all about the Community Ranking System, a fun gamification element of the PTC Community. X

Systems/Software Engineering Tips

Sort by:
Concept Idea   We in PTC Consulting are currently working on a concept to enable Admin Staging without having the Stage System enabled. There are different options available, and we are reviewing them regarding flexibility, efficiency and stability.   What we are looking for   Your input and contribution is requested!   If you have a good business case, and if you are interested in a contribution, then please drop me a personal message with your business contact details. Additionally, describe your concrete business case.   I will contact you then shortly with some more material, that we have already collected.   Thank you Volker   ----------------------------------- Is "im createsolution" an alternative?   "im createsolution" was designed to extract the current configuration completely into a single file (.imt) and deploy it into an empty Integrity Server. Common Use Cases are:  Create fresh Training Environment, Create fresh Development environment. The important thing is that "im createsolution/im installsolution" will work with an empty target only, you can't use that technique to push regular changes over. In terms of support: as long as your configuration is clean, and not too big, both commands worked for me.     
View full tip
Intention This tip lists different best practices how we are managing certain administrative use cases within Integrity LM. All of them are in production since some years, and very stable.   Status The list below is a working list. Feel free to comment or even add more. I will update the main tip section accordingly.   Best Practices with Use Cases   Topics #1 to #10 are here   Topic #11 Item Editability Restriction Use Case As a process responsible, I want to make sure that only specific persons are allowed to edit items. As a process responsible, I want to assign the current user as default value for "Assigned User", that any item has a value in this field. As a process responsible, I want to make sure that users assigned to a read-only group can not edit any item in Integrity. As a process responsible, I want to allow that Project Administrators and Team Leads can always edit an item. Best Practice Add the field "Assigned User" to any item type of interest Create a trigger which assigns the current user as "Assigned User" if not set. Create a static and also a dynamic group to handle Read Only permissions Create an Item Editability rule for each item type, like the following:   Topic #12 Effective Role Management: Object Access Roles Use Case As an process responsible, I like to make sure, that a user will see only the relevant objects for a his role, such as specific types, specific queries, specific reports, specific charts. Best Practice A common practice is to create so called Object Access Groups. Such a static group will bundle role specific types, queries, reports, charts etc.  For example, such a role might be named "ROLE_Req_OBJ", and will contain all objects needed to fulfill requirement tasks. Another will be named "ROLE_Test_Mgr_OBJ". This role will contain only test management related objects. When adding a new user and granting a User Role, the user will get a business role such as "Requirement Manager" and also this related Object Role, such as ROLE_Req_OBJ. When a new Report gets created for Requirement Managers, then the report gets assigned to the ROLE_Req_OBJ role, and immediately all Requirement Managers will see that report, but only by them. Example     Topic #13 Special Projects Use Case As a project responsible, I want to have the following special projects: Library, Templates, Trash Best Practices Create a "Library" project that holds common objects, such as Abbreviation Documents, or reusable Test Steps. You can use the tip #8 to prevent the user from putting something into this library project that you don't want to have as a library element. Create a "Template" project that holds templates for documents, or even items. You can use the tip #8 to prevent the user from putting something into this folder that you don't want to have as a template. Create a "Trash" project, into which a user or team lead can drop a no-more-needed document. You can use a trigger to prevent that someone can  drop a document with traces in it. You can use the tip #8 to prevent the user from dropping something that should never be dropped. You may schedule a purge process for automated purging. You may restrict this Trash folder visibility to Team Leads only.  Each of the mentioned special projects can be team specific or global. Usually, we create different of them depening on the collaboration processes in place.   Topic #14 Tracing and Trace Definition Use Case As a user, I want that the system helps me to define the right traces. As a user, I want that the system avoids creating traces to Headings and Comments. As an administrator, I want an easy way to define the Alt-drag-drop functionality. Best Practices When defining the Alt-drag-drop functionality for Tracing, always include the category. This would avoid that someone creates traces between Headings, or Comments. Activate a trigger that checks about any invalid tracing that a user might perform in the relationship fields itself. Again, check that only meaningful nodes will be traced. Use the Trace Manager App to define and review the trace definition easily. Use the Trace Manager App to create automatically the corresponding STeF tests. (see topic #10)   Topic #15 Dashboard Alternative with external Data Use Case As a Project Manager, I want to have an overview about my project, where some data are from Integrity itself, whereas other data are provided by other systems.  Best Practices There are many ways to handle this. My suggestion is to use a report, and feed external data into the report using JSON and/or JSP.   A JSP can also display data provided in XML files. If such an XML file contains the data provided by the external tool, then our report and/or dashboard can display local and remote data in parallel. If the build in capabilities for charts are not enougt, consider the use of modern JavaScript libraries where you can create almost any chart type.    Topic #16 Standardized Custom Trigger Logging Use Case As a System Responsible, I want to get a standardized and consistent Trigger logging spooled to the server.log Best Practice  Develop a Trigger Framework, in Java, to standardize the Custom Trigger logging.  Possible output might look like this:   Topic #17  Standartized Reminder e-Mails Use Case  As a User, I want to receive reminder e-Mails about upcoming deadlines, or already missed deadlines. Best Practice Implement a new Item Type which holds the definition and the rules of how and when a reminder shall be send out. Define a Trigger which reads the reminder definition, and sends out the email according to the defined reminder cycle. Plan how you track the items you already reminded. Store also a log file.        Topic #18  Custom Help System Use Case  As a User, I want to have the possibility to access context - means type specific - specific help right out of the UI. Best Practice  Adapt the Presentation Template and add another link to a type specific html page. This help page might be generated, with links in it to different other information sources, such as team help pages outside (e.g. sharepoint, standard help, templates, process descriptions etc.)  We manage the links directly in a new item type.   Topic #19  Scheduled Trigger Chart Use Case  As a system owner, I want to get an overview about the Triggers ran easily. Best Practice Use a Trigger Framework to track the start and end time of triggers. Take those data and store them in a new tracking item type. Use standard build-in Charting tool to present the details of which scheduled trigger fired when.   Topic #20  Validate any system configuration frequently Use Case  As a system owner, I want to get automated support to check my own configuration rules.  Best Practice  Use the Trigger Framework to define multiple validation tasks to check your configuration  Define for each validation a single JavaScript file  Execute the validations using dynamic script inclusion.  Send an email about the validation results to the system owner daily.   More to come 🙂
View full tip
IntegrityDocs Creates a set of HTML pages documenting the PTC Integrity Lifecycle Manager configuration.   Version 12.2: Created for Integrity 10.9/11.x/12.x and with full support of latest Firefox / Chrome / IE Purpose IntegrityDocs exports the current Integrity Server configuration from W&D, and creates HTML pages. Each section under Workflows&Documents will become one node within the report tree. Each section starts with an "Overview" page, and then each element can be reviewed in more detail by drilling down.   Use Cases Document the current Integrity LM configuration status Validate and compare the Integrity LM configuration status Present the Integrity LM configuration status without the need to have direct Integrity access   Install In IntegrityClient folder Put the "IntegrityDocs.jar" into your <IntegrityClient>/lib folder Put the "IntegrityDocs.bat" directly into your <IntegrityClient> folder Check and update the IntegrityDocs.bat file with the correct Integrity Client installation location, for example: SET IC_HOME=C:\Program Files\ILMClient11 In case of any performance issue based on too many data in Integrity, you can also disable certain object types from beeing scanned, such as --noIMProjects: disable Workflows & Documents Main Projects scan and output --noSIProjects: disable Config Management Main Projects scan and output --noTypes: disable Types scan and output --noQueries: disable Queries scan and output --noTriggers: disable Triggers scan and output --noCharts: disable Charts scan and output --noViewsets: disable Viewsets scan and output --noGroups: disable Groups scan and output --noDynGroups: disable DynGroups scan and output --noStates: disable States scan and output --noReports: disable Reports scan and output --noFields: disable Fields scan and output --noTestVerdicts: disable TestVerdict scan and output --noTestResultFields: disable TestResultFields scan and output You can add these parameters to the bat command itself or put them directly into IntegrityDocs.bat, ... ityDocs.jar" com.ptc.services.utilities.docgen.IntegrityDocs --noFields --noGroups It's also possible to generate the output just for one or specific types, then the command will look like this ... ityDocs.jar" com.ptc.services.utilities.docgen.IntegrityDocs Defect Project   How to run execute the IntegrityDocs.bat in your IntegrityClient folder connect to the Integrity environment you like to scan then review the outcome   Version Info 11.0.0: Added 12 additional object types to the existing Types and Triggers, complete code review 11.0.1: You can sort the Overview tables by clicking at the light green headings 11.0.2: Added Main Project for W&D 11.0.2: Reports now previewable and downloadable 11.0.3: Edit-In-Word Templates download now possible (links provided in the Type form) 11.0.3: Added Main Project for CM 12.1: Minor compatibility changes only 12.2: Minor Compatibility changes only Development Environment PTC Integrity LM 11.0 to 12.2 (also 10.9 is still fine) Netbeans 8 Java 1.8   Known Limitations the search does not work yet none of the SI or MKS Domain object is exported (primarily because of the expected high data volume) the "deploy" reporting is no more supported since 10.5 or so   Related Tools Integrity-LM-Administration-Configuration-Reports
View full tip
Tag values can be displayed on both of these types of items using the diagram and object View Options The video below shows an example of this process including the creation and application of the Stereotypes and Tags
View full tip
This article outlines a concept how you can include the Integrity Gateway configuration files for mappings and the main gateway-tool-configuration.xml in the staging process. The goal is to have one single process for any kind of server file handing.
View full tip
Intention This document describes the consulting solution "Integrity STeF", which can help you to perform functional tests within Integrity W&D.   What is STeF? Integrity STeF stands for "Integrity Setup Testing Framework" to perform functional tests by entering and updating Integrity data through the Integrity API. STeF uses the FitNesse tool (see fitnesse.org). FitNesse itself is a Wiki-based testing platform to manage the test cases and test groups. STeF combines both tools by building the bridge between them.   Related Use Cases As a functional tester, I’d like to test if the data entry for Defects or Change Requests can be done without errors by different roles, including state changes and proper handling of required fields. As a functional tester, I’d like to test that all my triggers will perform as before after a major concept change in my trigger logic. As a system tester, I’d like to perform a number of tests in one run, to validate that my system performs in a certain area as before after some system changes. For example, I’d like to validate if document entry is still possible even if I had to make major ACL changes recently. As a system tester, I have to validate that the key process within Integrity W&D are still running ok, especially after installing hotfixes or performing an application upgrade.   How can STeF help you? In FitNesse you use Wiki tables to define your test cases in a very easy way. Each column contains one attribute, a row is an Integrity operation, such as create item, edit item or even delete item (to cleanup your test case afterwards). Once done, you can connect via STeF directly to an Integrity environment and can execute the tests. A positive result will be indicated with a green color, a failure is indicated by red. FitNesse tracks the test history for you automatically.   Regression tests are one of the common requirements which fit nicely into the concept of FitNesse and STeF.   Note: The screenshots above showing how a Requirement Document test is defined and executed in FitNesse. Such a test can be defined for any item type.   Status STeF is almost 4 years old. It was one of my own first development activities for PTC Integrity LM that I did in Java. Recently it was upgraded to the Integrity version 10.9, but should also work with 11.x (needs validation).   Special Features STeF can also collect data from Integrity for reverse engineering of test cases.  (see second picture above) STeF handles also negative tests. STeF can be extended with additional Java classes to handle almost all API commands within Integrity (also Source commands should be possible, although not implemented yet) STeF can also call the Gateway or Reports or Charts or Queries, and validate them. FitNesse can execute one, all in a test group or even all defined test cases in one single run (nightly tests). FitNesse has a command line option.   You should not expect STeF/FitNesse is not intended as a performance Testing environment. It’s for functional tests only.     Next Steps If you are interested in STeF, contact me directly and I will arrange a Web Conference to discuss your Use Cases and possible implementation scenarios for STeF.
View full tip
Requirements Quality Suite, a solution from The Reuse Company, allows you to customize, check and improve the quality of your requirements specifications and requirements documents.   In this video you can see: 1. How a PTC Integrity document is opened in Requirements Quality Analyzer (RQA) 2. How RQA can check the quality for this Integrity document 3. How Requirements Authoring Tools can help creating smart requirements on top of PTC Integrity 4. How our Authoring plugin is performing from within PTC Integrity Lifecycle Manager 5. How different quality metrics can now be checked on-the-fly 6. How the Authoring plugin allows you to write requirements in PTC Integrity just by following a requirements pattern description  
View full tip
Uploaded 10/01/2010 by Jim Winder to YouTube Developers are disconnected from Requirements, frustrated with lots of manual effort, and pulled in many directions. In this short demonstration we see how MKS Integrity provides a one-stop solution to help developers stay happy and productive    
View full tip
We are constantly asked how to extend the default text field of Requirements to be able to enter rich text data easier  (Without the need to run "Edit in Word").Unfortunately, there is no resizing of the text box yet.But, we can have a new field which we can put into another
View full tip
This presentation gives a high level overview of the value of the Integrity LM PSM Solution. It covers the following:What is PSM? Why use PSM? Solution Overview Analyzing Data Examples Success Stories FAQs
View full tip
Announcements