0% found this document useful (0 votes)
28 views2 pages

LECTURE 1.A FORMAL SPECIFICATION Outline

The course 'Formal Software Specification Methods' (BCT 313) aims to provide students with a strong foundation in formal methods for software engineering, focusing on specification, development, and verification techniques. Key topics include propositional and predicate calculus, formal specification methods, and quality assurance with formal methods, supported by lectures, group presentations, and research assignments. Evaluation consists of continuous assessments (30%) and final exams (70%), with strict rules on assignment submission and classroom conduct.

Uploaded by

samuelgicheha03
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
28 views2 pages

LECTURE 1.A FORMAL SPECIFICATION Outline

The course 'Formal Software Specification Methods' (BCT 313) aims to provide students with a strong foundation in formal methods for software engineering, focusing on specification, development, and verification techniques. Key topics include propositional and predicate calculus, formal specification methods, and quality assurance with formal methods, supported by lectures, group presentations, and research assignments. Evaluation consists of continuous assessments (30%) and final exams (70%), with strict rules on assignment submission and classroom conduct.

Uploaded by

samuelgicheha03
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 2

Course outline

Course name FORMAL SOFTWARE SPECIFICATION METHODS


Course code BCT 313
Semester Year 3 Bsc. Computer Technology
Lecturer/email address Mwangi karanja jkuatnotes@gmail.com

1. Course objectives

Formal methods is a term that refers to a diverse collection of techniques,


with strong mathematical foundations, that are used to provide assurance
about the correctness of systems. The course aims to offer a sound
background to students in software engineering with languages and
methods for formal specification, development and verification.
Prerequisites: knowledge in mathematical logic, discrete structures and in
software engineering
2. Course Content

Software engineering concepts. Prepositional and predicate calculus . Higher order


logic. Advanced data structures and algorithms. Higher order theoretical tools.
Abstraction, design. Formal methods such as VDM. Use of formal development tools.
3. Detailed Course content
Introduction General discussion of specification and formality in
the software development process; Introduction to
Formal methods, Software Correctness, limitations of
testing, formal methods (relation with testing),
Difficulties in Formal methods, Proof Automation.
Propositional and first Logic in Computer Science, formalization, (Syntax and
order logic semantics), calculus, syntax and semantics of
propositional logic, first order atomic formulas, first
order semantics and first order models, temporal
logic, semantics of temporal logic, safety and liveness
properties,
Formal software Introduction, Algebraic Specification (Abstract Data
specification methods Types) Specification and requirements, Specification
languages and Applications, effectiveness of
specifications.
Quality Assurance with Correctness of properties, theorem proving and
FM property driven approaches.
4. Teaching methodology
The activities will involve lectures, research assignments, discussions,
reflections and presentations. They will also be involved in facilitating discussions.
Group presentations are emphasized to enhance team work where each group is
expected to present to class its work .

5. Course text and recommended reading

Recommended Reading material: Author(s), Title, Edition, Publisher, Year of


Publication etc. ( Text books, Reference Books, Journals, Reports, Websites etc.)
1. A. Diller, Z An Introduction to Formal Methods (2nd ed.), Wiley, 1994.
2. Marc Frappier and Henri Habrias (Eds) Software Specification
Methods: An Overview Using a Case Study;. Publisher: Springer.
(Edition 2006)
3. J.M. Spivey, The Z Notation , Prentice Hall, 1992 available online
at[http://spivey.oriel.ox.ac.uk/7Emike/zrm]
4. J.P. Bowen and M.G. Hinchey, “Ten Commandments Revisited: A Ten-
Year Perspective on the Industrial Application of Formal Methods,”
Proc. 10th Workshop on Formal Methods for Industrial Critical
Systems (FMICS 2005), ACM Press, 2005, pp. 8-16.
5. B. Potter, J. Sinclair, D. Till, An Introduction to Formal Specification and
Z, 2nd ed., Prentice Hall 1996.

6. Course evaluation
a. Continuous assessment tests 30% and Final semester exams 70%.

7. Ground rules
a. Late assignments will not be accepted.
b. Group work must be completed in time as required.
c. Mobile phones must be switched off in class.

You might also like

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy