Software engineering is concerned with theories, methods and tools for professional software development. Software engineering expenditure represents a significant fraction of the GNP of developed countries.

4 views 18 slides Apr 01, 2025
Slide 1
Slide 1 of 18
Slide 1
1
Slide 2
2
Slide 3
3
Slide 4
4
Slide 5
5
Slide 6
6
Slide 7
7
Slide 8
8
Slide 9
9
Slide 10
10
Slide 11
11
Slide 12
12
Slide 13
13
Slide 14
14
Slide 15
15
Slide 16
16
Slide 17
17
Slide 18
18

About This Presentation

First lectures in my software engineering lecture series.
Software engineering is concerned with theories, methods and tools for professional software development.
Software engineering expenditure represents a significant fraction of the GNP of developed countries.


Slide Content

Software Engineering Osman Kanu

I ntroduction The economies of all developed nations are dependent on software. More and more systems are software controlled. Software engineering is concerned with theories, methods and tools for professional software development. Software engineering expenditure represents a significant fraction of the GNP of developed countries.

What is a Software? In a computer system, the software is basically a set of instructions or commands that tell a computer what to do. In other words, the software is a computer program that provides a set of instructions to execute a user’s commands and tell the computer what to do. For example like MS-Word, MS-Excel, PowerPoint, etc.

Types of Software

System Software System software is software that directly operates the computer hardware and provides the basic functionality to the users as well as to the other software to operate smoothly. Or in other words, system software basically controls a computer’s internal functioning and also controls hardware devices such as monitors, printers, and storage devices, etc. Types of System Software Operating System Language Processor Device Driver

Features of System Software System Software is closer to the computer system. System Software is written in a low-level language in general. System software is difficult to design and understand. System software is fast in speed(working speed). System software is less interactive for the users in comparison to application software.

Application Software Software that performs special functions or provides functions that are much more than the basic operation of the computer is known as application software. Or in other words, application software is designed to perform a specific task for end-users. Types of Application Software General Purpose Software Customized Software Utility Software

Features of Application Software An important feature of application software is it performs more specialized tasks like word processing, spreadsheets, email, etc. Mostly, the size of the software is big, so it requires more storage space. Application software is more interactive for the users, so it is easy to use and design. The application software is easy to design and understand. Application software is written in a high-level language in general.

Difference Between System Software and Application Software

What is software engineering? Is the process of developing, testing and deploying computer applications to solve real-world problems by adhering to a set of engineering principles and best practices. Though the original use of the term is uncertain, the first software engineering conference was held and sponsored by NATO in 1968. The conference addressed the inconsistency and unreliability in software development as well as the need for better quality assurance and reliability.

What is software engineering? Even though a software engineer usually manages many coding projects, software engineering entails more than just writing code for the software. In reality, software engineering encompasses every phase of the software development lifecycle (SDLC), from planning the budget to analysis, design, development, software testing, integration, quality and retirement.

Why Software Engineering? Major Goals: To increase software productivity and quality. To effectively control software schedule and planning. To reduce the cost of software development. To meet the customers’ needs and requirements. To improve the current software engineering practice. To support the engineers’ activities in a systematic and efficient manner.

Programming versus Software Engineering Programming The process of translating a problem from its physical environment into a language that a computer can understand and obey. (Webster’s New World Dictionary of Computer Terms) Software Engineering (according to Fritz Bauer) “The establishment and use of sound engineering principles in order to obtain economically software that is reliable and works efficiently on real machines.”

What is the difference between software engineering and system engineering? Software engineering is part of System engineering System engineering is concerned with all aspects of computer-based systems development including hardware, software and process engineering System engineers are involved in system specification architectural design integration and deployment

Software engineer roles and responsibilities The responsibilities and roles of a software engineer can vary depending on their position. Typically, the following day-to-day tasks are included in this role: Design and management of software systems. Testing and assessment of new software applications. Code writing and evaluations. Optimizing the speed and scalability of software. Consultation with customers, engineers, security experts and other parties involved. Introducing new features to internal customers and stakeholders.

Challenges of software engineers Rapidly changing technology. Unclear customer requirements. Risk of software failure Changing requirements . Time limitations.

Q & A

Thank you