Object Oriented
Object Oriented
development approach that uses object oriented programming (oop) concepts to design, develop, and
implement software systems, oop is a programming paradigm thatfocuses on the creation of objects
that contain data andfunctionality, and interact with each other to perform tasks
• must be defined in such a way that each activity be performed as independently as possible from
other sub-processes
specification of the output to be product • software development process can be viewed as a series of
transformation,
where the output of one transformation become the input of subsequent transformation
transformation analysis)
• translate user's need into system's requirements & responsibilities •how they use system can give
insight into requirements
transformation 2(design)
• begins with problems statement ends with details design that can be
transformation 3(implementation)
refines detailed design into system deployment that will satisfy users needs
assumes requirements are known before design begins assumes requirements remain static over
development cycle
*minimal or no defence
ہارto achieve high quality software we need to be able to answer the following questions
correspondences measures how the delivered system matches the needs of the operational
environment as described in the original requirements statement
oosdlc
• prototype
• component based development
incremental testing
user need
scenarios can be used to help analyst understand requirements • jacobson's concept of use case can be
used to describe the user computer
system interaction
object-oriented design
goal is to design the classes identified during the analysis phase and the
user interface
• additional objects and classes that support implementation of the requirements are also identified and
defined
• first build the object model based on objects and their relationships, then
• guidelines to us oo design
reuse rather than build a new class design a large no of simple classes rather than a small no of complex
glasses,
• fully understand what you have proposed if possible go back & refine the classes
ہیں
prototyping
categories prototype
advantages
0 quick to implement
expected perception of the system vertical prototype is a subset of the system features with complete
functionality
advantages
the prototype can be viewed by end user and management members purpose of view
to demonstrate that the prototype has been developed according to the specification and that the final
specification is appropriate
• to give management and everyone connected with the project the glimpse of what the technology can
provide
implementations
software components
functional units of programs building block offering collection of reusable services
15
can request service form another component or deliver its own services on request delivery of service is
independent components work together to accomplish task
components may depends on one another without interfering with each other
to assembly of pre-built, pre-tested relisable software components that operate with each other
idea of cbd
• after each phase carry out the testing process to detect bugs if any this reduces the overall time and
cost
reusability
what has been done before to solve problem similar to this one?
benefits
increased reliability
⚫ information hiding
reuse strategy
security is a critical aspect of any system development process in today's digital world, systems are
increasingly vulnerable to a wide range of security threats, such as cyber attacks. data breaches, and
other malicious activities therefore, ensuring the security of systems throughout their development life
cycle is essential to prevent potential threats and protect sensitive information
security system development is the process of designing building, and implementing a system that is
secure and protects against potential security threats. this process involves integrating security
measures into the development process from the early stages to ensure that security s embedded into
the systems design, implementation, and maintenance
security system development involves identifying potential security threats and vulnerabilities
evaluating the risk associated with each threat, and implementing appropriate security controls to
minimize the risk these controls can include secure coding practices, secure communication protocols,
authentication and authorization, data privacy and protection. security testing, security monitoring and
detection, incident response planning, and disaster recovery planning
ہاںthe goal of security system development is to create a system that is resilient against potential
security threats, maintains the confidentiality. integrity and availability of data, and protects sensitive
information from unauthorized access, modification, or destruction by incorporating security measures
into the development process, organizations can ensure that their systems remain secure and can
prevent potential security incidents from occurring
security is a critical component in every stage of the sdlc security measures should be implemented
early in the sdlc process to ensure that security requirements are properly integrated into the design
and development of the system additionally ongoing security testing and monitoring must be performed
to ensure that the system remains secure throughout its lifecycle by incorporating security into the sdlc,
organizations can minimize the risk of security breaches and protect sensitive data
security system development is used to design, build, and implement secure systems that protect
against potential security threats, the process of security system development involves integrating
security measures into the development process from the early stages to ensure that security is
embedded into the systems design implementation, and maintenance here are some ways that security
system development is used
19
design secure systems: security system development is used to design systems that are secure by design
this means that security is considered from the beginning of the development process and security
controls are integrated into the systems architecture and design
dentify and mitigate security risks: security system development is used to dentify potential security
risks and vulnerabilities in a system and implement appropriate security controls to mitigate the risks.
this includes measures such as secure coding practices, encryption, authentication and authorization.
intrusion detection and prevention, and regular security testing and monitoring
compliance with regulations and standards, many industries and jurisdictions have regulations and
standards that require organizations to implement security measures to protect sensitive information
security system development is used to ensure that organizations comply with these regulations and
standards
protect sensitive information: security system development is used to protect sensitive information
from unauthorized access, modification or destruction this includes personal information, financial
information, and other sensitive data that, if compromised, can cause significant harm to individuals and
organizations.
• maintain business continuity security system development is used to ensure that systems remain
operational and available in the face of potential security incidents. this helps protect business
continuity and minimizes the impact of security incidents on organizations
21
• firewall a firewall is a security system that is designed to protect a network from unauthorized access,
it is a network security device that monitors and controls incoming and outgoing network traffic based
on predetermined security rules
• secure coding practices secure coding practices are a set of guidelines and best practices that software
developers follow to prevent common security vulnerabilities in software this includes practices such as
input validation data sanitization, and error handling.