ISO New England
http://www.iso-ne.com
Click Here for Presentation on Delivered Product
From ISO-NE.com :
ISO New England helps protect the health of New England's economy and the well-being of its people by ensuring the constant availability of electricity, today and for future generations. ISO New England meets this obligation in three ways: by ensuring the day-to-day reliable operation of New England's bulk power generation and transmission system, by overseeing and ensuring the fair administration of the region's wholesale electricity markets, and by managing comprehensive, regional planning processes.
My time at ISO New England was spent with the Operations Department. My main task was to create a Microsoft SharePoint site that the control room could use to manage thier numerous documented procedures. Microsoft SharePoint is a product that allows easy collaboration, organization, and managment of information. It is a web service that runs on Microsoft Windows Server 2003. ISO New England was in the planning stages of their document managment system and was evaluating various technologies including Hummingbird.
I began by researching the various options and subsiquently presenting my findings to managment. They then made the decision to proceed with a Microsoft SharePoint solution since the product had showed limited success in other departments of the company and was a much more cost effective. At this point I was completly unfamiliar with Microsoft SharePoint so I began to teach myself the ins and outs of the software. I quickly learned that SharePoint was an extremely open ended enviroment that allowed for almost limitless posibilities.
There were two features that the control room was interested in developing. One was a search tool that would allow the operators to search through the various procedures and display the relevant ones in a easy to read results page. The second feature was a workflow that would take in a change request to a procedure and would route the document to the appropriate people in the company. Since I was working in a team of three the two features were delegated. The first one was tasked to a fellow intern and the second was tasked to myself with a consulting mentor guiding the process.
The first step was to familiarize myself with SharePoint and the features that it provided out-of-the-box. Once I was comfortable with SharePoint I began to work with Microsoft SharePoint Designer 2007. Having worked with many HTML editors before this was a familiar enviroment. Although SharePoint Designer was a tool I had never used before I was able to quickly build prototype workflow using the Workflow wizard provided by the designer. After working with the workflow wizard for a week or two I began to realize that I was being limited by the wizard and needed to start at the ground level.
My time was limited since I had only two months to learn SharePoint, develope, debug, and document my software so that when my time with the company was up the software could still be used and supported. I decided to write my workflow code from the ground up using Visual Studio 2005 in Visual Basic. The first step was to configure all the software on my PC. Since Microsoft SharePoint was very new and had not been used before in the company; working with IT was a learning experience for them and myself. We soon had a working development enviroment and could begin coding the workflow.
Developing code in Visual Studio around the Windows Workflow Foundation, creating electronic forms in Microsoft Infopath 2007, and delploying the workflow to the SharePoint site was an extremely modular process. Having an experienced developer to go to when coding questions arose was very useful. Although he had no experience developing in SharePoint or Windows Workflow Foundation his review of the code and innocent questions was invaluable.
Through reading computer books, scouring the internet, posting on message boards, and trial and error I was able to deliver the software that the company was looking for. Developing this code was an great learning process. From the initial weeks where I was unsure if I could learn SharePoint and still deliver the product before I left to debugging and learning the SharePoint Object model using any resource I could get my hands on I was able to grow my programming skills.