|  
 
    A Discipline is a collection of Tasks that are related to a major "area of concern" within the overall project. The
    grouping of Tasks into Disciplines is mainly an aid to understanding the project from a traditional waterfall
    perspective. Although it is more common to perform Tasks concurrently across several Disciplines (for example, certain
    requirements Tasks are performed in close coordination with analysis and design Tasks), separating these Tasks into
    distinct Disciplines is simply an effective way to organize content, which makes comprehension easier.
 
    Another reason that several Tasks are all categorized by the same Discipline is that they all represent a part in
    achieving a higher goal or performing work that is all related to each other.  Every Discipline defines standard
    ways of doing the work it categorizes.  Such standard ways are expressed by so-called reference workflows
    described with Capability Patterns defining how the Tasks categorized by the Discipline 'work
    together' in the most generic way.  These reference workflows are often used for educating and teaching
    practitioners.
 
    Like other workflows, a Discipline's reference workflow is a semi-ordered sequence of activities presented as either a
    breakdown structure or an activity diagram performed to achieve a particular result. The "semi-ordered" nature of
    Discipline workflows emphasizes that the Discipline workflows cannot present the real nuances of scheduling "real
    work", for they cannot depict the optionality of activities or iterative nature of real projects. Yet they still have
    value as a way for us to understand the process by breaking it into smaller areas of concern.
 
    Example: The role of Disciplines in Software Engineering
    In Software Development, each Discipline has associated with it one or more 'models', which are in turn composed of
    associated Work Products. Some fundamental disciplines identified in Software are:
 
    - 
        Business Modeling
    
 
    - 
        Requirements
    
 
    - 
        Analysis and Design
    
 
    - 
        Implementation
    
 
    - 
        Test
    
 
    - 
        Deployment
    
 
    - 
        Configuration and Change Management
    
 
    - 
        Project Management
    
 
    - 
        Environment
    
 
  |