1
CS 307 Final Study Guide 2025/2026
Exam Questions and Answers | 100%
Solved
Object - 🧠 ANSWER ✔✔A software "bundle", usually thought of as being a class
or structure consisting of a set of
variables which define the states the object can exist in and a set of functions that
define the behavior of that object. Software objects are often used to model the
real-world objects that you find in everyday life.
What are the 3 characteristics of an object? - 🧠 ANSWER ✔✔1. State
2. Defined Behaviors
3. Defined ways of modifying the State
What is meant by the term data encapsulation? - 🧠 ANSWER ✔✔Storing data and
the methods access and change that data into a single entity/ binding together both
the data and the functions which act on the data into a unit (object)
Define requirements as it's related to software engineering - 🧠 ANSWER ✔✔A
statement of what is to be provided by a computer system or software product. An
1
COPYRIGHT©NINJANERD 2025/2026. YEAR PUBLISHED 2025. COMPANY REGISTRATION NUMBER: 619652435. TERMS OF USE. PRIVACY
STATEMENT. ALL RIGHTS RESERVED
,2
expression of desired behavior for a software system. It's a specific thing your
system
has to do to work correctly.
Define requirements analysis as it's related to software engineering - 🧠 ANSWER
✔✔Determining exactly what the software should do. It is the process of studying
and analyzing what the customer wants in order to develop a stated list of
requirements
What are the four processes of requirements specification? - 🧠 ANSWER ✔✔1.
Elicitation
2. Analysis
3. Specification
4. Validation
What is the basic difference between the requirements definition document and the
requirements specification document? - 🧠 ANSWER ✔✔The requirements
definition document verifies with the customer the scope of the requirements (FOR
THE CUSTOMERS)
2
COPYRIGHT©NINJANERD 2025/2026. YEAR PUBLISHED 2025. COMPANY REGISTRATION NUMBER: 619652435. TERMS OF USE. PRIVACY
STATEMENT. ALL RIGHTS RESERVED
, 3
The requirements specification document is written in terms the software designers
and programmers can use (FOR THE PROGRAMMERS)
Define object oriented design as it is used in software engineering - 🧠 ANSWER
✔✔The use of data abstraction, inheritance and dynamic binding (memory
allocation) to construct programs that are collections of interacting objects. The
process of using objects as the building blocks of a program. aka Bottom Up
Design.
Define step wise refinement as it is used in software engineering - 🧠 ANSWER
✔✔The process in software design of starting off at a high level of abstraction and
working down through an iterative process to add more and more detail to the
design.
What is a class and how does it relate to an object in a software system? - 🧠
ANSWER ✔✔In C++ _________ represent objects in a program; _________ are
the "blueprints" for building objects.
Briefly discuss the concept of objects interacting by exchanging messages? - 🧠
ANSWER ✔✔1. Message Receiver
2. Method to Invoke
3. Args to method (cRectangle->draw(args))
3
COPYRIGHT©NINJANERD 2025/2026. YEAR PUBLISHED 2025. COMPANY REGISTRATION NUMBER: 619652435. TERMS OF USE. PRIVACY
STATEMENT. ALL RIGHTS RESERVED
CS 307 Final Study Guide 2025/2026
Exam Questions and Answers | 100%
Solved
Object - 🧠 ANSWER ✔✔A software "bundle", usually thought of as being a class
or structure consisting of a set of
variables which define the states the object can exist in and a set of functions that
define the behavior of that object. Software objects are often used to model the
real-world objects that you find in everyday life.
What are the 3 characteristics of an object? - 🧠 ANSWER ✔✔1. State
2. Defined Behaviors
3. Defined ways of modifying the State
What is meant by the term data encapsulation? - 🧠 ANSWER ✔✔Storing data and
the methods access and change that data into a single entity/ binding together both
the data and the functions which act on the data into a unit (object)
Define requirements as it's related to software engineering - 🧠 ANSWER ✔✔A
statement of what is to be provided by a computer system or software product. An
1
COPYRIGHT©NINJANERD 2025/2026. YEAR PUBLISHED 2025. COMPANY REGISTRATION NUMBER: 619652435. TERMS OF USE. PRIVACY
STATEMENT. ALL RIGHTS RESERVED
,2
expression of desired behavior for a software system. It's a specific thing your
system
has to do to work correctly.
Define requirements analysis as it's related to software engineering - 🧠 ANSWER
✔✔Determining exactly what the software should do. It is the process of studying
and analyzing what the customer wants in order to develop a stated list of
requirements
What are the four processes of requirements specification? - 🧠 ANSWER ✔✔1.
Elicitation
2. Analysis
3. Specification
4. Validation
What is the basic difference between the requirements definition document and the
requirements specification document? - 🧠 ANSWER ✔✔The requirements
definition document verifies with the customer the scope of the requirements (FOR
THE CUSTOMERS)
2
COPYRIGHT©NINJANERD 2025/2026. YEAR PUBLISHED 2025. COMPANY REGISTRATION NUMBER: 619652435. TERMS OF USE. PRIVACY
STATEMENT. ALL RIGHTS RESERVED
, 3
The requirements specification document is written in terms the software designers
and programmers can use (FOR THE PROGRAMMERS)
Define object oriented design as it is used in software engineering - 🧠 ANSWER
✔✔The use of data abstraction, inheritance and dynamic binding (memory
allocation) to construct programs that are collections of interacting objects. The
process of using objects as the building blocks of a program. aka Bottom Up
Design.
Define step wise refinement as it is used in software engineering - 🧠 ANSWER
✔✔The process in software design of starting off at a high level of abstraction and
working down through an iterative process to add more and more detail to the
design.
What is a class and how does it relate to an object in a software system? - 🧠
ANSWER ✔✔In C++ _________ represent objects in a program; _________ are
the "blueprints" for building objects.
Briefly discuss the concept of objects interacting by exchanging messages? - 🧠
ANSWER ✔✔1. Message Receiver
2. Method to Invoke
3. Args to method (cRectangle->draw(args))
3
COPYRIGHT©NINJANERD 2025/2026. YEAR PUBLISHED 2025. COMPANY REGISTRATION NUMBER: 619652435. TERMS OF USE. PRIVACY
STATEMENT. ALL RIGHTS RESERVED