关键词不能为空

当前您在: 主页 > 英语 >

erect关于软件开发的知识(中英文)

作者:高考题库网
来源:https://www.bjmy2z.cn/gaokao
2021-01-28 14:14
tags:

erect-mattel

2021年1月28日发(作者:toroidal)


1. What is software development?



Software development is the process of developing software through


successive phases in an orderly way. This process includes not only the


actual writing of code but also the preparation of requirements and


objectives,


the


design


of


what


is


to


be


coded,


and


confirmation


that


what


is developed has met objectives.



Before systems development methods came into being, the development of


new


systems


or


products


was


often


carried


out


by


using


the


experienceand


intuition of management and technical personnel. However, the


complexityof


modern


systems


and


computer


products


long


ago


made


the


need


clear forsome kind of orderly development process.



Typical phases of software development:



1) Identification of required software


2) Analysis of the software requirements


3) Detailed specification of the software requirements


4) Software design


5) Programming


6) Testing


7) Maintenance



In general, the development of commercial software is usually a result


of demand in the marketplace, while enterprise software


developmentgenerally


arises


from


a


need


or


a


problem


within


the


enterprise


environment.


2. How is software development guided?



The software development process is almost invariably guided bysome


systematic


software


development


method


(SDM).


Referred


to


by


a


numberof


terms, including


process models


,


development guidelines


,and


systems


development life cycle models


(SDLC), software development methods


nevertheless generally include the same development phases:


The


existing


system


is


evaluated


and


its


deficiencies


identified,


usually through interviewing system users and support personnel.


?



The new system requirements are defined. In particular, the


deficiencies


in


the


existing


system


must


be


addressed


with


specific


proposals for improvement.


?



The


proposed


system


is


designed.


Plans


are


laid


out


concerning


the


physical construction, hardware, operating systems, programming,


communications, and security issues.


?



The new system is developed. The new components and programs must


be obtained and installed. Users of the system must be trained in


its


use,


and


all


aspects


of


performance


must


be


tested.


If


necessary,


adjustments must be made at this stage.


?



The system is put into use. This can be done in various ways. The


new system can phased in, according to application or location,


andthe


old


system


gradually


replaced.


In


some


cases,


it


may


be


more


cost- effective to shut down the old system and implement the new


system all at once.


?



Once


the


new


system


is


up


and


running,


then


it


should


be


exhaustively


evaluated. Maintenance must be kept up rigorously at all



of


the


system


should


be


kept


up-to-date


concerning


the


latest modificationsand procedures.


?



The systems development life cycle model was developed as a structured


approach to information system development that guides all the


processesinvolved from an initial feasibility study through to


maintenance of thefinished application. SDLC models take a variety of


approaches to development.


Systems development life cycle models include:



·


The


waterfall


model:



This


is


the


classic


SDLC


model,


with


a


linear


and


sequential


method


that


has


goals


for


each


developmentphase.


The


waterfall


model simplifies task scheduling, because there areno iterative or


overlapping


steps.


One


drawback


of


the


waterfall


is


thatit


does


not


allow


for much revision.


·


Rapid


application


development


(RAD):



This


models


based


on


the


concept


that


better


products


can


be


developed


more


quicklyby:


using


workshops


or


focus


groups


to


gather


system


requirements;


prototyping


and


reiterative


testing of designs; rigid adherence to schedule; and less formality of


team communications such as reviews.


·


Joint application development (JAD):


This modelinvolves the client


or


end


user


in


the


design


and


development


of


an


applicationthrough


a


series


of collaborative workshops called


JAD sessions


.


·


The prototyping model:


In this model, a prototype (an early


approximation of a final system or product) is built, testedand then


reworked as necessary until an acceptable prototype is finallyachieved


from which the complete system or product can now be developed.


·


Synchronize-and-stabilize:


This model involves teams working in


parallel on individual application modules, frequently synchronizing


their code with that of other teams and stabilizing code frequently


throughout the development process.


· The spiral model:


This model of development combines the features of


the


prototyping


model


and


the


waterfall


model.


The


spiral


model


is


favored


for large, expensive, and complicated projects.


3. How has the open source development process influenced software


development in general?



Open


source


software


is


developed


collaboratively;


source


code


is


freely


available


for


use


and


modification.


The


open


source


movement


arose


because


some developers came to believe that competition amongst vendors leads


to inferior products and that the best approach to development isa


collaborative one.



The OSI (Open Source Initiative) is an industry body that certifies


products as open source if they conform to a number of rules:


· The software being distributed must be redistributed to anyone else


without any restriction


· The source code must be made available (so that the receiving party


will be able to improve or modify it)


· The license can require improved versions


of the software to carry a


different name or version from the original software


Despite


its


emphasis


on


the


collaborative


process,


the


biggest


influence


that


open


source


has


had


on


software


development


in


general


may


be


through


competition:


by


competing


with


proprietary


software


products,


open


source


products


force


vendors


to


work


that


much


harder


to


hold


their


market


share


in the face of viable open source alternatives.


4.


What


are


some


generally


accepted


best


practices


common


to


all


or


most


development models?



Here's a collection of some of the top tips from a variety of industry


sources:


· Make sure that you've chosen a systems development life cycle model


that suits your project, because every one of the processesinvolved


depends


on


the


model.


That


said,


however,


implementing


any


modelis


better


than


none


--


much


of


the


success


of


a


project


depends


upon


howscrupulously


the model is adhered to.


· Reuse software components when it's appropriate, but don't use code


that


doesn't


work


perfectly


for


its


intended


purpose


just


because


you


have


it on hand.


·


Be


very


thorough


in


gathering


requirements,


ensuring


that


all


parties


agree on what they are -- and make sure you document them.


·


Don't


promise


the


moon,


if


you


can't


deliver


it.


Avoidletting


someone


who isn't fully informed negotiate with the client.


· Make sure that the architecture you've chosen is appropriate for the


application


you're


building.


To


retain


perspective,


you


might


want


to


look


at the smaller picture and plan the architecture incrementally.


·


Change is part of life, including software development. You have to


accept


that


various


things --


requirements,


for


example --


are


likely


to


change


throughout


the


life


of


the


project.


Keep


control


of


them,


but


not


too rigidly.


· Set up peer review process


es for every element of the project.


·


Design


thoroughly


and


with


care,


but


remember


the


KISSprinciple:


Keep


it simple.


·


In


your


project


plan,


split


big


projects


into


manageable


chunks,


with


concrete milestones and deadlines.


· Ensure accountability: make


sure that deadlines are clear and that


people have to report on whether they made them, and explain why not if


they don't.


· Implement quality control procedures throughout the project.



· Test exhaustively


-- there's no point in doing a cursory run through


only to have an application fail when you run it for the client.


· After the project is completed, conduct a thorough post


-mortem, with


everyone involved. You'll see what worked well and what should havebeen


differently, and your future projects will benefit.


5. What are some common mistakes in software development?



According to a Standish Group report, corporations in the United States


spend


over


$$275


billion


every


year


on


software


development


projects,


many


of


which


are


doomed


to


failure.


Research


by


the


group


found


that


over


80%


of


projects


fail


for


various


reasons,


and


that


fully


30%


of


projectswere


cancelled prior to completion because of poor execution.


David


B.


Stewart,


at


the


University


of


Maryland,


set out


to


document


the


10


most


common


mistakes


of


software


development.


He


found,


however,that


the


sheer


number


of


errors


that


were


commonly


practiced


made


it


impossible


to


keep


the


number


to


ten.


He


ended


up


calling


his


article



Common


Mistakes


with


Real-Time


Software


Development.


Even


so,


afterthe


title had been established, he found another five errors so common that


the felt compelled to add them.


According to Dr. Michael, the most common project problems are due to


failure to manage project elements successfully:


· Requirement


s are not clearly and accurately defined, and agreed upon


by all concerned.


· Resources are not adequately planned and allocated.



· Threats to project success are not clearly detected, identified, and


protected against.


· Critical path analysis is omitted,


or poorly executed.


· The project's progress is not tracked adequately.



·


Quality


management


is


not


carried


out


well


enough


throughout


the


life


of the project.


·


Too


little


data


is


collected,


or


data


is


ignored


or


poorly


understood.



Correcting


flaws


identified


during


software


security


audits


is


expensive


and time consuming. Worse, vast resources are spent on containing and


recovering


from


exploits.


Fortunately,


providing


development


staff


with


the knowledge and tools to avoid many of these pitfalls is easy and


inexpensive.



6.


Given


a


particular


process


model,


is


there


a


set


of


tools(a


development


environment) to support it?



In general, a process model usually begins as a philosophy of


what


development


when


rather


than


a


rigid


methodology


complete


with


tools.


For


example,


rapid


application


development


(RAD)


is


an


approach


that


can


make


use


of


existing


development


tools.


In


general,


tools


for


supporting


all or part of a process model tend to arrive later, if at all.



Historically,


development


tools


have


focused


on


the


code-building,


code


archive management, documentation, testing, and packaging parts ofthe


process, sometimes offered as a suite. Such a suite is generally known


as an integrated development environment (IDE).



A set of tools for managing or supporting a development project is


generally known as a computer-assisted software environment (CASE). A


number of companies offer products that support early stages of


development


such


as


requirements


gathering,


design


prototyping,


and


data


modeling.


A


number


of


these


provide


tools


that


support


data


modeling


with


the


Unified


Modeling


Language.


Overall,


there


is


a


trend


toward


providing


all or most of the tools for a development project in a single product


or related set of products.



Today,


the


main


code-building


development


environments


or


program


suites


come from Microsoft with its Visual Studio and Visual Studio .NET,


providing


support


for


Visual


Basic,


Visual


C#,


Visual


C++,


and


Visual


J#;


Sun Microsystems with its Java 2 Enterprise Environment; and numerous


software vendors such as Borland who repackage these environments with


some value-added features. Recently, almost all providers of software


development


environments


have


added


features


that


enable


the


software


to


be used on the Web.



7. How


do


you


choose


the


programming


language


for


your project?



For


most


projects,


the


right


language


is


easy


to


choose.


Your


company


may


have standardized on a particular development environment and language


(and you may have been hired because you were already familiar with the


language).


Or


you


may


be


updating


or


enhancing


an


existing


program;


it's


almost


always


best


to


use


the


same


language


the


existing


program


is


written


in.


In


some


cases,


however,


someone


will


need


to


select


the


best


(or,


since


the


best


may


be


somewhat


arguable,


at


least


an


appropriate


language).


In


somecases, you or your team of developers may need to know several


languages fordifferent purposes.



General truisms about programming languages are that:

erect-mattel


erect-mattel


erect-mattel


erect-mattel


erect-mattel


erect-mattel


erect-mattel


erect-mattel



本文更新与2021-01-28 14:14,由作者提供,不代表本网站立场,转载请注明出处:https://www.bjmy2z.cn/gaokao/579814.html

关于软件开发的知识(中英文)的相关文章