Software development services design custom software for specialized and industry-specific applications. They are staffed by programmers, project managers, software consultants, and freelance coders. Most software development services follow industry-standard phases, such as the identification and analysis of requirements, design and programming, and testing and maintenance. Software development methodology includes several different life-cycle models, including: the waterfall model, which produces components linearly; rapid application development (RAD), which uses forums to gather requirements and refine the software through iterative testing; the prototyping model, which creates an approximation of the system and reworks it through a series of builds; and the spiral model, which combines features of the prototyping and waterfall models.
Software development services design applications for many different operating systems (OS). Microsoft operating systems include MS-DOS®, Windows® 95/98, Windows® NT, Windows® 2000, Windows® XP, Windows® XPe, Windows® CE.NET, Windows® Mobile 2003, and Windows® Server 2003. Microsoft, Windows, and MS-DOS are registered trademarks of Microsoft Corporation. Software development services also design applications for operating systems such as MacOS® (Apple Computers, Inc.), PalmOS® (palmOne, Inc.), UNIX® and SCO UNIX® (The Open Group), Solaris® and Sun® (Sun Microsystems, Inc.), LynxOS® (LynuxWorks, Inc.), NetWare® (Novell, Inc.), VxWorks® (Wind River Systems), QNX® (QNX Software Systems, Ltd.), and EPOC® (Symbian, Ltd).
Many software development services follow object-oriented programming and modular development strategies. Embedded software development uses tools that manage the components of the entire system, including application builders and compilers, code debuggers, performance analyzers, and revision control systems. Common programming languages include C, C#, C++, COBAL, ColdFusion, Java, LabVIEW®, practical extraction and reporting language (PERL), Python, Ruby, Visual Basic, (VB), Visual Basic.NET (VB.NET), and VBScript. LabVIEW is a registered trademark of National Instruments. Software development services may also use active server pages (ASP), ASP.NET, ActionScript, hypertext markup language (HTML), hypertext preprocessor (PHP), extensible hypertext markup language (XHTML), extensible markup language (XML), and XQuery.
Software development services design many different types of applications. Some coding services and software consulting firms develop business transaction and financial software, computer-aided design (CAD) and computer-aided engineering (CAE) applications, communications and network software, or customer relationship management (CRM) programs. Others coding services design software for data acquisition, database management, document management, education and training, engineering analysis and modeling, enterprise resource planning (ERP), geographic information systems (GIS), or human machine interface (HMI) applications. In addition, software development services design applications for image analysis, machine control, manufacturing support, motion control, supply chain management (SCM), simulation, and security. Mobile, wireless, and web applications are also available.