Computer Software Engineering Courses at Capella University
Program Name:
BS - Software Architecture
| Software Requirements Architecture |
| Course Number |
IT4710 |
| Credits |
6.0 |
This course provides an introduction to software requirements architecture. Learners study the roles of stakeholders and examine the analysis and requirements phases of the architecture development process. Learners also apply appropriate tools and techniques for requirements gathering and modeling and practice defining an organizational software architecture using those tools. Prerequisite(s): IT3340. |
| Applications Architecture |
| Course Number |
IT4715 |
| Credits |
6.0 |
This course provides an introduction to applications architecture. Course topics include client-server architecture and Model-View-Controller (MVC) paradigms, object-oriented design and programming, modeling, data structures, programming constructs, algorithms, and event-driven development processes. Learners study the role of applications architecture in software architecture and use the appropriate tools to define an organizational applications architecture. Prerequisite(s): IT3340. |
| Software Construction I: Design and Modeling |
| Course Number |
IT4720 |
| Credits |
6.0 |
In this course, learners study and apply object-oriented analysis and design concepts using Unified Modeling Language (UML) and a high-level, compiled programming language. Course topics include techniques for designing, modeling, constructing, testing, and debugging object-oriented software applications. Prerequisite(s): IT4710, IT4715. |
| Software Construction II: Database Development |
| Course Number |
IT4725 |
| Credits |
6.0 |
This Course Focuses On Data Requirements And Modeling, Database Development, And Structured Query Language (sql). Learners Study Database Design And Implementation Principles And Apply Sql To Create Tables And Queries. Learners Also Examine Storage Procedures And Various Uses Of Databases In Contemporary Web, Traditional, And Mobile Applications. Prerequisite(s): It4720. |
| Support and Maintenance of Software Systems |
| Course Number |
IT4770 |
| Credits |
6.0 |
This course presents strategies for improving the quality of information systems. Learners examine common quality characteristics and apply quality assurance concepts and configuration management methodologies to develop effective testing processes. Learners also review system requirements for testability, participate in simulated design and code inspections, analyze testing strategies, and explore ways to integrate improvement processes in organizations or workplaces. |
| Discrete Mathematics |
| Course Number |
MAT2051 |
| Credits |
6.0 |
This course presents an overview of mathematical analysis techniques. Learners apply number logic and set theory, functions and sequences, relations equivalence, partial order, digraphs, recurrence relations, counting techniques, logic and techniques of proof, graphs, and algorithms to the fields of business and information technology. Prerequisite(s): MAT1050. |
| Fundamentals of Project Management |
| Course Number |
IT3120 |
| Credits |
6.0 |
This course emphasizes the critical activities associated with managing and leading information technology projects while maintaining the structure of a standardized enterprise architecture. Topics include vendor management, configuration management, project estimation, risk management, and management of cross-functional and multinational teams. Learners explore case studies of IT project successes and failures and are introduced to software management practices within the Software Engineering Institute’s Capability Maturity Model. Learners also build and apply a project plan during this course. |
| Enterprise Architecture |
| Course Number |
IT3200 |
| Credits |
6.0 |
Learners in this course study how core business processes and information technology infrastructure merge to form enterprise architecture. Learners conduct an organizational requirements analysis as a first step in constructing an enterprise architecture. Learners also examine the stages of enterprise architecture maturity and develop core designs appropriate for each corresponding maturity level. |
| Human-Computer Interaction |
| Course Number |
IT3300 |
| Credits |
6.0 |
Learners in this course analyze the cognitive and affective dynamics of human-computer interaction. Learners also examine the impact of user-centric guidelines on the design cycle of technological products and evaluate the usability of device interfaces and computer applications. |
| Hardware and Operating Systems Architecture |
| Course Number |
IT3310 |
| Credits |
6.0 |
Learners in this course study the fundamentals of hardware and operating systems architecture. Topics include computer architecture, operating systems architecture, number systems, peripherals, file management, and programming tools. The course also includes a review of current computer architectures and modern operating systems such as Windows, Linux, and MacOS. |
| Fundamentals of Software Architecture |
| Course Number |
IT3340 |
| Credits |
6.0 |
This course provides an introduction to the fundamentals of software and database architecture. Topics include the role of the software and data architect, requirements and tools used to create software architecture, database management systems, and database architecture. Learners define a software and data architecture appropriate for organizational needs and gain an understanding of the role of design in software and data architecture. |
| Network and Security Architecture |
| Course Number |
IT3350 |
| Credits |
6.0 |
This course provides an introduction to the fundamentals of network and security architecture. Learners gain an understanding of how networks function to support the requirements needed to build a network and security architecture. Course topics include requirements analysis, network architecture, security architecture, network analysis, and systems methodology. |
| Integrated Action Learning Project |
| Course Number |
IT4990 |
| Credits |
6.0 |
This course allows learners to apply knowledge and skills from other courses as they develop a project that benefits an organization, community, or industry. Learners prepare a proposal that includes a project description, deliverables, completion dates, and associated learning. Upon approval from the instructor, learners execute the proposal, record their progress weekly using a project tracking Web site, and produce a final project report. |
| General Education Classes |
| Credits |
45.0 |
General Education Requirements are 45 quarter credits with a minimum of
6 quarter credits from each category: Communications, Humanities, Natural Science and Mathematics, Social Science. |
| Elective Courses BA39 |
| Credits |
39.0 |
Choose 39 quarter credits of additional
undergraduate courses. |
| Software Construction III: Web Application Development |
| Course Number |
T4730 |
| Credits |
6.0 |
| Software Construction IV: Advanced Web Application Development |
| Course Number |
IT4735 |
| Credits |
6.0 |
| Software Construction III: Application Development |
| Course Number |
IT4760 |
| Credits |
6.0 |
| Software Construction IV: Advanced Application Development |
| Course Number |
IT4765 |
| Credits |
6.0 |
Program description: Software architecture professionals analyze, design, implement, test, deploy, and maintain an organization’s custom software architecture, which includes Web, traditional, and mobile applications. The Software Architecture specialization allows undergraduate learners to acquire and apply various processes, tools, technologies, and methods used to create software. Learners study proposal development; software requirements analysis; the architectural elements of software, database, and applications; software construction; and support and maintenance. Upon successful completion of this specialization, learners have gained information technology-related organizational, communications, and decision-making skills. The Software Architecture specialization prepares learners for possible careers as software engineers, software architects, software developers, data architects, database administrators, and applications architects.