Is Software Development Your Calling? -- App Development

Channel: xdadevelopers   |   2013/05/12
Play Video
1
Is Software Development Your Calling? -- App Development
Is Software Development Your Calling? -- App Development
::2013/05/12::
Play Video
2
Beginners Guide to Software Development - Part 1: Introduction
Beginners Guide to Software Development - Part 1: Introduction
::2013/08/21::
Play Video
3
How To Software Development
How To Software Development
::2013/01/30::
Play Video
4
Agile Software Development - An Introduction
Agile Software Development - An Introduction
::2012/04/19::
Play Video
5
How to Become a Software Developer
How to Become a Software Developer
::2010/11/15::
Play Video
6
Day in the life of a Software Development Engineer in Test at Microsoft Ireland
Day in the life of a Software Development Engineer in Test at Microsoft Ireland
::2012/02/07::
Play Video
7
The role of leadership in software development
The role of leadership in software development
::2008/06/19::
Play Video
8
Introduction to the Software Development Lifecycle
Introduction to the Software Development Lifecycle
::2012/11/25::
Play Video
9
Working at Amazon as a Software Development Engineer (SDE)
Working at Amazon as a Software Development Engineer (SDE)
::2013/10/08::
Play Video
10
Programming and Software Development
Programming and Software Development
::2012/08/21::
Play Video
11
Five Steps to Software Development and Devops in the Hybrid Cloud
Five Steps to Software Development and Devops in the Hybrid Cloud
::2012/04/10::
Play Video
12
Software Development Basics - Software Development Life Cycle -SDLC V Model - Tamil / English -Deepa
Software Development Basics - Software Development Life Cycle -SDLC V Model - Tamil / English -Deepa
::2013/11/28::
Play Video
13
Building a Software Development Team: Three Hot Tips for Startups
Building a Software Development Team: Three Hot Tips for Startups
::2013/04/05::
Play Video
14
Atlassian Software Development Workflow
Atlassian Software Development Workflow
::2013/10/22::
Play Video
15
NEW Intro to Agile Scrum in Under 10 Minutes - What is Scrum?
NEW Intro to Agile Scrum in Under 10 Minutes - What is Scrum?
::2012/02/21::
Play Video
16
V-Model - Software Development Life Cycle (SDLC) - Testing Methodology - Quick Reference !!
V-Model - Software Development Life Cycle (SDLC) - Testing Methodology - Quick Reference !!
::2013/04/01::
Play Video
17
1.Seven Reasons for Agile Software Development : Introduction to Waterfall Model
1.Seven Reasons for Agile Software Development : Introduction to Waterfall Model
::2013/11/30::
Play Video
18
Agile Programming Introduction - Software Development Tutorial
Agile Programming Introduction - Software Development Tutorial
::2012/05/07::
Play Video
19
Software Development Life Cycle ( SDLC)
Software Development Life Cycle ( SDLC)
::2012/10/28::
Play Video
20
A Possible Future of Software Development
A Possible Future of Software Development
::2008/05/20::
Play Video
21
Kick Ass Software Development with Sven Peters
Kick Ass Software Development with Sven Peters
::2014/03/24::
Play Video
22
Multiproduct - Scaling Software Development at LinkedIn
Multiproduct - Scaling Software Development at LinkedIn
::2014/01/16::
Play Video
23
An Introduction to Agile Software Development...
An Introduction to Agile Software Development...
::2011/05/18::
Play Video
24
Offshore Software Development Company - Offshore Software Development
Offshore Software Development Company - Offshore Software Development
::2014/01/20::
Play Video
25
Software Development Life Cycle
Software Development Life Cycle
::2012/03/16::
Play Video
26
AWS Report Recruiting Series - Software Development Manager
AWS Report Recruiting Series - Software Development Manager
::2013/06/16::
Play Video
27
Software Development Lifecycle (SDLC)
Software Development Lifecycle (SDLC)
::2013/04/15::
Play Video
28
AWS Report Recruiting Series - Software Development Engineer
AWS Report Recruiting Series - Software Development Engineer
::2013/06/16::
Play Video
29
Software Development Life Cycle [SDLC]
Software Development Life Cycle [SDLC]
::2011/08/17::
Play Video
30
QA Testing Training | V Model in Software Development Life Cycle (SDLC)
QA Testing Training | V Model in Software Development Life Cycle (SDLC)
::2012/12/03::
Play Video
31
Software Development Life Cycles: Waterfall Model, V-Model
Software Development Life Cycles: Waterfall Model, V-Model
::2008/07/02::
Play Video
32
Introduction to Computer Science, Software Development and Technology Management
Introduction to Computer Science, Software Development and Technology Management
::2011/02/14::
Play Video
33
Software Development Fundamentals, 01, General Software Development
Software Development Fundamentals, 01, General Software Development
::2014/03/18::
Play Video
34
Why does Agile Software Development pay?
Why does Agile Software Development pay?
::2006/10/26::
Play Video
35
Android App Programming | Android Software Development Kit (SDK)
Android App Programming | Android Software Development Kit (SDK)
::2013/04/18::
Play Video
36
Software development office politics
Software development office politics
::2011/07/07::
Play Video
37
The Agile PrepCast - Free Lesson - Lean Software Development
The Agile PrepCast - Free Lesson - Lean Software Development
::2013/04/19::
Play Video
38
Software Development Visualization
Software Development Visualization
::2012/12/30::
Play Video
39
Download BioPassword Software Development Kit Keygen
Download BioPassword Software Development Kit Keygen
::2014/04/17::
Play Video
40
Beginners Guide to Software Development - Part 13: Object Oriented Programming in JavaScript Basics
Beginners Guide to Software Development - Part 13: Object Oriented Programming in JavaScript Basics
::2013/11/18::
Play Video
41
Andromeda Software Development - The Butterfly Effect
Andromeda Software Development - The Butterfly Effect
::2011/07/24::
Play Video
42
Andromeda Software Development - Spin
Andromeda Software Development - Spin
::2011/08/05::
Play Video
43
OWASP AppSecUSA 2012: Rebooting (Secure) Software Development with Continuous Deployment
OWASP AppSecUSA 2012: Rebooting (Secure) Software Development with Continuous Deployment
::2012/12/11::
Play Video
44
Software Development Company - Office Interior Design, Union City, CA
Software Development Company - Office Interior Design, Union City, CA
::2012/02/24::
Play Video
45
Software Development Kit (SDK)
Software Development Kit (SDK)
::2011/12/07::
Play Video
46
Scrum Guide - scrum for outsourcing software development
Scrum Guide - scrum for outsourcing software development
::2012/03/06::
Play Video
47
Tools for Entrepreneurs: Managing Software Development
Tools for Entrepreneurs: Managing Software Development
::2013/06/21::
Play Video
48
Lifeforce by Andromeda Software Development (ASD)
Lifeforce by Andromeda Software Development (ASD)
::2013/07/25::
Play Video
49
SDLC Prototyping Model - Software Development Basics -  Tamil / English -Deepa
SDLC Prototyping Model - Software Development Basics - Tamil / English -Deepa
::2013/11/29::
Play Video
50
How SaaS Changes an ISV
How SaaS Changes an ISV's Business: Marketing, Software Development, and More
::2012/06/13::
NEXT >>
RESULTS [51 .. 101]
From Wikipedia, the free encyclopedia
Jump to: navigation, search
Software development process
Coding Shots Annual Plan high res-5.jpg
Core activities
Methodologies
Supporting disciplines
Tools

Software development (also known as application development, software design, designing software, software application development, enterprise application development, or platform development)[1] is the development of a software product. The term "software development" may be used to refer to the activity of computer programming, which is the process of writing and maintaining the source code, but in a broader sense of the term it includes all that is involved between the conception of the desired software through to the final manifestation of the software, ideally in a planned and structured process.[2] Therefore, software development may include research, new development, prototyping, modification, reuse, re-engineering, maintenance, or any other activities that result in software products.[3]

Software can be developed for a variety of purposes, the three most common being to meet specific needs of a specific client/business (the case with custom software), to meet a perceived need of some set of potential users (the case with commercial and open source software), or for personal use (e.g. a scientist may write software to automate a mundane task). Embedded software development, that is, the development of embedded software such as used for controlling consumer products, requires the development process to be integrated with the development of the controlled physical product.

The need for better quality control of the software development process has given rise to the discipline of software engineering, which aims to apply the systematic approach exemplified in the engineering paradigm to the process of software development.

Overview[edit]

There are several different approaches to software development, much like the various views of political parties toward governing a country. Some take a more structured, engineering-based approach to developing business solutions, whereas others may take a more incremental approach, where software evolves as it is developed piece-by-piece. Most methodologies share some combination of the following stages of software development:

  • Analyzing the problem
  • Market research
  • Gathering requirements for the proposed business solution
  • Devising a plan or design for the software-based solution
  • Implementation (coding) of the software
  • Testing the software
  • Deployment
  • Maintenance and bug fixing

These stages are often referred to collectively as the software development lifecycle, or SDLC. Different approaches to software development may carry out these stages in different orders, or devote more or less time to different stages. The level of detail of the documentation produced at each stage of software development may also vary. These stages may also be carried out in turn (a “waterfall” based approach), or they may be repeated over various cycles or iterations (a more "extreme" approach). The more extreme approach usually involves less time spent on planning and documentation, and more time spent on coding and development of automated tests. More “extreme” approaches also promote continuous testing throughout the development lifecycle, as well as having a working (or bug-free) product at all times. More structured or “waterfall” based approaches attempt to assess the majority of risks and develop a detailed plan for the software before implementation (coding) begins, and avoid significant design changes and re-coding in later stages of the software development life cycle planning.

There are significant advantages and disadvantages to the various methodologies, and the best approach to solving a problem using software will often depend on the type of problem. If the problem is well understood and a solution can be effectively planned out ahead of time, the more "waterfall" based approach may work the best. If, on the other hand, the problem is unique (at least to the development team) and the structure of the software solution cannot be easily envisioned, then a more "extreme" incremental approach may work best. A software development process is a structure imposed on the development of a software product. Synonyms include software life cycle and software process. There are several models for such processes, each describing approaches to a variety of tasks or activities that take place during the process.

Consistency in Software[edit]

In order to ensure that software can evolve in a way that maintains its inherent multi-dimensionality, one must ensure that the different dimensions evolve together in a consistent manner. Software has too many dimensions to combine within a single framework. A good mechanism should not be geared to a specific problem such as ensuring the consistency of a Unified Modeling Language (UML) class diagram with the source code. Instead it should be flexible enough to handle the broad range of dimensions that are actually involved in software development.[4]

Software development topic[edit]

Marketing[edit]

The sources of ideas for software products are legion.[5] These ideas can come from market research including the demographics of potential new customers, existing customers, sales prospects who rejected the product, other internal software development staff, or a creative third party. Ideas for software products are usually first evaluated by marketing personnel for economic feasibility, for fit with existing channels distribution, for possible effects on existing product lines, required features, and for fit with the company's marketing objectives. In a marketing evaluation phase, the cost and time assumptions become evaluated. A decision is reached early in the first phase as to whether, based on the more detailed information generated by the marketing and development staff, the project should be pursued further.[5]

In the book "Great Software Debates", Alan M. Davis states in the chapter "Requirements", subchapter "The Missing Piece of Software Development"

Students of engineering learn engineering and are rarely exposed to finance or marketing. Students of marketing learn marketing and are rarely exposed to finance or engineering. Most of us become specialists in just one area. To complicate matters, few of us meet interdisciplinary people in the workforce, so there are few roles to mimic. Yet, software product planning is critical to the development success and absolutely requires knowledge of multiple disciplines.[6]

Because software development may involve compromising or going beyond what is required by the client, a software development project may stray into less technical concerns such as human resources, risk management, intellectual property, budgeting, crisis management, etc. These processes may also cause the role of business development to overlap with software development.

Software development methodology[edit]

A software development methodology is a framework that is used to structure, plan, and control the process of developing information systems. A wide variety of such frameworks have evolved over the years, each with its own recognized strengths and weaknesses. One system development methodology is not necessarily suitable for use by all projects. Each of the available methodologies is best suited to specific kinds of projects, based on various technical, organizational, project and team considerations.

See also[edit]

References[edit]

  1. ^ "Application Development White Papers (Development of Software, Software Design, Designing Software, Software Engineering, Software Application Development, Enterprise Application Development, Platform Development, Software Development, Applications Development, Development) Software Downloads, Definition and Webcasts". Bitpipe. Retrieved 2012-08-05. 
  2. ^ "Application Development (AppDev) Defined and Explained". Bestpricecomputers.co.uk. 2007-08-13. Retrieved 2012-08-05. 
  3. ^ DRM Associates (2002). "New Product Development Glossary". Retrieved 2006-10-29. 
  4. ^ Steven P. Reiss (2001). Consistent software Evolution mandatory. Department of Computer Science Brown University. 
  5. ^ a b Joseph M. Morris (2001). Software Industry Accounting. p.1.10
  6. ^ Alan M. Davis. Great Software Debates (October 8, 2004), pp:125-128 Wiley-IEEE Computer Society Press

Further reading[edit]

  • Edward Kit (1992). Software Testing in The Real World.
  • Jim McCarthy (1995). Dynamics of Software Development.
  • Dan Conde (2002). Software Product Management: Managing Software Development from Idea to Product to Marketing to Sales.
  • A.M. Davis (2005). Just enough requirements management: where software development meets marketing.
  • Edward Hasted. (2005). Software That Sells : A Practical Guide to Developing and Marketing Your Software Project.
  • Luke Hohmann (2003). Beyond Software Architecture: Creating and Sustaining Winning Solutions.
  • John W. Horch (2005). "Two Orientations On How To Work With Objects." In: IEEE Software. vol. 12, no. 2, pp. 117–118, Mar., 1995.
  • John Rittinghouse (2003). Managing Software Deliverables: A Software Development Management Methodology.
  • Karl E. Wiegers (2005). More About Software Requirements: Thorny Issues and Practical Advice.
  • Robert K. Wysocki (2006). Effective Software Project Management.
Wikipedia content is licensed under the GFDL License

Mashpedia enables any individual or company to promote their own Youtube-hosted videos or Youtube Channels, offering a simple and effective plan to get them in front of our engaged audience.

Want to learn more? Please contact us at: hello@mashpedia.com

Powered by YouTube
LEGAL
  • Mashpedia © 2014