CS504 FINAL TERM PAST PAPERS MEGA FILES, VU Past Papers
CS504: Software Engineering – 1 Solved Papers
Software engineering is a branch of engineering associated with software product development using well-defined scientific principles, methods, and processes. The result of software engineering is a well-functioning and reliable software product. CS504 Solved Papers
Software engineering is a detailed engineering study designed for the development, development, and maintenance of software. Although Software Engineering is defined as the process of analyzing the needs of users and then developing, developing, and evaluating software programs that will meet those needs.
Software Engineering as defined by IEEE:
Let’s take a look at some of the definitions of software engineering. Software Engineering as defined by IEEE (International Institute for Electrical Engineering and Technology). IEEE is a real computer-related center. “The use of a systematic, disciplined, and effective approach to software development, operation and maintenance; that is, the use of engineering in software. ”
Software Engineering Phases
There are four basic stages of software development shown in Figure 4. Vision: Here we decide why we are doing this and what our business goals we want to achieve.
Here we really notice or change the view developed in the first paragraph. Here we decide what activities and objects are involved.
At this stage, we try to find a solution to the problem for technical reasons and support our actual use of it. This is the phase in which a new problem-solving system is developed in the first phase.
If there are advanced systems available where our new system should be integrated then those systems should be part of our new system. All of those existing systems integrate with our new system at this stage.
After successfully passing through the last three stages, it is actually a new system used in the user environment and that status is called quo status. But once we find new needs, we have to change the existing situation.
Other Terms Used by Software Developers
Prototyping is another method that can be used to reduce customer dissatisfaction in the required phase. The idea is to capture the user experience of the product and get an early response from the user to ensure that the developer team understands the requirements. This is used when there is uncertainty about the requirements. Sometimes, even the customer does not know what they really need. This happens when there is no handmade solution.
Assembling an independent measure of a module or component. Loose communication means that different parts of the system rely more or less on each other. Therefore, changes in one component will have a limited impact on other components.
Cohesion is a measure of the degree to which module elements interact and work. It is the level at which all the elements that focus on performing a single task are contained in a section. Basically, assembling an internal glue that keeps the module together.
The process of developing software products using software engineering principles and methods is called software evolution. This includes initial software development and maintenance and updates until the software product you want is upgraded, and meets the expected requirements.
Abstraction and Encapsulation
Abstractions are how we build a business model based on its key features and ignore the insignificant details. The goal of catching is also helping us to control the natural complexity of the system by allowing it to focus on its important external component, while at the same time hiding its internal complexity. Hiding internal information is called encapsulation. In this case, we classify the concerns of business users who only need to understand the external interface without having to worry about their actual use.
Source and sink analysis
Once the requirements have been documented using any of these analytical models, independent verification is required to ensure the completeness and consistency of the requirements obtained by these models. The process of verifying needs includes careful analysis of resources and immersion of information.
The participant defines the requirements (requirements, constraints) that must be entered as a system function. These can be processes that produce specific information that a system may or may not process. The sources of demand come from the starting point of a consistent business process. In this sense, one has to follow the origin of the need and go back to see who participated in its initiation. It could be an individual, organization, or business outside that initiates an action and the system responds by completing that action.
Zink is a consumer of certain information. It is that business that provides the rational conclusion of the business process. Thus, ‘need sinks’ is a concept that helps to identify individuals, organizations, or external systems that are responsible for a particular function in a system. These are logical conclusions of needs, or where all needs are met.
For example, we might consider an application user receiving a report in the system. In this case, the user, when updating the report, becomes the domain of that report. Therefore, when analyzing the immersion application requirement, the analyst will naturally identify the user who will receive that report.