Sen 941 Final Exam Study Guide

2719 Words11 Pages

SEN 941 SOFTWARE ENGINEERING FALL 2014 FINAL EXAM SOLUTIONS SOLUTION 1 : What is software engineering? Software engineering is the branch of computer science in which engineering is applied to software. It is a systematic ,disciplined and quantifiable approach to the design, development and maintenance of software. These approaches are applied to software to produce quality software products. Why so software systems fail? A major part of the software systems failure is due to inefficient coding. Inefficent coding leads to bad perfomance with lot of software bugs in it .Other major errors are: ➢ Errors due to incomplete or missing requirements : Incomplete requirements accounts to 12.50% of software failure ➢ Design errors : …show more content…

Software design takes high level concepts and applies concrete details so that software can be implemented. It is concerned about how the system works. What can be done to achieve it. It considers all minute details including the datastructures, alogorithms that will result in efficiecy of the software product. Difference: 1. Software Architecture focuses more on the interaction between the externally visible components of the system where as the Design is about how the internal components of the system interact with each other. 2. Software Architecture is more about what we want the system to do and and Design is about how we want to achieve that. 3. Software architecture is at a higher level of abstraction than the Software Design. 4. Software Architecture is concerned with issues beyond the data structures and algorithms used in the system. Functional decomposition is the process of resolving afunctional relationship into its constituent parts in such a way that the original function can be reconstructed (i.e., recomposed) from those parts byfunction composition. It takes complex process and breaking it down into its smaller, simpler …show more content…

Interviewing gives a chance to identify conflicting ideas and set reasonable technical expectations. Another good idea is to get the stakeholders together for a brainstorming session. 2. Use Cases Once you have all the information from the stakeholders, it is a good idea to walk through the process by documenting informal use cases. 3. Prototyping When you have a customer that doesn’t know what they want, prototyping helps them get there. If the software itself isn’t available, just making a UI design of the application might be adequate. 4. Assessing Feasibility This involves both customer and developer. The customer has to review the business process to make sure the requirements will meet the business goals. The developer looks at the project’s requirements to see if it is feasible based on the technology available. 5. Documentation - Written The main purpose of requirements documentation is so that everyone knows what to expect going forward. Both project team and the customer can refer these documents as the project moves along. How do you analyze requirements? Requirement analysis phase consists of the below: • Problem recognition : Identify

More about Sen 941 Final Exam Study Guide