SEB Topic 1 Summary
SEB Topic 1 Summary
Scope Definition – What features and functions the software will include.
Time Management – Setting realistic deadlines for each phase.
Cost Estimation – Determining the financial and human resources required.
Risk Management – Identifying and addressing potential challenges.
Quality Assurance – Ensuring the software meets required standards.
• Weather updates
• Market prices
• Farming tips
~1~
Overview of Software Lifecycle Models
A Software Lifecycle Model is a structured approach that defines how software is developed,
tested, deployed, and maintained.
1. Waterfall Model
A linear, sequential model where each phase must be completed before moving to the next.
Example:
A payroll system for a company, where all requirements are known in advance.
Advantages:
✔ Simple to use and manage.
✔ Works well for projects with stable requirements.
~2~
Disadvantages:
✖ Not flexible—hard to implement changes.
✖ Late testing phase increases risk of major failures.
2. Incremental Model
How It Works:
Example:
A school management system, where features like student registration, fee payment, and exam
grading are built separately over time.
Advantages:
✔ Faster delivery of a working product.
✔ Easier to accommodate changes.
Disadvantages:
✖ Integration can be complex.
✖ Requires careful planning of increments.
3. Agile Model
Key Principles:
✔ Short development cycles (Sprints).
✔ Continuous testing and feedback.
✔ Collaboration between developers and customers.
~3~
Example:
A mobile banking app, where user feedback is constantly used to improve features.
Advantages:
✔ Highly adaptable to changes.
✔ Continuous user feedback ensures relevance.
Disadvantages:
✖ Requires active client involvement.
✖ Hard to predict project completion time.
4. Spiral Model
Phases:
1️ Planning → Define project objectives.
2️ Risk Analysis → Identify potential problems.
3️ Engineering → Develop and test.
4️ Evaluation → Get feedback and refine the system.
Example:
Developing a custom enterprise software for a large company.
Advantages:
✔ Ideal for high-risk projects.
✔ Allows changes at any stage.
Disadvantages:
✖ Expensive and complex.
✖ Requires skilled risk management.
A structured model where each development phase has a corresponding testing phase.
Example:
Developing software for medical equipment, where quality assurance is critical.
~4~
Advantages:
✔ Strong focus on quality assurance.
✔ Early error detection reduces rework.
Disadvantages:
✖ Inflexible—requirements must be clear from the start.
✖ High documentation effort.
Conclusion
~5~
Software Project Estimation
What is Software Estimation?
Software estimation is the process of predicting the effort, time, and cost required to complete a
software project.
Effort estimation determines the amount of work (person-hours) required for the project.
Time estimation predicts how long the project will take from start to finish.
• Developer salaries
~6~
• Hardware infrastructure
3. Estimation Techniques
There are different methods for estimating software projects. Some are based on expert judgment,
while others use mathematical models.
How It Works:
How It Works:
How It Works:
• A mathematical model that estimates cost, effort, and time based on project size.
Example:
• If a project has 10,000 lines of code (LOC), COCOMO formulas can estimate time, effort,
and cost required.
~7~
3.4 Function Point Analysis (FPA)
How It Works:
• Uses inputs, outputs, database interactions, and user queries to estimate effort.
Example:
• A banking system may have 50 user inputs, 30 reports, and 20 queries—each contributing
to the total function points.
How It Works:
• The complexity of each use case determines how much effort is needed.
Example:
• A user login system might be simple, while a real-time stock trading feature would be
complex.
4. Challenges in Estimation
Even with the best techniques, software estimation is not always accurate. Some common
challenges include:
~8~
✔ Review historical data from past projects to guide estimates.
✔ Continuously update estimates as more information becomes available.
~9~