Introduction to software engineering
-
Upload
lakim-arsenal -
Category
Documents
-
view
7 -
download
0
description
Transcript of Introduction to software engineering
![Page 1: Introduction to software engineering](https://reader034.fdocuments.us/reader034/viewer/2022042822/55cf9a04550346d033a02175/html5/thumbnails/1.jpg)
1
SWE 205 - Introduction to Software Engineering
Lecture 7 - Software Project Management
![Page 2: Introduction to software engineering](https://reader034.fdocuments.us/reader034/viewer/2022042822/55cf9a04550346d033a02175/html5/thumbnails/2.jpg)
2
Lecture Objectives To discuss project planning and
planning process. To show how graphical schedule
representations are used by project management
To discuss the notion of risks and the risk management process
![Page 3: Introduction to software engineering](https://reader034.fdocuments.us/reader034/viewer/2022042822/55cf9a04550346d033a02175/html5/thumbnails/3.jpg)
3
Project Management process
Project Schedule
Start activities according to schedule
Review Project progress
Update the project schedule
Negotiatedeliverables
![Page 4: Introduction to software engineering](https://reader034.fdocuments.us/reader034/viewer/2022042822/55cf9a04550346d033a02175/html5/thumbnails/4.jpg)
4
The Project Plan The project plan sets out:
The resources available to the project; The work breakdown; A schedule for the work.
![Page 5: Introduction to software engineering](https://reader034.fdocuments.us/reader034/viewer/2022042822/55cf9a04550346d033a02175/html5/thumbnails/5.jpg)
5
The Project Plan
Quality Plan
Validation Plan
Configuration Plan
Maintenance Plan
Staff Development Plan
Quality Procedures and Standards
Approach, Resources, Schedule
Configuration Management Process
Maintenance Process, cost, required effort
How skills and experience of the Project team will be developed
![Page 6: Introduction to software engineering](https://reader034.fdocuments.us/reader034/viewer/2022042822/55cf9a04550346d033a02175/html5/thumbnails/6.jpg)
6
Project Plan Structure Introduction. Project organisation. Risk analysis. Hardware and software resource
requirements. Work breakdown. Project schedule. Monitoring and reporting mechanisms.
![Page 7: Introduction to software engineering](https://reader034.fdocuments.us/reader034/viewer/2022042822/55cf9a04550346d033a02175/html5/thumbnails/7.jpg)
7
Milestones & Deliverables Activities in a project should be
organised to produce tangible outputs for management to judge progress.
Milestones are the end-point of a process activity.
Deliverables are project results delivered to customers.
![Page 8: Introduction to software engineering](https://reader034.fdocuments.us/reader034/viewer/2022042822/55cf9a04550346d033a02175/html5/thumbnails/8.jpg)
8
Project Scheduling Split project into tasks and estimate time and
resources required to complete each task. Organize tasks concurrently to make optimal
use of workforce. Minimize task dependencies to avoid delays
caused by one task waiting for another to complete.
Dependent on project managers intuition and experience.
![Page 9: Introduction to software engineering](https://reader034.fdocuments.us/reader034/viewer/2022042822/55cf9a04550346d033a02175/html5/thumbnails/9.jpg)
9
Scheduling Challenges Estimating the difficulty of problems and
hence the cost of developing a solution is hard.
Productivity is not proportional to the number of people working on a task.
Adding people to a late project makes it later because of communication overheads.
The unexpected always happens. Always allow contingency in planning.
![Page 10: Introduction to software engineering](https://reader034.fdocuments.us/reader034/viewer/2022042822/55cf9a04550346d033a02175/html5/thumbnails/10.jpg)
10
Bar charts & Activity Networks Graphical notations used to illustrate the
project schedule. Show project breakdown into tasks.
Tasks should not be too small. For example, they should take about a week or two.
Activity charts show task dependencies and the the critical path.
Bar charts show schedule against calendar time.
![Page 11: Introduction to software engineering](https://reader034.fdocuments.us/reader034/viewer/2022042822/55cf9a04550346d033a02175/html5/thumbnails/11.jpg)
11
Task Durations & Dependencies
Task Duration (days) Dependencies
T1 8
T2 15
T3 10 T1
Component-A Design
Component-A Implementation
![Page 12: Introduction to software engineering](https://reader034.fdocuments.us/reader034/viewer/2022042822/55cf9a04550346d033a02175/html5/thumbnails/12.jpg)
12
Progress from one Milestone to another.
Activity Network
start
T2
M3T6
Finish
T10
M7T5
T7
M2T4
M5
T8
4/7/03
8 days
14/7/03 15 days
4/8/03
15 days
25/8/03
7 days
5/9/03
10 days
19/9/03
15 days
11/8/03
25 days
10 days
20 days
5 days25/7/03
15 days
25/7/03
18/7/03
10 days
T1
M1 T3T9
M6
T11
M8
T12
M4
![Page 13: Introduction to software engineering](https://reader034.fdocuments.us/reader034/viewer/2022042822/55cf9a04550346d033a02175/html5/thumbnails/13.jpg)
13
Activity Network
start
T2
M3T6
Finish
T10
M7T5
T7
M2T4
M5
T8
4/7/03
8 days
14/7/03 15 days
4/8/03
15 days
25/8/03
7 days
5/9/03
10 days
19/9/03
15 days
11/8/03
25 days
10 days
20 days
5 days25/7/03
15 days
25/7/03
18/7/03
10 days
T1
M1 T3T9
M6
T11
M8
T12
M4
Minimum time required to finishthe project. (critical path)
![Page 14: Introduction to software engineering](https://reader034.fdocuments.us/reader034/viewer/2022042822/55cf9a04550346d033a02175/html5/thumbnails/14.jpg)
14
Activity Network
start
T2
M3T6
Finish
T10
M7T5
T7
M2T4
M5
T8
4/7/03
8 days
14/7/03 15 days
4/8/03
15 days
25/8/03
7 days
5/9/03
10 days
19/9/03
15 days
11/8/03
25 days
10 days
20 days
5 days25/7/03
15 days
25/7/03
18/7/03
10 days
T1
M1 T3T9
M6
T11
M8
T12
M4
Less chances of causing delayin project schedule.
![Page 15: Introduction to software engineering](https://reader034.fdocuments.us/reader034/viewer/2022042822/55cf9a04550346d033a02175/html5/thumbnails/15.jpg)
15
Grantt Charts4/7 11/7 18/7 25/7 1/8 8/8 15/8 22/8 29/8 5/9 12/9 19/9
T4
T1T2
M1
T7T3
M5
T8
M3
M2
T6
T5
M4
T9
M7
T10
M6
T11M8
T12
Start
Finish
Flexibility in completionDate
![Page 16: Introduction to software engineering](https://reader034.fdocuments.us/reader034/viewer/2022042822/55cf9a04550346d033a02175/html5/thumbnails/16.jpg)
16
Staff Allocation 4/7 11/7 18/7 25/7 1/8 8/8 15/8 22/8 29/8 5/9 12/9 19/9
T4
T8 T11
T12
T1
T3
T9
T2
T6 T10
T7
T5
Fred
Jane
Anne
Mary
Jim
Specialists e.g Security Analyst
![Page 17: Introduction to software engineering](https://reader034.fdocuments.us/reader034/viewer/2022042822/55cf9a04550346d033a02175/html5/thumbnails/17.jpg)
17
Risk Management Risk management is concerned with
identifying risks and drawing up plans to minimise their effect on a project.
A risk is a probability that some adverse circumstance will occur Project risks affect schedule or resources; Product risks affect the quality or performance of
the software being developed; Business risks affect the organisation developing
or procuring the software.
![Page 18: Introduction to software engineering](https://reader034.fdocuments.us/reader034/viewer/2022042822/55cf9a04550346d033a02175/html5/thumbnails/18.jpg)
18
Risk Management - Example An experience Programmer leaves a
project. Project risk - possible delay in system
delivery. Product risk - Replacement may be less
experienced and more chances of errors. Business risk - Programmer’s experience is
not available for future products.
![Page 19: Introduction to software engineering](https://reader034.fdocuments.us/reader034/viewer/2022042822/55cf9a04550346d033a02175/html5/thumbnails/19.jpg)
19
Risk Management Process
Risk avoidanceand contingency
plans
Risk planning
Prioritised risklist
Risk analysis
List of potentialrisks
Riskidentification
Riskassessment
Riskmonitoring
![Page 20: Introduction to software engineering](https://reader034.fdocuments.us/reader034/viewer/2022042822/55cf9a04550346d033a02175/html5/thumbnails/20.jpg)
20
Risk Indicators
Risk type Potential indicators
Technology Late delivery of hardware or support software, many reportedtechnology problems
People Poor staff morale, poor relationships amongst team member,job availability
Organisational Organisational gossip, lack of action by senior management
Tools Reluctance by team members to use tools, complaints aboutCASE tools, demands for higher-powered workstations
Requirements Many requirements change requests, customer complaints
Estimation Failure to meet agreed schedule, failure to clear reporteddefects
![Page 21: Introduction to software engineering](https://reader034.fdocuments.us/reader034/viewer/2022042822/55cf9a04550346d033a02175/html5/thumbnails/21.jpg)
21
Key Points Planning and estimating are iterative
processes which continue through out the course of a project.
Project scheduling involves preparing various graphical representations showing project activities, their durations and staffing.
Risk management is concerned with identifying risks which may affect the project and planning to ensure that these risks do not develop into major threats.