资源预览内容
第1页 / 共34页
第2页 / 共34页
第3页 / 共34页
第4页 / 共34页
第5页 / 共34页
第6页 / 共34页
第7页 / 共34页
第8页 / 共34页
第9页 / 共34页
第10页 / 共34页
亲,该文档总共34页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
Topics,The nature of software developmentSystem planningSystems for three management levelsSoftware development lifecycle,The essence of software development,Only one out of three software projects complete on-time and on-budget (The Standish Group report, 2003)The essence of software development:defined by the issues inherent in the software itself -software is a product of a creative act (not a result of a repetitive act of manufacturing)difficulties not amenable to breakthroughs or silver bullets - define software development invariantsconsequence of the inherent softwarecomplexity, complexity, conformity, conformity, changeability, and changeability, and invisibility,The accidents of software development,Accidental difficulties due to software production practices - amenable to human interventionattributed mostly to the fact that an information system is a social systemmust not be adding to the complexity and to the potential lack of supportability of the software productsupportability = understandability + maintainability +scalability (extensibility)Related to:StakeholdersProcessModeling language and toolsWill be discussed soon,Software development invariants,Software in inherently complex function of interdependencies between components of which the software product is composed complexity in the wires Data intensive applications (enterprise information systems) are particularly complexSoftware must conform to: hardware/software platform on which it is built pre-existing information systemsSoftware must be built to accommodate changeSoftware is buried deeply in “invisible” programming statements, binary library code, and surrounding system software,Stakeholders,People who have a stake in a software project:Customers (users and system owners)Developers (analysts, designers, programmers, etc.)Information systems are social systems -developed by people (developers) for people (customers)The main causes of software failure can be traced to the stakeholder factoron the customer end, andon the developer end,Software process,Defines activities and organizational procedures used in software production and maintenanceA process model:states an order for carrying out activities;specifies what development artifacts are to be delivered and when;assigns activities and artifacts to developers;offers criteria for monitoring a projects progress, for measuring the outcomes, and for planning future projects.Is not susceptible to standardization,Iterative and incremental process,An iterative process is one that involves managing a stream of executable releases. An incremental process is one that involves the continuous integration of the systems architecture to produce these releases, with each new release embodying incremental improvements over the other. (RUP)Some examples:the spiral modelRational Unified Process (RUP)Model Driven Architecture (MDA)the agile development process Iterative and incremental development must be planned and controlled, and must conform to a pre-defined architectural design framework,Capability maturity model,Modeling language and tools,Modeling artifacts have to be communicated (language) and documented (tools)The Unified Modeling Language (UML) is a general-purpose visual modeling language that is used to specify, visualize, construct, and document the artifacts of a software system. Computer-Assisted Software Engineering (CASE) tool enables storage and retrieval of models in a central repository and graphical and textual manipulation of models on a computer screen,CASE and process improvement,Process improvement is much more than the introduction of new methods and techniques the introduction of new methods and techniques to organization at a low level of process maturity can bring more harm than goodAn integrated CASE tool can allow multiple developers to collaborate and share design information in order to produce new design artifacts - the tool imposes processes on the development team - in “immature” organizations processes will not be followed (creating more mess than before)However, the same CASE methods and techniques would always bring personal productivity and quality improvements to individual developers,System planning,The question is: Which IS technologies and applications will return the most value to the business?System planning can be carried out in a number of different ways: SWOT Strengths, Weaknesses, Opportunities, Threats VCM Value Chain Model BPR Business Process Reengineering Information System Architecture (ISA)All system planning approaches have an important common denominator they are concerned with effectiveness rather than efficiency,SWOT approach,VCM approach,The VCM (Value Chain Model) assesses competitive advantage by analyzing the full chain of activities in an organization from raw materials to final products sold and shipped to customersThe question is: which value chain configurations will yield the greatest competitive advantage? The IS development projects can then target those segments, operations, distribution channels, marketing approaches, etc. that give the most competitive advantageOrganizational functions are categorized into:primary activitiesthey create or add value to a final product support activitiesthey are essential but they do not enrich the product,
收藏 下载该资源
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号