Engineering Practices
From Guidance Share
(Difference between revisions)
Revision as of 04:04, 19 October 2006 (edit) Admin (Talk | contribs) ← Previous diff |
Revision as of 04:32, 3 November 2006 (edit) Admin (Talk | contribs) Next diff → |
||
Line 1: | Line 1: | ||
- | 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. | + | * [[Engineering Practices Frame]] |
- | + | ||
- | == Engineering Practices Frame == | + | |
- | {| | + | |
- | | '''Knowledge Area''' || '''Practices''' || '''Activities''' || '''Artifacts''' | + | |
- | |- | + | |
- | | Planning || Planning Practices || Planning Activities || Planning 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 | + | |
- | |- | + | |
- | | Development || Development Practices || Development Activities || Development Artifacts | + | |
- | |- | + | |
- | | Testing || Testing Practices || Testing Activities || Testing Artifacts | + | |
- | |- | + | |
- | | Deployment || Deployment Practices || Deployment Activities || Deployment Artifacts | + | |
- | |- | + | |
- | | Maintenance || Maintenance Practices || Maintenance Activities || Maintenance Artifacts | + | |
- | |- | + | |
- | | Security Engineering || Security Engineering Practices || Security Engineering Activities || Security Engineering Artifacts | + | |
- | |- | + | |
- | | Performance || Performance Practices || Performance Activities || Performance Artifacts | + | |
- | |- | + | |
- | | Flexibility || 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 | + | |
- | + | ||
- | __NOTOC__ __NOEDITSECTION__ | + |