Introduction   |   Technology   |   Modules   |   Versions   |   Features   |   Support   |   Toolkits
Technology, Standards and Innovation
 
Tatsoft's FactoryStudio Product was created from "a clean sheet of paper" and entirely developed in strict adherence to the concepts and standards of the Microsoft.NET Framework, so as to utilize all the features of the .NET Framework while insuring the capability to accept future technology releases. FactoryStudio was created in managed code guaranteeing superior reliability, portability, performance, and robustness when compared with legacy systems using Win32, low-level operating system calls, or unmanaged languages like C or C++.
 
FactoryStudio was one of the very first desktop applications to deliver a User Interface created entirely from Microsoft Windows Presentation Foundation (WPF) graphic technology. The User Interface has the features and "look and feel" of, and is as easy to use, as a web site. There are no complex menus and sub-menus, hidden commands or navigating inside sub-trees; in fact there are no menus in the FactoryStudio Product.
 
Enhanced Client Security
 
FactoryStudio also includes important security features. Web clients incorporate the “partial trust” architecture which, in practical terms, means that it is not necessary to install Active-X controls on a computer or enterprise network. In order to enhance security, many intranets no longer accept Active-X controls; as Active-X, from a verified supplier or not, gains full control of the computer and connected networks and can also interfere with other running applications.
 
The current best practice for network security is to make web applications available at “partial trust”. This means that the application runs on the client’s computers with Internet Zone security which provides the same protections of a secure web site. With this approach no installation of any third party code or Administrator permissions are required to run the application(s).
 
Single Project File
 
The FactoryStudio Product architecture also ends the old user interface era when a given project was composed of hundreds of independent files with no unified control and mono-user configuration access. The new architecture of FactoryStudio project development, with built-in SQL database, allows multiple engineers to work simultaneously on the project by using a single file that includes the project’s configuration.
 
Besides the commitment to adopt industry standards such as OPC communication, XPS for web reports, as well as others, Tatsoft is known for its creative and innovative ideas for developing new products. As a result of Tatsoft’s innovative development approach we applied for two industrial patents in the area of data synchronization and user interfaces and support.
 
.Net Languages replacing legacy interpreted scripting
 
Products and frameworks created six to ten years ago typically still use the discontinued interpreted VBScript or VBA as the scripting language for product customization, and business and process logic (Microsoft stopped distributing VBA in July, 2007). FactoryStudio, being created from "a clean sheet of paper", was not constrained by any legacy code, which can significantly hamper a vendor's ability to take advantage of new technologies when trying to bring a new product to market.
 
With Tatsoft's decision to base FactoryStudio on Microsoft's .NET Framework and Windows Presentation Foundation technologies the full spectrum of the features of the very latest technologies could be included in the FactoryStudio Product.
 
VBScript and VBA are interpreted languages, they always execute single-threaded and are not compiled; in addition to the degraded performance single threading presents most programming errors cannot be identified during project configuration, but only during runtime execution; often time with undesirable and unwanted consequences to the production system. If an execution branch exists in the project, like an “If Else” condition that was not previously executed, failure can occur when the project is deployed.
 
Even with extensive project script testing this situation remains a very serious security issue that can best be explained with the programming concept of “Code Coverage”.
 
Code coverage is a metric that shows the percentage of your code that was verified in your tests. In “real world” situations, due to the complexity of specific conditions relating to ones project/application, the average code coverage on a good test procedure is from 50% to 90%. 100% verification is unlikely as all possible paths and flows in the logic will likely not be tested in a simulated environment.
 
The .NET compile process is very important because 100% of the code is checked for programming integrity. Furthermore, the runtime execution can be protected even from external device errors or logic errors because of the “Exception handling” mechanism. This allows .NET languages to easily “catch” any unexpected error (i.e., a division by zero) and recover the execution of the main program. These are just a few of the reasons why VBScript/VBA are now considered “legacy” scripting technology.
 
The .NET languages (VB.NET and C#) also include a much more complete, robust and easy to use set of libraries, provided by the .NET framework; extensive support for multi-threading; a “managed” execution environment that isolates each application into its own space as well as many other advanced features and technology enhancements.
 
Glossary
 
Managed Code; With the introduction of the .NET Platform, Microsoft also introduced the concept of “Managed Applications” and “Managed Code” to design applications created specifically to use the full support of the .NET Framework and the latest programming languages, such as C# and VB.Net. Running “managed code” means that the applications run in a protected, optimized and fail-safe environment created by the .NET Framework. This framework provides access to a high-level programming interface and services created by the .NET Platform, particularly Windows Communication Foundation (WCF), and Windows Presentation Foundation (WPF).
 
OPC, OLE for Process Control: This is the communication standard created by the OPC Foundation to interface applications with control devices. FactoryStudio supports OPC DA specification, both server and client.
 
Smart Clients: Client technology, introduced with Microsoft .NET, that combines ease of installation and maintenance from web applications (or thin-client applications) with the power and richness of desktop applications. One of the three types of client displays supported by the FactoryStudio Product.
 
SQL, Structured-Query-Language: SQL is the “de facto” standard in programming and accessing databases. FactoryStudio supports SQL in many ways. It allows your project to easily interact with external databases, and the alarms, historian and recipes saved when running your project are also saved on SQL databases. The project configuration itself also uses an embedded SQL engine.
 
Partial trust: Running an application in “partial trust”, or in the “sandbox”, means that the application runs in a secure environment inside the browser with any potential risk to the host computer isolated by the architecture. “Partial trust” is the opposite of “full-trust” applications that can have complete control of the running machine. FactoryStudio can run either web clients or in “Partial-Trust” mode which provides easier installation and a more secure environment.
 
Note: Many packages require the installation of the old generation Active-X components that are now considered technologically obsolete and a significant risk to security.
 
WCF, Windows Communication Foundation: WCF is the component of the Microsoft .NET Framework that implements support for local and distributed process communication. FactoryStudio remote modules follow the WCF implementation standards, thus providing a secure and flexible networking architecture.
 
WPF, Windows Presentation Foundation: WPF is the Graphical Engine introduced with the Microsoft .NET Framework that is replacing older standards like GDI, GDI+ or Win Forms. WPF makes use of the full power of the hardware acceleration capability provided on graphics boards and presents a rich environment in which to work with images, animation and media for the user interface. FactoryStudio supports WPF in two ways; first screens created for a project run on top of WPF and second, the entire Engineering workspace is also a WPF application. FactoryStudio is the very first complete SCADA system to have 100% of its configuration created on WPF.
 
XAML, Extended Application Markup Language: XAML is the declarative language introduced with WPF to represent graphical objects and user interfaces. XAML provides an easy and safe isolation between the design and appearance of the user interfaces and the logic, or code, which is running behind it. All project/application displays as well as the FactoryStudio User Interface itself is completely created using XAML interfaces.
 
XBAP, Extended Browser Applications: XBAP is the file extension for “partial trust” applications that can run directly inside your browser. XBAP is one of three types of client displays supported by the FactoryStudio Product.
 
XPS, Extended Paper Specification: Standard for publishing rich content on the Web. XPS documents contain images and printing information in a single package of text. XPS supports e-signature and advanced security features. An XPS document can be easily viewed in a browser with no installation of external components required.
 
Getting Started