Software Factory
A Software Factory is a development environment configured to support the rapid development of a specific type of application. Software Factories are just a logical next step in the continuing evolution of software development methods and practices. However, they change the character of the software industry by introducing patterns of industrialization.
• It’s a software product line that configures
– Extensible tools
– Processes
– Content using a software factory template based on a software factory schema
• It helps to automate the development and maintenance product by adapting
– assembling
– configuring framework-based components
• Help building specific type of application
– Smart client
– Web service
– Web application
– Mobile application
• Incorporate guidelines and best practice
– Architecture and design guidance
– Patterns
– How-to’s
– Application blocks
– Guidance packages
Why software factory?
• Productivity in software development
• Reusability in efficient way
• Reduction in development time
• Communication between architect and development team
• Utilize resources not having extensive expertise on software development
• Shorten time to market
– Reuse of existing core assets
• Improved product quality
– Pre-tested factory
– Less chance of error during development
• Framework variability and extensibility
• Expand market
– By selling products
– Frameworks
Which are available software factory?
• Web Client Software Factory
• Smart Client Software Factory
• Web Service Software Factory
• Mobile Client Software Factory
Web Client Software Factory capabilities
Modularity
User experience
Page flow
Deployment and updates
Security
State management
Manageability
Web service communication
Details about web-client software factory:
To know more:
http://msdn2.microsoft.com/en-us/library/bb264518.aspx#wcsfbenefits
http://msdn2.microsoft.com/en-us/architecture/aa480032.aspx