In today's complex software development environments, no single developer can be a specialist in all fields. The organization should allow and reward developers who become true specialists in a single field. Also, the workload should be managed to allow software developers to lead balanced lives.
No one can work eighteen hours a day forever and be expected to maintain his or her work quality and personal satisfaction. This is the corollary of mistake number 8. A healthy organization employs everyone's complete range of talents to their fullest. Software developers who are allowed to underachieve will become bored with their work, which will only lead to poorer quality and further underperformance.
Organizational structures should eliminate all incentives for empire building. This means providing equal career paths for both senior level software engineers and software development managers. Along the same lines, career paths should be provided both for software generalists and software specialists, as both are needed in a healthy organization. Customer satisfaction should be the ultimate goal of all software development organizations. One organization should not have goals whose achievement effects the customer satisfaction of another organization.
For instance, if two development groups are working on applications for the same customer that must ultimately be integrated together, one organization should not be rewarded for meeting its timelines if this was only done at the expense of creating a more difficult integration task for the second group.
Every experienced software development manager recognizes the importance of matching a developer's job to their personality. However, even in the most stable of organizations, individuals come and go. You should not therefore, design organizations around individual personalities. Instead, organize them around more general personality types. This allows them to recognize the value of individual diversity without having to reorganize every time someone comes and goes.
There comes a time when all software development organizations must change to adopt to new business models, technologies, or clients.
However, mandating a structural change has little or no effect if it is not accompanied by cultural and process changes. The best way to assure successful change is to manage it via a participative process where all developers are given a chance to effect the final outcome. Previous page. Table of content. Next page. Sample Organizational Structures The next four sections describe alternative organization schemes commonly found in software development departments: Project centered organizations Department centered organizations Matrix organizations Product line organizations While none of the above will be perfect for every software development group , they each offer useful ideas for coming up with your organization scheme.
Project Centered Organizations Organizations centered around project teams are typically found in smaller or newly formed groups. Department Centered Organizations Department centered development organizations start to become practical as a group grows above 25 developers or 5 projects.
For instance, a 40 person group might have departments for: system and database administrators user interface programmers application programmers configuration management, test, and quality assurance A common mistake in department centered organizations is to break software architects into a separate department or group.
Matrix Organizations When your development organization grows to several hundred people or more, you may want to consider a matrix organization. Product Line Organizations In a product line organization, developers are organized into projects based on business product lines as opposed to skill set departments. Recurring Organizational Themes When choosing how to organize your software development organization, these recurring themes and concepts are ones you should address: creating a software process team balancing centralized versus decentralized organization managing virtual teams Creating a Software Process Team Regardless of organization, every development organization should have a software process team.
Balancing Centralized versus Decentralized Organization Most IT groups have experimented with different mixes of centralized versus decentralized organizations. Managing Virtual Teams Static software development organizations worked well when software was limited to a small, well-defined , and static set of functions within an organization.
Figure 6. Large Corporate Software Development Department Thirteen Organizational Structure Mistakes No matter the size of your software development organization, there are certain mistakes you want to avoid. Authors: Marc Hamilton.
Oracle Developer Forms Techniques. Postfix: The Definitive Guide. Cisco Voice Gateways and Gatekeepers. If you may any questions please contact us: flylib qtcs. Privacy policy. This website uses cookies. Click here to find out more. Accept cookies. Testers, programmers, and engineers all play important roles in software development. The organizational structure of a software company should also include information regarding workflow and communication.
A marketing department needs to communicate with software development to ensure that projects are meeting the expectations of clients. Computer networks have become an important part of any organizational structure.
As a company grows, its organizational structure should change. For this reason, a structure is often thought to be in a state of continual improvement. It is common for an executive to analyze processes in real time and change how work is distributed to improve processes.
Software companies tend to be client driven, so it also is common for executives to change marketing to meet the needs of new products or interests.
Easily create org charts to diagram the structure of your business or design a new one. Share them with employees, teams, and stakeholders. Turn employee data from a spreadsheet into a visual map of your organization.
Convey complex organizational structures or organograms in one clear picture with built-in templates and org chart examples in Visio. Add photos, links, and staff information. Convert an Excel spreadsheet or other data source into a map of your business or organization in just a few steps.
Represent large organizations effectively across multiple pages.
0コメント