You are on page 1of 9

LECTURE NOTES: slot 3 & 4

INTRODUCTION LECTURE

Principles of Software Engineering: Introduction

1. Process of SE: the logical steps we (developers) must follow in order to produce a
commercial software application (we: developers, technologist, software companies) build
an app to make money)
Is it easy to create/invent something (for example a software application), sell it and make
money?
The developers MUST provide his capabilities/experience/expertise to create an app which
meets the customer’s needs. This is called general business principle.
Very difficult: food delivery service. For the last 10 years, there were about 10 start-ups in
delivery services (foody, delivery now, grab,…) There were some start-ups which already
been out of business (disappear).
Instead of seeking all reasons for failure, we just focus to the quality of the software app,
which is only about a technical aspect.

-What are the steps involved in producing a good application?

2. Assessments:

100 marks in total for 2 courseworks.

-CW1: 60 marks

-CW2: 40 marks

3. Plagiarism

-Don’t copy exactly other’s work (report)

-Make sure you paraphrase (writing the same content using different words) it

For example, DONT copy this : “The process of software engineering is a complex one which involves
a wide range of skills involved in creating a software system”

Instead, Paraphrase it into: The process of software engineering means the logical production steps
which requires the team of developers to follow to produce a good software application. When the
team creates the application, they use the required technologies, software libraries to meet the
customer’s needs. Therefore, it requires the combination of skills in technologies.

The university maintains some level of penalty to this issue (the most usual penalty is mark
subtraction)

A copy of a whole of one or more paragraphs -> plagiarism

Minor similarity using terminology -> NOT plagiarism

You can use this tool turnitin.com to self-check your similarity

4. Communication

Email: NamLNT2@FE.EDU.VN
Fb messenger: Nam Lam

(continue next page)


LECTURE 1. THE 5Ps of SE

1. Software Engineering: the LOGICAL steps (or stages):

-Understanding software application requirements: Understand what we will produce


(understand the product). Before we produce/create something, make sure we understand the
result of the work, or can imagine the picture/descriptions of the application we produce.

-Design and implementation: produce/build the software system

-Test: check if the system is good (as good as it is specified in the requirements)

-Maintenance: the developer has a responsibility to check/resolve the issues if there is any
when the software is operating on the customer’s side

2. Let’s explore to use a small restaurant ordering software

There are several free demo of restaurant app available.

I want you to look at this one at demo.restburger.com

This is supposed to give you a first look of a commercial software system. You are using the below
software NOT as a developer but as a USER, in order that you can understand the software from a
user’s perspective.

You are now a USER of demo.restburger.com, please perform the below steps:

Step 1. Select ORDER

Step 2. Select Delivery


Step 3. Select Double Smoky BBQ Angus Burger (or any other item)

Step 4. Select ADD TO ORDER

Step 5. Now complete order and select delivery time and so on


So now we understand that from the user’s perspective, in order to complete a task
“ORDER”, the user must performed several steps which were designed for the software (by the
developers).

3. LAB1 draw a flowchart of the steps you performed in the ORDERING system

Flowchart: a chart which describes exactly the logical steps

Use draw.io which is an online drawing tool, draw a flowchart for the ordering steps we have
performed above when we use the functionality “ORDERING” in the application above.

I give you an example about a flow chart


What is the benefit of complying to these steps which are specified in the flowchart?

What will happen when I miss to perform one of the steps?

4. Homework: Draw a flowchart to describe these 5 steps above.


5. HOMEWORK REVIEW

There are 2 possible answers: one simple and another complex

A simple answer: some of you do like this:


A more complex answer: Some of you can do like this (a more complex flowchart)
6. Software Engineering Process by a flowchart
if we follow these 5 stages, we have more chances to succeed

You might also like