PT Module3 -Computing Platform.docx

Full Transcript

**[Module3 : Computing Platform]** INTRODUCTION AND OVERVIEW In this module, we will explore the fundamental building blocks that support and enable the digital world we interact with most of the time. Computing platforms are the backbone of all computing activities, encompassing both the hardware...

**[Module3 : Computing Platform]** INTRODUCTION AND OVERVIEW In this module, we will explore the fundamental building blocks that support and enable the digital world we interact with most of the time. Computing platforms are the backbone of all computing activities, encompassing both the hardware and software that provide the environment for applications to run effectively. We will examine how the computing platforms differ, their unique characteristics, and their role in shaping the software development landscape. - Identify the impact of computing platforms in modern technology and industries. - Describe the roles of frameworks and libraries in software development. - Define virtualization and its benefits **[Introduction to Computing Platforms]** - ***Computing*** refers to any goal-oriented activity requiring, benefiting from, or creating computers. (Computing Curricula 2005). It comprises the development of computer hardware, the use of computer applications, and the development of computer software. - A ***computing platform*** is a comprehensive environment that integrates hardware and software components, facilitating the execution and development of applications. It serves as a critical foundation for all computing activities, influencing how software is designed, developed, and deployed. - **Components of Computing Platforms are:** - *Hardware* -- the physical components of computer systems. It provides the computational power and resources needed for software to function. - *Operating System* - the software that manages hardware resources and provides a user interface and essential services for applications. - *Runtime Environments* - These are platforms that allow specific types of applications to run. - *Development Tools and Libraries* - These are additional software components that support the creation and execution of applications. - *Application Interfaces* - These include APIs (Application Programming Interfaces) and SDKs (Software Development Kits) that allow different software applications and services to communicate and interact with each other. - **Key Characteristics of Computing Platforms:** - *Compatibility -* the ability to run specific applications or software. - *Scalability* - how well the platform can handle increasing loads or scale up resources. - *Security* - features and practices to protect data and applications. - *Performance* - the efficiency and speed at which the platform operates. - *User Interface* - the design and usability of the platform's interaction with users. - Purpose and Use Cases: - Application Development: Provides the environment needed to develop, test, and deploy software applications. - Service Hosting: Hosts web services, databases, and other backend systems. **[IT Infrastructure]** - ***IT Infrastructure*** refers to the comprehensive set of physical and virtual resources that support the operation and management of IT services and solutions within an organization. It encompasses the foundational components required to deliver, manage, and support information technology systems and services. - ***IT infrastructure*** is also a set of firmwide services budgeted by management and comprising both human and technical capabilities. The services a firm can provide to its customers, suppliers, and employees are a direct function of its IT infrastructure. Ideally, this infrastructure should support the firm's business and information systems strategy. New information technologies have a powerful impact on business and IT strategies, as well as the services that can be provided to customers. - Computing platforms provide computing services that connect employees, customers, and suppliers into a coherent digital environment. - Telecommunications services provide data, voice, and video connectivity to employees, customers, and suppliers. - Data management services store and manage corporate data and provide capabilities for analyzing the data. - Application software services provide enterprise-wide capabilities such as enterprise resource planning, customer relationship management, supply chain management, and knowledge management systems. - Physical facilities management services develop and manage the physical installations required for computing, telecommunications, and data management services. - IT management services plan and develop the infrastructure, coordinate with the business units for IT services, manage accounting for the IT expenditure, and provide project management services. - IT standards services provide the firm and its business units with policies that determine which information technology will be used, when, and how. - IT education services that provide training in system use to employees and offer managers' training in how to plan for and manage IT investments. - IT research and development services provide the firm with research on potential future IT projects and investments that could help the firm differentiate itself in the marketplace. - **Components of IT Infrastructure** 1. Computer Hardware Platforms 2. Operating System Platforms 3. Enterprise Software Applications 4. Data management and Storage 5. Networking Platforms 6. Internet Platforms 7. Consulting System Integration Services **[Hardware Platforms]** - ***Hardware platforms*** refer to the physical components and systems that provide the foundation for running software applications and performing computing tasks. - **Components of Hardware Platforms:** - *Central Processing Unit (CPU)*- often referred to as the \"brain\" of the computer, the CPU executes instructions from software and performs the basic arithmetic, logic, and control operations of a computer. - *Storage* - provide long-term storage for data and software. - *Motherboard* - houses the CPU, memory, and other essential components. It also includes connectors for peripheral devices and expansion cards. - *Power Supply Unit (PSU)* - converts electrical power from an outlet into a form usable by the computer\'s internal components. - *Networking Components* - hardware used to connect computers and other devices to a network, including network interface cards (NICs), routers, and switches. - *Expansion Cards* **-** additional cards that can be installed in a computer to add functionality. - *Peripheral Devices* - external devices connected to a computer - *Enclosures and Cooling* - Cases that house and protect the computer components, along with cooling systems like fans and heat sinks to prevent overheating. - *Memory (RAM)* - provides temporary storage for data and instructions that the CPU needs while performing tasks. - *Input Devices* - hardware used to input data into a computer. - *Output Devices* - hardware that outputs data from a computer. - *Systems Bus* - acts as the primary pathway for data transfer among these components, ensuring that they can work together efficiently ![](media/image5.png) - **Examples of Hardware Platforms:** - *Personal Computers (PCs):* Standard desktop or laptop computers used for general computing tasks. - *Servers:* Powerful machines designed to manage and provide services to other computers over a network. - *Mobile Devices:* Smartphones and tablets that have integrated hardware platforms optimized for portability and touch interfaces. - *Embedded Systems:* Specialized hardware platforms used in devices like routers, automotive systems, and industrial machinery, IoT devices - *Workstations:* High-performance computers used for demanding tasks such as graphic design, engineering, and scientific simulations. **[Software Platform]** - ***Software Platforms*** refers to the software layer that runs on the hardware and provides a set of services and interfaces for applications. - Components of Software Platforms: - Operating Systems (examples are Windows, macOS, Linux, Android, iOS) - System Libraries, - Runtime environments (examples are Java Virtual Machine,.NET), and - APIs (Application Programming Interfaces) **[Development Platforms]** - ***Development Platforms are*** environments tailored for software development, often providing tools and frameworks for building applications. - **Components of Development Platforms:** - code editors (Examples: VS Code, Sublime Text) - debugging tools - build systems (Example: Apache Maven, Gradle) - Frameworks and Libraries (Examples: React, Angular, Django) - Integrated Development Environments (IDEs) (Examples: Visual Studio, Eclipse) - Version Control Systems (Examples: Git, GitHub, GitLab) **[Virtualization]** - ***Virtualization*** is the process of creating virtual instances of physical computing resources. It allows multiple virtual environments or virtual machines (VMs) to run on a single physical machine. These VMs operate independently and can run different operating systems and applications. Virtualization is achieved through a software layer called a hypervisor. - ***Hypervisor***: The software layer that enables virtualization. It sits between the hardware and the virtual machines. - ***Virtual Machine (VM)***: An emulation of a physical computer that runs its own operating system and applications. Each VM has its own virtualized hardware (CPU, memory, disk, etc. - ***Guest Operating System***: The operating system running inside the VM. It can be different from the host OS and can include various OS types and versions. - ***Virtualization*** Benefits: - Resource Utilization: Maximizes the use of physical hardware by running multiple VMs on a single machine. - Isolation: VMs are isolated from each other, providing security and stability. - Flexibility: Easy to create, snapshot, and migrate VMs across different physical machines. - Cost Efficiency: Reduces hardware costs by consolidating multiple servers onto fewer physical machines. **[User Experience and Interface Design:]** - **User Experience (UX) Design** ***User Experience (UX) Design*** focuses on the overall experience a user has when interacting with a product or system. It encompasses all aspects of the user\'s interaction with the product, including usability, accessibility, performance, and emotional satisfaction. - **Key Principles of UX Design:** 1. **User-Centered Design**: - **Research and Analysis**: Understanding users\' needs, behaviors, and pain points through methods such as user interviews, surveys, and usability testing. - **Personas**: Creating representative profiles of target users to guide design decisions and ensure the product meets their needs. 2. **Usability**: - **Ease of Use**: Ensuring that the product is easy to navigate and interact with. This **involves** designing intuitive workflows and minimizing learning curves. - **Accessibility**: Designing for users with disabilities, ensuring that the product **is** usable by everyone, including those with visual, auditory, motor, or cognitive impairments. 3. **Information Architecture**: - **Organization**: Structuring and organizing information in a logical and user-friendly **manner**. This involves creating clear navigation systems and categorizing content effectively. - **Sitemaps and Wireframes**: **Tools** used to plan and visualize the layout and structure of the product. 4. **Interaction Design**: - **Feedback**: Providing **clear** feedback to users\' actions (e.g., button clicks, form submissions) to confirm that their input has been received and processed. - **Consistency**: Maintaining a consistent design language and interaction patterns throughout the product. 5. **Emotional Design**: - **Aesthetics**: Crafting visually pleasing and emotionally engaging experiences that resonate with users. - **Delight**: Creating moments of joy or satisfaction to enhance the overall experience and increase user **engagement**. **[Interface Design]** ***Interface Design*** (often referred to as User Interface (UI) Design) deals with the look and feel of the product. It focuses on designing the visual elements and interactive components that users interact with directly. - **Key Elements of Interface Design:** 1. **Visual Design**: - **Layout**: Arranging visual elements on the screen in a way that is logical and aesthetically pleasing. This includes grid systems, spacing, and alignment. - **Typography**: Choosing fonts, sizes, and styles that enhance readability and fit the product\'s tone and brand. - **Color Scheme**: Selecting colors that create visual appeal, ensure readability, and align with the brand's identity. 2. **Interactive Elements**: - **Buttons and Controls**: Designing clickable elements like buttons, sliders, and dropdowns that are easy to find and use. - **Forms and Inputs**: Creating user-friendly forms with clear labels, appropriate input fields, and validation messages. 3. **Consistency and Branding**: - **Design System**: Using a consistent set of design patterns, components, and styles to create a cohesive experience. - **Brand Identity**: Incorporating brand elements (such as logos, colors, and fonts) into the interface to reinforce brand recognition. 4. **Responsive Design**: - **Adaptability**: Ensuring that the interface works well on different devices and screen sizes, including desktops, tablets, and smartphones. - **Fluid Layouts**: Designing flexible layouts that adapt to various screen dimensions and orientations. - **The Relationship Between UX and UI Design** - Interdependence: UX and UI design are closely related, and one often influences the other. Good UI design contributes to a positive UX by making interactions intuitive and aesthetically pleasing, while effective UX design ensures that the interface meets user needs and expectations. - Collaboration: UX and UI designers often work together to ensure that the visual elements align with the overall user experience strategy. UX designers focus on user research, workflows, and usability, while UI designers concentrate on visual aesthetics and interaction details. - **Practices for UX and UI Design** 1. **User Research**: Conduct research to understand user needs, preferences, and pain points. Use this information to inform design decisions. 2. **Prototyping and Testing**: Create prototypes of designs and test them with real users to gather feedback and make improvements before final implementation. 3. **Iterative Design**: Continuously refine and improve designs based on user feedback, testing results, and evolving requirements. 4. **Design Guidelines**: Follow established design guidelines and best practices, such as those provided by platform-specific standards (e.g., Apple\'s Human Interface Guidelines, Google\'s Material Design). 5. **Accessibility**: Ensure that the product is accessible to all users, including those with disabilities. Adhere to accessibility standards and guidelines. **[Exercise: ]** - Exercise 3 Windows Management **[Quiz]** Quiz will be conducted next meeting. - Management Information Systems: Managing the Digital Firm 12th edition, Laudon and Laudon - https://academic.nimal.info/files/FHSS\_PT\_01\_

Use Quizgecko on...
Browser
Browser