Professional Documents
Culture Documents
Unit 10 Advanced Topics in Software Engineering
Unit 10 Advanced Topics in Software Engineering
Unit 10 Advanced Topics in Software Engineering
Prepared By
Prof. Mital Sarvaiya
Computer Engineering
BHGCET - Rajkot
Topics
CBSE Activities
1) Component Qualification
• Component qualification ensures that a component will
• Perform the function required
• Will properly “fit” into the architectural style specified for the system
• Will have the quality characteristics (e.g., performance, reliability,
usability) that are required for the application
2) Component Adaptation
Domain engineering creates a library of components that can be easily
integrated into an application architecture
The implication of “easy integration” is that
1. Consistent methods of resource management have been implemented for
all components in the library
2. Common activities such as data management exist for all components
3. Interfaces within the architecture and with the external environment have
been implemented in a consistent manner
Component-Based Software Engineering Continue…
3) Component Composition
Architectural style again plays a key role in the way in which software
components are integrated to form a working system
4) Component Update
• When systems are implemented with a third party components, update
is complicated.
• i.e., the organization that developed the reusable component may be
outside the control of the software engineering organization
Client/Server Software Engineering, Web Engineering
Web-Engineering
• Web engineering is the process used to create high-quality Web Apps
• Web engineering is not a perfect clone of software engineering, but it borrows
many of software engineering’s fundamental concepts and principles,
emphasizing the same technical and management activities
• Web Engineering (WebE) is concerned with the establishment and use of
sound scientific, engineering and management principles
• It is a systematic approach to the successful development, deployment and
maintenance of high quality Web-based systems and applications
Web Engineering Process
• The characteristics of Web-based applications have a impact on the WebE process
• Immediacy and continuous evolution require an iterative, incremental process
model that produces WebApp releases in rapid sequence
• The network-intensive nature of applications in this domain suggests a
population of users that is diverse and an application architecture that can be
highly specialized
• Because WebApps are often content driven with an emphasis on aesthetics
• It is likely that parallel development activities will be scheduled within the
WebE process and involve a team of both technical and non-technical people
Client/Server Software Engineering, Web Engineering Continue…
Reengineering is most
commonly defined as
the redesign of
business processes—
and the associated
systems and
organizational
structures—to achieve a
dramatic improvement
in business
performance. ... It is the
examination and change
of five components of
the business strategy,
process, technology,
organization, and
culture.
Reengineering Continue…
Computer-Aided Software Engineering
Various tools are incorporated in CASE and are called CASE tools, which are used
to support different stages and milestones in a software development life cycle.
Computer-Aided Software Engineering Continue…
• 1. Low-Code/No-Code Platforms
• 2. Machine Learning Operations
• 3. User Experience Design
• 4. DevSecOps
• 5. Near-Perfect Digital Experiences
• 6. Native Mobile-Development Languages
• 7. Progressive Web Apps
• 8. The API Economy
• 9. A ‘Shift Left’ Approach To Security And Compliance
• 10. Balanced Development Automation
Emerging Trends in software Engineering Continue…