The document summarizes key aspects of software engineering processes and lifecycles. It discusses:
- The typical phases of the software development lifecycle including requirements, design, implementation, testing, deployment and maintenance.
- The software engineering approach focuses on achieving high quality and productivity through effective software processes and managing process quality.
- Effective processes are phased, with defined stages executed in order to better manage and control software projects.
- The costs of software, including development costs which are a function of program size, productivity and salaries. Maintenance costs are higher than initial development.
- Error correction becomes significantly more expensive in later stages, so earlier stages require more attention and error removal.
Life-Cycle Phases
Engineering and Production Stages
Inception Phase
Elaboration Phase
Construction Phase
Transition Phase
Artifacts of the Process
The Artifact Sets
Management Artifacts
Engineering Artifacts
Pragmatic Artifacts
Model-based software Architectures
Architecture: A Management Perspective
Architecture: A Technical Perspective
Workflows of the Process
Software Process Workflows
Iteration Workflows
Checkpoints of the Process
Major Milestones
Minor Milestones
Periodic Status Assessments
Life-Cycle Phases
Engineering and Production Stages
Inception Phase
Elaboration Phase
Construction Phase
Transition Phase
Artifacts of the Process
The Artifact Sets
Management Artifacts
Engineering Artifacts
Pragmatic Artifacts
Model-based software Architectures
Architecture: A Management Perspective
Architecture: A Technical Perspective
Workflows of the Process
Software Process Workflows
Iteration Workflows
Checkpoints of the Process
Major Milestones
Minor Milestones
Periodic Status Assessments
CP7301 Software Process and Project Management notesAAKASH S
UNIT I DEVELOPMENT LIFE CYCLE PROCESSES 9
Overview of software development life cycle – introduction to processes – Personal Software
Process (PSP) – Team software process (TSP) – Unified processes – agile processes –
choosing the right process Tutorial: Software development using PSP
20
UNIT II REQUIREMENTS MANAGEMENT 9
Functional requirements and quality attributes – elicitation techniques – Quality Attribute
Workshops (QAW) – analysis, prioritization, and trade-off – Architecture Centric
Development Method (ACDM) – requirements documentation and specification – change
management – traceability of requirements
Tutorial: Conduct QAW, elicit, analyze, prioritize, and document requirements using ACDM
UNIT III ESTIMATION, PLANNING, AND TRACKING 9
Identifying and prioritizing risks – risk mitigation plans – estimation techniques – use case
points – function points – COCOMO II – top-down estimation – bottom-up estimation – work
breakdown structure – macro and micro plans – planning poker – wideband delphi –
documenting the plan – tracking the plan – earned value method (EVM)
Tutorial: Estimation, planning, and tracking exercises
UNIT IV CONFIGURATION AND QUALITY MANAGEMENT 9
identifying artifacts to be configured – naming conventions and version control –
configuration control – quality assurance techniques – peer reviews – Fegan inspection –
unit, integration, system, and acceptance testing – test data and test cases – bug tracking –
causal analysis
Tutorial: version control exercises, development of test cases, causal analysis of defects
UNIT V SOFTWARE PROCESS DEFINITION AND MANAGEMENT 9
Process elements – process architecture – relationship between elements – process
modeling – process definition techniques – ETVX (entry-task-validation-exit) – process
baselining – process assessment and improvement – CMMI – Six Sigma
Tutorial: process measurement exercises, process definition using ETVX
SDLC
PDLC
Software Development Life Cycle
Program Development Life Cycle
Iterative model
Advantages of Iterative model
Disadvantages of Iterative model
When to use iterative model
Spiral Model
Advantages of Spiral model
Disadvantages of Spiral model
When to use Spiral model
Role of Management in Software Development
Today’s complex products, especially IoT-enabled devices, increasingly require the integration of hardware and software development processes. The parallel development of hardware, software and service components demands the convergence of Application and Product Lifecycle Management software platforms.
Watch this webinar recording to learn more about integrating ALM and PLM in the development of complex products. This video also showcases codeBeamer’s approach to this challenge: integrating data and processes via Business Process Management. Watch the recording to learn how codeBeamer enables you to manage the entire product (hardware and software) development lifecycle from a single platform.
CP7301 Software Process and Project Management notesAAKASH S
UNIT I DEVELOPMENT LIFE CYCLE PROCESSES 9
Overview of software development life cycle – introduction to processes – Personal Software
Process (PSP) – Team software process (TSP) – Unified processes – agile processes –
choosing the right process Tutorial: Software development using PSP
20
UNIT II REQUIREMENTS MANAGEMENT 9
Functional requirements and quality attributes – elicitation techniques – Quality Attribute
Workshops (QAW) – analysis, prioritization, and trade-off – Architecture Centric
Development Method (ACDM) – requirements documentation and specification – change
management – traceability of requirements
Tutorial: Conduct QAW, elicit, analyze, prioritize, and document requirements using ACDM
UNIT III ESTIMATION, PLANNING, AND TRACKING 9
Identifying and prioritizing risks – risk mitigation plans – estimation techniques – use case
points – function points – COCOMO II – top-down estimation – bottom-up estimation – work
breakdown structure – macro and micro plans – planning poker – wideband delphi –
documenting the plan – tracking the plan – earned value method (EVM)
Tutorial: Estimation, planning, and tracking exercises
UNIT IV CONFIGURATION AND QUALITY MANAGEMENT 9
identifying artifacts to be configured – naming conventions and version control –
configuration control – quality assurance techniques – peer reviews – Fegan inspection –
unit, integration, system, and acceptance testing – test data and test cases – bug tracking –
causal analysis
Tutorial: version control exercises, development of test cases, causal analysis of defects
UNIT V SOFTWARE PROCESS DEFINITION AND MANAGEMENT 9
Process elements – process architecture – relationship between elements – process
modeling – process definition techniques – ETVX (entry-task-validation-exit) – process
baselining – process assessment and improvement – CMMI – Six Sigma
Tutorial: process measurement exercises, process definition using ETVX
SDLC
PDLC
Software Development Life Cycle
Program Development Life Cycle
Iterative model
Advantages of Iterative model
Disadvantages of Iterative model
When to use iterative model
Spiral Model
Advantages of Spiral model
Disadvantages of Spiral model
When to use Spiral model
Role of Management in Software Development
Today’s complex products, especially IoT-enabled devices, increasingly require the integration of hardware and software development processes. The parallel development of hardware, software and service components demands the convergence of Application and Product Lifecycle Management software platforms.
Watch this webinar recording to learn more about integrating ALM and PLM in the development of complex products. This video also showcases codeBeamer’s approach to this challenge: integrating data and processes via Business Process Management. Watch the recording to learn how codeBeamer enables you to manage the entire product (hardware and software) development lifecycle from a single platform.
Software development life cycle (sdlc) phases.pdfPrayas Gokhale
Software development life cycle (SDLC) is the life cycle of the software product. It comprises of certain defined phases that are interlinked. The requirements are translated into design, the design is used to write the codes. The code is tested and verified before delivering it to customers.
Software Process Models, The Linear Sequential Model, The Prototyping Model, The RAD Model, Evolutionary Process Models, Agile Process Model, Component-Based Development, Process, Product and Process.
Dear students get fully solved assignments
Send your semester & Specialization name to our mail id :
help.mbaassignments@gmail.com
or
call us at : 08263069601
Safalta Digital marketing institute in Noida, provide complete applications that encompass a huge range of virtual advertising and marketing additives, which includes search engine optimization, virtual communication advertising, pay-per-click on marketing, content material advertising, internet analytics, and greater. These university courses are designed for students who possess a comprehensive understanding of virtual marketing strategies and attributes.Safalta Digital Marketing Institute in Noida is a first choice for young individuals or students who are looking to start their careers in the field of digital advertising. The institute gives specialized courses designed and certification.
for beginners, providing thorough training in areas such as SEO, digital communication marketing, and PPC training in Noida. After finishing the program, students receive the certifications recognised by top different universitie, setting a strong foundation for a successful career in digital marketing.
Normal Labour/ Stages of Labour/ Mechanism of LabourWasim Ak
Normal labor is also termed spontaneous labor, defined as the natural physiological process through which the fetus, placenta, and membranes are expelled from the uterus through the birth canal at term (37 to 42 weeks
Read| The latest issue of The Challenger is here! We are thrilled to announce that our school paper has qualified for the NATIONAL SCHOOLS PRESS CONFERENCE (NSPC) 2024. Thank you for your unwavering support and trust. Dive into the stories that made us stand out!
Embracing GenAI - A Strategic ImperativePeter Windle
Artificial Intelligence (AI) technologies such as Generative AI, Image Generators and Large Language Models have had a dramatic impact on teaching, learning and assessment over the past 18 months. The most immediate threat AI posed was to Academic Integrity with Higher Education Institutes (HEIs) focusing their efforts on combating the use of GenAI in assessment. Guidelines were developed for staff and students, policies put in place too. Innovative educators have forged paths in the use of Generative AI for teaching, learning and assessments leading to pockets of transformation springing up across HEIs, often with little or no top-down guidance, support or direction.
This Gasta posits a strategic approach to integrating AI into HEIs to prepare staff, students and the curriculum for an evolving world and workplace. We will highlight the advantages of working with these technologies beyond the realm of teaching, learning and assessment by considering prompt engineering skills, industry impact, curriculum changes, and the need for staff upskilling. In contrast, not engaging strategically with Generative AI poses risks, including falling behind peers, missed opportunities and failing to ensure our graduates remain employable. The rapid evolution of AI technologies necessitates a proactive and strategic approach if we are to remain relevant.
The French Revolution, which began in 1789, was a period of radical social and political upheaval in France. It marked the decline of absolute monarchies, the rise of secular and democratic republics, and the eventual rise of Napoleon Bonaparte. This revolutionary period is crucial in understanding the transition from feudalism to modernity in Europe.
For more information, visit-www.vavaclasses.com
Model Attribute Check Company Auto PropertyCeline George
In Odoo, the multi-company feature allows you to manage multiple companies within a single Odoo database instance. Each company can have its own configurations while still sharing common resources such as products, customers, and suppliers.
Synthetic Fiber Construction in lab .pptxPavel ( NSTU)
Synthetic fiber production is a fascinating and complex field that blends chemistry, engineering, and environmental science. By understanding these aspects, students can gain a comprehensive view of synthetic fiber production, its impact on society and the environment, and the potential for future innovations. Synthetic fibers play a crucial role in modern society, impacting various aspects of daily life, industry, and the environment. ynthetic fibers are integral to modern life, offering a range of benefits from cost-effectiveness and versatility to innovative applications and performance characteristics. While they pose environmental challenges, ongoing research and development aim to create more sustainable and eco-friendly alternatives. Understanding the importance of synthetic fibers helps in appreciating their role in the economy, industry, and daily life, while also emphasizing the need for sustainable practices and innovation.
Biological screening of herbal drugs: Introduction and Need for
Phyto-Pharmacological Screening, New Strategies for evaluating
Natural Products, In vitro evaluation techniques for Antioxidants, Antimicrobial and Anticancer drugs. In vivo evaluation techniques
for Anti-inflammatory, Antiulcer, Anticancer, Wound healing, Antidiabetic, Hepatoprotective, Cardio protective, Diuretics and
Antifertility, Toxicity studies as per OECD guidelines
2. Recap
• Definitions of Sw and SE
• Student’s and Industrial Strength Software
• Mini Test
– Retention Exercise
– Comprehension Exercise
• Goal
– Results
• Students Profiles’ Submission
3. What is common between the first two clips?
_____________________________________________________________
______________
In Grocery Store Clip
What two stores are compared? ______ and ________
QR Code is to __________________________________
TeSCo and E-Mart are the names for the same store (Yes/No)
-----------------------
Customers of E-Mart increased by 130% after this online shopping
campaign (Y/N) ____
Online Shopping Compaign
Exploited Koreans 2 habits
• ____________________________________
• ____________________________________
Exploited 3 widely available technologies
• __________________________________________
• __________________________________________
• __________________________________________
How many customers visited the store online during the compaign? _______
Did the store became number one in off-line shopping (Y/N)? __________
At which Institute, the Four Rotor Helicopter project was carried out?
__________________________
What Sw/Hw Project you can figure out from the first three clips
_____________________________
_____________________________
_____________________________
7. What is in Today’s Lecture
Covered till now
– Definitions
– Students’ Sw projects and Industrial Strength Sw
• Software Myths – Roger S Pressman (2005)
• Problem Domain
– Software is Expensive,
– Late and Unreliable,
– Maintenance and Rework
• Solution Domain – Software Engineering Challenges
– Scale,
– Quality & Productivity,
– Consistency and Repeatability,
– Change
• Software Engineering Approach
– Phased Development Process,
– Managing the Process to get quality software
8. Software Myths (‘Tonies or Ponies’)
• Management Myths ( Also see www.mhhe.com/pressman )
– We already have a book that’s full of standards and
procedures for building software. Won’t that provide
my people with everything they need to know?
– If we get behind schedule, we can add more
programmers and catch up
“Adding people to a late software project makes it later” – F
Brooks (1975)
– If I decide to outsource the software project to a 3rd
party, I can just relax and let that firm build it.
No substitute to misinformation
9. • Customer Myths
– A general statement of objectives is sufficient to begin writing
programs – we can fill the details later
• More information you have at start better equipped you are.
– Project requirements continually change, but change can be
easily accommodated because software is (not physical and)
flexible
• Practitioner’s Myths
– Once we write the program and get it to work, our job is done
• This is the start, not the end, 60% - 80% of effort will be
expended after the program is deployed. For every $ spent
on development needs 2 $s for its maintenance
– Until I get the program running, I have no way of assessing its
quality
• Quality is whole some, of each part, so quality filters need to
be inserted in the process for various phases of Sw
Development
10. – The only deliverable work product for a successful project is the
working program
• Documentation, data, rule base etc are all parts of software
– Software Engineering will make us create voluminous and
unnecessary documentation and will invariably slow us down.
• Will make things easy, and lead to quicker development and
easy and cost effective maintenance
11. Software is Expensive
• Bell 2005, quotes that US$ 500 B is spent
annually for software purchase and development
in USA and it is 1 % of her annual GNP (Gross
National Product)
• Globally US$ 1000 B is spent on Software
development
• Many countries exports like our neighbor’s have
significant fraction coming from Sw
• Pakistan currently generates 1.5 to 2 B US$
annually from Sw exports – Ref to Mr Saleem
Ghori, CEO, NetSol, 2009
12. Pak Software Exports
• Daily Express, Islamabad, dated Feb 21, 2011
quoted Federal Bureau of Statistics that for period
of July to December 2010
– Sw exports amounted to Rs 6.15 Billions, with an
increase of 13.13% from its last year figure
– Overseas Sw Consultancy services Rs 1.3 B
– Computers Repair and support Rs 0.05 B
– Computer related Auxiliary Services Rs 1.3B
• Total sw exports were Rs 8.8 B with an increase
of 8.37 % from previous year
16. Compute the Cost of a Software
A software of size say 100 KLOC, like
Apache web server, is to be developed by
a team of professional software
developers, having an average
productivity of 150 LOC per person-
month, and drawing an average salary of
Rs 30,000/- a month.
17.
18. Program Size = 100 KLOC
Average Productivity = 150 LOC / Person-
Month
Duration = Program Size / Productivity
= 100 KLOC/150 LOC/Per-Mon
= 2/3 K Per-Mon
Rate = 30 K Rs / Per-Mon
Total Cost = Duration * Rate
= 2/3 K Per-Mon * 30 K Rs / Per-Mon
= 20 K * K Rs = 20 M Rs
= Rs 20,000,000
19. Software – Problems and
Prospects
Software is Open ended, complex and key
mechanism in providing the requisite
functionality of the system. It is of huge
size, needs 000s of people and millions of
$s of investment to develop.
The perceived problems in Sw development
and goals the Sw Development needs to
achieve are:
20. • Meeting Users’ Needs
• Low Cost of Production
• High Performance
• Portability – it works at various envisaged
platforms
• Low Cost of Maintenance
• High Reliability
• Scalability
• Delivery on Time
– Till to-date each of the above goals is partially
achieved, so it stays as a Sw dev problem. SE
seeks to provide the techniques to resolve these
problems i.e. to achieve these goals.
24. Software Engineering Approach
High Quality and Productivity (Q&P) is the
basic objective of Software Engineering.
The main three forces governing Q&P are:
25. Software Process
• Software Process is the way we produce
software, it starts with the concept
exploration and ends when the product is
decommissioned. During this product goes
through a series of phases like
Requirements, Specifications, Planning,
Design, Implementation, Testing, Integration,
Maintenance, Documentation and finally the
Retirement
26. Quality Product
• For a quality software product, both the
quality of product itself and quality of
software process is important.
• The cost of error recovery in the later
phases of software is many times more
than the earlier phases, so higher
attention should be paid in the earlier
phases, and these should be made error-
free.
27. Software Processes
– Software Process is comprised of a number of
processes working in Series and in parallel to
achieve the software product
– These processes can be Software Development
Process, Business Process, Training Process,
Human Resource Management or Social
Process, Quality Assurance Process, Software
Monitoring and Control Process, Inspection
Process and Software Management Process etc
– Process is execution of a number of steps in a
specified order
28. Process, Project and Product
– Process is a series of steps or activities
conducted in an orderly manner
– Project is execution of a Process, to achieve
or develop a product. It is an instance of
Process executed in specific time frame to get
the product that meets the needs of a user
– Product is the outcome of a successfully
executed project
– Process can be initiated on a number of
Projects, and a project can yield a number of
Products
29. – Process works as Check List and its pre-
defined stages are executed in the pre-
specified order
– The main objective of Software Engineering is
to develop Reliable, High Quality Software
that can be built within price and time budget,
hence we need to focus on Software Related
Processes and more precisely on Software
Development Process
30. Software Process
• Software should be
– Reliable (high quality)
– Affordable (Cheap, low cost)
– Small Time Cycle (so that the software could
be developed speedily)
• For better management and control
software process should be
– Phased i.e. consist of multiple stages
31. Software Development Process
Software Development
Process
Requirements Software Product
In fact, this SD Process consists of:
Analysis Design
Implementa-
tion
Deployment
32. And each one of these is further
divided into sub phases, like
Analysis Requirements Analysis Specification
Design Architectural
Design
Lower Level or
Detailed Design
Implement-
ation
Coding
Testing Unit Testing
Sub-system
Testing
System
Testing
Acceptance Tst
=
=
=
=
Higher Level
Design
33. Software Process
• Software Process is the way we produce
software, it starts with the concept
exploration and ends when the product is
decommissioned or retired. During this life,
the product goes through a series of
phases like
Requirements, Specifications, Planning,
Design, Implementation, Testing, Integration,
Maintenance, Documentation and finally the
Retirement
34. Software Development Life Cycle
• Life Cycle
• All what is done on a product from its conception to its
physical realization and retirement is called its Life Cycle
• Software Development Life Cycle Model
• It is a description of all the stages/phases that should be
performed when building a software product. Number of
stages differ from author to author, from 4 to 10 or even
more, but in general the Classical Software Development
Life Cycle model has eight (highlighted) stages
35. Different Phases of SDLC
Authors partition the SDLC activities differently, Eg
[Jal98] mentions the following 4 stages
• Requirement Analysis
• Design (further divided into System Design & Detailed Des, or Jal05
mentions them as Architectural Des, High Level Des and Low Level Des)
• Coding and
• Testing (including Unit Testing, Integration Testing and Acceptance Testing)
– Towards over-all Effort/Cost, each one of them contributed 10%, 20%,
30% and 40% respectively, and
– Error distribution among the first three phases was 20%, 30% and 50%
respectively
36. Software Development Life Cycle
(SDLC) Stage or Phases
1. Requirements Phase
2. Analysis (Specification) Phase
3. Planning Phase
4. Design Phase
a. Architectural Design
b. High Level Design
c. Detailed Design
5. Implementation Phase
6. Integration Phase
7. Testing
8. Documentation
9. Post delivery Maintenance Phase
Corrective, Perfective, Adaptive
10. Retirement Phase
38. Different types of Maintenance
Post-delivery Maintenance
• Done after deployment at the clients premises
This is of two types:
Corrective Maintenance or Software Repair
Removal of Residual faults leaving the Specifications unchanged
Enhancement or Software Update
Consists of changes to specification and implementation of those
changes. It further consists of two types:
Perfective Maintenance
The changes which client thinks will improve the effectiveness of
the product, such as Additional Functionality, Decreased
response time, or Optimal memory usage
Adaptive Maintenance
Changes made in response to changes in the environment in
which the product operates, such as, a new hardware, OS or new
government regulations or conformance to new standard like
UNICODE
43. Cost of Error Recovery / Correction
• The cost of error recovery in the later
phases of software is many times more
than the earlier phases, so higher attention
should be paid in the earlier phases, and
respective stages/phases errors be
identified and eradicated, making these
phases error-free.
49. Reading Assignment
1. Ch-1 Problems and Prospects, pp 3-22
From Douglas Bell (2005); Software Engineering for
Students; Pearson Education Limited
2. Ch – 1 Introduction, pp 1-20 + Ch-2
From Pankaj Jalote (2005); An Integrated Approach to
Software Engineering, 3rd Edition, Narosa
Publishing House, New Delhi
3. Ch – 1 Introduction to Software Engineering,
pp 33-50
From Roger S Pressman (2005); Software Engineering
– A Practitioner’s Approach, 6th Edition, McGraw Hill
Higher Education, Boston