Module 1: Introduction to Software Engineering

0.0(0)
studied byStudied by 0 people
learnLearn
examPractice Test
spaced repetitionSpaced Repetition
heart puzzleMatch
flashcardsFlashcards
Card Sorting

1/69

flashcard set

Earn XP

Description and Tags

in progress

Study Analytics
Name
Mastery
Learn
Test
Matching
Spaced

No study sessions yet.

70 Terms

1
New cards

software and engineering

Software engineering stands for a term composed of two words -

2
New cards

Software

is more than just a program code

3
New cards

program

A ________ is an executable code, which serves some computational purpose

4
New cards

Software

is considered to be collection of executable programming code, associated libraries and documentations.

5
New cards

software product

Software, when made for a specific requirement is called

6
New cards

Engineering

is all about developing products, using well-defined, scientific principles and methods.

7
New cards

Software engineering

is an engineering branch associated with development of software product using well-defined scientific principles, methods and procedures.

8
New cards

efficient and reliable

The outcome of software engineering is a/an ______________software product.

9
New cards

IEEE

___________defines software engineering as: The application of a systematic, disciplined, quantifiable approach to the development, operation and maintenance of software; that is, the application of engineering to software.

10
New cards

The application of a systematic, disciplined, quantifiable approach to the development, operation and maintenance of software; that is, the application of engineering to software.

IEEE defines software engineering as: 

11
New cards

Software engineering is the establishment and use of sound engineering principles in order to obtain economically software that is reliable and work efficiently on real machines.

Fritz Bauer, a German computer scientist, defines software engineering as:

12
New cards

Fritz Bauer

_______________ a German computer scientist, defines software engineering as: Software engineering is the establishment and use of sound engineering principles in order to obtain economically software that is reliable and work efficiently on real machines.

13
New cards

product and vehicle

Software takes a dual role -__________

14
New cards

vehicle

delivering a product

15
New cards

information

Software delivers the most important product of our time is called_________.

16
New cards

different

Software has characteristics that are considerably __________ than those of hardware.

17
New cards

developed or engineered

Software is _____________, it is not manufactured in the Classical Sense.

18
New cards

Classical Sense.

Software is developed or engineered, it is not manufactured in the _____________

19
New cards

different

Although some similarities exist between software development and hardware manufacture, the two activities are fundamentally ___________.

20
New cards

high quality

_________is achieved through good design

21
New cards

manufacturing phase

_______________ for hardware can introduce quality problems that are nonexistent or easily corrected for software

22
New cards

quality problems

manufacturing phase for hardware can introduce_________that are nonexistent or easily corrected for software

23
New cards

nonexistent or easily corrected

manufacturing phase for hardware can introduce quality problems that are ______________ for software

24
New cards

dependent

Both the activities are ________ on people, but the relationship between people is totally varying.

25
New cards

varying

Both the activities are dependent on people, but the relationship between people is totally __________.

26
New cards

product

These two activities require the construction of a "_____________" but the approaches are different.

27
New cards

Software costs

are concentrated in engineering which means that software projects cannot be managed as if they were manufacturing.

28
New cards

engineering

Software costs are concentrated in____________ which means that software projects cannot be managed as if they were manufacturing.

29
New cards

Wear Out

Software doesn’t ________

30
New cards

failure rate

Consider the ________ as a function of time for hardware.

31
New cards

function of time

Consider the failure rate as a _________ for hardware

32
New cards

bathtub curve

The relationship that indicates that hardware exhibits relatively high failure rates early in its life, defects are corrected and the failure rate drops to a steady-state level for some period of time.

33
New cards

hardware components

As time passes, however, the failure rate rises again as _____________ suffer from the cumulative effects of dust, vibration, abuse, temperature extremes, and many other environmental maladies.

34
New cards

environmental maladies

Software is not susceptible to the _____________ that cause hardware to wear out

35
New cards
  • Software is developed or engineered, it is not manufactured in the Classical Sense.

  • Software doesn’t “Wear Out”

  • Although the industry is moving toward component-based construction, most software continues to be custom built

Characteristics of Software

36
New cards

component-based construction

Although the industry is moving toward ____________, most software continues to be custom built

37
New cards

custom built

Although the industry is moving toward component-based construction, most software continues to be ________.

38
New cards

Operational, Transitional, Maintenance

Characteristics of Good Software

39
New cards

Operational

how well software works in operations (budget, usability, efficiency, correctness, functionality, dependability, security, safety)

40
New cards

Transitional

an important aspect considered when the software is moved from one platform to another (portability, interoperability, reusability, adaptability)

41
New cards

Maintenance

how well a software has the capabilities to maintain itself in the ever-changing environment (modularity, maintainability, flexibility, scalability)

42
New cards

Software engineering

a branch of computer science, which uses well-defined engineering concepts required to produce efficient, durable, scalable, in-budget and on-time software products.

43
New cards

seven

___________broad categories of software are challenges for software engineers

44
New cards

System software

A collection of programs written to service other programs.

45
New cards

System software

It is responsible for managing and controlling operations of a computer system, making sure that computer resources are used efficiently and effectively.

46
New cards

operating systems, compilers, editors, and file management utilities. 

examples of system software

47
New cards

Application software

Stand-alone programs that solve a specific business need.

48
New cards

Application software

Application software is used to control business functions in real time, creating an efficient framework in the business operation and in management decisions.

49
New cards

point-of-sale transaction processing, real-time manufacturing process control

examples of application software

50
New cards

Engineering/Scientific software

It has been characterized by “number crunching” algorithms.

51
New cards

number crunching

Engineering/Scientific software has been characterized by “___________” algorithms.

52
New cards

Engineering/Scientific software

This software is designed to perform precise calculations on complex numerical data that are obtained during real-time environment.

53
New cards

astronomy software, volcanology applications , automotive stress analysis, space shuttle orbital dynamics, molecular biology systems, automated manufacturing

examples of engineering/scientific software

54
New cards

Embedded software

Part of a unique application involving hardware that resides within a product or system.

55
New cards

Embedded software

It is used to implement and control features and functions for the end user and for the system itself.

56
New cards

Embedded software

can perform limited and esoteric functions (intended for a small number of people with a specialized knowledge or interest) or provide significant function and control capability.

57
New cards

limited and esoteric functions

Embedded software can perform____________(intended for a small number of people with a specialized knowledge or interest) or provide significant function and control capability.

58
New cards

key pad control for a microwave oven, digital automobile functions (fuel control, dashboard displays, and braking systems)

examples of embedded software

59
New cards

Product-line software

Designed to provide a specific capability for use by many different customers.

60
New cards

Product-line software

It can focus on a limited and esoteric marketplace or address mass consumer markets.

61
New cards

inventory control products, word processing, spreadsheets, computer graphics, multimedia, entertainment, database management, personal and business financial applications

examples of product-line software

62
New cards

Web application

This is called a “WebApp” that acts as an interface between the user and the Internet.

63
New cards

WebApp

Web application is called a “__________” that acts as an interface between the user and the Internet.

64
New cards

Web application

This network-centric software category spans a wide array of applications, incorporating executable instructions written in special scripting languages, such as CGI or ASP.

65
New cards

WebApp

a__________can be little more than a set of linked hypertext files that present information using text and limited graphics.

66
New cards

web browsers

example/s of web application

67
New cards

Artificial intelligence software

These makes use of non numerical algorithms to solve complex problems that are not amenable to computation or straightforward analysis.

68
New cards

heuristics

Artificial intelligence software involves different kinds of searching techniques including the use of _____.

69
New cards

add certain degree of intelligence into the mechanical hardware to have the desired work done in an agile manner

The role of artificial intelligence software

70
New cards

robotics, expert systems, pattern recognition (image and voice), artificial neural networks, theorem proving, game playing.

examples of Artificial intelligence software