You are on page 1of 6

DCIT26 APPLICATION DEVELOPMENT AND EMERGING TECHNOLOGIES

DIONES, MELISSA JANE C.

BSIT-4J 201811049

Activity 1:

1. What is Computer Software?


• Definition
- Computer software, also known as just "software," refers to a set of
instructions or programs that tell a computer what to do. Software is
a non-tangible component of a computer system that helps to
operate, control, and manage the hardware (physical components) of
a computer.
- There are two main categories of software: system software and
application software. System software includes the operating system
(OS), device drivers, utilities, and other programs that help to
manage and control the computer hardware. Application software,
on the other hand, is designed to perform specific tasks or functions,
such as word processing, video editing, or database management.
- Overall, software is a crucial component of any computer system,
and without it, the hardware would be unable to perform useful
tasks.
• Process and Methods
- The process and methods of computer software development
involve a series of steps and techniques used to design, create, test,
and maintain software. These steps include:
- Requirements gathering: This involves gathering and documenting
the user's requirements for the software. This step involves
understanding the problem that the software is intended to solve,
the goals of the software, and the needs of the users.
DCIT26 APPLICATION DEVELOPMENT AND EMERGING TECHNOLOGIES

- Design: This involves creating a detailed plan for the software,


including its architecture, data structures, algorithms, and user
interface.
- Implementation: This involves writing the code for the software
based on the design. This step includes programming, debugging, and
testing.
- Testing: This involves verifying that the software meets the
requirements and functions correctly. This step involves different
types of testing, such as unit testing, integration testing, and system
testing.
- Deployment: This involves releasing the software to users or
customers. This step includes installation, configuration, and
documentation.
- Maintenance: This involves fixing bugs, adding new features, and
updating the software to ensure that it continues to meet the user's
needs.
- There are various methods and models of software development that
can be used to manage these steps, such as Waterfall, Agile, and
DevOps. These methods vary in their approach to planning, design,
implementation, and testing, and can be used to optimize the
development process based on the specific needs of the project.
• Application
- Computer software has countless applications in a wide range of
industries and fields. Here are some of the most common
applications of computer software:
- Business: Software is widely used in businesses for accounting,
inventory management, payroll, customer relationship management,
and other functions.
- Education: Software is used in education for teaching and learning
purposes, such as educational games, simulation programs, and
learning management systems.
- Healthcare: Software is used in healthcare for patient record-
keeping, billing, medical imaging, and other purposes.
DCIT26 APPLICATION DEVELOPMENT AND EMERGING TECHNOLOGIES

- Entertainment: Software is used in the entertainment industry for


game development, video editing, special effects, and other
applications.
- Communication: Software is used for communication purposes, such
as email clients, instant messaging, video conferencing, and social
media platforms.
- Scientific research: Software is used in scientific research for
modeling, simulation, data analysis, and visualization.
- Engineering and design: Software is used for engineering and design
purposes, such as computer-aided design (CAD) software, 3D
modeling, and product lifecycle management.
- Security: Software is used for security purposes, such as antivirus
programs, firewalls, and encryption software.
- Overall, computer software has a vast range of applications in various
industries and fields, and its use is becoming increasingly essential in
our daily lives.

2. What is Object Oriented Analysis and Design?


- Object-oriented analysis involves identifying and modeling the
objects that make up a system, as well as their relationships and
behaviors. This involves analyzing the requirements of the system
and identifying the objects that are necessary to meet those
requirements. Object-oriented analysis also involves identifying the
attributes and methods of each object and specifying their
interactions with other objects.
• Concepts and Terminology
- Here are some of the key concepts and terminologies used in object-
oriented analysis and design:
- Object: An object is a software entity that has a state (i.e., attributes)
and behavior (i.e., methods) that can interact with other objects.
- Class: A class is a template or blueprint for creating objects that share
similar attributes and methods.
DCIT26 APPLICATION DEVELOPMENT AND EMERGING TECHNOLOGIES

- Inheritance: Inheritance is a mechanism by which one class can


inherit properties and behaviors from another class.
- Polymorphism: Polymorphism is the ability of objects to take on
different forms or behaviors depending on the context in which they
are used.
- Encapsulation: Encapsulation is the principle of hiding the
implementation details of an object and exposing only its public
interface.
- Abstraction: Abstraction is the process of identifying the essential
characteristics of an object and ignoring the non-essential ones.
- Association: Association is a relationship between two objects in
which they are connected, but without any implied ownership or
containment.
- Composition: Composition is a relationship between two objects in
which one object is a part of another object and cannot exist without
it.
- Aggregation: Aggregation is a relationship between two objects in
which one object has a reference to another object, but the
referenced object can exist independently.
- Interface: An interface is a contract that specifies the methods that a
class must implement, without specifying how those methods are
implemented.
These concepts and terminologies are fundamental to object-
oriented analysis and design and are used to model software systems
and design software solutions based on objects and their
interactions.
DCIT26 APPLICATION DEVELOPMENT AND EMERGING TECHNOLOGIES

3. Make a simple diagram explains System Development Life Cycles about


Software Development Processes.

PLANNING ANALYSIS

SYSTEM
DEVELOPMENT LIFE
MAINTENANCE CYCLES DESIGN

IMPLEMENTATION DEVELOPMENT

4. What is Software Engineering and provide a minimum of 3 Myths and


Misconceptions.
- Software engineering is the systematic application of engineering
principles to design, develop, test, maintain, and improve software
systems. It is a discipline that involves applying rigorous and
structured approaches to software development, with the aim of
producing high-quality, reliable, and maintainable software.
- Here are three myths and misconceptions about software
engineering:
- Myth: Software engineering is all about writing code.
DCIT26 APPLICATION DEVELOPMENT AND EMERGING TECHNOLOGIES

- Reality: Software engineering involves much more than just writing


code. It involves a wide range of activities, such as requirements
gathering, design, testing, and maintenance, as well as project
management, communication, and collaboration with stakeholders.
- Myth: Software engineering is only for large companies and complex
projects.
- Reality: Software engineering principles can be applied to projects of
any size, from small projects to large-scale enterprise systems. Even a
small project can benefit from a systematic and structured approach
to software development.
- Myth: Software engineering is a one-time activity, and once the
software is developed, the job is done.
- Reality: Software engineering is an ongoing process that involves
continuous improvement and maintenance of the software system.
Software systems need to be regularly updated and maintained to
address bugs and security issues, as well as to adapt to changing user
needs and requirements.

Rubrics Deadline
No submission Incomplete Complete
0 pt. 50 pts. 100 pts. March 29, 2023

You might also like