Professional Documents
Culture Documents
19CS16 SW Assignment2
19CS16 SW Assignment2
New components: Software components that must be built by the software team
specifically for the needs of the current project.
The Product Scope can be defined as the features and functions that characterize
a product. In other words, it defines and details the features, characteristics of a
product, service, or result. Therefore it involves technical specifications, features,
functions required to represent a product itself. Simply put, the product scope
focuses on how the product will look and how will it work. The product can be
described as the output or the end result of a project.
Project objectives are the different business goals that a company wishes to
achieve through their product or service. A few examples of project objectives
include introducing a new product, developing new software, or creating a new
service in an organization. The best way to identify and determine project
objectives is through the S.M.A.R.T guidelines.
Specific – What are the project goals and objectives? Why and how will they be
achieved?
Measurable – Can all of them be accounted for?
Achievable – Can it be accomplished with the available resources?
Realistic – Can it be easily delivered, irrespective of any complications?
Time-bound – Can everything be achieved in the set time frame?
Make sure you have answers to all these questions before you proceed to the
third step.
It is essential to identify project expectations for both the team working on the
project and the target audience. So, for the team, the project expectations
include the efficiency and effectiveness of the project’s operational process.
For the target audience, the main expectation is customer delight; that is how
happy the customers are when using your product or service. This usually is
determined by the product or service:
Price
Quality
Availability
Policies
Make sure you have identified and defined all these aspects when defining the
project scope.
The last and most important step in the project scope checklist is identifying the
project constraints. Being aware of a project’s limitations is as equally important
as identifying its goals. This can minimize problems or issues faced during project
execution, thereby preventing any delay in deliverables.
Matrix team:
The matrix form of organizational structure combines the two other forms of
corporate systems to manage projects. Despite being divided according to
departments, matrix teams are constantly in cross-departmental cooperation.
That makes it easy for them to achieve the company’s goal. If your software
engineering organization is launching a new product or starting a new marketing
strategy/goal, the matrix team is always an excellent choice.
Product teams:
Product teams are also referred to as division teams. The organizational structure
for software engineering firms requires you to divide your team along product
lines, geographical lines, or service lines, among others.
Each of the divisions will then have their departmental segmentation as with
functional team structure. For example, you can have your firm split according to
products like Mobile Application, Partner Portal, etc.
People:
People are the primary resource on every project, and a well-managed team can
greatly increase the chances for success. Some of the different
roles people play in project management includes project manager, project team
members and information technology developers.
Product:
The project manager should define the product scope to ensure a successful
outcome.The product of a project can also be something that is intangible; such as
moving a company to a new headquarters or setting up a new company as a
registered legal entity to commence trading activities on day one.
Process:
The third P of project management is Process. Project managers and team members
should have a methodology and plan that outlines their approach. Without a clearly
defined process, team members will not know what to do and when to carry out
project activities.
Project:
The fourth and final P of project management is Project. This is where the project
manager’s roles and responsibilities come into play. He or she must guide team
members to achieve the project’s goals and objectives. The project manager must
delegate tasks, help team members when needed, and ultimately strive to
accomplish all requirements set forth in the project scope.
Re-usability Management
Risk Management
Q#7: Explain the different techniques used for proper Project
Management.
Five Helpful Project Management Techniques:
2. Gantt Charts:
Gantt charts have been around for a very long time, and they’re still a great
project management technique for beginners and pros alike.
It’s another technique that emphasizes visuality.
It’s a visual representation of all the tasks your team has to complete in order to
wrap up the project, visualized together with time spans.
You’ll be able to see task dependencies, how long each task will take, as well as
how its duration will affect the start dates and deadlines.
4. Waterfall / Linear:
Waterfall is one of the oldest project management techniques.
If you use this project management technique, activities and tasks will linearly
flow through 5 phases:
Requirements (Get all the necessary documentation)
Design (Use a WBS to create a list of tasks)
Implementation (Complete tasks)
Verification (Review the deliverables)
Maintenance (Maintain and modify if necessary).
5. Kanban:
Kanban is one of the easiest project management techniques for first-time project
managers.
The whole philosophy is in creating three columns:
To-do
Doing
Done
Then, you and your team can simply shift tasks from one column to another as
you complete them.
Q#8: Compare the LOC and FP estimation techniques.
Function Point is used for data LOC is used for calculating the size of the
processing systems computer program
Function Point can be used to portray LOC is used for calculating and comparing the
the project time productivity of programmers.
Q#9: Explain the Cost estimation methods. Identify how algorithmic
method is more accurate than others in cost estimation.
Cost estimation in project management is the process of forecasting the financial and
other resources needed to complete a project within a defined scope. Cost
estimation accounts for each element required for the project—from materials to
labor—and calculates a total amount that determines a project’s budget. An initial
cost estimate can determine whether an organization greenlights a project, and if
the project moves forward, the estimate can be a factor in defining the project’s
scope. If the cost estimation comes in too high, an organization may decide to pare
down the project to fit what they can afford. Once the project is in motion, the cost
estimate is used to manage all of its affiliated costs in order to keep the project on
budget.
Algorithmic Method:
The algorithmic method is designed to provide some mathematical equations to
perform software estimation. The algorithmic methods have been largely studied
and there are a lot of models have been developed, such as COCOMO
models, Putnam model, and function points based models.
General advantages:
1. It is able to generate repeatable estimations.
2. It is easy to modify input data, refine and customize formulas.
3. It is efficient and able to support a family of estimations or a sensitivity
analysis.
4. It is objectively calibrated to previous experience.
Q#10: Discuss the models and models of COCOMO-I
- This model depends on the number of lines of code for software product
development. It was developed by software engineer Barry Boehm in 1981.
- The COCOMO estimates the cost for software product development in terms of
effort (resources required to complete the project work) and schedule (time
required to complete the project work) based on the size of the software
product.
- It estimates the required number of Man-Months (MM) for the full development
of software products.
Solution: The semidetached mode is the most appropriate mode, keeping in view
the size,
Hence E=3.0(200)1.12=1133.12PM
D=2.5(1133.12)0.35=29.3PM
P= 176 LOC/PM
Q#11: What are the sub Models of COCOMO-II. Elaborate
each.
The sub-models in COCOMO 2 are:
PROD is productivity.
This model is used when requirements are available but the design has not yet
started. In this model, Estimates can be made after the requirements have been
agreed upon. The empirical formula used to calculate a person's month is:
PM=AXSizeBXM
Size in KLOC
B varies from 1.1 to 1.24 depending on the novelty of the project, development
flexibility, risk management approaches, and process maturity.
c) Reuse-oriented Model:-
d) Post-architecture model.
This model is used once the system architecture has been designed and more
information about the system is available. In this model, we use the same formula
as early design estimates: PM - Ax Size x M
Where Size estimate for the software should be more accurate at this stage. It
takes into consideration the factors like New code to be developed, reworks
required to support change, and the extent of possible reuse.
Q#12: Enlist the areas where risk can happen during development
of software project. Explain the risk management & risk
monitoring activities.
1. Tight Schedules
Often, project managers face the pressure of having to deliver the project
earlier than anticipated. This can happen due to many different reasons – lack
of resources, poor planning, or even technical glitches.
2. Budget Changes
3. Technical Difficulties
Data security, information privacy, large-scale system implementation,
software integration, and compliance are some areas where you are likely to
run into unpredictable problems.
4. Poor Management
This may be a no-brainer but is unfortunately overlooked in many projects.
While many may blame budget overshoots and time constraints as the
reasons why software projects fail, the underlying reason is always poor
management.
Risk Management Activities:
Basically, three types of activities are covered under the risk management
process.
Risk Identification:
In this stage, the possible project, product and business risks are
identified.
Risk Analysis:
In this stage or process, the likelihood and consequences of these risks
assessed.
Risk Control:
In this stage, risk assessments is done continuously and the risk reduction
plan is revised as more information about risk is available.
Quality standards
Quality attributes
CMMI
Quality standards:
Quality management standards are details of requirements, specifications,
guidelines and characteristics that products, services and processes should
consistently meet in order to ensure:
CMMI:
The Capability Maturity Model Integration (CMMI) is a process and behavioral
model that helps organizations streamline process improvement and encourage
productive, efficient behaviors that decrease risks in software, product, and
service development.
S.
No. Product Process
In the case of products, the firm guidelines are In contrast, the process
3. followed. consistently follows guidelines.
Product patents are thought to offer a greater A process patent provides the
8. level of protection than process patents. inventor only limited protection.
Quality attributes:
Quality attributes, or technical requirements, are measurable and testable properties
of the system and the way they satisfy the needs of a user. It is a set of features or
properties to measure the performance and characterize how useful the software in
a specific environment is.
Availability;
Correctness;
Interoperability;
Modifiability;
Maintainability;
Performance;
Usability;
Reusability;
Reliability;
Security;
Testability.
Q#14: Discuss the risk associate with software projects.
“Risk is future uncertain events with a probability of occurrence and a potential
for loss”.Risk identification and management are the main concerns in every
software project. Effective analysis of software risks will help to effective planning
and assignments of work.
Categories of risks:
Schedule Risk:
Project schedule get slip when project tasks and schedule release risks are not
addressed properly. Schedule risks mainly affect on a project and finally on
company economy and may lead to project failure.
Budget Risk:
Wrong budget estimation. Cost overruns
Operational Risks:
Risks of loss due to improper process implementation failed system or some
external events risks.
Causes of Operational risks:
Failure to address priority conflicts
Failure to resolve the responsibilities
Insufficient resources
No proper subject training
No resource planning
No communication in the team.
Technical risks:
Technical risks generally lead to failure of functionality and performance. Causes
of technical risks are:
Continuous changing requirements
No advanced technology available or the existing technology is in initial
stages.
Programmatic Risks:
These are the external risks beyond the operational limits. These are all uncertain
risks are outside the control of the program.
These external events can be:
Running out of the fund.
Market development
Other Unavoidable Risks:
All the risks described above are those which can be anticipated to a certain
extended and planned for in advance. However there are certain risks which are
unavoidable in nature.
The reasons for such unavoidable risks are described below.
Changes in government policy
Obsolescence of software due to new technology from a rival company