官术网_书友最值得收藏!

Process methodologies

At some level, all development process methodologies are variations on the theme of managing development within the boundaries of some common realities:

  • There are only so many useful working hours per person per day that can be devoted to a project
  • There is a limit to the available resources, whether in terms of people, equipment, or money, available to a project
  • There is a minimum acceptable quality standard for the project when it's complete

This is sometimes expressed as the Iron Triangle of project management:

The primary concern with respect to the Speed point is timethe most common focus is probably on a project needing to be complete by a specific deadline, or there is some other time constraint that may only be surmountable by adding developers to the team (an increase in Cost), or by cutting corners (a decrease in Quality).
 Budget variations are a common theme for the Cost point—anything that costs money, whether in the form of additional developers, newer/faster/better tools, and so on.
Reducing the available resources/staff decreases the
Speed of project completion and/or the final Quality.

The Quality point is, obviously, concerned with quality measures—which might include specific internal or external standards—but could easily include less obvious items such as longer-term maintainability and support for new features and functionality. Prioritizing Quality, at a minimum, requires more developer hours, decreasing Speed, and increasing Cost.

Often, significant priority (whatever value for significant might apply) can only be given to two out of the three points of the triangle at most, yielding three priority possibilities:

  • Fast, inexpensive development, at the cost of quality
  • Fast, high-quality development, but at greater cost
  • High-quality, inexpensive development that takes a longer time to complete
The Lean Startup Method (or just Lean) is sometimes cited as an alternative process methodology that can overcome the constraints of the Iron Triangle, but is beyond the scope of this book. A reasonable introduction to its concepts can be found at  https://www.castsoftware.com/glossary/lean-development.

There are three specific development process methodologies that are worth an in-depth examination in the context of this book. The first, Waterfall, will be examined in order to provide a frame of reference for two Agile methodologies, Scrum and Kanban, and a few others will be looked at as well, at least briefly. A full discussion of any of them is well beyond the scope of this book, but the intention is to provide enough detail on each of them to illustrate what their focuses and priorities are, as well as their advantages and drawbacks. At a minimum, this should provide a baseline of what to expect while working in any of them, tying the phases of each methodology back to the phases of the model SDLC from Chapter 3System Modeling, to show what happens, when, and how.

主站蜘蛛池模板: 娱乐| 浦北县| 金乡县| 蕉岭县| 兴城市| 利辛县| 怀仁县| 泉州市| 揭东县| 石泉县| 达拉特旗| 北安市| 镇江市| 清丰县| 寿宁县| 开封市| 易门县| 美姑县| 吉安市| 阳泉市| 时尚| 莱阳市| 乌拉特中旗| 扬中市| 密云县| 永清县| 宜兰市| 灵川县| 绍兴县| 论坛| 沅陵县| 普陀区| 景宁| 华坪县| 遂昌县| 双柏县| 会东县| 富锦市| 微山县| 色达县| 平陆县|