192

ISBN : 978-81-963532-2-3 (E-Book) • Production ofgood qualitydocuments • Jobspecialization • Efficienthandlingoftheproblemsassociatedwithmanpowerturnover. The functional organization allows the engineers to become specialists in particular roles, e.g.requirements analysis, design, coding, testing, maintenance, etc. They perform these roles againand again for different projects and develop deep insights to their work. It also results in moreattentionbeingpaidtoproperdocumentationattheendofaphasebecauseofthegreaterneedfor clear communication as between teams doing different phases. The functional organizationalso provides an efficient solution to the staffing problem. We have already seen that the staffingpattern should approximately follow the Rayleigh distribution for efficient utilization of thepersonnel by minimizing their wait times. The project staffing problem is eased significantlybecause personnel can be brought onto a project as needed, and returned to the functional groupwhen they are no more needed. This possibly is the most important advantage of the functionalorganization. A project organization structure forces the manager to take in almost a constantnumber of engineers for the entire duration of his project. This results in engineers idling in theinitial phase of the software development and are under tremendous pressure in the later phase ofthe development. A further advantage of the functional organization is that it is more effective inhandling the problem of manpower turnover. This is because engineers can be brought in fromthe functional pool when needed. Also, this organization mandates production of good qualitydocuments,so newengineers can quicklyget usedto thework alreadydone. Unsuitabilityoffunctionalformatin smallorganizations In spite of several advantages of the functional organization, it is not very popular in the softwareindustry.The apparentparadoxisnotdifficulttoexplain.The projectformatprovidesjobrotationtotheteammembers.Thatis,eachteammembertakesontheroleofthe designer,coder, tester, etc during the course of the project. On the other hand, considering the present skillshortage, it would be very difficult for the functional organizations to fill in slots for some rolessuch as maintenance, testing, and coding groups. Also, another problem with the functionalorganizationisthatifanorganizationhandlesprojectsrequiringknowledgeofspecializeddo main areas, then these domain experts cannot be brought in and out of the project for thedifferent phases, unless the company handles a large number of such projects. Also, for obviousreasons the functional format is not suitable for small organizations handling just one or twoprojects. TeamStructures Team structure addresses the issue of organization of the individual project teams. There aresome possible ways in which the individual project teams can be organized. There are mainlythreeformalteamstructures:chiefprogrammer,democratic,andthemixedteamorganizations. 187 Software Engineering Keerthana P, Manasa KN, Ganga D Bengal

193 Publizr Home


You need flash player to view this online publication