Docsity
Docsity

Prepare for your exams
Prepare for your exams

Study with the several resources on Docsity


Earn points to download
Earn points to download

Earn points by helping other students or get them with a premium plan


Guidelines and tips
Guidelines and tips

Introduction to Software Engineering: Concepts, Principles, and Ethics, Slides of Information and Computer Technology

slide 1 - slide 1

Typology: Slides

2014/2015

Uploaded on 09/19/2015

eric_twum
eric_twum 🇬🇧

2 documents

1 / 16

Toggle sidebar

This page cannot be seen from the preview

Don't miss anything!

bg1
Software
Engineering
INTRODUCTION
By: Eric Okyere Twum
pf3
pf4
pf5
pf8
pf9
pfa
pfd
pfe
pff

Partial preview of the text

Download Introduction to Software Engineering: Concepts, Principles, and Ethics and more Slides Information and Computer Technology in PDF only on Docsity!

Software

Engineering

INTRODUCTION

Basic Knowledge

Software Systems

Software Development Process

Computer Fundamentals

Programming Fundamentals

Definitions

  • (^) Engineering on the other hand, is all about developing

products by using well-defined, scientific principles and

methods.

  • (^) Engineering also refers to the application of science,

mathematics and technology to find the best possible

solution for a realistic everyday problem.

Definitions

  • (^) Software Engineering is a branch in computer science,
which uses well-defined engineering concepts required to
produce efficient, durable, scalable, in-budget, and on-time
software products.
  • (^) IEEE defines software engineering as:
    • (^) The application of a systematic, disciplined, quantifiable & measurable approach to the development, operation, and maintenance of software; that is, the application of engineering to software.
    • (^) The study of approaches as in the above statement.
  • (^) The expected outcome of software engineering is an efficient
and reliable software product.

Transitional

This aspect is important when the software is moved

from one platform to another:

  • (^) Portability
  • (^) Interoperability
  • (^) Reusability
  • (^) Adaptability

Maintenance

This aspect briefs about how the software has the

capabilities to maintain itself in the ever-changing

environment:

  • (^) Modularity
  • (^) Maintainability
  • (^) Flexibility
  • (^) Scalability

Why Software Engineering?

  • (^) Provide an understandable process for system development.
  • (^) Develop systems and software that are maintainable and

easily adopt.

  • (^) Develop robust software and system that can stand the test

of time.

  • (^) For engineers to appreciate software development

processes.

Need for Software Engineering

  • (^) Huge software applications  (^) As the size of a software becomes large, engineering has to step to give it a scientific process in order to help manage the application It is easier to build a wall than a house or building
  • (^) Scalability If the software process were not based on scientific and engineering concepts , it becomes easier to re-create new software than to scale an existing one.
  • (^) Cost cost of the software remains high if proper process are not adapted.
  • (^) Dynamic Nature of software If the nature of software is always changing, new enhancements need to be done to the existing application. This is where the software engineering plays a good role.
  • (^) Quality Management software development provides better and quality software product

Software Engineering Ethics

  • (^) Software engineering has evolved over the past several

years from an activity of computer engineering to a

discipline in its own right.

  • (^) Professional societies and institutions have an important

role to play in setting ethical standards, Organizations

such as:

• ACM
• IEEE
  • (^) British Computer Society

General SWE Ethical Standards:

Like other engineering disciplines, software engineering

is now carried out within a social and legal framework

known as Code of

Ethics and Professional Practice. Some of these are:-

  • (^) Confidentiality
  • (^) Competence
  • (^) Intellectual property rights
  • (^) Computer misuse

THANK YOU