Software is generally amortized for both tax and GAAP purposes. If you mean purchased software for resale or developed software, then this is different, but I'm assuming you bought the software to use in your business (like buying QuickBooks for bookkeeping purposes).
Software is an 'other asset' typically (an intangible), and is therefore not included in the tangible property numbers (fixed assets) leading to depreciation, but will be stated separately on the balance sheet along with 'amortization' instead of 'depreciation' on the income statement and cash flows statements.
The period that you use for amortizing software can be different between tax and GAAP, leading to book tax differences, and off-the-shelf computer software can be deducted via Sec 179 and I believe bonus depreciation as well. There can further be different treatments for AMT purposes, property tax purposes, state income tax purposes, etc.
Thank you for your question.
If you are developing software, then this actually becomes a bit of a nitch area in the tax law. You have business organizational and start-up costs here, research and development costs (tax credits!!), capitalizable costs for your cost of sales (can get complex for tax purposes...), and frankly, you're not going to get an exact answer on this website I believe, but I'll give you some clarity.
In general, you have a cost of sales component, yes. When you go to sell the software, you will look to recoup some of your development costs, which must be capitalized in the meantime, yes.
What you need to do, aside from spending hours and hours of your time figuring this stuff out, is hire a professional (My base fee for consulting in this area is going to start at around $250, depending on your situation, for tax purposes, and that's not going to include actual forms preparation or financial statements...).
Let me know if you need more clarification.