24 Questions
What is the primary focus of software engineering?
Practicalities of developing and delivering useful software
What percentage of software costs are typically development costs?
60%
What type of software product is developed especially for a particular customer?
Customized product
What is a significant issue affecting many different types of software?
Heterogeneity
What is the primary difference between software engineering and system engineering?
System engineering is concerned with all aspects of computer-based systems development
What often exceeds development costs for custom software?
Evolution costs
What type of software product is developed by a development organization and sold on the open market?
Generic product
What is the relationship between software costs and computer system costs?
Software costs often control computer system costs
What is the primary reason why business and society need to change their existing software and develop new software rapidly?
to adapt to emerging economies and new technologies
Why is trust in software essential?
because it is intertwined with all aspects of our lives
What is a key factor in determining which software engineering methods and techniques are most important?
the type of application being developed
What characteristic defines stand-alone applications?
they run on a local computer and include all necessary functionality
What type of application is an e-commerce website?
interactive transaction-based application
What is a common feature of interactive transaction-based applications?
they incorporate a large data store
What is the primary purpose of embedded control systems?
to manage hardware devices
What is a key difference between stand-alone applications and interactive transaction-based applications?
their network connectivity
What type of system is designed to process large numbers of individual inputs to create corresponding outputs?
Batch processing system
What type of system is composed of a number of other software systems?
System of systems
What type of system is primarily used for personal use and intended to entertain the user?
Entertainment system
What type of system collects data from the environment using sensors and sends it to other systems for processing?
Data collection system
What type of system is developed by scientists and engineers to model physical processes or situations?
System for modeling and simulation
What is a characteristic of the boundaries between different types of systems?
They are blurred
What is an example of an embedded system?
Software in a microwave oven
What is an example of a batch processing system?
Periodic billing system
Study Notes
Software Engineering vs. Computer Science
- Computer science focuses on theory and fundamentals
- Software engineering is concerned with developing and delivering useful software
Software Engineering vs. System Engineering
- System engineering is concerned with all aspects of computer-based systems development, including hardware, software, and process engineering
- Software engineering is part of this more general process
Software Costs
- 60% of software costs are development costs; 40% are testing costs
- Evolution costs often exceed development costs for custom software
- Maintenance costs may be several times development costs for systems with a long life
- Software costs often control computer system costs
Hardware Costs vs Software Costs
- Software costs often exceed hardware costs
Software Products
- Generic products are stand-alone systems produced for the open market
- Customized products are developed especially for a particular customer
General Issues in Software Engineering
Heterogeneity
- Systems operate as distributed systems across networks with different computer and mobile devices
Business and Social Change
- Business and society are changing quickly due to emerging economies and new technologies
- Software must be adaptable to change and rapid development is necessary
Security and Trust
- Software security is essential to prevent malicious attacks and maintain information security
Software Engineering Diversity
- No universal software engineering methods and techniques are suitable for all systems and companies
- The type of application being developed is the most significant factor in determining software engineering methods and techniques
Types of Applications
Stand-alone Applications
- Run on a local computer, such as a PC
- Include all necessary functionality and do not need to be connected to a network
- Examples: office applications, CAD programs, photo manipulation software
Interactive Transaction-based Applications
- Execute on a remote computer and are accessed by users from their own PCs or terminals
- Examples: web applications, e-commerce applications, internet banking
Embedded Control Systems
- Control and manage hardware devices
- Examples: software in a mobile phone, software that controls anti-lock braking in a car, central heating systems, software in a microwave oven
Batch Processing Systems
- Designed to process data in large batches
- Examples: periodic billing systems, salary payment systems
Entertainment Systems
- Primarily for personal use and intended to entertain the user
- Examples: games
Systems for Modeling and Simulation
- Developed by scientists and engineers to model physical processes or situations
Data Collection Systems
- Collect data from the environment using sensors and send it to other systems for processing
Systems of Systems
- Composed of a number of other software systems
- Examples: generic software products, specially written systems for an environment
Quiz about software engineering, its differences with computer science and system engineering, and its focus on practical software development.
Make Your Own Quizzes and Flashcards
Convert your notes into interactive study material.
Get started for free