![[Book Cover]](../covergif/0132366134.gif)
|
Journey of the Software Professional: The Sociology of Computer Programming, 1/e
Luke Hohmann, ObjectSpace, Inc., Irving, Texas
Published October, 1996 by Prentice Hall PTR (ECS Professional)
Copyright 1997, 454 pp.
Cloth
ISBN 0-13-236613-4
|
Sign up for future mailings on this subject.
See other books about:
Software Engineering (SE)-Computer Science
|

A comprehensive guide to the software development process that will
help software developers at every stage of their career: improving
personal performance, learning to work well in a team, and managing to
create an environment where others can be most effective.
Addresses the psychological and sociological aspects of software
development, presenting a thorough model of individual and collective
software problem-solving behavior, and practical techniques for
enhancing the process.
Covers the structures, processes and outcomes
common to most software development projects, and how to improve them.
Presents ideas on using tools and training more effectively, and
on improving the performance of teams. Shows how to build on your
personal and management successes, and avoid the most common
errors.
PART I.
1. Setting the Foundation.
Problem Solving: Descriptions and Prescriptions.
Cognitive Models. Benefits of Cognitive Models. Method. Benefits of
Methods. Comparing Methods and Cognitive Models. Structures, Processes, and
Outcomes: An Overview. Process. Linking Methods to Cognitive Models.
Process Leveling and Experience. The Descriptive Benefits of Process
Leveling. Process Leveling, Stepwise Refinement, and Opportunistic Design.
Outcome. Preparing Outcomes for Understanding. Lessons From Architecture.
Structure. The Structure-Process-Outcome Framework. The SPO Franewire in
Action. The Critical Role of Feedback. Review.
2. The Integrated Framework.
Values. Personality. Goals. The Integrated Framework. Conflict
and Tension Among Components of the Framework. Review.
PART II.
3. Fortifying the Foundation.
Create Structures and Processes to Achieve Outcomes. Practice
Future Perfect Thinking. Review Early and Often. Kinds of Reviews. Formal
Review Structures. Grow Your Experience. Use Multiple Models. Generate
Alternatives. Differentiate.
4. Understanding Yourself.
Clarify Values. Understand Your Personality. The Kirton Adaption-
Innovation Inventory. The Myers-Briggs Type Indicator. Relationship Between
The KAI and MBTI. The Intersection of Personality and Values. Goals.
Setting Goals. Organizing Goals. Know What You Are Good At.
5. Working Smarter.
Use Tools Wisely. What Is A Tool? Impact of Tools in the SPO
Framework. Limitations and Dangers of Tools. Tools for Software
Development. Use A Project Notebook. What Is A Project Notebook? What
Should It Contain? How to Use A Project Notebook. Managing Time.
Structures, Processes and Outcomes for Time Management. Working With
Support Staff.
6. Training.
What Is Training? Training In the SPO Framework. Self-Learning.
A Competency Framework For Self-Learning. Breadth Vs. Depth In The
Competency Framework. Learning Style and Delivery Mechanisms.
PART III.
7. Development Teams and The SPO Framework.
A Brief Word On Size. Methods And Teams. Beyond Methods: Group
Activities. Organizational Theories. What Is An Organization?
Organizational Interdependence. Rationality. Topologies. Summary. Group
Processes. Identification and Distribution. Coordination and Integration.
Process Leveling In Teams. Collective Mind and GroupThink. The Impact of
Individual Ability. Other Aspects Of Process. Summary. Outcomes. The
Creation Of Shared Outcomes. The Meaning Of Shared Outcomes. Reducing
Ambiguity and Equivocality In Shared Outcomes. Managing Shared Outcomes.
Structure. Essential Structures: System Architecture & Topology. The SPO
Framework In Teams. Methods, Teams, and Topologies. Multiple Integrated
Frameworks. Timing. Feedback Loops and Crosstalk. Review.
8. An Integrated Framework For Teams.
Values. Culture. Goals. Strategy. Corporate Knowledge. The
Integrated Framework. Linking Individuals and Teams. Power and Politics.
Summary.
PART IV.
9. Interpersonal Relations.
Reasonable Persons. Pulling, Not Pushing. Developing Trust.
Impact Of Trust. The Johari Window. Interaction Styles. Increasing The
Arena Of Trust.
10. Communication.
The Creation Of Shared Outcomes. Modeling Communication As
Messages. What Is Meaningful Communication? Communication Structures.
Communication Processes. Communication Outcomes. Changes Over Time. Know
Your Notation. Standards and Guidelines. Status Reports. Effective
Meetings. A Model For Effective Meetings. Project Repositories.
11. Fortifying The Team.
Values. Culture. Norms. Rituals. Stories and Symbols. Shared
Language. How to Influence Culture. Goals.
12. Organizational Engineering.
Coupling and Cohesion. Software Coupling Revisited. Three Types
Of Organizational Coupling. Benefits Of Loose Coupling. Drawbacks Of Loose
Coupling. Achieving Loose Coupling. Cohesive Components and Teams.
Determining Cohesion. Structural, Procedural, and Outcome Cohesion. Being
Cohesive. Complexity and Variety. System Architecture and Organizational
Topology. System Architecture. Traditional Topologies. Organization
Paradigms: Working Within the Topology. Addressing Size and Growth. Putting
It All Together. Roles. Implicit Vs. Explicit Roles. Roles in Support of
System Architecture. Roles Associated with Teamwork. Problems Associated
With Roles. Structure As Process. The Impact of Structure. More or Less
Structure. How Much Structure? The Dangers of Too Much Structure.
13. Technological and Organizational Change.
General Observations on Change. Innovations. Innovation
Structures. The Innovation Evaluation Process. Tools, Techniques, and
Interrelated Outcomes. The S-Shaped Curve of Adoption. Making Innovations
Happen. Reorganizations. Team Lifecycles. Entrances and Exits. New
Organizational Topologies.
14. Team Oriented Training.
Training Benefits. When Is Training Needed? Breadth Vs. Depth In
Teams. What to Train. Approaches To Training.
PART V.
15. Working As A Professional.
Job Mobility. Be A Good Follower. Helping colleagues. Avoid
Office Politics. Office Etiquette. Take Care of Yourself. Eat In
Moderation. Exercise Regularly. Work As Comfortably As Possible. Take
Vacations. Get A Reasonable Amount of Sleep. Know When To Say No. Take
Care Of Your Relationships.
16. Avoiding Bad Working Environments.
Demonstrate Your Skills. Evaluate the Product Release Strategy.
Have A Defined Role. Examine the Turnover Rate. Examine the Opportunity for
Advancement. Are the Big Three Practiced? Review Outstanding Bug Reports.
Interview Your Direct Manager. Talk With Other Developers.
17. Working In A Poor Environment.
Is It Really That Bad? Work To Improve. Maintain Your Network.
Control What You Can Control. Improve Your Skills. Use A Bomb File. Burn
Bridges Carefully.
|