Loading...
Dept. of Immigration & Passport, MoHA

Post: Sub-Assistant Maintenance Engineer
Exam Date: 13/10/2022 Subject Code: 105 Exam Taker: BPSC গ্রুপঃ ঘ (Software)
Core Principles of Agile Methodology in Software Development: Agile is an iterative and flexible Software Development approach that focuses on customer satisfaction, collaboration, and continuous improvement. Four Core Values of Agile (Agile Manifesto):
  1. Individuals and Interactions over Processes and Tools
  2. Working Software over Comprehensive Documentation
  3. Customer Collaboration over Contract Negotiation
  4. Responding to Change over Following a Plan
Main Principles of Agile:
  • Deliver working software frequently in small increments.
  • Welcome changing requirements, even in late development.
  • Close collaboration between developers and customers.
  • Continuous improvement through feedback.
  • Maintain simplicity and technical excellence.
  • Self-organizing and motivated teams.
Software Development-এ Agile পদ্ধতির মূলনীতি: Agile হলো একটি iterative ও flexible Software Development পদ্ধতি, যা customer satisfaction, collaboration এবং continuous improvement-এর উপর গুরুত্ব দেয়।Agile Manifesto-এর চারটি মূল মূল্যবোধ:
  1. Individuals and Interactions over Processes and Tools
  2. Working Software over Comprehensive Documentation
  3. Customer Collaboration over Contract Negotiation
  4. Responding to Change over Following a Plan
Agile-এর প্রধান নীতিসমূহ:
  • ছোট ছোট অংশে দ্রুত Working Software প্রদান করা।
  • Development-এর শেষ পর্যায়েও requirement পরিবর্তন গ্রহণ করা।
  • Developer ও customer-এর মধ্যে ঘনিষ্ঠ collaboration বজায় রাখা।
  • Feedback-এর মাধ্যমে continuous improvement করা।
  • Simplicity ও technical excellence বজায় রাখা।
  • Self-organizing ও motivated team গঠন করা।
Disadvantages of Waterfall Model in Software Development:
Waterfall Model is a linear and sequential Software Development model where each phase must be completed before the next phase begins.
Main Disadvantages:
  1. No Flexibility: It is difficult to change requirements once the development process has started.
  2. Late Testing: Testing is done after development is completed, so errors are found late.
  3. No Working Software Until Late Stage: The customer cannot see the working product until the end.
  4. High Risk and Uncertainty: If requirements are not clearly defined at the beginning, the project may fail.
  5. Not Suitable for Complex Projects: It is not ideal for large or dynamic projects where requirements frequently change.
  6. Customer Involvement is Limited: Customers are involved mainly at the beginning and end.

Software Development-এ Waterfall Model-এর অসুবিধা:
Waterfall Model একটি linear ও sequential Software Development model, যেখানে একটি phase শেষ না হলে পরবর্তী phase শুরু হয় না।

প্রধান অসুবিধাসমূহ:

  1. Flexibility কম: Development শুরু হওয়ার পর requirement পরিবর্তন করা কঠিন।
  2. Late Testing: Testing শেষ পর্যায়ে হয়, ফলে error দেরিতে ধরা পড়ে।
  3. Working Software দেরিতে পাওয়া যায়: Customer শেষ পর্যায় পর্যন্ত সম্পূর্ণ product দেখতে পায় না।
  4. High Risk: শুরুতে requirement পরিষ্কার না হলে project ব্যর্থ হতে পারে।
  5. Complex Project-এর জন্য উপযুক্ত নয়: Requirement বারবার পরিবর্তিত হলে এই model কার্যকর নয়।
  6. Customer Involvement কম: Customer মূলত শুরু ও শেষে যুক্ত থাকে।
Types of Requirements in Software Development:

In Software Development, requirements are mainly of two types:

1) Functional Requirements:
Functional Requirements describe what the system should do. They define the functions and features of the system.
Examples:

  • User can register and login.
  • System will calculate total marks automatically.
  • User can search products by name.
  • Admin can generate reports.

2) Non-Functional Requirements:
Non-Functional Requirements describe how the system should perform. They define quality attributes and constraints.
Examples:

  • The system should respond within 2 seconds.
  • The system must support 1000 concurrent users.
  • Data must be secure and encrypted.
  • The system should be user-friendly.

Software Development-এ Requirement-এর প্রকারভেদ:
Software Development-এ প্রধানত ২ প্রকার Requirement পাওয়া যায়:

১) Functional Requirement:
Functional Requirement বলে system কী কাজ করবে। এটি system-এর feature ও function নির্ধারণ করে।
উদাহরণ:

  • User registration ও login করতে পারবে।
  • System স্বয়ংক্রিয়ভাবে total marks গণনা করবে।
  • User product search করতে পারবে।
  • Admin report তৈরি করতে পারবে।

২) Non-Functional Requirement:
Non-Functional Requirement বলে system কীভাবে কাজ করবে। এটি performance, security ও quality নির্ধারণ করে।
উদাহরণ:

  • System ২ সেকেন্ডের মধ্যে response দিবে।
  • System একসাথে ১০০০ user সমর্থন করবে।
  • Data secure ও encrypted থাকবে।
  • System user-friendly হতে হবে।
User Story and Product Backlog:
User Story:
A User Story is a short and simple description of a feature written from the end user’s perspective. It describes what the user wants and why.
Format of User Story:
“As a <type of user>, I want <goal> so that <benefit>.”Example:
As a student, I want to view my exam results so that I can track my performance.

Product Backlog:
Product Backlog is a prioritized list of all features, User Stories, bug fixes, and improvements required for a product. It is maintained by the Product Owner in Agile methodology.

Example of Product Backlog Items:

  • User registration feature
  • Login system
  • Payment integration
  • Bug fixes

User Story এবং Product Backlog:
User Story:
User Story হলো একটি সংক্ষিপ্ত বর্ণনা, যা user-এর দৃষ্টিকোণ থেকে লেখা হয়। এতে বলা হয় user কী চায় এবং কেন চায়।
User Story-এর সাধারণ গঠন:
“As a <user type>, I want <goal> so that <benefit>.”উদাহরণ:
As a student, I want to view my exam results so that I can track my performance.

Product Backlog:
Product Backlog হলো একটি prioritized তালিকা, যেখানে product-এর সব feature, User Story, bug fix এবং improvement উল্লেখ থাকে। এটি Agile পদ্ধতিতে Product Owner পরিচালনা করেন।

Product Backlog-এর উদাহরণ:

  • User registration feature
  • Login system
  • Payment integration
  • Bug fixes
Data Flow Diagram (DFD):
Data Flow Diagram (DFD) is a graphical representation of how data moves through a system. It shows how data is input, processed, stored, and output in an information system.
Main Symbols Used in DFD:
1) Process:
Represents processing of data.
Symbol: Circle or rounded rectangle.

2) Data Flow:
Represents the movement of data from one part of the system to another.
Symbol: Arrow (→).

3) Data Store:
Represents storage of data (file or database).
Symbol: Two parallel horizontal lines.

4) External Entity:
Represents a person, organization, or system outside the main system that interacts with it.
Symbol: Rectangle.

Data Flow Diagram (DFD):
Data Flow Diagram (DFD) হলো একটি graphical উপস্থাপন, যা দেখায় একটি system-এর মধ্যে data কীভাবে প্রবাহিত হয়। এটি দেখায় data কীভাবে input হয়, process হয়, store হয় এবং output হয়।

DFD-তে ব্যবহৃত প্রধান Symbols:

১) Process:
Data process বা রূপান্তর নির্দেশ করে।
Symbol: বৃত্ত (Circle) বা rounded rectangle।

২) Data Flow:
System-এর এক অংশ থেকে অন্য অংশে data-এর গতি নির্দেশ করে।
Symbol: Arrow (→)।

৩) Data Store:
Data সংরক্ষণের স্থান (file বা database) নির্দেশ করে।
Symbol: দুইটি সমান্তরাল সরলরেখা।

৪) External Entity:
System-এর বাইরের ব্যক্তি, সংস্থা বা system যা system-এর সাথে যোগাযোগ করে।
Symbol: Rectangle।

CSS (Cascading Style Sheets):CSS is a style sheet language used to control the design and layout of a web page. It is used to define colors, fonts, spacing, positioning, and responsiveness of HTML elements.

Ways to Use CSS in a Web Page:
There are three ways a Website Developer can use CSS in a web page:

1) Inline CSS:
CSS is written inside the HTML element using the style attribute.
Example:
<p style=”color: red;”>Hello</p>

2) Internal CSS:
CSS is written inside the <style> tag within the <head> section of the HTML file.
Example:
<style>
p { color: blue; }
</style>

3) External CSS:
CSS is written in a separate .css file and linked to the HTML file using the <link> tag.
Example:
<link rel=”stylesheet” href=”style.css”>

CSS (Cascading Style Sheets):
CSS হলো একটি style sheet language, যা web page-এর design ও layout নিয়ন্ত্রণ করে। এটি color, font, spacing, position এবং responsiveness নির্ধারণ করে।Website-এ CSS ব্যবহারের উপায়:
একজন Website Developer প্রধানত ৩ভাবে CSS ব্যবহার করতে পারেন:

১) Inline CSS:
HTML element-এর ভিতরে style attribute ব্যবহার করে CSS লেখা হয়।
উদাহরণ:
<p style=”color: red;”>Hello</p>

২) Internal CSS:
HTML file-এর <head> section-এর মধ্যে <style> tag ব্যবহার করে CSS লেখা হয়।
উদাহরণ:
<style>
p { color: blue; }
</style>

৩) External CSS:
আলাদা .css file-এ CSS লিখে <link> tag-এর মাধ্যমে HTML-এর সাথে যুক্ত করা হয়।
উদাহরণ:
<link rel=”stylesheet” href=”style.css”>

Definitions:
1) WWW (World Wide Web):
WWW is a system of interlinked web pages and resources accessed through the Internet using a web browser.

2) URL (Uniform Resource Locator):
URL is the address of a specific resource on the Internet that specifies its location.

3) HTTP (HyperText Transfer Protocol):
HTTP is a communication protocol used to transfer web pages from a web server to a web browser.

4) IP Address (Internet Protocol Address):
IP Address is a unique numerical address assigned to a device in a network to identify and communicate with it.

5) Router:
Router is a networking device that forwards data packets between different networks based on IP address.

সংজ্ঞাসমূহ:

১) WWW (World Wide Web):
WWW হলো Internet-এর মাধ্যমে web browser ব্যবহার করে প্রবেশযোগ্য আন্তঃসংযুক্ত web page ও resource-এর সমষ্টি।

২) URL (Uniform Resource Locator):
URL হলো Internet-এ কোনো নির্দিষ্ট resource-এর ঠিকানা।

৩) HTTP (HyperText Transfer Protocol):
HTTP হলো একটি communication protocol, যা web server থেকে web browser-এ web page স্থানান্তর করতে ব্যবহৃত হয়।

৪) IP Address (Internet Protocol Address):
IP Address হলো একটি অনন্য সংখ্যাসূচক ঠিকানা, যা network-এ একটি device-কে সনাক্ত করে।

৫) Router:
Router হলো একটি networking device, যা IP address-এর ভিত্তিতে এক network থেকে অন্য network-এ data packet প্রেরণ করে।

Advantages of Server-Side Scripting over Client-Side Scripting:

Server-Side Scripting is executed on the web server before the result is sent to the client’s browser. Examples: PHP, ASP.NET, JSP, Python.

Main Advantages:

  1. Better Security: Source code is hidden from users, reducing risk of hacking.
  2. Database Connectivity: Can easily connect to database for storing and retrieving data.
  3. Centralized Control: Processing happens on the server, so control remains with the server.
  4. Authentication & Authorization: Secure login and user access control can be implemented.
  5. Browser Independence: Works consistently across different browsers.
  6. Dynamic Content Generation: Can generate dynamic web pages based on user request.

Client-Side Scripting-এর তুলনায় Server-Side Scripting-এর সুবিধা:

Server-Side Scripting server-এ execute হয় এবং পরে ফলাফল browser-এ পাঠানো হয়। উদাহরণ: PHP, ASP.NET, JSP, Python।

প্রধান সুবিধাসমূহ:

  1. উচ্চ নিরাপত্তা: Source code user দেখতে পায় না, তাই hacking-এর ঝুঁকি কম।
  2. Database সংযোগ: সহজে database-এ data store ও retrieve করা যায়।
  3. Centralized Control: Processing server-এ হওয়ায় নিয়ন্ত্রণ server-এর হাতে থাকে।
  4. Authentication ও Authorization: Secure login ও user access control বাস্তবায়ন করা যায়।
  5. Browser Independence: ভিন্ন browser-এ একইভাবে কাজ করে।
  6. Dynamic Content: User request অনুযায়ী dynamic web page তৈরি করা যায়।
Types of Software Testing:
Software Testing is mainly of two types:
1) Manual Testing:
Testing performed manually by a tester without using automation tools.
2) Automated Testing:
Testing performed using automation tools and scripts.

Based on level, testing can also be divided into:

  • Unit Testing
  • Integration Testing
  • System Testing
  • Acceptance Testing

Boundary Value Analysis (BVA):
BVA is a Black Box Testing technique used to test boundary values of input ranges. Errors often occur at the minimum and maximum limits.

How it Works:
If input range is 1 to 100, test values will be:
0, 1, 2, 99, 100, 101

It checks values at and near the boundary limits.

Equivalence Partitioning (EP):
Equivalence Partitioning is a Black Box Testing technique where input data is divided into valid and invalid partitions (groups). One test case is selected from each partition.

How it Works:
If input range is 1 to 100:

  • Valid Partition: 1–100 (e.g., test 50)
  • Invalid Partition: less than 1 (e.g., test -5)
  • Invalid Partition: greater than 100 (e.g., test 150)

Exam Point:BVA tests boundary values, while Equivalence Partitioning divides inputs into groups and tests one value from each group.

Software Testing-এর প্রকারভেদ:

Software Testing প্রধানত ২ প্রকার:

১) Manual Testing:
Tester নিজে manually test করে, automation tool ব্যবহার করে না।

২) Automated Testing:
Automation tool ও script ব্যবহার করে testing করা হয়।

Level অনুযায়ী Testing-এর প্রকার:

  • Unit Testing
  • Integration Testing
  • System Testing
  • Acceptance Testing

Boundary Value Analysis (BVA):
BVA একটি Black Box Testing technique, যেখানে input range-এর boundary value পরীক্ষা করা হয়। সাধারণত error boundary-তে বেশি হয়।

কীভাবে কাজ করে:
যদি input range 1 থেকে 100 হয়, তাহলে test value হবে:
0, 1, 2, 99, 100, 101

অর্থাৎ minimum ও maximum-এর কাছাকাছি মান পরীক্ষা করা হয়।

Equivalence Partitioning (EP):
Equivalence Partitioning একটি Black Box Testing technique, যেখানে input-কে valid ও invalid group-এ ভাগ করা হয়। প্রতিটি group থেকে একটি করে test case নেওয়া হয়।

কীভাবে কাজ করে:
যদি input range 1 থেকে 100 হয়:

  • Valid Partition: 1–100 (যেমন 50)
  • Invalid Partition: 1-এর কম (যেমন -5)
  • Invalid Partition: 100-এর বেশি (যেমন 150)

You must subscribe & Login to view more.

Don’t have an account? Register

Or your subscription is under review by admin. Please message on WhatsApp / Telegram.

Leave a Comment

Latest Post
Field Based Job Question & Solution
Bank IT Job Solution

MCQ + Written from Bangladesh Bank, Sonali, Combined Bank IT recruitment.

BPSC IT Job Solution

BPSC Computer/IT cadre & non-cadre post Question papers with full solutions.

Gas Field IT Job Solution

Gas field like TGTDCL, BGDCL, JGTDSL, KGDCL, SGCL, RPGCL, GTCL etc. question solution

Power Sector IT Job Solution

Power sector such as NESCO, DESCO, DPDC, WZPDCL, BPDB, PGCB, BREB etc

Other IT Job Solution

Other Govt. Semi govt. organization like BCC, BTCL, CAAB, NSI etc.

NTRCA IT Job Solution (upcoming)

NTRCA ICT-related posts such as Assistant Teacher, Demonstrator, Lecturer.

IT MCQ Job Solution

Collected MCQ Job solution of BANK, BPSC, POWER SECTOR, GAS Field and Others.

Topic Based Q&S
WhatsApp Telegram Messenger