Industry News, Trends and Technology, and Standards Updates

What is a Software Framework? And why should you like 'em?

Posted by Cimetrix on Oct 2, 2009 8:59:00 AM

by Mike Baker
Cluster Tool Control Practice Manager

The purpose of a framework is to improve the efficiency of creating new software.  Frameworks can improve developer productivity and improve the quality, reliability and robustness of new software.  Developer productivity is improved by allowing developers to focus on the unique requirements of their application instead of spending time on application infrastructure (“plumbing”).

Many people equate the term software framework with an object-oriented software library, or set of libraries, intended to provide reuse.  However, there is an important difference between a framework and a library, that difference is often called “inversion of control.”  If you’re using a library, the objects and methods implemented by the library are instantiated and invoked by your custom application.  You need to know which objects to instantiate and which methods to call in order to achieve your goals.  On the other hand, if you’re using a framework, you implement the objects and methods that are custom to your application and they are instantiated and invoked by the framework.  A framework defines the flow of control for the application.

A common way to customize framework behavior is to override framework-implemented features. The abstract or virtual methods defined by framework classes can be overridden in user-defined code. New objects can be created that implement framework-defined interfaces. These approaches leverage polymorphism to allow one software system, the framework, to interact with software developed by another group.

To emphasize the point, let’s look at a grossly oversimplified example. The Windows Presentation Foundation (WPF) is a framework for building Windows applications. To create a new Windows application with WPF there are two essential elements. The first is a XAML file. The XAML file describes the configurable attributes of the application including: which classes to instantiate, values for object properties, and which methods to invoke in response to user activity. The following is a very simple example of a XAML file:

<Window x:Class="WpfApplication1.Window1"

xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:xhttp://schemas.microsoft.com/winfx/2006/xaml

Title="Window1" Height="300" Width="300">

<Grid>

<Button Name="button1" Click="button1_Click">Button</Button>

</Grid>

</Window>

This sample describes a Window that can be instantiated by the application. Application-specific logic for this window is found in a class named WpfApplication1.Window1. The sample describes how to label the window and the initial size of the window. The window contains a Grid control which in turn contains a Button control. The attributes of the Button control tell WPF to invoke the WpfApplication.Window1 method named button1_Click when the button is clicked by a user.

The second essential element of a WPF application is code. The following is a simple example:

namespace WpfApplication1

{

/// <summary>

/// Interaction logic for Window1.xaml

/// </summary>

public partial class Window1 : Window

{

public Window1()

{

InitializeComponent();

}

 

private void button1_Click(object sender, RoutedEventArgs e)

{

MessageBox.Show("Hello world.");

}

}

}

This snippet is sufficient to implement a Windows application. The framework’s "inversion of control" is represented by the button1_Click method. This method is invoked by the framework when the user clicks on the button. The framework defines practically everything that happens when this application is executed; the Window1 class defines only the application-specific behavior. No coding is needed to display the window, process user input, or handle any common window operations (e.g. move, resize, minimize, maximize, close). Compare this sample with the amount of code that would be needed to develop even a simple application like this one without a framework. Many organizations develop Windows applications; few do it from scratch.

Now extend the framework concept from the general-purpose to a specific application domain (e.g. equipment automation). A domain-specific framework permits new domain applications to be developed more quickly, with high quality, and allows developers to focus their attention on the unique requirements of their application or system. Imagine configuring a new equipment control solution using framework-implemented building blocks and implementing only the overrides that are unique to your system. Those overrides could include elements of process control, human machine interface, data collection and analysis, recipe management, material handling, etc. Today there are many organizations that develop individual equipment automation solutions from scratch. A team using an equipment automation framework, such as CIMControlFramework™, could (for example) focus their time on how to execute a process recipe instead of worrying about how recipes are stored, retrieved, organized, protected, uploaded, downloaded, or communicated to the process equipment.

Advantages

  • Reuse code that has been pre-built and pre-tested. Increase the reliability of the new application and reduce the programming and testing effort, and time to market.
  • A framework can help establish better programming practices and appropriate use of design patterns and new programming tools. A framework upgrade can provide new functionality, improved performance, or improved quality without additional programming by the framework user.
  • By definition, a framework provides you with the means to extend its behavior.

Disadvantages

  • Creating a framework is difficult and time-consuming (i.e. expensive).
  • The learning curve for a new framework can be steep.
  • Over time, a framework can become increasingly complex.

Topics: Equipment Control-Software Products, Programming Tools

Have you heard the latest regarding the PV2 standards?

Posted by Cimetrix on Sep 29, 2009 8:19:00 AM

Cimetrix was among those recognized for their work on the PV2 Standard last week. On Tuesday, the PV-EIS task force was awarded the SEMI Europe Standards Merit Award 2009. This was the first time that a team has received the award since it was established in 2001. Our own Bruce Febvret was there to receive the honor on behalf of Cimetrix. He and Brian Rubow have served on the task force since its inception in September 2007.

PV2 Standards Award

Bruce is the one on the left =)

Brian Rubow, principal engineer,will discuss common quality issues and performance challenges for PV 2 Standard implementation. The paper that we presented at the European PV SEC event last week will also be made available to all webinar registrants. 


Topics: Industry Highlights, Photovoltaic/PV Standards

Are we in recovery yet?

by Dave Faulkner
Executive Vice President, Sales & Marketing

Semiconductor Financial RecoveryIt is starting to feel like a recovery in the semiconductor industry.  Wall Street is saying to keep on eye on semiconductor stocks and even semiconductor equipment stocks.  SEMI just reported that worldwide semiconductor equipment bookings for Q2 2009 were 83% greater than Q1 2009.  Capacity utilization is likely to reach 88% in Q3 2009 according to IC Insights, up from 57% in Q1 2009.   And the SEMI World Fab Forecast is now calling for a 64% increase in fab spending in 2010.  The fear is starting to subside.   Q1/Q2 2009 appear to be the low point for equipment suppliers and we appear to be heading up the hill, but starting from a very low elevation.  I think we are finally in the recovery.

We have a very unique look at the semiconductor industry.  Our customers report tool shipments based on license orders.  And our customer base is very broad including all tool types in the frontend and backend.  We see who is booming and who is busting.  While we would never, never, never discuss individual company progress, I can say that shipments (via way of license revenues) have hit their bottom and are on the way back up.  And we are seeing this in all areas of the semiconductor industry.  It is like seeing a bit of blue sky during the storm, it gives us hope for all.  We just need to give the rest of the storm clouds time to move on…..

Topics: Semiconductor Industry

Presenting at the "most inspired platform for the PV Solar Sector"

Posted by Cimetrix on Sep 17, 2009 9:47:00 AM

PV 2 Standard InformationIn June of this year, the SEMI PV 2 Standard - Guide for PV Equipment Communication Interfaces (PVECI) was approved for publication by the global Audits and Reviews Subcommittee.

Curious about the new PV standards? Planning on being in Hamburg, Germany this week? 

Cimetrix will be participating in the Visual Presentations at the European Photovoltaic Solar Energy Conference (PV SEC) in Hamburg, Germany next week.  Bruce Febvret will be representing Cimetrix at the conference and available to answer questions regarding our paper "Maintaining Quality and Performance in your Implementation of PVECI and GEM Standards." He will be near our poster (#2CV.1.77) on Wednesday, September 23 from 8:30 am - 10:10 am. The poster presentations will be on display in the Congress Center Hamburg (CCH) in the POSTER AREA in Halls D, E, F, G and Foyer D-G (2nd Floor). Click here to view a map of the venue.

Won't be in Germany? No problem.  We will be hosting a webinar on the same topic on Thursday, October 1. For your convenience, we will be presenting at 2 different times: 8:00 am MT/ 2:00 pm UTC as well as 5:00 pm MT/ 11:00 pm UTC. Brian Rubow, principal engineer,will discuss common quality issues and performance challenges for PV 2 Standard implementation. The paper being presented at PV SEC will be made available to all webinar registrants. 

Topics: Industry Highlights, Events, Photovoltaic/PV Standards

Cimetrix Ranks Amongst Best of State

Posted by Cimetrix on Sep 15, 2009 8:07:00 AM
Cimetrix Utah

Forbes magazine declared Utah the 2nd best state in America for business in 2008. The State New Economy Index - performed by the Ewing Marion Kaufman Foundation - gave Utah the number one spot in "economic dynamism" that same year.

2008 was a good year for Utah.  And Cimetrix received a very nice honor when compared to other companies in Utah.  Utah Business magazine recently published their "Top 40 Public Companies in Utah" for 2008 and Cimetrix was included in that list at #32. Being named one of Utah's top companies is an honor in itself, but the fact that we made the list in one of the stronger economies in the nation... makes it even sweeter.

Cimetrix was also included in the magazine's annual "Book of Lists" in 2008 which includes comprehensive information and rankings about the state's businesses and industries. We were ranked as one of the top 25 software developers for 2007.

Topics: Doing Business with Cimetrix

Interface A - Are we there yet?

Posted by Cimetrix on Sep 10, 2009 2:20:00 PM

by Doug Rust,
Director, Quality Customer Support & co-chair of the SEMI North America GEM300 Task Force

In April, the suite of SEMI software standards commonly referred to as "Interface A" turned 5 years old.

Coincidentally, also in April, the SEMI standards North America Information and Control Committee approved an important revision to these standards to incorporate many of the lessons learned from early implementations.

SEMATECH, through its subsidiary ISMI, for years has been consistent in communicating how important Interface A (a.k.a. - Equipment Data Acquisition - EDA) is to the current and future manufacturing automation needs of its member companies. This message was repeated again at an ISMI workshop I attended this last Spring. ISMI had explained that the SEMATECH member companies (which make up 50 percent of the worldwide chip market) wanted ISMI to focus on a smaller number of projects with short-term benefits for 2009. Interface A (EDA) is on this short list.

In support of the ISMI members' vision for a better quality data communication interface, Cimetrix has been actively developing Interface A software since before the standards were published with early prototypes based on draft documents back in 2002-2003. We have had a continuous product improvement program in place since 2004 for our CIMPortal product which implements the Equipment Data Acquisition standards on the server side. We had previews of our EDAConnect factory-side EDA product at SEMICONWest 2007 and launched the product later that year.

So, as I was sitting in the workshop listening to the speaker from ISMI say once again what an important enabling technology Interface A was for current and Next Generation Factories (NGF), I thought to myself, "I keep hearing ‘we need it, we need it'. I wonder why more companies aren't using it"?

Why do you think companies have been slow to deliver Interface A (EDA) solutions on their equipment and using it in their fabs?

Topics: Industry Highlights, EDA/Interface A, Cimetrix Products

Welcome to Cimetrix's new blog!

Posted by Cimetrix on Feb 17, 2009 8:32:00 AM

At Cimetrix, we thrive on customer interaction, continous improvement, and a passionate dedication to providing an elevated level of quality in both our products and services.  In an effort to solicit more feedback from our customers and colleagues, we will be launching a blog in the coming weeks. 

Readers can expect to see posts regarding industry trends and updates, product  & company announcements, tips for smooth implementation of the SEMI standards (SECS/GEM, GEM300, and EDA), and common incidents and how to avoid them.

Check back soon!

Topics: Doing Business with Cimetrix, Cimetrix Company Culture, Cimetrix Products