Professional and Ethical Issues

Submitted by gabrielle.pigg… on Fri, 07/19/2024 - 13:06
Sub Topics

Introduction to Software Licensing 

Intellectual property laws allow the creators of software to define how their software is used. The vision of the software publisher is often articulated through the End User License Agreement (EULA). This agreement specifies where and under what conditions the software can be used. The type of EULA chosen by the publisher often reflects their philosophy regarding Information Technology. There are two main perspectives in this context: one views software as a business tool that should be restricted to create a competitive advantage, while the other sees computing as a transformative technology that can benefit society broadly, advocating for more open and widely distributed access. Businesses that employ developers will tend to use proprietary licences while communities of developers working collaboratively on a project will tend to favour open-source licences. 

End-User License Agreement (EULA) - NETWORK ENCYCLOPEDIA

Source: End-User License Agreement (EULA) - NETWORK ENCYCLOPEDIA

5 approaches to software licensing

Public domain license Lesser general public license Permissive Copyleft Proprietary
Anyone can use or modify the software Can link to open source libraries and code can be licensed under any license type Has some requirements for distribution and modification Licensed code can be distributed or modified if all the code involved is distributed under the same license. Software cannot be copied, modified or distributed.
Least restrictive   Most restrictive

Software licensing is a legal framework that defines how software can be used, distributed, and modified. As an IT professional it is important to understand that all software has intellectual property rights whether explicitly stated or not. Understanding the different types of software licenses is crucial to ensure compliance and to make informed decisions about software usage. The three main categories of software licenses are proprietary licenses, subscription-based licenses, and open-source licenses. Each category has its own set of rules and implications for how software can be accessed and utilised.

Proprietary Licenses 

Proprietary licenses, also known as closed-source licenses, grant the user permission to use the software under specific conditions laid out by the software's creator or owning entity. Each software publisher will have their own rules, and will often have multiple types of licences. 

Like many large software publishers Microsoft has many types of licencing arrangements. There are OEM (Original Equipment Manufacturer) which ties a licence to a piece of equipment, a full-package product (FPP) licence which can be purchased in a store, or enterprise agreements. An education agreement is a special type of enterprise agreement.

Source: https://www.curveballsolutions.com/articles/what-is-office-365/

This type of license restricts access to the software's source code, preventing users from modifying or redistributing the software. 

Key Features of Proprietary Licenses: 

  • Restricted Access: The source code is not available to the public, and users cannot modify or share the software. Developers who have worked on developing code, or others that have an “insiders’ knowledge” will usually have a clause within their employment agreement called “restraint of trade” which will say cannot work in a role that will use the knowledge for a specified period of time. This includes setting up their own business. 
  • Usage Rights: Users typically purchase a license or receive it through some agreement, which allows them to use the software within the constraints set by the license. The restraints can vary considerably. Some licences restrict the number of simultaneous installations, other concurrent uses, and others whether can be transferred to other devices or not. Each Publisher has a unique set of restrictions and, as an IT Professional, need to ensure that when asked to do a task that it is within the rights granted by the licence. 
  • Licensing Fees: Often, proprietary software requires a one-time purchase or a recurring fee. The publisher will often have a recommended price the vendors normally have the ability to set their own price. Some publishers, such as Apple, stipulate pricing and only those with special arrangements are permitted to deviate from it. 
  • Support and Updates: Users may receive official support and updates from the software vendor. The type of updates and duration that updates are provided are often influenced by the type of licencing fee paid.  

For example: 

  • Microsoft Windows: Users must purchase a license to use Windows, and they cannot access or modify its source code. 
  • Adobe Photoshop: Users need to buy a license or subscription to use Photoshop, and its source code is proprietary. 

Subscription-Based Licenses 

Subscription licences are a form of proprietary licence that provide software access for a recurring fee, usually on a monthly or annual basis. The annual fee is normally the monthly fee discounted. This model has gained popularity with the rise of cloud computing and Software as a Service (SaaS). 

Key Features of Subscription-Based Licenses: 

  • Recurring Payments: Users pay a regular fee to continue using the software. The roles and responsibilities of the parties are clearly defined based on what type of software is being subscribed to. The user always has final responsibility for the backups of the data. In a cloud model the provider will provide measures to prevent data loss, but the final responsibility of the data always lies with the user. 
  • Access to Updates: Users typically receive the latest updates and features as long as their subscription is active. 
  • Scalability: Subscription models often allow users to scale their usage up or down based on their needs. The software and updates are provided by the publisher automatically. In a cloud-based scenario the user does not have a role in whether the updates are applied or not, the updates are always managed by the provider. 
  • Support Services: Many subscription plans include customer support and other services as part of the package. 

For example: 

  • Microsoft Office 365: Users subscribe to Office 365 for access to the latest versions of Microsoft Office applications and cloud services. 
  • Adobe Creative Cloud: Users pay a monthly or annual fee to access Adobe’s suite of creative tools. 

Xero: Users subscribe to Xero, an online accounting software, paying a monthly fee for access to its financial management tools and updates. 

Open Source Licenses 

Open-source licenses allow users to freely use, modify, and distribute the software. The source code is made available to the public, fostering a collaborative environment where developers can contribute to the software’s improvement. 

Key Features of Open Source Licences: 

  • Free Use: Most open-source software is available for free, though some may charge for additional features or support. 
  • Source Code Access: Users have access to the software’s source code and can modify it to suit their needs. 
  • Redistribution: Users can share the original or modified software with others. 
  • Community Support: Open-source projects often have active communities that contribute to the software and provide support. 
Types of Open Source Licenses
  • Permissive Licenses: Examples include the MIT License and Apache License, which allow users to freely use, modify, and distribute the software with minimal restrictions. 
  • Copyleft Licenses: Examples include the GNU General Public License (GPL), which require any modified versions of the software to also be open source and distributed under the same license. 

Other types of licences are normally either specialised propriety or open-source license. Examples are: 

  • Freeware: Typically proprietary software made available at no cost, but restriction placed on use (e.g. not in commercial environment), distribution, and modification. A common example is Adobe Acrobat Reader. 
  • Shareware: A proprietary licence where the executable is made freely available, but the expectation is that a fee will be paid for the ongoing use of the software. Examples in WinRAR and some malware programs.  
  • Public Domain: All software will eventually become Public Domain once the copyright rights have expired. Software can also become Public Domain is the author waives those rights with a deliberate waiving of the rights. The software them becomes available for free use, modification, and distribution, making it open source. 

 A type of Open-Source licence. This is common where one or more developers have created some software, but want to restrict where and how it is used and/or modified.  

The Importance of Software Licences

Understanding the different types of software licenses is essential. Proprietary licenses offer controlled usage with vendor support, subscription-based licenses provide continuous access to updates and services, and open-source licenses foster innovation and collaboration. Each licensing model has its unique benefits and considerations, making it important to choose the right one based on specific needs and goals. The role of the IT professional is to recommend the best software most suited for the purpose and advise of the licencing options. Fortunately most Managed Service Providers (MSPs) and software suppliers have specialists to assist with this.

It is very important as an IT professional to consider the choices you make and their ongoing environmental impact. After watching the video share your key takeaways, ideas or tips and tricks about being aware, responsible and accountable in your professional choices.

Watch - Environmental Impacts of Computing (7:40 minutes)

This video covers the implications of manufacturing, using, and disposing computers. While you watch make notes about what to consider when upgrading and replacing operating systems and also some usage and settings policies organisations can deploy.

 

As we have just seen in this video, the manufacturing, use, and disposal of computers have a significant environmental impact. The main sources of this impact are: 

1. Energy Usage: There is a direct correlation between the heat generated and the amount of power used. Data centres require massive cooling systems to dissipate the heat generated by servers, this is because they use account for about 1.5% of total electricity use (DataCentre Magazine, 2022). To be more environmentally friendly, companies like Microsoft have explored innovative solutions, such as placing containers filled with servers on the ocean floor (Microsoft, 2020). Google has also committed to making its data centres carbon-free by 2030 (Google Data Centers, n.d.) and is ranked as #3 in terms of data centres using green energy in 2022 by the DataCentre Magazine (2022).

2. Minerals Used: Many scarce and toxic minerals, including zinc, lead, and lithium, are used in IT components. Software plays a major role in determining whether hardware upgrades are necessary to run the latest features. High-performance computing typically requires hardware manufactured in the last 24 months. Most hardware upgrades are driven by the need to run software that will not function reliably on older hardware, leading to the production of new hardware and the disposal of old hardware—both of which have a significant environmental impact. 

If software development focused on optimising performance for hardware that is four years old instead of just two, there would be a significant reduction in the need for new hardware. Another action that could have a positive environmental impact is the consolidation of processing tasks into data centres. 

Research from organisations such as the Uptime Institute, which monitor trends in data centre efficiency and sustainability, and the International Energy Agency (IEA) shows that data centres are generally more power-efficient than home computers due to their scale, advanced cooling systems, and the implementation of energy-efficient technologies (IEA, 2017). The movement of processing from home computers to data centres would: 

  1. Extend the expected life of home computers. 
  2. Reduce the environmental impact of computing, even if by a small amount—but collectively, these small reductions can lead to a significant impact. 

Software plays a crucial role in determining how hardware is used and, consequently, how environmentally friendly the overall technological environment can be. By optimising software to be more efficient, compatible with older hardware, and supportive of centralised processing in more efficient data centres, the environmental impact of technology can be significantly reduced. 

The IT Infrastructure Library (ITIL) was originally designed by the UK Government for their IT systems and it has been widely adopted inside and outside IT. The fundamental concept behind ITIL is 'always improving'. There are seven guiding principles which are: 

  1. Focus on value 
  2. Start where you are 
  3. Progress iteratively with feedback 
  4. Collaborate and promote visibility 
  5. Think and work holistically 
  6. Keep it simple and practical 
  7. Optimise and automate 
A diagram showing ITIL guiding principles

Source: ITIL 4 Adoption Guide | eBook | ServiceNow

Lumifywork (previously Auldhouse training) summarises the principles.

ITIL Polices and Practices

The ITIL guiding principles have a number of implications on both practices and policies. There are number of ways that the MSP are encouraged to improve. The following are taken to be standard best practice for IT professionals:

  1. Serve the client better – seek feedback 
  2. Improve systems – reflect and refine 
  3. Improve efficiency – automate as much as possible 
  4. Share knowledge – use a ticketing system that include a knowledge database 
  5. Work collaboratively – leverage peoples’ skills and specialisations 
  6. Standardise – everyone knows what to expect and how to deal with it.

These are some practical recommendations that come out of the framework. If you look at What Is ITIL? A Beginner’s Guide to the ITIL Process | Coursera you will see that it covers every aspect of business including financial systems.  There is four key ways of working that will be highlighted. They are: 

  1. Collaboration 
  2. Visibility 
  3. Optimisation 
  4. Automation 

1. Collaboration 

As Lumify Work highlights, in the workplace there is an option to work in silos or collaboratively. Given the specialisation that is required in IT and the necessity to interact with other specialisations it is nearly impossible to provide an effective solution to a client without collaboration. 

In the modern workplace it is required to both discuss with other people and exchange ideas as well as keep on track with the project. The teams of the digital age can be located anywhere. While it is good for team dynamics that people should be physically present in the same location on a regular basis, it is possible to have a team in different locations. Some teams are located in different time zones to extend the number of hours that can work on a project while others work remotely to reduce things like office space requirements. “Hot desking”, where only a limited number of desks are provided for the people who need to be in the office and the person uses whatever desk is available, is a solution in the age of working remotely. 

When people in a team collaborate there are three areas that are shared. These are: 

  1. Communication 
  2. Project Management 
  3. Product 
1. Communication 

Communication is crucial to building a better solution for the client. It allows people to use their specialist knowledge and incorporate that into the solution. Effective communication fosters transparency, builds trust, and enables quick problem-solving. It also allows for the sharing of diverse perspectives, which can lead to innovative solutions. Someone's unique perspective can be utilised by the whole team. 

Clear communication is vital but can be difficult when done remotely. Insufficient communication about who is doing what will lead to things like duplication of effort where more than one person has been working on the same task, tasks not being completed, and missed deadlines. These will have the effect of reducing trust, morale, and vision.  An idea that a team member has that is not shared may cause the team to miss out on benefiting from that idea. 

There are many tools available for collaborative communication. The communication tools should, ideally, provide for messaging, video conferencing, file sharing, and project management. This provides the team members with the tools and knowledge that they need to complete their tasks from anywhere. Some popular tools are: 

  • Slack: A messaging app for teams that offers channels, direct messaging, file sharing, and integrations with other tools. 
  • Microsoft Teams: A collaboration platform combining workplace chat, video meetings, file storage, and application integration. 
  • Zoom: A video conferencing tool for virtual meetings, webinars, and online collaboration. 
  • Discord: Originally for gamers, it’s now popular among teams for voice, video, and text communication. 
 2. Project Management 

Teams are typically assembled for specific purposes with a required outcome, such as a document, software program, or system for a client. Since there is a required outcome within a specified time frame, it can be defined as a project. The third criterion of a project is a budget, often specified in available resources. For instance, a project might have two programmers and one tester available for three weeks. These are constraints on the project and form a type of budget. 

Project management is defined as "the application of processes, methods, skills, knowledge, and experience to achieve specific project objectives according to the project acceptance criteria within agreed parameters. Project management has final deliverables that are constrained to a finite timescale and budget" (Association for Project Management, n.d.). Project management involves utilizing those with specific skills and abilities to meet a goal within specific resource constraints. 

Project management is about planning who will do what and when. Key features of project management tools include the ability to identify tasks, allocate them to appropriate people, and track them to completion. Projects often have milestones where specific tasks must be completed before others can commence. Identifying milestone tasks and ensuring their timely completion is essential. Typically, one person is responsible for overseeing the project to ensure everything stays on track and assisting those who might jeopardize the project's success. 
 
Some of the popular project management tools include: 

  • Trello: Uses boards, lists, and cards to help teams organize tasks and collaborate. 
  • Asana: A task and project management tool designed to help teams track their work and manage projects. 
  • Jira: Primarily used by software development teams for issue tracking and agile project management. 
  • Monday.com: A work operating system that enables teams to build custom workflows and collaborate on projects. 
  • Microsoft Planner: A project management tool available within Microsoft Teams. 
3.Product 

Also called a project deliverable, this is whatever the final outcome that the team is working on. It could be a piece of software, a report, or a system. All team members will require access to the product in order to make their contribution. 

At the start of the project the team members will be allocated tasks. When writing reports the individuals used to write their portions and then provide it to someone who would compile them into a final document. With the development of the “online” working environment many tools exist for working collaboratively. With a collaborative word processor all team members can review the work of the other team members and provide feedback or modify their own contribution based on what other team members have done. 

Some popular collaborative tools are: 

  • ClickUp: A robust document collaboration tool that allows real-time editing, version history, and seamless communication. It integrates with other apps and offers features like AI writing assistance and annotations. 
  • Google Docs: Widely used for document editing and sharing, Google Docs enables real-time collaboration and version control. 
  • Microsoft Office 365: Offering many features similar to Google Docs and the ability to be incorporated into other products such as Microsoft Teams. 
  • GitHub: a cloud-based platform where developers can store, share, and collaborate with others allowing them to showcase their work, track changes, and receive feedback from others (About GitHub and Git, n.d.) 

Visibility 

A workgroup talking in an office

Visibility is about openness around who is doing what, and what stage they are up to. It comes down to good communication. The most common form of visibility is documentation. This could be in ticketing, ensuring everybody knows who has responsibility for the ticket and what is happening with it or, within larger projects, something like a Kanban board which visually represents workflows, the current situation, goals, and progress. This way the status can be checked upon without having to get an update from each team member. 

When the team members keep these processes updated, it allows the other team members, and the client, to better understand the situation. Virma (2023), a trainer for the ITIL framework, lists the following benefits: 

  • Operational efficiency: people see better what is happening and how their part in incorporated 
  • Reduces downtime: when milestone tasks are not on track extra resources can be added to get it back on track 
  • Improves service quality: All involved in the provision of the product can see what is required and so work together to ensure that it is delivered on time to the required specifications. 
  • Enhances customer satisfaction: As the client has had timely updates on the progress of the project together with any incidents, requests, or changes the client is receiving what is expected when expected leading to better customer experiences. 

Visibility and open communications create a basis for realistic expectations. Stakeholders can shape their expectations around what they have been told and the processes that exist. For example, if the policies and processes are that the client should be updated every hour when there is a critical incident (one in which the organisation is essentially unable to operate) then the client has visibility of the status of the resolution and once a solution has been identified when operations can resume. 

The same can be said for the basis for assigning priorities. There are typically four levels for responses which are based on the severity of the impact to the site and who is impacted. The levels are: 

  • Critical incident: The site or significant people, such as senior management, are unable to function. 
  • Major incident: A sector or significant functionality is impaired 
  • Incident: A service or functionality is not working as required but there are alternative options available which can be utilised until a solution is identified.
  • Service Request: A modification or change to a service or functionality that can be included in the next scheduled service visit. 

The Service Level Agreement (SLA) will be the basis for the required response time for each level and what resources will be assigned to the incident. 

Optimisation 

Optimisation within ITIL is about maximising the performance of the service provider by ensuring that services are delivered as efficiently and effectively as possible at all stages. A critical component of optimisation is Continual Service Improvement (CSI), which involves ongoing reviews and feedback from various stakeholders to enhance service quality and performance. 

Management reviews the service provided against predetermined KPIs to ensure services are efficient, cost-effective, and aligned with business objectives. Engineers assess the effectiveness of tools, including automation, to meet technical specifications and configurations according to best practices. Additionally, client feedback on their satisfaction with service quality and effectiveness is essential to guide improvements. 

To further enhance this process, ITIL promotes the use of data analytics to gain insights into service performance and identify trends. Automation and standardisation of processes are key to reducing manual effort and minimising errors. Lean and Six Sigma methodologies can help streamline processes and eliminate waste, while Agile and DevOps practices foster collaboration and accelerate service delivery. 

Overall, optimisation within ITIL involves a holistic approach that spans the entire service lifecycle. By continually assessing and improving processes, leveraging advanced tools and methodologies, and incorporating stakeholder feedback, organisations can ensure their IT services are not only efficient and cost-effective but also aligned with evolving business goals and customer expectations. 

Automation 

One of the key practices encouraged within ITIL is to automate tasks whenever feasible. If a task is repetitive, it should be considered for automation to enhance efficiency and effectiveness. Automation provides several benefits, including reducing the opportunity for human error, improving productivity by alleviating tedious and repetitive tasks, reducing costs, enhancing operational efficiency, and offering scalability. 

Automation can be implemented at various levels, from simple batch files to sophisticated systems deploying complete networks using methodologies like Software Defined Networks (SDN). By leveraging automation, organisations can streamline their processes, achieve higher consistency, and focus their human resources on more strategic activities.

Note the screen shots are from Windows 11. Other Operating Systems will appear different. For each version will of Windows will look different but want local users and groups.  

1. On a virtual machine:

  • Open Local users and groups 
  • Right click start icon to get system menu  
  • Open Computer Management 
  • Open “Local Users and Groups” 
  • Click on Users 
    A screenshot of a computer

Description automatically generated

2. Create 3 new users by right clicking on “User” and then “New User…” and following prompts: 

  • “Admin 1” 
  • “Jane Manager”  
  • “Joe Worker” 

3. Click on Groups and create 3 new security groups 

  • System Administrators 
  • Managers 
  • Workers 

4. Add the following:

  • Double click on Systems Administrators group and then using the “add…” button add the Admin 1 user to the group  
  • Double click on Managers group and then using the “add…” but add Jane Manager then close the group 
  • Double click on workers group and add Joe Worker to the group 

5. Right click on the System Administrators group and then click on “Add to group…”.
Using the wizard add it to the Administrators group (NB: You are adding a group to a group) 

6. Open File explorer and navigate to the root of a drive. The images below are for D: drive. If you do not have a d: drive use the C: drive. Create a folder called “Shares”

A screenshot of a computer

Description automatically generated

  1. Using the NTFS Security tab set the permissions.  

  • Administrators group has full control by default 

  • Go into advanced security settings and modify so that Managers group has Modify Permissions (will need to select the new Managers as principal first) 

  • Close the windows and add the Workers group so it has read only permissions 

A screenshot of a computer

Description automatically generated

(NB: Read-only is composed of three read permissions) 

  • Remove all other security groups except SYSTEM (in production needed for functions such as backups). This will require disabling inheritance and converting inherited permissions to explicit permissions. 

  • Log out and log on as Jane Manager and navigate to the shares folder in explorer. Create a new document by right clicking and going “New” then “Text Document” 
  • Open the document and enter some text 
  • Log off and log on as Joe worker 
  • Go to the document created in 8 and open it. Edit the document and try to save it. 
  • Open the Properties of the document and attempt to give yourself modify permissions 
  • Log off and log on as Admin 1 
  • Go to the document created in 8 and view the permissions.  
  • Modify the permissions so that workers have the ability to modify the document 
Based on the above instructions
  • Who can modify the permissions – what security settings were assigned to them? 
  • Who can create and modify files – what security settings were assigned to them?

What can the workers group do with the following privileges:

  • Modify permissions?
  • Modify files and contents?
  • Read files and contents?
When working across a network there is an extra layer of security.  
  • Within the Shares folder create a new folder called “Restricted”.  
  • Verify that the folder has the same security permissions as the Shares folder (they will have been inherited) 
  • Right-click the Restricted folder and select the “Sharing” tab from Properties. Click on “Advanced Sharing…” 
  • Tick “Share this folder”, leave the share name as restricted 
  • Click the permissions button 
  • Verify “Everyone” has “Read” access and click “OK” and keep click “OK” or “Close” to close all the open windows. 
  • Go up a level to So can see the Shares folder and right click on it and open properties 
  • Click the Sharing tab and Advanced Sharing

  • Click the “Share the folder” and leave the Share name as Shares 
  • Click the Permissions button 
  • Give everyone Full control 

A screenshot of a computer

Description automatically generated

  • Close all the open windows, including Explorer. 
  • For each of the users (Admin 1, Jane Manager, and Joe Worker) do the following 
  • Right click the Windows Start icon and select “Run” 

  • Enter the command \\localhost\shares\\localhost\shares

A screenshot of a computer

Description automatically generated

  • Create a new file 
  • Close the window and repeat going to \\localhost\restricted and try to create a new file. 

Once you have done that complete the following by indicating which combinations were able to create a file and which ones were not.

User In Explorer Restricted Shares Shares
Admin 1      
Jane Manger      
Joe Worker      

Discuss in the OS Activity Forum what results people got and why the different users were able to do what they could in each combination.

Module Linking
Main Topic Image
Two people working on laptops in an office
Is Study Guide?
Off
Is Assessment Consultation?
Off