



Study with the several resources on Docsity
Earn points by helping other students or get them with a premium plan
Prepare for your exams
Study with the several resources on Docsity
Earn points to download
Earn points by helping other students or get them with a premium plan
This document, from dr. Tom way's csc 4181 lectures, covers the topics of requirements engineering and object-oriented design in compiler construction. It explains the process of establishing system requirements, the difference between functional and non-functional requirements, and the importance of writing clear and consistent requirements. Additionally, it introduces the concept of object-oriented design using the unified modeling language (uml) and provides examples of object communication and inheritance.
Typology: Papers
1 / 5
This page cannot be seen from the preview
Don't miss anything!




Dr. Tom Way CSC 4181 Slide 1
Dr. Tom Way CSC 4181 Slide 2
Dr. Tom Way CSC 4181 Slide 3
Dr. Tom Way CSC 4181 Slide 4
Dr. Tom Way CSC 4181 Slide 7 Functional requirements z Describe functionality or system services. z Depend on the type of software, expected users and the type of system where the software is used. z Functional user requirements may be high-level statements of what the system should do but functional system requirements should describe the system services in detail. Dr. Tom Way CSC 4181 Slide 8 Requirements imprecision z Problems arise when requirements are not precisely stated. z Ambiguous requirements may be interpreted in different ways by developers and users. z Consider the term ‘appropriate viewers’
Dr. Tom Way CSC 4181 Slide 9 Requirements completeness and consistency
Dr. Tom Way CSC 4181 Slide 10 Non-functional requirements z These define system properties and constraints e.g. reliability, response time and storage requirements. Constraints are I/O device capability, system representations, etc. z Process requirements may also be specified mandating a particular CASE system, programming language or development method. z Non-functional requirements may be more critical than functional requirements. If these are not met, the system is useless. Non-functional classifications
Domain requirements z Derived from the application domain and describe system characteristics and features that reflect the domain. z Domain requirements be new functional requirements, constraints on existing requirements or define specific computations. z If domain requirements are not satisfied, the system may be unworkable.
Dr. Tom Way CSC 4181 Slide 19 Object communication
Dr. Tom Way CSC 4181 Slide 22 A generalisation hierarchy UML associations
An association model
Use-case models z Use-case models are used to represent each interaction with the system. z A use-case model shows the system features as ellipses and the interacting entity as a stick figure. Use-cases for the weather station