by Dinesh Thakur Category: Software Engineering

Over the last 50 years there has been revolutionary advancement in the field of technology, leading to improvements in hardware performance and profound changes in computing architectures. This advancement has led to the production of complex computer-based systems that are capable of providing information in a wide variety of formats. The increase in computer power has made unrealistic computer applications a feasible proposition, marking the genesis of an era where software products are far more complex as compared to their predecessors. By using software engineering practices, these complex systems can be developed in a systematic and efficient manner.



 
by Dinesh Thakur Category: Software Engineering

Methods for Monitoring a Project

          Time sheets

Once project development commences, the management has to track the progress of the project and the expenditure incurred on the project. Progress can be monitored by using the schedule and milestones laid down in the plan.

 
by Dinesh Thakur Category: Software Engineering

Software engineering employs a well defined and systematic approach to develop software. This approach is considered to be the most effective way of producing high-quality software. However, despite this systematic approach in software development, there are still some serious challenges faced by software engineering. Some of these challenges are listed below.

 
by Dinesh Thakur Category: Software Engineering

The software engineering deals with three basic types of entities – processes, project, and products. A software process is a method of developing software. A software project is a development project in which a software process is used. And software products are the outcomes of a software project.

 
by Dinesh Thakur Category: Software Engineering

The development of software begins once the requirements document is 'ready'. One of the objectives of this document is to check whether the delivered software system is acceptable. For this, it is necessary to ensure that the requirements specification contains no errors and that it specifies the user's requirements correctly. Also, errors present in the SRS will adversely affect the cost if they are detected later in the development process or when the software is delivered to the user. Hence, it is desirable to detect errors in the requirements before the design and development of the software begins. To check all the issues related to requirements, requirements validation is performed.

 
by Dinesh Thakur Category: Software Engineering

As soon as the first iteration of architectural design is complete, component-level design takes place. The objective of this design is to transform the design model into functional software. To achieve this objective, the component-level design represents -the internal data structures and processing details of all the software components (defined during architectural design) at an abstraction level, closer to the actual code. In addition, it specifies an interface that may be used to access the functionality of all the software components.

 
by Dinesh Thakur Category: Software Engineering

The design process involves developing a conceptual view of the system, establishing system structure, identifying data streams and data stores, decomposing high level functions into sub functions, establishing relationships and interconnections among components, developing concrete data representations, and specifying algorithmic details. Software design is a creative activity.

 
by Dinesh Thakur Category: Software Engineering

Any large project involves certain risks, and that is true for software projects. Risk management is an emerging area that aims to address the problem of identifying and managing the risks associated with a software project.

 
by Dinesh Thakur Category: Software Engineering

In time boxing model, development is done iteratively as in the iterative enhancement model. However, in time boxing model, each iteration is done in a timebox of fixed duration. The functionality to be developed is adjusted to fit the duration of the timebox. Moreover, each timebox is divided into a sequence of fixed stages where each stage performs a clearly defined task (analysis, implementation, and deploy) that can be done independently. This model also requires that the time duration of each stage is approximately equal so that pipelining concept is employed to have the reduction in development time and product releases.

 
by Dinesh Thakur Category: Software Engineering

Design is essentially the bridge between requirements specification and the final solution for satisfying the requirements.  The goal of the design process is to produce a model or representation of a system, which can be used later to build that system. The produced model is called the design of the system. The design of a system is essentially a blueprint or a plan for a solution for the system. The design process for software systems often has two levels.

 
About Dinesh Thakur

Dinesh ThakurDinesh Thakur holds an B.SC (Computer Science), MCSE, MCDBA, CCNA, CCNP, A+, SCJP certifications. Dinesh authors the hugely popular blog. Where he writes how-to guides around Computer fundamental , computer software, Computer programming, and web apps. For any type of query or something that you think is missing, please feel free to Contact us.



Search Content