Download as pdf or txt
Download as pdf or txt
You are on page 1of 9

Process Framework Activities

The process framework is required for representing common process activities.


Communication: By communication, customer requirement gathering is done.
Planning: Establish engineering work plan, describes technical risk.
Modeling: Architectural models and design to better understand the problem and for work
towards the best solution.

Construction: Creating code, testing the system, fixing bugs, and confirming that all criteria are
met.

Deployment: In this activity, a complete or non-complete software is presented to the


customers to evaluate and give feedback

Umbrella activities:
Umbrella Activities are that take place during a software development process for improved
project management and tracking.
1. Software project tracking and control: This is an activity in which the team can
assess progress and take corrective action to maintain the schedule
2. Risk management: The risks that may affect project outcomes or quality can be
analyzed.
3. Software quality assurance: These are activities required to maintain software
quality.
4. Formal technical reviews: It is required to assess engineering work products to
uncover and remove errors before they propagate to the next activity
5. Software configuration management: Managing of configuration process when any
change in the software occurs.
6. Work product preparation and production: The activities to create models,
documents, logs, forms, and lists are carried out.
7. Reusability management: It defines criteria for work product reuse.
8. Measurement: In this activity, the process can be defined and collected.

Software Myths:
Most, experienced experts have seen myths which creates major problems for management
and technical people.
The types of software-related myths are listed below.
`Types of Software Myths

(i) Management Myths:


Myth 1:
We have all the standards and procedures available for software development.
Myth 2:
The addition of the latest hardware programs will improve the software development.
Myth 3:
With the addition of more people and program planners to Software development
can help meet project deadlines.

(ii)Customer Myths:
Myth 1:
A general statement of intent is enough to start writing plans (software development) and
details of objectives can be done over time.
Myth 2:
Software requirements continually change, but change can be easily accommodated because
software is flexible

Different Stages of Myths


(iii)Practitioner’s Myths:
Myths 1:
They believe that their work has been completed with the writing of the plan.
Myths 2:
There is no other way to achieve system quality, until it is “running”.
Myth 3:
An operating system is the only product that can be successfully exported project.

Prescriptive Process Models


The following framework activities are carried out irrespective of the process model chosen by
the organization.

1. Communication
2. Planning
3. Modeling
4. Construction
5. Deployment

The name 'prescriptive' is given because the model prescribes a set of activities, actions, tasks,
quality assurance and change the mechanism for every project.

There are three types of prescriptive process models.

1. The Waterfall Model

• The waterfall model is also called as 'Linear sequential model' or 'Classic life cycle
model'.
• each phase is fully completed before the beginning of the next phase and is used for the
small projects.
• feedback is taken after each phase to ensure that the project is on the right path.
• Testing part starts only after the development is complete.
Advantages of waterfall model

• The waterfall model is simple and easy to understand, implement, and use.
• All the requirements are known at the beginning of the project, hence it is easy to
manage.
• It avoids overlapping of phases because each phase is completed at once.
• This model works for small projects because the requirements are understood very
well.
Disadvantages of the waterfall model

• This model is not good for complex and object oriented projects.
• It is a poor model for long projects.
• The amount of risk is high.

2. Incremental Process model

• The incremental model combines the elements of waterfall model.


• The first increment in this model is generally a core product.
• Each increment builds the product and submits it to the customer.
• This process is repeated until the product is finished.
Advantages of incremental model

• This model is flexible


• It is easier to test and debug.
• The working software generates quickly and early during the software life cycle.
Disadvantages of the incremental model

• The cost of the final product may cross the cost estimated initially.
• This model requires a very clear and complete planning.
• The planning of design is required before the whole system is broken into small
increments.

3. RAD model

• RAD is a Rapid Application Development model.


• Using it software product is developed in a short period of time.
• The initial activity starts with the communication between customer and developer.
The RAD model consist of following phases:

1. Business Modeling

• Business modeling consist of the flow of information between various functions in the
project.
2. Data modeling

• The information in the business modeling phase is refined into the set of objects and it
is essential for the business.
3. Process modeling

• The data objects defined in the data modeling phase are changed to fulfil the
information flow to implement the business model.
4. Application generation

• In the application generation phase, the actual system is built.


5. Testing and turnover

• The prototypes are independently tested after each iteration so that the overall testing
time is reduced.
Product and process
Product:
Product includes any software manufactured based on the customer’s request. This can be a
problem-solving software or computer-based system. It can also be said that this is the result
of a project.
Process:
Process is a set of sequence steps that must be followed to create a project.

S.
No. Product Process

process is a set of steps that are needed


1. final production of the project. to create a project.

3. the firm guidelines are followed. consistently follows guidelines.


S.
No. Product Process

4. tends to be short-term. tends to be long-term.

5. complete the work successfully. make the quality of the project better.

based on the needs and expectations of model for producing various goods in a
6. the customers. similar way.

offer a greater level of protection than provides the inventor only limited
8. process patents. protection.

Functional Requirements Non Functional Requirements

defines the quality attribute of a


defines a system or its component. software system.

is specified by User. is specified by technical peoples

It is mandatory. It is not mandatory.

It is captured in use case. It is captured as a quality attribute.

Defined at a component level. Applied to a system.

Helps you verify the functionality of Helps you to verify the performance of
the software. the software.

Usually easy to define. Usually more difficult to define.

Requirement Engineering is the process of defining, documenting and maintaining the


requirements. It is a process of gathering and defining service provided by the system.
Types:
Requirements Elicitation:
It is related to the various ways used to gain knowledge about the project domain and
requirements
Requirements specification:
This activity is used to produce formal software requirement models.
Requirements verification and validation:
Verification: It refers to the set of tasks that ensures that the software correctly implements a
specific function.
Validation: It refers to a different set of tasks that ensures that the software that has been
built is traceable to customer requirements.
Requirements management:
Requirement management is the process of analyzing, documenting, tracking, prioritizing and
agreeing on the requirement and controlling the communication to relevant stakeholders.

Agile Software Process and it’s Principles


Any Agile Software method is characterized during a manner that addresses a variety of key
assumptions concerning the bulk of software projects:

software is basically a set of instructions or commands that tells a


computer what to do
Agility Principles:

1. Our highest priority is to satisfy the client through early and continuous
delivery of valuable computer software.
2. Welcome dynamical necessities, even late in development.
3. Deliver operating computer software often, from a pair of weeks to a couple
of months, with a preference to the shorter timescale.
4. Business individuals and developers should work along daily throughout the
project.
5. The build comes around actuated people.
6. the foremost economical and effective methodology of conveyancing info to
and among a development team is face-to-face speech.
7. working computer software is the primary live of progress.
8. Agile processes promote property development.
9. Continuous attention to technical excellence and smart style enhances
nimbleness.
10. Simplicity is essential.
11. the most effective architectures, necessities, and styles emerge from self–
organizing groups.
12. At regular intervals, the team reflects on a way to become simpler, then
tunes and adjusts its behavior consequently.

• Software Requirement Specification (SRS) Format as name suggests, is complete


specification and description of requirements of software that needs to be fulfilled for
successful development of software system.

Software engineering is defined as a process of analyzing user


requirements and then designing, building, and testing software
application which will satisfy those requirements.

Agile software development emphasizes four core values.


Individual and team interactions over processes and tools

Agile software development contains the set of frameworks, so it


is called as an umbrella term

a. Software Development Method


b. Software Engineering / Software Development
c. Information System
d. Iterative and Incremental Development
e. Time-Boxed Approach

You might also like