Showing posts with label software process. Show all posts
Showing posts with label software process. Show all posts

Explain Software Design & Implementation Activity

Software Design & Implementation Activity:

The implementation stage of software development is the process of converting a system specification into an executable system. A software design is a description of the structure of the software to be implemented, the data which is part of the system, the interfaces between system components and, sometimes, the algorithms used. Designers design step by step to meet the finished design to be implemented in programming to crease an executable system out of the specification.

Thus, output of each stage of the design process is the input of the next stage. Stages continue until a finished design is met which includes all the specification and work involved in the development of the software.

What is Software Specification Activity? Describe the four main phases of software specification activity?

Software Specification:

Software specification or requirements engineering is one of the four activities of software process. In software specification, the task is to identifying and defining the services to be provided from the system and what are the constraints in the operations of the system and in the development of the system. This stage, among the four activities of software process, is critical enough as this is the first stage of the process and defines the whole system. Missing or misunderstanding requirements, leaving gaps or errors will ultimately cause higher development cost, time and rework.

Describe the Waterfall Software Process Model with Advantages and Disadvantages

Waterfall Software Process Model:

Waterfall model software process model was derived from general system engineering process and it is so called as the stages go top to bottom and while one stage of the process is complete it moves to the next stage and not supposed to come back to any previous stage. That is one stage is supposed to be started if and only if the previous stage is finished and approved to move on to the next stage. However, in practice, things doesn't happen this way.

Following is an illustration of the involved stages of Waterfall model.

How software engineering is different from other types of engineering?

Software project management is an essential part of software engineering. However, good management won’t guarantee success, but bad management results in project failure. Software managers are responsible for planning and scheduling development.  They supervise the work to ensure that it is carried out to the required standards and monitor progress to check that the development is on time and within budget.

Software engineering is different from other types of engineering in a number of way which particularly makes software engineering difficult.

What is software process? What are the 4 activities of software process framework?

Software Process: 

Software Process is a set of required activities and the outcome of the activities with a target to produce a software product. A software process is a flowchart of developing a software product, which includes fathering requirements, analyzing those requirements, scheduling development phases, checking the developments, implementing changes etc. and this can be till the delivery of the final software product to the after delivery service methods and more.

Describe Formal Methods Software Process Model

Formal Methods Model : 

The formal methods model encompasses a set of activities that leads to formal mathematical specification of computer software. Formal methods enable a software engineer to specify, develop, and verify a computer-based system by applying a rigorous, mathematical notation.

Describe The Component Base Development Software Process Model

Component Based Development:

The component-based development (CBD) model incorporates many of the characteristics of the spiral model. It is evolutionary in nature, demanding an iterative approach to the creation of software. However, the component-based development model composes applications from prepackaged software components, called classes.

Describe the Spiral Software Process Model

Spiral Model:

The spiral model is an evolutionary software process model that combines the iterative nature of prototyping with the controlled and systematic aspects of the linear sequential model. Using the spiral model, software is developed in a series of incremental releases. During early iterations, the incremental release might be a paper model or prototype. During later iterations, increasingly more complete versions of the engineered system are produced.

Describe the Incremental Software Process Model

Incremental Model:

The incremental model combines elements of the linear sequential model with the iterative philosophy of prototyping. The incremental model applies linear sequences in a staggered fashion as calendar time progresses. Each linear sequence produces a deliverable “increment” of the software.

Describe Evolutionary Software Process Model

Evolutionary Software Process Mode:

Evolutionary software models are iterative. They are characterized in manner that enables the software engineers to develop increasingly more complete version of a software. That is, initially a rapid version of the product is being developed and then the product is developed to more accurate version with the help of the reviewers who review the product after each release and submit improvements. Specification, development and validation are interleaved rather than separate in evolutionary software process model.

Describe the RADSoftware Process Model with Disadvantages

RAD Model

Rapid Application Development (RAD) is an incremental software development process model which is a “high-speed” adaptation of the linear sequential model in which rapid development is achieved by using component-based construction. If requirements are well understood and project scope is constrained, the RAD process enables a development team to create a “fully functional system” within very short time periods, such as in 60 to 90 days.

Describe the Prototyping Software Process Model with Disadvantages

Prototyping Model

Often, a customer defines a set of general objectives for software but does not identify detailed input, processing, or output requirements. In other cases, the developer may be unsure of the efficiency of an algorithm, the adaptability of an operating system, or the form that human/machine interaction should take. In these, and many other situations, a prototyping paradigm may offer the best approach.

Describe the Linear Sequential Software Process Model with Disadvantages

Linear Sequential Model/Waterfall Model/Classic Life Cycle

The linear sequential model, sometimes called the classic life cycle or the waterfall model, suggests a systematic, sequential approach to software development that begins at the system level and progresses through communication, planning, modeling, construction and deployment. The following given figure illustrates the linear sequential model for software engineering. This is the oldest paradigm of software engineering.

What is software process model?

Software Process Model : 

To solve actual problems in an industry setting, a software engineer or a team of engineers must incorporate a development strategy that encompasses the process, methods, and tools layers and the generic phases. 

This strategy is often referred to as a process model. A process model for software engineering is chosen based on the nature of the project and application, the methods and tools to be used, and the controls and deliverable that are required.

Software Process Models

What is software process and software process framework ? Explain.

Software Process: 

Process defines a framework for a set of Key Process Areas (KPAs) that must be established for effective delivery of software engineering technology. This establishes the context in which technical methods are applied, work products such as models, documents, data, reports, forms, etc. are produced, milestones are established, quality is ensured, and change is properly managed.