Dines
Bjørner's Course Web Page
Faculty of Informatics
Eötvös Loránd University
E-Mail: bjorner@gmail.com
URL: www.imm.dtu.dk/~db
11-22 October, 2010 [Most recent update: August 30, 2010]
- (30 August, 2010) This Web page uploaded to
ELTE.
- (26 August, 2010) Bibliography and minor changes.
- (14 June, 2010) Calendar change (11-22 October)
- Creation of this Web page: 26 April, 2010
This Web page, with its sub-Web pages, provides
information about the course to be given at Eötvös Loránd
University.
-
Course Name:
From Domains to Requirements
-
Course Period:
11-22 October, 2010
-
Course Days:
Monday-Friday
, every day.
-
Course Venue - AM Lecture Session
- to come
-
Course Venue - PM Project Tutoring Session
- to come
-
Course Hours:
Suggested:
9:00-11:00, 14:00-16:00
, every day.
-
Course Lecture Texts:
-
Course Registration:
Ms. Kerek Ágnes
-
Course Exam:
Friday, 22 October, 2010: 14:00-16:00
- Lecture notes and slides are, as of August 30, 2010, relative complete.
- Lecturer may decide to revise these lecture notes and slides
during September 2010.
- You may expect frequent updates up to the day of lecture
- so do not print out entire lecture notes now !
- 4th-5th semester MSc student or PhD student
- Basic understanding of Functional Programming
- Basic understanding of simple Mathematical Logic
- Discrete Mathematics: sets, sequences, functions, Cartesian products
- Willingness to abstract
- Eagerness to write down nice, concise English
- The aim of the course is to cover a number of
"front-of-the-wave" software engineering topics:
- two of the three Triptych of Software Engineering phases of
- Domain Engineering and
- Requirements Engineering.
It is the aim to show how these two phases relate.
- To show the dual benefit of both
- precise national language Narratives coupled with
- Formal Specification.
- To show that the new element of software engineering, namely
domain engineering,
has a number of precise methodological
stages of
- intrinsic,
- support technology,
- rules & regulations,
- script,
- management & organisation and
- human behaviour
facets.
- To show that requirements engineering now has a rather
different methodology, including:
- domain requirements, with its
- projection,
- instantiation,
- determination,
- extension and
- fitting
domain-to-requirements operations.
- The objectives of the course and the course project is to
- help ensure that course participants
- get a professional education and part-training as responsible
software engineers and
- are exposed to a number of exciting research topics.
- The objectives are further that the course participants become
acutely aware of and familiar with
- ability to express themselves
- both in informal, yet precise natural language
- and in some formal specification language.
- Finally it is an objective of the course that the course
participants
- discover the need for a serious attention,
- in software engineering,
- as well as in computing science research
to domain engineering.
- It is also an objective to for the students to learn to write
formal specification using
RSL
,
the
RAISE
S
pecification
L
anguage.
RAISE
stands for
R
igorous
A
pproach to
I
ndustrial
S
oftware
E
ngineering.
Students may, instead of in
RAISE/RSL
[4,5,2], work out the formal aspects of
their course report in
Alloy
[6],
Event B
[1],
VDM-SL
[3],
Z
[7], etc., or in good, simple and reliable Mathematics !
- Exam consist of two parts:
- a report, possibly worked out individually, or in subgroups, or
by full group of course participants;
- a two hour written test,
Friday, 22 October, 2010: 14:00-16:00
- Written test checks your understanding of your own and your
fellow students' reports !
- Students are to choose one of the below topics for their term
project:
- Airports, Airlines, Air Traffic
- Financial Service Industry
- Banking
- Commodities Exchange (Brokers, Traders, Stock Exchanges, ...)
- Credit Cards
- Insurance
- Portfolio Management
- Regulatory Agencies
- Health Care
- Hospitals
- Private Physicians / Family Doctors
- Pharmacies
- Insurance
- National Health Service
- (An abstraction of) JavaSpaces (!)
- Logistics and Transportation
- "The Market":
- Consumers
- Retailers
- Wholesalers
- Producers
- Distribution Chain
- The Gas/Oil Industry
- Pipelines
- Refineries
- Shipping
- Distribution
- Or other !
- Class is decomposed into groups of typically 3 students each
- Each group selects or is given a subtopic to work on
- Each group delivers simple hand written notes
the first week and
- then LATEX printed notes three times during the following week
- Groups give copies to all class students at the time of
delivering these reports
to the lecturer, namely just before
afternoon session.
- Lecturer goes through delivered reports in class and suggests
ideas etc.
- Groups are more than welcome to consult the Lecturer outside
session hours:
- 11:15-12:00am, 1:00-1:45pm, 4:15-5:30pm, Monday-Friday
- in lecturer's office
- The report shall follow a format with respect to sections,
subsections, etc., set by the lecturer.
- The report shall describe a domain in clear and crisp English
- and also in some formal specification languages (SLs)
- Alloy [6],
Event B
[1],
RAISE/RSL [4,5,2], VDM-SL [3], Z
[7], etc., or in good, simple
Mathematics !
- VDM stands for the Vienna Development Method !
- If a group does not know an SL, then try "mimic" the lecturer's
RAISE/RSL.
- You will not be judged harshly, but according to your honest attempt !
- Project Report to be submitted
- by E-mail, in .ps or .pdf form
before
Tue., Nov. 2, 2010
- to
bjorner@gmail.com
- Lecturer will evaluate exam and report in
November 2010
- Consolidated grades will be published
Wed. 1 December, 2010
-
- 1
-
J.-R. Abrial.
The B Book: Assigning Programs to Meanings and Modeling in Event-B: System and Software Engineering.
Cambridge University Press, Cambridge, England, 1996 and 2009.
- 2
-
D. Bjørner.
Software Engineering, Vol. 1: Abstraction and Modelling;
Vol. 2: Specification of Systems and Languages; ol. 3: Domains, Requirements
and Software Design.
Texts in Theoretical Computer Science, the EATCS Series. Springer,
2006.
- 3
-
J. Fitzgerald and P. G. Larsen.
Modelling Systems - Practical Tools and Techniques in Software
Development.
Cambridge University Press, Cambridge, UK, Second edition, 2009.
- 4
-
C. W. George, P. Haff, K. Havelund, A. E. Haxthausen, R. Milne, C. B. Nielsen,
S. Prehn, and K. R. Wagner.
The RAISE Specification Language.
The BCS Practitioner Series. Prentice-Hall, Hemel Hampstead, England,
1992.
- 5
-
C. W. George, A. E. Haxthausen, S. Hughes, R. Milne, S. Prehn, and J. S.
Pedersen.
The RAISE Development Method.
The BCS Practitioner Series. Prentice-Hall, Hemel Hampstead, England,
1995.
- 6
-
D. Jackson.
Software Abstractions: Logic, Language, and Analysis.
The MIT Press, Cambridge, Mass., USA, April 2006.
ISBN 0-262-10114-9.
- 7
-
J. C. P. Woodcock and J. Davies.
Using Z: Specification, Proof and Refinement.
Prentice Hall International Series in Computer Science, 1996.
- My book in Chinese:
- Ordering information:
As of August 26, 2010, the below URLs were OK.
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
Dines
Bjørner's Course Web Page
Faculty of Informatics
Eötvös Loránd University
This document was generated using the
LaTeX2HTML translator Version 2002-2-1 (1.71)
Copyright © 1993, 1994, 1995, 1996,
Nikos Drakos,
Computer Based Learning Unit, University of Leeds.
Copyright © 1997, 1998, 1999,
Ross Moore,
Mathematics Department, Macquarie University, Sydney.
The command line arguments were:
latex2html -split 0 -toc_depth 6 home
The translation was initiated by Dines Bjorner on 2010-08-30
Dines Bjorner
2010-08-30