lec-2
lec-2
Infant Wear
mortality out
Time
Hardware vs. Software
Useful Life
Obsolescence
Legacy Software
• Software developed years ago, continually
modified to meet changes in business
requirements and computing platforms.
The application of
systematic, disciplined,
quantifiable approach to the
development, operation,
and maintenance of
software.
Project-based Software Engineering
Needs Decides what
automation for he needs and
a specific changes
problems required
Identify potential
utility in demand
11
The Product Vision
Moore’s Vision Template
• FOR (target customer)
• WHO (statement of the need or opportunity)
• The (PRODUCT NAME) is a (product
category)
• THAT (key benefit, compelling reason to buy)
• UNLIKE (primary competitive alternative)
• OUR PRODUCT (statement of primary
differentiation)
13
Vision template example
“FOR a mid-sized company's marketing and
sales departments WHO need basic CRM
functionality, THE CRM-Innovator is a
Web-based service THAT provides sales
tracking, lead generation, and sales
representative support features that improve
customer relationships at critical touch points.
UNLIKE other services or package software
products, OUR product provides very capable
services at a moderate cost.”
14
Software as a Product
Characteristics of a Product
Enterprise Architecture
Product Management
Software Product Line
Creating a Software
Software Product Line
Software Product Line
• A set of software products that share a
common core.
• Each member of the product line includes
customer-specific adaptations and additions.
• Software product lines may be used to
implement a custom system for a customer
with specific needs that can’t be met by a
generic product.
SE is a Layered Technology
Automated and Semi - automated
support for process and methods
Factual vs Reality
Process Framework
Structured approach for defining the activities and tasks for the system
Activities in a Glance
Generic Process
Predictive Development
Adaptive Development
Planned, Systematic
Mission focused, feature based, iterative,
timeboxed, risk driven, and change tolerant
16 January 2025 33
Generic Process Activities
Generic Process Activities
• Communication
– Involves communication among the customer and
other stake holders; encompasses requirement
gathering
• Planning
– Establishes a plan for software engineering work;
addresses technical tasks, resources, work products
and work schedule
Generic Process Framework
• Modeling (Analyze, Design)
– Encompasses the creation of models to better
understand the requirements and the design
• Construction (Code, Test)
– Combines code generation and testing to uncover
errors
• Deployment
– Involves delivery of software to the customer for
evaluation and feedback
Overall Activities
Fundamental Activities
• Software Specification
• Software Development
• Software Validation
• Software Evolution
Umbrella Activities
• Software Project Tracking and Control
• Risk Management
• Software Quality Assurance
• Technical Reviews
• Measurement
• Software Configuration Management
• Reusability Management
• Work Product Preparation and Production
Flowchart of Software Development
Workflow in JIRA
Process Descriptions
• Products
• Roles
• Pre and Post Conditions
Roles
Life Cycle
• Linear
Iterative
Fast Functional Delivery
Understand the problem
Plan the Solution
Major Participants Scope
Project Objectives
Management
Authority
Assumptions and
Measurement
Restrictions
Carry out the Plan
Examine the Results
General Principles
• Provide value to customers
• Keep it simple
• Maintain a clear vision
• Software product is for consumers to use
• Be open to future
• Plan reusability before developing
• Place clear and complete thought before action
If Development Fails..
Height of …
Once many professors were called and asked
to sit in an airplane. After they sat. They were
informed that the plane is made by their
students.
… Confidence
All of them ran and got out of plane except
one. People asked him the reason. He said, “If
it’s made by my students it will not even start.”