Idaho National Engineering and Environmental Laboratory What is a Framework? Web Service? Why do you need them? Wayne Simpson November 5, 2003
Idaho National Engineering and Environmental Laboratory Purpose Show a solution to implement reusable components under a controlled environment Explain what is a “Framework” for components in Object Oriented (OO) Programming Explain the need for a Framework Explain the need for a Web Service
Idaho National Engineering and Environmental Laboratory Agenda Problem: Efficiency of Software Development History What is a Framework? Benefits of a Framework Implementing Framework: Web Services Cost Savings of a Framework/Web Service Demonstration
Idaho National Engineering and Environmental Laboratory Problem: Efficiency of Software Development Methods of sharing code –Coworkers’ code –Previous applications –Internet search Modifications cannot be implemented easily Workload remained the same with fewer resources Needed consistency in programming/naming conventions
Idaho National Engineering and Environmental Laboratory History Received object-oriented training Received UML training Studied existing framework Researched concept of web services Set proposed standards Developed four pilot projects Evaluated lessons learned Reset standards Built a number of components for framework Using framework for all new development activities Completing evaluation of web services interface
Idaho National Engineering and Environmental Laboratory What is a Framework? Framework is a group of components that work interactively with requests from other components or objects to generate a consistent output. Framework (Black Box) Java C# C++ VB.Net Presentation, business rules, database queries, etc Company business rules, standards, policies Object (GUI, XML, data, authentication, etc) Controlled Environment
Idaho National Engineering and Environmental Laboratory Example Framework (Black Box) Java C# C++ VB.Net Drop Down List, Select * from Users, log file Company business rules, standards, policies Render: Drop Down List of Users on a Web page or Window Application, recording any errors to the log file Procedural Application 100% complexity 75% complexity 25% complexity
Idaho National Engineering and Environmental Laboratory Benefits of a Framework Consistency across many platforms Better able to enforce standards and policy Better way to reuse components Lower skilled employee can perform work more efficiently Single point of change to a common interface Produce applications that are more robust, faster, stable and consistent
Idaho National Engineering and Environmental Laboratory Implementing Framework: Web Services A web service is a component that is presented as a URL that returns the desired information or objects Web services are built the same way as class objects Using a web service –Add a web reference –Add applicable XML documents –Call the web service through a URL, passing the necessary parameters –Process the information or object returned
Idaho National Engineering and Environmental Laboratory PresentationBusiness Objects Framework/ Web Service XML Production/ Development Framework and Web Service Environment Database
Idaho National Engineering and Environmental Laboratory Cost Savings of a Framework/Web Service Current Object Orient programming cost savings over procedural programming is 20% to 30% at the INEEL. Other companies are achieving 40% to 60% Framework can make up the difference and add another 30% cost savings
Idaho National Engineering and Environmental Laboratory Demonstration