Introduction to Software Engineering

Ranjan Bajracharya
4 min readNov 21, 2017

First of all What is Software ???. What is Engineering ???.

Software are computer programs and associated documentation Engineering is about getting results of the required quality with the define period and budged.

Function of software:-

  1. to manage accessories
  2. to manage optimize resources [time, memory, money]
  3. to bridge organization & it’s input
  4. user friendly

Characteristic of software

  1. Software does not wear out
  2. Software engineered but not manufacture

Attributes of software

  1. Maintanable
  2. Dependable
  3. Efficient
  4. Usabel

Types of Software

  1. System
  2. Utility
  3. Aplication

Software Products

  1. Generic products
  2. Customized(or bespoke) products

Software engineering is an engineering discipline that is concerned with all aspects if software production from the early stage of system specification through out the maintenance . The systematic approach that is used in software engineering is sometime called software process. There are four fundamental activities that are common to software process:-

  1. Software Specification:- It is a process of understanding and defining the requirement of the system and identifying constraints. In this process it required two level of details requirement, one for end-users and customers and other for system developers. There are four main activities in the requirements engineering process.

1. Feasibility study

2.Requirements elicitation and analysis

3. Requirements specification

4. Requirement validation

The requirements engineering process

2.Software design and implementation :- It is a process of mining the specification and converting into executable system. It involves designing, programming. There are 4 main activities

1.Architectural desing

2. Interface design

3. Component design

4. Database design

A general model of the design process

3. Software validation:- It is a process to verify and validate if the system meet customer specification. The model is verified by using testing program with simulated data. And is validate by checking working process of the system.The stages in testing process are:

1. Development testing

2. System Testing

3. Acceptance Testing

Testing phases in a plan-driven software process

4. Software evolution:- This process is commonly know as software maintenance. The is the last stage where maintenance of software is done or change done for changing features.

System evolution

Project Management: Project management is the discipline of initiating, planning, executing, controlling, and closing the work of a team to achieve specific goals and meet specific success criteria at the specified time.

4 P’s of management

  1. People
  2. Product
  3. Process
  4. Project

Responsibilities of project manage:-

  1. Mangerial Skill
  2. Technical Skill
  3. Communication Skill

Project Planning:- It is one of the important jobs of software project manager. The manager breaks down the work into different parts and assign these to team members, anticipate problems that arise, and prepare tentative solutions to those problem. This is done in the initial part of development. The planning includes following sections:-

  1. Introduction:Brief description of project and constraints
  2. Project organization: Describes way to organize team involved in it
  3. Risk analysis: Describes possible risks
  4. Hardware and software resource requirement: Specifies hardware and software required to carry out the development.
  5. Work breakdown: Break projects into milestone, to make track of working of project.
  6. Project Schedule: Define the time require to complete the milestone.
  7. Monitoring and reporting mechanisms:- Manages reports for project monitoring.

Project Scheduling:-

  1. WBS(Work Breakdown Structure) in a network representation to display interrelationships and dependencies between project activities that must be accomplished to complete a project or A list of all activities required to complete the project.
  2. CPM (Critical Path Method) is a technique that is used to identify, within a network of activities, the activities that are critical for the completion of the project. In other words the critical activities are the ones that if delayed, they delay the whole project.
  3. PERT (Program Evaluation and Review Technique) is useful to observe the dependencies of the various activities but it’s complicate to use it for projects that have a large amount of activities and links. An important tool, mostly used together with PERT is CPM that selects the activities that are mainly critical: their delays affect the deadline of the whole project.

--

--

Ranjan Bajracharya

MSP 2017. Graduation in computer science and information technology. Studying MBA.