Software Engineering Principles and Characteristics

Choose a study mode

Play Quiz
Study Flashcards
Spaced Repetition
Chat to Lesson

Podcast

Play an AI-generated podcast conversation about this lesson

Questions and Answers

What is a primary focus of software engineering?

  • Creating software without documentation
  • Ignoring maintenance and reliability
  • Employing established engineering principles (correct)
  • Focusing only on individual programmers

Which of the following is a characteristic of well-engineered software?

  • Easily maintainable (correct)
  • Unreliable
  • Inefficient
  • Difficult to use

What type of software operates the computer hardware and maintains a platform for applications?

  • Firmware
  • Application Software
  • System Software (correct)
  • Utility Software

Which of these is an example of application software?

<p>Word Processor (C)</p> Signup and view all the answers

What is the role of utility software?

<p>To diagnose and maintain the computer system (D)</p> Signup and view all the answers

Which statement best describes firmware?

<p>Software routines stored in read-only memory (D)</p> Signup and view all the answers

What does software engineering focus on in regards to software solutions?

<p>Cost effectiveness and high quality (C)</p> Signup and view all the answers

Which of the following is NOT a characteristic of well-engineered software?

<p>Complexity in usage (A)</p> Signup and view all the answers

Flashcards

Software

Aggregates of computer programs, documentation, and data needed for computation.

Software Engineering

Applying engineering principles to create good, reliable, maintainable software, often by teams.

Well-Engineered Software

Software that is easy to use, maintain, reliable, efficient, and has a good user interface.

System Software

Software that operates computer hardware and provides a platform for application software.

Signup and view all the flashcards

Operating System (OS)

The basic software that controls a computer's functions.

Signup and view all the flashcards

Firmware

Software instructions permanently stored in hardware devices.

Signup and view all the flashcards

Application Software

Software designed to help users perform specific tasks.

Signup and view all the flashcards

Word Processor

Software application for creating and editing text documents.

Signup and view all the flashcards

Spreadsheet Application

Software for organizing data in rows and columns, performing calculations.

Signup and view all the flashcards

Study Notes

Software Definition

  • Software is a collection of computer programs and their documentation, used for computation.
  • Engineering uses established procedures to achieve goals.

Software Engineering Definition

  • Software engineering applies engineering principles to software development.
  • It focuses on building reliable, maintainable, and functional software.
  • Teams rather than individuals develop software.

Software Engineering Principles

  • Software engineering integrates methods, tools, and procedures to develop software (Pressman, 2000).
  • Sound engineering is used to create efficient and reliable software (Mbam B.C, 2002).
  • It also focuses on cost-effective, reliable, and high-quality software solutions to problems (Berry).

Characteristics of Well-Engineered Software

  • Easy to use
  • Easy to maintain
  • Reliable
  • Efficient
  • Appropriate user interface

Software Classification

System Software

  • Operates computer hardware and provides a platform for application software.
  • Includes:
    • Operating System (OS): Controls computer functions.
    • Computer BIOS and Device Firmware: Used during boot-up. Firmware is programmed hardware.
    • Utility Software: Analyzes, configures, optimizes, and maintains the computer system.

Application Software

  • Designed for specific user tasks. Examples include:
    • Electronic Spreadsheet Applications: Manipulates data in a grid.
    • Desktop Publishing Software: Used for page layout.
    • Presentation Software: Creates slide shows.
    • Programming Languages: Used to write instructions for computers. Types include:
      • Low level languages:
        • Machine Language: Deals directly with computer hardware.
        • Assembly Language: Mnemonic codes for machine language.
      • High level languages: More like natural languages of users.
      • Word Processor: A software for creating documents.

Studying That Suits You

Use AI to generate personalized quizzes and flashcards to suit your learning preferences.

Quiz Team

Related Documents

More Like This

CSC 303 Software Engineering 1
16 questions

CSC 303 Software Engineering 1

NoblePrehistoricArt4993 avatar
NoblePrehistoricArt4993
Software Engineering Overview
40 questions
Introduction to Software Engineering
40 questions
Use Quizgecko on...
Browser
Browser