The subsequent illustration exemplifies a complete organizational setup for SELISE A-Team software development. The underlying structure allows for a maximum output. It can only be adopted with highly talented developers and experienced senior engineers.
#1 “Strategic Partnership/ Sponsorship”:
The partnership is in need of a “Strategic Partner”/ Sponsor at the customer as well as a “Strategic Partner” at SELISE. The responsibility of these Strategic Partners is to provide the “Program Manager” with an adequate environment to execute the desired development projects. Furthermore, the Strategic Partners address intra organizational pressure, employee’s insecurity or organizational cultural factors which can jeopardize the partnership.
#2 “Program Management”:
The on-going development activities are run by the “Program Manager” at SELISE. This person is the main contact on a technical level and shall be involved in all technical communication. The Program Manager is responsible for the delivery and the establishment of Quality Assurance and User Experience Design according to the Product Owner’s requirement.
#3 “Product Ownership”:
Customer defines a “Product Owner” who will continuously collect requirements from all the stakeholders and pass the information in an organized way. Depending on the project size, SELISE appoints a “Proxy Product Owner” who will support the Product Owner in his information gathering process, maintain the communication iterations and compare requirements with the developed software. When there is no Proxy Product Owner, the Program Manager will take that responsibility. A fully functioning
#4 “Core Development Team”:
A fully functioning development team is in need of a “Senior Software Engineer (SSE)” with 6 to 8 years of experience who covers the role of a “Project Manager”. This senior is supported by two “Software Engineers (SE)” and one “Junior Software Engineer (JSE)”. In small projects, a team can start with one SSE and one SE or JSE and then grow to a basic team of four developers. In specific cases, the team may vary. The team, however, can only grow up to seven Engineers (usually by first adding a third SE, then by adding a second SSE and another JSE). After another SE needs to be added, the two SSE’s and the Program Manager negotiate how to separate the team of seven plus 1 into two basic teams.
#5 “Quality Assurance”:
“Quality Controllers” are selected by the Project Manager from the independent Quality Assurance team in SELISE. They continuously assure the quality of the created software. A main part of their work consists of setting up automated tests for the software which is undergoing the current building process. Regular code and design reviews are initiated, governed and reported by the head of the Quality Assurance team according to the requested standards.
#6 “User Experience Design”:
“User Experience Design” translate requirements into visual user interfaces which optimize interaction between users and the software created. SELISE UXDs work according to the latest standards unless demanded otherwise. The amount of services these engineers deliver strongly depend on the scope and purpose of the underlying software as well as the Product Owner’s stack of requirements.