separation of concerns for dependable software design
play

Separation of Concerns for Dependable Software Design Daniel - PowerPoint PPT Presentation

Separation of Concerns for Dependable Software Design Daniel Jackson and Eunsuk Kang MIT Nov 7 FoSER Workshop 2010 Achieving Dependability Traditional approach process + testing: necessary, but not sufficient * reliance on ex post


  1. Separation of Concerns for Dependable Software Design Daniel Jackson and Eunsuk Kang MIT Nov 7 ⋅ FoSER Workshop 2010

  2. Achieving Dependability Traditional approach • process + testing: necessary, but not sufficient * • reliance on ex post facto analysis: too late? Static analysis & verification • stronger guarantees, but need guidance • correctness proof ⇒ dependability × *D. Jackson, M. Thomas, and L. I. Millet. Software for Dependable Systems: Sufficient Evidence? The National Academies Press, Washington, DC, 2007.

  3. A Different Approach Dependability case • explicit, end-to-end argument • ENV ∧ SPEC ⇒ REQ Design for dependability • most critical requirements first • smaller trusted base ⇒ simpler case, lower cost

  4. Mixed-Criticality System Many critical properties are partial • factor out from full functional requirements • ex. “perform good op X” vs. “prevent bad op Y” Non-uniform allocation of resources

  5. Example: Online Bookstore Two requirements • ordering: “fulfill a customer order” • secrecy: “don’t leak a customer’s credit card”

  6. Design Candidate Customer id address credit card shopping cart ShoppingCart orders books customer makeOrder Order date books customer Book fulfill ISBN title price reviews CreditCardAPI charge Card number name expiry date

  7. Trusted Base for Secrecy Secrecy Customer id address credit card shopping cart ShoppingCart orders books customer makeOrder Order date books customer Book fulfill ISBN title price reviews CreditCardAPI charge Card number name expiry date

  8. Alternative Design Coordinator makeOrder fulfill Customer Orders CreditCardAPI Cards id orders: CustomerId -> Order charge cards: CustomerId -> Card address makeOrder shopping cart fulfill Card number Order name date ShoppingCart expiry date entries books customer id customer Entry Book ISBN ISBN title title price price reviews

  9. Reduced Trusted Base Secrecy Coordinator makeOrder fulfill Customer Orders CreditCardAPI Cards id orders: CustomerId -> Order charge cards: CustomerId -> Card address makeOrder shopping cart fulfill Card number Order name date ShoppingCart expiry date entries books customer id customer Entry Book ISBN ISBN title title price price reviews

  10. Discussions Dependability case • if you can’t say why it works, it probably doesn’t Design for dependability • untapped potential; shift in research focus? Our on-going research • design method for small trusted bases • case studies: Tokeneer, radiation therapy, e-voting

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend