• 0
reeem

مساعده في engineering software :(

سؤال

 من يشرح لي هالمحاضره واكون له من الشاكريبن..

 

 

Chapter I : Introduction to Software Engineering and its impact

on software development

The crisis manifest:

· Projects running over-budget

· Projects running over-time

· Software was very inefficient

· Software was of low quality

· Software often did not meet requirements

· Code difficult to maintain

The birth of software engineering

The term software engineering was introduced at 1968/69 in Nato conferences.

Software engineering is not an art, or a bag of tricks.

We should build software like we build bridges.

What is Software Engineering?

The process of solving customers' needs by the systematic development and evolution

of large, high-quality software within cost, time and others constraints.

Solving cutomers' problems:

· This is the goal of Software Engineering

· Software Engineering must communicate effectively to identify and

understand the problem

Fig1. IEEE definition (Institute of Electrical and Electronics Engineers)

 

Types of software

Custom: built to a specific customer

Generic: sold on open market

Embedded: built into hardware, hard to change

Real time software:

· Control and monitoring systems

· Must react immediately

· Safety often a concern

Business information systems (Data processing)

· Used to run businesses

· Accuracy and security of data are key

Requirements engineering includes:

· Domain analysis

· Defining the problem

· Requirements gathering

· Requirements analysis

· Requirements specification: writing detailed instructions about how the

software should behave.

 

Design :

Deciding how the requirements should be implemented using the available

technology.

Includes:

· Systems engineering: deciding what should be in hardware and what in

software.

· Software architecture: dividing the system into subsystems and deciding how

the subsystems will interact

· Detailed design of the internals of a subsystem

· User interface design

· Design of databases

Implementation :

Writing code

Testing :

· Does the software do what it is supposed to do?

· Are we building the right system? (validation)

· Are we building the system right? (verification)

Maintenance :

· Correcting errors found after the software has been delivered.

· Adapting the software to changing requirements

We distinguish:

· Corrective maintenance: correcting discovered errors

· Preventive maintenance: correcting latent errors

· Adaptive maintenance: adapting to changes in the environment

· Perfective maintenance: adapting to changing user requirements

Software engineering ethics:

· Act in a manner that is in the best interest of the client and employer

· Maintain integrity in professional judgment

· Ensure the product meet the highest professional standards possible

Difficulties and risks in software engineering:

· Complexity and large number of details

· Uncertainty about requirements

· Constant change

تم تعديل بواسطه reeem
0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه

0 إجابة على هذا السؤال .

لاتوجد إجابات على هذا السؤال حتى الآن .

من فضلك سجل دخول لتتمكن من التعليق

ستتمكن من اضافه تعليقات بعد التسجيل



سجل دخولك الان

  • يستعرض القسم حالياً   0 members

    لا يوجد أعضاء مسجلين يشاهدون هذه الصفحة .