User Tools

Site Tools


course_outline

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
course_outline [2012/10/05 15:29] jonathancourse_outline [2012/11/28 19:55] (current) jonathan
Line 28: Line 28:
   * **Required reading**: How to write requirements (Telelogic), on SVN. This important document will help you to produce precise unambiguous atomic R/E descriptions.   * **Required reading**: How to write requirements (Telelogic), on SVN. This important document will help you to produce precise unambiguous atomic R/E descriptions.
  
-===== Mathematical specification modules =====+===== MSR - Module specifications for reactive and transformational systems ===== 
 + 
 +MSR uses a combination of ideas from Z, B, Event-B and Parnas function tables for the mathematical specification of systems. The suggested text uses Z for part of the course. 
   * What are specification modules? How do they differ from design modules or code modules?   * What are specification modules? How do they differ from design modules or code modules?
   * Review of predicate logic, set theory, functions (total, partial, injective, surjective, bijective), relations, sequences, bags.   * Review of predicate logic, set theory, functions (total, partial, injective, surjective, bijective), relations, sequences, bags.
Line 45: Line 48:
 ===== Requirements for the Dell Keyboard ===== ===== Requirements for the Dell Keyboard =====
  
-===== UML, Tools and LaTex =====+We discuss the paper by Baber, Parnas and Vilkomer (it is in Slides/SVN). 
 + 
 +Abstract: We describe our experience applying tabular 
 +mathematical approaches to software specifications. 
 +Our purpose is to show alternative approaches to 
 +writing tabular specifications and to help practitioners 
 +who want to apply such methods by allowing 
 +them to pick the best one for their problem. 
 +The object for the case study is software used by 
 +Dell Products for testing the functionality of the keyboards 
 +on notebook computers. Starting from informal 
 +documents, we developed a variety of tabular representations 
 +of finite state machine specifications and 
 +tabular trace specifications. We found that the discipline 
 +required by these methods raised issues that had 
 +never been considered and resulted in documents that 
 +were both more complete and much clearer. The various 
 +tabular representations are compared from a 
 +user’s point of view, i.e., clarity, consistency, unambiguity, 
 +completeness, suitability, etc 
 +Keywords: software, tabular specifications, finite 
 +state machine, traces, trace specifications.  
 + 
 +Required: Watch a [[http://www.multimedia.ethz.ch/conferences/2010/fose/01_monday|video]] recording of Precise Documentation: The Key to Better Software, David Lorge Parnas. The slides from this talk are on the SVN. 
 + 
 +===== UML for Requirements ===== 
 + 
 +The suggested text discusses how UML models are used in requirements engineering. We discuss use cases/diagramsclass diagrams, statecharts (XOR and parallel composition) and sequence charts. UML does not have the formality of MSR; we discuss the pros and cons. We also distinguish between the use of UML in design as opposed to requirements. See slides and UML resources on this website. See the fully worked out requirements example involving the train transportation system on the SVN. 
 + 
 +===== Writing requirements for reactive/real-time systems ===== 
 +  * Difference between transformational and reactive systems 
 +  * Safety critical systems are usually reactive 
 +  * Difference between proof systems and model checking 
 +  * Timed Transition Models 
 +    * types, constants and variables 
 +    * module templates with in, out and share variables 
 +    * module instants  
 +    * module compositions 
 +    * model-checking and reachability graphs 
 +    * temporal logic specifications 
 +    * safety properties and liveness properties 
 +    * discussion of the the bridge controller 
 + 
 +===== General Considerations ===== 
 + 
 +This is covered in the slides in the SVN: Readings/ReqIntro-Alexander.pdf (based on the text in Steacie: Discovering Requirements (Alexander et.al). Stakeholders. Goals vs. Requirements. Context, interaction and scope. Scenarios. Priorities. Hazard/risk analysis. In Scenarios we reviewed how to use Use Cases and the include and extend relations.
course_outline.1349450947.txt.gz · Last modified: 2012/10/05 15:29 by jonathan

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki