The Software Analysis and Development specialization in the bachelor’s degree in information technology is designed to provide students with important knowledge and practical experience in software development, current platforms, industry best practices, analysis and software testing. In this specialized curriculum, you can learn about the architectures for integrating systems, XML Web services and middleware, network programming, message and queuing services, and low-level data communications.
We can help you learn how to:
- Summarize details of essential computer concepts
- Use an operating system interface to access, add, troubleshoot and configure hardware and manage files
- Implement a relational database management system utilizing the concepts of database design and data modeling
- Design and develop business applications using programming languages, tools and software development methodologies
This real-world specialization offers the opportunity for in-depth study, with more than half of your courses in your area of interest. It can help you develop a focused knowledge base common to IT professionals in the field of software analysis and development.
At AIU, you can take more courses devoted to your field of interest, on average, than at other similar schools. For a Bachelor of Science in Information Technology degree with a specialization in Software Analysis and Development, your classes can include:
Software Quality Control and Testing
In this course, students will examine a variety of programming techniques and technologies to ensure software quality, such as Quality Tools in Software Development, Software Testing Metrics and Models, and Software Test Document.
This course focuses on web-based commerce. The course covers business solutions to use electronic commerce in a variety of ways. Topics covered include tools for e-commerce, security, payments, marketing, legal and ethical considerations.
System Analysis and Design
This course focuses on software development life cycle, and covers methodologies and tools used in software planning, analysis, and design.
Object Oriented Application Development I
This course introduces the application development methodology using contemporary, industry-grade development environments. Students will learn to use programming techniques such as Try Catch blocks, If blocks, looping and arrays, etc. Furthermore students will learn about debugging, printing, message Boxes etc.
Software Development for Mobile Devices
This course teaches methodologies and skills used to develop software for mobile devices. Topics covered include user interface design for small screens, data synchronization, memory management, and principles of good design for mobile computing.
Distributed Systems Design and Development
This course covers how to implement an N-Tiered architecture and deploy a tiered software application using distributed system technology.
Applications of Discrete Mathematics and Statistics in IT
In this course, students will examine the essential mathematics and logic skills required in Information Technology areas such as networking, systems administration, security, programming, database management, and computer hardware. Students will build on their mathematical proficiency to prepare for the challenges they are likely to encounter as an IT professional. This course discusses the importance of discrete mathematics, probability and statistics in IT. Students in this course will further their understanding of discrete mathematics and statistics necessary for application development and systems analysis. Students will also learn how to apply statistical techniques to improve the performance of IT systems. Real-world scenarios and problems from the IT industry are included throughout this course.
Human/Computer Interfaces and Interactions
The course examines human factors and performance in relation to technology applications, components of technology, and methods and techniques used in the design and evaluation of system and application interfaces.
Comprehensive IT Project
In this lower division capstone course, students will examine IT project management and systems architecture. Topics covered include project management concepts of time, scope, and costs, as well as systems architecture, sourcing, acquisition, development, and deployment processes.
Object Oriented Application Development II
In this course, students will discuss the implementation of graphical user interface in application development, event-handling methods, event propagation, and exception handling.
Data Structures and Implementation
This course will introduce students to basic data structures and algorithms which are to be used as tools in designing solutions to real-life problems. Students will become familiar with the specification, usage, implementation and analysis of basic data structures and algorithms.
Program Capstone for IT
This course offers students the opportunity to demonstrate their level of understanding regarding the application of information technology concepts, technologies, and methodologies. Students are expected to employ their knowledge about hardware, systems, applications, and security management.
View the Course Catalog
Course content subject to change.
What can you do with a degree in Software Analysis and Development?
Software is everywhere in our modern society: phones, tablets, laptops, smart appliances, entertainment systems, retail experiences, and more. So it’s not surprising that the need for people to develop that software is increasing. In fact, jobs for software developers are expected to grow by 17% growth through 2024—much faster than average.1 Pursuing a bachelor’s degree in IT can be a great first step toward a career in software development.
What skills are needed?
Developers might have a reputation for being introverted and hyper-analytical, but developing software actually involves a wide range of creative, social, and analytical skills, including:
- Programming and computer skills
- Analytical skills
- Creative thinking
- Creative thinking
- Clear, detailed communication
What are software developers responsible for?
The day-to-day work of software development often involves:
- Collaborating with teams to understand users’ needs and design applications
- Developing and testing software
- Planning how the components of an application or system will work together
- Creating detailed documentation to support team members’ work, future maintenance and upgrades
- Testing and maintaining the software
What types of software development are there?
As developers advance in their careers, it’s not uncommon to specialize in certain types of development, such as:
- Application software development: creating apps, web apps, or custom software targeted at consumers
- Systems software development: building operating systems for consumer use or specialized systems for an organization
Which industries most often use software developers?
According to the Bureau of Labor Statistics, more than half of the software developers in the U.S. work in these five industries:
- Computer systems design and related services
- Software publishers
- Finance and insurance
- Computer and electronic product manufacturing
- Management of companies and enterprises
1Bureau of Labor Statistics, U.S. Department of Labor, Occupational Outlook Handbook, 2016-17 Edition, Software Developers,
on the Internet at http://www.bls.gov/ooh/computer-and-information-technology/software-developers.htm (visited July 29, 2016).