About This Chapter
Emerging Technologies in Software Engineering - Chapter Summary
This resource helps you study emerging technologies in software engineering. You'll view lessons on distributed computing, SaaS and client-server networks, among other topics. Each lesson is accompanied by a short quiz to assess your understanding. Feel free to work at your own pace and go back as many times as needed. Once you complete this chapter, you should be ready to:
- Define component-based software engineering
- Outline the uses and some examples of middleware
- Identify the importance of architectural patterns for distributed systems
- Explain the benefits of SaaS
- Detail the advantages and disadvantages of service-oriented architecture
- Provide the definition and process of service engineering
- Describe sociotechnical systems (STS) theory
- Give the characteristics of conceptual models
- Outline the process of project procurement management
- Explain the challenges of system of systems (SoS)
1. Component-Based Software Engineering (CBSE): Definition & Component Models
In this lesson, we'll take a look at Component-Based Software Engineering, what it is, the basic elements of an ideal component model, and a general overview of the process. At the end, you should have a good understanding of this fundamental process.
2. What is Distributed Computing? - Principles, Environments & Applications
Some computing tasks require the power of multiple computers. Learn how distributed computing coordinates tasks performed on multiple computers at the same time.
3. Middleware: Definition, Uses & Example
In this lesson, we will examine the concept of middleware. We will define the term, discuss some practical uses for middleware, and give some examples.
4. What Is a Client-Server Network? - Definition, Advantages & Disadvantages
A client-server network is a central computer, also known as a server, which hosts data and other forms of resources. Clients such as laptops and desktop computers contact the server and request to use data or share its other resources with it.
5. Architectural Patterns for Distributed Systems: Definition & Importance
In this lesson, we will learn all about architectural patterns for distributed systems and their different forms. We will learn about the five architectural styles that support critical non-functional requirements of any system design.
6. What is SaaS? - Definition, Examples & Benefits
Have you sent a message on Twitter or shared a picture on Facebook? These are examples of SaaS, or software as a service. In this lesson we will learn about SaaS and how it's used.
7. Advantages & Disadvantages of Service-Oriented Architecture
In this lesson, we will explain Service Oriented Architecture and learn where it is most applicable. We will learn the attributes that give it its numerous advantages and disadvantages.
8. Service Engineering: Definition & Process
In this lesson, you will learn about the service engineering methodology. The lesson will also introduce you to the characteristics of services, the actors in a service-oriented environment, and the three stages of service engineering.
9. Sociotechnical Systems (STS) Theory
How do the social and technical aspects of a workplace function together? In this lesson, we'll talk about the theory of sociotechnical systems (STS), including organizational theorist Eric Trist's contribution.
10. Conceptual Models: Definition & Characteristics
What is a conceptual model? Learn about the characteristics of conceptual models and how these models are used in science and elsewhere. Test how well you understand this concept by completing a short quiz.
11. What is Project Procurement Management? - Definition & Process
In this lesson, we'll learn how a company often obtains supplies for projects. Specifically, we'll learn what project procurement management is and the process many companies abide by.
12. System of Systems (SoS): Definition & Challenges
In this lesson, you will learn about the system engineering concept, System of Systems(SoS). You will also be introduced to some of the challenges of building a SoS.
Earning College Credit
Did you know… We have over 200 college courses that prepare you to earn credit by exam that is accepted by over 1,500 colleges and universities. You can test out of the first two years of college and save thousands off your degree. Anyone can earn credit-by-exam regardless of age or education level.
To learn more, visit our Earning Credit Page
Transferring credit to the school of your choice
Not sure what college you want to attend yet? Study.com has thousands of articles about every imaginable degree, area of study and career path that can help you find the school that's right for you.
Other chapters within the Computer Science 307: Software Engineering course
- Introduction to Software Engineering
- Process Models in Software Engineering
- Development & Testing Methods in Software Engineering
- Agile Development in Software Engineering
- Software Requirements & System Models
- Software Requirements Engineering
- Software Design & Software Reuse
- Software Architectural Design
- Component-Level Design in Software Engineering
- User Interface Design in Software Engineering
- Software Verification & Validation
- Software Management
- Required Assignments for Computer Science 307: Software Engineering