Engineering Practices

From Guidance Share

(Difference between revisions)
Jump to: navigation, search
Revision as of 03:55, 19 October 2006 (edit)
Admin (Talk | contribs)

← Previous diff
Revision as of 03:57, 19 October 2006 (edit)
Admin (Talk | contribs)

Next diff →
Line 2: Line 2:
== Engineering Practices Frame == == Engineering Practices Frame ==
-{-+{|
| '''Knowledge Area''' | '''Practices''' | '''Activities''' | '''Artifacts''' | '''Knowledge Area''' | '''Practices''' | '''Activities''' | '''Artifacts'''
|- |-
-| Planning | Planning Practices | Planning Activities | Planning Artifacts+| Planning | Planning Practices | Planning Activities | Planning Artifacts |
|- |-
-| Requirements and Analysis | Requirements Practices | Requirements Activities | Requirements Artifacts+| Requirements and Analysis | Requirements Practices | Requirements Activities | Requirements Artifacts |
|- |-
-| Architecture and Design | Arch And Design Practices | Arch And Design Activities | Arch And Design Artifacts+| Architecture and Design | Arch And Design Practices | Arch And Design Activities | Arch And Design Artifacts |
|- |-
-| Development | Development Practices | Development Activities | Development Artifacts+| Development | Development Practices | Development Activities | Development Artifacts |
|- |-
| Testing | Testing Practices | Testing Activities | Testing Artifacts | | Testing | Testing Practices | Testing Activities | Testing Artifacts |
|- |-
-| Deployment | Deployment Practices | Deployment Activities | Deployment Artifacts+| Deployment | Deployment Practices | Deployment Activities | Deployment Artifacts |
|- |-
-| Maintenance | Maintenance Practices | Maintenance Activities | Maintenance Artifacts+| Maintenance | Maintenance Practices | Maintenance Activities | Maintenance Artifacts |
|- |-
-| Security Engineering | Security Engineering Practices | Security Engineering Activities | Security Engineering Artifacts+| Security Engineering | Security Engineering Practices | Security Engineering Activities | Security Engineering Artifacts |
|- |-
-| Performance | Performance Practices | Performance Activities | Performance Artifacts+| Performance | Performance Practices | Performance Activities | Performance Artifacts |
|- |-
-| Flexibility | Flexibility Practices | Flexibility Activities | Flexibility Artifacts+| Flexibility | Flexibility Practices | Flexibility Activities | Flexibility Artifacts |
--}+|}
== Objectives == == Objectives ==

Revision as of 03:57, 19 October 2006

Better software through proven practices. Improve the ability for practitioners to build quality software solutions faster and easier. Build a community around engineering practices to help foster emerging software engineering practices, as well as make good software engineer practices more accessable to everyday practice.

Contents

Engineering Practices Frame

Practices | Activities | Artifacts
Planning Practices | Planning Activities | Planning Artifacts |
Requirements Practices | Requirements Activities | Requirements Artifacts |
Arch And Design Practices | Arch And Design Activities | Arch And Design Artifacts |
Development Practices | Development Activities | Development Artifacts |
Testing Practices | Testing Activities | Testing Artifacts |
Deployment Practices | Deployment Activities | Deployment Artifacts |
Maintenance Practices | Maintenance Activities | Maintenance Artifacts |
Security Engineering Practices | Security Engineering Activities | Security Engineering Artifacts |
Performance Practices | Performance Activities | Performance Artifacts |
Flexibility Practices | Flexibility Activities | Flexibility Artifacts |

Objectives

  • Provide customer guidance for software engineering practices and techniques
  • Refine and enhance successful software practices
  • Reduce mistakes and improve software quality
  • Bake quality attributes (security, performance, … etc.) into the life cycle
  • Build a community around best software development practices
  • Increase precision around context

Deliverables

Modular, task based guidance for life cycle activities and artifacts.

* Information Model * Practices * How Tos * Templates * Samples * Walkthroughs * Checklists * Patterns * Community * Tools integration * Product Feedback

Approach

  • Organize best practices using knowledge areas.
  • Build a library of “pluggable”, modular software engineering techniques
  • Identify practices that improve software quality and engineering efficiency
  • Identify and reduce pitfalls within software engineering activities
  • Prioritize software engineering activities based on results in practice


Key Terms

  • Knowledge Areas. Organizing scheme that brings together common practices, activities, techniques.
  • How Tos. Step-by-step, task-based guidance.
  • Templates. Standardized template to help execute the activity/steps. Cross-discipline communication tool.
  • Samples. Best practice samples of what good looks like.
  • Walkthroughs. Narrative hand-holding through the activity
  • Checklists.
  • Activity Patterns.
  • Artifact Patterns.

Key Concepts

  • Build a knowledge base of software engineering techniques
    • Focus on practices not process
    • Favor the practitioner and results over theory
    • Leverage industry subject matter experts
  • Organize guidance using Knowledge Areas
    • Key software engineering activities (development, testing … etc.)
    • Quality attributes (performance, security, flexibility … etc.)
  • Turn quality attributes into actionable activities and techniques
    • Break quality attributes down into actionable categories
    • Identify and refine techniques that improve the success
  • Build a library of “pluggable”, modular practices
    • Favor modular content types over monolithic
  • Incremental Adoption of Practices and Techniques
    • Can use them together, but adopt incrementally (“Better Together”)
    • Frame to set the context
  • Increase precision around context
    • Archetypes (Web, Desktop, Web Service … etc.)
    • Scenarios (Intranet, Internet … etc.)
  • Tools integration
    • Pluggable in MSF/VS .NET/Team Tools/MSF
    • Richest experience with MSF
  • Create a site for sharing best software engineering practices
    • Practitioner-to-Practitioner assistance
    • Community submissions
Personal tools