1 / 15

JASS 2006

JASS 2006. Advanced Topics in Software Engineering Rationale Management. Motivation. Example: Slicing Ham. What is Rationale Management?. Rationale Justification for decisions Rationale Management Capture and organize rationales in Problem Possible solutions Arguments Criteria

burdick
Download Presentation

JASS 2006

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. JASS 2006 Advanced Topics in Software Engineering Rationale Management

  2. Motivation Example: Slicing Ham

  3. What is Rationale Management? • RationaleJustification for decisions • Rationale Management Capture and organize rationales in • Problem • Possible solutions • Arguments • Criteria • Decision • Other models tell how – rationale tells why

  4. Why Rationale Management? (I) • Improves Decision making process: • Explicitly splits decision making process into its elements (criteria, priorities, …) • Therefore enables more educated decisions • Makes later changes easier and safer: • Captures knowledge that is not included elsewhere and makes it reusable • Reminds developers of requirements that need to be considered

  5. Why Rationale Management? (II) • Helps new developers • Keeps the reasoning reproducible and comprehensible for third persons • Explains why the model is as it is • Problems • Big investment for gathering and maintaining additional information • Rationale models get very large

  6. Transfer Question Example: Cookbook

  7. Elements of a rationale • Issueunsolved question • Proposalpossible solutions to issue • Criterionqualities proposals should have • Argumentdiscussion for/against proposalssupported by criteria • Resolutionselected solution to issue

  8. Representation of rationales - example storage in database:Resolution resolves storage?:Issue addressed by addressed by database:Proposal files:Proposal raises fails fails which Database?:Issue is opposed by meets meets flexibility$:Criterion simplicity$:Criterion is supported by extensibility-first:Argument

  9. Where can rationales be captured? • Requirements analysisUseful for developing test cases • System designLinks nonfunctional requirements to design goals (important if requirements change) • Project managementDocuments alternatives and risks, can provide fallback solutions • Integration and testingDetermine which decision created conflict

  10. Levels of rationale capture • No explicit rationale captureRationale in E-mails, memos, memories … • Rationale reconstructionCapture rationale afterwards / less detail • Rationale captureRationale model besides other models • Rationale integrationRationale is central model

  11. Capturing Rationale Activities • MeetingsTake minutes, decompose into elements of rationales • Electronic communicationIntegrate rationale model into groupware • ChangesAdapt rationale model, new resolutions • Reconstructing rationaleConstruction of rationale model based on memory and actual system model

  12. Managing rationale Rationale management hardly used in industry • Additional effort • No direct connection between effort and benefit  subject for management • Include rational model in development tools • Assign Responsibilities • Minute taker • Rationale editor • Reviewer

  13. Summary Capturing rationale model is • great effort but has • huge benefits Goal: Improvements in capturing and maintaining rationales to make rational management more common

  14. Conservative view & optimization • The major goals of management • Traditional management models • Difference between models • Optimization examples • Rational management implementation Rational models integration experience

  15. Questions ? Source: B. Bruegge & A. Dutoit.Object-Oriented Software Engineering(Second edition, International edition)Pearson Prentice Hall, 2004.

More Related