You are previewing Process Quality Assurance for UML-Based Projects.
O'Reilly logo
Process Quality Assurance for UML-Based Projects

Book Description

Software quality, by its very nature, is elusive. Add to that the issue of ever-changing user requirements and the vagaries of software project management and "quality" can easily become a mere word on a distant horizon. This highly acclaimed book demonstrates how the Unified Modeling Language (UML) can be used within a process framework to help reduce complexity, clarify requirements, and add structure to project management in order to yield software quality here and now.

Process Quality Assurance for UML-Based Projects focuses on the crucial process aspect of software quality. In an easy, entertaining way, the author outlines common-sense strategies for determining the applicability of UML to a project, creating and managing project teams, identifying levels of quality standards, applying quality techniques, and estimating and testing in UML-based projects.

With this book you will be able to:

  • Understand the elusive nature of software quality, the pressures on software quality, and the importance of processes and modeling in enhancing software quality

  • Divide modeling into three distinct but related spaces--problem, solution, and background space--and correlate the roles of business analyst, system designer, and system architect to these modeling spaces respectively

  • Understand quality discussions applicable to small, medium, and large projects

  • Appreciate the sociological aspect of quality management in software projects, including the value of transactional analysis (TA) in team formation and motivation

  • Relate to an iterative and incremental process based on the concepts of process-components and related activities, tasks, roles, and deliverables

  • Move your organization forward in terms of CMM process maturity

  • Gain valuable and practical insights into process and project metrics, measurements, and estimations

  • Appreciate the strategic aspect of testing as it relates to quality assurance

  • Understand quality discussions applicable to new developments, integration, package implementation, outsourcing, data warehousing, and educational projects

  • Access extremely well-referenced work by leading practitioners, researchers, and academicians

  • Estimate and refine process and project metrics

  • At the end of each chapter, key points are encapsulated in FAQs and exercises for easy referencing and team training.



    0201758210B08132002

    Table of Contents

    1. Copyright
    2. Praise for Bhuvan Unhelkar's Process Quality Assurance for UML-Based Projects
    3. The Addison-Wesley Object Technology Series
    4. The Component Software Series
    5. Foreword
    6. Preface
    7. Acknowledgments
    8. Setting the Scene for Software Quality Assurance
      1. The Quality Game
        1. Elusive Software Quality
        2. Pressures on Quality
        3. Quality Levels
        4. Quality Software Process
        5. Modeling and Quality
        6. UML and Quality
        7. Quality Assurance Techniques of Syntax, Semantics, and Aesthetics
        8. Quality Assurance of Software Process: Necessity, Sufficiency, and Malleability
        9. Reuse, Patterns, and Quality
        10. Quality and Usability
        11. UML-Based Projects—Types
        12. UML-Based Projects—Size and Scalability
        13. Putting it All Together (Key Points)
        14. Bibliographic Notes
        15. Frequently Asked Questions (FAQs)
        16. Exercises
        17. References
    9. Organizing and Enacting the Process for Quality
      1. Quality Environment: Managing the Quality Function
        1. Quality Management
        2. Team Organization
        3. The Quality Environment
        4. Project Sociology
        5. Transactional Analysis in Software Projects
        6. Popular Quality Techniques
        7. Standards and Quality
        8. Process Maturity: The CMM Standards
        9. Process Checks
        10. The Planning Deliverables
        11. Bibliographic Notes
        12. Frequently Asked Questions (FAQs)
        13. Exercises
        14. References
      2. The Quality Process Architecture
        1. The Process Backbone
        2. The Process Metamodel
        3. Quality Software Process
        4. The Software Process
        5. The Quality Process
        6. Bibliographic Notes
        7. Frequently Asked Questions (FAQs)
        8. Exercises
        9. References
      3. Enacting the Quality Software Process
        1. Configuration of a Process
        2. The Iterative, Incremental, and Parallel Development Process
        3. Adoption of the Software Process
        4. Enacting the Quality Process
        5. Tracking Quality throughout the Process
        6. Frequently Asked Questions (FAQs)
        7. Exercises
        8. References
      4. Estimates and Metrics for UML-Based Projects
        1. About Estimates and Measures in Software Projects
        2. Project Metrics and Estimates
        3. Measurement of Processes
        4. Quality Metrics
        5. Measuring Size of Software
        6. Measures of UML Artifacts, Diagrams, and Models
        7. Applying Metrics and Estimates to Lucky Insurance's Project
        8. Prophetic Statements on Estimates and Metrics
        9. Bibliographic Notes
        10. Frequently Asked Questions (FAQs)
        11. Exercises
        12. References
    10. Testing the Product: Quality Control
      1. Quality Control of Software Products
        1. Testing in Context
        2. Testing Approaches in UML-Based Projects
        3. Testing Architecture
        4. Test Planning
        5. Test Design
        6. Test Cases
        7. Test Execution
        8. Recording and Analyzing Test Results
        9. Bibliographic Notes
        10. Frequently Asked Questions (FAQs)
        11. Exercises
        12. References
    11. Glossary of Acronyms and Important Terms
    12. Bibliography
    13. UML CASE Tools
      1. Relevance of Modeling CASE Tools
      2. Criteria for Evaluating UML-Based CASE Tools
      3. Compliance with UML
      4. Support of the Development Environment
      5. Support of Multiple Users (Team Work)
      6. Information Generation (Document and Web Publishing)
      7. Support of Reusability (Patterns)
      8. Integration with Other Products
      9. User Friendliness of the Tool
      10. Costs of Licensing and Deployment
      11. Ability to Suit a Process
      12. Tool Support in the Region
      13. Performance
      14. Compatibility
      15. References
      16. Tool Friction Factor
    14. Process Tools Using UML
    15. CD-ROM Contents
      1. Case Study: Lucky Insurance
      2. Process-Components Activities and Tasks (based on Chapter 3)
      3. Quality Checklist for UML-Based Models of Problem Space, Solution Space, and Background Space
      4. Test Case Template
      5. Training Course Presentation Files
      6. MeNtOR Lite
      7. CBEADS (Component Based E Application Development Shell)
    16. Epilogue