Professional Documents
Culture Documents
Cpe 310 Software Engineering_week_1
Cpe 310 Software Engineering_week_1
Spring Semester-2023
CONTENTS
Aim Of Lesson
Software engineering is about imagination and creativity. The process is creating something
apparently tangible from nothing. Software engineering methods have not yet been
completely analyzed and systematized. Software engineering is about the creation of large
pieces of software that consist of thousands of lines of code and involve many person months
of human effort.
Books, Videos and Online Course Documents
1. Software Engineering, Ian Sommerville, 9th edition, Addison-Wesley
2. Software Engineering For Students, Douglas Bell, 4th edition, AddisonWesley
3. Object - Oriented Software Engineering, Timothy C. Lethbridge and Robert
Laganière, 2nd edition, McGraw- Hill
Evaluations
1 Mid-term, 1 Final Exam and 1 Project
WEEK 1: DEFINITION AND IMPORTANCE of SOFTWARE ENGINEERING
What is software?
It includes all methods, tools, information and documents that can be used to
combine and manage logic, data, documents, human and program components
for a specific production purpose [1, 2].
The software can be examined as General and Special for Customer Software [3].
Software Deteriorates
In computer systems
Very large: 10 years, 1000s of programmers, 10M LOC, Ex: Air traffic control,
Telecommunications, space shuttle
Software Engineering term first emerged in 1968 at the NATO Software Engineering
conference in Germany. It emerged with the evolution of Computer Science discipline.
[4].
Software Engineering has been described in many ways, some are as follows:
Software Engineer
Software Engineer is the software engineering job. However, person cannot do this
job without formal training. The software engineer is not just an encoder. The person
who knows best how to tell user requests to the computer. It is mostly related to
people and deals with the logical dimension of the software. Today, software
engineering has become a profession and has schools.
Computer software is now everywhere in our lives. For this, the goal of Software
Engineering;
Errors in software production show propagation. For this reason, error correction costs
increase gradually in the following stages. Its main goal is to realize the production with the
lowest cost and the highest quality. Therefore, the hardware cost is ineffective besides the cost
of the software. Table 1 shows error correction costs in software production [2].
Analysis 1
Design 5
Coding 10
Test 25
Acceptance
50
Test
Operating 100
Software Quality Assurance
The objectives of software quality assurance activities can be summarized as follows [2]:
Maintainability
Efficiency
Management, customers and analysts are the most important stakeholders in the perception of
software.
Administration according to an old belief, a good manager manages all projects. But this is
not true for today's projects. Because, In a constantly evolving world, a good manager must be
well-off with the latest technology.
Customer is the person who directs the project to be developed and determines the
qualifications of the project in line with his own wishes. Before starting software
development, it has a great role in understanding and analyzing the subject thoroughly.
Operator should analyze the subject very well before coding begins, design it with all the
details and then coding should begin.
Case of roles:
Why is software development difficult?
1. Abstraction
1. Task Model:
o PERT Chart: What are the dependencies between tasks?
o Schedule: How can this be done within the time limit?
o Organization Chart: What are the roles in the project?
2. Issues Model:
o What are the open and closed issues?
o What constraints were imposed by the client?
o What resolutions were made?
2. Decomposition
3. Hierarchy
Software Classification
Produced to be sold to many different customers (Commercial Off The Shelf - COTS)
Special Software
System Software
It is the software that installs every time the computer is turned on and makes the computer
ready for use. The BIOS program on PCs does this task. This program is loaded into RAM
when the computer is started and remains in memory until it is turned off.
Application Software
Usually, they are all programs outside of the system software. These softwares are programs
written to solve a certain problem using appropriate data processing techniques. Unlike
system and support software, it is written for a uniform application. For example; Microsoft
Excel, Microsoft Word, etc.
Support Software
They are general-purpose computer programs that are not specific to any application and
allow certain commands to be performed. Sorting, copying, formatting, etc. like software that
handles transactions.
REFERENCES