Principles of Software Engineering

Topics: Agile software development, Software development methodology, Requirements analysis Pages: 5 (1520 words) Published: August 7, 2010
1. Describe each law in your own words. Illustrate with a practical example.

Glass’ law

Glass law states that the “Requirement deficiencies are the prime source of project failures”. He says that collecting the requirements of a project is the first step which leads to complete the project successfully. Robert Glass made several researches and investigated the failed projects and concluded the above statement. The main problem in a failure project is the lace of requirements, eighter the requirements Provided incorrectly or not paid more attention at their definition. Goal setting are important for a project. The unsolved problem for the project failure is ignoring the requirements definition. Robert Glass provided many evidences to justify his statement based on case studies of three failed projects. For example consider the baggage handling system for the Denver airport, the requirements are incomplete, unclear and many are not useful. In this case the city of Denver has given the requirements without consulting its users (Airlines Company). So in an effort to recover the mistake they built 3 different luggage handling systems one each for two major airlines and the third one for all the other airlines.

Boehm’s first law

Boehm first law states that “Errors are most frequent during the requirements and design activities and are the more expensive the later they are removed”. Generally errors made while collecting the requirements and developing a project. Questions arise when analysing those errors, these questions leads to put in an extra work in checking each and every phases of the project. Most errors occur in early phase of the project (i.e.) the requirements and design errors. If the developer does not know the actual domain then the project will fail. The cost of the error depends on when it is removed. The earlier it is removed the lower the cost. He also provided evidences by analysing many case studies; he made research on software errors developed before 1974. Boehm’s paper refers to a study done at TRW in 1974 where 224 errors were analysed. They find 100 KLOC, which consists of errors. The most important conclusion was that the design errors are higher than the code error, 64 % compared to 36%. The report says ratio is 45:9. In this project, 54% of errors found no earlier than the acceptance test. It took twice as Time for diagnosis and correction of errors in relation to a coding error.

Boehm’s second law
Boehm second law states that “Prototyping (significantly) reduces requirement and design errors, especially for user interfaces”. Designing a prototype is the most important solution for the requirements error, even though we have to develop a lot later on. Prototyping is an instance of something to develop.the main advantage of prototyping is that it fills the gap between description and implementation.A prototype will help the team which is designing a project, gives confidence to the users and also convince the sponsor. For the questions arise from the users, different prototypes are constructed in a software system.they are: Demonstration prototype: to clarify some usser requriments. Decision prototype: to select a proper design among alternatives. Educational prototype: to help designers in performing well. For example a study is conducted by Boehm in developing a system of interactive version of the COCOMO-1 cost-estimating model. The study examines the usefulness of prototypes to meet the requirements. The experiments were as part of a degree in software engineering and Seven teams to develop the same system of small (2-4 KLOC). Four groups used specification-driven approach and the other three of a prototype approach. Both have been placed under user guide with the running system. The same

Opinion was provided for both specifications and the prototype. In both cases, a acceptance test was carried out the verification of the functionality, robustness, ease of use, and ease of...
Continue Reading

Please join StudyMode to read the full document

You May Also Find These Documents Helpful

  • Principles of Software Engineering Essay
  • Software Engineering Research Paper
  • Software Engineering Essay
  • Software Engineering Essay
  • Essay about Software Engineering
  • Software Engineering Essay
  • Software Engineering Essay
  • Action Plan. Principles of Software Engineering Research Paper

Become a StudyMode Member

Sign Up - It's Free