1 / 47

S OFTWARE F ACTORY

S OFTWARE F ACTORY. Bersabe, Toni Rose Castañeda, Karen Rose Loreto, Jeremy Ong, Glenn Richmond EM-TECH – S15. H ISTORY. Michael A. Cusumano of M.I.T. – major historian of Software Factory

irina
Download Presentation

S OFTWARE F ACTORY

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. SOFTWARE FACTORY Bersabe, Toni Rose Castañeda, Karen Rose Loreto, Jeremy Ong, Glenn Richmond EM-TECH – S15

  2. HISTORY • Michael A. Cusumano of M.I.T. – major historian of Software Factory • Late 1960s – term ‘factory’ had arrived in software engineering; associated with computer-aided tools, management-control systems, modularization, and reusability • Hitachi – first company in the world to adopt the term ‘factory’ to label a software facility • Steve Cook and Stuart Kent of Microsoft – proposed the Software Factory method

  3. DEFINITION Jack Greenfield and Keith Short A software product line that configures extensible tools, processes, and content using a software factory template based on a software factory schema to automate the development and maintenance of variants of an archetypical product by adapting, assembling, and configuring framework-based components

  4. DEFINITION Microsoft Patterns & Practices Team A software factory is a structured collection of related software assets. When a software factory is installed in a development environment, it helps architects and developers efficiently create high-quality of specific types of applications

  5. So what exactly is a Software Factory?

  6. Designers Developers Focused tool with specific instructions targeted at solving small and specific business problems Business Analysts Testers Project Managers Architects Software Development Tool

  7. HOW IT WORKS • Development – component assembly, involving customization, adaptation, and extension • Outputs multiple product instances – each one different from the previous one based on the unique configuration of it

  8. COMPONENTS

  9. COMPONENTS • Design Patterns • A general reusable solution to common problems in software design • Description or template of solving problems in many different situations • Is not a finished design that can be transformed directly into code

  10. COMPONENTS

  11. COMPONENTS

  12. SOFTWARE FACTORY MODEL • Utilizes a set of industrialization patterns that hastens rapid development of software products (MSDN, 2004).

  13. MASS CUSTOMIZATION • Modular Customization -uses the “building blocks” principle • Adjustable Customization - reversible type of customization • Dimensional Customization - permanent customization procedures - e.g. mixing, tailoring or even cutting-to-fix

  14. MANUFACTURER’S PERSPECTIVE Advantages Disadvantages • Reduction of costs • Earns customer loyalty • Competitive advantage • Thorough analysis of the customer’s needs • Higher incomes • Competitive position • Process-feasibility technology • High chances for business improvement • Organizational readiness • Considered as an expensive IT investment • Requires training • Probable risks for failure

  15. CUSTOMER’S PERSPECTIVE Advantages Disadvantages • Customer convenience • Products are designed according to the customer’s preferences • Purchases may be done in spite of differences of time and location between the manufacturer and the customer • Customized according to the individual needs of a client • Takes longer time to be delivered • Procurement is much complicated than what we know • Difficulty to get hold of the final product before it gets to be purchased

  16. CUSTOMER’S PERSPECTIVE Advantages Disadvantages • Customers will be able to tell the manufacturer what exactly they need • Encourages clients to invest ample amount of time to design their products which in turn creates an atmosphere of loyalty • Customized products are usually priced much higher than the usual ones

  17. THREE KEY IDEAS IN SOFTWARE FACTORY

  18. SOFTWARE FACTORY SCHEMA Recipe Ingredients: Projects Source Code Directories SQL Files Configuration Files

  19. SOFTWARE FACTORY SCHEMA • Explains how they should be combined to come a product. • describes the product line architecture, and key relationships between components and frameworks of which it is comprised.

  20. SOFTWARE FACTORY TEMPLATE Bag of groceries Contains the listed ingredients in the recipe.

  21. SOFTWARE FACTORY TEMPLATE • Provides the patterns, guidance, templates, frameworks, samples, custom tools, stylesheets, and other ingredients used to build products

  22. EXTENSIBLE DEVELOPMENT ENVIRONMENT Kitchen It is where products are being developed

  23. Products Meals

  24. Stakeholders Customers

  25. Product Specification Specific meal

  26. Product Developers Cooks

  27. Product line Developers Chefs

  28. EXAMPLES OF SOFTWARE FACTORIES

  29. SMART CLIENT SOFTWARE FACTORY • Provides an integrated set of guidance that assists architects and developers create composite smart client applications

  30. SMART CLIENT SOFTWARE FACTORY Contents: • Templates • Patterns • Quickstarts • How-to topics • Reference Implementations

  31. SMART CLIENT SOFTWARE FACTORY Scenario: • Architects – use software factory to create their own client baseline architecture and distribute it to developers • Developers – use it to create smart client apps given the proven practices

  32. SMART CLIENT SOFTWARE FACTORY Benefits: • Businesses - increased user productivity and simplification of business tasks • Architects - improved quality and consistency • Developers - increased productivity and faster ramp-up times • Operations - consolidation of operational efforts

  33. WEB SERVICE SOFTWARE FACTORY

  34. WEB SERVICE SOFTWARE FACTORY • Helps developers and architects build Web service applications • Integrated collection of tools, patterns, source code and prescriptive guidance

  35. WEB SERVICE SOFTWARE FACTORY Benefits: • Increased quality • Increased predictability • Increased productivity • Increased flexibility

  36. MOBILE CLIENT SOFTWARE FACTORY

  37. MOBILE CLIENT SOFTWARE FACTORY • Provides guidance to help architects and developers create mobile applications that interact with back-end systems over networks like WiFi and GPRS

  38. MOBILE CLIENT SOFTWARE FACTORY Contents: • Guidance / Patterns • How-to topics • Reference Implementations • Guidance Automation Toolkit

  39. MOBILE CLIENT SOFTWARE FACTORY Benefits: • Accelerated start • Reduced risk • Increased quality • Increased productivity • Ease of adoption

  40. WEB CLIENT SOFTWARE FACTORY

  41. WEB CLIENT SOFTWARE FACTORY • Provides proven solutions to common challenges found while building and operating large transaction processing enterprise Web sites

  42. WEB CLIENT SOFTWARE FACTORY Contents: • Collection of reusable components and libraries • Visual Studio 2005 solution templates, wizards and extensions • How-to topics

  43. WEB CLIENT SOFTWARE FACTORY Benefits: • Business – simplification of business tasks • Architecture – common development architecture • Developer Teams – faster production

  44. WHAT LIES AHEAD IN SOFTWARE FACTORIES

  45. ACROPOLIS • Define your entire application in a very rich designer environment • Build parts, behaviors, navigation, and even business logic all in a designer • Future of smart client software factory

  46. SOFTWARE FACTORY Bersabe, Toni Rose Castañeda, Karen Rose Loreto, Jeremy Ong, Glenn Richmond EM-TECH – S15

More Related