Professional Documents
Culture Documents
CE220.01 Software Engineering Assignment Group-2: 1. Write 5 Levels of SEI-CMM. (14CE006)
CE220.01 Software Engineering Assignment Group-2: 1. Write 5 Levels of SEI-CMM. (14CE006)
01 Software Engineering
Assignment Group-2
1) Initial - At maturity level 1, processes are usually ad hoc and chaotic. The organization usually
does not provide a stable environment. Success in these organizations depends on the
competence and heroics of the people in the organization and not on the use of proven
processes. Maturity level 1 organizations often produce products and services that work;
however, they frequently exceed the budget and schedule of their projects.
5) Optimizing - At maturity level 5, an organization has achieved all the specific goals of the
process areas assigned to maturity levels 2, 3, 4, and 5 and the generic goals assigned to
maturity levels 2 and 3. Processes are continually improved based on a quantitative
understanding of the common causes of variation inherent in processes. Maturity level 5
focuses on continually improving process performance through both incremental and
innovative technological improvements. Optimizing processes that are agile and innovative
depends on the participation of an empowered workforce aligned with the business values and
objectives of the organization. The organization's ability to rapidly respond to changes and
opportunities is enhanced by finding ways to accelerate and share learning. A critical distinction
between maturity level 4 and maturity level 5 is the type of process variation addressed.
2. What are “Umbrella Activities”? What activities does it include or encompass? (14CE008)
- Any standard software process model would primarily consist of two types of activities: A set
of framework activities, which are always applicable, regardless of the project type, and a set of
umbrella activities, which are the non SDLC activities that span across the entire software
development life cycle.
- Umbrella activities span all the stages of the SDLC. They are not specific to any particular life
cycle stage.
- Following are some Umbrella Activities:
Software Project Management
Formal Technical Reviews
Software Quality Assurance
Software Configuration Management
Reusability Management
Measurement
Document Preparation And Production
Risk Management
Prototyping Model
Application:
Software Prototyping is most useful in development of systems having high level of user
interactions such as online systems. Systems which need users to fill out forms or go
through various screens before data is processed can use prototyping very effectively to
give the exact look and feel even before the actual software is developed.
Software that involves too much of data processing and most of the functionality is
internal with very little user interface does not usually benefit from prototyping.
Prototype development could be an extra overhead in such projects and may need lot of
extra efforts.
Pros:
Increased user involvement in the product even before implementation
Since a working model of the system is displayed, the users get a better understanding
of the system being developed.
Reduces time and cost as the defects can be detected much earlier.
Quicker user feedback is available leading to better solutions.
Missing functionality can be identified easily.
Confusing or difficult functions can be identified.
Cons:
Risk of insufficient requirement analysis owing to too much dependency on prototype.
Users may get confused in the prototypes and actual systems.
Practically, this methodology may increase the complexity of the system as scope of the
system may expand beyond original plans.
Developers may try to reuse the existing prototypes to build the actual system, even
when it’s not technically feasible.
The effort invested in building prototypes may be too much if not monitored properly
4. Write a note on waterfall model. (14CE009)
- The Waterfall Model was first Process Model to be introduced. It is also referred to as a linear-
sequential life cycle model.
Application:
Requirements are very well documented, clear and fixed.
Product definition is stable.
Technology is understood and is not dynamic.
There are no ambiguous requirements.
Ample resources with required expertise are available to support the product.
The project is short.
Pros:
Simple and easy to understand and use.
Easy to manage due to the rigidity of the model. Each phase has specific deliverables
and a review process.
Phases are processed and completed one at a time.
Works well for smaller projects where requirements are very well understood.
Clearly defined stages.
Well understood milestones.
Easy to arrange tasks.
Process and results are well documented.
Cons:
No working software is produced until late during the life cycle.
High amounts of risk and uncertainty.
Not a good model for complex and object-oriented projects.
Poor model for long and ongoing projects.
Not suitable for the projects where requirements are at a moderate to high risk of
changing. So risk and uncertainty is high with this process model.
It is difficult to measure progress within stages.
Cannot accommodate changing requirements.
Adjusting scope during the life cycle can end a project.
Integration is done as a "big-bang. at the very end, which doesn't allow identifying
any technological or business bottleneck or challenges early.
5. Draw Use case diagram for “Online Library Management System”. (14CE007)
Use Cases:
1) Log in - Username, Password 6) Purchase Books - Credit Card, Debit Card
2) Register - Username, Password 7) Manage Books - Delete Books, Add Books
3) Read Book - Bookmark
4) Search Book - Title, Author Name, Category
5) Download Books - PDF, DOC
Sign Convention:
1) - Association
2) <<extend>> - Extends
3) <<include>> - Includes
4) - Generalization