Software Engineering And Project Management Basics

spmf313 12 views 72 slides Feb 27, 2025
Slide 1
Slide 1 of 72
Slide 1
1
Slide 2
2
Slide 3
3
Slide 4
4
Slide 5
5
Slide 6
6
Slide 7
7
Slide 8
8
Slide 9
9
Slide 10
10
Slide 11
11
Slide 12
12
Slide 13
13
Slide 14
14
Slide 15
15
Slide 16
16
Slide 17
17
Slide 18
18
Slide 19
19
Slide 20
20
Slide 21
21
Slide 22
22
Slide 23
23
Slide 24
24
Slide 25
25
Slide 26
26
Slide 27
27
Slide 28
28
Slide 29
29
Slide 30
30
Slide 31
31
Slide 32
32
Slide 33
33
Slide 34
34
Slide 35
35
Slide 36
36
Slide 37
37
Slide 38
38
Slide 39
39
Slide 40
40
Slide 41
41
Slide 42
42
Slide 43
43
Slide 44
44
Slide 45
45
Slide 46
46
Slide 47
47
Slide 48
48
Slide 49
49
Slide 50
50
Slide 51
51
Slide 52
52
Slide 53
53
Slide 54
54
Slide 55
55
Slide 56
56
Slide 57
57
Slide 58
58
Slide 59
59
Slide 60
60
Slide 61
61
Slide 62
62
Slide 63
63
Slide 64
64
Slide 65
65
Slide 66
66
Slide 67
67
Slide 68
68
Slide 69
69
Slide 70
70
Slide 71
71
Slide 72
72

About This Presentation

It tells the basics of Sepm for future software developers.


Slide Content

21CSC303J Software Engineering and Project Management

Unit -1 The evolving role of software Changing nature of software Generic view of process: Software engineering –A layered technology, a process frame work, software project management Life cycle activities Process models- the water fall model, incremental model, the evolutionary process model, the unified process, conventional, Agile, XP, Scrum Project Initiation Management- Project charter, project scope, project objectives, practical considerations

Correction Adaptation Enhancement Prevention

Frame work Activities

Life Cycle Activities Planning, Requirements Analysis, Design, Coding, Testing, Deployment, and Maintenance

Process Model Water Fall Model The waterfall model, sometimes called the classic life cycle model

Incremental Process Model

Evolutionary Process Model Prototyping and Spiral models.

Prototyping

Spiral Model

WINWIN spiral model win condition is  a mutually agreed upon outcome that is negotiated among stakeholders of a project

Concurrent Development model

Rational Unified Process Model

Unified Process

Inception Phase

Elaboration Phase

Construction Phase

Transition Phase

Agile Methodology Agile is a project management approach developed as a more flexible and efficient way to get products to market. The word ‘ agile’ refers to the ability to move quickly and easily . The Agile method works in ongoing sprints of project planning and execution, enabling you to continuously adapt and mature your plan, scope, and design throughout the project.  Agile projects require an iterative approach, which supports incremental, frequent, and consistent delivery of workable products to your customer or client. This innovative approach ensures your project team can consistently deliver concrete products without being delayed by changes and evolving requirements.  .

5 Stages of the Agile Life Cycle: Project Initiation :  During this stage, an agile project charter is developed to discuss the project vision and ROI( Return On Investment) justification. 2. Planning :   Building a Backlog : Discuss and create a backlog at the story level. Upskilling and Cross-Skilling:  Emphasize the importance of team members learning new skills or honing existing ones. Value Stream Management : Integrate data-driven decision-making into the planning process with value stream management. User Stories:  Describe what the end-user expects from the product, including the user type and the reason for the feature. Business Context:  Consider the larger business opportunity and its impact on project viability. Risk Assessment:  Assess and estimate the project's potential risks. Milestone Development:  Create an initial release plan that includes critical milestones. Prioritization:  Make certain that the backlog items are prioritized based on their business value and dependencies.

3 . Development p roduce high-quality, functional products in small increments called sprints or iterations 4. Production ensuring that the product is produced and deployed efficiently.  5. Retirement: Products are retired for a variety of reasons. Most of the time, this is because a newer release is being deployed, and/or the older release is no longer supported. In this case, the newer system may receive some final, minor software updates.

The Scrum framework The Scrum methodology was  developed in the 1990s  based on a Harvard Business Review article titled  “The New New Product Development Game.” Most project managers would name Scrum as the most popular Agile framework. As with other Agile frameworks, Scrum entails an iterative approach to project management. The Scrum methodology prescribes breaking a project down into sprints that typically only last one to four weeks. Each sprint ends with the completion of a workable version or draft of the final project deliverable .  The Scrum approach’s short iterations enable your team to continuously deliver a working version of the final product.  Scrum was initially designed using a software model that follows a set of roles, responsibilities, and meetings. It’s flexible enough to be used for any complex project in any industry but works best when your project results in a concrete product rather than a service .

The Scrum Process There are three phases in Scrum . 1.O utline planning phase where you establish the general objectives for the project and design the software architecture . 2. S print cycles , where each cycle develops an increment of the system. 3. Project closure phase wraps up the project, completes required documentation such as system help frames and user manuals, and assesses

‘ Scrum master ’ is a facilitator who arranges daily meetings , tracks the backlog of work to be done, records decisions, measures progress against the backlog, and communicates with customers and management outside of the team. The innovative feature of Scrum is its central phase, namely the sprint cycles. A Scrum sprint is a planning unit in which the work to be done is assessed, features are selected for development, and the software is implemented. Key characteristics of this process are: 1. Sprints are fixed length, normally 2–4 weeks . They correspond to the development of a release of the system in XP. 2. The starting point for planning is the product backlog, which is the list of work to be done on the project. During the assessment phase of the sprint, this is reviewed, and priorities and risks are assigned. The customer is closely involved in this process and can introduce new requirements or tasks at the beginning of each sprint. 3. The selection phase involves all of the project team who work with the customer to select the features and functionality to be developed during the sprint. 4. Once these are agreed, the team organizes themselves to develop the software . 5. At the end of the sprint, the work done is reviewed and presented to stakeholders. The next sprint cycle then begins.

Extreme programming (XP)

The most commonly used  XP practices  are: T est-driven development (TDD), Code refactoring, Continuous integration, Pair programming, and Coding standards.

Project Initiation Management Project Initiation: Project initiation processes formally start a new project or project phase. The output of project initiation is The Project Charter or Project Initiation Document . The other output is Preliminary Scope Statement.

Project Charter

Project charter contains

Project Scope A scope statement is a document used to develop and confirm a common understanding of the project scope. It should include a project justification a brief description of the project’s products a summary of all project deliverables a statement of what determines project success

Project Objectives Project objectives in software project management Identify project requirements Determine what features and functionalities are needed to meet stakeholder expectations  Establish realistic expectations Communicate with stakeholders to ensure they understand what the project will deliver  Allocate resources efficiently Ensure that the project has the resources it needs to be successful  Manage risks Identify and assess potential risks early on, and develop strategies to mitigate them  Ensure quality assurance Establish processes and protocols to ensure the software meets the highest standards 

User Story: A user story is the smallest unit of work in an agile framework. It’s an end goal What is INVEST? The acronym  INVEST  helps to remember a widely accepted set of criteria, or checklist, to assess the quality of a  user story . If the story fails to meet one of these criteria, the team may want to reword it, or even consider a rewrite (which often translates into physically tearing up the old story card and writing a new one). A good user story should be: “I” ndependent (of all others) “N” egotiable (not a specific contract for features) “V” aluable (or vertical) “E” stimable (to a good approximation) “S” mall (so as to fit within an iteration) “T” estable (in principle, even if there isn’t a test for it yet)

User stories describe the why and the what behind the day-to-day work of development team members, often expressed as  persona + need + purpose . Understanding their role as the source of truth for what your team is delivering, but also why, is key to a smooth process.
Tags