Capstone Project 3 Part-1 Solution
Capstone Project 3 Part-1 Solution
Case Study- A customer can make a payment either by Card or by Wallet or by Cash or by Net
banking.
Answer-
---------------------------------------------------
----
Question 2- Derive Boundary Classes, Controller classes, Entity Classes.
Answer-
Primary actors means the actors who initiate the use case and
interact with the system.
---------------------------------------------------
----
Question 3- Place these classes on a three tier Architecture.
Answer-
In this three-tier architecture, the application tier handles the user interface,
the Business Logic Layer manages the Business logic and coordinates between the
other tiers,
the data tier handles data storage and retrieval.
---------------------------------------------------
----
Question 4- Explain Domain Model for Customer making payment through Net Banking
The customer table is connected to bank table, which is why the customer is able to make payment.
Customer table is also connected to payment table, bcoz he should make the payment.
Now the payment is done by netbanking, so payment table is connected to netbanking table.
The account is in the bank, so the account table is connected to the bank table.
The authentication table is connected to both net banking table and bank table, bocz authencation is
to performed there.
Also the authentication table is connected to transaction table, becoz authentication will be done
while transaction.
ER Model – focuses on relationships required for storing and retrieving the data
Answer- this diagram shows how the objects in the system interact and communicate with each
other with time to achieve specific task.
It is used to show the flow of messages, events or actions between the objects of the system.
Answer- The conceptual model helps in understanding the key concepts, their
relationships, and the overall structure of the net banking payment system.
It serves as a foundation for designing the database schema, defining the application
architecture, and implementing the necessary functionalities within the system.
5. Trust & Support: This node indicates that the bank provide such good
services that it will help to enhance the customers trust.
8. Security & Privacy: the bank should adapt the security policies which
will help the customers to keep their data related to their transaction
secure and private.
---------------------------------------------------
----
Question 7- What is MVC architecture? Explain MVC rules to derive classes from use case diagram
and guidelines to place classes in 3-tier architecture
Answer-
MVC is a design pattern where, the application is divided into 3 logical parts- Model, View and
Controller.
Model-
The Model represents the data and the business logic of the application.
Model is responsible for multiple tasks like managing the application's data, performing data
validation, implementing business rules, and handling data access operations.
Model does not depend on how the data is presented or how the user interacts with the
application
The model class is known about all the data that is needed to be displayed.
This layer corresponds to the data-related logic that the user works with.
It represents the data that is being transferred between View and Controller.
The model interacts with the database and give the requested data.
View-
The View is responsible -for presenting the data to the user
for handling the user interface.
The View can be a web page, a desktop application window, or any other form of user interface.
It receives input from the user and passes it to the Controller for processing.
Controller-
The Controller acts as an intermediary between the Model and the View.
It receives input from the user (via the View), processes the input by invoking the appropriate
methods in the Model, and then updates the View with the new data or state.
The Controller handles user interactions, interprets user input, and translates it into instructions
for the Model or the View.
It coordinates the flow of data between the Model and the View, ensuring that they remain
separated and independent of each other.
Whenever the user requests for anything, that request first goes to the controller.
Controller works on the users request.
Advantages of MVC-
MVC has the feature of scalability, which in turn helps the growth of application.
As all the three layers are different and independent, they are maintained separately.
1. Combination of one actor and one use case results in one boundary class.
Combination of two actor and one use case results in two boundary class.
Combination of three actor and one use case results in three boundary class.
Consider the example of Online shopping application with the following usecase:
Model Classes-
View Classes-
Controller Classes-
Presentation Layer-
Presentation layer is responsible for displaying information and also receiving the input from the
user.
Application Layer-
Controller handles the user input, process the request and co-ordinates interaction between the
model and view.
Data Layer-
Classes which are responsible for data access and storage are in this layer.
It contains the classes which interacts with the database, files and other data sources.
---------------------------------------------------
----
Question 8- Explain BA contributions in project
Answer-
Waterfall model is useful in the situation where the project requirements are well defined and the project goals
are clear.
Waterfall model follows sequential approach.
In this model each phase is completed entirely and then only moved to the next phase.
Waterfall model relies on documentation to ensure that the project is well defined and project team is working
toward clear goals.
Ones that particular phase has been completed and ones we move to the next phase , we cannot go back to the
previous phase to make changes.
This model is stable for the projects when the requirements are clear.
Requirements Gathering-
In this phase, all the requirements are gathered from the stakeholder.
Requirements Analysis-
Analysing means the BA will check all the requirements, if he founds conflicting requirements then
the BA will talk to the concerned stakeholder to clear it, remove the ambiguous requirements.
BA will prepare functional requirement.
The document which contains the functional requirements is called (FRS).[Functional Requirement
Specifications]
BA will combine FRS and SSD to form SRS.[ Software Requirement Specifications]
Design-
This has a detailed design document that outlines the software architecture, user interface, and
system components.
BA Ensure that the design aligns with the documented requirements and addresses
stakeholder needs.
Development-
Here BA acts as a mediator between the development team and the stakeholders.
BA clarifies the requirements, check if the development is going on right track or not.
Testing-
In the testing phase, the software is tested as a whole to ensure that it meets the requirements
and is free from defects.
BA works with the testing team to ensure that the solution meets the requirements.
BA facilitate UAT.
BA helps the users to know the functionality of the system and also helps them to use the system.
Deployment-
Once the software has been tested and approved, it is deployed to the production environment.
BA ensures that there is smooth transition from development phase to the production phase.
Implementation-
It involves running the code for the very first time in production phase.
Maintenance-
Running the code for second time in the production phase is called maintenance.
---------------------------------------------------
----
Question 9- What is conflict management? Explain using Thomas – Kilmann technique
Answer-
Conflicts can occur due to various reasons, such as differences in goals, values,
personalities, resources, or communication breakdowns.
Conflict is an inevitable part of any workplace.
Thomas – Kilmann approach is widely used to recognize the approaches for conflict management.
High Assertiveness and High Cooperativeness – Collaboration- means working together to find
solution
High Assertiveness and Low Cooperativeness – Competition- means defensive, that is standing for
your individual beliefs and trying to win.
Low Assertiveness and High Cooperativeness – Accommodation- stakeholder will prioritize their
needs over others.
Low Assertiveness and Low Cooperativeness – Avoidance- means ignoring the conflict
Assertiveness- the extent to which the person attempts to satisfy his own concerns.
Cooperativeness- the extent to which the person attempts to satisfy the other persons concerns.
---------------------------------------------------
----
Question 10- List down the reasons for project failure
Answer-
If the requirements of the project are not gathered correctly, then this can lead to project failure.
Lack of stakeholder involvement-
A project can fail if the stakeholders are not participating in the process.
The stakeholders input and feedback plays very important role to meet the goals.
If there are communication issues between stakeholders, team members then this can lead to
misunderstandings or delays in project or even can lead to project failure.
if the requirements keep on changing frequently, this can also lead to project failure.
Because the scope of the project will also keep on changing which will lead to project failure.
The team fails to identify the risks and do the risk mitigation, which can lead to unexpected
challenges or delays in project.
Unrealistic expectations-
means the goals that cannot be achieved or the goals that are out of scope
Improper planning-
If there is no proper planning, then team may face difficulties in addressing the issues or to track the
progress.
Insufficient resources-
The project may fail due to lack of technology knowledge or lack of finances
---------------------------------------------------
----
Question 11- List the Challenges faced in projects for BA
Answer-
Lack of training.
Change management.
Conducting meeting.
Making sure that the project is going on right track and delivered as per the timelines without any
issues.
Scope creep- change in requirement or scope of the project during the project lifecycle can lead to
scope creep.
Managing the stakeholder with conflicting interest can be a difficult task for BA.
BA may face difficulties in understanding the requirements if the domain is not familiar to him.
Poor communication between stakeholder and BA can affect the process of gathering the
information.
Technical complexity
---------------------------------------------------
----
Question 12- Write about Document Naming Standards
Answer-
[ProjectID][Document Type]V[x]D[y].extention
Answer-
Listen to the client very carefully and after he is done, then ask question.
Be like a lotus in mud- if a client comes with a fancy requirement, then talk to the project manager
first.
---------------------------------------------------
----
Question 14- Write the difference between packages and sub-systems
Answer-
Packages- it is a group of classes or use cases that are used to organize model elements.
package
Subsystems- it is logical grouping of related components.
It is collection of classes, packages, libraries and other sub systems that work together to deliver a
specific set of functionalities.
---------------------------------------------------
----
Question 15- What is camel-casing and explain where it will be used
Answer-
In camel-casing, the starting letter of first word starts with small letter and other words first letter
starts with capital letters.
In requirement documentation, BA often use camel-casing to name the entities like use case,
features, user stories like validateCustomerDetails, calculateInterestRate, etc
While documenting business process or workflows, camel-casing can be used to individual in steps.
This will help maintain consistency in the document.
Requirement naming- camel casing is used in requirement document also, to name the functional
and non-functional requirements.
By using camel casing in the documents, it helps to maintain consistency in the entire document and
also increases readability.
---------------------------------------------------
----
Question 16- Illustrate Development server and what are the accesses does business analyst has?
Answer-
A development server refers to a dedicated environment that is used during the software
development process.
It provides platform for the developers and the testers to build, test, develop and debug the
application.
ReadOnly- BA’s may be granted with the readonly access to the development server.
This will allow them to view the user interface of the application, navigate through the features and
also they will be able to observe the behavior of the application.
Limited Access-
Depending upon the project needs, the BA’s will be granted limited access to the specific modules in
the application.
Limited Configuration Access- Means BA have the authority to make changes in certain areas of
application where they have the access.
---------------------------------------------------
----
Question 17- What is Data Mapping.
Answer-
There may come a scenario, where we need to map the data from one table to another.
Data mapping is nothing but a process to establish connection between multiple data sources.
The purpose of data mapping is to ensure that the data is accurately transferred or converted into
different format.
Data integration-
While combining the data from different sources, it ensures that the data is properly matched.
Data Migration-
While migrating the data from legacy system(source) to the new system(destination), the data
elements are mapped accurately into the new system.
Required techniques are applied to covert the data into the format that is required by the new
system.
Data Transformation-
Data transformation means converting the data from one format to other.
In data mapping, data transformation plays very important role which ensures that the data of legacy
system(source) is mapped correctly to the data in new system(destination).
---------------------------------------------------
----
Question 18- What is API. Explain how you would use API integration in the case of your
application Date format is dd-mm-yyyy and it is accepting some data from Other Application from
US whose Date Format is mm-dd-yyyy.
Answer-
It is a software intermediary that allows the two applications to communicate with each other.
It is the set of rules, protocols and tools that define how different software application should
interact with each other.
API allows sharing of only necessary information and keeps the internal system details hidden, which
helps the system security.
Establish API communication- set up API communication between your application and other
application to exchange data.
Do Data formatting- while sending the data from one application to other, convert the date format
from dd-mm-yyyy to mm-dd-yyyy.
While receiving the data from other application, parse the data and extract the date, month and year
and re-arrange them accordingly.
Perform Data Validation and ensure that the converted date remains in a valid format.