Fundamentals of Software Company Operations cover page

Fundamentals of Software Company Operations

Fundamentals of Software Company Operations

Fundamentals of Software Company Operations Edit


About the Book

Many leaders of software and technology companies today look at their organizations as a collection of departments bound together by a set of corporate, department and individual goals believing that, along with the organizational structure and cost accounting methodology, they are leading a focused, high-throughput organization. While we expect software, hardware, network and performance engineers to look at system level architecture and solutions, software and technology company leaders often behave as component thinkers and fail to recognize the need to balance system load, that which is on the company as whole, in order to maximize throughput, and as a by-product, revenue. While many technologists may seek to practice iterative, predictable, repeatable and disciplined system level behaviors, these same leaders do not realize or understand how their component level viewpoints and decisions actually degrade organizational performance.

This book discusses the immediately tangible operational value of using General Systems Thinking, Agile Principles and the Theory of Constraints as a synthesized platform from which to run a well-honed, profitable software and technology company. What we all need to know to run a company is not contained in one graduate degree, one book or built upon the successes of yesterday. Rather, what we really need to know in order to run a profitable, healthy and flourishing software and technology company is contained in our ability to synthesize multiple bodies of knowledge into foundational set of operational principles and behaviors that not only keep leaders employed, but keep companies profitable.

Read more

Table of Contents

  1. Purpose and Construct of This Book
  2. Arriving at a Common Understanding
    1. The Characteristics of People
    2. The Role of Transparency in Leadership
    3. The Definition of a System
    4. What is General Systems Thinking?
    5. Garden System Example
    6. System Scaffolding Example
    7. Extrapolating Patterns and Principles from Unlike Systems
    8. What is the Theory of Constraints?
    9. What is Agile?
    10. User Stories
    11. User Story Sizing and Estimation
    12. Test Driven Development
    13. Extreme Programming
    14. Scrum
    15. Continuous Integration, Test, Inspection and Deployment
  3. An Agile Implementation Story
    1. Where the company was at the beginning
    2. Where the company wanted to go in three years
    3. How the company was transitioned from A to B
    4. What went well
    5. What did not work
    6. What Should Have Been Done Differently
  4. An Operational Model for Software Companies
    1. See the Company as a System
    2. Organizational Structure and Focused Flow
    3. Establish the Skeletal System
    4. Vision and Mission Statements
    5. System-Level Objective Setting
    6. Traceability in the Delivery Chain
    7. Release Planning
    8. Establish the Heartbeat
    9. Behavioral Patterns
    10. Reporting Patterns
    11. Balance the Flow of the Circulatory System
    12. Perform Regular Check-ups
    13. Daily-Standups
    14. Pairing and Pair Switching
    15. Continuous Evolution Behaviors
    16. Demonstration
    17. Pro-actively Maintain and Improve System Health
    18. Iteration-level Lessons Learned Meetings
    19. Feedback and Rework Loops
    20. Training and Mentoring
  5. Final Notes
  6. Recommended Reading List

Read More

About the Author

The Leanpub Unconditional, No Risk, 100% Happiness Guarantee

Within 45 days of purchase you can get a 100% refund on any Leanpub purchase, in two clicks. We process the refunds manually, so they may take a few days to show up.
See full terms