Thursday, 12 January 2017

Testing_109 : Software Engineering

Software Engineering :
  • Software engineering is a Techno-Logical and Managerial discipline concerned on a development and maintenance of a software projects or products On-Time & within cost estimates.
  • "research, design, develop, and test operating systems-level software, compilers, and network distribution software for medical, industrial, military, communications, aerospace, business, scientific, and general computing applications."
  • "the systematic application of scientific and technological knowledge, methods, and experience to the design, implementation, testing, and documentation of software";
  • "the application of a systematic, disciplined, quantifiable approach to the development, operation, and maintenance of software";
  • "an engineering discipline that is concerned with all aspects of software production";
  • and "the establishment and use of sound engineering principles in order to economically obtain software that is reliable and works efficiently on real machines."
  • The Major factors in software development is
    • Quality
    • Schedule/On-Time
    • Budget/Cost
"Developing a Quality software within the time and within the cost."
One of the important characteristics of software engineering is "RE-USABILITY".

Advantages of Re-usability :
  • Productivity will be increased.
  • Development time is reduced
  • Testing time also reduced.
  • Overall project deliverable time is reduced.
  • Budget is saved.
 
Software process :
In software engineering, a software development methodology (also known as a system development methodology, software development life cycle, software development process, software process) is a splitting of software development work into distinct phases (or stages) containing activities with the intent of better planning and management. It is often considered a subset of the systems development life cycle. The methodology may include the pre-definition of specific deliverables and artifacts that are created and completed by a project team to develop or maintain an application.
  • A sequence of steps performed for a given purpose.
  • A set of activities, method & transformations, practices that people use to develop & maintain a system.
If companies are not following process properly :
  • Commitments consistently missed.
  • Late delivery.
  • Last minute crunches.
  • Quality problems.
  • Too much Rework.
  • Function do not work correctly.
  • Customer complaints after delivery.
  • People frustrated.
Benefits of process :
  • Quality
  • Consistency
  • Traceability
  • Early defect removal
  • Reduced re-work & rejection
  • Control of Cost.

No comments:

Post a Comment