Types of Project Selection Models – Numerical Models & Non-Numerical Models

There are two basic types of project selection models, numeric and non-numeric. Both are widely used. Many organization use both at the same time or they use models that are combinations of the two

1. Numerical Models

Numerical models are quantitative methods that use numerical data and calculations to evaluate and compare projects.

Characteristics:

  • Relies on measurable data (e.g., costs, revenues, time).
  • Objective and data-driven.
  • Focuses on financial or quantifiable outcomes.

Types of Numerical Models:

  1. Profitability Models:
    • Evaluate financial viability.
    • Examples:
      • Net Present Value (NPV): Measures the present value of cash flows against investment costs.
      • Internal Rate of Return (IRR): Calculates the discount rate where NPV equals zero.
      • Payback Period: Time required to recover the project investment.
      • Benefit-Cost Ratio (BCR): Ratio of benefits to costs; a higher BCR is preferred.
  2. Scoring Models:
    • Assigns weights to criteria based on importance and scores projects accordingly.
    • Example:
      • Weighted Scoring Model: Combines scores across criteria (e.g., risk, ROI, alignment with strategy).

Advantages:

  • Provides clear, comparable metrics.
  • Helps assess financial feasibility and return on investment.

Disadvantages:

  • May overlook non-quantifiable benefits (e.g., reputation, employee satisfaction).

2. Non-Numerical Models

Non-numerical models are qualitative approaches that rely on subjective assessments and strategic considerations.

Characteristics:

  • Focuses on alignment with organizational goals and priorities.
  • Emphasizes qualitative factors like innovation, market trends, or social impact.
  • Less dependent on numerical data.

Types of Non-Numerical Models:

  1. Checklist Model:
    • Projects are evaluated using a checklist of criteria (e.g., “Does it align with organizational goals?”).
    • Simple “yes” or “no” answers determine project viability.
  2. Strategic Alignment Model:
    • Assesses how well a project aligns with the organization’s strategic objectives.
  3. Profile Model:
    • Compares projects based on risk and return profiles.
    • Helps visualize trade-offs between risk and potential benefits.
  4. Sacred Cow Model:
    • Projects are selected based on leadership preferences or strategic directives, regardless of other factors.

Advantages:

  • Captures non-financial and strategic benefits.
  • Useful for innovative or exploratory projects.

Disadvantages:

  • Subjective and prone to bias.
  • Lacks consistency across evaluations

Explain Functional, Projectized & Matrix Organization

There are following three type organization in Industry

[1] – Functional Organization It is Power of Functional Manager

Features of Functional Organization

  • Employees are grouped based on their functional areas of expertise, such as marketing, finance, IT, or human resources.
  • Each function operates independently, with a clear hierarchy and reporting structure.
  • Departments work on their specific tasks and are managed by functional managers.
  • The project manager’s role is limited or nonexistent; functional managers have full control.

Functional Organization: Suitable for organizations with routine operations and minimal project demands.

[2] – Projectized Organization:: It is Power of Project Manager

Features of Projectized Organization

  • The organization is structured around projects rather than functional departments.
  • Teams are formed specifically for projects, and team members report directly to the project manager.
  • The project manager has full authority over the team and resources.
  • Teams are disbanded after project completion & The organization focuses on delivering projects.

Projectized Organization: Ideal for project-focused industries like construction or event management.

[3] – Matrix Organization:: combination of both Functional & Projectized organization

Features of Matrix Organization

  • Combines elements of both functional and projectized structures.
  • Employees report to both functional and project managers, sharing responsibilities between their department and projects.

Matrix Organization is most popular Organization.

Matrix Organization: Best for organizations balancing both ongoing operations and multiple simultaneous project

[a] – Strong Matrix

The project manager has more authority, similar to a projectized organization.

[b] – Balanced Matrix

  • Equal authority between functional and project managers.
  • Both collaborate to make decisions.

[c] – Weak Matrix

  • Functional managers retain primary control.
  • The project manager has a coordination role with limited authority.

Relationship Between Both Project Manager & Functional Manager & Matrix

Relationship Among Organization, Portfolio, Programs, Projects & Products

Organization: The highest level of the hierarchy. Defines strategic goals, vision, and mission.

“Allocates resources to portfolios, programs, and projects to achieve business objectives”

Portfolio: Portfolio is collection of Programs & Projects

Portfolio is A collection of programs, projects, and operations grouped together to align with organizational strategy.

Program: Program is collection of Projects.

Program is a group of related projects managed in a coordinated way to achieve benefits not achievable individually.

Project: Project is collection of Products.

A project is a temporary endeavor undertaken to create a unique product, service, or result. It is defined by specific goals, a start and end date, and constraints such as time, cost, and resources.

Products are often managed over their lifecycle to provide ongoing value to the organization.

Product: Product is The final deliverable or result of one or more projects, it’s both services or goods.

Products are often managed over their lifecycle to provide ongoing value to the organization.

Organization Business Flow

How To Install Magento 2 PWA studio frontend in Windows XAMPP

Step [1] –To install Node.js, download it from https://nodejs.org/

Step [2] – To install Yarn, you can use the following command after Node.js is installed

npm install -g yarn

Step [3] –Now Check version of Node & Yarn

 node -v  (For node version checker)

yarn -v (For yarn version checker)

Above command indicate Node & Yarn has been installed properly

Step [4] – Clone PWA Studio

Open a terminal and navigate to your Magento root directory

Clone the PWA Studio repository

Step [5] – Installation of PWA Studio Dependencies:

Once Clone clone of PWA Studio repository done

Go To cd pwd-studio & run below yarn command

yarn install

Step [6] –

Step [7] –

Step [8] –

Step [9] –

Step [10] –

Step [11] –

Step [12] –

Magento 2 Cloud Console Command Installation Steps in WSL Windows

Follow below Cloud Console Command steps to login in WSL Windows

Step [1] – Update Package Lists: Ensure your package lists are up to date

sudo apt update

Step [2] – Install Required Dependencies: Install PHP and other necessary dependencies:

sudo apt install php-cli php-curl php-zip unzip curl

Step [3] – Download and Install magento-cloud CLI: Use the following command to download and install the magento-cloud CLI

curl -sS https://accounts.magento.cloud/cli/installer | php

Step [4] – Add magento-cloud CLI to the PATH: Add the magento-cloud CLI to your PATH by editing your .bashrc or .zshrc file

echo 'export PATH="$HOME/.magento-cloud/bin:$PATH"' >> ~/.bashrc
source ~/.bashrc

Step [5] – Verify The Magent Cloud: Run the following command to check if the installation was successful or check magento cloud version

magento-cloud --version

Step [6] – Verify The List of Available Commands: To verify that the magento-cloud command is available, you can view list of available commands

magento-cloud list

Step [7] – magento-cloud login, once this command run below output URL

http://127.0.0.1:5000

If this URL normally does not work, follow below steps to API Token Authentication command to login inside Adobe Commerce Console.

Step [7.1] – Generate API Token in Adobe Commerce Console.

Step [7.2] – Run below command API Token Authentication command to login

magento-cloud-cli auth:api-token-login

Step [7.3] – Once above command run asking for token/password , need to put below token (Already Generated API Token in Adobe Commerce Console) & successfully login Magento cloud CLI & ready to selection different integration

EFcMEi-K6p5Mq9poSkrvqX4gWNBP9ValEG3krC2eTyc , This Already Generated API Token in Adobe Commerce Console)

Step [7.4] – To verify either inside Adobe Commerce Cloud login successfully

magento--cloud version

Step [7.5] – How To Check  Lists the environments in the current project 

magento-cloud environment:list

Step [7.8] – How To Check, Lists variables in the current environment 

magento-cloud variables

How To Fetch Files or Repo From Private Repository packagist.com or repo.packagist.com

Packagist hosts a vast collection of PHP packages, from well-known libraries to smaller community-contributed ones. This repository includes libraries for tasks like authentication, database handling, routing, validation, and much more.

To configure files or repo from rom Private Repository packagist.com https://packagist.com follow below steps.

Step [1] –Login in rom Private Repository packagist.com by using your Butbucket / Github / GitLab

Run on root directory of your Magento 2 / Adobe Commerce

composer install

Step [2] – One logged inside, private repository https://packagist.com/

Go To Setup Authentication >> Composer Config Command

on the root directory of your Magento Clone Files run below command

composer config --global --auth http-basic.repo.packagist.com "Your Name" packagist_uut_kt4yti5vqgkuebbx0iyzlhdmf3amp6owr2ojlsxzu8vfeasn17cnjwgr

This command will create auth.json with username & password setup of packagist.com(repo.packagist.com) & fetch all stored packages in your local

Step [3] – Once step2 done check auth.json created with proper values from repo.packagist.com

Step [4] – Run composer install again

composer install 

Now all packages from Private Repository (packagist.com) or repo.packagist.com will be downloaded properly.

How To Install / Uninstall PHP 8.1, MYSQL, NGINX & Composer in Windows 10/11 WSL Ubuntu

Step [1] – Installation NGINX

sudo apt install
sudo apt install nginx
sudo service nginx start

Step [2] – Install php 8.1

sudo apt install php8.1 libapache2-mod-php8.1 php8.1-common php8.1-gmp php8.1-curl php8.1-soap php8.1-bcmath php8.1-intl php8.1-mbstring php8.1-xmlrpc php8.1-mysql php8.1-gd php8.1-xml php8.1-cli php8.1-zip

If php 8.1 not started

run below command

      sudo add-apt-repository ppa:ondrej/php
      sudo apt update
      sudo apt install php8.1-fpm

Finally it will restart as below
sudo systemctl start php8.1-fpm

Step [3] – Run command to check php.ini path

php --ini | grep "Loaded Configuration File"

Step [4] – Below Settings need to modify in php.ini

max_execution_time = 5000 

max_input_time = 5000 

memory_limit = -1

post_max_size = 900M 

upload_max_filesize = 900

Below extension need to enable

extension=intl
extension=curl
extension=soap
extension=sockets
extension=sodium
extension=xsl
extension=zip
extension=gd

restart nginx & php8.1-fpm

sudo systemctl restart nginx
sudo systemctl restart php8.1-fpm

Step [5] – Install MySQL 8 and Create a Database

[5.1] Install Mysql Server

 sudo apt install mysql-server

[5.2] Start mysql service

sudo systemctl start mysql

[5.3] Enable mysql service


sudo systemctl enable mysql

[5.4] Go inside mysql

sudo mysql -u root -p

where username = root & password = root123

[5.4] – Mysql Secure Installation

here change password & new password as below

mysql username = root

mysql password = Noida123!@#

[5.5] – Create custom database with username / password for newly created database magento246p1

Username = magento246p1

Password= TYfd1@#23asD

Database name = magento246p1

create USER 'magento246p1'@'localhost' IDENTIFIED  by 'TYfd1@#23asD';

GRANT ALL ON magento246p1.* TO 'magento246p1'@'localhost';

flush privileges;

Finally your database magento246p1 is ready for use

Step [6] – Composer Installation

sudo curl -sS https://getcomposer.org/installer -o composer-setup.php
sudo php composer-setup.php –install-dir=/usr/local/bin –filename=composer

To Check either composer working fine

Step [7] – Remove composer-setup.php

Once installed composer, It is file composer-setup.php created, we do not need this file, need to remove

Step [8] – Elastic Search Installation

sudo wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-8.3.2-amd64.deb

Note:: this command will take smore time, please be patience !

sudo wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-8.3.2-amd64.deb.sha512

shasum -a 512 -c elasticsearch-8.3.2-amd64.deb.sha512
sudo dpkg -i elasticsearch-8.3.2-amd64.deb

Once Below command run & display as ok — Elastic Search packaged installed.

shasum -a 512 -c elasticsearch-8.3.2-amd64.deb.sha512

Step [9] – Elasticsearch Start command

 sudo systemctl daemon-reload
 sudo systemctl enable elasticsearch.service
 sudo systemctl start elasticsearch.service
 sudo systemctl restart elasticsearch

To check status of Installed Elasticsearch

sudo systemctl status elasticsearch

If the service is active (running), it should look like this:

Step [9] – Install below PHP essential pkg for Magento 2.4.x

sudo apt update
sudo apt install php8.1-curl



sudo apt update
sudo apt install php8.1-intl


sudo apt update
sudo apt install php8.1-soap

sudo apt update
sudo apt install php8.1-sodium


sudo apt update
sudo apt install php8.1-xml


sudo apt update
sudo apt install php8.1-zip

sudo apt update
sudo apt install php8.1-gd

Once Installed run

sudo systemctl restart nginx
sudo systemctl restart php8.1-fpm

PHP command check all installed module

php -m

Step [10] – Now run Magento2.4.6 composer repository

composer create-project --repository-url=https://repo.magento.com/ magento/project-community-edition 2.4.6

Step [11] – Run below command to install magento 2.4.6

php bin/magento setup:install --base-url="http://localhost/magento246/2.4.6/" --db-host="localhost" --db-name="magento246p1" --db-user="magento246p1" --db-password="TYfd1@#23asD" --admin-firstname="admin" --admin-lastname="admin" --admin-email="admin@admin.com" --admin-user="admin" --admin-password="admin123" --language="en_US" --currency="INR" --timezone="America/Chicago" --use-rewrites="1" --backend-frontname="admin"

During installation If Elasticsearch issue / error

Elasticsearch issue / error Solution:

Open the Elasticsearch configuration file and make necessary adjustments:

sudo nano /etc/elasticsearch/elasticsearch.yml

Disable security features for simplicity:

xpack.security.enabled: false

Restart Elasticsearch to apply changes:

sudo systemctl restart elasticsearch

To verify Elasticsearch working fine

http://localhost:9200/

Step [12] – Once Elasticsearch issue resolved, run again

php bin/magento setup:install –base-url=”http://localhost/magento246/2.4.6/” –db-host=”localhost” –db-name=”magento246p1″ –db-user=”magento246p1″ –db-password=”TYfd1@#23asD” –admin-firstname=”admin” –admin-lastname=”admin” –admin-email=”admin@admin.com” –admin-user=”admin” –admin-password=”admin123″ –language=”en_US” –currency=”INR” –timezone=”America/Chicago” –use-rewrites=”1″ –backend-frontname=”admin”

If Message displaying as below, indicates, Magento 2 Installation has been successfully installed.

[SUCCESS]: Magento installation complete.
[SUCCESS]: Magento Admin URI: /admin

Run below CLI Command

php bin/magento deploy:mode:set developer
php bin/magento setup:upgrade
php bin/magento setup:static-content:deploy -f
php bin/magento indexer:reindex
php bin/magento cache:clean
php bin/magento cache:flush

Finally Magento 2.4.6 Community Edition / Open Source has been installed

Step [13]- Once Installed , correct file permission

sudo chown -R www-data:www-data /var/www/html/magento246/2.4.6
sudo find /var/www/html/magento246/2.4.6 -type f -exec chmod 644 {} \;
sudo find /var/www/html/magento246/2.4.6 -type d -exec chmod 755 {} \;



sudo chown -R www-data:www-data /var/www/html/magento246/2.4.6/pub/static
sudo chown -R www-data:www-data /var/www/html/magento246/2.4.6/var
sudo chmod -R 755 /var/www/html/magento246/2.4.6/pub/static
sudo chmod -R 755 /var/www/html/magento246/2.4.6/var

Once your Machine (Windows WLS 2) opened run below command to start services

sudo systemctl start nginx
sudo systemctl start php8.1-fpm

sudo service mysql start
sudo systemctl status mysql
sudo systemctl restart mysql

 sudo systemctl daemon-reload
 sudo systemctl enable elasticsearch.service
 sudo systemctl start elasticsearch.service
https://magento.stackexchange.com/questions/219762/magento-2-css-and-js-not-working-after-install

Explain List of important Docker Commands

Step [1] – What is the docker-compose Up command
The docker compose up command aggregates the output of each container (like docker compose logs –follow does).

Step [2] – What is the docker-compose stop command
To stop containers running in the background, use the docker-compose stop command:

Step [3] – What is the docker-compose Down command
Running this command in a terminal or within a script stops and removes all containers, networks, and volumes established by the docker-compose up command
To use it, simply navigate to your project directory and execute docker-compose down.

Step [4] – What is docker command to check services name

docker-compose config --services

Step [5] – What is Docker command to check Mysql or MariaDB Version

docker-compose exec db mysql -V

Step [6] – Which Command is being used to check total number of containers running right now

docker ps

Step [7] – Which Docker Command used for Restart Services

docker-compose restart

Step [8] – Linux command to check current path

Step [9] – List of required PHP 8.3 Extension for Linux/Docker/WSL2 (Magento 2 Installation)

sudo apt install php8.3-curl
sudo apt install php8.3-mbstring
sudo apt install php8.3-xml
sudo apt install php8.3-bcmath
sudo apt install php8.3-intl
sudo apt install php8.3-soap
sudo apt install php8.3-zip
sudo apt install php8.3-gd
sudo apt install php8.3-xsl

if pdo related issue displaying run below command & enable pdo extension

sudo apt install php8.3-mysql

Step [9] – Docker Command to find all installed images

docker images

Step [10] – Docker Command to find all installed volumes

docker volume ls

Step [11] – What is purpose of command “docker exec -it php bash”

docker exec -it php bash

It allows you to start an interactive Bash shell inside a running php container.

Open a Bash shell inside the php container.
Gain interactive access to the container, where you can:

  • Run Linux commands.
  • Explore or modify the file system.
  • Execute PHP commands or scripts.
  • Check log files, configurations, etc.

This is useful for debugging or managing running containers in real-time without stopping or recreating them.

Step [12] – What is purpose of docker-compose up -d --build

The docker-compose up -d --build command is used to start or rebuild Docker containers as defined in a docker-compose.yml file, with a few key actions:

Example Scenario

Let’s assume your docker-compose.yml file has the following services:

yamlCopy codeversion: '3'
services:
  web:
    build: ./web
    ports:
      - "8080:80"
  db:
    image: mysql:5.7
    environment:
      MYSQL_ROOT_PASSWORD: example
  • web: This service is built from a Dockerfile located in the ./web directory.
  • db: This service uses the official mysql:5.7 image.

When you run docker-compose up -d --build, the following happens:

  1. Docker Compose rebuilds the web service image using the Dockerfile in the ./web directory.
  2. It starts the web service on port 8080, mapping it to port 80 inside the container.
  3. The db service using the mysql:5.7 image starts with the root password set to example.
  4. Both services run in the background (detached mode), allowing you to continue using the terminal.

Step [13] – If command docker-compose restart do not put in correct path

Once put command docker-compose restart do not put in correct path as below

Step [14] – Navigate wsl2 file path in windows 11

Type \\wsl$\ in File Explorer

Step [14] –















































How To Install / Uninstall PHP, MYSQL, NGINX & Composer in Windows 10/11 WSL Ubuntu

Step [1] – Installation NGINX

sudo apt install
sudo apt install nginx
sudo service nginx start

Step [2] – Create Virtual Host File magento.conf

sudo nano magento.conf && chmod 777 magento.conf
upstream fastcgi_backend {
  server  unix:/run/php/php8.2-fpm.sock;
}

server {

  listen 80;
  server_name www.magento-dev.com;
  set $MAGE_ROOT /var/www/html/magento2;
  include /var/www/html/magento2/nginx.conf.sample;
}

Step [3] – To Create nginx virtual host symbolic link

sudo ln -s /etc/nginx/sites-available/magento.conf /etc/nginx/sites-enabled/magento.conf

Step [4] – Inside /var/www/html/ below directory has been created

index.nginx-debian.html

Create magento2 folder

Step [5] – Go Windows > System 32 / Drivers / etc / host file

Set your virtual host here

Step [6]- Install PHP 8.3

sudo apt install php libapache2-mod-php php-bcmath php-curl php-fpm php-gd php-intl php-mbstring php-mysql php-soap php-xml php-xsl php-zip php-cli

Step [7] – Modify in php.ini file

To Find path of php.ini

php -ini | grep "Loaded Configuration File"
max_execution_time = 5000 

max_input_time = 5000 

memory_limit = -1

post_max_size = 900M 

upload_max_filesize = 900

Once all changes done in php.ini start php service below

sudo service php8.3-fpm start

Step [8] – Installation MYSQL

sudo apt install mysql-server

Step [9] – Start mysql Service

sudo service mysql start

Step [10] – Change Mysql Credentials

Mysql credentials as root / root123

Step [11] – Mysql Secure Installation

Step [12] – Create custom database with username / password

create database magento2461;

Create Mysql Username & Password to assign this database

create USER 'magento2461'@'localhost' IDENTIFIED  by 'TYfd1@#23asD';

Step [13] – Grant Permission assign database to user magento2461

Step [14] – Run flush privileges command

flush privileges;

Step [15] – Composer Installation

sudo curl -sS https://getcomposer.org/installer -o composer-setup.php
sudo php composer-setup.php –install-dir=/usr/local/bin –filename=composer

To Check either composer working fine

Step [16] – Remove composer-setup.php

Once installed composer, It is file composer-setup.php created, we do not need this file, need to remove

Step [17] – Elastic Search Installation

sudo wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-8.3.2-amd64.deb

Note:: this command will take smore time, please be patience !

sudo wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-8.3.2-amd64.deb.sha512

shasum -a 512 -c elasticsearch-8.3.2-amd64.deb.sha512
sudo dpkg -i elasticsearch-8.3.2-amd64.deb

Once Below command run & display as ok — Elastic Search packaged installed.

shasum -a 512 -c elasticsearch-8.3.2-amd64.deb.sha512

Step [18] – Elasticsearch Start command

 sudo systemctl daemon-reload
 sudo systemctl enable elasticsearch.service
 sudo systemctl start elasticsearch.service
 sudo systemctl restart elasticsearch

To check status of Installed Elasticsearch

sudo systemctl status elasticsearch

If the service is active (running), it should look like this:

Uninstall Nginx, PHP, MySQL, Elasticsearch, and Composer from WSL2 & Ubuntu, 

Follow these steps:

Step [1] – Uninstall Nginx:

bash

Copy code

sudo systemctl stop nginx

sudo apt purge nginx nginx-common nginx-full -y

sudo apt autoremove -y

sudo rm -rf /etc/nginx

Step [2] – Uninstall PHP (and its extensions):

Check for installed PHP versions first:

bash

Copy code

php -v

Uninstall PHP and its related packages:

bash

Copy code

sudo apt purge php* -y

sudo apt autoremove -y

sudo rm -rf /etc/php

Step [3] – Uninstall MySQL:

bash

Copy code

sudo systemctl stop mysql

sudo apt purge mysql-server mysql-client mysql-common mysql-server-core-* mysql-client-core-* -y

sudo apt autoremove -y

sudo rm -rf /etc/mysql

Step [4] – Uninstall Elasticsearch:

bash

Copy code

sudo systemctl stop elasticsearch

sudo apt purge elasticsearch -y

sudo apt autoremove -y

sudo rm -rf /etc/elasticsearch /var/lib/elasticsearch

Step [5] – Uninstall Composer:

Simply remove the composer binary:

bash

Copy code

sudo rm /usr/local/bin/composer

Step [6] – Clean up any unused packages:

bash

Copy code

sudo apt autoremove -y

sudo apt autoclean

This will uninstall all the listed services and clean up residual files from your Ubuntu system.

How To Xampp & Composer in Windows 10/11

The following below steps to install composer in Windows 10/11

Step [1] – Download Composer

Step [2] – Click on Download composer folder

Click on Install for all users(recommended)

Step [3] – Click om Developer Mode–>Next Button

Step [4] – Directory auto selected C Folder by default, if you would like to modify composer installation in other folder as per need –> Next Button

Step [5] – Here we need to set path for xampp folder as

E:\xampp\php\php.exe

Click on Next Button

Step [6] – Finally Composer has been installed.

Step [7] – Finally run below command to check either Composer working fine or not.