The document discusses strategies for analyzing opportunities and threats facing an organization, as well as the organization's strengths and weaknesses. It recommends using tools like PESTEL analysis, Porter's Five Forces model, and value chain analysis to evaluate external factors, industry forces, and internal value-adding activities. Specifically, it asks how BMW can ensure its ability to engage in value-adding activities as it transitions to producing self-driving vehicles.
Beyond the EU: DORA and NIS 2 Directive's Global Impact
1-What are the opportunities and threats that could impact the org
1. 1-What are the opportunities and threats that could impact the
organization?
· Review all the general environmental categories. (PESTEL
Analysis)
· Use Porter’s Five Forces model to analyze the company’s
industry. Identify key competitors and analyze their strategies,
core competencies, and competitive response.
2-What are the strengths or weaknesses of the organization?
· Review factors within the company that are critical to the
strategy of the firm and classify them as strengths or
weaknesses.
· Look for resources, capabilities, and core competencies.
· Use the "Four Criteria of Sustainable Competitive Advantage".
3-In the past, BMW has been able to successfully differentiate
its products by engaging in value-adding value chain activities.
What are some of these specific activities? How can BMW
ensure its ability to continue with value-adding activities as it
evolves into a maker of self-driving cars?
· Use the "Value Chain Analysis" to identify value-adding
activities and functions.
· This question is not about Business or Corporate level
strategies. focus on the functional level.
Programming Using Inheritance/Programming Using
Inheritance/.vs/Programming Using Inheritance/v16/.suo
Programming Using Inheritance/Programming Using
Inheritance/Account.cs
using System;
2. using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Programming_Using_Inheritance
{
class Account
{
//Declares the instance variable for the class
private decimal Balance;
private string AccountName;
private int AccountNumber;
//Creates the class constructor and initialize its instance
variables using mutator methods
public Account(decimal Balance, string AccountName, int
AccountNumber)
{
3. setAccontNumber(AccountNumber);
setAccountName(AccountName);
//For the balance initialization to make sure it is greater
than zero
if (Balance >= 0)
setBalance(Balance);
else
setBalance(Balance);
}
//Creates mutator methods to set balance, accountNumber
and accountName
public void setBalance(decimal Balance)
{
this.Balance = Balance;
}
public void setAccontNumber(int AccountNumber)
{
this.AccountNumber = AccountNumber;
}
4. public void setAccountName(string AccountName)
{
this.AccountName = AccountName;
}
//To get the instance field variables
public decimal getBalance()
{
return this.Balance;
}
public int getAccontNumber()
{
return this.AccountNumber;
}
public string getAccountName()
{
return this.AccountName;
}
5. //Creates a credit method to add current balance to passed
balance
public void Credit(decimal Amount)
{
this.Balance += Amount;
}
//Creates a credit method to deduct current balance from
passed balance and return the operation status whether
successful or not
public Boolean Debit(decimal Amount)
{
if (Amount <= Balance){
this.Balance -= Amount;
return true;
}
else
{
Console.WriteLine("Insufficient Funds");
return false;
6. }
}
//Prints the formatted result of current status of instance
variables
public void PrintAccount()
{
Console.WriteLine("Account Name:t{0}nAccount
Number:t{1}nBalance:t{2:c}n",AccountName,AccountNumb
er,Balance);
}
}
}
Programming Using Inheritance/Programming Using
Inheritance/App.config
Programming Using Inheritance/Programming Using
Inheritance/bin/Debug/Programming Using Inheritance.exe
Programming Using Inheritance/Programming Using
Inheritance/bin/Debug/Programming Using
Inheritance.exe.config
7. Programming Using Inheritance/Programming Using
Inheritance/bin/Debug/Programming Using Inheritance.pdb
Programming Using Inheritance/Programming Using
Inheritance/CheckingAccount.cs
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Programming_Using_Inheritance
{
//Extends the parent class
class CheckingAccount : Account
{
private decimal FeeCharged;
//Initializes the checking fee and pass call the base
constructor of parent class
public CheckingAccount(decimal Balance, string
AccountName, int AccountNumber, decimal FeeCharge) :
base(Balance, AccountName, AccountNumber)
8. {
setFeeAmount(FeeCharge);
}
//Sets the checking fee but first make sure the fee is
greater than 0
public void setFeeAmount(decimal FeeAmount)
{
if (FeeAmount >= 0)
this.FeeCharged = FeeAmount;
else
this.FeeCharged = 0;
}
//Credits the account by first deducting the checking fee
public new void Credit(decimal Amount)
{
base.Credit(Amount - FeeCharged);
}
//Tries to debit the account by first checking if the debting
process was successful. If successful then it adds a deduction
fee
9. public new void Debit(decimal Amount)
{
if(base.Debit(Amount))
{
base.Debit(FeeCharged);
}
}
//Prints formatted results of current status of instance
variables
public new void PrintAccount()
{
Console.WriteLine("Account Name:t{0}nAccount
Number:t{1}nBalance:t{2:c}nFee Charged:t{3:c}n",
getAccountName(), getAccontNumber(), getBalance(),
FeeCharged);
}
}
}
Programming Using Inheritance/Programming Using
10. Inheritance/Class1.cs
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Programming_Using_Inheritance
{
class Class1
{
}
}
Programming Using Inheritance/Programming Using
Inheritance/Class2.cs
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
11. using System.Threading.Tasks;
namespace Programming_Using_Inheritance
{
class Class2
{
}
}
Programming Using Inheritance/Programming Using
Inheritance/obj/Debug/.NETFramework, Version=v4.7.2.Assemb
lyAttributes.cs
// <autogenerated />
using System;
using System.Reflection;
[assembly:
global::System.Runtime.Versioning.TargetFrameworkAttribute(
".NETFramework,Version=v4.7.2", FrameworkDisplayName =
".NET Framework 4.7.2")]
Programming Using Inheritance/Programming Using
12. Inheritance/obj/Debug/DesignTimeResolveAssemblyReferencesI
nput.cache
Programming Using Inheritance/Programming Using
Inheritance/obj/Debug/Programming Using
Inheritance.csproj.AssemblyReference.cache
Programming Using Inheritance/Programming Using
Inheritance/obj/Debug/Programming Using
Inheritance.csproj.CoreCompileInputs.cache
026cec76836a0225d44f26dc85a994df45ff0746
Programming Using Inheritance/Programming Using
Inheritance/obj/Debug/Programming Using
Inheritance.csproj.FileListAbsolute.txt
C:UsersciannsourcereposProgramming Using
InheritanceobjDebugProgramming Using
Inheritance.csproj.AssemblyReference.cache
C:UsersciannsourcereposProgramming Using
InheritanceobjDebugProgramming Using
Inheritance.csproj.CoreCompileInputs.cache
C:UsersciannsourcereposProgramming Using
InheritancebinDebugProgramming Using
Inheritance.exe.config
C:UsersciannsourcereposProgramming Using
InheritancebinDebugProgramming Using Inheritance.exe
C:UsersciannsourcereposProgramming Using
InheritancebinDebugProgramming Using Inheritance.pdb
C:UsersciannsourcereposProgramming Using
13. InheritanceobjDebugProgramming Using Inheritance.exe
C:UsersciannsourcereposProgramming Using
InheritanceobjDebugProgramming Using Inheritance.pdb
Programming Using Inheritance/Programming Using
Inheritance/obj/Debug/Programming Using Inheritance.exe
Programming Using Inheritance/Programming Using
Inheritance/obj/Debug/Programming Using Inheritance.pdb
Programming Using Inheritance/Programming Using
Inheritance/Program.cs
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Programming_Using_Inheritance
{
class Program
{
static void Main(string[] args)
14. {
//Instantiate the classes by values
CheckingAccount checking = new
CheckingAccount(1000,"Doe-Checking",1,3);
SavingsAccount savings = new SavingsAccount(2000,
"Doe-Saving", 2, 5);
checking.PrintAccount();
savings.PrintAccount();
Console.WriteLine("Deposit $100 into checking");
checking.Credit(100);
checking.PrintAccount();
Console.WriteLine("Withdraw $50 from checking");
checking.Debit(50);
checking.PrintAccount();
Console.WriteLine("Withdraw $6,000 from checking");
15. checking.Debit(6000);
checking.PrintAccount();
Console.WriteLine("Deposit $3,000 into savings");
savings.Credit(3000);
savings.PrintAccount();
Console.WriteLine("Withdraw $200 from savings");
savings.Debit(200);
savings.PrintAccount();
Console.WriteLine("Calculate interest on savings");
savings.Credit(savings.CalculateInterest());
savings.PrintAccount();
Console.WriteLine("Withdraw $10,000 from savings");
savings.Debit(10000);
savings.PrintAccount();
16. Console.WriteLine("Press the [Enter] key to
continue.");
Console.ReadLine();
}
}
}
Programming Using Inheritance/Programming Using
Inheritance/Programming Using Inheritance.csproj
Debug
AnyCPU
{DBC30B10-A9C4-4152-AB04-5DA51B4D73ED}
Exe
Programming_Using_Inheritance
Programming Using Inheritance
v4.7.2
512
true
true
AnyCPU
true
full
18. Programming Using Inheritance/Programming Using
Inheritance/Programming Using Inheritance.sln
Microsoft Visual Studio
Solution
File, Format Version 12.00
# Visual Studio Version 16
VisualStudioVersion = 16.0.32106.194
MinimumVisualStudioVersion = 10.0.40219.1
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") =
"Programming Using Inheritance", "Programming Using
Inheritance.csproj", "{DBC30B10-A9C4-4152-AB04-
5DA51B4D73ED}"
EndProject
Global