Written by students who passed Immediately available after payment Read online or as PDF Wrong document? Swap it for free 4.6 TrustPilot
logo-home
Class notes

Software Engineering Notes

Rating
-
Sold
-
Pages
59
Uploaded on
31-01-2022
Written in
2021/2022

These notes will assist many students who are pursuing a Software Engineering course

Institution
Course

Content preview

DIT 0203: SOFTWARE ENGINEERING
Prerequisite: DIT 0108
Contact Hours: Lectures 45 and Practical/Tutorials 0

Purpose of the course:
This course introduces learner to software engineering methodologies,
software analysis, design, programming and maintenance.

Expected Learning outcomes of the Course:
At the end of this course, the student should be able to;
i. Explain the concepts and techniques relevant to the process of
business software development
ii. Describe the characteristics and challenges of business computer
software projects
iii. Gain practical experience in design and development of a
computer software
Course content:
Introduction to software engineering.

Software development is the process of conceiving, specifying,
designing, programming, documenting, testing, and bug fixing involved in creating
and maintaining applications, frameworks, or other software components.
Software development is a process of writing and maintaining the source code,
but in a broader sense, it includes all that is involved between the conception of the
desired software through to the final manifestation of the software, sometimes in a
planned and structured process.
Therefore, software development may include research, new development,
prototyping, modification, reuse, re-engineering, maintenance, or any other
activities that result in software products.[2]
Software can be developed for a variety of purposes, the three most common being
to meet specific needs of a specific client/business (the case with custom software),
to meet a perceived need of some set of potential users (the case
with commercial and open source software), or for personal use (e.g. a scientist
may write software to automate a mundane task).
Embedded software development, that is, the development of embedded
software, such as used for controlling consumer products, requires the
development process to be integrated with the development of the controlled
physical product. System software underlies applications and the programming
process itself, and is often developed separately.

,The need for better quality control of the software development process has given
rise to the discipline of software engineering, which aims to apply the systematic
approach exemplified in the engineering paradigm to the process of software
development.
There are many approaches to software project management, known as software
development life cycle models, methodologies, processes, or models. The waterfall
model is a traditional version, contrasted with the more recent innovation of agile
software development.
The software engineering life cycle;
SDLC Models Explained: Agile, Waterfall, V-Shaped, Iterative, Spiral. One of the
basic notions of the software development process is SDLC models which stands
for Software Development Life Cycle models. ... There is no one single SDLC
model. They are divided into main groups, each with its features and weaknesses.

What are software life cycle models?
A software development life cycle (SDLC) model is a conceptual framework
describing all activities in a software development project from planning to
maintenance. This process is associated with several models, each including a
variety of tasks and activities.

What are the different process models of software engineering?

The four basic process activities are specification, development, validation, and
evolution are organized differently in different development processes. In the
waterfall model, they are organized in sequence, while in
incremental development they are interleaved.


Software Process
A software process (also known as software methodology) is a set of related
activities that leads to the production of the software. These activities may involve
the development of the software from the scratch, or, modifying an existing system.

Any software process must include the following four activities:

,1. Software specification (or requirements engineering): Define the main
functionalities of the software and the constraints around them.

2. Software design and implementation: The software is to be designed and
programmed.

3. Software verification and validation: The software must conforms to it’s
specification and meets the customer needs.

4. Software evolution (software maintenance): The software is being modified to
meet customer and market requirements changes.

In practice, they include sub-activities such as requirements validation, architectural
design, unit testing, …etc.

There are also supporting activities such as configuration and change
management, quality assurance, project management, user experience.

Along with other activities aim to improve the above activities by introducing new
techniques, tools, following the best practice, process standardization (so the
diversity of software processes is reduced), etc.

When we talk about a process, we usually talk about the activities in it. However, a
process also includes the process description, which includes:

1. Products: The outcomes of the an activity. For example, the outcome of
architectural design maybe a model for the software architecture.

2. Roles: The responsibilities of the people involved in the process. For example,
the project manager, programmer, etc.

3. Pre and post conditions: The conditions that must be true before and after an
activity. For example, the pre-condition of the architectural design is the
requirements have been approved by the customer, while the post condition is
the diagrams describing the architectural have been reviewed.

, Software Process Models
A software process model is a simplified representation of a software process. Each
model represents a process from a specific perspective.

Some methodologies are sometimes known as software development life
cycle (SDLC) methodologies, though this term could also be used more generally
to refer to any methodology.

A. Waterfall Model
The waterfall model is a sequential approach, where each fundamental activity of a
process represented as a separate phase, arranged in linear order.

In the waterfall model, you must plan and schedule all of the activities before
starting working on them (plan-driven process).

Plan-driven process is a process where all the activities are planned first, and the
progress is measured against the plan. While the agile process, planning is
incremental and it’s easier to change the process to reflect requirement changes.

The phases of the waterfall model are: Requirements, Design, Implementation,
Testing, and Maintenance.

Written for

Course

Document information

Uploaded on
January 31, 2022
Number of pages
59
Written in
2021/2022
Type
Class notes
Professor(s)
Justus ngari
Contains
College and university

Subjects

$7.99
Get access to the full document:

Wrong document? Swap it for free Within 14 days of purchase and before downloading, you can choose a different document. You can simply spend the amount again.
Written by students who passed
Immediately available after payment
Read online or as PDF

Get to know the seller
Seller avatar
Mnyazi

Get to know the seller

Seller avatar
Mnyazi Freelancer
Follow You need to be logged in order to follow users or courses
Sold
-
Member since
4 year
Number of followers
0
Documents
119
Last sold
-

0.0

0 reviews

5
0
4
0
3
0
2
0
1
0

Recently viewed by you

Why students choose Stuvia

Created by fellow students, verified by reviews

Quality you can trust: written by students who passed their tests and reviewed by others who've used these notes.

Didn't get what you expected? Choose another document

No worries! You can instantly pick a different document that better fits what you're looking for.

Pay as you like, start learning right away

No subscription, no commitments. Pay the way you're used to via credit card and download your PDF document instantly.

Student with book image

“Bought, downloaded, and aced it. It really can be that simple.”

Alisha Student

Working on your references?

Create accurate citations in APA, MLA and Harvard with our free citation generator.

Working on your references?

Frequently asked questions