1. Traditional of software engineering
2. Object-oriented software engineering
3. Component-based software engineering
4. Service-oriented software engineering
5. Agent-based software engineering
6. Open source software engineering
7. Distributed software engineering (Engineering of distributed/parallel software systems)
8. Run-time software engineering
9. Aspect-oriented software engineering
10. Reverse Engineering
11. AI and Knowledge based software Engineering
12. Web Engineering
13. Integration between component and service-oriented technologies
14. Integration between service-oriented and agent technologies
15. Integration between component and agent technologies
16. Parallel programming languages and compilers
17. Management of parallel processing systems
18. Grid computing (grid distributed systems)
19. Network management systems
20. Distributed systems Security and security engineering
21. Remotely Administration of distributed databases.
22. integration of heterogeneous distributed databases.
Items 1-12 concern with building software tools for each type of software engineering. The tools include: analysis tools, architecture and design tools, code generation tools, testing tools, maintenance tools, management tools, integration tools and middleware systems.
|