🎧 New: AI-Generated Podcasts Turn your study notes into engaging audio conversations. Learn more

Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...

Full Transcript

Chapter 1 Introduction to Emerging Technologies th (4 Industrial Revolution) Outline  Evolution of Technologies  Role of Data for EmergingTechnologies  Enabling devices and network for Technologies  Human to Machine Interaction  FutureTrends in Emerging Techno...

Chapter 1 Introduction to Emerging Technologies th (4 Industrial Revolution) Outline  Evolution of Technologies  Role of Data for EmergingTechnologies  Enabling devices and network for Technologies  Human to Machine Interaction  FutureTrends in Emerging Technologies 2 Objective of the Course After completing this chapter, students will be able to: ⚫ Understand the concepts of fourth Industrial Revolution ⚫ Visualize Varieties of technology (hardware or software) that can be developed with the potential to exert considerable impact to socio-economic domains. ⚫ Understand the significance of developing a technology comparable to any platforms. ⚫ Understand the concept of Web and Mobile development ⚫ Understand the general-purpose standards of Application Programing Interface (API) 3 Evolution of Technologies ⚫ Emerging technology (ET) is a term generally used to describe a new technology. ⚫ But it may also refer to the continuing development of existing technology in different areas. ⚫ It can have slightly different meanings when used in different areas, such as media, business, science, or education. 4 Chapter 1. Introduction to EmergingTechnologies Evolution of Technologies ⚫ ET commonly refers to technologies that are currently developing, or that are expected to be available within the next five to ten years. ⚫ ET usually reserved for technologies that are creating or are expected to create significant social or economic effects. ⚫ Technological evolution is a theory of radical transformation of society through technological development. 5 Chapter 1. Introduction to EmergingTechnologies Evolution of Technologies What is the root word of Technology and Evolution? Technology: ⚫ Derived from the Greek word tekhnologia (systematic treatment of an art, craft, or technique) ⚫ tekhno- (see techno-) + -logy. ⚫ treatise on an art or the arts "science of the mechanical and industrial arts" is first recorded in 1859. 6 Chapter 1. Introduction to EmergingTechnologies Evolution of Technologies Evolution: ⚫ evolution means the process of developing by gradual changes. ⚫ This noun is from Latin evolutio, "an unrolling or opening," combined from the prefix e-, "out," plus volvere, "to roll." 7 Chapter 1. Introduction to EmergingTechnologies Currently available emerged technologies ⚫ Artificial Intelligence ⚫ Blockchain ⚫ Augmented Reality andVirtual Reality ⚫ Cloud Computing ⚫ Angular and React ⚫ DevOps ⚫ Internet ofThings (IoT) ⚫ Intelligent Apps (I-Apps) ⚫ Big Data ⚫ Robotic Processor Automation (RPA) 8 Chapter 1. Introduction to EmergingTechnologies Introduction to the Industrial Revolution (IR) ⚫ The Industrial Revolution was a period of major industrialization and innovation that took place during the late 1700s and early 1800s. ⚫ An Industrial Revolution at its core occurs when a society shifts from using tools to make products to use new sources of energy, such as coal, to power machines in factories. 9 Chapter 1. Introduction to EmergingTechnologies Industrial Revolution (IR) ⚫ The revolution started in England, with a series of innovations to make labor more efficient and productive. ⚫ The Industrial Revolution was a time when the manufacturing of goods moved from small shops and homes to large factories. ⚫ This shift brought about changes in culture as people moved from rural areas to big cities in order to work. 10 Chapter 1. Introduction to EmergingTechnologies Industrial Revolution (IR) ⚫ The American Industrial Revolution(Second Industrial Revolution), started sometime between 1820 and 1870. ⚫ The impact of changing the way items was manufactured had a wide reach. ⚫ Industries such as textile manufacturing, mining, glass making, and agriculture all had undergone changes. For example, prior to the Industrial Revolution, textiles were primarily made of wool and were handspun. 11 Chapter 1. Introduction to EmergingTechnologies Industrial Revolution (IR) ⚫ From the first industrial revolution (mechanization through water and steam power) to the mass production and assembly lines using electricity in the second, the fourth industrial revolution will take what was started in the third with the adoption of computers and automation and enhance it with smart and autonomous systems fueled by data and machine learning. 12 Chapter 1. Introduction to EmergingTechnologies Industrial Revolution (IR) Generally, the following industrial revolutions fundamentally changed and transfer the world around us into modern society. ⚫ The steam engine, ⚫ The age of science and mass production, and ⚫ The rise of digital technology ⚫ Smart and autonomous systems fueled by data and machine learning 13 Chapter 1. Introduction to EmergingTechnologies Industrial Revolution (IR) The Most Important Inventions of the Industrial Revolution are: ⚫ Transportation:The Steam Engine,The Railroad, The Diesel Engine,The Airplane. ⚫ Communication.:TheTelegraph.TheTransatlantic Cable.The Phonograph.TheTelephone. ⚫ Industry:The Cotton Gin.The Sewing Machine. Electric Lights. 14 Chapter 1. Introduction to EmergingTechnologies Industrial Revolution (IR) Historical Background (IR 1.0, IR 2.0, IR 3.0) ⚫ The industrial revolution began in Great Britain in the late 1770s before spreading to the rest of Europe. ⚫ The first European countries to be industrialized after England were Belgium, France, and the German states. 15 Chapter 1. Introduction to EmergingTechnologies Industrial Revolution (IR) Historical Background (IR 1.0, IR 2.0, IR 3.0) ⚫ The final cause of the Industrial Revolution was the effects created by the Agricultural Revolution. ⚫ As previously stated, the Industrial Revolution began in Britain in the 18th century due in part to an increase in food production, which was the key outcome of the Agricultural Revolution. 16 Chapter 1. Introduction to EmergingTechnologies Currently available emerged technologies The four types of industries are: ⚫ The primary industry involves getting raw materials e.g. mining, farming, and fishing. ⚫ The secondary industry involves manufacturing e.g. making cars and steel. ⚫ Tertiary industries provide a service e.g. teaching and nursing. ⚫ The quaternary industry involves research and development industries e.g. IT. 17 Chapter 1. Introduction to EmergingTechnologies 18 Industrial Revolution (IR 1.0) ⚫ The IR is described as a transition to new manufacturing processes. ⚫ IR was first coined in the 1760s, during the time where this revolution began. ⚫ The transitions in the first IR included going from hand production methods to machines, the increasing use of steam power ⚫ The development of machine tools and the rise of the factory system. 19 Chapter 1. Introduction to EmergingTechnologies Industrial Revolution (IR 1.0) 20 Chapter 1. Introduction to EmergingTechnologies Industrial Revolution (IR 2.0) ⚫ The Second IR, also known as theTechnological Revolution, began somewhere in the 1870s. ⚫ The advancements in IR 2.0 included the development of methods for manufacturing interchangeable parts and widespread adoption of pre-existing technological systems such as telegraph and railroad networks. ⚫ This adoption allowed the vast movement of people and ideas, enhancing communication. ⚫ Moreover, new technological systems were introduced, such as electrical power and telephones. 21 Chapter 1. Introduction to EmergingTechnologies Industrial Revolution (IR 2.0) 22 Chapter 1. Introduction to EmergingTechnologies Industrial Revolution (IR 3.0) ⚫ IR 3.0 introduced the transition from mechanical and analog electronic technology to digital electronics which began from the late 1950s. ⚫ Due to the shift towards digitalization, IR 3.0 was given the nickname,“Digital Revolution”. ⚫ The core factor of this revolution is the mass production and widespread use of digital logic circuits and its derived technologies such as the computer, handphones and the Internet. 23 Chapter 1. Introduction to EmergingTechnologies Industrial Revolution (IR 3.0) ⚫ These technological innovations have arguably transformed traditional production and business techniques enabling people to communicate with another without the need of being physically present. ⚫ Certain practices that were enabled during IR 3.0 is still being practiced until this current day,for example – the proliferation of digital computers and digital record. 24 Chapter 1. Introduction to EmergingTechnologies Industrial Revolution (IR 3.0) 25 Chapter 1. Introduction to EmergingTechnologies Fourth Industrial Revolution (IR 4.0) ⚫ Now, with advancements in various technologies such as robotics, Internet ofThings (IoT see Figure 1.4), additive manufacturing and autonomous vehicles, the term “Fourth Industrial Revolution” or IR 4.0 was coined by Klaus Schwab, the founder and executive chairman ofWorld Economic Forum, in the year 2016. ⚫ The technologies mentioned above are what you call – cyber- physical systems.A cyber-physical system is a mechanism that is controlled or monitored by computer-based algorithms, tightly integrated with the Internet and its users. 26 Chapter 1. Introduction to EmergingTechnologies Fourth Industrial Revolution (IR 4.0) ⚫ One example that is being widely practiced in industries today is the usage of Computer Numerical Control (CNC) machines.These machines are operated by giving it instructions using a computer. ⚫ Another major breakthrough that is associated with IR 4.0 is the adoption ofArtificial Intelligence (AI), where we can see it being implemented into our smartphones. ⚫ AI is also one of the main elements that give life to AutonomousVehicles and Automated Robots. 27 Chapter 1. Introduction to EmergingTechnologies Fourth Industrial Revolution (IR 4.0) Chapter 1. Introduction to EmergingTechnologies 27 Introduction to EmergingTechnologies Role of Data for Emerging Technologies ⚫ Data is regarded as the new oil and strategic asset since we are living in the age of big data, and drives or even determines the future of science, technology, the economy, and possibly everything in our world today and tomorrow. ⚫ Data have not only triggered tremendous hype and buzz but more importantly, presents enormous challenges that in turn bring incredible innovation and economic opportunities. ⚫ This reshaping and paradigm-shifting are driven not just by data itself but all other aspects that could be created, transformed, and/or adjusted by understanding, exploring, and utilizing data. 29 Chapter 1. Introduction to EmergingTechnologies Role of Data for Emerging Technologies ⚫ The preceding trend and its potential have triggered new debate about data-intensive scientific discovery as an emerging technology, the so-called “fourth industrial revolution,” ⚫ There is no doubt, nevertheless, that the potential of data science and analytics to enable data-driven theory, economy, and professional development is increasingly being recognized. ⚫ This involves not only core disciplines such as computing, informatics, and statistics, but also the broad-based fields of business, social science, and health/medical science. 30 Chapter 1. Introduction to EmergingTechnologies Enabling Devices and Network (Programmable devices) ⚫ In the world of digital electronic systems, there are four basic kinds of devices: ⚫Memory, ⚫Microprocessors, ⚫Logic, and ⚫Networks. 31 Chapter 1. Introduction to EmergingTechnologies Enabling Devices and Network (Programmable devices) ⚫ Memory devices store random information such as the contents of a spreadsheet or database. ⚫ Microprocessors execute software instructions to perform a wide variety of tasks such as running a word processing program or video game. ⚫ Logic devices provide specific functions, including device-to-device interfacing, data communication, signal processing, data display, timing and control operations, and almost every other function a system must perform. Chapter 1. Introduction to EmergingTechnologies 32 Enabling Devices and Network (Programmable devices) ⚫ The network is a collection of computers, servers, mainframes, network devices, peripherals, or other devices connected to one another to allow the sharing of data.An excellent example of a network is the Internet, which connects millions of people all over the world ⚫ Programmable devices usually refer to chips that incorporate field programmable logic devices (FPGAs), complex programmable logic devices (CPLD) and programmable logic devices (PLD).There are also devices that are the analog equivalent of these called field-programmable analog arrays. 33 Chapter 1. Introduction to EmergingTechnologies Enabling Devices and Network (Programmable devices) Why is a computer referred to as a programmable device? Because what makes a computer a computer is that it follows a set of instructions. Many electronic devices are computers that perform only one operation, but they are still following instructions that reside permanently in the unit. 34 Chapter 1. Introduction to EmergingTechnologies Enabling Devices and Network (Programmable devices) Some of Programmable devices are: ⚫ Achronix Speedster SPD60 ⚫ Actel’s ⚫ Altera Stratix IV GT andArria II GX ⚫ Atmel’sAT91CAP7L ⚫ Cypress Semiconductor’s programmable system-on-chip (PSoC) family ⚫ Lattice Semiconductor’s ECP3 ⚫ Lime Microsystems’ LMS6002 ⚫ Silicon BlueTechnologies ⚫ XilinxVirtex 6 and Spartan 6 ⚫ Xmos Semiconductor L series 35 Chapter 1. Introduction to EmergingTechnologies Enabling Devices and Network (Programmable devices) A full range of network-related equipment referred to as Service Enabling Devices (SEDs), which can include: ⚫ Traditional channel service unit (CSU) and data service unit (DSU) ⚫ Modems ⚫ Routers ⚫ Switches ⚫ Conferencing equipment ⚫ Network appliances (NIDs and SIDs) ⚫ Hosting equipment and servers 36 Chapter 1. Introduction to EmergingTechnologies Human to Machine Interaction ⚫ Human-machine interaction (HMI) refers to the communication and interaction between a human and a machine via a user interface. ⚫ Nowadays, natural user interfaces such as gestures have gained increasing attention as they allow humans to control machines through natural and intuitive behaviors 37 Chapter 1. Introduction to EmergingTechnologies HCI-Human to Machine Interaction What is interaction in human-computer interaction? ⚫ HCI (human-computer interaction) is the study of how people interact with computers and to what extent computers are or are not developed for successful interaction with human beings. ⚫ As its name implies, HCI consists of three parts: ⚫ the user, ⚫ the computer itself, and ⚫ the ways they work together. 38 Chapter 1. Introduction to EmergingTechnologies Human to Machine Interaction How do users interact with computers? ⚫ The user interacts directly with hardware for the human input and output such as displays, e.g. through a graphical user interface. ⚫ The user interacts with the computer over this software interface using the given input and output (I/O) hardware. How important is human-computer interaction? ⚫ The goal of HCI is to improve the interaction between users and computers by making computers more user-friendly and receptive to the user's needs. ⚫ The main advantages of HCI are simplicity, ease of deployment & operations and cost savings for smaller set-ups. ⚫ They also reduce solution design time and integration complexity. 39 Chapter 1. Introduction to EmergingTechnologies Human to Machine Interaction Disciplines Contributing to Human-Computer Interaction. ⚫ Cognitive psychology: Limitations, information processing, performance prediction, cooperative working, and capabilities. ⚫ Computer science: Including graphics, technology, prototyping tools, user interface management systems. ⚫ Linguistics. ⚫ Engineering and design. ⚫ Artificial intelligence. ⚫ Human factors. 40 Chapter 1. Introduction to EmergingTechnologies Future Trends in Emerging Technologies Emerging technology trends in 2019 ⚫ 5G Networks ⚫ Artificial Intelligence (AI) ⚫ Autonomous Devices ⚫ Blockchain ⚫ Augmented Analytics ⚫ DigitalTwins ⚫ Enhanced Edge Computing and ⚫ Immersive Experiences in Smart Spaces 41 Chapter 1. Introduction to EmergingTechnologies Future Trends in Emerging Technologies Emerging technology trends in 2024 ⚫ AI Generated Content ⚫ Quantum Computing ⚫ 5G Expansion ⚫ Augmented Reality (AR) in Retail ⚫ IoT in Smart Cities ⚫ Biotechnology in Agriculture ⚫ Autonomous Vehicles ⚫ Blockchain beyond crypto ⚫ Space Tourism 42 Chapter 1. Introduction to EmergingTechnologies Future Trends in Emerging Technologies Some emerging technologies that will shape the future of you and your business ⚫ Emerging technologies are taking over our minds more and more each day.These are very high-level emerging technologies though. ⚫ They sound like tools that will only affect the top tier of technology companies who employ the world’s top 1% of geniuses.This is totally wrong. ⚫ Chatbots, virtual/augmented reality, blockchain, Ephemeral Apps and Artificial Intelligence are already shaping your life whether you like it or not. ⚫ At the end of the day,you can either adapt or …. 43 Chapter 1. Introduction to EmergingTechnologies APPLICATION DEVELOPMENT AND EMERGING TECHNOLOGIES (Chapter 2) Adapted Module from SLSU-CCSIT Main Campus Application Development and Emerging Technology 1 PRE-TEST  What is Application Development?  What is Emerging Technologies?  Site as many emerging technologies as you can.  Does emerging technologies helps the community?Why?and in what way? LEARNING PLAN Intended Learning Outcome: I. Define what are the emerging technologies. II. Identify at least five emerging technologies. III. Explain the usage of each of the five emerging technologies Introduction Application development is the process of designing, building, and implementing software applications. It can be done by massive organizations with large teams working on projects, or by a single freelance developer. Application development defines the process of how the application is made, and generally follows a standard methodology. Emerging technology is a term generally used to describe a new technology, but it may also refer to the continuing development of an existing technology; it can have slightly different meaning when used in different areas, such as media, business, science, or education. The term commonly refers to technologies that are currently developing, or that are expected to be available within the next five to ten years, and is usually reserved for technologies that are creating, or are expected to create, significant social or economic effects. Discussion: In this course, we will understand and learn the following: 1. What are the Emerging Technologies that you need to know about. 2. Lists of Trends of Emerging Technologies. Application Development and Emerging Technology 2 9 Emerging Technologies That You Need To Know About Take a look at the newest emerging technologies that are making the biggest splash in custom application development. Technology continues to advance every day, and as a result, new industries are being created and are impacting every industry in significant ways. Whether you’re the CEO, a manager, an employee, or an aspiring entrepreneur, educating yourself on these new emerging technologies can lead to new advancements in your own business. For virtually every business, staying on top of emerging technologies is key when trying to deliver custom software solutions that meet your customer’s exact needs. Here’s a list of the top 9 emerging technologies you need to know about and a quick overview of their implications for application development. 1. Artificial Intelligence (AI) information and rules for using the information), reasoning (using the rules to reach approximate or definite conclusions), and self-correction. What it means for application development: Though Hollywood seems to villainize AI as the eventual end of human existence, its Artificial Intelligence is the simulation of capabilities are far more helpful than human intelligence processes by machines, destructive. AI advances in the last couple of especially computer systems. These years have opened the door to new business processes include learning (the acquisition of software capabilities. 2. Automation Automation is a method to control or operate a process, system, or device without continuous human involvement. What it means for application development: Automation can be used to mimic previously human-exclusive tasks like writing, speech, and driving. Common applications include standardized graphic design work, agriculture, journalism, and marketing. 3. Robotization Application Development and Emerging Technology 3 Robotization is automating tasks using a eliminate weeds without having to use machine that can perform complex and/or harmful herbicides on the crops. They can repetitive tasks automatically or one that is also be used to fertilize and even harvest controlled by software programs. crops. What it means for application development: Robotics applications are making a huge impact in a wide variety of industries. In the agriculture industry farmers have paired with developers to program robots to 4. 3-D Printing 3D printing or additive manufacturing is a process of making three-dimensional solid objects from a digital file built in a CAD model. What it means for application development: 3-D printing has been on the scene for a while, but its applications are still in the infancy stage. Retail businesses are starting to look into the possibility of using 3-D printers to make tailored attire for consumers. 5. Cryptocurrencies independently of a central bank. A major example is Bitcoin, the world’s first decentralized ledger currency. What it means for application development: With popularity in cryptocurrencies growing among today’s consumer, there is a growing demand for businesses to have the technology to accept them as a form of payment. Cryptocurrency is a digital currency in which encryption techniques are used to regulate the generation of units of currency and verify the transfer of funds, operating 6. IoT (Internet of Things) Businesses can stream incoming data from connected devices, buildings, vehicles, wearables, and other devices that have sensors to optimize systems, help predict failures, improve efficiency, and create better outcomes. What it means for application development: Utilizing the data gathered through IoT, software applications can be used to automate specific operations, improve the The Internet of Things, or IoT, is efficiency of processes, and find new insights revolutionizing day-to-day business decision once the data has been analyzed. Recently, making and information gathering. companies have developed IoT devices that Application Development and Emerging Technology 4 record, analyze, and interpret data to conditions, streamline the purchasing personalize functions to complement your process, and deliver better customer service. day to day processes, manage health 7. Voice Recognition What it means for application development: With firms like Google, Apple, Amazon, and Microsoft embracing voice recognition technology, the market for its usability in all types of software continues to grow. Incorporating the capabilities of voice recognition in your internal and external applications can help create a more fluid and frictionless user experience and open up doors to new markets as the general population becomes accustomed to these Sometimes known as “speech recognition,” technologies. voice recognition is the ability of a machine or program to receive and interpret dictation or Alexa and Siri already need no introduction to to understand and carry out spoken a vast number of people. commands. 8. Autonomous Vehicles be able to navigate without human intervention to a predetermined destination over roads that have not been adapted for its use. What it means for application development: With companies like Tesla, Google, and Uber breaking the surface of autonomous vehicle development, it creates a whole new market for software applications. Autonomous Vehicles are robotic vehicles that are designed to travel between destinations without a human operator. For a vehicle to qualify as fully autonomous, it must 9. Drones remotely controlled or can fly autonomously through software-controlled flight plans in their embedded systems working in conjunction with onboard sensors and GPS. Companies like Amazon recently revealed their plans to use them in same day delivery operations. What it means for application development: The use of drones is impacting major industries, and they are also helping software A drone, in a technological context, is an development teams reach their goals. unmanned aircraft. The aircraft may be Application Development and Emerging Technology 5 Bonus List! Here are a few of the other key technologies making an impact on businesses building custom applications today that should be on your radar. 1. Wearables and Implanted technology 10. Mobile money 2. Real-time language translators 11. Solar power 3. Home automation 12. Electric vehicles 4. Natural-language processing 13. Next-generation batteries 5. Integrated sensors 14. Machine learning 6. Virtual reality 15. Blockchain 7. Augmented reality 16. Quantum computing 8. Mesh networks 17. Intelligence augmentation (IA) 9. Big data analytics Wearable & Implantable Technologies Wearable and implantable technologies sense parameters of various diseases and can either transfer data to a remote center, direct the patient to take a specific action, or automatically perform a function based on what the sensors are reading. Heart Monitoring For patients suffering from infrequent and Cardiac outpatients experiencing unexplained fainting episodes, longer-term arrhythmias who need their heart monitored monitoring is required. for an extended period of time have Medtronic’s Insertable Cardiac Monitor is traditionally worn a Holter monitor for 24 implanted just under the skin for long-term hours, an event recorder used intermittently use, eliminating the wires and recording pads over 24 to 48 hours or a continuous loop of shorter-term solutions. This loop recorder recorder that captures and transmits a few is constantly monitoring signals from the minutes’ worth of recordings. But none of heart, keeping only a few minutes of the these solutions is ideal and clinically recording at a time. When a spell occurs, the significant arrhythmias can be missed. patient or a family member uses a hand-held CardioNet’s Mobile Cardiac Outpatient activator to trigger the device to capture the Telemetry™ (MCOT™) unit is worn period before, during and after the spell continuously for up to 21 days. Based on physician-selected events to be monitored and the chosen reporting speed, the device automatically transmits detected events to the CardioNet Center, which then relays reports to a patient’s physician. Monitoring Parkinson’s to their appointment, the patient has to The severity of symptoms in patients medicate appropriately. So it can be a with Parkinson’s disease can vary greatly challenge to render an accurate assessment between doses and throughout the day. A of a patient’s status and their need for neurologist typically spends just a few medication adjustment. Further confounding minutes with a patient and, to physically get medication decision-making, patients often Application Development and Emerging Technology 6 confuse the tremor of Parkinson’s with drug- severity of Parkinsonian symptoms. Early induced dyskinesias, making self-reports proof-of-concept studies using unreliable. accelerometers on the upper and lower Backed by the Michael J Fox Foundation and limbs were able to detect the severity of both the NIH, researchers at Harvard are tremors and dyskinesias to the same level of exploring ways to monitor motion patterns accuracy as the assessments of neurologists. of Parkinson’s patients at home and infer the Smart Tattoos Continuous monitoring can occur via wireless monitors, wireless patches and articles of clothing. But cost is, of course, an issue—as is patient compliance. Researchers at the University of Illinois— working with colleagues in Singapore—have figured out how to embed flat, flexible, stretchable electronic sensors into temporary The applications are wide-ranging. tattoos that can withstand wrinkling, bending The tattoos could be used to monitor heart and twisting of the skin. These micro- electronics, which are thinner than a human arrhythmias, sleep disorders and the heart activity of premature babies; stimulate hair and applied with water, could be used to provide irritation-free monitoring of electric muscles; and serve as a human-computer signals produced by the heart, brain and interface when applied to the throat by using vibrations from the vocal chords to control a muscles. computer. Additional detectors, transmitters and receivers can also be included on the tattoo. Currently powered via solar cells and a wireless transmitter, the developers are hoping to include a tiny battery. They also hope to someday be able to interpret chemical information from the skin. Dermally-Implanted Sensors Blood chemistry is the focus of researchers at Texas A&M University. They are working on micro-particles that can be injected into the highly-vascular dermis layer of the skin and change color to reflect The microparticle sensor concept: implantation, interrogation, and readout. changes in blood chemistry. These “active” inks are luminescent; imperceptible to the Patients can be monitored using a naked eye and visible only by using a special range of techniques, from wearable devices light. that require patients to actively participate and be compliant, to unobtrusive environmental monitoring and temporary or implantable devices. Application Development and Emerging Technology 7 Wearable and implantable has to be designed in such a way that it is technologies have the potential to provide inexpensive for the payer, unintimidating for significant savings—in both costs and lives. the user and both accurate and reliable for For any device to be successful, however, it everyone. Real-Time Language Translators So, what is real-time translation? (RTT) Real-time translation technology is what it sounds like. It is basically a tech-driven solution that directly translates content from one language to another language. Anyone is able to use RTT for getting a "gist" of translation—making quick fact checks and cobble together communication with someone who talks in a different language. How real-time translation works? The process of real-time translation The system of real-time translation has witnessed remarkable changes over the works on the principles of Artificial years. Where the previous versions of this Intelligence and different kinds of machine efficient and mind-blowing technology first learning, by using advanced pattern- used to change speech into text and then matching software that is able to recognize translate that text into a chosen language, this sounds. Neural networks and deep learning process has shown a shift entirely, thanks to programs are used for correctly analyzing AI technology. Today, translation tools hear what is being said and being understood the words being spoken by examining the regarding the context of words and waveforms of the sound, classifying those sentences. All the information is then portions of the speech that are linked with its processed with the help of encoders. Other translations. The tool then proceeds to than that, the AI translation tool also has an translate the speech into what it finds access to a huge database containing common common in the target language. information, words, and meanings that have previously been taken from millions of other documents. Encounter of the giants: Alexa, Cortana, Siri, and other software in smartphone devices have learned already to understand what a person is saying and applying commands in a single language. Today, they are learning to translate those words into other languages. Below is the list of existing hardware adjacent to real-time translation: 1: Google’s Pixel Bud earbuds work with Android devices which translate between up to 40 languages (Google also offers Google Translate and Word Lens, which translates words in photographs) 2: Waverley Lab’s pilot system consists of two earpieces shared between two people who don’t speak the same language. Similar devices, including Translate One2One, have also been announced 3: iTranslate and Bragi already proposed Dash Pro, which translates in over 40 languages Application Development and Emerging Technology 8 4: Apple’s Siri will soon translate between Mandarin Chinese, U.S. English, French, Italian, Spanish, and German. Home Automation What is home automation? Home automation gives you access to control devices in your home from a mobile device anywhere in the world. The term may be used for isolated programmable devices, like thermostats and sprinkler systems, but home automation more accurately describes homes in which nearly everything — lights, appliances, electrical outlets, heating and cooling systems — are hooked up to a remotely controllable network. From a home security perspective, this also includes your alarm system, and all of the doors, windows, locks, smoke detectors, surveillance cameras and any other sensors that are linked to it. Home automation developments Until fairly recently, automated Home automation is a step toward what is central control of building-wide systems was referred to as the “Internet of Things,” in found only in larger commercial buildings which everything has an assigned IP address, and expensive homes. Typically involving and can be monitored and accessed only lighting, heating and cooling systems, remotely. building automation rarely provided more The first and most obvious than basic control, monitoring and beneficiaries of this approach are “smart” scheduling functions and was accessible only devices and appliances that can be from specific control points within the connected to a local area network, via building itself. Ethernet or Wi-Fi. Remote Control The other main characteristic of we’ve had the ability to truly connect to our cutting-edge home automation is remote home networks while we’re away. monitoring and access. While a limited With the right home automation amount of one-way remote monitoring has system, you can use any Internet-connected been possible for some time, it’s only since device to view and control the system itself the rise in smartphones and tablets that and any attached devices. Home Automation Components What kinds of things can be part of a electronic locks, but also devices such as home automation system? Ideally, anything security sensors which have only two states, that can be connected to a network can be open and closed. automated and controlled remotely. In the Where home automation becomes real world (outside of research labs and the truly “smart” is in the Internet-enabled homes of the rich and famous), home devices that attach to this network and automation most commonly connects simple control it. The classic control unit is the home binary devices. This includes “on and off” computer, for which many of the earlier home devices such as lights, power outlets and automation systems were designed. Energy Efficiency One clear advantage of home sense that it uses a temperature threshold to automation is the unmatched potential for govern the home’s heating and cooling energy savings, and therefore cost savings. system. Your thermostat is already “smart” in the Application Development and Emerging Technology 9 In most cases, thermostats can also be at a minimum during the hours when you’re programmed with different target least likely to benefit from the heating and temperatures in order to keep energy usage cooling. Natural-Language Processing What is natural language processing? Natural language processing (NLP) refers to the branch of computer science—and more specifically, the branch of artificial intelligence or AI—concerned with giving computers the ability to understand text and spoken words in much the same way human beings can. NLP combines computational linguistics—rule-based modeling of human language—with statistical, machine learning, and deep learning models. Together, these technologies enable computers to process human language in the form of text or voice data and to ‘understand’ its full meaning, complete with the speaker or writer’s intent and sentiment. Integrated Sensors What is integrated sensors? An integrated sensor is a small The combined sensing and signal apparatus that is designed to gather processing capabilities make these units ideal important data. These types of sensors are for “turnkey” solutions, where they can be combined or “integrated” with signal installed with very few preparations. processing hardware in one compact device. Integrated sensors can save space and weight This all-in-one approach allows the sensor to compared to other data gathering send signals that can be used immediately, technologies. These types of sensors also without additional processing or reduce the time needed to design a new amplification. device, since the data acquisition method does not need to be re-engineered. Virtual reality What is virtual reality? Virtual reality (VR) means experiencing ago—so that's a kind of virtual reality. In the things through our computers that don't same way, if you listen to ambient really exist. From that simple definition, the instrumental or classical music with your idea doesn't sound especially new. When you eyes closed, and start dreaming about things, look at an amazing Canaletto painting, for isn't that an example of virtual reality—an example, you're experiencing the sites and experience of a world that doesn't really sounds of Italy as it was about 250 years exist? Augmented Reality What is augmented reality? Application Development and Emerging Technology 10 Augmented reality, a crew member sees the external in computer programming, a process of surroundings. Faster computer combining or “augmenting” video or processors have made it feasible to combine photographic displays by overlaying the such data displays with real-time video. images with useful computer-generated data. Augmented reality is commonly used The earliest applications of augmented reality in electronic first-person shooter games to were almost certainly the “heads-up- add environmental, health, and other displays” (HUDs) used in military airplanes information to players’ viewpoints. (Various and tanks, in which instrument panel-type militaries have begun to experiment with information is projected onto the same adding similar overlays to real soldiers using cockpit canopy or viewfinder through which personal head-mounted visors.) Mesh Networks What is a mesh network? A mesh network is a network in which Mesh network topologies create multiple devices -- or nodes -- are linked together, routes for information to travel among branching off other devices or nodes. These connected nodes. This approach increases the networks are set up to efficiently route data resilience of the network in case of a node or between devices and clients. They help connection failure. Larger mesh networks organizations provide a consistent may include multiple routers, switches and connection throughout a physical space. other devices, which operate as nodes. A mesh network can include hundreds of wireless mesh nodes, which allows it to span a large area. Big Data Analytics What is Big Data Analytics? The process of analysis of large capturing, managing, and processing ability volumes of diverse data sets, using advanced of traditional rotational databases. The analytic techniques is referred to as Big Data database required to process big data should Analytics. have low latency that traditional databases Big Data is a term that is used for data don’t have. sets whose size or type is beyond the 4 Types of Big Data Analytics The different types of data require different approaches. This different approach of analytics gives rise to the four different types of Big data analytics. Big data analytics is categorized into four subcategories that are: 1. Descriptive Analytics 2. Diagnostic Analytics 3. Predictive Analytics 4. Prescriptive Analytics Application Development and Emerging Technology 11 1. Descriptive Analytics Descriptive Analytics is considered a the trends to dig into for more detail. This useful technique for uncovering patterns helps in creating reports like a company’s within a certain segment of customers. It revenue, profits, sales, and so on. simplifies the data and summarizes past data Examples of descriptive analytics into a readable form. include summary statistics, clustering, and Descriptive analytics provide insights association rules used in market basket into what has occurred in the past and with analysis. 2. Diagnostic Analytics Diagnostic Analytics, as the name mining, and data recovery, churn reason suggests, gives a diagnosis to a problem. It analysis, and customer health score analysis gives a detailed and in-depth insight into the are all examples of diagnostic analytics. root cause of a problem. In business terms, diagnostic analytics is Data scientists turn to this analytics useful when you are researching the reasons craving for the reason behind a particular leading churn indicators and usage trends happening. Techniques like drill-down, data among your most loyal customers. 3. Predictive Analytics Predictive Analytics, as can be This type of analytics makes use of historical discerned from the name itself, is concerned and present data to predict future events. with predicting future incidents. These future This is the most commonly used form of incidents can be market trends, consumer analytics among businesses. trends, and many such market-related events. 4. Prescriptive Analytics Prescriptive analytics is the most Prescriptive analytics is a combination of data valuable yet underused form of analytics. It is and various business rules. The data of the next step in predictive analytics. The prescriptive analytics can be both internal prescriptive analysis explores several (organizational inputs) and external (social possible actions and suggests actions media insights). depending on the results of descriptive and Examples of prescriptive analytics for predictive analytics of a given dataset. customer retention is the next best action and next best offer analysis. Mobile Money What is mobile money Mobile payment generally refers to mobile to pay for a wide range of services and payment services operated under financial digital or hard goods. regulation and performed from or via a Mobile financial services, known as mobile device. Instead of paying with cash, “mobile money”, allow unbanked people to cheque, or credit cards, a consumer can use a use their phones as a bank account: to Application Development and Emerging Technology 12 deposit, withdraw and transfer money with systems to pay utility bills and pay for goods their handset. People can also use mobile in merchant shops. Solar Power What is solar power? Solar power is the conversion of solar power, or a combination. Concentrated renewable energy from sunlight into solar power systems use lenses or mirrors electricity, either directly using and solar tracking systems to focus a large photovoltaics, indirectly using concentrated area of sunlight into a small beam Electric Vehicles What is electric vehicles? An electric vehicle (EV) is charged by solar panels, or by a vehicle that uses one or more electric converting fuel to electricity using fuel motors for propulsion. It can be powered by cells or a generator). EVs include, but are a collector system, with electricity from not limited to, road and rail vehicles, surface extravehicular sources, or it can be powered and underwater vessels, electric autonomously by a battery (sometimes aircraft and electric spacecraft. Next-Generation Batteries Next-generation batteries take major step toward commercial viability. Lithium-sulfur batteries have been environmentally sustainable to produce than hailed as the next big step in battery current lithium-ion batteries. However, these technology, promising significantly longer batteries don't last as long as their lithium-ion use for everything from cellphones to electric counterparts, degrading over time. vehicles on a single charge, while being more Machine Learning What is machine learning? Machine learning is a branch of artificial insights within data mining projects. These intelligence (AI) and computer science which insights subsequently drive decision making focuses on the use of data and algorithms to within applications and businesses, ideally imitate the way that humans learn, gradually impacting key growth metrics. As big data improving its accuracy. continues to expand and grow, the market Machine learning is an important demand for data scientists will increase, component of the growing field of data requiring them to assist in the identification science. Through the use of statistical of the most relevant business questions and methods, algorithms are trained to make subsequently the data to answer them. classifications or predictions, uncovering key Machine learning methods Machine learning classifiers fall into three primary categories. Supervised machine learning Supervised learning, also known as use of labeled datasets to train algorithms supervised machine learning, is defined by its that to classify data or predict outcomes Application Development and Emerging Technology 13 accurately. As input data is fed into the model, cross validation process to ensure that the it adjusts its weights until the model has been model avoids overfitting or underfitting. fitted appropriately. This occurs as part of the Unsupervised machine learning Unsupervised learning, also known as pattern recognition. It’s also used to reduce unsupervised machine learning, uses the number of features in a model through the machine learning algorithms to analyze and process of dimensionality reduction; cluster unlabeled datasets. These algorithms principal component analysis (PCA) and discover hidden patterns or data groupings singular value decomposition (SVD) are two without the need for human intervention. Its common approaches for this. Other ability to discover similarities and differences algorithms used in unsupervised learning in information make it the ideal solution for include neural networks, k-means clustering, exploratory data analysis, cross-selling probabilistic clustering methods, and more. strategies, customer segmentation, image and Semi-supervised learning Semi-supervised learning offers a larger, unlabeled data set. Semi-supervised happy medium between supervised and learning can solve the problem of having not unsupervised learning. During training, it enough labeled data (or not being able to uses a smaller labeled data set to guide afford to label enough data) to train a classification and feature extraction from a supervised learning algorithm. Blockchain What Is a Blockchain? A blockchain is a distributed database guarantees the fidelity and security of a that is shared among the nodes of a computer record of data and generates trust without network. As a database, a blockchain stores the need for a trusted third party. information electronically in digital format. Blockchains are best known for their crucial One key difference between a typical role in cryptocurrency systems, such database and a blockchain is how the data is as Bitcoin, for maintaining a secure and structured. A blockchain collects information decentralized record of transactions. The together in groups, known as blocks, that innovation with a blockchain is that it hold sets of information. Quantum Computing What is quantum computing? Quantum computing is a type computers are too small to outperform usual of computation that harnesses the collective (classical) computers for practical properties of quantum states, such applications, they are believed to be capable as superposition, interference, of solving certain computational problems, and entanglement, to perform calculations. such as integer factorization (which The devices that perform quantum underlies RSA encryption), substantially computations are known as quantum faster than classical computers. The study of computers. Though current quantum Application Development and Emerging Technology 14 quantum computing is a subfield of quantum information science Intelligence augmentation What is Intelligence Augmentation? Intelligence augmentation, or IA, is focuses on the effective use of information another conceptualization of AI or artificial technology in augmenting human intelligence. It focuses on the assistive roles of intelligence. The systems work to enhance AI with emphasis on the fact that it is meant human intelligence and improve human to enhance human intelligence rather than decision-making functions in some way. replace it. IA was designed as a result of fears and You may also hear it referred to as concerns about AI as a whole. As AI has intelligence amplification, assistive evolved and become more robust, there is a intelligence, machine augmented intelligence, concern that AI technology may impact or cognitive augmentation. The technology human life negatively. ASSESSMENT 1. What does these emerging technologies brings to our daily living? 2. Which of the emerging technologies gives you the interests? And why? 3. In your own opinion how can wearables affects our lives? 4. If you would be given a chance to innovate, what technology would you like to develop? And why? 5. Do you think your technology can help the community?In what field does your technology might be helpful to? 1. Name REFERENCES 1. Striebig, B., Ogundipe, A. A., & Papadakis, M. (2015). Engineering Applications in Sustainable Design and Development (1st ed.). Cengage Learning. 2. Price, M. J. (2019). C# 8.0 and.NET Core 3.0 – Modern Cross-Platform Development: Build applications with C#,.NET Core, Entity Framework Core, ASP.NET Core, and ML.NET using Visual Studio Code, 4th Edition (Illustrated ed.). Packt Publishing. 3. Zhong, X. (2015). Development and Application of Offline Learning System in College Teaching. International Journal of Emerging Technologies in Learning (IJET), 10(5), 35. https://doi.org/10.3991/ijet.v10i5.4794 4. M. (2019). Emerging Technologies for Economic Development (Science, Technology and Innovation Studies) (1st ed. 2019 ed.). Springer. 5. Udell, C., & Woodill, G. (2019). Shock of the New: The Challenge and Promise of Emerging Learning Technologies. Association for Talent Development. 6. Blokdyk, G. (2019). Software Development Life Cycle SDLC A Complete Guide - 2020 Edition. Emereo Pty Limited. 7. Blokdyk, G. (2021). Application Development Process A Complete Guide - 2019 Edition. 5STARCooks. Application Development and Emerging Technology 15 8. Langer, A. M. (2016). Guide to Software Development: Designing and Managing the Life Cycle (2nd ed.). Springer. 9. Percival, H., & Gregory, B. (2020). Architecture Patterns with Python: Enabling Test- Driven Development, Domain-Driven Design, and Event-Driven Microservices (1st ed.). O’Reilly Media. 10. Douglass, B. P. (2021). Agile Model-Based Systems Engineering Cookbook: Improve system development by applying proven recipes for effective agile systems engineering. Packt Publishing. 11. Muller, G. (2021). System Modeling and Analysis: A Practical Approach. Retrieve from SystemModelingAndAnalysisBook.pdf (gaudisite.nl) 12. Wasson, C.S. (2006). System Analysis, Design, and Development Concepts, Principles, and Practices. Retrieve from System Analysis, Design, and Development : Concepts, Principles, and Practices (zu.edu.jo) Internet Sources 13. https://www.qat.com/9-emerging-technologies/ 14. https://phoenixnap.com/blog/software-development-life-cycle 15. https://www.conceptdraw.com/How-To-Guide/uml-diagram-types-list 16. https://kissflow.com/low-code/rad/types-of-application-development- methodologies/#:~:text=Application%20development%20is%20the%20process,by%20a %20single%20freelance%20developer.&text=Application%20development%20is%20clo sely%20linked,life%2Dcycle%20(SDLC). Application Development and Emerging Technology 16 Introduction Software Development Life Cycle (SDLC) is a framework that defines the steps involved in the development of software at each phase. It covers the detailed plan for building, deploying and maintaining the software. SDLC, or Software Development Life Cycle, is a set of steps used to create software applications. These steps divide the development process into tasks that can then be assigned, completed, and measured. SDLC defines the complete cycle of development i.e. all the tasks involved in planning, creating, testing, and deploying a Software Product. In this course, we will understand and learn the following: 1. What is SDLC? 2. Phases of Software Development, Models and Best Practices. 3. Application Development Methodologies. 4. Designing basic SDLC Software Development Life Cycle What is SDLC? - is the application of standard business practices to building software applications. It’s typically divided into six to eight steps: Planning, Requirements, Design, Build, Document, Test, Deploy, Maintain. Some project managers will combine, split, or omit steps, depending on the project’s scope. These are the core components recommended for all software development projects. - is a way to measure and improve the development process. It allows a fine-grain analysis of each step of the process. This, in turn, helps companies maximize efficiency at each stage. As computing power increases, it places a higher demand on software and developers. Companies must reduce costs, deliver software faster, and meet or exceed their customers’ needs. SDLC helps achieve these goals by identifying inefficiencies and higher costs and fixing them to run smoothly. - is a framework defining tasks performed at each step in the software development process. The life cycle define a methodology for improving the quality of software and the overall development process. How the Software Development Life Cycle Works The Software Development Life Cycle simply outlines each task required to put together a software application. This helps to reduce waste and increase the efficiency of the development process. Monitoring also ensures the project stays on track, and continues to be a feasible investment for the company. Many companies will subdivide these steps into smaller units. Planning might be broken into technology research, marketing research, and a cost-benefit analysis. Other steps can merge with each other. The Testing phase can run concurrently with the Development phase, since developers need to fix errors that occur during testing. SLSU-CCSIT Main Campus Software Development Life Cycle Process SDLC is a process that defines the various stages involved in the development of software for delivering a high-quality product. SDLC stages cover the complete life cycle of a software i.e. from inception to retirement of the product. Adhering to the SDLC process leads to the development of the software in a systematic and disciplined manner. Purpose: Purpose of SDLC is to deliver a high-quality product which is as per the customer’s requirement. SDLC has defined its phases as, Requirement gathering, Designing, Coding, Testing, and Maintenance. It is important to adhere to the phases to provide the Product in a systematic manner. For Example, A software has to be developed and a team is divided to work on a feature of the product and is allowed to work as they want. One of the developers decides to design first whereas the other decides to code first and the other on the documentation part. This will lead to project failure because of which it is necessary to have a good knowledge and understanding among the team members to deliver an expected product. Phases included in the Software Development Life Cycle Generally, the software development life cycle (SDLC) comprises the step by step processes of developing the software. SLSU-CCSIT Main Campus Planning In the Planning phase, project leaders evaluate the terms of the project. This includes calculating labor and material costs, creating a timetable with target goals, and creating the project’s teams and leadership structure. Planning can also include feedback from stakeholders. Stakeholders are anyone who stands to benefit from the application. Try to get feedback from potential customers, developers, subject matter experts, and sales reps. Planning should clearly define the scope and purpose of the application. It plots the course and provisions the team to effectively create the software. It also sets boundaries to help keep the project from expanding or shifting from its original purpose. Define Requirements Defining requirements is considered part of planning to determine what the application is supposed to do and its requirements. For example, a social media application would require the ability to connect with a friend. An inventory program might require a search feature. Requirements also include defining the resources needed to build the project. For example, a team might develop software to control a custom manufacturing machine. The machine is a requirement in the process. Design and Prototyping The Design phase models the way a software application will work. Some aspects of the design include: Architecture – Specifies programming language, industry practices, overall design, and use of any templates or boilerplate User Interface – Defines the ways customers interact with the software, and how the software responds to input Platforms – Defines the platforms on which the software will run, such as Apple, Android, Windows version, Linux, or even gaming consoles Programming – Not just the programming language, but including methods of solving problems and performing tasks in the application Communications – Defines the methods that the application can communicate with other assets, such as a central server or other instances of the application Security – Defines the measures taken to secure the application, and may include SSL traffic encryption, password protection, and secure storage of user credentials Prototyping can be a part of the Design phase. A prototype is like one of the early versions of software in the Iterative software development model. It demonstrates a basic idea of how the application looks and works. This “hands-on” design can be shown to stakeholders. Use feedback o improve the application. It’s less expensive to change the Prototype phase than to rewrite code to make a change in the Development phase. SLSU-CCSIT Main Campus Software Development This is the actual writing of the program. A small project might be written by a single developer, while a large project might be broken up and worked by several teams. Use an Access Control or Source Code Management application in this phase. These systems help developers track changes to the code. They also help ensure compatibility between different team projects and to make sure target goals are being met. The coding process includes many other tasks. Many developers need to brush up on skills or work as a team. Finding and fixing errors and glitches is critical. Tasks often hold up the development process, such as waiting for test results or compiling code so an application can run. SDLC can anticipate these delays so that developers can be tasked with other duties. Software developers appreciate instructions and explanations. Documentation can be a formal process, including wiring a user guide for the application. It can also be informal, like comments in the source code that explain why a developer used a certain procedure. Even companies that strive to create software that’s easy and intuitive benefit from the documentation. Documentation can be a quick guided tour of the application’s basic features that display on the first launch. It can be video tutorials for complex tasks. Written documentation like user guides, troubleshooting guides, and FAQ’s help users solve problems or technical questions. Testing It’s critical to test an application before making it available to users. Much of the testing can be automated, like security testing. Other testing can only be done in a specific environment – consider creating a simulated production environment for complex deployments. Testing should ensure that each function works correctly. Different parts of the application should also be tested to work seamlessly together—performance test, to reduce any hangs or lags in processing. The testing phase helps reduce the number of bugs and glitches that users encounter. This leads to a higher user satisfaction and a better usage rate. Testing involves in almost every phase in the modern SDLC methodologies. Once the coding is done, it undergoes testing for quality assurance. Testing includes various functional testing like system testing, acceptance testing, unit testing, integration testing, and also non-functional testing. SLSU-CCSIT Main Campus Deployment In the deployment phase, the application is made available to users. Many companies prefer to automate the deployment phase. This can be as simple as a payment portal and download link on the company website. It could also be downloading an application on a smartphone. Deployment can also be complex. Upgrading a company-wide database to a newly-developed application is one example. Because there are several other systems used by the database, integrating the upgrade can take more time and effort. Operations and Maintenance At this point, the development cycle is almost finished. The application is done and being used in the field. The Operation and Maintenance phase is still important, though. In this phase, users discover bugs that weren’t found during testing. These errors need to be resolved, which can spawn new development cycles. In addition to bug fixes, models like Iterative development plan additional features in future releases. For each new release, a new Development Cycle can be launched. SDLC Models & Methodologies Waterfall The Waterfall Model was the first Process Model to be introduced. It is also referred to as a linear- sequential life cycle model. It is very simple to understand and use. In a waterfall model, each phase must be completed before the next phase can begin and there is no overlapping in the phases. SLSU-CCSIT Main Campus The Waterfall model is the earliest SDLC approach that was used for software development. The waterfall Model illustrates the software development process in a linear sequential flow. This means that any phase in the development process begins only if the previous phase is complete. In this waterfall model, the phases do not overlap. The Waterfall SDLC model is the classic method of development. As each phase completes, the project spills over into the next step. This is a tried-and-tested model, and it works. One advantage of the Waterfall model is each phase can be evaluated for continuity and feasibility before moving on. It’s limited in speed, however, since one phase must finish before another can begin. Agile Agile SDLC model is a combination of iterative and incremental process models with focus on process adaptability and customer satisfaction by rapid delivery of working software product. Agile Methods break the product into small incremental builds. These builds are provided in iterations. Each iteration typically lasts from about one to three weeks. Agile model believes that every project needs to be handled differently and the existing methods need to be tailored to best suit the project requirements. In Agile, the tasks are divided to time boxes (small time frames) to deliver specific features for a release. SLSU-CCSIT Main Campus The AGILE model was designed by developers to put customer needs first. This method focuses strongly on user experience and input. This solves much of the problems of older applications that were arcane and cumbersome to use. Plus, it makes the software highly responsive to customer feedback. Agile seeks to release software cycles quickly, to respond to a changing market. This requires a strong team with excellent communication. It can also lead to a project going off-track by relying too heavily on customer feedback. Iterative In the Iterative model, iterative process starts with a simple implementation of a small set of the software requirements and iteratively enhances the evolving versions until the complete system is implemented and ready to be deployed. An iterative life cycle model does not attempt to start with a full specification of requirements. Instead, development begins by specifying and implementing just part of the software, which is then reviewed to identify further requirements. This process is then repeated, producing a new version of the software at the end of each iteration of the model. In the Iterative development model, developers create an initial basic version of the software quickly. Then they review and improve on the application in small steps (or iterations). This approach is most often used in very large applications. It can get an application up and functional quickly to meet a business need. However, this process can exceed its scope quickly and risks using unplanned resources. DevOps SLSU-CCSIT Main Campus The DevOps security model incorporates operations – the people who use the software – into the development cycle. Like Agile, this seeks to improve the usability and relevance of applications. One significant advantage of this model is the feedback from actual software users on the design and implementation steps. One drawback is that it requires active collaboration and communication. Those additional costs can be offset by automating parts of the development process. V-Model The V-model is an SDLC model where execution of processes happens in a sequential manner in a V-shape. It is also known as Verification and Validation model. The V-Model is an extension of the waterfall model and is based on the association of a testing phase for each corresponding development stage. This means that for every single phase in the development cycle, there is a directly associated testing phase. This is a highly-disciplined model and the next phase starts only after completion of the previous phase. SLSU-CCSIT Main Campus V-shaped model is inspired by the Waterfall model, wherein V stands for Validation and Verification. Each development stage has a parallel testing stage. Testing is done at each and every stage of development. The development team moves to the next stage only after the previous stage is completed. Spiral SDLC The spiral model combines the idea of iterative development with the systematic, controlled aspects of the waterfall model. This Spiral model is a combination of iterative development process model and sequential linear development model i.e. the waterfall model with a very high emphasis on risk analysis. It allows incremental releases of the product or incremental refinement through each iteration around the spiral. SLSU-CCSIT Main Campus The Spiral model is considered to be the most flexible software development life cycle model mostly adopted for full-blown projects. The development process is divided into small stages for easier follow-up. This methodology passes through four different phases-mainly planning, risk analysis, engineering, and evaluation. The spiral model helps to develop a highly customized project. RAD The RAD (Rapid Application Development) model is based on prototyping and iterative development with no specific planning involved. The process of writing the software itself involves the planning required for developing the product. Rapid Application Development focuses on gathering customer requirements through workshops or focus groups, early testing of the prototypes by the customer using iterative concept, reuse of the existing prototypes (components), continuous integration and rapid delivery. SLSU-CCSIT Main Campus Rapid application development is a software development methodology that uses minimal planning in favor of rapid prototyping. A prototype is a working model that is functionally equivalent to a component of the product. In the RAD model, the functional modules are developed in parallel as prototypes and are integrated to make the complete product for faster product delivery. Since there is no detailed preplanning, it makes it easier to incorporate the changes within the development process. RAD projects follow iterative and incremental model and have small teams comprising of developers, domain experts, customer representatives and other IT resources working progressively on their component or prototype. The most important aspect for this model to be successful is to make sure that the prototypes developed are reusable. Big Bang The Big Bang model is an SDLC model where we do not follow any specific process. The development just starts with the required money and efforts as the input, and the output is the software developed which may or may not be as per customer requirement. This Big Bang Model does not follow a process/procedure and there is a very little planning required. Even the customer is not sure about what exactly he wants and the requirements are implemented on the fly without much analysis. Usually this model is followed for small projects where the development teams are very small. SLSU-CCSIT Main Campus The Big Bang Model comprises of focusing all the possible resources in the software development and coding, with very little or no planning. The requirements are understood and implemented as they come. Any changes required may or may not need to revamp the complete software. This model is ideal for small projects with one or two developers working together and is also useful for academic or practice projects. It is an ideal model for the product where requirements are not well understood and the final release date is not given. Software Prototype The Software Prototyping refers to building software application prototypes which displays the functionality of the product under development, but may not actually hold the exact logic of the original software. Software prototyping is becoming very popular as a software development model, as it enables to understand customer requirements at an early stage of development. It helps get valuable feedback from the customer and helps software designers and developers understand about what exactly is expected from the product under development. SLSU-CCSIT Main Campus Prototype is a working model of software with some limited functionality. The prototype does not always hold the exact logic used in the actual software application and is an extra effort to be considered under effort estimation. Prototyping is used to allow the users evaluate developer proposals and try them out before implementation. It also helps understand the requirements which are user specific and may not have been considered by the developer during product design. Following is a stepwise approach explained to design a software prototype. Basic Requirement Identification This step involves understanding the very basics product requirements especially in terms of user interface. The more intricate details of the internal design and external aspects like performance and security can be ignored at this stage. Developing the initial Prototype The initial Prototype is developed in this stage, where the very basic requirements are showcased and user interfaces are provided. These features may not exactly work in the same manner internally in the actual software developed. While, the workarounds are used to give the same look and feel to the customer in the prototype developed. Review of the Prototype The prototype developed is then presented to the customer and the other important stakeholders in the project. The feedback is collected in an organized manner and used for further enhancements in the product under development. Revise and Enhance the Prototype The feedback and the review comments are discussed during this stage and some negotiations happen with the customer based on factors like – time and budget constraints and technical feasibility of the actual implementation. The changes accepted are again incorporated in the new Prototype developed and the cycle repeats until the customer expectations are met. Prototypes can have horizontal or vertical dimensions. A Horizontal prototype displays the user interface for the product and gives a broader view of the entire system, without concentrating on internal functions. A Vertical prototype on the other side is a detailed elaboration of a specific function or a sub system in the product. The purpose of both horizontal and vertical prototype is different. Horizontal prototypes are used to get more information on the user interface level and the business requirements. It can even be presented in the sales demos to get business in the market. Vertical prototypes are technical in nature and are used to get details of the exact functioning of the sub systems. For example, database requirements, interaction and data processing loads in a given sub system. SLSU-CCSIT Main Campus Software Prototyping - Types There are different types of software prototypes used in the industry. Following are the major software prototyping types used widely − Throwaway/Rapid Prototyping Throwaway prototyping is also called as rapid or close ended prototyping. This type of prototyping uses very little efforts with minimum requirement analysis to build a prototype. Once the actual requirements are understood, the prototype is discarded and the actual system is developed with a much clear understanding of user requirements. Evolutionary Prototyping Evolutionary prototyping also called as breadboard prototyping is based on building actual functional prototypes with minimal functionality in the beginning. The prototype developed forms the heart of the future prototypes on top of which the entire system is built. By using evolutionary prototyping, the well-understood requirements are included in the prototype and the requirements are added as and when they are understood. Incremental Prototyping Incremental prototyping refers to building multiple functional prototypes of the various sub- systems and then integrating all the available prototypes to form a complete system. Extreme Prototyping Extreme prototyping is used in the web development domain. It consists of three sequential phases. First, a basic prototype with all the existing pages is presented in the HTML format. Then the data processing is simulated using a prototype services layer. Finally, the services are implemented and integrated to the final prototype. This process is called Extreme Prototyping used to draw attention to the second phase of the process, where a fully functional UI is developed with very little regard to the actual services. Software Prototyping - Application Software Prototyping is most useful in development of systems having high level of user interactions such as online systems. Systems which need users to fill out forms or go through various screens before data is processed can use prototyping very effectively to give the exact look and feel even before the actual software is developed. Software that involves too much of data processing and most of the functionality is internal with very little user interface does not usually benefit from prototyping. Prototype development could be an extra overhead in such projects and may need lot of extra efforts. Best Practices Of Software Development In addition to the models and stages of software development, there are a few other helpful practices. These can be applied to part or all of the development cycle. Source Control Source Control is a security plan to secure your working code. Implement Source Control by keeping the code in a single location, with secure and logged access. This could be a physical location where files are stored and accessed in a single room in the building. It could also be a virtual SLSU-CCSIT Main Campus space where users can log in with an encrypted connection to a cloud-based development environment. Source Control applications include a change management system to track work done by individuals or teams. As with any storage, use a backup system to record development progress in case of a disaster. Continuous Integration Continuous Integration evolved out of a case of what not to do. CI works to make sure each component is compatible through the whole development cycle. Before CI, different teams would build their own projects independently. This created significant challenges at the end when developers stitched the application together. Continuous Integration ensures all teams use similar programming languages and libraries, and helps prevent conflicts and duplicated work. SDLC Management Systems A software development cycle management system works to control and manage each step of the development cycle. Management Systems add transparency to each phase and the project as a whole. They also add analytics, bug-tracking, and work management systems. These metrics or KPI’s can be used to improve parts of the cycle that aren’t running efficiently. ASSESSMENT Test I 1. In your own opinion, why you should learn software development life cycle? 2. Do you think learning SDLC helps you improve your software development? Why? 3. Which of the model would you prefer to use in software development? Why? 4. Define is the difference between waterfall and agile? 5. How software development life cycle works? Test II 1. Let see, you have your own IT company and you want your company to be unique. How would you create your own software development life cycle? Enumarate development processes and give an explaination to each of the process. 2. Draw a diagram of your own software development life cycle.  POST TEST 1. What are the different types of models? 2. A model is based on prototyping and iterative development with no specific planning involved. 3. Also called as breadboard prototyping is based on building actual functional prototypes with minimal functionality in the beginning The process of analysis of large volumes of diverse data sets, using advanced analytic techniques. SLSU-CCSIT Main Campus 4. What are the types of software prototyping? 5. In addition to the models and stages of software development, there are a few other helpful practices. These can be applied to part or all of the development cycle. What are they? 6. It is a security plan to secure your working code? 7. Refers to building software application prototypes which displays the functionality of the product under development, but may not actually hold the exact logic of the original software. 8. It evolved out of a case of what not to do? 9. It was the first Process Model to be introduced. It is also referred to as a linear-sequential life cycle model. 10. It is a way to measure and improve the development process? 11. Name REFERENCES 1. Striebig, B., Ogundipe, A. A., & Papadakis, M. (2015). Engineering Applications in Sustainable Design and Development (1st ed.). Cengage Learning. 2. Price, M. J. (2019). C# 8.0 and.NET Core 3.0 – Modern Cross-Platform Development: Build applications with C#,.NET Core, Entity Framework Core, ASP.NET Core, and ML.NET using Visual Studio Code, 4th Edition (Illustrated ed.). Packt Publishing. 3. Zhong, X. (2015). Development and Application of Offline Learning System in College Teaching. International Journal of Emerging Technologies in Learning (IJET), 10(5), 35. https://doi.org/10.3991/ijet.v10i5.4794 4. M. (2019). Emerging Technologies for Economic Development (Science, Technology and Innovation Studies) (1st ed. 2019 ed.). Springer. 5. Udell, C., & Woodill, G. (2019). Shock of the New: The Challenge and Promise of Emerging Learning Technologies. Association for Talent Development. 6. Blokdyk, G. (2019). Software Development Life Cycle SDLC A Complete Guide - 2020 Edition. Emereo Pty Limited. 7. Blokdyk, G. (2021). Application Development Process A Complete Guide - 2019 Edition. 5STARCooks. 8. Langer, A. M. (2016). Guide to Software Development: Designing and Managing the Life Cycle (2nd ed.). Springer. 9. Percival, H., & Gregory, B. (2020). Architecture Patterns with Python: Enabling Test- Driven Development, Domain-Driven Design, and Event-Driven Microservices (1st ed.). O’Reilly Media. 10. Douglass, B. P. (2021). Agile Model-Based Systems Engineering Cookbook: Improve system development by applying proven recipes for effective agile systems engineering. Packt Publishing. 11. Muller, G. (2021). System Modeling and Analysis: A Practical Approach. Retrieve from SystemModelingAndAnalysisBook.pdf (gaudisite.nl) 12. Wasson, C.S. (2006). System Analysis, Design, and Development Concepts, Principles, and Practices. Retrieve from System Analysis, Design, and Development : Concepts, Principles, and Practices (zu.edu.jo) Internet Sources 13. https://www.qat.com/9-emerging-technologies/ SLSU-CCSIT Main Campus 14. https://phoenixnap.com/blog/software-development-life-cycle 15. https://www.conceptdraw.com/How-To-Guide/uml-diagram-types-list 16. https://kissflow.com/low-code/rad/types-of-application-development- methodologies/#:~:text=Application%20development%20is%20the%20process,by%20a %20single%20freelance%20developer.&text=Application%20development%20is%20clo sely%20linked,life%2Dcycle%20(SDLC). SLSU-CCSIT Main Campus

Use Quizgecko on...
Browser
Browser