H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo Day
10 Unex SFIC 2009
1. Key Technologies and solutions for
software factories
admin@zentipede.org
Software Factories International Congress
2. • In 2004, SGAE had great technological challenges to overcome.
• They needed an increase of their workforce to cover all of them
• With the objective of an efficient increase, they implemented a software
factory
• And, they decided to open it in Cáceres
• The relationship between SGAE and UEX began in 2005
• Professors were involved in management and control of the factory
• Project leaders realized that time spent on these tasks were too
much
• Zentipede: process management and monitoring tool
• JACA: technology for increasing the development efficiency
Software Factories International Congress
3. Index
• SGAE-UEX experience
• Collaboration SGAE-UEX
• Factory Management Process
• Needs and Problems
• Lessons Learned and Key Success
• Zentipede: process management and monitoring tool.
• JACA: technology for increasing the development efficiency.
• Conclusions
Software Factories International Congress
4. SGAE-UEX experience. Collaboration
• SGAE was developing an application to manage authors rights (TESEO)
• It was developed internally
• With the latest and greatest technological advances
• In 2004, they detected the necessity of increase their workforce
• Outsourcing
• Business complexity
• Project leaders, designers, developers, were already involve in the project
• Software factory
• Business needs were easier to transmit
• Workforce could be increased easier
• The factory was created in Cáceres, beginning the collaboration
between SGAE and UEX, which lasted from 2005 to 2007
Software Factories International Congress
5. SGAE-UEX experience. Collaboration
• This relationship began with the signature of a contract between
SGAE and a UEX research group
• Under this contract was established that:
• SGAE contributed with 30 grants
• UEX contributed with installations for the factory
• In this sense both obtained some benefits:
• SGAE achieved a group of developer trained in their business and needs
• UEX achieved:
• On research, attracting real problems
• On teaching, giving the possibility of real and practical training
Software Factories International Congress
6. SGAE-UEX experience. Factory Management Process
• First step, hiring developers
• Students, from Computer Science, were selected
• Second step, organizing working teams
• 4+1 teams
• Highly flexible and reconfigurable
• Third step, projects were assigned to teams.
• They were usually designed in Madrid and developed in Cáceres
• In order to keep a perfect control of project:
• One face to face meeting per week, between project leaders and SGAE staff
• Electronic applications were used to monitor projects
• Another internal meeting per week, between project leaders and team leaders.
• Analyzing problems detected in other meetings
• Analyzing work done during the week
• Showing documents with use cases completed or productivity per project
Software Factories International Congress
7. SGAE-UEX experience. Needs and Problems
• Needs:
• Total transparency from the factory to SGAE.
• Generating weekly reports with use cases sent to the factory, completed use cases,
pending use cases, productivity of each worker, etc.
• Problem:
• Time wasted by each team leader on the generation of these reports
• Solution:
• Generating these reports automatically. Zentipede
Software Factories International Congress
8. SGAE-UEX experience. Lessons Learned and key success
• Lessons Learned
• Fruitful relationship for both
• SGAE:
• Improving its image in Extremadura
• Developing applications at lower costs
• University:
• Educating a highly skilled group of engineers
• The research group was strengthened by real problems
• Other companies are collaborating with the university
(Communi.tv,Indra,Insa,etc)
• Key success:
• The transparency and control of the factory
• Definition of clear communication protocols
• The effort of each people from University and SGAE
Software Factories International Congress
9. Technologies and solutions for software factories
• Result of this
experience:
• R+D of new
technologies that
can be applied to
these environments
Software Factories International Congress
11. Zentipede. Technical proposal
Software Process
Modelling
Software Process
Execution
Software Process
Management
Case Tools Documentation
ENTERPRISE SERVICE BUS
Software Factories International Congress
12. Zentipede. Process Management
• It is a web application that represents the core of Zentipede
• It is responsible for:
• Managing projects
• Controlling the participation of developers in projects
• Managing developers and their daily work
• Generating reports and statistics
Software Factories International Congress
14. Zentipede. Process Management
• Generating reports and statistics
sep oct nov dic ene
62,99%
81,25%
83,84%
80,41%
72,26%
0,00%
20,00%
40,00%
60,00%
80,00%
100,00%
%
Months
Average monthly occupancy rate
%Desoccupation
%Occupation
Contribution of each project to occupancy rate
2005 T MMB
2005 Alabama
2005 Codificacion
2005 WER
2005 IPI/TIS
2005 Global
Connector
2005 ELOS
2005 CMM
2005 T MMB 2005 Alabama 2005 Codificacion 2005 WER
2005 IPI/TIS 2005 Global Connector 2005 ELOS 2005 CMM
Average resources allocated to each project for months
0,00
1,00
2,00
3,00
4,00
5,00
6,00
7,00
8,00
TMMB
Alabama
Codificacion
WER
IPI/TIS
Global
ELOS
CMM
TMMB
Alabama
Codificacion
WER
IPI/TIS
Global
ELOS
CMM
TMMB
Alabama
Codificacion
WER
IPI/TIS
Global
ELOS
CMM
TMMB
Alabama
Codificacion
WER
IPI/TIS
Global
ELOS
CMM
sep oct nov dic
Nº Recursos
Software Factories International Congress
15. Zentipede. Eclipse Plugin
• Plugin that help developers to know pending tasks
• At the end of each task, it automatically stores time spent,
progress made and source code changes.
Software Factories International Congress
16. Zentipede. Documentation Center
• It helps developers to reduce duplication of effort and risks of
inconsistencies
• Reusing data stored in Zentipede Process Mangement
• Keeping documentation in sync with the state of projects
Software Factories International Congress
17. Zentipede. Benefits
1. General Objectives
• Reducing efforts and automating a part of the process
• It must be adapted to the software process used by each factory but, at
the same time, it has to be flexible enough to allow modifications on it
• Optimizing the use of resources
1. Specific objectives
• Automating as many tasks as possible.
• Generating a huge amount of reports
Software Factories International Congress
22. JACA. Benefits
1. General Objectives
• Improvement of JEE corporate developments
• Unified platform and architecture for corporate developments
• Standard development practices
1. Specific objectives
• Implementing guides for the use of the unified platform and architecture
• Implementing repositories of commons used components
Software Factories International Congress
23. Conclusion
• A real case of collaboration between university and industry
generating R+D technology.
• Zentipede
• Improving process performance and quality
• JACA
• Improving developers reliabilities and efficiency
Software Factories International Congress