Software Engineering Fundamentals: Principles and Requirements Analysis

Classified in Computers

Written on in English with a size of 2.91 KB

Definition of Software Engineering

Software engineering is the establishment and use of sound engineering principles in order to obtain software economically that is reliable and works efficiently on real machines.

Need for Software Requirements Specification (SRS)

The Software Requirements Specification (SRS) is necessary because it provides:

  • A detailed overview of the software product, including its parameters and goals.
  • A description of the project's target audience, user interface, and hardware and software requirements.
  • A common understanding of how the client, development team, and audience perceive the product and its functionality.

Four Core Principles of Software Engineering

1. The Reason It All Exists (Value to Users)

  • A software system exists for one reason: to provide value to its users. All decisions should be made with this in mind.
  • Before specifying a system requirement, system functionality, or determining hardware platforms, first determine whether the proposed element adds value to the system.

2. KISS (Keep It Simple, Stupid!)

  • All design should be as simple as possible, but no simpler. This facilitates having a more easily understood and easily maintained system.
  • It does not mean that features should be discarded in the name of simplicity.

3. Maintain the Vision

  • A clear vision is essential to the success of a software project.
  • Compromising the architectural vision of a software system will weaken it and eventually break even the well-designed systems.

4. What You Produce, Others Will Consume

  • Always specify, design, and implement by keeping in mind that someone else will have to understand what you are doing.
  • The audience for any product of software development is potentially large.

Requirements for Employee Management Software Modules

The key modules for the Employee Management Software (EMS) are:

  1. Employee Details
  2. Employee Salary
  3. Employee Performance

Detailed Requirements by Module

1. Employee Details Module Requirements

  • Getting information about the employee (initial data capture).
  • Updating employee details (e.g., department, change of address, employee code).
  • Assignment of tasks, duties, and responsibilities.
  • Recording of employee attendance.

2. Employee Salary Module Requirements

  • Salary calculation.
  • Calculation and approval of allowances and special bonuses.
  • Generation of tax statements/certificates.
  • Processing loan applications and approvals.

3. Employee Performance Module Requirements

  • Recording annual performance data.
  • Defining parameters for performance appraisal.
  • Analyzing performance and determining payment hikes.

Related entries: