220 likes | 338 Views
Enterprise and Application Frameworks. Dr. M.E. Fayad, Professor Computer Engineering Department – RM# College of Engineering San José State University One Washington Square San José, CA 95192-0180 URL: http://www.cmpe.sjsu.edu/~fayad. Lesson 1: Introduction. 2. Lesson Objectives.
E N D
Enterprise and Application Frameworks Dr. M.E. Fayad, Professor Computer Engineering Department – RM# College of Engineering San José State University One Washington Square San José, CA 95192-0180 URL: http://www.cmpe.sjsu.edu/~fayad SJSU -- CmpE
Lesson 1: Introduction 2 SJSU – CmpE – M.E. Fayad
Lesson Objectives • Discuss the coursesyllabus • Introduce enterprise & application frameworks • Explore Issues in enterprise & application frameworks 3 SJSU – CmpE – M.E. Fayad
Enterprise & Application Frameworks in General Enterprise & Application Frameworks Heuristics A Survey of Enterprise and Application Frameworks Concepts in Enterprise and Application Frameworks Enterprise Frameworks’ Architectures Software Stability in Action Stable Analysis and Design Patterns Course Outline 4 SJSU – CmpE – M.E. Fayad
Enterprise & Application Frameworks • Definition • Goals • Importance • Why Enterprise & Application Frameworks! 5 SJSU – CmpE – M.E. Fayad
Rice & Sugar 43% 96% 93% Software Drinks 83% Processed food 91% Medicine Packaging Systems 6 SJSU – CmpE – M.E. Fayad
Framework Definitions - I • A framework is a set of cooperating classes that comprise a reusable backbone for a specific application domain. • A framework is customized to a particular application by deriving application specific classes from abstract classes defined by the framework. 7 SJSU – CmpE – M.E. Fayad
Framework Definitions - I • Examples: • User interfaces (MVC, MacApp, Interviews, and ET++) • Operating systems (Choices) • Structured drawing editors (Unidraw & Hotdraw) • Distributed objects (ORBs) 8 SJSU – CmpE – M.E. Fayad
Framework Definitions - II • A framework provides an integrated set of domain- specific functionality • Frameworks exhibit inversion of control at run-time • A framework is a semi-complete application 9 SJSU – CmpE – M.E. Fayad
Application Frameworks vs. Other Reuse Approaches • Class Libraries • Design Patterns • Generic Applications 10 SJSU – CmpE – M.E. Fayad
Classifying Application Frameworks - Scope • System Infrastructure Frameworks • Middleware Integration Frameworks • Enterprise Application Frameworks • Beyond Enterprise Frameworks 11 SJSU – CmpE – M.E. Fayad
According To Scope 12 SJSU – CmpE – M.E. Fayad
Classifying Application Frameworks - Extending Technique • White-Box Frameworks • Black-Box Frameworks • Gray-Box Frameworks 13 SJSU – CmpE – M.E. Fayad
According to Extending Technique 14 SJSU – CmpE – M.E. Fayad
Framework Documentation • Importance of Documentation. • Documentation Users: • Framework Developers. • Application Developers. 15 SJSU – CmpE – M.E. Fayad
Framework Domains 16 SJSU – CmpE – M.E. Fayad
Range of Selling Price • 20% of the frameworks are for free. • The highest price $2 million (HBOC). • Huff, Barrington and Owens Company. • www.hboc.com • Framework rentals (BOOF). • Business Object Oriented Framework. 17 SJSU – CmpE – M.E. Fayad
Why? • Reuse • Reduce the cost of the application development • Treat the software as assets • Have time to develop new software applications • Faster application development cycle • Better economical model (mv. Transition) 18 SJSU – CmpE – M.E. Fayad
Syllabus Responsibilities Lectures & Notes Course Work How do you get an A+ in this course Team Environment Assignments and Exams Enterprise & Application Frameworks Overview Summary 19 SJSU – CmpE – M.E. Fayad
What are the differences between enterprise frameworks and design patterns? What are the differences between enterprise frameworks and class library? T/F Enterprise frameworks are components. Enterprise frameworks are design patterns Enterprise frameworks are class library Browsers are application frameworks ORBs are application frameworks Give examples of enterprise and application frameworks Discussion Questions 20 SJSU – CmpE – M.E. Fayad
Enterprise application frameworks – The good, bad, and ugly Architectural elements Pros and cons Chapter 1 and Chapter 2 Overview of UML Questions for the Next Lecture 21 SJSU – CmpE – M.E. Fayad
Task 1: Problem Statement for team projects are needed (see sample problems on OOPSLA -- DesignFest). This is due on the Fourth week of the semester. Task 2: Identify the team members of your team. Select a team name and e-mail me, the team name, team’s members’ names, their e-mails, phone numbers -- Immediately. Please note that problem statements must be submitted electronically as MS Word format. Tasks for Next Lecture 22 SJSU – CmpE – M.E. Fayad