The two most applied approaches are Flashcards

(46 cards)

1
Q

What are the two most applied approaches in systems analysis and design?

A
  1. Structured approach 2. Object oriented (OO) approach
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

What does the structured approach in systems analysis focus on?

A

Analyzing and designing software systems through functional decomposition

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

What is functional decomposition?

A

Examining an information system in terms of the functions it performs and the data it uses and maintains

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

List the composite steps for the function ‘Calculate employee wages’.

A
  • Calculate hours of work * Determine wage rate per hour * Multiply hours by rate to get Gross Pay * Add/deduct adjustments * Produce Net Pay
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

How does the object-oriented approach differ from the structured approach?

A

It decomposes the system down into objects, focusing on the things in the system and their interactions

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

What are the four principles introduced by the object-oriented approach?

A
  • Abstraction * Encapsulation * Modularity * Hierarchy
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

Define abstraction in the context of object-oriented design.

A

Focusing on including the most important aspects of a system while ignoring less important details

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

What is encapsulation?

A

Separating implementation from users, allowing only the owning instance to modify or read its data

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

What does encapsulation protect?

A

An object’s internal state from being corrupted by other objects

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

What is modularity?

A

The process of breaking complex systems into small, self-contained pieces that can be managed easily

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

How is hierarchy defined in object-oriented design?

A

An ordering of abstractions into a tree-like structure, where complex systems are composed of interrelated subsystems

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

What is an object in object-oriented programming?

A

The basic run-time entity that can represent a person, location, account, or any item the program handles

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

What are the two aspects that characterize real-world objects?

A
  • Information (Data) * Behaviour
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

What is a class in object-oriented programming?

A

A template for an object that describes a set of objects sharing the same attributes and operations

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

What is an attribute in the context of a class?

A

A named property of a class that describes a range of values instances of the property may hold

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

What is an operation in a class?

A

The implementation of a service that can be requested from any object of the class to affect behavior

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
17
Q

What is the difference between a super-class and a sub-class?

A

A super-class contains features common to multiple classes, while a sub-class contains at least the features of its super-class

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
18
Q

What is inheritance in object-oriented programming?

A

The process by which objects of one class acquire the properties of objects of another class

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
19
Q

What does polymorphism mean?

A

The ability to take more than one form, allowing operations to exhibit different behavior based on data types

20
Q

What is the significance of encapsulation in object-oriented design?

A

It achieves information hiding and reduces the impact of side effects associated with change

21
Q

Fill in the blank: A class is a description of a set of objects that share the same _______.

A

[attributes and operations]

22
Q

True or False: A class must have at least one attribute.

23
Q

What is the role of interfaces in encapsulation?

A

They form a contract between the class and the outside world, allowing clients to depend on interfaces only

24
Q

What happens when a change is made to a superclass?

A

It is immediately inherited by all subclasses that have inherited from the superclass

25
What is a real-world example of an object?
A chair, which is a member of the class furniture
26
What do objects in an object-oriented system contain?
* Data * Code to manipulate the data
27
What does it mean for a class to encapsulate data and procedural abstractions?
The data is enclosed by methods capable of manipulating the data, achieving information hiding
28
Fill in the blank: A class name must be _______ within its enclosing package.
[unique]
29
What are the two types of names associated with a class?
* Simple name * Path name
30
What is the purpose of the class hierarchy?
To propagate changes through a system via inheritance
31
True or False: Derived classes can redefine the implementation of a method.
True
32
What method must be included in transport?
move() ## Footnote All transport must be able to move.
33
Which two classes would inherit from the transport class?
Boat and Car ## Footnote Both Boats and Cars can move but in different ways.
34
What is the common term for conversional programming using high-level languages like C, FORTRAN, and Pascal?
Procedure-oriented programming ## Footnote This programming paradigm focuses on a sequence of tasks.
35
In procedural-oriented programming, what does each statement do?
Tells the computer to do something ## Footnote Examples include getting input, adding numbers, or displaying output.
36
What is a program in a procedural-oriented language?
A list of instructions ## Footnote Functions are written to accomplish specific tasks.
37
What is the primary focus in procedural-oriented languages?
Functions ## Footnote Instructions are organized into groups known as functions.
38
What vulnerability exists with global data in procedural-oriented programming?
More vulnerable to inadvertent change ## Footnote Functions can unintentionally modify global data.
39
What makes identifying data usage difficult in large programs?
Functions share global data ## Footnote It complicates checking which function uses which data.
40
List a few characteristics of procedural languages.
* Emphasis on doing tasks * Programs broken into functions * Functions share global data * Data moves openly around the system * Employs top-down approach in design
41
What is the main feature of object-oriented programming (OOP)?
Emphasis on data rather than functions ## Footnote OOP treats data as a critical element.
42
How does OOP protect data?
By tying data to functions ## Footnote It prevents data from flowing freely around the system.
43
In OOP, how is a problem decomposed?
Into objects ## Footnote Data and functions are built around these objects.
44
Who can access the data of an object in OOP?
Only the function associated with that object ## Footnote Functions of one object can access functions of other objects.
45
List a few characteristics of object-oriented languages.
* Emphasis on data rather than functions * Programs divided into objects * Data structures characterize the objects * Data is hidden from external functions * Objects communicate through functions
46
What approach does OOP follow in program design?
Bottom-up approach ## Footnote This is in contrast to the top-down approach of procedural programming.