What Is Software
What Is Software
1. Software Specification
- the functionality of the software and constraints
on it’s operation must be defined.
2. Software Development
- the software to meet the specification must be
produced.
3. Software Validation
- the software must be validated to ensure that it
does what the costumer wants.
4. Software Evolution
- the software must be evolve to meet changing
costumer needs.
What is Software Process Model?
- A software process model is a simplified
description of a software process which presented
from a particular perspective.
Some examples of the types of software process
model which may be produced are:
1. A workflow model
- This shows the sequence of the activities in the
process along with their inputs, outputs and
dependencies. The activities in this model
represent human actions.
2. A data-flow or activity model
- This represents the process as a set of activities
each of which carries out some data
transformation. It shows how the input to the
process such as specification is transformed to an
output such as a design. The activities here may be
at a lower level than activities in a workflow
model. They may represent transportation carried
out by the people or by computers.
3. A role/action model
- This represents the roles of the people involved
in the software process and the activities for which
they are responsible.
There are a number of different general models
or paradigms of software development:
12. Testability
Testing the software should be easy.
13. Modularity
Any software is said to made of units and
modules which are independent of each other.
These modules are then integrated to make the
final software. If the software is divided into
separate independent parts that can be modified,
tested separately, it has high modularity.
14. Interoperability
Interoperability is the ability of software to
exchange information with other applications
and make use of information transparently.
15. Reusability
If we are able to use the software code with
some modifications for different purpose then
we call software to be reusable.
16. Portability
The ability of software to perform same
functions across all environments and platforms,
demonstrate its portability.
Eight Principles of Software Engineering
- Software engineers are those who contribute
by direct participation or by teaching to the
analysis, specification, design, development,
certification, maintenance and testing of
software systems. Because of their roles in
developing software systems, software
engineers have significant opportunities to do
good or cause harm, to enable others to do good
or cause harm, or to influence others to do good
or cause harm.
To ensure, as much as possible, that their
efforts will be used for good software engineers
must commit themselves to making software
engineering a beneficial and respected
profession. In accordance with that
commitment, software engineers shall adhere to
the following Code of Ethics and Professional
Practice.
Eight Principles of Software Engineering
1. PUBLIC
- Software engineers shall act consistently
with the public interest.
6. PROFESSION
- Software engineers shall advance the
integrity and reputation of the profession
consistent with the public interest.
7. COLLEAGUES
- Software engineers shall be fair to and
supportive at their colleagues.
8. SELF
- Software engineers shall participate in
lifelong learning regarding the practice of their
profession and shall promote an ethical
approach to the practice of the profession.
Meaning of "I-E-E-E"
1.
2.
3.
1.
Identification:
1. This is not just the programs but
also all associated documentation and
configuration data which is needed to
make programs operate correctly.
3. It is a simplified description of a
software process which presented from a
particular perspective.
4. This shows the sequence of the
activities in the process along with their
inputs, outputs, and dependencies.
1. IEEE 6. MIT
2. PAR 7. CERN
3. ISO 8. DARPA
4. COPOLCO 9. WAP
5. W3C 10. NesCom
Essay: