0% found this document useful (0 votes)
181 views9 pages

Application Development and Emerging Technologies

This document provides an overview of application development methods and client-server architecture. It discusses the waterfall, RAD, and agile development methods. RAD prioritizes rapid prototyping and feedback over long development cycles. Agile focuses on building features iteratively in sprints with customer involvement. The document also explains client-server architecture, where clients request services from a centralized server, and examples like email, file, and web servers. It compares client-server to peer-to-peer networks and discusses computing trends like loose coupling.

Uploaded by

rem cart
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
181 views9 pages

Application Development and Emerging Technologies

This document provides an overview of application development methods and client-server architecture. It discusses the waterfall, RAD, and agile development methods. RAD prioritizes rapid prototyping and feedback over long development cycles. Agile focuses on building features iteratively in sprints with customer involvement. The document also explains client-server architecture, where clients request services from a centralized server, and examples like email, file, and web servers. It compares client-server to peer-to-peer networks and discusses computing trends like loose coupling.

Uploaded by

rem cart
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 9

Application Development and Emerging Technologies

Introduction to Application Development


What is Application Development? – the process of designing, building, and implementing software
applications.
The Basic stages of SDLC are: Planning, Analysis, Design, Construction, Testing, Implementation, Support
3 Categories of Application Development: Waterfall, RAD, Agile
Waterfall
 The key words for the waterfall method of application development are planning and sequence.
 The entire project is mapped out in the planning and analysis stages.
 The customer comes with a very explicit list of features and functionalities for the application.
 This application development method is called waterfall because once you go down, you can’t go back up;
everything flows downward
Waterfall works best as an application development method when:
 You don’t anticipate many changes
 Budgets are fixed for the project
 You’ve done a similar project before
 The customer is very clear and doesn’t plan to be involved much until the end
Rapid Application Development (RAD) Methodology
 development model that prioritizes rapid prototyping and quick feedback over long-drawn-out development
and testing cycles.
 developers can make multiple iterations and updates to a software quickly without starting from scratch each
time.
 This helps ensure that the final outcome is more quality focused and is in alignment with the end-users’
requirements.
Steps in Rapid Application Development
1. Define the Requirements – itself apart from traditional software development models.
– doesn’t require you to sit with end users and get a detailed list of specifications; instead, it asks for a broad
requirement.
– The broad nature of the requirements helps you take the time to segment specific requirements at different
points of the development cycle.
2. Prototype – This is where the actual development takes place.
– developers create prototypes with different features and functions as fast as they can.
– these prototypes are quickly made to work to showcase just the key features.
When Can You Use Rapid Application Development Methodology?
1. When You can Reliably Test Your Prototypes
– Prototypes built through the RAD model depend on the feedback from previous iterations.
– so reliable feedback from dependable sources can be immensely helpful
2. When You’ve Got the Budget
– RAD is relatively inexpensive, but there are some instances where the developments can be expensive due to
RAD characteristics.
– Hiring talented staff means you’ll need to give them appropriate salaries.
– The bright side is, if you’ve got the staff, you can get the idea from concept to end product a lot quicker than
other models
3. When You Need a Project Done Quickly
– If you don’t have the time to go through a long requirement planning and design phase, then RAD software is your
best bet.
– RAD takes an on-the-fly approach, which makes sense for quick development which can change direction on a
dime.
RAD is a great application development method for:
 An experienced team of developers
 A highly engaged customer
 A flexible delivery date
 Pressing business
Agile Methodology - is very similar to RAD, but also includes some changes to make it more suitable to larger projects.
 Agile is iterative but focuses on building features one at a time.
 Each feature is built in a methodical way in the team, but the customer is involved to see the features and sign
off on them before the next feature is developed.
 Agile uses sprints or set of time when a certain feature should be built, tested, and presented.
 tries to incorporate the entire SDLC for a feature into each sprint. This helps to stick to a planned schedule, but
also allow for frequent reviews.
 Agile doesn’t focus on prototypes, but only presents completed work after the sprint is over.
 while the customer is informed more often than waterfall, the customer only ever sees finished work.
 Agile project management methodology is also more team or squad based.
 With RAD, you are working directly with a programmer.
 With Agile, the application development team will also include testers, UX designers, technical writers, and
many others
Agile is a great application development methodology when:
 The project is large enough to break down into several sprints
 You have a lot of specialists who can work on a team together
 The bulk of the project is known ahead of time and can be planned out
 You have good project leaders in place
Web Client-Side Scripting
 A client-side script is a program that is processed within the client browser.
 These kinds of scripts are small programs which are downloaded, compiled, and run by the browser.
 JavaScript is an important client-side scripting language and widely used in dynamic websites.
 The script can be embedded within the HTML or stored in an external file.
 Client-side scripts can often be looked at if the user chooses to view the source code of the page.
 JavaScript code is widely copied and recycled.
Client-Server Architecture
 architecture of a computer network in which many clients (remote processors) request and receive service from
a centralized server (host computer).
 Client computers provide an interface to allow a computer user to request services of the server and to display
the results the server returns.
 Servers wait for requests to arrive from clients and then respond to them.
 Ideally, a server provides a standardized transparent interface to clients so that clients need not be aware of the
specifics of the system (i.e., the hardware and software) that is providing the service.
What’s the Purpose of Client-Server Architecture?
 organizations need a system that makes it easy to collect, process, and act on corporate data, thus increasing
business procedure efficiency and ensuring survivability in the modern world's markets.
 The client-server network model brings a higher level of processing that increases the effectiveness of
workstation power, workgroup empowerment, remote network management, market-driven business, and the
preservation of existing investments.
The Characteristics of Client-Server Architecture
 Client and server machines typically require different hardware and software resources and come from other
vendors.
 The network has horizontal scalability, which increases the number of client machines and vertical scalability, an
then moves the entire process to more powerful servers or a multi-server configuration.
 One computer server can provide multiple services simultaneously, although each service requires a separate
server program.
 Both client and server applications interact directly with a transport layer protocol. This process establishes
communication and enables the entities to send and receive information.
 Both the client and server computers need a complete stack of protocols. The transport protocol employs lower-
layer protocols to send and receive individual messages
What Are Some Examples of Client-Server Architecture?
 Email servers: e-mail has supplanted traditional postal mail as the primary form of corporate communication. E-
mail servers, aided by various brands of dedicated software, send and receive e-mails between parties.
 File servers: If you store files on cloud-based services such as Google Docs or Microsoft Office, you're using a file
server. File servers are centralized locations for file storage and are accessed by many clients.
 Web servers: These high-performance servers host many different websites, and clients access them through
the Internet. Here’s a step-by-step breakdown:
 The client/user uses their web browser to enter the URL they want
 The browser asks the Domain Name System (DNS) for an IP address
 The DNS server finds the desired server’s IP address and sends it to the web browser
 The browser creates either an HTTPS or HTTP request
 The server/producer sends the user the correct files
 The client/user receives the files sent by the server, and the process is repeated as needed
What’s 3-Tier Client-Server Architecture?
1. Presentation layer (or Client Tier): This layer takes care of the User Interface.
2. Application layer (or Business Tier): This layer handles the detailed processing.
3. Database layer (or Data Tier): This layer stores the information.
Client-Server vs. Peer-to-Peer: A Comparison
 Client-server networks need a central file server and consequently cost more to implement; peer-to-peer
doesn’t have that server.
 Client-server networks delineate between users and providers; peers act as both consumers and providers.
 Client-server networks offer more levels of security, making them safer. The endusers are responsible for peer-
to-peer network security.
 The more active nodes in a peer-to-peer network, the more its performance suffers. Client-server networks offer
better stability and scalability. The ideal range for P2P networks is two to eight users.
 Peer-to-peer users can share files faster and easier than on a client-server network.
 If a client-server network server crashes, everything comes to a halt, but if a single node in a P2P network fails,
the rest remains operational.
General Computing Trends
 Loose Coupling - an approach to interconnecting the components in a system or network so that those
components, also called elements, depend on each other to the least extent practicable
 Virtualization is the process of running a virtual instance of a computer system in a layer separate from the
actual hardware. It is often inefficient and costly for organizations to deploy multiple servers to keep pace with
their storage and processing needs.
- virtualization provides the ability to create multiple simulated environments from a single, physical
hardware system.
Types of Virtualization
 Server Virtualization
 Application Virtualization
 Network Virtualization
 Desktop Virtualization
 Storage Virtualization

Serverless computing
 a method of providing backend services on an as-used basis.
 allows users to write and deploy code without the hassle of worrying about the underlying infrastructure.
Advantages of serverless computing
 Lower costs - Serverless computing is generally very cost-effective, as traditional cloud providers of backend
services (server allocation) often result in the user paying for unused space or idle CPU time.
 Simplified scalability - Developers using serverless architecture don’t have to worry about policies to scale up
their code. The serverless vendor handles all of the scaling on demand.
 Simplified backend code - With FaaS, developers can create simple functions that independently perform a
single purpose, like making an API call.
 Quicker turnaround - Serverless architecture can significantly cut time to market. Instead of needing a
complicated deploy process to roll out bug fixes and new features, developers can add and modify code on a
piecemeal basis.

Progressive Web Application – are web apps that use service workers, manifests, and other webplatform features in
combination with progressive enhancement to give users an experience on par with native apps.
Components of PWA
 HTTPS - is imperative that the web app must be delivered through a secure protocol (https),in order to be a
progressive web app (PWA). Hence, obtaining an SSL certificate is a prerequisite for progressive web apps
development.
 Manifest File - is imperative that the web app must be delivered through a secure protocol (https),in order to be
a progressive web app (PWA). Hence, obtaining an SSL certificate is a prerequisite for progressive web apps
development
 Service worker - an intermediary or agent between the browser/application and the server/network, that is
responsible to process network requests i.e. receive browser requests and send it to the server and receive
server response and send it to the browser.
Frameworks of PWA
1. Angular
2. ReactJS
3. Ionic
4. Vue
5. Svelte
Data Intelligence - refers to the practice of using artificial intelligence and machine learning tools to analyze and
transform massive datasets into intelligent data insights, which can then be used to improve services and investments.
- The application of data intelligence tools and techniques can help decision makers develop a better
understanding of collected information with the goal of developing better business processes.
Five (5) Major Components
1. Descriptive Data
2. Prescriptive Data
3. Diagnostic Data
4. Decisive Data
5. Predictive Data
Intelligent Data Analysis (IDA) - is an interdisciplinary study that is concerned with the extraction of useful knowledge
from data, drawing techniques from a variety of fields, such as artificial intelligence, high performance computing,
pattern recognition, and statistics.
Big Data Intelligence - involves the use of Artificial Intelligence and Machine Learning to make big data analytics
actionable and transform big data into insights, and provides engagement capabilities for data scientists, enterprise
analytics strategists, data intelligence warehouse architects, and implementation and development experts.
- Enterprise data intelligence is used in business intelligence operations, analyzing sales, evaluating
inventories, and building customer data intelligence.
Mobile Computing
- refers to the set of IT technologies, products, services and operational strategies and procedures that enable
end users to access computation, information and related resources and capabilities while mobile.
- mobile most commonly refers to access in motion, where the user is not restricted to a given geographic
location.
- mobile may also refer to access in a fixed location via equipment that users can relocate as required but is
stationary while in operation.
Types of Mobile Computing
 Mobile infrastructure. Infrastructure refers to the technical pieces that allow devices to communicate. Mobile
infrastructure includes the wireless networks, wireless protocols and data formats.
 Mobile hardware. The physical mobile device and supporting hardware that users interact with make up the
mobile hardware. This may include cell phones, laptops, tablets, wearable computers and accompanying
chargers and accessories.
 Mobile software. This refers to the applications that run on mobile devices, including mobile operating systems
(OSes) and user-facing applications, such as mobile browsers and e-commerce applications.
 Consumer use. Consumers can use mobile devices like laptops, smartphones, wearables and tablets for an array
of activities, including communication, entertainment, banking, bill paying and health and fitness tracking.
 Remote work. Employees use laptops or tablets to work and collaborate. Delivery personnel use mobile devices
for logistical and management information, and to verify that deliveries were made to the right place. Field
service technicians use mobile devices for field service management, tracking and support capabilities.
 IoT. Consumer and enterprise IoT devices are used to communicate with other devices without human
intervention. For example, self driving cars use sensors, onboard computers and other connected devices to
connect with GPS, weather and other systems to navigate the road safely. Smart sensors are also used in supply
chain management systems to track the progress of goods in transit.
Advantages of Mobile Computing
 Portability. Mobile devices are smaller and more portable than traditional computers, making them easy to
carry and use in a range of contexts. They work disconnected from a power source and without a physical
network connection and when disconnected from the network.
 Affordability. Over time, mobile devices have become less expensive and easier to obtain. Increasingly, people
opt for smartphones and tablets as their primary means of online connectivity. And it is often cheaper to buy a
smartphone than a desktop PC.
 Wireless communications. Mobile devices let users engage in phone, video and various text and instant
messaging applications.
 Data. Mobile devices and applications enable companies to collect more consumer data than was possible with
traditional computing. For example, mobile devices can record geolocation of the device and its user.
Limitations of Mobile Computing
 Power. Despite increasing battery life, power consumption continues to be an issue, and mobile devices must be
recharged regularly.
 Connectivity. While the mobile infrastructure continues to improve, there are areas where signal strength is
poor or nonexistent.
 Data security. Mobile computing raises significant data security vulnerabilities because business users,
especially, may have sensitive data on their devices while traveling or working remotely. Companies must
implement security measures and policies to keep corporate data secure.
 Dependence. The flip side to the convenience of mobile devices is that consumers may become overly reliant on
them, which can lead to compulsive or unhealthy behaviors such as smartphone addiction.
 Distraction. Mobile devices can be distracting and potentially dangerous in a hazardous work environment that
requires the employee's attention, such as a construction site. They pose dangers if used inappropriately while
driving
What is Artificial Intelligence?
Artificial Intelligence is defined as the ability of a digital computer or computer-controlled robot to perform tasks
commonly associated with intelligent beings. AI is also defined as:
 An Intelligent Entity Created By humans
 Capable of Performing Tasks intelligently without being explicitly instructed.
 Capable of thinking and acting rationally and humanely.
Types of Artificial Intelligence
1. Artificial Narrow Intelligence (ANI) - are designed to solve one single problem and would be able to execute a
single task really well. By definition, they have narrow capabilities, like recommending a product for an e-
commerce user or predicting the weather
2. Artificial General Intelligence (AGI) - AGI is still a theoretical concept. It’s defined as AI which has a human-level
of cognitive function, across a wide variety of domains such as language processing, image processing,
computational functioning and reasoning and so on
3. Artificial Super Intelligence (ASI) - system would be able to surpass all human capabilities. This would include
decision making, taking rational decisions, and even includes things like making better art and building
emotional relationships
Blockchain - an approach to interconnecting the components in a system or network so that those components, also
called elements, depend on each other to the least extent practicable.
Cybersecurity as Critical Business Function
- As businesses make bigger leaps towards digital transformation using cloud computing, AI, ML, and other
technologies, cybersecurity is becoming an increasingly critical business function.
- Even if it hasn’t been recognized as a business function, cybersecurity is already an integral business process.
- Therefore, making cybersecurity an operational necessity will position your business strategically and enable you
to mount effective cybersecurity against new and emerging cyber-threats.
- It will also help not just in ensuring the smooth delivery of your products or services to your customers but also
to enhance trust in your brand
Drones
- formally known as unmanned aerial vehicles (UAVs) or unmanned aircraft systems.
- Essentially, a drone is a flying robot that can be remotely controlled or fly autonomously using software-
controlled flight plans in its embedded systems, that work in conjunction with onboard sensors and a global
positioning system (GPS).
Examples of features include:
- various types of cameras with high-performance, zoom and gimbal steady cam and tilt capabilities;
- artificial intelligence (AI) that enables the drone to follow objects;
- augmented reality features that superimpose virtual objects on the drone's camera feed;
- media storage format;
- maximum flight time, which determines how long the drone can remain in the air;
- maximum speeds, including ascent and descent;
- hover accuracy;
- obstacle sensory range;
- altitude hold, which keeps the drone at a fixed altitude; - live video feed; and - flight logs
Internet of things (IoT) - can be described as an extension of the internet and other network connections to different
sensors and devices — or “things” — affording even simple objects, such as lightbulbs, locks, and vents, a higher degree
of computing and analytical capabilities.

Virtual Reality/Augmented Reality


Virtual reality is a simulated 3D environment that enables users to explore and interact with a virtual surrounding in a
way that approximates reality, as it is perceived through the users' senses.
Types of Virtual Reality
- Non-immersive - This type of VR typically refers to a 3D simulated environment that's accessed through a
computer screen. A video game is a good example of nonimmersive VR, as is a website that enables a user to
design a room's décor.
- Semi-immersive - This type of VR offers a partial virtual experience that's accessed through a computer screen
or some type of glasses or headset. A common example of semiimmersive VR is the flight simulator, which is
used by airlines and militaries to train their pilots.
- Fully immersive - This type of VR delivers the greatest level of virtual reality, completely immersing the user in
the simulated 3D world. It incorporates sight, sound and, in some cases, touch. There have even been some
experiments with the addition of smell. Fully immersive VR technology is a field still in its infancy, but it has
made important inroads into the gaming industry and to some extent the healthcare industry, and it's
generating a great deal of interest in others.
Augmented Reality - sometimes referred to as a type of virtual reality, although many would argue that it is a separate
but related field. With augmented reality, virtual simulations are overlaid onto real-world environments in order to
enhance or augment those environments. For example, a furniture retailer might provide an app that enables users to
point their phones at a room and visualize what a new chair or table might look like in that setting.
How can virtual reality be used?
 Training. VR makes it possible to train personnel safely, efficiently and cost-effectively. It can be especially
beneficial to those in high-risk or highly specialized positions, such as firefighters, EMTs, police officers, soldiers,
surgeons or other medical personnel.
 Education. VR offers educational institutions new methods for teaching and learning. It can provide students
with intimate insights into environments that are typically inaccessible, while keeping them engaged in the
learning process. For example, a history teacher might use VR to show students firsthand what life was like in
ancient Greece or China.
 Healthcare. VR has the potential to benefit individuals across the healthcare industry, including patients,
practitioners, and researchers. For example, VR shows promise in treating disorders such as anorexia, anxiety, or
post-traumatic stress disorder (PTSD).
 Retail. VR has already made some inroads into retail, but the industry has only scratched the surface. With the
right apps, customers will be able to try on clothes, decorate their homes, experiment with hair styles, test eye
glasses and in general make more informed decisions about products and services.
 Real estate. VR can benefit real estate in a number of ways. For example, architects can show detailed plans in
3D; home buyers can tour homes virtually; building engineers can tour HVAC systems; and home owners can see
what their remodels would look like.
 Entertainment. VR has already had an impact on gaming, but it also promises to transform the film and
television industries, providing viewers with an immersive experience that puts them right into the scene. VR
could also lead to an entire industry in virtual tourism, making it possible for people to experience places that
they might never be able to see in-person.
3D Printing - is a process that uses computer-aided design, or CAD, to create objects layer by layer. 3D printing is
commonly used in manufacturing and automotive industries, where tools and parts are made using 3D printers.
What Are 3D Printers?
3D printers use CAD to create 3D objects from a variety of materials, like molten plastic or powders. 3D printers can
come in a variety of shapes and sizes ranging from equipment that can fit on a desk to large construction models used in
the making of 3Dprinted houses. There are three main types of 3D printers and each uses a slightly different method.
3D Printing Materials
 Acrylonitrile Butadiene Styrene (ABS) Plastic material that is easy to shape and tough to break. The same
material that LEGOs are made out of.
 Carbon Fiber Filaments Carbon fiber is used to create objects that need to be strong, but also extremely
lightweight.
 Conductive Filaments These printable materials are still in the experimental stage and can be used for printing
electric circuits without the need for wires. This is a useful material for wearable technology.
 Flexible Filaments Flexible filaments produce prints that are bendable, yet tough. These materials can be used to
print anything from wristwatches to phone covers.
 Metal Filament Metal filaments are made of finely ground metals and polymer glue. They can come in steel,
brass, bronze and copper in order to get the true look and feel of a metal object.
 Wood Filament These filaments contain finely ground wood powder mixed with polymer glue. These are
obviously used to print wooden-looking objects and can look like a lighter or darker wood depending on the
temperature of the printer.
3D Printing Uses
• Construction • Automotive • PPE • Medical Equipment • Food • Aerospace • Education
3D Printing Examples
 3D Printed Food
 3D Printed Houses
 3D Printed Organs and Prosthetic Limbs
 3D Printed Aerospace Technology
 3D Printed Cars
 3D Printed Consumer Products
Advantages and Disadvantages of 3D Printing
Advantages of 3D Printing
• 3D Printers Are Affordable • 3D Printers Are Fast • 3D Printers Can Work With Speciality Materials
Disadvantages of 3D Printing
• 3D Printers May Not Provide Enough Strength
• 3D Printers May Have Accuracy Issues
• 3D Printers May Require Post-Processing

Nano Technology
Nanotechnology is science, engineering, and technology conducted at the nanoscale, which is about 1 to 100
nanometers.
- is the use of matter on an atomic, molecular, and supramolecular scale for industrial purposes.
5G Technology
 5G is the fifth generation (that’s what the “G” stands for) of wireless technology.
 Broadly, the first generation of mobile technology, 1G, was about voice—the ability to use a phone in a car, or
away from home. 2G introduced a short-messaging layer. 3G provided the core network speeds needed to
launch the first smartphones. And 4G LTE, with its high data-transfer rates, gave us access to mobile video with
low buffering and gave rise to many of the connected devices and location services that we rely on and enjoy
today.
What's 5G For?
 The first major 5G application is home internet. Both T-Mobile and Verizon are selling home internet services
based on their mid-band and high-band 5G networks.
 Remotely piloting robots and drones is another 5G use we're starting to see. Because 5G has lower latency than
4G, remote pilots can control vehicles from a distance without lag, and because 5G has more bandwidth, they
can get reliable multi-camera video feeds from vehicles to see where they're going.
 Self-driving cars will interact with smart roads, traffic lights, and other vehicles, and may have to offload some of
their processing power to larger, nearby computers—all of this only works fast enough to prevent collisions if
you're on a low-latency 5G network, not on 4G.
Ethical Technology and Trust
In technology we trust
 Artificial intelligence (AI), machine learning, blockchain, digital reality, and other emerging technologies are
integrating into our everyday lives more quickly and deeply than ever.
How can businesses create trust with the technologies their customers, partners, and employees are using?
 Encode your company’s values.
 Build a strong data foundation.
 Harden your defenses.
What’s in a process
 Respect stakeholder privacy.
 Be transparent.
 Respect differing cultural norms.
Empower the people
 Deploy the power of all.
 Teach them to fish.
 Give employees a reason to trust.

You might also like