Research

Download as docx, pdf, or txt
Download as docx, pdf, or txt
You are on page 1of 9

Assignment #

01
Course Title:
Professional Practices
Course Code:
SE-101
Submitted To:
Umme Ammara
Submitted By:
Faraz Ahmed (23011598-070)
Virsha Arif (23011598-103)
Attia Noor (23011598-072)
Section :
BS-SE-lll (B)
Section 1: Introduction to Professional
Standards in Software Engineering
Question: What are professional
standards, and why are they crucial in
software engineering?
a) Provide a clear definition of professional
standards and their relevance in
software engineering.

Professional standards in software engineering are


comprehensive guidelines and ethical codes that
ensure the development and maintenance of high-
quality software systems. These standards cover
areas such as coding practices, documentation,
project management, testing protocols, and
cybersecurity. They help ensure software
reliability, security, scalability, and performance,
while also promoting transparency and
accountability among engineers. Adherence to
these standards fosters consistency across teams
and projects, minimizes errors, and safeguards
against technical debt. In addition, they establish a
shared foundation for professional competence
and responsibility within the field.

b) Discuss the historical development of


standards and why the need for formal
standards became important as the
software industry evolved.

The formalization of software engineering standards emerged as


the discipline evolved in the 1970s and 1980s. With software
becoming more complex and mission-critical, the industry
recognized the need for standard practices to reduce failure rates
and improve safety. Over the last few decades, these standards
have grown to include advanced concerns such as security,
scalability, and the ethical use of artificial intelligence. Modern
frameworks like ISO/IEC 25010 ensure software quality and
address contemporary challenges in system development.
Reference : ScienceGate.

Section 2: Key Professional Standards


in Software Engineering
Question: What are some widely accepted
professional standards in the field of
software engineering?
a) Identify and explain key standards such
as the IEEE Software Engineering Code of
Ethics, ISO/IEC 25010 (Software Quality
Standards), ISO/IEC 27001 (Information
Security), and CMMI (Capability Maturity
Model Integration).
 IEEE Software Engineering Code of Ethics: This standard
provides ethical guidelines for software engineers,
emphasizing responsibility, quality, and professional
competence. It encourages engineers to prioritize the public
good and avoid harm when developing software systems.
 ISO/IEC 25010 (Software Quality Model): This is a
globally accepted model for software quality that outlines
characteristics such as functional suitability, performance
efficiency, and security. It defines how software systems
should be evaluated based on usability, maintainability, and
reliability
Reference : Monterail , akquinet - Blog

 ISO/IEC 27001 (Information Security): This standard


focuses on information security management. It provides a
framework for protecting sensitive information and ensuring
data confidentiality, integrity, and availability. It is
particularly important for organizations dealing with large
datasets and sensitive customer information
Reference : Monterail

 CMMI (Capability Maturity Model Integration): CMMI


is a process-level improvement training and appraisal
program that helps organizations improve their performance
by guiding them through best practices in development,
acquisition, and services. CMMI emphasizes maturity levels
that indicate how well the organization’s processes are
developed and managed
Reference : akquinet - Blog
b) Discuss how these standards are applied
in the software development lifecycle,
from requirement gathering to
deployment and maintenance.
 Requirement Gathering: ISO/IEC 25010 and
CMMI play a critical role in this phase.
Organizations use the ISO/IEC 25010 quality
model to define the desired characteristics of
the software, such as security and usability, and
CMMI ensures structured, mature processes for
capturing and analyzing requirements.
 Design & Development: During this phase,
ISO 25010’s focus on performance efficiency
and interoperability is crucial. CMMI can also
guide teams in following disciplined
development practices, improving consistency
in design. Ethical concerns from the IEEE Code
of Ethics are considered to avoid harm to users.
 Testing & Deployment: ISO 25010 is applied
to verify software performance and usability,
while ISO 27001 ensures the software's security
and data integrity. Testing practices also align
with CMMI to ensure quality before deployment.
 Maintenance: After deployment, ISO 25010’s
maintainability standards come into play to
ensure the software is adaptable for future
changes. Additionally, ISO 27001 continues to
safeguard against evolving security threats
Reference : Monterail akquinet - Blog
c) Include examples from research papers or case studies
that demonstrate how organizations have benefited
from implementing these standards.
ISO/IEC 25010: According to a case study
mentioned by Monterail, an organization
implementing ISO 25010 improved its system
reliability and usability, ensuring that the software
performed optimally across platforms and
maintained security
Reference : Monterail

CMMI: Many large enterprises have reported


increased process efficiency and reduced time to
market by following CMMI standards, allowing for
better project management and smoother
transitions through development phases
Reference : akquinet - Blog
.
ISO/IEC 27001: A research study highlighted how
an organization achieved improved data security
management and reduced security incidents after
adopting ISO 27001, which is particularly important
for industries such as healthcare and finance
Reference : Monterail akquinet - Blog

Section 3: Ethical Considerations


and Professional Responsibility
Question : How do ethical guidelines
intersect with professional standards in
software engineering?

a)Discuss the importance of ethics in the


software engineering profession,
particularly in areas like data privacy,
security, and fairness (e.g.,
algorithmic bias).
Ethics play a critical role in software engineering, particularly
in sensitive areas such as data privacy, security, and fairness.
Ethical principles ensure that software engineers prioritize the
well-being of users, protect private data, and avoid
discriminatory outcomes in algorithmic decision-making. For
example, algorithmic bias can have real-world implications,
leading to unfair treatment in applications like hiring or
lending decisions. Ethical guidelines ensure that engineers
address these biases, implement privacy protections, and
design systems that are fair and secure.
Reference : Monterail akquinet - Blog.

b)Examine how standards such as the


IEEE Code of Ethics guide engineers in
making ethical decisions and help
prevent issues like data breaches or
unethical uses of software.
The IEEE Code of Ethics guides engineers in making ethical
decisions, particularly in situations where technical and moral
dilemmas overlap. For example, when designing systems that
handle sensitive data, engineers are expected to prevent misuse
and unauthorized access by implementing robust security
measures. The IEEE Code encourages transparency and
accountability, helping prevent data breaches or the unethical use
of software. By adhering to these standards, engineers can avoid
critical errors that might lead to security vulnerabilities or ethical
missteps, such as developing biased algorithms or ignoring user
consent.
Reference : Monterail akquinet - Blog.

c) Include a discussion on high-profile cases where a


lack of adherence to ethical standards led to
significant failures or controversies (e.g., the
Facebook-Cambridge Analytica scandal).
One of the most significant examples of an ethical failure in
software engineering is the Facebook-Cambridge Analytica
scandal. In this case, the improper collection and use of
personal data from millions of Facebook users for political
profiling sparked global controversy. This incident
highlighted the consequences of failing to adhere to ethical
standards concerning user privacy and data protection. Had
the engineers and organizations involved followed stricter
ethical and professional guidelines, the breach of trust and
public backlash could have been avoided.

Reference : Monterail akquinet - Blog.

Research Papers.
Monter
ail Blog
(2023)

Perforc Akquin
e Blog et Blog
(2023) (2023)

ISO
Official IEEE
Websit Xplore
e (2021)
(2023)

You might also like