0% found this document useful (0 votes)
40 views

Introduction To Software Engineering 2

This document outlines the content and delivery approach for a software engineering course. It discusses five key challenges in software development: intangibility, complexity, requirements engineering, human factors, and speed of delivery. The course will cover agile development, DevOps, software measurement, systems of systems, component-based development, microservices architecture, and global software development. Content will be delivered through recorded videos, lecture notes, and labs. Recommended references include a textbook on software engineering and standards from the Guide to the Software Engineering Body of Knowledge and Scrum Guide.

Uploaded by

Asim Othman
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
40 views

Introduction To Software Engineering 2

This document outlines the content and delivery approach for a software engineering course. It discusses five key challenges in software development: intangibility, complexity, requirements engineering, human factors, and speed of delivery. The course will cover agile development, DevOps, software measurement, systems of systems, component-based development, microservices architecture, and global software development. Content will be delivered through recorded videos, lecture notes, and labs. Recommended references include a textbook on software engineering and standards from the Guide to the Software Engineering Body of Knowledge and Scrum Guide.

Uploaded by

Asim Othman
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 8

Prepared By:

Tarig Ahmed Khalid, PhD , PMP, CBAP, SMIEEE


Principal Consultant, Quantum IP & Business
1

1 Course Motivations

2 Course Content

3 Course Delivery Approach

2
1 Course Motivations

2 Course Content

3 Course Delivery Approach

1.1 Software Engineering 1

(1) (2) (3) (4)


Requirements Design Construction Testing

(5)
Maintenance

1. Defect Free
2. As Required
1. Customer Needs 1. System Behavior
2. Specifications 2. Architecture
3. Components
4. Interfaces 4

4
1.2 The Software Industry Big Picture

Strategy Project

Value Value Value


Creation Delivery Realization

1. Strategy 1. Development 1. Business Operations


2. Innovation 2. Project Management 2. Technical Operations
3. Feasibility
Continuous Value Delivery
Short Time to Martket 5

1.3 Software Challenges


 Challenge1: Software Intangibility
˗ Consequences:
1. Quantitative measurement is challenging.
2. You cannot manage what you cannot measure.
 Challenge 2: Software Complexity
– Complexity is ever-growing in terms of:
1. Adding more components.
2. Establishing interfaces with other applications and devices.
– Consequences:
1. Difficulty in responding to changes in requirements and
design.
2. Complexity has negative impacts on product quality.
3. Difficulty in managing the development activities.
6

6
 Challenge 3: Requirements Engineering
˗ Requirements are ever-changing.
˗ Poor requirements will lead to delivering a poor-quality product.
˗ A poor-quality product will fail in product testing.
˗ Failure in testing results in:
1. Intensive rework
2. Schedule delays
3. Cost overrun
4. Team demotivation
5. Customer dissatisfaction
6. Loss of reputation Work Complete

Development Lifecycle Testing Rework 7

 Challenge 4: Human Factors


– Software development is a human-intensive activity.
– Individual cultures, attitudes, qualities, and team characteristics
have direct impact on the development lifecycle and product
quality.
– Competent and collaborative team is expected to deliver quality
product.
– Less competent and less collaborative team is expected to
deliver low quality product, leading to high level of reworks.
– Stakeholder engagement is a determining factor in requirement
elicitation and workflow.
– Quantifying the human is so challenging.

8
 Challenge 5: Speed of Delivery
– The world becomes one market.
– The competition in the software industry is very high.
– Software firms should quickly respond to the ever-growing
needs.
– Therefore, the software development lifecycle should be
adapted to facilitate short time delivery.

1 Course Motivations

2 Course Content

3 Course Delivery Approach

10

10
 This course consists of contemporary and hot topics in software
engineering.
 Each topic is supposed to deal with one or more of the mentioned
challenges.
1. Agile Development 1. Speed of Delivery
2. Devops 2. Software Project Management
3. Human Factors
4. Requirement Changes and Complexity

3. Software Measurement 1. Software Tangibility


2. Software Project Management

4. Systems of Systems 1. Software Complexity


5. Component-Based Development 2. Software Project Management
6. Micro-services Architecture 3. Requirement Changes and Complexity
7. Software Configuration Management
8. Software Documentation

9. Global Software Development 1. Software Management


2. Innovation Management

11

11

1 Course Motivations

2 Course Content

3 Course Delivery Approach

12

12
1. Recorded videos.
2. Lecture Notes.
3. Labs.

13

13

Recommended References
1. Textbook: Ian Sommerville, Software Engineering - 10th
Edition, Pearson
2. Industrial Standards:
– Guide to the Software Engineering Body of Knowledge ver. 3
(www.swebok.org)
– Ken Schwaber & Jeff Sutherland, The Scrum Guide, 2018 &
2022 Editions.

14

14
15

15

You might also like