Mobiprep has created last-minute notes for all topics of Software Engineering to help you with the revision of concepts for your university examinations. So let’s get started with the lecture notes on Software Engineering.
2. Function-Oriented Software Design
3. (a)Requirements analysis and specification (b) Software Design
4. Software Development Life Cycle Models
6. Software Project Management
Our team has curated a list of the most important questions asked in universities such as DU, DTU, VIT, SRM, IP, Pune University, Manipal University, and many more. The questions are created from the previous year's question papers of colleges and universities.
What are the different system views that can be modelled using UML?
What are the different types of models of a problem that can be constructed using UML?
Question 1) What is UML?
Answer) Unified Modeling Language(UML) is different from the other programming languages, since it is a general purpose visual modeling language used to make software blueprints.
This pictorial language is used to visualize, specify, construct, and document software systems.
It is used to model software and non-software systems both.
Tools combined with UML diagrams can be used to generate code in various languages. UML has a direct relation with object oriented analysis and design.
Question 2) What are the different system views that can be modelled using UML?
Answer) There are 5 different system views that can be modelled using UML. These views just provide the thinking methodology and expectations. They are:
1. User’s view: This contains the diagrams in which the user's part of interaction with the software is defined. No internal working of the software is defined in this model. The diagrams in this view are:
Use case diagram
2. Structural view: In the structural view, only the structure of the model is explained. This gives an estimate of what the software consists of. However, internal working is still not defined in this model. The diagram that this view includes are:
3. Behavioral view: The behavioral view contains the diagrams which explain the behavior of the software. These diagrams are:
State chart Diagram
4. Environmental view: The environmental view contains the diagram which explains the after-deployment behavior of the software model. This diagram usually explains the user interactions and software effects on the system. The diagrams that the environmental model contain are:
5. Implementation view: The implementation view consists of the diagrams which represent the implementation part of the software. This view is related to the developer’s views. This is the only view in which the internal workflow of the software is defined. The diagram that this view contains is as follows:
Question 3) What are the building blocks of a UML diagram?
Answer) 1. Things
a. Structural the static part
Class − set of objects having similar responsibilities.
Interface − set of operations specifying the responsibility of a class.
Collaboration −defines an interaction between elements.
Use case −represents a set of actions performed by a system for a specific goal.
Component −describes the physical part of a system.
Node −A physical element that exists at run time.
b. Behavioral: the dynamic part
Interaction − a behavior that consists of a group of messages exchanged among elements to accomplish a specific task.
State machine − defines the sequence of states an object goes through in response to events. Events are external factors responsible for state change
Package − It is the only one available for gathering structural and behavioral things.
Note - It is the only one available used to render comments, constraints, etc. of an UML element.
a relationship between two things in which change in one element also affects the other.
a set of links that connects the elements of a UML model. It also describes how many objects are taking part in that relationship.
a relationship which connects a specialized element with a generalized element.
It basically describes the inheritance relationship in the world of objects.
a relationship in which two elements are connected. One element describes some responsibility, which is not implemented and the other one implements them.
This relationship exists in case of interfaces.
Use case diagram
State chart diagram
Question 4) Develop the use case model for a standard bank ATM.
Answer) Here we have two Actors: Customer and Bank. An Actor is one which specifies the role played by a user or any other system that interacts with the subject.
We also have many use cases like Log In, Deposit Cash, Check Balance, Credit Card Login, Print Receipt, etc... Use cases are used to refer to the behavior of an actor or it describes the actions performed by the actors. They are represented by a vowel shape. Include and extends are the relationship between the use cases.
In this ATM Use Case, we have one actor, that is one Customer who performs the following operations: Money Transfer, Withdraw Cash, Check balance, Log Out, Deposit a Check, Deposit Cash, Log In.
We have another actor which is a Bank, it helps to manage and perform the operations asked by the customer.
Question 5) What are the different types of models of a problem that can be constructed using UML?
Answer) They are mainly classified into two-types:
Class Diagrams: These are the main building block of any object-oriented solution. It shows the classes in a system, attributes, and operations of each class and the relationship between each class.
Component Diagrams: They display the structural relationship of components of a software system. These are mostly used when working with complex systems with many components. Components communicate with each other using interfaces.
Deployment Diagrams: Object Diagrams, sometimes referred to as Instance diagrams are very similar to class diagrams. They show how a system will look like at a given time.
Package Diagrams: As the name suggests, a package diagram shows the dependencies between different packages in a system.
Composite Structure Diagrams: Composite structure diagrams are used to show the internal structure of a class.
Use Case Diagrams: Use case diagrams give a graphic overview of the actors involved in a system, different functions needed by those actors and how these different functions interact.
Activity Diagrams: Activity diagrams represent workflows in a graphical way. They can be used to describe the business workflow or the operational workflow of any component in a system.
State Machine Diagrams: These are similar to activity diagrams, although notations and usage change a bit. These are very useful to describe the behavior of objects that act differently according to the state they are in at the moment.
Sequence Diagrams: Sequence diagrams in UML show how objects interact with each other and the order those interactions occur. It’s important to note that they show the interactions for a particular scenario.
Communication Diagrams: Also called as collaboration diagrams. Communication diagrams are similar to sequence diagrams, but the focus is on messages passed between objects.
Interaction Overview Diagrams: Interaction overview diagrams show a sequence of interaction diagrams. They are a collection of interaction diagrams and the order they happen.
Timing Diagrams: They represent the behavior of objects in a given time frame. If it’s only one object, the diagram is straightforward. But, if there is more than one object involved, a Timing diagram is used to show interactions between objects during that time frame.