Rethinking Productivity in Software Engineering


Book Description

Get the most out of this foundational reference and improve the productivity of your software teams. This open access book collects the wisdom of the 2017 "Dagstuhl" seminar on productivity in software engineering, a meeting of community leaders, who came together with the goal of rethinking traditional definitions and measures of productivity. The results of their work, Rethinking Productivity in Software Engineering, includes chapters covering definitions and core concepts related to productivity, guidelines for measuring productivity in specific contexts, best practices and pitfalls, and theories and open questions on productivity. You'll benefit from the many short chapters, each offering a focused discussion on one aspect of productivity in software engineering. Readers in many fields and industries will benefit from their collected work. Developers wanting to improve their personal productivity, will learn effective strategies for overcoming common issues that interfere with progress. Organizations thinking about building internal programs for measuring productivity of programmers and teams will learn best practices from industry and researchers in measuring productivity. And researchers can leverage the conceptual frameworks and rich body of literature in the book to effectively pursue new research directions. What You'll LearnReview the definitions and dimensions of software productivity See how time management is having the opposite of the intended effect Develop valuable dashboards Understand the impact of sensors on productivity Avoid software development waste Work with human-centered methods to measure productivity Look at the intersection of neuroscience and productivity Manage interruptions and context-switching Who Book Is For Industry developers and those responsible for seminar-style courses that include a segment on software developer productivity. Chapters are written for a generalist audience, without excessive use of technical terminology.




The Productive Programmer


Book Description

Anyone who develops software for a living needs a proven way to produce it better, faster, and cheaper. The Productive Programmer offers critical timesaving and productivity tools that you can adopt right away, no matter what platform you use. Master developer Neal Ford not only offers advice on the mechanics of productivity-how to work smarter, spurn interruptions, get the most out your computer, and avoid repetition-he also details valuable practices that will help you elude common traps, improve your code, and become more valuable to your team. You'll learn to: Write the test before you write the code Manage the lifecycle of your objects fastidiously Build only what you need now, not what you might need later Apply ancient philosophies to software development Question authority, rather than blindly adhere to standards Make hard things easier and impossible things possible through meta-programming Be sure all code within a method is at the same level of abstraction Pick the right editor and assemble the best tools for the job This isn't theory, but the fruits of Ford's real-world experience as an Application Architect at the global IT consultancy ThoughtWorks. Whether you're a beginner or a pro with years of experience, you'll improve your work and your career with the simple and straightforward principles in The Productive Programmer.




Why Does Software Cost So Much?


Book Description

Known for his ability to find provocative answers to the most puzzling questions, Tom DeMarco explores a wide range of issues in twenty-four masterful essays.The offerings range from the wise to the kooky -- in fact, many of them defy categorization. But all are marked by the author's eye-opening perspectives on topics that demand your professional attention.Drawing together several essays published in such journals as IEEE Software and American Programmer, plus ten all-new papers never seen beyond his circle of colleagues, Tom DeMarco tackles a multitude of tough subjects and wrestles fresh insight out of them. Here's a compact, compelling edition of this acclaimed consultant's views on software engineering.Subjects include management-aided engineering, documentation, desktop video, productivity, software factories, teams, measurement, icons, and more!Essays Include* Why Does Software Cost So Much?* Mad About Measurement* Software Productivity: The Covert Agenda* The Choir and the Team* Management-Aided Software Engineering (with Sheila Brady of Apple Computer)* Lean and Mean* Software Development: State of the Art vs. State of the Practice (with Tim Lister)* Twenty Years of Software Engineering: Looking Forward, Looking Back* "If We Did Only One Thing to Improve . . ."-- plus fifteen more!




The New Software Engineering


Book Description

This text is written with a business school orientation, stressing the how to and heavily employing CASE technology throughout. The courses for which this text is appropriate include software engineering, advanced systems analysis, advanced topics in information systems, and IS project development. Software engineer should be familiar with alternatives, trade-offs and pitfalls of methodologies, technologies, domains, project life cycles, techniques, tools CASE environments, methods for user involvement in application development, software, design, trade-offs for the public domain and project personnel skills. This book discusses much of what should be the ideal software engineer's project related knowledge in order to facilitate and speed the process of novices becoming experts. The goal of this book is to discuss project planning, project life cycles, methodologies, technologies, techniques, tools, languages, testing, ancillary technologies (e.g. database) and CASE. For each topic, alternatives, benefits and disadvantages are discussed.




LaTeX in 24 Hours


Book Description

This book presents direct and concise explanations and examples to many LaTeX syntax and structures, allowing students and researchers to quickly understand the basics that are required for writing and preparing book manuscripts, journal articles, reports, presentation slides and academic theses and dissertations for publication. Unlike much of the literature currently available on LaTeX, which takes a more technical stance, focusing on the details of the software itself, this book presents a user-focused guide that is concerned with its application to everyday tasks and scenarios. It is packed with exercises and looks at topics like formatting text, drawing and inserting tables and figures, bibliographies and indexes, equations, slides, and provides valuable explanations to error and warning messages so you can get work done with the least time and effort needed. This means LaTeX in 24 Hours can be used by students and researchers with little or no previous experience with LaTeX to gain quick and noticeable results, as well as being used as a quick reference guide for those more experienced who want to refresh their knowledge on the subject.




Rethinking Project Management for a Dynamic and Digital World


Book Description

Although project management is a newly recognised profession, it deals with a number of significant challenges. We seem to operate in an unprecedented environment, rife with change, innovation and turbulence. Moreover, projects by their very nature tend to push boundaries, encourage novelty and demand engagement with the uncertain and the unknown. Indeed, projects reflect our organised impulse to constantly amend, shape, improve and refine our context. So how can future projects overcome the challenges? Rethinking Project Management for a Dynamic and Digital World makes a powerful and original statement equipping project leaders and managers with new approaches and frameworks for an increasingly demanding world where the traditional methods, models and mindsets no longer suffice. The book explores new trends, promising ideas and novel concepts and distils the fundamentals for marshalling a world concerned with people, communities and value by deploying innovation, rethinking purpose and acting responsibly. An increasingly borderless, upwardly mobile and entrepreneurial society requires a revamped and revitalised project perspective that is more dynamic, adaptive and reflective. This volume brings together some of the best writing by leading authorities on many key topics, including benchmarking, lean quality, communicating, teams and teamwork, followership, organising for project work, project frameworks, agile working, project portfolios, strategic initiatives, strategic alignment, trust, entrepreneurship, putting people first, social processes, positive organisations, rethinking progress, the hacker paradigm, community, stewardship and knowledge management. The collection thus offers an invaluable new resource for informed managers looking to engage with the latest thinking and research and for researchers seeking to reflect on how the discipline is changing.




Peopleware


Book Description

Most software project problems are sociological, not technological. Peopleware is a book on managing software projects.




Modern Software Engineering


Book Description

Improve Your Creativity, Effectiveness, and Ultimately, Your Code In Modern Software Engineering, continuous delivery pioneer David Farley helps software professionals think about their work more effectively, manage it more successfully, and genuinely improve the quality of their applications, their lives, and the lives of their colleagues. Writing for programmers, managers, and technical leads at all levels of experience, Farley illuminates durable principles at the heart of effective software development. He distills the discipline into two core exercises: learning and exploration and managing complexity. For each, he defines principles that can help you improve everything from your mindset to the quality of your code, and describes approaches proven to promote success. Farley's ideas and techniques cohere into a unified, scientific, and foundational approach to solving practical software development problems within realistic economic constraints. This general, durable, and pervasive approach to software engineering can help you solve problems you haven't encountered yet, using today's technologies and tomorrow's. It offers you deeper insight into what you do every day, helping you create better software, faster, with more pleasure and personal fulfillment. Clarify what you're trying to accomplish Choose your tools based on sensible criteria Organize work and systems to facilitate continuing incremental progress Evaluate your progress toward thriving systems, not just more "legacy code" Gain more value from experimentation and empiricism Stay in control as systems grow more complex Achieve rigor without too much rigidity Learn from history and experience Distinguish "good" new software development ideas from "bad" ones Register your book for convenient access to downloads, updates, and/or corrections as they become available. See inside book for details.




201 Principles of Software Development


Book Description

Software -- Software Engineering.




Hacking Marketing


Book Description

Apply software-inspired management concepts to accelerate modern marketing In many ways, modern marketing has more in common with the software profession than it does with classic marketing management. As surprising as that may sound, it's the natural result of the world going digital. Marketing must move faster, adapt more quickly to market feedback, and manage an increasingly complex set of customer experience touchpoints. All of these challenges are shaped by the dynamics of software—from the growing number of technologies in our own organizations to the global forces of the Internet at large. But you can turn that to your advantage. And you don't need to be technical to do it. Hacking Marketing will show you how to conquer those challenges by adapting successful management frameworks from the software industry to the practice of marketing for any business in a digital world. You'll learn about agile and lean management methodologies, innovation techniques used by high-growth technology companies that any organization can apply, pragmatic approaches for scaling up marketing in a fragmented and constantly shifting environment, and strategies to unleash the full potential of talent in a digital age. Marketing responsibilities and tactics have changed dramatically over the past decade. This book now updates marketing management to better serve this rapidly evolving discipline. Increase the tempo of marketing's responsiveness without chaos or burnout Design "continuous" marketing programs and campaigns that constantly evolve Drive growth with more marketing experiments while actually reducing risk Architect marketing capabilities in layers to better scale and adapt to change Balance strategic focus with the ability to harness emergent opportunities As a marketer and a manager, Hacking Marketing will expand your mental models for how to lead marketing in a digital world where everything—including marketing—flows with the speed and adaptability of software.