Software engieneering is consist of several different subjects and which subjects emphesises on different ways of approach on the base of human need and Every phase of the software engineering process focuses on a specific problem or a challenge taking into account the requirements of other phases.The process of walking through those phases are called the software life cycle.
Requirement analysis and specification phase:
the problem need to be solved is identified. The operational capabilities, the
expected performance, the goals need to be achieved from building this
software, and the characteristics of the software are also identified.
Design phase:
In the software design phase,software requirements are analyzed in order to produce a descriptionof the softwares internal structure that will serve as the basis of its construction.More precisely a software design must describe the software elementary prototype and architecture that is how software is decomposed and organized into somponents and the interfaces between those components.
Coding phase:
Well this is the phase where software language is used to build a new software or to improve of a performence of a old one.
Testing Phase:
In this phase a recently made or coded software is tested and applyed what it needed to imrpove the performence of it.One purpose of testing is to reduce the gap between the time at which
errors are inserted into the code and the time those errors are detected.
Furthermore, the functionality of the software is tested taking into account
many factors, for example, taking into account that customers can use the
software under different operating systems, testing the functionality of the
software in different operating systems is required in this case.
Maintenance Phase:Software maintenance sustains the software product
through its life cycle. The maintenance of an existing software can account
for over 60 percent of all effort expended by a development organization
. According to ”there are four different maintenance activities:
Corrective maintenance, perfective maintenance or enhancement, adaptive
maintenance, and preventive maintenance or reengineering”. According
to the author, ”only about 20% of all maintenace work is spend on ”fixing
mistakes”. The remaining 80% is spent adapting existing systems to changes
in their external environments, making enhancements requested by users,
preventing system performance from degrading to unacceptable levels, and
reeingeneering an application for future use.”As seen in the figure, the maintenance
phase consumes approximately 67% of the overall software process. On the
other hand, the approximate cost of any other phase does not exceed 7%
of the software engineering process. This highlights the need to use new
technologies/tools that participate in reducing maintenance costs.
0 comments:
Post a Comment