Q**Write short notes (including whether they are Linear or non-Linear and where they are most appropriately used) and draw a diagram describing the model on any two of Prototyping, RAD, Spiral Model, Transformational Model, Unified Process (UP), Extreme Programming (XP)
Q**In software engineering, what is the Cleanroom approach? State the main objective of this approach? List any three (3) component abstraction levels.
Q**Two measures of program complexity are the Function Point and Feature Point metrics.
Q1.
1. Prototyping Model:
Prototyping model was developed to counter the limitations of the waterfall model. The basic idea behind the prototyping model is that instead of freezing the requirements before any design or coding can begin, a throwaway prototype is built to understand the requirements. This prototype is build based on currently known requirements. The throwaway prototype undergoes design, coding, testing but each of these phases is not formal. The prototype is developed and delivered to the client, the client uses this prototype and gets the actual feel of the system. Generally, a prototype can be prepared by the approaches listed below.
1. By creating main user interfaces without any substantial
coding so that users can get a feel of how the actual system will
appear.
2. By abbreviating a version of the system that will perform
limited subsets of functions.
3. By using system components to illustrate the functions that will
be included in the system to be developed.
It is a Non-linear Model and its diagram is:
USES Of Prototyping Model:
2. Spiral Model:
The spiral model was first introduced by Barry Boehm in 1986 in
his paper – A Spiral Model of Software Development and Enhancement
as an iterative and risk-driven model of software development. The
spiral model is similar to the incremental model, with more
emphasis placed on risk analysis. The spiral model has four phases:
Planning, Risk Analysis, Engineering, and Evaluation. A software
project repeatedly passes through these phases in iterations
(called Spirals in this model). The baseline spiral, starting in
the planning phase, requirements are gathered and risk is assessed.
Each subsequent spiral builds on the baseline spiral.
Phases of spiral model:
1. Planning
It includes estimating the cost, schedule, and resources for the
iteration. It also involves understanding the system requirements
for continuous communication between the system analyst and the
customer
2. Risk Analysis
Identification of potential risk is done while a risk mitigation
strategy is planned and finalized
3. Engineering
It includes testing, coding and deploying software at the customer
site
4. Evaluation
Evaluation of software by the customer. Also, it includes
identifying and monitoring risks such as schedule slippage and cost
overrun.
It is a Linear as well as an Iterative Model.
USES:
Q2.
Cleanroom approach:
It is an engineering approach that is used to build correctness in the developed software. The main concept behind the cleanroom software engineering is to remove the dependency on the costly processes. The cleanroom software engineering includes the quality approach of writing the code from the beginning of the system and finally gathers into a complete system. This approach as described by Dyer is an amalgam of some of the most promising software engineering techniques. This approach is:
(1) a rigorous approach to specification and design which, together with a structured approach to programming, facilitate inspection-based verification of each software unit;
(2) an evolutionary incremental approach to development whereby the functionality is delivered in order of importance, and requirements are expected to change or become clarified as some of the software is delivered;
(3) the statistical testing approach.
The main objectives of this approach is :
A. Zero failures in field use:
The Cleanroom goal is to produce software that does not fail in field use. A related goal is to reduce failures found during independent certification testing to fewer than five failures per KLOC on the first execution of code, in the first project. Experienced teams will do much better.
B. Short development cycles:
Reduced cycle time results from an incremental development strategy and the avoidance of rework. New teams should experience a two-fold increase in productivity over their baseline on the first project. Productivity will continue to improve with additional experience.
C. Long product life
Cleanroom leads to an investment in assets such as detailed specifications and models of intended use that help keep a product viable for longer life.
D. Return on Investment
The technical benefits of using Cleanroom translate into significant economic benefits. Direct and indirect benefits can be identified with a reduction of field-experienced failures, reduced cycle time, and longer product life. The indirect benefits of customer loyalty and fewer competitors are difficult to quantify. Most organizations keep data on the direct costs, however, and the return on investment in Cleanroom can be calculated. In a Cleanroom demonstration project in the Tank-automotive and Armaments Command at the U.S. Army Picatinny Arsenal, an 18 to 1 return on investment was reported after six increments.
Components:
The main Cleanroom components are-
1. Software specification: During the specification phase, the software engineers use a strict stepwise refinement and verification process using a box structured approach that allows precise definition of required user function and system object architecture. This approach scales to support large systems development.
2. Development: The main goal of the development team is to take a set of software specifications including hardware and human behavior components, and design and verify those behaviors using data and processes that implement the given specifications. Box structures, representing defined system behavior, are used in development. The goal is to develop software that can be verified for correctness against its specification using structured programming correctness proofs.
3. Correctness verification: During development, the software is verified using strict correctness verification methods that prove that the software meets the specification. Verification reviews are held by the team to formally or informally verify the software using a set of correctness proofs that are standard in a structured programming environment. This method allows the verification of programs of any size by reducing the verification process to a manageable number of independent verification checks. Proof of software correctness is mostly done by direct assertion. Correctness verification is done before the software is ever executed, so the developers avoid a “debugging” mode of operation.
Q**Write short notes (including whether they are Linear or non-Linear and where they are most appropriately...
Q**Using a truth table, show that Q**In software engineering, what is the Cleanroom approach? State the main objective of this approach? List any three (3) component abstraction levels. Q** Two measures of program complexity are the Function Point and Feature Point metrics. What is the essential difference between these two metrics? For which application domains are the two metrics each applicable?
How can we assess whether a project is a success or a
failure?
This case presents two phases of a large business transformation project involving the implementation of an ERP system with the aim of creating an integrated company. The case illustrates some of the challenges associated with integration. It also presents the obstacles facing companies that undertake projects involving large information technology projects. Bombardier and Its Environment Joseph-Armand Bombardier was 15 years old when he built his first snowmobile...
First, read the article on "The Delphi Method for Graduate Research." ------ Article is posted below Include each of the following in your answer (if applicable – explain in a paragraph) Research problem: what do you want to solve using Delphi? Sample: who will participate and why? (answer in 5 -10 sentences) Round one questionnaire: include 5 hypothetical questions you would like to ask Discuss: what are possible outcomes of the findings from your study? Hint: this is the conclusion....